:root{--bg:#0d0d0f;--bg2:#151517;--card:#1a1a1d;--line:#323236;--ink:#f6f2ea;--mute:#b5b0a5;--gold:#e8b84a;--gold2:#f6d98a;--violet:#1f9d74;color-scheme:dark;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:env(safe-area-inset-top,0px)}*{box-sizing:border-box}
body{margin:0;font:400 1.0625rem/1.65 "Source Sans 3",system-ui,sans-serif;color:var(--ink);background:radial-gradient(900px 500px at 85% -5%,#14382d 0%,transparent 60%),radial-gradient(700px 400px at -5% 20%,#3a2a10 0%,transparent 55%),var(--bg);background-attachment:fixed}
h1,h2,h3,.logo{font-family:"Bricolage Grotesque",system-ui,sans-serif;line-height:1.1;margin:0 0 .5em}
h1{font-size:clamp(2.3rem,5.2vw,4rem);font-weight:700;letter-spacing:-.025em}h2{font-size:clamp(1.7rem,3.2vw,2.4rem)}h3{font-size:1.2rem}
a{color:var(--gold)}button{font:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.ic{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ic.sm{width:16px;height:16px;vertical-align:-3px}
.nav{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;padding:1rem clamp(1rem,5vw,4rem);background:rgba(13,13,15,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav nav{display:flex;gap:1.3rem;align-items:center}.nav a,.tab{color:var(--ink);text-decoration:none;background:none;border:0;padding:.2rem 0;border-bottom:2px solid transparent}
.nav a[aria-current],.tab[aria-current]{border-bottom-color:var(--gold)}.logo{font-weight:700;font-size:1.35rem;color:var(--gold2)!important;border:0!important}
.btn{display:inline-block;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1405!important;padding:.85rem 1.5rem;border-radius:8px;border:0;font-weight:600;text-decoration:none;box-shadow:0 8px 24px rgba(232,184,74,.25);transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(232,184,74,.4)}.btn.small{padding:.5rem 1rem}.btn.ghost{background:none;color:var(--ink)!important;border:1px solid var(--line);box-shadow:none}.row{display:flex;gap:1rem;flex-wrap:wrap}
.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center;padding:clamp(2.5rem,7vw,6rem) clamp(1rem,5vw,4rem)}
.pill{display:inline-block;border:1px solid var(--line);background:var(--card);padding:.3rem .9rem;border-radius:99px;color:var(--gold2);font-size:.9rem;margin:0 0 1.2rem}
.lead{font-size:1.25rem;color:var(--mute);max-width:36em;margin:0 0 1.8rem}
.hero-art{position:relative}.dash{width:100%;display:block;filter:drop-shadow(0 30px 50px rgba(0,0,0,.5))}
.dash-bg{fill:var(--card);stroke:var(--line)}.dash-grid path{stroke:var(--line);stroke-width:1}.dash-t{fill:var(--mute);font:14px "Source Sans 3"}.dash-n{fill:var(--gold2);font:700 30px "Bricolage Grotesque"}
.line{fill:none;stroke:var(--gold);stroke-width:4;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 2.4s .3s ease forwards}.area{opacity:0;animation:fade 1s 1.8s forwards}.dot{fill:var(--gold2);opacity:0;animation:fade .4s 2.6s forwards,pulse 2s 3s infinite}
.chip{position:absolute;background:var(--bg2);border:1px solid var(--line);padding:.5rem .9rem;border-radius:99px;font-size:.9rem;color:var(--gold2);animation:float 5s ease-in-out infinite}.c1{left:-6%;bottom:12%}.c2{right:-2%;top:6%;animation-delay:-2.5s}
@keyframes draw{to{stroke-dashoffset:0}}@keyframes fade{to{opacity:1}}@keyframes pulse{50%{r:11;opacity:.5}}@keyframes float{50%{transform:translateY(-10px)}}@keyframes spin{to{transform:rotate(360deg)}}
.spin{transform-origin:120px 150px;stroke-dasharray:14 10;animation:spin 24s linear infinite}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1rem;margin:0 clamp(1rem,5vw,4rem);padding:1.8rem;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,var(--card),var(--bg2));text-align:center}
.stats b{display:block;font:700 2.6rem "Bricolage Grotesque";color:var(--gold2)}.stats span{color:var(--mute)}
.block{padding:clamp(2.5rem,6vw,5rem) clamp(1rem,5vw,4rem)}.alt{background:rgba(21,21,23,.6)}.page-head{padding-bottom:1rem}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.4rem;margin-top:1.5rem}.cards.three{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.6rem;transition:transform .25s,border-color .25s;margin:0}.card:hover{transform:translateY(-4px);border-color:var(--gold)}.card p{color:var(--mute);margin:0}
.ico{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,rgba(232,184,74,.2),rgba(31,157,116,.25));color:var(--gold2);margin-bottom:1rem}
.quote{position:relative}.quote blockquote{margin:.8rem 0 1.2rem;font-size:1.08rem}.stars{color:var(--gold)}.sample{position:absolute;top:1rem;right:1rem;font-size:.75rem;border:1px dashed var(--mute);color:var(--mute);padding:.1rem .5rem;border-radius:99px}
figcaption{display:flex;align-items:center;gap:.8rem}figcaption small{color:var(--mute)}
.av{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--violet),var(--gold));color:#fff;font:600 .95rem "Source Sans 3";font-style:normal}.av.big{width:72px;height:72px;font-size:1.3rem;margin-bottom:1rem}.team{text-align:center}.team .av{margin-inline:auto}
.split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.split p{color:var(--mute)}.art{width:100%}
.cta{margin:clamp(2rem,5vw,4rem) clamp(1rem,5vw,4rem);padding:clamp(2rem,5vw,4rem);border-radius:20px;text-align:center;background:linear-gradient(135deg,#123a2e,#1d5a45 50%,#7a5a1c);border:1px solid var(--line)}.cta p{color:#e6efe9;margin:0 auto 1.6rem;max-width:34em}
.narrow{max-width:44rem;margin:auto}.form label{display:block;margin-bottom:1rem;font-weight:600}
.form input,.form textarea{display:block;width:100%;margin-top:.3rem;padding:.8rem;border:1px solid var(--line);border-radius:8px;font:inherit;background:var(--card);color:var(--ink)}.hp{position:absolute;left:-9999px}
.ok{background:#16382a;padding:1rem;border-radius:8px}.err{background:#4a1d26;padding:1rem;border-radius:8px}.fine{font-size:.85rem;color:var(--mute)}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:2rem clamp(1rem,5vw,4rem);border-top:1px solid var(--line);color:var(--mute)}.foot strong{color:var(--ink)}
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.rv.in{opacity:1;transform:none}
.page{display:none}.page.on{display:block}
@media(max-width:820px){.hero,.split{grid-template-columns:1fr}.c1{left:0}.c2{right:0}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}.line{stroke-dashoffset:0}.area,.dot{opacity:1}}

body{font-size:1.15rem}
h1{font-size:clamp(2.6rem,6.2vw,5rem)}h2{font-size:clamp(2rem,4vw,3.2rem)}h3{font-size:1.35rem}
.logo{font-size:1.6rem}.logo b{font-weight:700}.logo em{font-style:normal;background:linear-gradient(135deg,var(--gold2),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.25em;margin:0 .02em}
.nav{padding-block:1.2rem}.nav nav{gap:1.8rem;font-size:1.05rem}
.hero{min-height:82vh;padding-block:clamp(3rem,8vw,7rem)}.lead{font-size:1.4rem}.btn{padding:1rem 1.9rem;font-size:1.1rem}.btn.small{padding:.6rem 1.2rem;font-size:1rem}
.stats{padding:2.6rem}.stats b{font-size:3.4rem}
.block{padding-block:clamp(3.5rem,9vw,7rem)}.card{padding:2.1rem}.cards{gap:1.8rem}.cards.four{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.ico{width:60px;height:60px}.ic{width:30px;height:30px}.ic.sm{width:18px;height:18px}
.step i{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1405;font:700 1.3rem "Bricolage Grotesque";font-style:normal;margin-bottom:1rem}
.result b{display:block;font:700 3.6rem/1 "Bricolage Grotesque";color:var(--gold2);margin:.4rem 0 .8rem}
.tags{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}.tags span{border:1px solid var(--line);background:var(--card);padding:.6rem 1.2rem;border-radius:99px;transition:border-color .2s,color .2s}.tags span:hover{border-color:var(--gold);color:var(--gold2)}
.faq{border-bottom:1px solid var(--line);padding:1.1rem 0}.faq summary{cursor:pointer;font:600 1.2rem "Bricolage Grotesque";list-style:none;display:flex;justify-content:space-between;gap:1rem}.faq summary::after{content:"+";color:var(--gold);font-size:1.6rem;line-height:1;transition:transform .25s}.faq[open] summary::after{transform:rotate(45deg)}.faq p{color:var(--mute);margin:.8rem 0 0}
.float-cta{position:fixed;right:1.2rem;bottom:calc(1.2rem + env(safe-area-inset-bottom,0px));z-index:20;animation:float 4s ease-in-out infinite}
.cta{padding-block:clamp(3rem,7vw,6rem)}.cta h2{font-size:clamp(2rem,4.5vw,3.4rem)}

.case dl{margin:1rem 0 0}.case dt{color:var(--gold2);font-weight:600;margin-top:1rem}.case dd{margin:.2rem 0 0;color:var(--mute)}.case h3{padding-right:6rem}
@media(max-width:700px){.nav nav{gap:.9rem;font-size:.95rem}}

.tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr));gap:1.8rem;align-items:start}.tool h2{font-size:1.7rem}.tool>p{color:var(--mute)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}@media(max-width:560px){.two{grid-template-columns:1fr}}
.form select{display:block;width:100%;margin-top:.3rem;padding:.8rem;border:1px solid var(--line);border-radius:8px;font:inherit;background:var(--card);color:var(--ink)}
.consent{display:flex!important;gap:.7rem;font-weight:400!important;font-size:.95rem;color:var(--mute)}.consent input{width:auto!important;margin-top:.35rem!important}
.score{display:flex;align-items:center;gap:1.2rem;margin:1rem 0}.score b{font:700 3.2rem "Bricolage Grotesque";color:var(--gold2)}
.checks{list-style:none;padding:0;margin:0 0 1.2rem}.checks li{padding:.7rem 0;border-top:1px solid var(--line)}.checks small{display:block;color:var(--mute);margin-top:.2rem}.pass{color:#5fd39a}.fail{color:#ff9b8a}
.figs{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.8rem;margin:1rem 0}.figs div{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:.9rem}.figs b{display:block;font:700 1.5rem "Bricolage Grotesque";color:var(--gold2)}.figs span{font-size:.9rem;color:var(--mute)}
.note{color:var(--mute);font-size:.95rem}
