:root{--paper:#faf6ee;--paper-alt:#f3eddf;--ink:#2a2620;--muted:#6b6257;--green:#1e4d3b;--green-deep:#173d2f;--green-soft:#2e6b52;--green-lt:#e8f0e4;--green-bd:#d4e2cd;--green-on:#cbdcc4;--apricot:#f4a25e;--apricot-lt:#fdebdc;--apricot-ink:#9a5b22;--sand:#f7c89b;--line:#ede5d4;--card:#fff;--card-warm:#fbf9f4;--bg:#0c2119;--bg-2:#10291f;--surface:#153427;--surface-2:#1b4131;--border:#f6f0e41a;--border-2:#f6f0e42e;--text:#f6f0e4;--text-muted:#a9bfb1;--mint:#b9e4c9;--cream:#fff7ea;--head:"Bricolage Grotesque", system-ui, -apple-system, sans-serif;--sans:"Instrument Sans", system-ui, -apple-system, sans-serif;--r:22px;--r-sm:14px;--sh-soft:0 24px 48px -28px #0000008c;--sh-lift:0 34px 60px -30px #000000b3;--maxw:1180px;--section-y:clamp(60px, 9vw, 110px)}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body,html{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit}::selection{background:var(--apricot);color:var(--ink)}:focus-visible{outline:3px solid var(--apricot);outline-offset:3px;border-radius:6px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.container{max-width:var(--maxw);width:100%;margin:0 auto;padding-inline:20px}.section{padding-block:var(--section-y)}.skip-link{z-index:300;background:var(--apricot);color:var(--ink);border-radius:999px;padding:12px 18px;font-size:14px;font-weight:700;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:12px}.eyebrow{color:var(--apricot);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;margin:0 0 12px;font-size:13px;font-weight:800;display:inline-flex}.eyebrow:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.eyebrow--on-green{color:var(--sand)}.h2{font-family:var(--head);letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(32px,4.4vw,52px);font-weight:800;line-height:1.04}.lead{color:var(--text-muted);margin:0;font-size:16.5px;line-height:1.6}.swoosh{white-space:nowrap;z-index:0;position:relative}.swoosh:after{content:"";background:var(--apricot);z-index:-1;border-radius:999px;height:.24em;position:absolute;bottom:.04em;left:-2%;right:-2%;transform:rotate(-1.2deg)}.js .swoosh:after{transform-origin:0;animation:.9s cubic-bezier(.22,.61,.36,1) .7s both bz-swoosh}@keyframes bz-swoosh{0%{transform:rotate(-1.2deg)scaleX(0)}to{transform:rotate(-1.2deg)scaleX(1)}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:44px;display:flex}.section-head .h2{max-width:22ch}.section-head .lead{max-width:38ch}.section-head--center{text-align:center;flex-direction:column;align-items:center}.section-head--center .h2{max-width:24ch}.section-head--center .lead{max-width:54ch;margin-top:14px}.btn{min-height:54px;font-family:var(--sans);cursor:pointer;text-align:center;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding-inline:30px;font-size:16px;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s,opacity .15s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--apricot);color:var(--ink);box-shadow:0 14px 28px -14px #f4a25ee6}.btn--primary:hover{box-shadow:0 18px 34px -14px #f4a25e}.btn--ghost{color:var(--text);border:1.5px solid var(--border-2);background:0 0;padding-inline:26px;font-weight:600}.btn--ghost:hover{border-color:var(--text)}.btn--green{background:var(--green);color:var(--paper)}.btn--green:hover{background:var(--green-deep)}.btn--soft{background:var(--surface-2);color:var(--text)}.btn--soft:hover{background:#22503c}.btn--ink{background:var(--ink);color:var(--paper)}.btn--sm{min-height:42px;padding-inline:22px;font-size:15px}.btn[disabled]{opacity:.6;cursor:progress;transform:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r)}.pill{border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:700;display:inline-flex}.pill--green{background:var(--surface);color:var(--mint);border:1px solid var(--border-2)}.pill--apricot{color:var(--sand);background:#f4a25e24;padding:5px 12px;font-size:12px}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;display:grid}.grid-auto--sm{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.grid-fit{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;display:grid}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root{--ease-out:cubic-bezier(.22, .61, .36, 1);--dur:.72s}.js .reveal{opacity:0;will-change:opacity,transform;transform:translateY(20px)}.js .reveal.is-visible{opacity:1;transition:opacity var(--dur) var(--ease-out),transform var(--dur) var(--ease-out);will-change:auto;transform:none}.js .reveal--left{transform:translate(-28px)}.js .reveal--right{transform:translate(28px)}.js .reveal--pop{transform:translateY(16px)scale(.97)}.js .rise{opacity:0;animation:bz-rise .85s var(--ease-out) both;animation-delay:var(--rise-delay,0s);transform:translateY(22px)}@keyframes bz-rise{to{opacity:1;transform:none}}.js .rise--soft{transform:translateY(14px)scale(.985)}@keyframes bz-float{0%,to{transform:translateY(0) rotate(var(--float-tilt,0deg))}50%{transform:translateY(-7px) rotate(var(--float-tilt,0deg))}}.js .float{animation:5.5s ease-in-out infinite bz-float}@keyframes bz-pulse{0%,to{opacity:1}50%{opacity:.35}}.js .pulse{animation:1.8s ease-in-out infinite bz-pulse}.js .grow{transform-origin:bottom;transform:scaleY(0)}.js .grow.is-visible{transition:transform .8s var(--ease-out);transform:scaleY(1)}.page-enter-active,.page-leave-active{transition:opacity .22s ease,transform .22s var(--ease-out)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0}@media (prefers-reduced-motion:reduce){.js .grow,.js .reveal,.js .rise{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}.js .float,.js .pulse{animation:none!important}}
