
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}html,body{overflow-x:hidden}
body{margin:0;font-family:var(--body);color:var(--ink);background:var(--bg);line-height:1.55;font-size:var(--fs,17px)}
img,svg,video{max-width:100%;height:auto;display:block}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}
h1,h2,h3,h4{font-family:var(--disp);line-height:1.1;margin:0 0 .5em;letter-spacing:var(--trk,-.01em);color:var(--head,var(--ink))}
h1{font-size:clamp(2.1rem,5.2vw,4rem)}h2{font-size:clamp(1.6rem,3.4vw,2.6rem)}h3{font-size:1.2rem}p{margin:0 0 1em}
.wrap{width:min(1180px,calc(100% - 32px));margin:0 auto}section{padding:clamp(3rem,7vw,5.5rem) 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:700 1rem var(--body);padding:.9rem 1.5rem;border-radius:var(--rb,14px);border:2px solid transparent;cursor:pointer;transition:.22s;text-decoration:none!important;line-height:1.1}
.btn.primary{background:var(--accent);color:var(--onaccent,#fff)}.btn.primary:hover{transform:translateY(-3px);box-shadow:0 14px 30px -12px var(--accent);filter:brightness(1.05)}
.btn.ghost{background:transparent;border-color:currentColor;color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:var(--bg)}
.btn.big{font-size:1.1rem;padding:1.1rem 1.8rem}.btn.pulse{box-shadow:0 0 0 0 var(--accent);animation:pulse 2.4s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 55%,transparent)}70%{box-shadow:0 0 0 16px transparent}100%{box-shadow:0 0 0 0 transparent}}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease,ease),transform .7s var(--ease,ease)}.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.btn.pulse{animation:none}}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
@media(max-width:900px){.grid3,.grid4{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.grid2,.grid3,.grid4{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--rc,20px);padding:1.4rem;transition:.25s;position:relative}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--accent)}
.eyebrow{display:inline-block;font:800 .74rem var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:.6rem}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem}.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--rc,20px);padding:1.2rem;transition:.25s}.kpi:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow)}
.kpi b{display:block;font:800 clamp(1.8rem,3.5vw,2.6rem)/1 var(--disp);color:var(--head,var(--ink))}.kpi span{display:block;font:600 .9rem var(--body);margin-top:.4rem}.kpi small{display:block;font:500 .72rem var(--body);color:var(--muted);margin-top:.4rem}.kpi small a{color:var(--muted);text-decoration:underline}
/* forms */
.lead{background:var(--card);border:1px solid var(--line);border-radius:var(--rc,20px);padding:1.5rem;box-shadow:var(--shadow)}
.fgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem}.fld.full{grid-column:1/-1}@media(max-width:560px){.fgrid{grid-template-columns:1fr}}
.fld label{display:block;font:700 .82rem var(--body);margin-bottom:.3rem;color:var(--ink)}.fld input,.fld select,.fld textarea{width:100%;font:500 1rem var(--body);padding:.8rem .9rem;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:#111;transition:.2s}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.fld .bad,.tcpa input.bad+span{outline:2px solid #D23B3B}
.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.logowall{padding:2rem 0;overflow:hidden}.logowall .lwlabel{font:700 .78rem var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 .9rem}.logowall .lane{display:flex;overflow:hidden;gap:0}.logowall .track{display:flex;gap:1.2rem;list-style:none;margin:0;padding:0 .6rem;align-items:center;flex-wrap:wrap;justify-content:center}.logowall.marquee .track{flex-wrap:nowrap;animation:lw 48s linear infinite}.logowall.marquee:hover .track{animation-play-state:paused}@keyframes lw{to{transform:translateX(-100%)}}.logowall li{flex:0 0 auto;background:#fff;border:1px solid var(--line);border-radius:12px;padding:.6rem .9rem;display:grid;place-items:center;height:72px;width:168px;transition:.25s}.logowall li:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.logowall img{max-width:140px;max-height:48px;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.85;transition:.25s}.logowall li:hover img{filter:none;opacity:1}@media(prefers-reduced-motion:reduce){.logowall.marquee .track{animation:none;flex-wrap:wrap}}
.slidein{position:fixed;right:16px;bottom:84px;width:min(360px,calc(100vw - 32px));background:var(--card,#fff);color:var(--ink);border:1px solid var(--line);border-radius:var(--rc,18px);box-shadow:0 30px 60px -20px rgba(0,0,0,.35);padding:1.1rem 1.2rem;z-index:120;transform:translateY(140%);opacity:0;transition:.5s var(--ease)}.slidein.on{transform:none;opacity:1}.slidein b{display:block;font:700 1.05rem var(--disp);margin-right:1.6rem}.slidein p{margin:.4rem 0 .8rem;font-size:.92rem;color:var(--muted)}.slidein .x{position:absolute;right:.6rem;top:.5rem;border:0;background:none;font-size:1.4rem;cursor:pointer;color:var(--muted)}.slidein .btn{font-size:.9rem;padding:.6rem .9rem}@media(min-width:900px){.slidein{bottom:24px}}
.magnet .mg{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}@media(max-width:900px){.magnet .mg{grid-template-columns:1fr}}.magnet .mg-text ul{padding-left:1.2rem}.magnet .mg-pic{margin-top:1rem;max-width:320px}.magnet .mg-pic img{width:100%;height:auto;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);transform:rotate(-2deg)}
.dlbox{margin-top:1rem;padding:1.2rem;border:2px dashed var(--accent);border-radius:var(--rc,16px);display:none}.dlbox.on{display:block}
.xpl{padding:1.5rem 0 2rem}.xplbox{position:relative;border-radius:var(--rc,20px);overflow:hidden;box-shadow:var(--shadow);background:#000;max-width:980px;margin:0 auto}.xplbox video{display:block;width:100%;height:auto}.xplplay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:.8rem;background:rgba(255,255,255,.95);color:#111;border:0;border-radius:999px;padding:.8rem 1.4rem .8rem .9rem;font:800 1rem var(--body);cursor:pointer;box-shadow:0 20px 50px -15px rgba(0,0,0,.6);transition:.25s}.xplplay span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--accent);color:var(--onaccent,#fff);font-size:.9rem}.xplplay:hover{transform:translate(-50%,-50%) scale(1.05)}.xplbox.playing .xplplay{display:none}@media(max-width:700px){.xplplay{padding:.5rem .95rem .5rem .65rem;font-size:.82rem;gap:.5rem;white-space:nowrap;top:38%}}
body.lp header.top.lp .wrap{height:70px;display:flex;align-items:center;justify-content:space-between}body.lp .hero.lp .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:2.5rem;align-items:start}@media(max-width:900px){body.lp .hero.lp .wrap{grid-template-columns:1fr}}body.lp .lpb{padding-left:1.2rem;font-weight:600}body.lp .lpb li{margin:.35rem 0}body.lp .callbar,body.lp .slidein{display:none!important}

/* motion layer: parallax, scroll-tracked orbs, reading track, tilt + hover panels */
.px{will-change:transform}.orbs{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.orb{position:absolute;border-radius:50%;filter:blur(40px);opacity:.55;will-change:transform}.hero{position:relative}.hero>.wrap{position:relative;z-index:1}
.rtrack{position:fixed;left:0;top:0;height:4px;width:100%;z-index:130;background:transparent;pointer-events:none}.rtrack i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent2,var(--accent)))}
.tilt{transform-style:preserve-3d;transition:transform .25s ease,box-shadow .25s ease}.tilt.on{transition:none}
.hc{position:relative;overflow:hidden}.hc .hcp{position:absolute;left:0;right:0;bottom:0;border-top:3px solid var(--accent);transform:translateY(102%);transition:transform .35s var(--ease);background:var(--ink);color:#fff;padding:.9rem 1rem;font:500 .88rem/1.45 var(--body);z-index:3}.hc .hcp a{color:#fff;font-weight:800;text-decoration:underline;margin-right:.8rem}.hc .hcp b{display:block;color:#fff;margin-bottom:.2rem}@media(hover:hover){.hc:hover .hcp{transform:none}.hc.pop .hcp b,.hc.pop .hcp small{font:700 .95rem/1.3 var(--body)!important;display:block;margin:0 0 .2rem;color:#fff!important;letter-spacing:0}.hc.pop{overflow:visible}.hc.pop .hcp{top:auto;bottom:0;opacity:0;pointer-events:none;transform:translateY(10px);box-shadow:0 18px 40px -16px rgba(0,0,0,.45);border-radius:14px;z-index:20;transition:transform .3s var(--ease),opacity .3s}.hc.pop:hover .hcp,.hc.pop.open .hcp,.hc.pop:focus-within .hcp{opacity:1;pointer-events:auto;transform:none}.hc:focus-within .hcp{transform:none}}.hc.open .hcp{transform:none}
.logowall li.hc .hcp{padding:.4rem .6rem;font-size:.72rem}
.pxw{overflow:hidden;position:relative;line-height:0}.pxw img{border-radius:0!important;box-shadow:none!important;transition:none!important;will-change:transform}
.grid2>*,.grid3>*,.twocol>*,.kpis>*,.numgrid>*{min-width:0}
p>.btn{margin:0 .3rem .55rem 0;vertical-align:top}
.steps{position:relative;padding-top:18px}.steps::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:2px;background:var(--line)}.steps::after{content:"";position:absolute;left:0;top:0;height:3px;border-radius:2px;background:var(--accent);width:calc(var(--sp,0)*100%);transition:width .15s linear}.steps .sdot{position:absolute;top:-6px;left:calc(var(--sp,0)*100%);width:15px;height:15px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 22%,transparent);transform:translateX(-50%);transition:left .15s linear;pointer-events:none}.steps .step{transition:border-color .4s,box-shadow .4s,transform .4s}.steps .step.lit{border-color:var(--accent);box-shadow:0 10px 30px -18px color-mix(in srgb,var(--accent) 60%,transparent)}
@media(max-width:700px){.steps{padding-top:0;padding-left:22px}.steps::before,.steps::after{left:6px;right:auto;top:0;width:3px;height:100%}.steps::after{height:calc(var(--sp,0)*100%);width:3px;transition:height .15s linear}.steps .sdot{left:7.5px;top:calc(var(--sp,0)*100%);transform:translate(-50%,-50%);transition:top .15s linear}}
@media(prefers-reduced-motion:reduce){.steps .sdot{display:none}.steps::after{width:100%}.steps .step.lit{box-shadow:none}}
.sticky-figure{position:sticky;top:96px}.timeline::before{transform-origin:top;transform:scaleY(var(--tl,1))}.timeline .tl{transition:opacity .4s,transform .4s}
@media(prefers-reduced-motion:reduce){.px,.orb{transform:none!important}.tilt{transform:none!important}}@media(max-width:700px){.orb{display:none}}
main p a,main li a,main td a{text-decoration:underline;text-underline-offset:2px}
.hero-img img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--rc,20px);box-shadow:var(--shadow)}.hero-img .cap{font-size:.75rem;opacity:.7;margin-top:.4rem}@media(max-width:900px){.hero-img{max-width:560px}}
.tcpa{margin:1rem 0;font:500 .8rem/1.55 var(--body);color:var(--ink)}.tcpa label{display:flex;gap:.6rem;align-items:flex-start;cursor:pointer}.tcpa input{width:20px;height:20px;flex:none;margin-top:.15rem;accent-color:var(--accent)}.tcpa a{text-decoration:underline;color:var(--ink)}.tcpa label span{min-width:0;overflow-wrap:anywhere}
.lead .fld.pre select,.lead .fld.pre input{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.lead .carry{font:600 .85rem var(--body);color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent);border-radius:10px;padding:.55rem .8rem;margin:0 0 1rem}.lead .btn{width:100%}.lead .err{color:#D23B3B;font:700 .85rem var(--body);min-height:1.2em;margin:.5rem 0 0}.lead .fnote{font:500 .78rem var(--body);color:var(--muted);margin:.6rem 0 0}.lead .intro{font:600 .95rem var(--body);margin-bottom:1rem}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--ink);color:var(--bg);padding:.9rem 1.2rem;border-radius:14px;font:600 .9rem var(--body);opacity:0;transition:.3s;z-index:200;max-width:92vw}.toast.on{opacity:1;transform:translate(-50%,0)}
/* modal */
.modal{position:fixed;inset:0;background:rgba(10,15,25,.6);display:none;align-items:center;justify-content:center;z-index:150;padding:16px}.modal.open{display:flex}.modal .box{background:var(--card);color:var(--ink);border-radius:22px;max-width:560px;width:100%;padding:1.6rem;position:relative;box-shadow:0 30px 80px -20px rgba(0,0,0,.6);max-height:92vh;overflow:auto}.modal .close{position:absolute;top:.7rem;right:.7rem;width:38px;height:38px;border-radius:50%;border:none;background:var(--line);font-size:1.2rem;cursor:pointer}
/* gated self-enroll */
.selfpanel{display:none;margin-top:1rem}.selfpanel.open{display:block;animation:fade .4s}@keyframes fade{from{opacity:0;transform:translateY(8px)}}
.srow{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:16px;background:var(--card);margin-bottom:.7rem;transition:.2s}.srow:hover{border-color:var(--accent);transform:translateX(4px)}.srow b{display:block}.srow small{color:var(--muted);display:block;font-size:.82rem}.srow .btn{margin-left:auto;flex:none;padding:.6rem 1rem;font-size:.9rem}
@media(max-width:560px){.srow{flex-wrap:wrap}.srow .btn{width:100%;margin-left:0}}
/* charts */
.chart{background:var(--card);border:1px solid var(--line);border-radius:var(--rc,20px);padding:16px 14px 10px}.chart svg{width:100%;height:auto;overflow:visible}.chart .bar{opacity:0;transform:scaleY(0);transform-origin:bottom;transition:.6s var(--ease,ease)}.chart.in .bar{opacity:1;transform:none}.chart .lbl{font:600 11px var(--body);fill:var(--muted)}.chart .val{font:800 12px var(--body);fill:var(--ink)}
.chart .nvline .pt{opacity:0;transition:.5s}.chart.in .nvline .pt{opacity:1}.chart .nvline .area{opacity:0;transition:opacity 1s .6s}.chart.in .nvline .area{opacity:1}
.donutwrap{display:grid;grid-template-columns:150px 1fr;gap:.9rem;align-items:center}@media(max-width:480px){.donutwrap{grid-template-columns:1fr}}.donutwrap svg{width:150px;height:150px}.donutwrap .seg{stroke-dasharray:0 1000;transition:stroke-dasharray 1.2s cubic-bezier(.2,.8,.2,1)}.chart.in .donutwrap .seg{stroke-dasharray:var(--da)}.donutwrap .ctr{font:800 26px var(--disp);fill:var(--ink)}.donutwrap .sub{font:600 11px var(--body);fill:var(--muted)}.donutwrap .legend{display:grid;gap:.35rem}.donutwrap .lg{display:flex;align-items:center;gap:.5rem;font:600 .82rem var(--body)}.donutwrap .lg i{width:13px;height:13px;border-radius:4px;flex:none}.donutwrap .lg b{margin-left:auto}
.src{font:500 .74rem var(--body);color:var(--muted);margin-top:.6rem}.src a{color:var(--muted);text-decoration:underline}
/* arrows */
.arrow{display:inline-block;width:90px;height:45px;color:var(--accent);vertical-align:middle}.arrow[data-dir=down]{width:40px;height:90px}.arrow svg{width:100%;height:100%;overflow:visible}.arrow.in{animation:wig 3s ease-in-out 1.4s infinite}@keyframes wig{50%{transform:translateX(5px)}}
/* faq */
.faq details{border-bottom:1px solid var(--line);padding:.9rem 0}.faq summary{cursor:pointer;font:700 1.05rem var(--body);list-style:none;display:flex;justify-content:space-between;gap:1rem;color:var(--ink)}.faq summary::after{content:"+";font-size:1.4rem;color:var(--accent);transition:.2s}.faq details[open] summary::after{transform:rotate(45deg)}.faq details p{margin:.6rem 0 0;color:var(--ink)}
/* photo bands */
.band{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}@media(max-width:860px){.band{grid-template-columns:1fr}}.band img{width:100%;border-radius:var(--rc,20px);box-shadow:var(--shadow);transition:.4s}.band img:hover{transform:scale(1.02)}.band .cap{font:500 .72rem var(--body);color:var(--muted);margin-top:.4rem}
.band.flip>:first-child{order:2}@media(max-width:860px){.band.flip>:first-child{order:0}}
/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;counter-reset:s}@media(max-width:760px){.steps{grid-template-columns:1fr}}.step{background:var(--card);border:1px solid var(--line);border-radius:var(--rc,20px);padding:1.3rem;position:relative;transition:.25s}.step:hover{transform:translateY(-5px);border-color:var(--accent)}.step::before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--accent);color:var(--onaccent,#fff);font:800 1.1rem var(--disp);margin-bottom:.8rem}
/* ambient video */
.vid{position:relative;overflow:hidden;border-radius:var(--rc,20px);min-height:260px;background:#0b1220}.vid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}.vid .over{position:relative;z-index:1;padding:2rem;color:#fff;background:linear-gradient(90deg,rgba(5,10,20,.85),rgba(5,10,20,.35));min-height:260px;display:flex;flex-direction:column;justify-content:flex-end}.vid .over h2,.vid .over h3{color:#fff}.vid .over p{color:#E6EEF7;max-width:60ch}
/* legal pages */
.legal h2{font-size:1.3rem;margin-top:1.8rem}.legal p,.legal li{font-size:.95rem}.legal .meta{color:var(--muted);font-weight:600}
footer .legal{font:500 .74rem/1.5 var(--body);color:var(--muted);margin-top:1rem}footer .legal a{color:var(--muted);text-decoration:underline}
/* mobile call bar */
.callbar{position:fixed;left:0;right:0;bottom:0;display:none;grid-template-columns:1fr 1fr 1fr;z-index:120;box-shadow:0 -6px 20px rgba(0,0,0,.2)}.callbar a{text-align:center;padding:.9rem .4rem;font:800 .95rem var(--body);color:#fff;text-decoration:none!important}.callbar .c1{background:var(--accent)}.callbar .c2{background:var(--ink2)}.callbar .c3{background:var(--ink)}
@media(max-width:760px){.callbar{display:grid}body{padding-bottom:62px}}
.nav{display:flex;gap:1.2rem;align-items:center}.burger{display:none;background:none;border:none;font-size:1.6rem;cursor:pointer;color:inherit}
@media(max-width:860px){.burger{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;padding:1rem;gap:.4rem;background:var(--navbg,var(--ink));z-index:100}.nav.open{display:flex}.nav a{padding:.7rem .5rem}}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:.5rem}.skip:focus{left:8px;z-index:999}
table.cmp{width:100%;border-collapse:collapse;font:500 .9rem var(--body)}table.cmp th,table.cmp td{padding:.7rem .6rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}table.cmp th{font-weight:800;color:var(--head,var(--ink))}table.cmp tr:hover td{background:color-mix(in srgb,var(--accent) 7%,transparent)}
.tblwrap{overflow:auto;-webkit-overflow-scrolling:touch}
.quick{border-left:5px solid var(--accent);background:var(--card);border-radius:16px;padding:1rem 1.3rem;box-shadow:var(--shadow);max-width:900px}.quick .qk{font:800 .72rem var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.byline{font:600 .8rem var(--body);color:var(--muted);margin-top:.6rem}


:root{--disp:"Fraunces","Georgia",serif;--body:"Nunito",system-ui,sans-serif;--ink:#2A1430;--ink2:#5A3A58;--bg:#FFF7EE;--card:#FFFFFF;--line:#F0DCCB;--muted:#7C6477;--accent:#C94F38;--onaccent:#fff;--accent2:#3A1834;--link:#C94F38;--head:#2A1430;--shadow:0 22px 50px -26px rgba(58,24,52,.45);--rb:14px;--rc:22px;--ease:cubic-bezier(.2,.8,.2,1);--fs:19px;--navbg:#3A1834;--gold:#F2A33A}
body{background:var(--bg)}
h1{font-weight:800;font-size:clamp(2.4rem,5.6vw,4.2rem);letter-spacing:-.01em}h2{font-weight:700;font-size:clamp(1.75rem,3.4vw,2.6rem)}h3{font-weight:700;font-size:1.25rem}
.btn{font-size:1.05rem;border-radius:999px;font-weight:800}.btn.primary{background:var(--accent)}.btn.gold{background:var(--gold);color:var(--ink)}
header.top{background:rgba(255,247,238,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:78px;gap:1rem;position:relative}
header.top .logo{display:flex;align-items:center;gap:.5rem;font:800 1.5rem var(--disp);color:var(--ink);text-decoration:none!important;white-space:nowrap}header.top .logo svg{height:34px;width:auto}
header.top .nav a{font:700 .9rem var(--body);color:var(--ink);padding:.4rem 0;border-bottom:2px solid transparent;white-space:nowrap}header.top .nav{gap:1rem}header.top .nav a:hover{border-bottom-color:var(--accent);text-decoration:none}
header.top .nav a.cta{background:var(--accent2);color:#fff;padding:.7rem 1.2rem;border-radius:999px}header.top .nav a.cta:hover{background:var(--accent);text-decoration:none}
header.top .nav a.lang{background:#FFEBDD;border-radius:999px;padding:.35rem .7rem;font-size:.8rem}
@media(max-width:860px){header.top .nav a{color:#fff}header.top .nav a.lang{background:rgba(255,255,255,.12)}}
.hero{position:relative;overflow:hidden;padding:clamp(2.5rem,7vw,6rem) 0 2rem;background:linear-gradient(160deg,#3A1834 0%,#6B2A4E 45%,#C94F38 100%);color:#fff}
.hero h1,.hero h2{color:#fff}.hero .lede{font-size:1.25rem;line-height:1.6;color:#FFE3D2;max-width:52ch}.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center;position:relative;z-index:2}@media(max-width:900px){.hero .wrap{grid-template-columns:1fr}}
.hero .sun{position:absolute;right:-10%;bottom:-40%;width:70vw;max-width:900px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 40%,#F2A33A 0%,#E26A50 35%,transparent 70%);opacity:.55;pointer-events:none}
.hero .ring{position:absolute;left:-8%;top:-30%;width:40vw;max-width:520px;aspect-ratio:1;border-radius:50%;border:60px solid rgba(255,255,255,.06);pointer-events:none}
.frame{border-radius:28px;overflow:hidden;box-shadow:var(--shadow);position:relative;background:#3A1834}.frame img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover}.frame .tag{position:absolute;left:14px;bottom:14px;background:rgba(42,20,48,.85);color:#FFE3D2;font:700 .78rem var(--body);padding:.4rem .7rem;border-radius:999px}
.pills{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.pills span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);color:#fff;font:700 .8rem var(--body);padding:.4rem .8rem;border-radius:999px}
.langbar{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.2rem}.langbar a{background:#fff;color:var(--ink);border-radius:999px;padding:.5rem 1rem;font:800 .9rem var(--body);text-decoration:none!important}.langbar a:hover{background:var(--gold)}
.kpis .kpi{border-radius:22px;background:var(--card)}.kpi b{font-family:var(--disp);font-weight:800;color:var(--accent)}
.card{border-radius:22px}.card.plum{background:var(--accent2);color:#fff;border-color:transparent}.card.plum h3,.card.plum b{color:#fff}.card.plum .src{color:#E8C9D9}
.cream{background:#FFEBDD}.plumband{background:var(--accent2);color:#fff;--ink2:#FFE3D2;--line:rgba(255,255,255,.25);--muted:#E8C9D9}.plumband h2,.plumband h3{color:#fff}.plumband .cmp th{color:#FFE3D2}.plumband .cmp td{color:#fff;border-color:rgba(255,255,255,.18)}.plumband .src,.plumband .src a{color:#E8C9D9}.plumband .card{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);color:#fff}.plumband .chart{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25)}.plumband .chart .val{fill:#fff}.plumband .chart .lbl{fill:#E8C9D9}.plumband .lead{background:#fff;color:var(--ink);--muted:#7C6477;--line:#F0DCCB;--ink2:#5A3A58}.plumband .lead label,.plumband .lead .tcpa{color:#2A1430}.plumband .lead .fnote{color:#7C6477}.plumband .steps .step{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);color:#fff}.plumband .step h3{color:#fff}.plumband .step p{color:#FFE3D2}
.step::before{background:var(--gold);color:var(--ink)}
.week{position:relative;margin:1.5rem 0;padding-left:2.2rem}.week::before{content:"";position:absolute;left:12px;top:6px;bottom:6px;width:4px;border-radius:2px;background:var(--line)}.week::after{content:"";position:absolute;left:12px;top:6px;width:4px;border-radius:2px;background:var(--accent);height:calc(var(--wk,0)*100%);transition:height .2s linear}
.week .day{position:relative;padding:.6rem 0 .6rem .6rem;transition:.3s}.week .day::before{content:"";position:absolute;left:-2.2rem;top:1rem;width:16px;height:16px;border-radius:50%;background:#fff;border:4px solid var(--line);transition:.3s;margin-left:6px}.week .day.lit::before{border-color:var(--accent);background:var(--gold)}.week .day b{display:block;font:800 1.05rem var(--disp)}.week .day span{color:var(--ink2)}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{border:2px solid var(--line);border-radius:999px;padding:.55rem 1rem;font:800 .95rem var(--body);cursor:pointer;background:#fff;transition:.2s;color:var(--ink)}.chip:hover{border-color:var(--accent)}.chip.on{background:var(--accent2);color:#fff;border-color:var(--accent2)}
.result{margin-top:1rem;padding:1rem;border-radius:16px;background:var(--bg);border:2px dashed var(--line);font:700 1rem var(--body);color:var(--ink)}.result.ok{background:#FFF1E2;border-color:var(--gold)}.result b.big{font:800 1.8rem var(--disp);display:block;color:var(--accent)}.result a{color:var(--accent2);text-decoration:underline}
.graded{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin:1.2rem 0}.graded div{border-radius:18px;padding:1.1rem;background:#fff;border:2px solid var(--line);text-align:center}.graded div b{display:block;font:800 1.5rem var(--disp);color:var(--ink)}.graded div span{font:600 .9rem var(--body);color:var(--muted)}.graded div.full{background:#FFF1E2;border-color:var(--gold)}@media(max-width:600px){.graded{grid-template-columns:1fr}}
.warn{background:#FFF1E2;border:2px solid #F2C98F;border-radius:16px;padding:1rem 1.2rem;font:700 .98rem var(--body)}
.calc{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:1.5rem}.calc .row{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;margin:.7rem 0}.calc label{font:800 .95rem var(--body)}.calc output{font:800 1.05rem var(--body);min-width:100px;text-align:right}.calc .total{font:800 clamp(2rem,5vw,3.2rem) var(--disp);color:var(--accent)}.calc input[type=range]{width:100%;accent-color:var(--accent)}
.doors{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}@media(max-width:800px){.doors{grid-template-columns:1fr}}.door{border-radius:22px;padding:1.5rem;border:2px solid var(--line);background:#fff;position:relative;overflow:hidden}.door .stamp{display:inline-block;background:var(--gold);color:var(--ink);font:800 .75rem var(--body);letter-spacing:.1em;text-transform:uppercase;padding:.35rem .7rem;border-radius:999px}.door.two .stamp{background:var(--accent2);color:#fff}
.costrow{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px dashed var(--line);font:600 1.02rem var(--body)}.costrow b{font-family:var(--disp)}
.checklist li{list-style:none;position:relative;padding-left:2rem;margin:.5rem 0}.checklist li::before{content:"✓";position:absolute;left:0;top:0;width:1.4rem;height:1.4rem;border-radius:50%;background:var(--gold);color:var(--ink);font:800 .85rem/1.4rem var(--body);text-align:center}
footer{background:var(--accent2);color:#E8C9D9;padding:3rem 0 2rem;margin-top:0}footer a{color:#fff}footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}@media(max-width:760px){footer .cols{grid-template-columns:1fr}}footer .cols b{display:block;color:#fff;margin-bottom:.6rem;font:800 1.05rem var(--disp)}footer .cols a{display:block;margin:.3rem 0}footer .legal{color:#C9A8BC}footer .legal a{color:#E8C9D9}
.callbar .c2{background:var(--accent)}
.faq summary{font-family:var(--disp);font-size:1.15rem;font-weight:700}
.lead{border-radius:22px}.lead .btn{font-size:1.15rem}.fld input,.fld select,.fld textarea{font-size:1.05rem;padding:.9rem 1rem;border-radius:14px}
.big{font-size:1.15rem}
.hero .lead{background:#fff;color:var(--ink)}.hero .lead label,.hero .lead .tcpa{color:#2A1430}
