:root{--brand: #0a4227;--brand-deep: #06351f;--brand-ink: #042818;--mint: #d8f3e7;--cream: #f6faf8;--ink: #0f1f1c;--white: #ffffff;--ink-soft: #2a3f3a;--ink-mute: #5c736c;--line: rgba(15, 31, 28, .12);--max: 1120px;--narrow: 720px;--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--radius: 14px;--shadow: 0 12px 36px rgba(10, 66, 39, .1);--focus: 2px solid var(--brand);--page-bg: #ffffff;--text: var(--ink);--text-soft: var(--ink-soft);--text-mute: var(--ink-mute);--link: var(--brand);--footer-bg: var(--cream);--header-h: 4rem;--card-ink: #0f1f1c;--card-ink-soft: #2a3f3a;--card-ink-mute: #5c736c;--card-bg: #ffffff;--card-selected-bg: #eef8f3}@media(prefers-color-scheme:dark){:root{--page-bg: #0c1a14;--text: #e8f2ed;--text-soft: rgba(232, 242, 237, .86);--text-mute: rgba(232, 242, 237, .62);--link: #9fd9bf;--line: rgba(232, 242, 237, .14);--footer-bg: #08140f;--cream: #12241c;--ink: #e8f2ed;--ink-soft: rgba(232, 242, 237, .86);--shadow: 0 12px 36px rgba(0, 0, 0, .35);--focus: 2px solid #9fd9bf}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font);font-size:1.0625rem;line-height:1.65;color:var(--text);background:var(--page-bg);-webkit-font-smoothing:antialiased}#root{min-height:100vh;display:flex;flex-direction:column}img,svg{display:block;max-width:100%;height:auto}a{color:var(--link);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--link) 45%,transparent);text-underline-offset:.15em}a:hover{text-decoration-color:var(--link)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:var(--focus);outline-offset:3px}.skip-link{position:absolute;left:1rem;top:-100px;z-index:200;padding:.5rem .75rem;background:var(--brand);color:var(--white);border-radius:8px;text-decoration:none;font-weight:600}.skip-link:focus{top:1rem}.container{width:min(100% - 2rem,var(--max));margin-inline:auto}.container.narrow{width:min(100% - 2rem,var(--narrow))}.app-shell{flex:1;display:flex;flex-direction:column;min-height:100vh}.app-shell main{flex:1}.site-header{border-bottom:1px solid var(--line);background:var(--page-bg);position:sticky;top:0;z-index:40}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--header-h)}.brand{text-decoration:none;display:flex;align-items:center}.brand-logo{height:36px;width:auto}@media(prefers-color-scheme:dark){.brand{background:#fff;padding:.3rem .55rem;border-radius:.65rem;border:1px solid rgba(10,66,39,.08);box-shadow:0 2px 10px #0c1a141f}}.site-nav{display:flex;flex-wrap:wrap;gap:.85rem 1.1rem;align-items:center}.site-nav a{text-decoration:none;color:var(--text-soft);font-weight:600;font-size:.92rem}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--brand)}@media(prefers-color-scheme:dark){.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--link)}}.nav-cta{background:var(--brand);color:var(--white)!important;padding:.4rem .9rem;border-radius:999px;text-decoration:none!important}.nav-cta:hover{filter:brightness(1.08);color:var(--white)!important}.hero{display:flex;align-items:center;justify-content:center;padding:3.25rem 0 1.75rem;text-align:center}.hero-inner{display:flex;flex-direction:column;align-items:center;gap:1.35rem}.hero-lockup{display:flex;flex-direction:column;align-items:center;width:min(100%,22rem)}@media(prefers-color-scheme:dark){.hero-lockup{background:#fff;padding:1rem 1.25rem;border-radius:1.25rem;border:1px solid rgba(10,66,39,.08);box-shadow:0 4px 20px #0c1a1414;box-sizing:border-box}}.hero-lockup-logo{width:100%;height:auto}@media(min-width:640px){.hero-lockup{width:min(100%,28rem)}}.hero h1{margin:1rem 0 0;font-size:clamp(2rem,5.2vw,3.1rem);line-height:1.12;letter-spacing:-.03em;font-weight:700;color:var(--text)}.hero-sub{margin:0;max-width:34rem;font-size:1.125rem;color:var(--text-soft)}.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.25rem;border:0;border-radius:999px;background:var(--brand);color:var(--white);font:inherit;font-weight:600;text-decoration:none;cursor:pointer;box-shadow:var(--shadow)}.btn:hover{text-decoration:none;filter:brightness(1.04);color:var(--white)}.btn-secondary{background:var(--white);color:var(--brand);border:1.5px solid var(--brand);box-shadow:none}.btn-secondary:hover{color:var(--brand);background:var(--mint);filter:none}.btn:disabled{opacity:.55;cursor:not-allowed;filter:none}.btn-ghost{background:transparent;color:var(--text-soft);box-shadow:none;border:1px solid var(--line)}.btn-ghost:hover{color:var(--text);filter:none}.cta-band{padding:.5rem 0 2.5rem}.cta-grid{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:700px){.cta-grid{grid-template-columns:1fr 1fr}}.cta-card{background:var(--cream);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);padding:1.35rem 1.4rem;box-shadow:var(--shadow);text-align:left}.cta-card h2{margin:0 0 .4rem;font-size:1.2rem;letter-spacing:-.02em}.cta-card p{margin:0 0 1rem;color:var(--text-soft);font-size:.98rem}.cta-card-link{display:inline-block;font-size:.95rem;font-weight:600;color:var(--link);text-decoration:none}.cta-card-link:hover{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--link) 55%,transparent)}.cta-card-note{margin:0 0 .75rem;font-size:.85rem;color:var(--text-mute);line-height:1.45}.waitlist{padding:1rem 0 4.5rem}.waitlist .section-head{text-align:center;margin-bottom:1.25rem}.waitlist .section-head h2{margin:0 0 .5rem;font-size:clamp(1.5rem,3.5vw,1.85rem);letter-spacing:-.02em}.waitlist .section-head p{margin:0 auto;max-width:32rem;color:var(--text-soft)}.waitlist-panel{background:var(--cream);color:var(--ink);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);padding:1.5rem;box-shadow:var(--shadow);max-width:36rem;margin-inline:auto}.form-field{margin-bottom:1rem}.form-field label{display:block;font-size:.88rem;font-weight:600;margin-bottom:.35rem;color:var(--ink)}.form-field input,.form-field select,.form-field textarea{width:100%;padding:.8rem .95rem;border-radius:12px;border:1px solid #c9ddd4;background:var(--white);color:#0f1f1c;font:inherit}.form-field.has-error input,.form-field.has-error select{border-color:#c45c5c;box-shadow:0 0 0 2px #b43c3c2e}.field-error{display:none;margin-top:.35rem;font-size:.82rem;color:#a33}.form-field.has-error .field-error{display:block}.form-row{display:grid;gap:1rem}@media(min-width:560px){.form-row{grid-template-columns:1fr 1fr}}.form-status{min-height:1.4rem;margin-top:.75rem;font-size:.92rem}.form-status.error{color:#a33}.form-status.success{color:var(--brand)}.form-hint{margin:.85rem 0 0;font-size:.8rem;color:#5c736c}.form-field.hp{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.waitlist-success{display:none;text-align:center;padding:1.5rem .5rem;color:var(--ink)}.waitlist-panel.is-success .waitlist-form{display:none}.waitlist-panel.is-success .waitlist-success{display:block}.waitlist-success h3{margin:0 0 .5rem;font-size:1.35rem;color:var(--brand)}.waitlist-success p{margin:0;color:#2a3f3a}.waitlist .btn{width:100%;box-shadow:none;margin-top:.5rem}.page{padding:2rem 0 4rem}.page-kicker{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);margin:0 0 .4rem}.progress{display:flex;gap:.35rem;margin:0 0 1.25rem}.progress span{height:6px;flex:1;border-radius:99px;background:var(--line)}.progress span.is-done,.progress span.is-on{background:var(--brand)}.progress span.is-on{opacity:1}.choice-grid{display:grid;gap:.65rem;grid-template-columns:1fr 1fr}@media(min-width:640px){.choice-grid.three{grid-template-columns:repeat(3,1fr)}}.choice{appearance:none;text-align:left;background:var(--card-bg);border:1.5px solid var(--line);border-radius:12px;padding:.85rem .95rem;font:inherit;font-weight:600;color:var(--card-ink);cursor:pointer}.choice:hover{border-color:var(--brand)}.choice.is-on{border-color:var(--brand);background:var(--card-selected-bg);color:var(--brand-ink);box-shadow:0 0 0 2px #0a42271f}.choice small{display:block;font-weight:500;color:var(--card-ink-mute);margin-top:.2rem}.quiz-nav{display:flex;justify-content:space-between;gap:.75rem;margin-top:1.5rem}.help{font-size:.88rem;color:var(--text-mute);margin:.4rem 0 .8rem}.check-row{display:flex;flex-wrap:wrap;gap:.5rem}.check-pill{display:inline-flex;align-items:center;gap:.35rem;border:1.5px solid var(--line);border-radius:999px;padding:.4rem .8rem;background:var(--card-bg);color:var(--card-ink);font-weight:600;font-size:.9rem;cursor:pointer}.check-pill input{accent-color:var(--brand)}.check-pill.is-on{border-color:var(--brand);background:var(--card-selected-bg);color:var(--brand-ink)}.result-list{display:grid;gap:1rem}.result-card-layout{display:grid;gap:.9rem;align-items:start}@media(min-width:560px){.result-card-layout{grid-template-columns:132px minmax(0,1fr);gap:1.1rem}}.result-card-media{width:100%;aspect-ratio:4 / 3;border-radius:calc(var(--radius) - 2px);overflow:hidden;background:var(--cream);border:1px solid var(--line)}.result-card-media-img{display:block;width:100%;height:100%;object-fit:cover}.result-card-media-svg{display:block;width:100%;height:100%}.result-card-content{min-width:0}@media(prefers-color-scheme:dark){.result-card-media{background:#12241c;border-color:#e8f2ed24}}.result-card{border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);padding:1.15rem 1.25rem;background:var(--card-bg);box-shadow:var(--shadow);color:var(--card-ink)}.result-card .help{color:var(--card-ink-mute)}.result-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.result-rank{font-weight:700;color:var(--brand);font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}.result-score{font-weight:700;font-variant-numeric:tabular-nums}.badge{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.15rem .5rem;border-radius:999px;background:var(--mint);color:var(--brand);margin-right:.35rem}.badge.warn{background:#f7e7c6;color:#6a4b12}.badge.fit-band{text-transform:none;letter-spacing:.02em}.badge.fit-band-perfect{background:#d8f3e4;color:#0f5c38}.badge.fit-band-strong{background:var(--mint);color:var(--brand)}.badge.fit-band-challenging{background:#f7e7c6;color:#6a4b12}.reasons{margin:.75rem 0 0;padding:0 0 0 1.1rem;color:var(--card-ink-soft)}.reasons li{margin:.2rem 0}.affiliate-note{margin:.85rem 0 0;font-size:.82rem;color:var(--card-ink-mute)}.empty-state{background:var(--cream);border:1px dashed var(--line);border-radius:var(--radius);padding:1.5rem}.disclosure-banner{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:.85rem 1rem;font-size:.9rem;margin:0 0 1.25rem;color:var(--ink-soft)}.prose h1{margin:0 0 1rem;font-size:clamp(1.75rem,4vw,2.25rem);letter-spacing:-.02em}.prose h2{margin:1.75rem 0 .65rem;font-size:1.15rem}.prose h3{margin:1.15rem 0 .4rem;font-size:1rem;color:var(--text-soft)}.prose p,.prose li{color:var(--text-soft);margin:0 0 1rem}.prose ul{margin:0 0 1rem;padding-left:1.25rem}.prose strong{color:var(--text);font-weight:600}.site-footer{border-top:1px solid var(--line);padding:1.5rem 0 2rem;background:var(--footer-bg)}.footer-inner{display:flex;flex-direction:column;gap:.5rem;align-items:center;text-align:center;font-size:.9375rem}.footer-brand{margin:0;font-weight:600}.footer-brand a{text-decoration:none}.footer-brand a:hover{text-decoration:underline}.footer-nav{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.footer-copy{margin:.25rem 0 0;color:var(--text-mute);font-size:.875rem}@media(min-width:640px){.footer-inner{flex-direction:row;flex-wrap:wrap;justify-content:space-between;text-align:left}.footer-copy{width:100%;text-align:center}}.error-page{text-align:center;padding:4rem 1rem}.location-opt{margin:.85rem 0 1rem;padding:.85rem 1rem;border:1px dashed var(--line);border-radius:var(--radius);background:var(--cream)}.location-opt p{margin:.35rem 0 0;font-size:.88rem;color:var(--text-mute)}.location-opt .btn{margin-top:.55rem}.location-status{margin:.5rem 0 0;font-size:.88rem;color:var(--text-soft)}.location-status.is-error{color:#a33}
