
:root{
  --text-xs:clamp(.75rem,.7rem + .25vw,.875rem);
  --text-sm:clamp(.875rem,.8rem + .35vw,1rem);
  --text-base:clamp(1rem,.95rem + .25vw,1.125rem);
  --text-lg:clamp(1.125rem,1rem + .75vw,1.5rem);
  --text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);
  --text-2xl:clamp(2rem,1.2rem + 2.5vw,3.5rem);
  --text-hero:clamp(2.9rem,1rem + 6vw,6.75rem);
  --space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;
  --section:clamp(4rem,9vw,8rem);
  --font-display:'Clash Display','Arial Black',sans-serif;
  --font-body:'General Sans','Helvetica Neue',sans-serif;
  --font-mono:'JetBrains Mono',ui-monospace,monospace;
  --radius:16px;--max:1200px;
}
/* THEME 1 — Spotlight (LinkedIn banner) */
[data-theme="spotlight"]{
  --bg:#110C26;--bg-2:#181134;--surface:#1F1742;--ink:#F4F0FF;--muted:#B3A9D6;--line:rgba(196,180,255,.16);
  --accent:#F6DC5C;--on-accent:#140F2E;--accent-2:#D63F8C;--accent-3:#5CC8E8;
  --panel:#2A1F5C;--on-panel:#F4F0FF;--wave-opacity:1;--hero-tint:rgba(17,12,38,.15);
}
/* THEME 2 — Summit (the deck) */
[data-theme="summit"]{
  --bg:#F3F4F8;--bg-2:#E9EAF2;--surface:#FFFFFF;--ink:#1B1D29;--muted:#5F6370;--line:#DADCE6;
  --accent:#5B3CC4;--on-accent:#FFFFFF;--accent-2:#138A4C;--accent-3:#CFFF05;
  --panel:#1B1640;--on-panel:#F4F0FF;--wave-opacity:.0;--hero-tint:rgba(27,22,64,.0);
}
/* THEME 3 — Signal (cooler, after hours) */
[data-theme="signal"]{
  --bg:#07090F;--bg-2:#0D1119;--surface:#121826;--ink:#EAF6FF;--muted:#93A4B8;--line:rgba(140,200,255,.14);
  --accent:#5CE1FF;--on-accent:#04121A;--accent-2:#A78BFA;--accent-3:#CFFF05;
  --panel:#101A2C;--on-panel:#EAF6FF;--wave-opacity:.75;--hero-tint:rgba(7,9,15,.25);
}

[data-theme="summit"] .hero{--bg:#1B1640;--ink:#F4F0FF;--muted:#C9C2E8;--accent:#CFFF05;--on-accent:#1B1640;--line:rgba(255,255,255,.2);--wave-opacity:1;background:#1B1640;color:#F4F0FF}
[data-theme="summit"] .client-wall li{background:#fff;border:1px solid var(--line)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;-webkit-font-smoothing:antialiased;transition:background .4s,color .4s}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}
.mono{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);display:inline-flex;gap:.5rem;align-items:center}
[data-theme="summit"] .eyebrow{color:var(--accent)}
.eyebrow::before{content:"▶";font-size:.7em}
h1,h2,h3.d{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;line-height:1}
h2{font-size:var(--text-2xl);margin-top:var(--space-3)}
h3{font-size:var(--text-lg);font-weight:600;line-height:1.25}
.lead{font-size:var(--text-lg);line-height:1.5;color:var(--muted);max-width:44ch}
.btn{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--text-sm);font-weight:600;text-decoration:none;padding:.9rem 1.4rem;border-radius:999px;transition:transform .2s,filter .2s,border-color .2s}
.btn-primary{background:var(--accent);color:var(--on-accent)}
.btn-primary:hover{transform:translateY(-1px);filter:brightness(1.06)}
.btn-ghost{border:1px solid var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink)}
.btn svg{width:16px;height:16px}

header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .3s,background .4s}
header.scrolled{border-color:var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px;gap:1rem}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}
.brand svg{width:36px;height:36px;flex:none}
.brand b{font-family:var(--font-display);font-weight:700;font-size:1.15rem;letter-spacing:.04em;line-height:1}
.brand small{display:block;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.2em;color:var(--muted);margin-top:.25rem}
.nav ul{display:flex;gap:1.75rem;list-style:none;align-items:center}
.nav ul a{font-size:var(--text-sm);text-decoration:none;color:var(--muted)}
.nav ul a:hover{color:var(--ink)}
.nav .btn{padding:.6rem 1.1rem;color:var(--on-accent)}
@media (max-width:860px){.nav ul li:not(:last-child){display:none}}

/* hero */
.hero{position:relative;overflow:hidden;padding:clamp(3rem,8vw,7rem) 0 clamp(3.5rem,7vw,6rem)}
.hero::before{content:"";position:absolute;inset:0;background:url(waves.webp) right center/cover no-repeat;opacity:var(--wave-opacity);transition:opacity .4s}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 18%,transparent 70%),linear-gradient(0deg,var(--bg),transparent 30%)}
.hero .wrap{position:relative;z-index:1}
.hero .tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:var(--space-6)}
.hero .tags span{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;border:1px solid var(--line);border-radius:999px;padding:.3rem .75rem;color:var(--muted);background:color-mix(in srgb,var(--bg) 60%,transparent)}
.hero h1{font-size:clamp(2.9rem,1rem + 5vw,5.75rem);text-transform:uppercase;max-width:12ch;line-height:.95}
.hero h1 em{font-style:normal;color:var(--accent)}
.hero .lead{margin:var(--space-6) 0 0}
.hero .ctas{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:var(--space-8)}
.ticker{display:flex;gap:2.5rem;margin-top:clamp(2.5rem,5vw,4rem);flex-wrap:wrap}
.ticker div{border-left:2px solid var(--accent-2);padding-left:.9rem}
.ticker strong{display:block;font-family:var(--font-display);font-weight:600;font-size:var(--text-xl);line-height:1}
.ticker span{font-size:var(--text-xs);color:var(--muted)}

/* logos */
.clients{padding:clamp(2.5rem,5vw,4rem) 0 clamp(3rem,6vw,5rem);border-top:1px solid var(--line)}
.clients-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem 2rem;flex-wrap:wrap;margin-bottom:var(--space-8)}
.clients-head p:last-child{font-size:var(--text-sm);color:var(--muted)}
.client-wall{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.client-wall li{border-radius:12px;padding:1.4rem 1.25rem;display:flex;align-items:center;justify-content:center;min-height:116px;background:#F7F6FB;transition:transform .2s}
.client-wall li:hover{transform:translateY(-2px)}
.client-wall img{max-width:100%;height:auto;object-fit:contain}
@media (max-width:900px){.client-wall{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){.client-wall{grid-template-columns:repeat(2,1fr)}.client-wall li{min-height:92px;padding:1rem}.client-wall img{transform:scale(.85)}}

section{padding:var(--section) 0}
.sec-head{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end;margin-bottom:var(--space-12)}
.sec-head > p{color:var(--muted);max-width:46ch;justify-self:end}
@media (max-width:760px){.sec-head{grid-template-columns:1fr}.sec-head > p{justify-self:start}}

/* speaking */
.speaking{background:var(--bg-2)}
.stage{position:relative;border-radius:var(--radius);overflow:hidden;margin-bottom:var(--space-12);aspect-ratio:912/340;max-height:440px;width:100%}
.stage img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.stage::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,12,38,.85),rgba(17,12,38,.1) 60%)}
.stage figcaption{position:absolute;left:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:1;color:#F4F0FF;max-width:30ch}
.stage figcaption strong{display:block;font-family:var(--font-display);font-weight:600;font-size:var(--text-xl);line-height:1.05;margin-top:.4rem}
.stage figcaption .mono{color:#F6DC5C}
@media (max-width:600px){.stage{aspect-ratio:4/3}.stage figcaption strong{font-size:var(--text-lg)}}
.talks{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.talk{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.5rem,2.5vw,2.1rem);display:flex;flex-direction:column;gap:var(--space-4);position:relative;overflow:hidden;transition:transform .25s,border-color .25s}
.talk:hover{transform:translateY(-3px);border-color:var(--accent)}
.talk .num{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--accent-2)}
.talk h3{font-family:var(--font-display);font-weight:600;font-size:var(--text-xl);line-height:1.05}
.talk p{color:var(--muted);font-size:var(--text-sm)}
.talk ul{list-style:none;display:grid;gap:.45rem;font-size:var(--text-sm);padding-top:var(--space-4);border-top:1px solid var(--line)}
.talk li{display:flex;gap:.6rem}
.talk li::before{content:"";width:6px;height:6px;border-radius:2px;background:var(--accent-3);margin-top:.6em;flex:none}
.talk .for{margin-top:auto;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink);letter-spacing:.04em}
@media (max-width:900px){.talks{grid-template-columns:1fr}}
.formats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:var(--space-8)}
.formats div{background:var(--bg-2);padding:1.25rem 1.4rem}
.formats b{display:block;font-family:var(--font-display);font-weight:600;font-size:var(--text-lg)}
.formats span{font-size:var(--text-xs);color:var(--muted)}
@media (max-width:760px){.formats{grid-template-columns:1fr 1fr}}
.row-cta{display:flex;align-items:center;gap:1rem 1.5rem;flex-wrap:wrap;margin-top:var(--space-8)}
.row-cta span{font-size:var(--text-sm);color:var(--muted)}

/* toolkits */
.kit-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:1.25rem}
.kit{border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.25rem,2vw,1.75rem);background:var(--surface);display:flex;flex-direction:column;gap:.6rem;transition:border-color .25s,transform .25s}
.kit:hover{border-color:var(--accent);transform:translateY(-3px)}
.kit p{font-size:var(--text-sm);color:var(--muted)}
.kit .tag{align-self:flex-start;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-3);border:1px solid var(--line);padding:.2rem .55rem;border-radius:6px}
[data-theme="summit"] .kit .tag{color:var(--accent)}
.kit-feature{grid-row:span 2;background:var(--panel);color:var(--on-panel);border-color:transparent;justify-content:flex-end;min-height:320px;position:relative;overflow:hidden}
.kit-feature::before{content:"";position:absolute;inset:0;background:url(waves.webp) 70% center/cover;opacity:.35}
.kit-feature > *{position:relative}
.kit-feature h3{font-family:var(--font-display);font-weight:600;font-size:var(--text-xl)}
.kit-feature p{color:color-mix(in srgb,var(--on-panel) 75%,transparent);font-size:var(--text-base);max-width:38ch}
.kit-feature .tag{color:#F6DC5C;margin-bottom:auto;border-color:rgba(255,255,255,.2)}
@media (max-width:900px){.kit-grid{grid-template-columns:1fr 1fr}.kit-feature{grid-column:span 2;grid-row:auto;min-height:240px}}
@media (max-width:560px){.kit-grid{grid-template-columns:1fr}.kit-feature{grid-column:auto}}

/* case */
.case{background:var(--panel);color:var(--on-panel)}
.case .eyebrow{color:#F6DC5C}
.case h2{max-width:18ch}
.case .intro{color:color-mix(in srgb,var(--on-panel) 72%,transparent);margin:var(--space-6) 0 var(--space-12);max-width:56ch}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12);border-radius:var(--radius);overflow:hidden}
.stat{background:color-mix(in srgb,var(--panel) 85%,#000);padding:clamp(1.25rem,2.5vw,2rem)}
.stat .k{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--on-panel) 60%,transparent)}
.stat .v{font-family:var(--font-display);font-weight:600;font-size:var(--text-2xl);line-height:1;margin:.5rem 0 .4rem;color:#F6DC5C}
[data-theme="summit"] .stat .v{color:#CFFF05}
[data-theme="signal"] .stat .v{color:#5CE1FF}
.stat p{font-size:var(--text-sm);color:color-mix(in srgb,var(--on-panel) 72%,transparent)}
@media (max-width:900px){.stats{grid-template-columns:1fr 1fr}}
.moves{display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem;margin-top:var(--space-12)}
.move{border-top:1px solid rgba(255,255,255,.18);padding-top:1rem}
.move span{font-family:var(--font-mono);font-size:var(--text-xs);color:#F6DC5C}
.move b{display:block;font-weight:600;margin:.35rem 0 .25rem}
.move p{font-size:var(--text-sm);color:color-mix(in srgb,var(--on-panel) 70%,transparent)}
@media (max-width:900px){.moves{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.moves{grid-template-columns:1fr}}
.fine{font-size:var(--text-xs);color:color-mix(in srgb,var(--on-panel) 60%,transparent);margin-top:var(--space-8)}

/* consulting */
.consult-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.c-item{border-top:2px solid var(--ink);padding-top:var(--space-6)}
.c-item .mono{color:var(--accent-2)}
.c-item h3{margin:.4rem 0 .6rem}
.c-item p{color:var(--muted);font-size:var(--text-sm)}
@media (max-width:860px){.consult-list{grid-template-columns:1fr}}

/* about */
.about{border-top:1px solid var(--line)}
.about-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.quote{font-family:var(--font-display);font-weight:500;font-size:var(--text-xl);line-height:1.15}
.quote em{font-style:normal;color:var(--accent)}
.about .body p{color:var(--muted);margin-bottom:var(--space-4);max-width:60ch}
.about .body p:first-child{color:var(--ink)}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:var(--space-6)}
.chips span{font-family:var(--font-mono);font-size:var(--text-xs);border:1px solid var(--line);border-radius:6px;padding:.3rem .65rem;color:var(--ink)}
@media (max-width:860px){.about-grid{grid-template-columns:1fr}}

/* contact */
.contact{padding-top:0}
.cta-box{position:relative;overflow:hidden;background:var(--panel);color:var(--on-panel);border-radius:calc(var(--radius) * 1.5);padding:clamp(2rem,6vw,5rem);display:grid;grid-template-columns:1.3fr 1fr;gap:2rem;align-items:end}
.cta-box::before{content:"";position:absolute;inset:0;background:url(waves.webp) right center/cover;opacity:.45}
.cta-box > *{position:relative}
.cta-box .eyebrow{color:#F6DC5C}
.cta-box h2{font-size:var(--text-2xl);text-transform:uppercase}
.cta-box .side{display:grid;gap:.9rem;justify-items:start}
.cta-box .side p{color:color-mix(in srgb,var(--on-panel) 75%,transparent);font-size:var(--text-sm)}
.cta-box .btn-primary{background:#F6DC5C;color:#140F2E}
.mail{font-family:var(--font-mono);font-size:var(--text-sm);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3)}
@media (max-width:860px){.cta-box{grid-template-columns:1fr}}

footer{padding:var(--space-8) 0 var(--space-12);font-size:var(--text-xs);color:var(--muted)}
footer .wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}

/* theme switcher (preview) */



.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.hero-photo{position:relative;border-radius:calc(var(--radius) * 1.25);overflow:hidden;aspect-ratio:3/2;box-shadow:0 30px 80px -20px color-mix(in srgb,var(--accent-2) 45%,transparent);outline:1px solid var(--line)}
.hero-photo img{width:100%;height:100%;object-fit:cover}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(17,12,38,.45))}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-photo{max-width:none}}
.client-wall{grid-template-columns:repeat(7,1fr)}
.stage{aspect-ratio:1440/690;max-height:none}
.stage img{object-position:center top}
.gallery{display:grid;grid-template-columns:.8fr 1.2fr 1fr;grid-template-rows:auto auto;gap:10px;margin-top:var(--space-8)}
.gallery img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.gallery img:nth-child(1){grid-row:span 2;aspect-ratio:auto}
.gallery img:nth-child(2){grid-column:span 2;aspect-ratio:2.4/1;object-position:center 45%}
.gallery img:nth-child(3),.gallery img:nth-child(4){aspect-ratio:3/2}
.gallery img:nth-child(4){grid-column:3}
.gallery img:nth-child(3){grid-column:2}
@media (max-width:700px){.gallery{grid-template-columns:1fr 1fr}.gallery img:nth-child(1){grid-row:auto;aspect-ratio:3/4}.gallery img:nth-child(2){grid-column:auto;aspect-ratio:3/4}.gallery img:nth-child(3),.gallery img:nth-child(4){grid-column:auto}}
.case-top{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(2rem,5vw,4rem);align-items:center;margin-bottom:var(--space-12)}
.case-top .intro{margin-bottom:0}
.case-photo img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%}
.case-photo figcaption{font-size:var(--text-xs);color:color-mix(in srgb,var(--on-panel) 65%,transparent);margin-top:.6rem}
@media (max-width:860px){.case-top{grid-template-columns:1fr}.case-photo{max-width:420px}}
.about-photo{margin-top:var(--space-8);border-radius:var(--radius);aspect-ratio:1/1;object-fit:cover;width:100%;max-width:440px}
.nav .btn{white-space:nowrap}
@media (max-width:600px){
  .brand small{font-size:.52rem;letter-spacing:.08em;white-space:nowrap}
  .hero::before{opacity:calc(var(--wave-opacity) * .45);background-position:70% center}
  .hero::after{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 55%,transparent),color-mix(in srgb,var(--bg) 80%,transparent) 60%,var(--bg))}
  .ticker{gap:1.25rem 1.75rem}
}
@media (min-width:1101px){.client-wall li{padding:1.1rem .8rem}}
@media (max-width:1100px){.client-wall{grid-template-columns:repeat(4,1fr)}}
@media (max-width:600px){.stage{aspect-ratio:4/3}.stage img{object-position:80% top}.stage figcaption{max-width:55%}}
@media (max-width:600px){.client-wall{grid-template-columns:repeat(2,1fr)}}
@media (max-width:360px){.brand svg{width:28px;height:28px}.brand{gap:.5rem}.brand b{font-size:1rem}.nav .btn{padding:.5rem .8rem}}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* hero: full-stage photo + data waves */
.hero{min-height:calc(100vh - 72px);min-height:calc(100svh - 72px);display:flex;align-items:center}
.hero .wrap{width:100%;z-index:2}
.hero::before{background:url(hero-stage.webp) 100% 85%/cover no-repeat!important;opacity:1!important}
.hero::after{background:linear-gradient(90deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 94%,transparent) 32%,color-mix(in srgb,var(--bg) 55%,transparent) 50%,transparent 70%),linear-gradient(0deg,var(--bg),transparent 30%),linear-gradient(180deg,color-mix(in srgb,var(--bg) 60%,transparent),transparent 18%)!important}
.hero-waves{position:absolute;inset:38% 22% 0 34%;background:url(waves.webp) 85% 50%/cover;mix-blend-mode:screen;opacity:.75;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 25%,#000 55%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 25%,#000 55%,transparent 100%);z-index:1;pointer-events:none}
.hero h1{max-width:11ch}
.hero .lead{max-width:40ch}
@media (max-width:700px){
  .hero{min-height:auto;padding-top:min(78vw,340px)!important;align-items:flex-end}
  .hero::before{background-size:auto min(100vw,440px)!important;background-position:97% 0!important;height:min(100vw,440px);bottom:auto}
  .hero::after{background:linear-gradient(0deg,var(--bg) calc(100% - min(100vw,440px) + 40px),transparent calc(100% - min(100vw,440px) + 220px))!important}
  .hero-waves{inset:0 0 auto 0;height:min(100vw,440px);-webkit-mask-image:linear-gradient(90deg,transparent,#000 30%,#000 50%,transparent 70%);mask-image:linear-gradient(90deg,transparent,#000 30%,#000 50%,transparent 70%);opacity:.7}
}

/* Qualifier */
.q-box{grid-template-columns:1fr 1.15fr;align-items:start}
.q-intro p:not(.eyebrow){margin-top:var(--space-4);color:color-mix(in srgb,var(--on-panel) 78%,transparent);max-width:36ch}
.q{background:rgba(17,12,38,.72);border:1px solid rgba(196,180,255,.22);border-radius:var(--radius);padding:clamp(1.25rem,3vw,2rem);backdrop-filter:blur(6px)}
.q-steps{list-style:none;display:flex;gap:.4rem;margin-bottom:1.25rem}
.q-steps li{flex:1;height:4px;border-radius:4px;background:rgba(196,180,255,.2)}
.q-steps li.on{background:#F6DC5C}
.q-step{display:none;border:0;min-width:0}
.q-step.on{display:grid;gap:.9rem}
.q-step legend{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);margin-bottom:.9rem;line-height:1.15}
.q-step p{font-size:var(--text-sm);color:color-mix(in srgb,var(--on-panel) 82%,transparent)}
.q-opts{display:grid;gap:.6rem}
.q-row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.q-opt{all:unset;box-sizing:border-box;cursor:pointer;padding:.85rem 1rem;border:1px solid rgba(196,180,255,.28);border-radius:12px;font-size:var(--text-sm);font-weight:600;color:var(--on-panel);transition:border-color .2s,background .2s}
.q-opt:hover,.q-opt:focus-visible{border-color:#F6DC5C;background:rgba(246,220,92,.08)}
.q-price{font-family:var(--font-display);font-size:var(--text-lg)!important;color:#F6DC5C!important;line-height:1.15}
.q-ask{font-weight:600}
.q label{display:grid;gap:.35rem;font-size:var(--text-sm);font-weight:600}
.q textarea,.q input{font:inherit;font-weight:400;color:var(--on-panel);background:rgba(255,255,255,.06);border:1px solid rgba(196,180,255,.28);border-radius:10px;padding:.7rem .8rem;resize:vertical;color-scheme:dark}
.q textarea:focus,.q input:focus{outline:2px solid #F6DC5C;outline-offset:1px}
.q-back{all:unset;cursor:pointer;justify-self:start;font-size:var(--text-xs);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:#B3A9D6;padding:.4rem 0}
.q-back:hover{color:#F6DC5C}
.q-err{color:#FF9EC7!important}
.q-small a{color:#F6DC5C}
.credits{margin-top:var(--space-6);font-size:var(--text-sm);color:var(--muted);display:flex;flex-wrap:wrap;gap:.4rem .7rem;align-items:center}
.credits .mono{color:var(--accent)}
.credits i{font-style:normal;opacity:.5}
.kit-free{border-style:dashed}
.kit-free .tag{color:#5CC8E8}
@media (max-width:860px){.q-box{grid-template-columns:1fr}}

/* Legal pages */
.legal{padding:clamp(3rem,8vw,6rem) 0 var(--space-12)}
.legal .wrap{display:block;max-width:760px}
.legal h1{font-size:var(--text-2xl);max-width:none;margin-top:var(--space-3)}
.legal .updated{color:var(--muted);font-size:var(--text-sm);margin-top:var(--space-4)}
.legal .note{margin-top:var(--space-6);padding:1rem 1.25rem;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:10px;background:var(--surface);font-size:var(--text-sm);color:var(--muted)}
.legal h2{font-family:var(--font-display);text-transform:none;font-size:var(--text-lg);max-width:none;margin-top:var(--space-12);line-height:1.2}
.legal p,.legal li{color:color-mix(in srgb,var(--ink) 86%,transparent);margin-top:var(--space-3);max-width:68ch;line-height:1.65}
.legal ul{padding-left:1.25rem}
.legal a{color:var(--accent)}
footer nav{display:flex;gap:1.25rem;flex-wrap:wrap}
footer nav a{color:var(--muted)}
footer nav a:hover{color:var(--accent)}
