:root{--verm:#F2471C;--cobalt:#1F3BD6;--lemon:#FFD93B;--paper:#F4EDE0;--paper2:#E8DDC8;--ink:#1B1726;--muted:#5a5266;
--display:"Avenir Next","Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,"Noto Sans",Ubuntu,sans-serif;--serif:Georgia,Cambria,"Noto Serif",serif;--mono:ui-monospace,"SF Mono","Cascadia Mono",Menlo,Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 var(--display);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.07;background-image:radial-gradient(var(--ink) .6px,transparent .7px);background-size:4px 4px;z-index:90}
a{color:var(--cobalt);text-underline-offset:3px}a:hover{color:var(--verm)}
:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px;box-shadow:0 0 0 6px var(--lemon)}
.skip{position:absolute;left:-999px;top:0;background:var(--lemon);color:var(--ink);padding:10px 16px;z-index:200}.skip:focus{left:10px}
.mono{font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
h1,h2,h3{font-weight:900;letter-spacing:-.03em;line-height:1;margin:0 0 .4em}
/* strip */
.strip{position:sticky;top:0;z-index:80;background:var(--paper);border-bottom:4px solid var(--ink)}
.strip-in{max-width:1320px;margin:auto;display:flex;align-items:center;gap:20px;padding:10px 24px;position:relative}
.stamp{color:var(--ink);display:flex}.wm{height:38px;width:auto}
nav .top{list-style:none;display:flex;gap:6px;margin:0;padding:0;align-items:center}
nav{margin-left:auto}
.dd{position:relative}
.dd>button,.plain,.lang{font:800 .95rem var(--display);background:none;border:2px solid transparent;color:var(--ink);padding:8px 14px;cursor:pointer;text-decoration:none;border-radius:40px;display:inline-flex;gap:6px;align-items:center}
.dd>button:hover,.plain:hover,.dd>button[aria-expanded=true]{border-color:var(--ink)}
.dd em{font-style:normal;transition:transform .2s}.dd>button[aria-expanded=true] em{transform:rotate(180deg)}
.plain[aria-current]{background:var(--ink);color:var(--paper)}
.lang{background:var(--cobalt);color:var(--paper)!important;font-family:var(--mono)}
.menu{list-style:none;margin:0;padding:10px;position:absolute;top:calc(100% + 12px);left:0;min-width:290px;background:var(--paper);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--verm);display:none}
.dd>button[aria-expanded=true]+.menu{display:block;animation:drop .22s ease-out}
.menu a{display:block;padding:10px 12px;text-decoration:none;color:var(--ink);border-radius:6px}
.menu a:hover,.menu a[aria-current]{background:var(--lemon)}
.menu b{display:block}.menu small{color:var(--muted);font-size:.82rem}
@keyframes drop{from{opacity:0;transform:translateY(-8px)}}
.tab{background:var(--lemon);color:var(--ink);font-weight:900;text-decoration:none;padding:14px 20px 18px;margin:-10px 0 -26px;border:3px solid var(--ink);border-top:0;box-shadow:5px 5px 0 var(--ink);transition:transform .2s}
.tab:hover{transform:translateY(4px);color:var(--ink)}
.burger{display:none;margin-left:auto;background:var(--ink);color:var(--paper);border:0;padding:10px 16px;border-radius:40px;font:800 .95rem var(--display);cursor:pointer}
.burger i{display:none}
main{display:block;outline:none}
/* hero */
.hero{max-width:1320px;margin:auto;display:grid;grid-template-columns:7fr 5fr;gap:30px;padding:70px 24px 50px;align-items:center}
.hero h1{font-size:clamp(3rem,9vw,8.4rem);line-height:.86;letter-spacing:-.06em;display:flex;flex-direction:column}
.w1{color:var(--verm)}.w2{color:var(--ink);padding-left:.6em}.w3{color:var(--cobalt);font-family:var(--serif);font-style:italic;font-weight:700;letter-spacing:-.03em;font-size:.7em}
.lede{font-size:1.22rem;max-width:40ch;color:var(--ink)}
.kick{color:var(--verm);font-weight:700}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.btn{display:inline-block;font:800 1rem var(--display);padding:14px 24px;border:3px solid var(--ink);text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s;border-radius:0}
.b-l{background:var(--verm);color:var(--paper);box-shadow:5px 5px 0 var(--ink)}.b-l:hover{color:var(--paper);transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--ink)}
.b-o{background:var(--paper);color:var(--ink)}.b-o:hover{background:var(--lemon);color:var(--ink)}
.btn:disabled{opacity:.6;cursor:wait}
.hero-art svg{width:100%;height:auto;max-height:560px}
.orb{transform-box:fill-box;transform-origin:center}
.o1{animation:float 7s ease-in-out infinite}.o2{animation:float 5s ease-in-out infinite reverse}.o3{animation:spin 18s linear infinite}
.phone{animation:bob 6s ease-in-out infinite;transform-box:fill-box}
@keyframes float{50%{transform:translate(-14px,18px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bob{50%{transform:translateY(-10px)}}
.ticker{background:var(--cobalt);color:var(--lemon);border-block:4px solid var(--ink);overflow:hidden;white-space:nowrap;font:900 1.4rem var(--display);padding:12px 0}
.ticker div{display:inline-block;animation:tick 40s linear infinite}@keyframes tick{to{transform:translateX(-50%)}}
/* plates */
.plate{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:5fr 12fr;gap:40px;padding:80px 24px;border-bottom:3px solid var(--ink)}
.plate-l{position:sticky;top:110px;align-self:start}
.plate-l h2{font-size:clamp(2rem,4vw,3.4rem)}
.plate-l .mono{display:inline-block;background:var(--ink);color:var(--lemon);padding:4px 10px;margin-bottom:14px}
.plate.inv{max-width:none;background:var(--ink);color:var(--paper);padding-inline:max(24px,calc((100vw - 1272px)/2))}
.plate.inv a{color:var(--lemon)}.plate.inv .plate-l .mono{background:var(--verm);color:var(--paper)}
.big{font-size:clamp(1.4rem,2.6vw,2.1rem);font-weight:800;line-height:1.2;letter-spacing:-.02em;margin-top:0}
.note{font-family:var(--serif);font-style:italic;color:var(--muted)}.inv .note{color:var(--paper2)}
.cards4{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.card{display:block;padding:26px;border:3px solid var(--ink);text-decoration:none;color:var(--ink);min-height:200px;position:relative;transition:transform .2s}
.card:nth-child(2){transform:translateY(30px)}.card:nth-child(4){transform:translateY(30px)}
a.card:hover{transform:translateY(-6px) rotate(-1deg);color:var(--ink)}
.card h3{font-size:1.6rem;margin-top:10px}
.k-v{background:var(--verm);color:var(--paper)!important}.k-c{background:var(--cobalt);color:var(--paper)!important}.k-l{background:var(--lemon)}.k-i{background:var(--paper2)}
.inv .card{border-color:var(--paper)}
.ruled{list-style:none;padding:0;margin:0}.ruled li{display:flex;gap:16px;padding:16px 0;border-top:2px solid currentColor;font-size:1.08rem}
.ruled li .mono{color:var(--verm);font-size:1rem}
.metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border:3px solid var(--ink)}
.metrics div{padding:24px;border:1.5px solid var(--ink)}.metrics b{display:block;font-size:clamp(2.2rem,4vw,3.6rem);letter-spacing:-.04em;color:var(--cobalt)}
.metrics div:nth-child(2) b,.metrics div:nth-child(3) b{color:var(--verm)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:30px}.two h3{color:var(--lemon);font-size:1.7rem}
.arrow{font-weight:900;font-size:1.3rem}
.poster-cta{background:var(--verm);color:var(--paper);padding:100px 24px;text-align:center;position:relative;overflow:hidden}
.poster-cta::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:var(--lemon);left:-140px;bottom:-200px}
.poster-cta h2{font-size:clamp(2.2rem,6vw,5rem);max-width:16ch;margin:0 auto 30px;position:relative}
.poster-cta .btn{background:var(--ink);position:relative}
/* photos */
.photo{max-width:1320px;margin:60px auto;padding:0 24px;position:relative}
.ph-frame{border:4px solid var(--ink);overflow:hidden;background:var(--paper2);position:relative}
.ph-frame img{display:block;width:100%;height:auto;aspect-ratio:var(--ar,4/3);object-fit:cover}
.photo.tilt{display:grid;grid-template-columns:7fr 5fr;gap:30px;align-items:end}
.photo.tilt .ph-frame{box-shadow:16px 16px 0 var(--cobalt);transform:rotate(-1.2deg)}
.photo.tilt .ph-frame img{--ar:4/3}
.photo.tilt::before{content:"";position:absolute;right:8%;top:-30px;width:180px;height:180px;border-radius:50%;background:var(--lemon);z-index:-1}
.photo.wide .ph-frame{box-shadow:-14px 14px 0 var(--verm)}.photo.wide .ph-frame img{--ar:1400/920}
figcaption{font-family:var(--serif);font-size:.95rem;color:var(--muted);margin-top:16px}
figcaption b{font-family:var(--display);color:var(--ink)}
/* inner heads */
.phead{max-width:1320px;margin:auto;padding:90px 24px 60px;position:relative;border-bottom:3px solid var(--ink);overflow:hidden}
.phead h1{font-size:clamp(2.6rem,7.5vw,6.6rem);max-width:13ch;letter-spacing:-.055em;position:relative;z-index:1}
.ph-shape{position:absolute;right:24px;top:40px;z-index:0}
.ph-shape.disc{width:min(36vw,380px);aspect-ratio:1;border-radius:50%;background:var(--lemon);animation:float 9s ease-in-out infinite}
.ph-shape.quarter{width:min(32vw,340px);aspect-ratio:1;border-radius:0 0 0 100%;background:var(--cobalt);top:0;right:0}
.ph-shape.bar{width:min(18vw,180px);height:110%;background:var(--verm);top:0;transform:skewX(-12deg)}
.svc{max-width:1320px;margin:auto;display:grid;grid-template-columns:4fr 8fr;gap:30px;padding:70px 24px;border-bottom:3px solid var(--ink)}
.svc-n{font-size:clamp(6rem,16vw,14rem);font-weight:900;line-height:.8;letter-spacing:-.08em}
.k0 .svc-n{color:var(--verm)}.k1 .svc-n{color:var(--cobalt)}.k2 .svc-n{color:var(--lemon);-webkit-text-stroke:3px var(--ink)}.k3 .svc-n{color:var(--ink)}
.svc h2{font-size:clamp(2rem,4vw,3.2rem)}
.acc{border-top:2px solid currentColor;padding:6px 0}.acc summary{font-weight:900;font-size:1.25rem;cursor:pointer;padding:12px 0;list-style:none;display:flex;justify-content:space-between}
.acc summary::after{content:"+";font-size:1.6rem;line-height:1;transition:transform .2s}.acc[open] summary::after{transform:rotate(45deg)}
.track{list-style:none;max-width:1100px;margin:60px auto;padding:0 24px;counter-reset:x}
.track li{display:grid;grid-template-columns:120px 1fr;gap:24px;padding:30px 0;border-bottom:2px dashed var(--ink)}
.track li:nth-child(even){margin-left:12%}
.t-n{width:100px;height:100px;border-radius:50%;display:grid;place-items:center;font-size:3rem;font-weight:900;background:var(--verm);color:var(--paper)}
.track li:nth-child(3n+2) .t-n{background:var(--cobalt)}.track li:nth-child(3n) .t-n{background:var(--lemon);color:var(--ink)}
.track h2{font-size:2rem}
.facts{display:grid;grid-template-columns:max-content 1fr;gap:12px 24px;margin:0}.facts dt{font-family:var(--mono);text-transform:uppercase;font-size:.8rem;padding-top:4px;opacity:.8}.facts dd{margin:0;font-weight:600}
.guides{max-width:1320px;margin:60px auto;padding:0 24px;display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.guide{border:3px solid var(--ink);padding:30px;background:var(--paper)}
.guide.k0{border-top:22px solid var(--verm)}.guide.k1{border-top:22px solid var(--cobalt);margin-top:50px}.guide.k2{border-top:22px solid var(--lemon)}.guide.k3{border-top:22px solid var(--ink);margin-top:50px}
.guide h2{font-size:1.9rem}.guide h3{font-size:1rem;margin-top:16px}
.tpl{background:var(--paper);color:var(--ink);border:3px solid var(--ink);padding:20px;font:.95rem/1.6 var(--mono);white-space:pre-wrap;box-shadow:8px 8px 0 var(--lemon)}
/* board */
.board{max-width:1320px;margin:50px auto;padding:0 24px;display:grid;grid-template-columns:7fr 5fr;gap:30px}
.b-form fieldset{border:3px solid var(--ink);margin:0 0 18px;padding:18px 20px}
.b-form legend{font-weight:900;font-size:1.2rem;background:var(--lemon);padding:2px 10px;border:2px solid var(--ink)}
.target{display:flex;flex-wrap:wrap;gap:16px}.target label{font-weight:700}
.chk{display:flex;gap:12px;padding:9px 0;cursor:pointer;border-bottom:1px solid var(--paper2);align-items:flex-start}
.chk input,.target input,.consent input{width:22px;height:22px;accent-color:var(--verm);flex:none;margin-top:2px}
.chk.blocker span::before{content:"● ";color:var(--verm)}
.b-out{position:sticky;top:110px;align-self:start;background:var(--ink);color:var(--paper);padding:28px;border:3px solid var(--ink);box-shadow:10px 10px 0 var(--verm)}
.dial{position:relative;width:180px;margin:auto}.dial svg{width:100%}#arc{transition:stroke-dashoffset .5s ease}
.dial b{position:absolute;inset:0;display:grid;place-items:center;font-size:2.6rem}
.verdict{font-weight:800;font-size:1.2rem;text-align:center;color:var(--lemon)}
.blk{padding-left:20px;max-height:280px;overflow:auto}.blk li{margin:6px 0}
.b-out .b-o{background:transparent;color:var(--paper);border-color:var(--paper)}
/* contact */
.contact-grid{max-width:1320px;margin:50px auto;padding:0 24px;display:grid;grid-template-columns:7fr 5fr;gap:40px}
.cform{border:3px solid var(--ink);padding:30px;background:var(--paper);box-shadow:12px 12px 0 var(--cobalt)}
.kind{border:0;padding:0;margin:0 0 16px;display:flex;gap:10px;flex-wrap:wrap}.kind legend{font-weight:900;margin-bottom:8px}
.kind label{border:2px solid var(--ink);padding:8px 14px;cursor:pointer;font-weight:700}.kind label:has(input:checked){background:var(--lemon)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.f{display:block;margin-bottom:16px}.f span{display:block;font-weight:800;font-size:.92rem;margin-bottom:6px}
.f input,.f select,.f textarea{width:100%;font:inherit;padding:12px;border:2px solid var(--ink);background:#FBF7EF;color:var(--ink);border-radius:0}
.f [aria-invalid=true]{border-color:var(--verm);box-shadow:0 0 0 3px rgba(242,71,28,.25)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.consent{display:flex;gap:10px;margin:8px 0 20px;font-size:.95rem}
.status{margin-top:18px;padding:0;outline:none}.status:not(:empty){padding:16px;border:3px solid var(--ink)}
.status.ok{background:var(--lemon)}.status.err{background:#FBE0D6;border-color:var(--verm)}
.status code{font-family:var(--mono);font-size:1.1rem;font-weight:700;background:var(--paper);padding:2px 6px}
.cinfo .facts{margin-bottom:30px}
.mapph{border:3px dashed var(--ink);padding:20px;background:repeating-linear-gradient(45deg,var(--paper),var(--paper) 12px,var(--paper2) 12px,var(--paper2) 24px)}
.mapph svg{width:100%;height:auto;background:var(--paper)}
.doc{max-width:860px;margin:50px auto;padding:0 24px}.doc section{padding:18px 0;border-bottom:2px solid var(--ink)}.doc h2{font-size:1.6rem}.doc .mono{color:var(--verm);font-size:1.2rem}
/* footer */
.foot{background:var(--cobalt);color:var(--paper);margin-top:0;overflow:hidden;border-top:4px solid var(--ink)}
.foot a,.linkbtn{color:var(--paper)}.foot a:hover{color:var(--lemon)}
.foot-grid{max-width:1320px;margin:auto;padding:60px 24px 20px;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.foot h2{color:var(--lemon);font-size:.8rem}.foot ul{list-style:none;padding:0;margin:0}.foot li{margin:6px 0}
.linkbtn{background:none;border:0;padding:0;font:inherit;text-decoration:underline;cursor:pointer}
.giant{font-size:clamp(4rem,19vw,19rem);font-weight:900;letter-spacing:-.07em;line-height:.75;color:var(--verm);white-space:nowrap;margin-bottom:-.12em;text-shadow:6px 6px 0 var(--ink)}
.tiny{font-size:.82rem;opacity:.85;padding:0 24px 16px;max-width:1320px;margin:0 auto}.b-out .tiny{padding:0}
.cookie{position:fixed;left:16px;bottom:16px;max-width:440px;z-index:150;background:var(--paper);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--verm);padding:22px}
.cookie h2{font-size:1.3rem}.cookie p{font-size:.95rem}.ck-b{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ck-b button{font:800 .95rem var(--display);padding:12px;border:3px solid var(--ink);background:var(--paper);color:var(--ink);cursor:pointer}.ck-b button:hover{background:var(--lemon)}
/* reveal */
.js .rv{opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.js .rv.in{opacity:1;transform:none}
.js .card.rv.in:nth-child(2),.js .card.rv.in:nth-child(4){transform:translateY(30px)}
@media (max-width:980px){
 .burger{display:block}.tab{display:none}
 nav{position:fixed;inset:64px 0 0 0;background:var(--verm);padding:24px;display:none;overflow:auto}
 nav.open{display:block}
 nav .top{flex-direction:column;align-items:stretch;gap:10px}
 .dd>button,.plain,.lang{color:var(--paper);font-size:1.6rem;width:100%;justify-content:space-between;border-color:var(--paper)}
 .menu{position:static;box-shadow:none;margin-top:8px;min-width:0}
 .hero,.plate,.svc,.board,.contact-grid,.photo.tilt{grid-template-columns:1fr}
 .plate-l,.b-out{position:static}
 .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
 body{font-size:16px}.strip-in{padding:10px 16px}.wm{height:30px}
 .cards4,.metrics,.two,.guides,.row,.row3{grid-template-columns:1fr}
 .card:nth-child(n),.js .card.rv.in:nth-child(n){transform:none}
 .guide.k1,.guide.k3{margin-top:0}
 .track li{grid-template-columns:64px 1fr}.track li:nth-child(even){margin-left:0}.t-n{width:60px;height:60px;font-size:1.8rem}
 .plate{padding:56px 16px;gap:20px}.cform{padding:20px}
 .foot-grid{grid-template-columns:1fr}.ck-b{grid-template-columns:1fr}.cookie{left:8px;right:8px;bottom:8px}
 .facts{grid-template-columns:1fr}.ph-shape{opacity:.55}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .rv{opacity:1;transform:none}}
h1,h2,h3,p,li,dd,dt,figcaption,summary{overflow-wrap:break-word;hyphens:auto}
.guides>*,.plate>*,.contact-grid>*,.board>*,.svc>*,.hero>*,.photo.tilt>*{min-width:0}
@media (max-width:640px){.guides{padding:0 16px}.guide{padding:20px 16px}.guide h2{font-size:1.5rem;overflow-wrap:anywhere}.phead h1,.plate-l h2,.svc h2{overflow-wrap:anywhere}.phead{padding-inline:16px}}
