:root{--surface-primary:#fff;--surface-secondary:#fbf7ee;--surface-tertiary:#f0ede5;--text-primary:#2e2a24;--text-secondary:#6b635a;--text-tertiary:#796f66;--border:#e5e2da;--infancy:#b55855;--childhood:#b55f29;--adolescence:#567f67;--emerging:#487c9e;--stormy:#d54036;--success:#567f67;--on-color:#fff;--radius-sm:16px;--radius-md:18px;--radius-lg:20px;--radius-xl:24px;--radius-xxl:28px;--radius-full:9999px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-xxl:32px;--font-display:"SF Pro Rounded", ui-rounded, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif;--shadow-sm:0 1px 2px #2e2a240f, 0 1px 3px #2e2a2414;--shadow-md:0 4px 12px #2e2a2414, 0 2px 4px #2e2a240f;--shadow-lg:0 12px 32px #2e2a241f;--max-width:1120px}@media (prefers-color-scheme:dark){:root{--surface-primary:#363029;--surface-secondary:#2c2620;--surface-tertiary:#3d362f;--text-primary:#f4efe5;--text-secondary:#a8a096;--text-tertiary:#a0988f;--border:#3d362f;--infancy:#e0aeab;--childhood:#f0c9ac;--adolescence:#9cc4ac;--emerging:#a8c5db;--stormy:#e77b73;--success:#9cc4ac;--shadow-sm:0 1px 2px #0000003d, 0 1px 3px #00000047;--shadow-md:0 4px 12px #00000047, 0 2px 4px #0000003d;--shadow-lg:0 12px 32px #0000005c}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--surface-secondary);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5;position:relative}.page-shell{flex-direction:column;min-height:100vh;display:flex}.page-shell>main{flex:1 0 auto}img,svg{max-width:100%;display:block}a{color:inherit}.wrap{max-width:var(--max-width);padding:0 var(--space-xl);margin:0 auto}.site-header{z-index:20;background:color-mix(in srgb,var(--surface-secondary) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header .wrap{padding-top:var(--space-md);padding-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.brand{align-items:flex-end;gap:var(--space-sm);font-family:var(--font-display);color:var(--text-primary);font-size:18px;font-weight:700;text-decoration:none;display:flex}.brand img{width:auto;height:44px}.site-nav{align-items:center;gap:var(--space-xl);display:flex}.site-nav a:not(.button){color:var(--text-secondary);font-size:15px;font-weight:500;text-decoration:none}.site-nav a:not(.button):hover{color:var(--text-primary)}.nav-links{gap:var(--space-xl);display:flex}@media (width<=640px){.nav-links{display:none}}.button{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-full);font-family:var(--font-sans);cursor:pointer;border:1px solid #0000;padding:12px 24px;font-size:15px;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s,opacity .15s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--adolescence);color:var(--on-color);box-shadow:var(--shadow-sm)}.button-primary:hover{box-shadow:var(--shadow-md)}.button-secondary{background:var(--surface-primary);color:var(--text-primary);border-color:var(--border)}.button-small{padding:8px 18px;font-size:14px}.hero{padding:72px 0 96px;position:relative;overflow:hidden}.hero-arcs{z-index:0;opacity:.5;pointer-events:none;position:absolute;inset:0}.hero .wrap{z-index:1;gap:var(--space-xxl);text-align:center;justify-items:center;display:grid;position:relative}.eyebrow{align-items:center;gap:var(--space-sm);border-radius:var(--radius-full);background:var(--surface-primary);border:1px solid var(--border);color:var(--text-secondary);letter-spacing:.02em;padding:6px 16px;font-size:13px;font-weight:600;display:inline-flex}.hero h1{font-family:var(--font-display);letter-spacing:-.01em;max-width:18ch;margin:0;font-size:clamp(34px,5.5vw,56px);line-height:1.08}.hero p.lede{max-width:52ch;color:var(--text-secondary);margin:0;font-size:18px}.hero-actions{gap:var(--space-md);flex-wrap:wrap;justify-content:center;display:flex}.hero-note{color:var(--text-tertiary);font-size:13px}section{padding:72px 0}.section-head{max-width:640px;margin:0 auto var(--space-xxl);text-align:center}.section-head .kicker{color:var(--adolescence);letter-spacing:.06em;text-transform:uppercase;margin:0 0 var(--space-sm);font-size:13px;font-weight:700}.section-head h2{font-family:var(--font-display);margin:0 0 var(--space-md);letter-spacing:-.01em;font-size:clamp(26px,3.4vw,36px)}.section-head p{color:var(--text-secondary);margin:0;font-size:17px}.phases{background:var(--surface-primary);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.phase-grid{gap:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=900px){.phase-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.phase-grid{grid-template-columns:1fr}}.phase-card{background:var(--surface-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-xl);gap:var(--space-md);flex-direction:column;display:flex}.phase-dot{border-radius:var(--radius-full);width:40px;height:40px;color:var(--on-color);justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.phase-card h3,.phase-dot{font-family:var(--font-display)}.phase-card h3{margin:0;font-size:18px}.phase-card .age-range{margin:-8px 0 0;font-size:13px;font-weight:600}.phase-card p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.55}.phase-card .leap-count{color:var(--text-tertiary);margin-top:auto;font-size:12px;font-weight:600}.feature-grid{gap:var(--space-xl);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=900px){.feature-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.feature-grid{grid-template-columns:1fr}}.feature-card{background:var(--surface-primary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-xl)}.feature-icon{border-radius:var(--radius-md);background:var(--surface-tertiary);width:44px;height:44px;margin-bottom:var(--space-lg);color:var(--adolescence);justify-content:center;align-items:center;display:flex}.feature-card h3{font-family:var(--font-display);margin:0 0 var(--space-sm);font-size:17px}.feature-card p{color:var(--text-secondary);margin:0;font-size:14.5px;line-height:1.55}.timeline{background:var(--surface-primary);border-top:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center}.timeline figure{margin:0}.timeline figcaption{margin-top:var(--space-lg);color:var(--text-secondary);max-width:46ch;margin-left:auto;margin-right:auto;font-size:15px}.waitlist{background:var(--surface-tertiary);border-radius:var(--radius-xxl);margin:0 var(--space-xl) 0;padding:56px var(--space-xl);text-align:center}.waitlist .wrap{max-width:560px;padding:0}form.stack-form{gap:var(--space-md);margin-top:var(--space-xl);flex-wrap:wrap;justify-content:center;display:flex}form.stack-form input[type=email],form.stack-form input[type=text],form.stack-form select{border-radius:var(--radius-full);border:1px solid var(--border);background:var(--surface-primary);color:var(--text-primary);font-size:15px;font-family:var(--font-sans);flex:240px;padding:13px 18px}form.stack-form input:focus,form.stack-form select:focus,form.stack-form textarea:focus{outline:2px solid var(--adolescence);outline-offset:1px}.form-note{margin-top:var(--space-md);color:var(--text-tertiary);font-size:13px}.hidden-field{position:absolute;left:-9999px}.contact-form{gap:var(--space-md);max-width:520px;margin:0 auto}.contact-form,.contact-form label{flex-direction:column;display:flex}.contact-form label{color:var(--text-secondary);gap:var(--space-xs);font-size:13px;font-weight:600}.contact-form input,.contact-form textarea{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-primary);color:var(--text-primary);font-family:var(--font-sans);padding:12px 16px;font-size:15px}.contact-form textarea{resize:vertical;min-height:120px}.faq{gap:var(--space-md);flex-direction:column;max-width:720px;margin:0 auto;display:flex}.faq details{background:var(--surface-primary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg) var(--space-xl)}.faq summary{cursor:pointer;font-weight:600;font-family:var(--font-display);font-size:15.5px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"+";width:1.1em;color:var(--adolescence);font-weight:700;display:inline-block}.faq details[open] summary:before{content:"−"}.faq p{margin:var(--space-md) 0 0 1.6em;color:var(--text-secondary);font-size:14.5px;line-height:1.6}.legal{max-width:720px;padding:72px var(--space-xl) 96px;margin:0 auto}.legal h1{font-family:var(--font-display);margin-bottom:var(--space-xs);font-size:clamp(28px,4vw,38px)}.legal .updated{color:var(--text-tertiary);margin-bottom:var(--space-xxl);font-size:13px}.legal h2{font-family:var(--font-display);margin-top:var(--space-xxl);font-size:19px}.legal li,.legal p{color:var(--text-secondary);font-size:15px;line-height:1.7}.legal ul{padding-left:1.2em}.legal a{color:var(--adolescence)}.page-hero{text-align:center;padding:64px 0 40px}.page-hero h1{font-family:var(--font-display);margin:0 0 var(--space-md);font-size:clamp(28px,4vw,40px)}.page-hero p{color:var(--text-secondary);max-width:52ch;margin:0 auto;font-size:17px}.page-arcs{z-index:-1;pointer-events:none;height:1400px;position:absolute;bottom:100%;left:0;right:0}.site-footer{border-top:1px solid var(--border);padding:var(--space-xxl) 0;margin-top:48px;position:relative}.footer-grid{gap:var(--space-xxl);flex-wrap:wrap;justify-content:space-between;display:flex}.footer-brand{max-width:280px}.footer-brand .brand{margin-bottom:var(--space-sm)}.footer-brand p{color:var(--text-tertiary);font-size:13.5px;line-height:1.6}.footer-cols{flex-wrap:wrap;gap:64px;display:flex}.footer-col h4{text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin:0 0 var(--space-md);font-size:12px}.footer-col a{color:var(--text-secondary);margin-bottom:var(--space-sm);font-size:14px;text-decoration:none;display:block}.footer-col a:hover{color:var(--text-primary)}.footer-bottom{margin-top:var(--space-xxl);padding-top:var(--space-xl);border-top:1px solid var(--border);color:var(--text-tertiary);text-align:center;font-size:13px}
