:root{--v:#4a12b8;--vd:#2a0870;--vl:#ece4ff;--sun:#ffc21a;--sun2:#ffe48a;--ink:#1c0b3d;--paper:#fbf8ef;
--d:"Avenir Next","Avenir","Segoe UI","Trebuchet MS",sans-serif;--m:"SFMono-Regular","Consolas","Courier New",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--d);color:var(--ink);background:var(--paper);line-height:1.55;overflow-wrap:anywhere}
main{display:block;outline:none}main>*{min-width:0}
a{color:var(--v)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--sun);outline-offset:2px;box-shadow:0 0 0 6px var(--vd)}
.skip{position:absolute;left:-999px;top:0;background:var(--sun);color:var(--ink);padding:.7rem 1rem;z-index:99}.skip:focus{left:.5rem}
.top{background:var(--v);color:#fff8e6;display:flex;align-items:center;gap:1rem;padding:.6rem clamp(1rem,3vw,2.5rem);position:sticky;top:0;z-index:20;flex-wrap:wrap}
.mark{display:flex;align-items:center;gap:.15rem;text-decoration:none;color:inherit;font-weight:900}
.mark span{display:inline-grid;place-items:center;width:2rem;height:2.4rem;font-size:1.6rem;line-height:1}.m5{background:var(--sun);color:var(--vd)}.m1{background:#fff8e6;color:var(--v)}.m2{border:2px solid var(--sun);color:var(--sun)}
.mark em{font-style:normal;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin-left:.5rem;line-height:1.15}
.navbtn{display:none;margin-left:auto;background:var(--sun);color:var(--vd);border:0;font:700 .9rem var(--m);padding:.7rem 1rem;min-height:44px;cursor:pointer}
nav#toc{margin-left:auto;min-width:0}.segs{display:flex;list-style:none;margin:0;padding:0;border:2px solid var(--sun)}
.segs li{flex:1}.seg{display:flex;flex-direction:column;align-items:center;padding:.35rem .9rem;color:#fff8e6;text-decoration:none;border-right:1px solid rgba(255,194,26,.5);min-height:44px;justify-content:center}
.segs li:last-child .seg{border-right:0}.seg b{font:700 .75rem var(--m);color:var(--sun)}.seg span{font-size:.85rem;font-weight:600}
.seg:hover{background:var(--vd)}.seg.on{background:var(--sun);color:var(--vd)}.seg.on b{color:var(--v)}
.kick{font:700 .8rem var(--m);letter-spacing:.18em;text-transform:uppercase;color:var(--v)}
h1,h2,h3{line-height:1.08;letter-spacing:-.02em}
.btn{display:inline-flex;align-items:center;min-height:48px;padding:.8rem 1.4rem;font-weight:800;text-decoration:none;border:2px solid var(--vd)}
.sun{background:var(--sun);color:var(--vd)}.ghost{color:inherit;border-color:currentColor}.btn:hover{transform:translateY(-2px)}
.cta{display:flex;gap:1rem;flex-wrap:wrap}
.hero{background:var(--v);color:#fff8e6;padding:clamp(2rem,6vw,6rem) clamp(1rem,5vw,5rem) 4rem}
.hero .kick{color:var(--sun2)}.rhythm{font-size:clamp(2.4rem,7.5vw,6.8rem);font-weight:900;margin:.3em 0;max-width:15ch}
.rhythm span{display:inline-block;animation:rise .7s both}.rhythm span:nth-child(odd){color:var(--sun)}
.rhythm span:nth-child(2){animation-delay:.08s}.rhythm span:nth-child(3){animation-delay:.16s;font-size:1.25em}.rhythm span:nth-child(4){animation-delay:.24s}.rhythm span:nth-child(5){animation-delay:.32s;font-size:1.12em}.rhythm span:nth-child(n+6){animation-delay:.4s}
@keyframes rise{from{opacity:0;transform:translateY(.4em)}}
.lede{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:56ch}
.beat{background:var(--sun);overflow:hidden}.beatrow{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;padding:1rem clamp(1rem,5vw,5rem);font:900 clamp(1.1rem,3vw,2.2rem) var(--d);color:var(--vd);text-transform:uppercase}
.board{padding:4rem clamp(1rem,5vw,5rem);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:2rem 3rem}
.board>h2,.board>.note{grid-column:1/-1;margin:0}.board h2{font-size:clamp(2rem,4vw,3.4rem)}
.note{font:.85rem var(--m);background:var(--vl);padding:.6rem .8rem;border-left:4px solid var(--v)}
.toggles{display:grid;gap:.6rem}.tg{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:.7rem;border:2px solid var(--vl)}
.tg .l{text-align:right;font-weight:700}.tg .r{color:#7a6a99}.tg.flip .l{color:#7a6a99}.tg.flip .r{color:var(--ink);font-weight:700}
.tg button{width:72px;height:40px;border:2px solid var(--vd);background:var(--sun);position:relative;cursor:pointer}
.tg button::after{content:"";position:absolute;top:4px;left:4px;width:28px;height:28px;background:var(--vd);transition:transform .2s}
.tg button[aria-checked=true]{background:var(--v)}.tg button[aria-checked=true]::after{transform:translateX(32px);background:var(--sun)}
.readout{background:var(--vd);color:#fff8e6;padding:1.5rem}.readout h3{color:var(--sun);margin-top:0}.readout li{margin:.5rem 0}
.split5{padding:4rem clamp(1rem,5vw,5rem);background:var(--vl)}.split5 h2{font-size:clamp(1.8rem,4vw,3rem)}
.breath{display:grid;grid-template-columns:minmax(0,16rem) minmax(0,1fr);margin:0}.breath dt{font-weight:900;font-size:1.3rem;color:var(--v);padding:1rem 0;border-top:3px solid var(--v)}.breath dd{margin:0;padding:1rem 0;border-top:1px solid #c9b8f5;font-size:1.1rem}
.more{display:inline-block;margin-top:1.5rem;font-weight:800}
.call{background:var(--sun);display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;padding:2rem clamp(1rem,5vw,5rem)}.call p{font-size:clamp(1.3rem,3vw,2rem);font-weight:900;margin:0;color:var(--vd)}
.pagehead{padding:clamp(2rem,6vw,5rem) clamp(1rem,5vw,5rem) 3rem;color:#fff8e6;background:var(--v)}.pagehead .kick{color:var(--sun)}
.pagehead h1{font-size:clamp(2.1rem,5.5vw,4.6rem);max-width:20ch;margin:.2em 0}
.ph-a{clip-path:polygon(0 0,100% 0,100% 85%,0 100%);padding-bottom:5rem}
.ph-b{background:linear-gradient(90deg,var(--v) 0 70%,var(--sun) 70%)}.sunt{color:var(--sun)}
.ph-c{background:var(--sun);color:var(--vd)}.ph-c .kick{color:var(--v)}
.ph-d{border-bottom:14px solid var(--sun)}
.ph-e{background:var(--vd);box-shadow:inset 0 -10px 0 var(--sun)}
.ph-f{background:repeating-linear-gradient(90deg,var(--v) 0 20%,var(--vd) 20% 40%)}
.ph-g{background:var(--paper);color:var(--ink);border-left:16px solid var(--v)}.ph-g .kick{color:var(--v)}
.cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;padding:3rem clamp(1rem,5vw,5rem)}.cols.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.cols h2{color:var(--v);font-size:1.6rem}
.stripe{background:var(--vd);color:#fff8e6;padding:3rem clamp(1rem,5vw,5rem)}.stripe h2{color:var(--sun);font-size:clamp(1.6rem,3.5vw,2.6rem)}
.steps{counter-reset:s;list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1rem}
.steps li{counter-increment:s;padding:1rem;border-top:4px solid var(--sun)}.steps li::before{content:counter(s);font:900 2.4rem var(--d);color:var(--sun);display:block}
.steps.small{grid-template-columns:1fr}.steps.small li{border-top-color:var(--v);padding:.4rem 0}.steps.small li::before{font-size:1.3rem;color:var(--v)}
address{font-style:normal}address.big{font-size:1.5rem;font-weight:700}
.maplabel{font:.85rem var(--m);background:var(--vl);padding:.7rem}
.jump{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.jump a{background:var(--paper);color:var(--vd);padding:.6rem 1rem;font-weight:800;text-decoration:none;min-height:44px}
.svcs{padding:2rem clamp(1rem,5vw,5rem)}.svc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:1rem 3rem;padding:2.5rem 0;border-bottom:3px solid var(--v)}
.svc:nth-child(even) header{order:2}.svc h2{font-size:clamp(1.8rem,4vw,3rem);margin:.3em 0;color:var(--v)}
.svc ul{margin:0;padding:0;list-style:none}.svc li{padding:.6rem 0 .6rem 1.6rem;border-bottom:1px solid #ddd2f7;position:relative}.svc li::before{content:"";position:absolute;left:0;top:1rem;width:.8rem;height:.8rem;background:var(--sun);border:2px solid var(--vd)}
.svc details{grid-column:1/-1}
.tag{font:700 .72rem var(--m);text-transform:uppercase;letter-spacing:.14em;background:var(--sun);color:var(--vd);padding:.2rem .5rem}
details{border:2px solid var(--vl);padding:.2rem 1rem;margin:.6rem 0}summary{cursor:pointer;font-weight:800;padding:.7rem 0;min-height:44px}
.phases{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:3rem clamp(1rem,5vw,5rem);gap:0}
.ph{padding:1.2rem;border-left:3px solid var(--v)}.ph b{font:900 3.5rem var(--d);color:var(--sun);-webkit-text-stroke:2px var(--vd)}.ph h2{margin:.2em 0;color:var(--v)}
.criteria,.faq{padding:2rem clamp(1rem,5vw,5rem);max-width:60rem}.checks{list-style:none;padding:0}.checks label{display:flex;gap:.8rem;padding:.7rem;border-bottom:1px solid #ddd2f7;cursor:pointer;min-height:44px}
input[type=checkbox]{width:1.3rem;height:1.3rem;accent-color:var(--v);flex:none}
.meter{font:700 1.1rem var(--m);background:var(--v);color:var(--sun);display:inline-block;padding:.5rem 1rem}
.filter{padding:2rem clamp(1rem,5vw,5rem);display:grid;gap:.8rem}.filter label{font-weight:800}
input,textarea{font:inherit;width:100%;padding:.75rem;border:2px solid var(--v);background:#fffdf7;min-height:48px;color:var(--ink)}
.seg2{display:flex;flex-wrap:wrap;border:2px solid var(--v);width:fit-content;max-width:100%}.seg2 button{border:0;border-right:1px solid var(--v);background:transparent;padding:.6rem 1rem;font:700 .85rem var(--m);min-height:44px;cursor:pointer;color:var(--vd)}
.seg2 button[aria-pressed=true],.seg2 button[aria-selected=true]{background:var(--v);color:var(--sun)}
.reslist{padding:0 clamp(1rem,5vw,5rem) 3rem;columns:2 22rem;column-gap:2rem}.res{break-inside:avoid;padding:1.2rem 0 1.4rem;border-top:3px solid var(--v)}.res h2{font-size:1.4rem;margin:.6rem 0 .3rem}
.res:nth-child(3n+2){background:var(--vl);padding:1.2rem}
.empty,.count{font-family:var(--m)}.empty{padding:0 clamp(1rem,5vw,5rem)}
.formcard{background:var(--vl);padding:clamp(1rem,3vw,2rem);border-top:8px solid var(--sun);min-width:0}
.f512{display:grid;gap:1rem}.f512 label{display:grid;gap:.3rem;font-weight:700;min-width:0}.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.chips{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem}.chips legend{font-weight:800;margin-bottom:.4rem}.chips label{display:flex!important;align-items:center;gap:.5rem;background:#fffdf7;border:2px solid var(--v);padding:.5rem .8rem;min-height:44px}
.consent{display:flex!important;gap:.6rem;align-items:flex-start;font-weight:400!important}
.hp{position:absolute!important;left:-9999px}
.go{background:var(--v);color:var(--sun);border:0;font:800 1.05rem var(--d);padding:1rem;min-height:52px;cursor:pointer}.go:disabled{opacity:.6;cursor:wait}
.status{font-family:var(--m);margin:0}.status.err{color:#9b1030}.status.ok{background:var(--sun);padding:.7rem;color:var(--vd)}
.contactgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:2.5rem;padding:3rem clamp(1rem,5vw,5rem)}
.biglink{font-size:clamp(1.2rem,2.6vw,1.8rem);font-weight:900}.modes{margin-bottom:1rem}
.fine{font:.82rem var(--m);padding:0 clamp(1rem,5vw,5rem) 2rem;max-width:70rem}
.legal{padding:2rem clamp(1rem,5vw,5rem) 3rem;max-width:52rem}.legal h2{color:var(--v);margin-top:2rem}
.lost{min-height:70dvh;background:var(--v);color:#fff8e6;padding:4rem clamp(1rem,5vw,5rem)}.huge{font:900 clamp(5rem,20vw,14rem) var(--d);color:var(--sun);margin:0;line-height:1}
.linkish{background:none;border:0;color:inherit;text-decoration:underline;font:inherit;cursor:pointer;padding:0;min-height:24px}
.foot{background:var(--vd);color:#fff8e6;padding:3rem clamp(1rem,5vw,5rem) 6rem}.foot a{color:var(--sun2)}.fwrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;align-items:start}
.fbig{font:900 2.2rem var(--d);color:var(--sun);margin:0}.foot h2{font-size:1rem;letter-spacing:.1em}.flinks{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}
.cookie{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:50;background:var(--sun);color:var(--vd);border:3px solid var(--vd);padding:1rem;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;max-width:60rem;margin:auto}
.cookie[hidden]{display:none}.cookie p{margin:0;flex:1 1 20rem}.cookie div{display:flex;gap:.6rem;flex-wrap:wrap}.cookie button{background:var(--vd);color:var(--sun);border:0;padding:.7rem 1rem;font-weight:800;min-height:44px;cursor:pointer;flex:1}
@media(max-width:1000px){.navbtn{display:inline-flex}nav#toc{flex-basis:100%;display:none}nav#toc.open{display:block}.segs{flex-direction:column}.seg{flex-direction:row;gap:1rem;justify-content:flex-start;border-right:0;border-bottom:1px solid rgba(255,194,26,.5)}
.phases{grid-template-columns:repeat(2,minmax(0,1fr))}.fwrap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.board,.cols,.cols.two,.contactgrid,.svc,.row,.breath,.fwrap,.phases{grid-template-columns:minmax(0,1fr)}.svc:nth-child(even) header{order:0}
.tg{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:.5rem;font-size:.9rem}.ph-b{background:var(--v)}.reslist{columns:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
