/* Playful art direction, based on the supplied character and doodle references. */
.landing{--paper:#fffdf5;--ink:#20201f;--yellow:#ffdf35;--muted:#66645e;--line:#e8e5d9;background:var(--paper)}
.landing .wrap{width:min(1200px,calc(100% - 36px))}.landing .header{height:82px;border:0;gap:12px}.landing .brand{font-size:21px;font-weight:800;letter-spacing:-.9px}.landing .brand-icon{border-radius:12px;transform:rotate(-5deg);width:39px;height:39px;background:#ffdf35}.landing .brand-place{font-size:11px;letter-spacing:.3px}.header-nav{display:none}.landing .button{border-radius:12px;box-shadow:0 4px 0 #20201f12;min-height:54px}.landing .header-cta{font-size:12px;gap:8px;min-height:41px;padding:11px 13px;border-radius:10px;box-shadow:none}.landing .hero{position:relative;padding-top:22px;padding-bottom:25px;gap:12px;overflow:visible}.landing .eyebrow{border:1px solid #dbd7c8;border-radius:30px;display:inline-flex;padding:6px 12px;font-weight:500;font-size:12px;gap:7px}.landing .eyebrow>span{font-size:18px;color:#87722f}.prelaunch-label{font-size:11px;letter-spacing:.1px;color:#77736a;margin-top:13px}.landing .hero h1{font-size:clamp(36px,8.8vw,66px);line-height:1.07;letter-spacing:-1.8px;margin:19px 0}.landing .highlight{background:linear-gradient(transparent 55%,#ffdf35 55%,#ffdf35 96%,transparent 96%)}.landing .hero-subtitle{font-size:18px}.landing .hero-description{font-size:16px;line-height:1.6}.landing .hero-facts{font-size:12px;margin:19px 0}.landing .hero-cta{width:100%;max-width:350px}.landing .button-note{font-size:12px;margin-top:11px}.hero-art{position:relative;isolation:isolate;min-height:320px;aspect-ratio:1.12;width:100%;max-width:600px;margin:8px auto 0}.hero-art:before{content:'';position:absolute;inset:26% 0 6% 2%;background:#ffe568;border-radius:42% 58% 27% 73% / 50% 37% 63% 50%;transform:rotate(-8deg);z-index:-1}.hero-characters{position:absolute;inset:auto -3% 4% -3%;width:106%;height:86%;object-fit:contain;object-position:center bottom}.hero-handnote{position:absolute;right:0;top:0;z-index:1;font-family:'Comic Sans MS','Chalkboard SE',cursive;font-size:17px;line-height:1.15;transform:rotate(7deg);text-align:center;max-width:148px}.hero-handnote b{font-weight:400}.hello-sticker{position:absolute;left:0;top:11%;font:600 18px/1.2 'Comic Sans MS','Chalkboard SE',cursive;transform:rotate(-10deg);z-index:1}.hero-art-label{position:absolute;bottom:0;left:50%;transform:translateX(-50%) rotate(-2deg);white-space:nowrap;background:#fffef9;border:1px solid #e5ddc0;border-radius:50px;padding:9px 14px;font-size:12px;box-shadow:0 5px 15px #7e662711;z-index:2}.hero-art-label span{color:#ba9120;font-size:17px;margin-right:4px}.doodle{display:block;background-image:url('/assets/doodles-640.a7f80218ac5854bd.webp');background-repeat:no-repeat;background-size:200% 200%;pointer-events:none}.crown{background-position:0 0}.airplane{background-position:100% 0}.scribble{background-position:0 100%}.encouragement{background-position:100% 100%}.hero-crown{position:absolute;top:-2%;left:34%;width:90px;height:90px;transform:rotate(-13deg);z-index:2}.landing .launch-note{border:1px solid #e8e2cd;background:#fff9df;border-radius:14px;padding:16px;font-size:12px;gap:11px}.landing .launch-note p span{color:#706a56}.landing .section{padding-block:55px}.landing .section-kicker{font-size:11px;color:#807766;letter-spacing:1.4px}.landing .section h2,.snake-section h2,.landing .invite-section h2{font-size:clamp(31px,6.6vw,46px);line-height:1.13;letter-spacing:-1.25px}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-title-row>.doodle{display:none;width:140px;height:140px;flex-shrink:0}.landing .learning-grid{gap:14px;margin-top:28px}.landing .learning-card{position:relative;border:0;border-radius:22px;overflow:hidden;padding:24px;min-height:260px}.landing .learning-card:nth-child(1){background:#ffec8b}.landing .learning-card:nth-child(2){background:#dfd3ff}.landing .learning-card:nth-child(3){background:#d0e9ff}.landing .card-number{color:#524834;font-size:11px}.landing .concept-symbol{height:85px;font-size:46px;letter-spacing:0;filter:drop-shadow(2px 4px 0 #fff5)}.landing .learning-card h3{font-size:22px;letter-spacing:-.7px}.landing .learning-card p{color:#48473f;font-size:16px;line-height:1.55}.landing #format{border:0}.landing .format-details>div{border-color:#dbd4bf}.landing .format-details strong{font-weight:700}.landing .organizer{background:#fff;border:1px solid #ebe5d4;padding:24px;border-radius:20px}.landing .organizer-mark{background:#fff2b1;transform:rotate(-3deg)}.landing .invite-section{background:#252525;color:#fff;border-radius:32px;margin:10px 10px 0;padding:42px 0 24px;overflow:hidden}.landing .invite-section .wrap{width:calc(100% - 32px);max-width:1136px}.landing .invite-section .section-kicker{color:#e9d978}.landing .invite-section .highlight{background:none;color:#ffdf35}.landing .invite-description{color:#e0ddd3;font-size:16px}.landing .no-payment{color:#d5cfae;font-size:13px}.invite-copy{position:relative}.invite-art{height:240px;position:relative;margin:12px 0 -22px;isolation:isolate}.invite-art:before{content:'';position:absolute;inset:22% 4% -20% 14%;border-radius:51% 49% 42% 58%/52% 57% 43% 48%;background:#ffdf35;transform:rotate(-10deg);z-index:-1}.invite-art img{height:115%;width:70%;object-fit:contain;object-position:bottom;position:absolute;bottom:0;right:-3%}.invite-art .encouragement{position:absolute;width:130px;height:130px;left:4%;top:0;filter:invert(1);transform:rotate(-8deg)}.landing .invite-layout{gap:30px}.landing .form-card{color:var(--ink);border:0;border-radius:20px;padding:24px;z-index:1;position:relative;box-shadow:0 14px 35px #0002}.landing .field input,.landing .field textarea{background:#faf9f5;border-color:#e3dfd2;border-radius:10px}.landing .form-description{font-size:14px}.landing .check-row{font-size:13px}.landing .faq-section{padding-block:60px}.landing .faq-list details{border:1px solid #e9e5d8;background:#fff;border-radius:13px;margin-bottom:11px;padding-inline:18px}.landing .faq-list summary{padding-block:20px}.landing .faq-list summary span{color:#9b801f}.landing .footer{background:#fff6c8;border:0;padding-top:34px}.landing .footer-bottom{border-color:#e4dcb6}.snake-section{display:grid;gap:30px;padding:20px 0 46px}.snake-copy{position:relative}.snake-copy>p:not(.section-kicker){margin-top:20px;max-width:440px;color:var(--muted);font-size:16px}.snake-example{font-size:13px!important}.code-note{display:none;font:16px/1.8 monospace;background:#f0ecff;padding:20px 24px;border-radius:16px;max-width:320px;margin-top:24px;transform:rotate(-3deg);border:1px solid #ddd3ff;color:#514971}.code-note span{color:#8d56b2}.code-note b{color:#ba691c}.snake-scribble{display:none;width:130px;height:130px}.snake-machine{background:#262827;border:1px solid #414340;border-radius:23px;padding:16px;color:#fff;max-width:500px;width:100%;margin-inline:auto;box-shadow:0 9px 0 #1b1d1b,0 17px 25px #292c2b13}.snake-top{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 16px;gap:20px}.snake-wordmark{font-size:20px;font-weight:700;letter-spacing:-.6px}.snake-wordmark span{color:#ffdf35;font:13px monospace}.score-label{font-size:12px;color:#babeb3;display:flex;align-items:center;gap:10px}.score-label strong{font:700 23px monospace;color:#ffdf35}.snake-board-wrap{position:relative;overflow:hidden;border-radius:12px;border:3px solid #121612;background:#e7edc8}.snake-board-wrap canvas{display:block;width:100%;height:auto;aspect-ratio:1;touch-action:none}.snake-overlay{position:absolute;inset:0;background:#f1f4d1ed;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:16px;text-align:center;color:#242b1d;backdrop-filter:blur(2px)}.snake-overlay-kicker{font-size:9px;letter-spacing:1px;color:#697143;margin-bottom:15px}.snake-overlay h3{font-size:28px;line-height:1.1;letter-spacing:-.8px}.snake-overlay p{font-size:12px;margin-top:12px;color:#666e4a}.snake-overlay .button{margin-top:18px;min-width:160px;min-height:47px;padding:12px 18px}.snake-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0 7px}.snake-toolbar p{font-size:12px;color:#d4d7cc}.snake-pause{width:44px;height:40px;border:1px solid #626555;background:#363b32;border-radius:8px;color:#ffdf35;font-size:22px}.snake-pause:disabled{cursor:default;opacity:.35}.snake-controls{display:flex;justify-content:center;gap:10px}.snake-controls button{border:1px solid #707666;background:#404739;color:#fff;border-bottom:3px solid #12190f;border-radius:9px;font-size:26px;width:54px;height:48px}.snake-controls button:active{background:#626e4e;transform:translateY(1px)}.snake-help{font-size:11px;line-height:1.5;color:#b9c1ac;text-align:center;margin-top:12px}
@media(min-width:680px){.landing .wrap{width:min(1200px,calc(100% - 64px))}.landing .header{height:94px}.landing .brand{font-size:24px}.landing .header-cta{font-size:14px;padding:12px 18px}.landing .hero{padding-top:30px;gap:24px}.landing .hero h1{font-size:60px;letter-spacing:-2.8px}.hero-art{min-height:450px}.hero-handnote{font-size:23px;max-width:190px}.hello-sticker{font-size:24px}.hero-crown{width:120px;height:120px}.hero-art-label{font-size:14px}.landing .section{padding-block:65px}.section-title-row>.doodle{display:block}.landing .learning-card{padding:24px;min-height:310px}.landing .learning-card h3{font-size:21px}.landing .learning-grid{gap:16px}.landing .invite-section{margin-inline:24px;padding:52px 0;border-radius:35px}.landing .invite-section .wrap{width:calc(100% - 64px)}.invite-art{height:300px;max-width:450px;margin-bottom:-20px}.landing .form-card{padding:34px}.snake-machine{padding:22px}.snake-overlay h3{font-size:36px}.snake-overlay-kicker{font-size:11px}.snake-overlay p{font-size:14px}.snake-overlay .button{font-size:16px}.snake-help{font-size:12px}.snake-section{padding-block:30px 60px}.code-note{display:block}}
@media(min-width:1000px){.landing .header{gap:35px}.header-nav{display:flex;gap:28px;margin-left:auto}.header-nav a{text-decoration:none;font-size:13px}.landing .hero{grid-template-columns:1.08fr 1fr;gap:10px;padding-top:26px;padding-bottom:45px;align-items:center}.landing .hero h1{font-size:61px;letter-spacing:-2.9px}.landing .hero-description{max-width:490px}.landing .hero-subtitle{font-size:20px}.landing .hero-facts{font-size:13px;margin:24px 0}.landing .hero-cta{max-width:330px}.hero-art{min-height:550px;aspect-ratio:1.02;margin-top:0}.hero-characters{height:87%;width:112%;left:-7%;right:-5%;bottom:6%}.hero-handnote{right:-3%;top:4%;font-size:23px}.hello-sticker{left:2%;top:15%;font-size:25px}.hero-crown{top:1%;left:32%;width:118px;height:118px}.hero-art-label{bottom:3%;font-size:14px}.landing .launch-note{font-size:13px}.landing .learning-grid{margin-top:27px;gap:20px}.landing .learning-card{padding:30px;min-height:300px}.landing .learning-card h3{font-size:24px}.landing .section{padding-block:74px}.snake-section{grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding-top:20px;padding-bottom:55px}.snake-section h2{font-size:47px}.snake-scribble{display:block;position:absolute;right:8%;bottom:-24px;transform:rotate(-12deg)}.landing .invite-section{max-width:1280px;margin:0 auto;border-radius:36px;padding:58px 0 0}.landing .invite-layout{gap:65px;grid-template-columns:1fr 1fr;align-items:start}.landing .invite-section h2{font-size:50px}.landing .invite-section .wrap{width:calc(100% - 96px);max-width:1160px}.invite-copy{padding-top:10px}.invite-art{height:340px;max-width:none;margin-top:12px;margin-bottom:0}.invite-art img{height:116%;right:-8%;width:84%}.invite-art:before{inset:15% -12% -20% 0}.invite-art .encouragement{width:160px;height:160px;left:-7%;top:12%}.landing .form-card{margin-bottom:54px;padding:35px}.landing .organizer{grid-template-columns:64px 230px 1fr}.landing .faq-section{padding-block:75px}}
@media(max-width:360px){.landing .wrap{width:calc(100% - 30px)}.landing .brand{font-size:18px;gap:7px}.landing .brand-icon{width:33px;height:35px;font-size:18px}.landing .header-cta{padding:10px;font-size:11px}.landing .hero h1{font-size:34px;letter-spacing:-1.7px}.landing .hero-facts{font-size:11px}.hero-art{min-height:280px}.hero-handnote{font-size:15px}.hello-sticker{font-size:16px}.landing .invite-section .wrap{width:calc(100% - 24px)}.landing .form-card{padding:20px}.snake-overlay h3{font-size:25px}.snake-overlay-kicker{font-size:8px}.snake-overlay p{font-size:11px}.snake-controls{gap:8px}}
/* Let narrow layouts shrink around artwork without causing horizontal scroll. */
.landing .hero{grid-template-columns:minmax(0,1fr)}.hero-copy,.hero-art{min-width:0}.hero-characters{width:100%;left:0;right:0}.hero-handnote{right:8px}.hero-art-label{max-width:100%;font-size:11px}.invite-art .encouragement{filter:brightness(0) invert(1)}
@media(min-width:1000px){.landing .hero{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}.hero-characters{width:108%;left:-4%;right:-4%}.hero-handnote{right:0}.hero-art-label{font-size:14px}}
