:root{--red:#c8102e;--red-d:#9e0b23;--ink:#1d1f22;--grey:#5b6068;--line:#e4e6ea;--bg:#f6f7f9;--gold:#e8b100;--r:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:16px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#fff}
img{max-width:100%;height:auto;display:block}a{color:var(--red)}
.wrap{width:min(1160px,92%);margin:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem;z-index:99}
.topbar{background:var(--ink);color:#fff;font-size:.85rem}.topbar .wrap{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0;flex-wrap:wrap}.topbar a{color:#fff;text-decoration:none;font-weight:600}
header.site{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;padding:.7rem 0}
.brand img{height:44px;width:auto}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1.4rem}nav a{color:var(--ink);text-decoration:none;font-weight:600}nav a[aria-current]{color:var(--red)}
.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:8px;padding:.45rem .7rem;font:inherit;font-weight:700}
@media(max-width:1020px){.menu-btn{display:block}#nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);display:none}#nav.open{display:block}#nav ul{flex-direction:column;gap:0;padding:.5rem 4%}#nav li a{display:block;padding:.75rem 0;border-bottom:1px solid var(--line)}.brand img{height:36px}}
.btn{display:inline-block;background:var(--red);color:#fff;padding:.85rem 1.4rem;border-radius:999px;text-decoration:none;font-weight:700}.btn:hover{background:var(--red-d)}
.btn.ghost{background:transparent;border:2px solid #fff}
.hero{position:relative;color:#fff;background:#111}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.hero .wrap{position:relative;padding:6rem 0 5rem}
.hero h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1.1;margin:.3rem 0 1rem;max-width:16ch}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;font-weight:700;color:var(--gold)}
.hero p{max-width:55ch;font-size:1.1rem}.cta{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.5rem}
.pagehead{background:var(--ink);color:#fff;padding:3.5rem 0 3rem}.pagehead h1{margin:.2rem 0;font-size:clamp(1.8rem,4vw,2.8rem)}
section{padding:4rem 0}section.alt{background:var(--bg)}
h2{font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.2;margin:0 0 1rem}
.grid{display:grid;gap:1.5rem}.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:center}.g3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.5rem}
.card h3{margin:.2rem 0 .5rem}.rounded{border-radius:var(--r)}
.ticks{padding-left:1.2rem}.ticks li{margin:.4rem 0}
.quote{margin:0}.quote p{font-style:italic}.quote footer{font-weight:700;color:var(--grey)}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0}.chips li{background:#fff;border:1px solid var(--line);border-radius:999px;padding:.3rem .8rem;font-weight:600;font-size:.9rem}
.gallery{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.gallery img{aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.band{background:var(--red);color:#fff;text-align:center}.band .btn{background:#fff;color:var(--red)}
.ph{background:#fff3cd;padding:0 .3rem;border-radius:4px}
footer.site{background:var(--ink);color:#c9ccd1;padding:3rem 0 2rem;font-size:.95rem}footer.site a{color:#fff}footer.site h3{color:#fff;font-size:1rem}
.small{font-size:.85rem;color:#8b9097}
dl.contact dt{font-weight:700;margin-top:.8rem}dl.contact dd{margin:0}
.banner{background:#111;line-height:0}.banner img{width:100%;max-width:1920px;height:auto;max-height:640px;object-fit:contain;margin:auto}
.brand img{height:52px}@media(max-width:1020px){.brand img{height:42px}}
.social a{display:inline-flex;align-items:center;gap:.4rem;margin-right:1rem;text-decoration:none}
.ph{color:#5a4500}
.banner img{max-height:none}
section.banner{padding:0}
.cform h2{margin-bottom:.2rem}.frow{margin:0 0 1rem}.frow.two{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.cform label{display:block;font-weight:600;margin-bottom:.3rem}.opt{font-weight:400;color:var(--grey)}
.cform input,.cform select,.cform textarea{width:100%;font:inherit;padding:.7rem .8rem;border:1px solid #c9ccd1;border-radius:10px;background:#fff;color:var(--ink)}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:3px solid rgba(200,16,46,.25);border-color:var(--red)}
.cform [aria-invalid=true]{border-color:var(--red);background:#fff5f6}
.frow.check{display:flex;gap:.6rem;align-items:flex-start}.frow.check input{width:auto;margin-top:.35rem}.frow.check label{font-weight:400;font-size:.92rem}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cf-turnstile{margin:0 0 1rem}.cform .btn{border:0;cursor:pointer;font-size:1rem}.cform .btn:disabled{opacity:.6}
.fstatus{margin:.8rem 0 0;font-weight:600}.fstatus.ok{color:#17703a}.fstatus.err{color:var(--red-d)}
/* header logo: slim mark */
header.site .wrap{padding:.45rem 0;min-height:56px}
.brand{display:flex;align-items:center;flex:0 0 auto}.brand img,.brand picture img{height:40px;width:auto;max-width:140px}
@media(max-width:1020px){.brand img,.brand picture img{height:36px}}
nav a{display:inline-flex;align-items:center;min-height:44px}
.menu-btn{min-height:44px;min-width:64px}
/* gallery */
.chips-f{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.5rem;margin-bottom:1.2rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.chip{flex:0 0 auto;min-height:44px;padding:0 1rem;border-radius:999px;border:1px solid var(--line);background:#fff;font:inherit;font-weight:600;cursor:pointer;color:var(--ink)}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.pgrid{columns:3 300px;column-gap:1.2rem}
.pcard{display:block;break-inside:avoid;margin:0 0 1.2rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;color:var(--ink);text-decoration:none;transition:transform .15s,box-shadow .15s}
.pcard:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.08)}.pcard[hidden]{display:none}
.pcard img{width:100%;height:auto}.pc-body{padding:1rem 1.1rem 1.2rem}.pc-body h2{font-size:1.15rem;margin:.2rem 0}.pc-body p{margin:.3rem 0;font-size:.95rem}
.pc-cat{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--red);font-weight:700}.pc-meta{color:var(--grey)}
.back{color:#fff;opacity:.85;display:inline-flex;min-height:44px;align-items:center}.lead{font-size:1.15rem}
.pphotos{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.pphotos img{aspect-ratio:1;object-fit:cover;border-radius:10px;width:100%;height:auto}
.pnav{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem;flex-wrap:wrap}.pnav a{min-height:44px;display:inline-flex;align-items:center;font-weight:600}
.lb{border:0;padding:0;max-width:100vw;max-height:100vh;width:100vw;height:100vh;background:rgba(10,10,10,.96);color:#fff}
.lb::backdrop{background:rgba(0,0,0,.8)}.lb figure{margin:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3.5rem .5rem 1rem}
.lb img{max-width:100%;max-height:calc(100vh - 7rem);object-fit:contain}.lb figcaption{margin-top:.6rem;font-size:.9rem;opacity:.85}
.lb button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;border-radius:999px;width:48px;height:48px;font-size:1.8rem;line-height:1;cursor:pointer}
.lb-x{top:.6rem;right:.6rem}.lb-p{left:.6rem;top:50%;transform:translateY(-50%)}.lb-n{right:.6rem;top:50%;transform:translateY(-50%)}
/* mobile pass */
html,body{overflow-x:hidden}
@media(max-width:600px){.topbar .wrap{justify-content:center;text-align:center;font-size:.8rem}.topbar .wrap span:first-child{display:none}
 section{padding:2.8rem 0}.pagehead{padding:2.4rem 0 2rem}.hero .wrap{padding:3.5rem 0 3rem}.cta .btn{flex:1 1 auto;text-align:center}
 iframe{height:300px!important}footer.site a{display:inline-block;min-height:32px}}
.cform input,.cform select,.cform textarea{font-size:16px}
.topbar a{display:inline-flex;align-items:center;min-height:44px;padding:0 .3rem}.topbar .wrap{padding:0;align-items:center}
.card>a,.card a[href$=".html"]:only-of-type{display:inline-flex;align-items:center;min-height:44px}
.frow.check input{width:24px;height:24px;flex:0 0 24px;margin-top:.1rem;accent-color:var(--red)}
/* home photo hero */
.mh{position:relative;color:#fff;background:#111;min-height:clamp(520px,82vh,760px);display:flex;align-items:flex-end;overflow:hidden}
.mh picture,.mh picture img{position:absolute;inset:0;width:100%;height:100%}.mh picture img{object-fit:cover;object-position:50% 60%}
.mh::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.85) 0%,rgba(10,10,10,.55) 45%,rgba(10,10,10,.05) 75%),linear-gradient(0deg,rgba(10,10,10,.7),transparent 45%)}
.mh .wrap{margin:0 auto;position:relative;z-index:1;padding:4rem 0 3.5rem}
.mh .mark{height:30px;width:auto;margin-bottom:1rem}
.mh h1{font-size:clamp(2rem,4.6vw,3.5rem);line-height:1.08;margin:0 0 1rem;max-width:15ch;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.mh p{max-width:46ch;font-size:1.1rem;margin:0;text-shadow:0 1px 8px rgba(0,0,0,.4)}
@media(max-width:600px){.mh{min-height:80vh}.mh::after{background:linear-gradient(0deg,rgba(10,10,10,.95) 0%,rgba(10,10,10,.75) 45%,rgba(10,10,10,.35) 75%,rgba(10,10,10,.15) 100%)}.mh picture img{object-position:40% 50%}.mh .wrap{padding:2.5rem 0 2rem}.mh .cta .btn{flex:1 1 100%}}
.wgrid{columns:3 280px;column-gap:1rem}.wtile{break-inside:avoid;margin:0 0 1rem}.wtile img{width:100%;height:auto;border-radius:12px}
.wtile figcaption{font-size:.9rem;color:var(--grey);padding:.4rem .2rem 0}
.gtabs{display:flex;gap:.3rem;border-bottom:2px solid var(--line);margin:0 0 1.4rem;overflow-x:auto}
.gtabs a{display:inline-flex;align-items:center;min-height:48px;padding:0 1rem;font-weight:700;color:var(--grey);text-decoration:none;border-bottom:3px solid transparent;margin-bottom:-2px;white-space:nowrap}
.gtabs a[aria-current]{color:var(--red);border-color:var(--red)}
.wtile figcaption a{white-space:nowrap}
@media(min-width:1021px) and (max-width:1300px){nav ul{gap:.9rem}nav a{font-size:.93rem}}
.custcard .custimg img{width:100%;height:auto;display:block}.custcard .btn{white-space:normal;text-align:center}
.gcta{margin:-.4rem 0 1.4rem}.gcta .btn,.btn.ghost-d{background:transparent;color:var(--red);border:2px solid var(--red);white-space:normal}
.partsfit{background:#f4f4f2;border-top:1px solid var(--line)}
.partsfit .wrap{display:flex;align-items:center;justify-content:center;gap:2.2rem;flex-wrap:wrap;padding:1.1rem 0}
.pf-label{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}
.partsfit img{display:block;width:auto;opacity:.85;transition:opacity .2s}.partsfit img:hover{opacity:1}
.pf-tk{height:34px}.pf-kt{height:20px}
@media(max-width:600px){.partsfit .wrap{gap:1rem 1.6rem}.pf-label{flex-basis:100%;text-align:center}.pf-tk{height:28px}.pf-kt{height:17px}}
.kt-head{display:flex;align-items:center;gap:1rem}.kt-head h2{margin:0}.kt-logo{height:64px;width:auto;display:block;flex:none}
@media(max-width:600px){.kt-logo{height:48px}}
.tk-line{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1.4rem;color:var(--grey)}.tk-line img{display:block;width:auto}.tk-logo{height:30px}.kw-logo{height:18px}
.pf-kt{height:36px}.kw-logo{height:30px}.kt-logo{height:52px}
@media(max-width:600px){.pf-kt{height:28px}.kt-logo{height:40px}.kt-head{flex-direction:column;align-items:flex-start;gap:.5rem}}
/* Gallery tabs – segmented control (v2) */
.gtabs{display:flex;gap:.35rem;width:max-content;max-width:100%;margin:0 0 1.75rem;padding:.3rem;background:#f1f1ef;border:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:999px;overflow:visible}
.gtabs a{display:flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:0 1.25rem;border:0;border-radius:999px;font-weight:700;font-size:.95rem;line-height:1.2;color:var(--grey);text-decoration:none;white-space:nowrap}
.gtabs a:hover{color:var(--ink)}
.gtabs a[aria-current]{background:#fff;color:var(--red);border:0;box-shadow:0 1px 3px rgba(0,0,0,.12),inset 0 -3px 0 var(--red)}
@media(max-width:600px){.gtabs{width:100%;margin-bottom:1.25rem}.gtabs a{flex:1 1 0;padding:0 .6rem;font-size:.92rem;text-align:center}.gcta{margin:0 0 1.25rem}}
.greviews{background:var(--ink);color:#fff}.greviews .eyebrow{color:#ff6b7f}.greviews h2{margin:.2rem 0 .4rem;color:#fff}
.gr-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.2rem;flex-wrap:wrap;margin-bottom:1.6rem}
.stars{color:var(--gold);letter-spacing:.12em;font-size:1.15rem;line-height:1}
.gr-score{display:flex;align-items:center;gap:.7rem;margin:0;color:#d5d7db}.gr-score .stars{font-size:1.5rem}
.gr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.gr-card{margin:0;background:#26292d;border:1px solid #33373c;border-top:3px solid var(--red);border-radius:var(--r);padding:1.3rem 1.3rem 1.1rem;display:flex;flex-direction:column;gap:.8rem}
.gr-card blockquote{margin:0;font-size:.98rem;line-height:1.6;color:#eef0f2;flex:1}
.gr-card figcaption{display:flex;flex-direction:column;font-size:.88rem}.gr-card figcaption span{color:#9aa0a8}
.gr-foot{margin:1.4rem 0 0;text-align:center;color:#c3c6cb}.gr-foot a{color:#fff;font-weight:700}
.gstrip{padding:1.2rem 0;background:var(--bg);border-top:1px solid var(--line)}.gstrip .wrap{display:flex;gap:.9rem;align-items:center;justify-content:center;flex-wrap:wrap;text-align:center}.gstrip a{font-weight:700}
@media(max-width:600px){.gr-head .btn{width:100%;text-align:center}}
.mh-slides{position:absolute;inset:0}
.mh .slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}.mh .slide.on{opacity:1}
.mh .slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%;transform:scale(1.04);transition:transform 7s ease-out}.mh .slide.on img{transform:scale(1)}
.mh-dots{position:absolute;z-index:2;right:4%;bottom:1.4rem;display:flex;gap:.45rem}.mh-dots span{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.4);transition:background .4s,width .4s}.mh-dots span.on{background:#fff;width:20px;border-radius:4px}
@media(max-width:600px){.mh .slide img{object-position:40% 50%}.mh-dots{right:auto;left:4%;top:1rem;bottom:auto}}
@media(prefers-reduced-motion:reduce){.mh .slide,.mh .slide img{transition:none;transform:none}}
@media(max-width:600px){
.mh{min-height:0;display:block;background:#0a0a0a}
.mh-slides{inset:0 0 auto 0;height:75vw}
.mh .slide img,.mh picture img{object-fit:cover;object-position:50% 50%}
.mh::after{background:linear-gradient(180deg,rgba(10,10,10,0) 0,rgba(10,10,10,0) 45vw,rgba(10,10,10,.85) 70vw,#0a0a0a 76vw,#0a0a0a 100%)}
.mh .wrap{padding:62vw 0 2rem}
.mh-dots{top:auto;bottom:auto;left:auto;right:4%;top:calc(75vw - 1.6rem)}
}
.custimg.cshow{position:relative;display:block;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:#111}
.cshow .cslide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease}.cshow .cslide.on{opacity:1}
.cshow .cslide img{width:100%;height:100%;object-fit:cover}
.cdots{position:absolute;left:0;right:0;bottom:.8rem;display:flex;justify-content:center;gap:.4rem;z-index:2}.cdots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5);box-shadow:0 0 3px rgba(0,0,0,.5);transition:width .4s,background .4s}.cdots i.on{width:18px;border-radius:4px;background:#fff}
@media(prefers-reduced-motion:reduce){.cshow .cslide{transition:none}}
.igsec{background:#fff}.ig-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.2rem;flex-wrap:wrap;margin-bottom:1.4rem}.ig-head h2{margin:.2rem 0 .3rem}.ig-head p{margin:0;color:var(--grey)}
.igbtn{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(45deg,#f09433,#dc2743 50%,#bc1888)}.igbtn:hover{filter:brightness(.92);background:linear-gradient(45deg,#f09433,#dc2743 50%,#bc1888)}.igbtn svg{width:18px;height:18px;fill:#fff}
.ig-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}
.ig-tile{position:relative;display:block;aspect-ratio:1;overflow:hidden;border-radius:10px;background:#eee}.ig-tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ig-ov{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(200,16,46,.55);opacity:0;transition:opacity .3s}.ig-ov svg{width:34px;height:34px;fill:#fff}
.ig-tile:hover img,.ig-tile:focus-visible img{transform:scale(1.06)}.ig-tile:hover .ig-ov,.ig-tile:focus-visible .ig-ov{opacity:1}
@media(max-width:700px){.ig-grid{grid-template-columns:repeat(3,1fr);gap:.35rem}.ig-tile{border-radius:6px}.ig-tile:nth-child(n+7){display:none}.igbtn{width:100%;justify-content:center}}
/* illustrated hero */
.mh.illus{background:#111;min-height:clamp(480px,70vh,640px)}
.mh.illus::after{display:none}
.mh.illus .mh-slides{left:auto;width:60%;clip-path:polygon(9% 0,100% 0,100% 100%,0 100%)}
.mh.illus .slide{display:flex;align-items:center;justify-content:center}
.mh.illus .slide picture{position:static;width:100%;height:100%}
.mh.illus .slide img{position:static;width:100%;height:100%;object-fit:contain;object-position:60% 50%;transform:none;transition:none;padding:2.5rem 1.5rem 2.5rem 9%}
.mh.illus .wrap{align-self:center;padding:3rem 0}
.mh.illus .wrap>*{max-width:min(44%,560px)}
.mh.illus h1{text-shadow:none}.mh.illus p{text-shadow:none;color:#e6e7e9}
.mh.illus .cta{flex-direction:column;align-items:flex-start}.mh.illus .cta .btn{min-width:260px;text-align:center}
.mh.illus::before{content:"";position:absolute;z-index:1;top:0;bottom:0;left:40%;width:10px;background:var(--red);transform:skewX(-5deg);transform-origin:top}
@media(max-width:900px){
.mh.illus{display:block;min-height:0}
.mh.illus .mh-slides{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:700/490;clip-path:none}
.mh.illus .slide img{padding:0}
.mh.illus::before{left:0;right:0;width:auto;top:calc(100vw * 490 / 700);bottom:auto;height:5px;transform:none}
.mh.illus .wrap{padding:1.8rem 0 2.2rem}.mh.illus .wrap>*{max-width:none}
.mh.illus .cta{flex-direction:row}.mh.illus .cta .btn{flex:1 1 100%;min-width:0}
.mh.illus .mh-dots{top:calc(100vw * 490 / 700 - 1.4rem);bottom:auto;left:auto;right:4%}}
.mh.illus{padding:0}
/* mascots */
.mascot{pointer-events:none;user-select:none;height:auto;opacity:0;transform:translateY(8px) rotate(-3deg);transition:opacity .45s ease,transform .45s ease;filter:drop-shadow(0 4px 6px rgba(0,0,0,.18))}
.mascot.in{opacity:1;transform:none}
footer.site{position:relative}
.m-foot{position:absolute;right:4%;top:-78px;width:96px}
.pagehead .wrap{position:relative}.m-head{position:absolute;right:0;bottom:-2rem;width:120px}
.pagehead{overflow:visible}
.ig-head{position:relative}.m-ig{position:absolute;right:240px;top:-30px;width:84px}
.cust-txt{position:relative}.m-cust{position:absolute;right:0;top:-70px;width:90px}
@media(max-width:900px){.m-ig{display:none}.m-head{width:84px;bottom:-1rem}}
@media(max-width:600px){.m-foot{width:64px;top:-22px;right:3%}.m-head{width:64px;opacity:.95}.m-cust{width:64px;top:-40px}}
@media(prefers-reduced-motion:reduce){.mascot{transition:none;transform:none}}
/* bikes for sale */
.fs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.4rem}
.fs-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 10px rgba(0,0,0,.05)}
.fs-img{position:relative;aspect-ratio:4/3;background:#111}.fs-img img{width:100%;height:100%;object-fit:cover}
.fs-status{position:absolute;left:.8rem;top:.8rem;background:#1b7f3b;color:#fff;font-weight:800;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .7rem;border-radius:999px}
.fs-reserved .fs-status{background:#c77700}.fs-sold .fs-status{background:var(--red)}
.fs-sold .fs-img img{filter:grayscale(.6) brightness(.8)}
.fs-sold .fs-img::after{content:"SOLD";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:3rem;font-weight:900;letter-spacing:.15em;transform:rotate(-12deg);text-shadow:0 2px 12px rgba(0,0,0,.6)}
.fs-ph{position:absolute;right:.8rem;top:.8rem;background:#ffe58a;color:#5a4500;font-size:.7rem;font-weight:800;text-transform:uppercase;padding:.25rem .6rem;border-radius:4px}
.fs-more{position:absolute;right:.8rem;bottom:.8rem;background:rgba(0,0,0,.65);color:#fff;font-size:.8rem;padding:.2rem .6rem;border-radius:999px}
.fs-body{padding:1.1rem 1.2rem 1.3rem;display:flex;flex-direction:column;flex:1}
.fs-top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.fs-top h2{margin:0;font-size:1.25rem}
.fs-price{font-weight:900;font-size:1.35rem;color:var(--red);white-space:nowrap}.fs-sold .fs-price{color:var(--grey);text-decoration:line-through}
.fs-year{color:var(--grey);font-size:.9rem;font-weight:600}.fs-body p{flex:1;margin:.6rem 0 1rem;color:#3a3d42}
.fs-cta{display:flex;gap:.6rem;flex-wrap:wrap}.fs-cta .btn{padding:.6rem 1.1rem}.fs-soldtxt{color:var(--grey);font-style:italic}
.fs-note{margin-top:1.4rem;color:var(--grey)}
@media(max-width:600px){.fs-cta .btn{flex:1 1 auto;text-align:center}}

/* ===== dark theme (site-wide) ===== */
/* DRAFT dark theme – only loaded by draft-home-dark.html */
body.dark{--ink:#0e0f11;--bg:#16181b;--line:#2a2d32;--grey:#a3a8b0;background:#0b0c0e;color:#e4e6ea}
body.dark a{color:#ff5a6e}
body.dark .topbar{background:#000;border-bottom:1px solid #1d1f23}
body.dark header.site{background:rgba(14,15,17,.96);border-bottom:1px solid #24272c;backdrop-filter:blur(6px)}
body.dark header.site nav a{color:#e4e6ea}body.dark header.site nav a[aria-current]{color:#ff5a6e}
body.dark .menu-btn{background:#1a1c20;color:#fff;border-color:#33363b}
body.dark #nav.open,body.dark nav ul{background:transparent}
@media(max-width:900px){body.dark #nav{background:#0e0f11}}
body.dark .mh.illus{background:#050506}
body.dark section{background:#0b0c0e}
body.dark section.alt{background:#131518;border-top:1px solid #1e2125;border-bottom:1px solid #1e2125}
body.dark h1,body.dark h2,body.dark h3{color:#fff}
body.dark .card{background:#17191d;border-color:#2a2d32;color:#d8dbe0}
body.dark .card a{color:#ff5a6e}
body.dark .quote p{color:#e4e6ea}body.dark .quote footer{color:#9aa0a8}
body.dark .rounded{box-shadow:0 10px 30px rgba(0,0,0,.5)}
body.dark .btn.ghost-d,body.dark .gcta .btn{color:#ff5a6e;border-color:#ff5a6e}
body.dark .custcard{background:#0e1012}
body.dark .igsec{background:#0b0c0e}body.dark .ig-head p{color:#a3a8b0}body.dark .ig-tile{background:#1a1c20}
body.dark .greviews{background:#121417;border-top:1px solid #1e2125;border-bottom:1px solid #1e2125}
body.dark .gr-card{background:#1a1d21;border-color:#2c3035}
body.dark .gstrip{background:#131518;border-color:#24272c}
body.dark .band{background:linear-gradient(135deg,#8f0b20,#c8102e 60%,#a30d26)}
body.dark .partsfit{background:#fff;border-top:1px solid #e2e2de;border-bottom:1px solid #e2e2de}
body.dark .partsfit img{background:none;padding:0;border-radius:0;opacity:1}
body.dark .pf-label{color:#2a2c30}
body.dark footer.site{background:#060708;border-top:1px solid #1d1f23}
body.dark .ph{background:#3a3218;color:#ffe58a}
body.dark .eyebrow{color:#f0b400}
/* hero readability fixes */
body.dark .btn{color:#fff}
body.dark .btn.ghost{color:#fff;border-color:rgba(255,255,255,.85);background:rgba(0,0,0,.35)}
body.dark .btn.ghost:hover{background:#fff;color:#111}
body.dark .band .btn{color:var(--red);background:#fff}
body.dark .mh.illus .wrap>*{max-width:calc(40vw - 4vw - 1.5rem)}
body.dark .mh.illus .wrap{position:relative;z-index:2}
body.dark .mh.illus p{color:#f1f2f4;text-shadow:0 1px 2px rgba(0,0,0,.8)}
body.dark .mh.illus h1{text-shadow:0 2px 6px rgba(0,0,0,.6)}
body.dark .mh.illus .cta .btn{box-shadow:0 4px 14px rgba(0,0,0,.45)}
body.dark .mh.illus .mh-slides::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(5,5,6,.55) 0,rgba(5,5,6,0) 22%)}
@media(max-width:900px){body.dark .mh.illus .wrap>*{max-width:none}body.dark .mh.illus .mh-slides::after{background:linear-gradient(0deg,rgba(5,5,6,.5) 0,rgba(5,5,6,0) 25%)}}
/* wide-screen balance: keep illustration panel inside the content column */
@media(min-width:1200px){
body.dark .mh.illus{--pr:max(0px,calc((100vw - 1160px)/2));--pw:min(52vw,620px)}
body.dark .mh.illus .mh-slides{left:auto;right:var(--pr);width:var(--pw);top:2.2rem;bottom:2.2rem;clip-path:polygon(9% 0,100% 0,100% 100%,0 100%);border-radius:0 14px 14px 0}
body.dark .mh.illus .slide img{padding:2rem 1.5rem 2rem 10%;object-position:50% 50%}
body.dark .mh.illus::before{left:calc(100vw - var(--pr) - var(--pw) - 14px);top:2.2rem;bottom:2.2rem}
body.dark .mh.illus .wrap>*{max-width:calc(100vw - 2*var(--pr) - var(--pw) - 3.5rem)}
body.dark .mh.illus .mh-dots{right:calc(var(--pr) + 1rem);bottom:3rem}
body.dark .mh.illus{background:radial-gradient(ellipse at 75% 50%,#15171a 0,#050506 70%)}
}

body.dark input,body.dark select,body.dark textarea{background:#111316;color:#e9ebee;border:1px solid #33363c}
body.dark input::placeholder,body.dark textarea::placeholder{color:#7d838c}
body.dark .fs-card{background:#17191d;border-color:#2a2d32}body.dark .fs-body p{color:#c9ccd1}
body.dark .gtabs a{background:#17191d;color:#e4e6ea;border-color:#2a2d32}body.dark .gtabs a[aria-current]{background:#22252a;color:#fff}
body.dark table{color:#e4e6ea}body.dark th,body.dark td{border-color:#2a2d32}
/* dark pills: gallery toggle, filter chips, model chips */
body.dark .gtabs{background:#141619;border:1px solid #2c3036;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
body.dark .gtabs a{background:transparent;color:#c9cdd3;border:0}
body.dark .gtabs a:hover{color:#fff;background:#1f2226}
body.dark .gtabs a[aria-current]{background:var(--red);color:#fff;box-shadow:0 2px 10px rgba(200,16,46,.35)}
body.dark .chip{background:#1c1f23;color:#eceef1;border:1px solid #353a41;transition:background .2s,border-color .2s,color .2s}
body.dark .chip:hover{border-color:var(--red);color:#fff;background:#24282d}
body.dark .chip.on{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 2px 10px rgba(200,16,46,.3)}
body.dark .chip:focus-visible,body.dark .gtabs a:focus-visible{outline:2px solid #ff5a6e;outline-offset:2px}
body.dark .chips li{background:#1c1f23;color:#eceef1;border:1px solid #353a41;border-left:3px solid var(--red)}
body.dark .chips li a{color:#eceef1;text-decoration:none}body.dark .chips li a:hover{color:#ff5a6e}
/* dark gallery project cards */
body.dark .pgrid{columns:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem}
body.dark .pcard{margin:0;display:flex;flex-direction:column;background:#17191d;border:1px solid #2a2d32;color:#e4e6ea}
body.dark .pcard[hidden]{display:none}
body.dark .pcard:hover{border-color:#4a2026;box-shadow:0 10px 28px rgba(0,0,0,.55)}
body.dark .pcard img{aspect-ratio:4/3;height:auto;object-fit:cover;object-position:50% 62%;background:#0e0f11}
body.dark .pc-body{display:flex;flex-direction:column;flex:1;padding:1rem 1.15rem 1.2rem;border-top:3px solid var(--red)}
body.dark .pc-cat{color:#ff6b7f;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
body.dark .pc-body h2{color:#fff;font-size:1.12rem;line-height:1.3;margin:.35rem 0 .2rem}
body.dark .pc-meta{color:#9aa0a8;font-size:.85rem!important;font-weight:600}
body.dark .pc-body p:not(.pc-meta){color:#c9ccd1}
@media(max-width:600px){body.dark .pgrid{grid-template-columns:1fr}}
body.dark .chips li{border-left:1px solid #353a41;font-size:.88rem}body.dark .chips li:hover{border-color:var(--red)}
/* real photo slides: framed on dark so the studio backdrop never shows as a mismatched box */
.mh.illus .slide.photo picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:3% 3% 6% 10%;box-sizing:border-box}
.mh.illus .slide.photo img,body.dark .mh.illus .slide.photo img{position:static;width:auto;height:auto;max-width:100%;max-height:100%;padding:0;object-fit:contain;border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.6)}
@media(max-width:900px){.mh.illus .slide.photo picture{padding:2% 3% 8%}}
/* flicker-free crossfade: one composited container; only the 2 active slides are layered.
   outgoing (.prev) stays fully opaque underneath while incoming (.on) fades 0->1 on top. */
.mh-slides{isolation:isolate;transform:translateZ(0);background:#0e0f11}
.mh .slide{z-index:0;opacity:0;visibility:hidden;transition:none;transform:none}
.mh .slide.prev{z-index:1;opacity:1;visibility:visible;transition:none}
.mh .slide.on{z-index:2;visibility:visible;animation:mhfade 1.4s ease forwards;will-change:opacity}
.mh .slide.on.first{animation:none;opacity:1}
@keyframes mhfade{from{opacity:0}to{opacity:1}}
.mh .slide img{transform:none!important;transition:none!important}
.mh-dots{z-index:5}
@media(prefers-reduced-motion:reduce){.mh .slide.on{animation:none;opacity:1}}
/* mobile menu: solid full-width drawer under the header, above everything */
@media(max-width:1020px){
header.site{z-index:1000}
body.dark header.site nav#nav,header.site nav#nav{position:fixed;left:0;right:0;top:var(--hdr-h,64px);bottom:0;display:block;visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility 0s .2s;background:#0e0f11;border-top:1px solid #24272c;overflow-y:auto;overscroll-behavior:contain;z-index:1001}
body.dark header.site nav#nav.open,header.site nav#nav.open{visibility:visible;opacity:1;transform:none;transition:opacity .2s,transform .2s}
body.dark header.site nav#nav ul{display:flex;flex-direction:column;gap:0;padding:.5rem 5% 2rem;background:#0e0f11}
header.site nav#nav li a{display:flex;width:100%;min-height:52px;font-size:1.1rem;border-bottom:1px solid #24272c}
body.menu-open{overflow:hidden;touch-action:none}
}
/* backdrop-filter makes the header the containing block for position:fixed children, collapsing the drawer; drop it on mobile */
@media(max-width:1020px){body.dark header.site,header.site{backdrop-filter:none;-webkit-backdrop-filter:none;background:#0e0f11;transform:none;filter:none}}
/* dark-studio Cub photos: blend into the dark panel with a subtle frame */
.mh.illus .slide.photo.dark img,body.dark .mh.illus .slide.photo.dark img{border-radius:12px;box-shadow:0 0 0 1px #2a2d33,0 14px 36px rgba(0,0,0,.7)}
/* mobile header tagline between logo and Menu button */
.hdr-tag{display:none}
@media(max-width:1020px){
.hdr-tag{display:block;flex:1 1 auto;min-width:0;margin:0 .6rem;text-align:center;font-style:italic;font-weight:600;font-size:clamp(.68rem,3.1vw,.95rem);line-height:1.2;color:#e4e6ea;transition:opacity .15s}
body.menu-open .hdr-tag{opacity:0;visibility:hidden}
.hdr-tag{display:grid;align-items:center}
.hdr-tag .ht{grid-area:1/1;animation:htfade 10s ease-in-out infinite}
.hdr-tag .ht2{animation-delay:-5s}
}
@keyframes htfade{0%,42%{opacity:1}50%,92%{opacity:0}100%{opacity:1}}
@media(prefers-reduced-motion:reduce){.hdr-tag .ht{animation:none}.hdr-tag .ht2{opacity:0}}
@media(max-width:340px){.hdr-tag{font-size:.62rem;margin:0 .35rem}}
.topbar .tb-loc{display:none}@media(max-width:600px){.topbar .wrap span.tb-loc:first-child{display:inline}}
.rbar{background:#121417;border-top:1px solid #1e2125;border-bottom:1px solid #1e2125;padding:1.1rem 0}
.rbar .wrap{display:flex;align-items:center;gap:1.5rem}
.rb-score{display:flex;flex-direction:column;gap:.15rem;white-space:nowrap;font-size:.85rem;color:#c9ccd1}
.rb-score .stars{color:#f5b301;font-size:1.05rem;letter-spacing:2px}
.rb-slides{position:relative;flex:1;display:grid}
.rb-slide{grid-area:1/1;margin:0;opacity:0;transition:opacity 1.2s ease;display:flex;flex-direction:column;justify-content:center;text-align:center}
.rb-slide.on{opacity:1}
.rb-slide blockquote{margin:0;font-style:italic;color:#eceef0;font-size:1rem;line-height:1.5}
.rb-slide figcaption{margin-top:.3rem;font-size:.8rem;color:#9aa0a6}
.rb-link{white-space:nowrap;font-size:.85rem}
@media(max-width:800px){.rbar .wrap{flex-direction:column;gap:.7rem;text-align:center}.rb-score{align-items:center}.rb-slide blockquote{font-size:.93rem}}
@media(prefers-reduced-motion:reduce){.rb-slide{transition:none}}
/* models page cartoon collage (decorative) */
.collage{background:radial-gradient(ellipse at 50% 0,#1a1c20 0,#0b0c0e 70%)!important;border-top:1px solid #1e2125;overflow:hidden}
.collage h2{text-align:center}.collage .cl-sub{text-align:center;color:#a3a8b0;margin:-.3rem 0 2rem}
.cl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-auto-flow:dense;gap:1.1rem;padding:.5rem}
.cl-t{margin:0;border-radius:12px;overflow:hidden;background:#17191d;box-shadow:0 0 0 1px #2a2d33,0 10px 26px rgba(0,0,0,.6);transition:transform .35s ease,box-shadow .35s ease}
.cl-t img{display:block;width:100%;height:100%;aspect-ratio:10/7;object-fit:cover}
.cl-0{transform:rotate(-2deg)}.cl-1{transform:rotate(1.5deg)}.cl-2{transform:rotate(-1deg)}.cl-3{transform:rotate(2deg)}.cl-4{transform:rotate(-1.5deg)}.cl-5{transform:rotate(1deg)}
.cl-0,.cl-3{grid-column:span 2;grid-row:span 2}
.cl-t:hover{transform:rotate(0) scale(1.04);box-shadow:0 0 0 2px var(--red),0 16px 34px rgba(0,0,0,.7);z-index:1;position:relative}
@media(max-width:600px){.cl-grid{grid-template-columns:repeat(2,1fr);gap:.7rem}.cl-0,.cl-3{grid-column:span 2;grid-row:auto}}
@media(prefers-reduced-motion:reduce){.cl-t{transition:none}}
/* featured collage tiles */
.cl-grid .cl-0,.cl-grid .cl-3{grid-column:auto;grid-row:auto}
.cl-f{grid-column:span 2;grid-row:span 2;box-shadow:0 0 0 2px var(--red),0 18px 44px rgba(0,0,0,.75);z-index:1;position:relative}
.cl-fa{transform:rotate(-1.2deg)}.cl-fb{transform:rotate(1.2deg)}
@media(min-width:1000px){.cl-grid{grid-template-columns:repeat(5,1fr)}.cl-f{grid-column:span 3}.cl-fb{grid-column:3/span 3}}
@media(max-width:600px){.cl-f{grid-column:span 2;grid-row:auto}}
/* hero prev/next */
.mh-nav{position:absolute;z-index:6;top:50%;width:40px;height:40px;margin-top:-20px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(10,11,13,.45);color:#fff;cursor:pointer;opacity:.7;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:opacity .25s,background .25s,border-color .25s,transform .25s;padding:0}
.mh-nav:hover,.mh-nav:focus-visible{opacity:1;background:var(--red);border-color:var(--red);transform:scale(1.06)}
.mh-nav:focus-visible{outline:2px solid #fff;outline-offset:2px}
.mh-next{right:1rem}.mh-prev{left:13%}
@media(max-width:900px){.mh-nav{width:36px;height:36px;margin-top:-18px}.mh-prev{left:.8rem}.mh-next{right:.8rem}}
.mh.illus .wrap{pointer-events:none}.mh.illus .wrap *{pointer-events:auto}
/* footer mascot: always sits on top of the white parts bar, never over it */
.partsfit{position:relative;overflow:visible}
.partsfit .m-foot{position:absolute;top:auto;bottom:calc(100% + 4px);right:4%;width:96px;z-index:3}
@media(max-width:600px){.partsfit .m-foot{width:64px;right:3%}}
/* correction: mascot stands on the white bar's bottom edge (never crosses into the dark footer) */
.partsfit .m-foot{bottom:4px}
/* partner logos on dark backgrounds: white rounded pads */
body.dark .tk-logo,body.dark .kw-logo,body.dark .kt-logo{background:#fff;border-radius:10px;padding:.45rem .8rem;box-sizing:content-box;box-shadow:0 4px 14px rgba(0,0,0,.45)}
body.dark .kt-logo{padding:.55rem .9rem}
/* Kitaco kits block (tuning) */
.kkits{background:radial-gradient(ellipse at 50% 0,#17191d 0,#0b0c0e 70%)!important;border-top:1px solid #1e2125}
.kk-head{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}.kk-head h2{margin:.2rem 0 0}
.kk-intro{max-width:760px;color:#c9ccd1;margin:1rem 0 2rem}
.kk-group{margin:0 0 2.6rem;padding:1.5rem;border:1px solid #2a2d32;border-radius:14px;background:#121417}
.kk-group h3{margin:0;color:#fff}.kk-sub{color:#9aa0a8;font-size:.92rem;margin:.3rem 0 1.2rem}
.kk-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}
.kk-with{margin:1.4rem 0 .8rem;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#ff6b7f;display:flex;align-items:center;gap:.7rem}.kk-with::after{content:"";flex:1;height:1px;background:#2a2d32}
.kk-card{display:flex;flex-direction:column;background:#17191d;border:1px solid #2a2d32;border-radius:12px;overflow:hidden;transition:border-color .2s,transform .2s}
.kk-card:hover{border-color:#4a2026;transform:translateY(-2px)}
.kk-img{background:#fff;margin:.6rem .6rem 0;border-radius:9px;overflow:hidden}.kk-img img{display:block;width:100%;height:auto;aspect-ratio:5/4;object-fit:contain}
.kk-body{padding:.8rem 1rem 1rem;border-top:0}.kk-body h4{margin:.2rem 0 .35rem;color:#fff;font-size:1.02rem;line-height:1.3}.kk-body p{margin:0;color:#c9ccd1;font-size:.9rem}
.kk-code{display:inline-block;font:600 .75rem/1 ui-monospace,Menlo,Consolas,monospace;color:#f0b400;letter-spacing:.04em}
.kk-tag{display:inline-block;margin-right:.5rem;padding:.15rem .5rem;border-radius:999px;background:var(--red);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.kk-add .kk-img{max-height:none}
.kk-cta{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1rem;padding:1.3rem 1.5rem;border-radius:14px;background:linear-gradient(135deg,#8f0b20,#c8102e);margin-top:.5rem}.kk-cta p{margin:0;flex:1 1 320px;color:#fff}
.kk-fine{color:#7d838c;margin-top:1rem}
@media(max-width:600px){.kk-group{padding:1rem}.kk-row{grid-template-columns:1fr 1fr;gap:.7rem}.kk-body{padding:.6rem .7rem .8rem}.kk-body p{font-size:.82rem}}
.cl-fc{transform:rotate(-1deg)}
@media(min-width:1000px){.cl-fc{grid-column:1/span 3}}
/* smaller hero headline on mobile */
@media(max-width:900px){.mh h1{font-size:1.85rem}}
@media(max-width:600px){.mh h1{font-size:1.6rem;line-height:1.12;max-width:none}}

body.dark .mh.illus p.mh-more{font-size:1rem;line-height:1.55;margin-top:.75rem;color:#cfd2d7}

/* project prev/next links: never take mobile menu styling */
nav.pnav{position:static;background:none;border:0}
/* mobile: tighten gap between page intro and first content block */
@media(max-width:700px){.pagehead{padding-bottom:1rem}.pagehead p:last-child{margin-bottom:0}.pagehead+section{padding-top:1.1rem}}
/* restoration approach chooser */
.lead-sm{max-width:760px;font-size:1.05rem}
.approach{align-items:stretch;margin:1.5rem 0}
.ap-card{position:relative;border-top:4px solid var(--red);transition:box-shadow .2s,border-color .2s}
.ap-card.pick{box-shadow:0 0 0 2px var(--red);}
.ap-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.ap-suits{font-size:.95rem;color:var(--grey)}
.chooser{margin-top:.5rem}
.chooser .q p{font-weight:700;margin:.9rem 0 .5rem}
.chooser .opts{display:flex;flex-wrap:wrap;gap:.6rem}
.chooser .opts button{font:inherit;min-height:44px;padding:.6rem 1.1rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:inherit;cursor:pointer}
.chooser .opts button:hover{border-color:var(--red)}
.chooser .opts button.on{background:var(--red);border-color:var(--red);color:#fff}
.chooser .result{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line)}
.chooser .cta{display:flex;flex-wrap:wrap;gap:.6rem}
.chooser .btn.ghost{color:inherit;border-color:var(--line);cursor:pointer;font:inherit;font-weight:700}
.ap-note{color:var(--grey);font-size:.95rem;max-width:760px}
@media(max-width:600px){.chooser .opts button{width:100%;text-align:left}}
body.dark .chooser a.btn.res-btn{color:#fff}
/* workshop: tidy grid (Nov 2026) */
.pagehead+section.wsec{padding-top:1.5rem}
.wsec .lead{margin:0 0 1.2rem}
.wsec .wgrid{columns:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem;align-items:start}
.wsec .wtile{margin:0}
.wsec .wtile img{aspect-ratio:1/1;object-fit:cover;display:block}
.wsec .wtile figcaption{color:#c4c8cf;line-height:1.4;padding:.55rem .2rem 0}
@media(max-width:600px){.wsec .wgrid{grid-template-columns:1fr}.wsec .wtile img{aspect-ratio:4/3}}
.pagehead:has(+section.wsec){padding-bottom:1.2rem}
.pagehead:has(+section.wsec) p{margin-bottom:0}
.wsec .wgrid{max-width:1100px}
.eng-fig{max-width:560px;margin:2rem auto 0;padding:0 1rem}.eng-fig img{width:100%;height:auto;display:block}
.eng-fig figcaption{text-align:center;color:#c4c8cf;font-size:.95rem;padding-top:.6rem}
.expect{margin-top:1.5rem;border-left:4px solid var(--gold)}.expect p{margin:.7rem 0}.expect a{color:#ff5a6e}
.approach.g3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.eng-media{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;align-items:start;margin-top:2rem}
.eng-media .eng-fig{margin:0;padding:0;max-width:none}
.eng-gif figcaption{text-align:left}
.which{margin-top:1.2rem}.which h3{margin-top:0}
.which-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;margin:.8rem 0}
.which-opt{display:block;padding:1rem;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:inherit;transition:border-color .2s,background .2s}
.which-opt:hover{border-color:var(--red);background:rgba(200,16,46,.08)}
.which-opt strong{display:block;color:#fff;margin-bottom:.3rem}.which-opt span{font-size:.92rem;color:#c4c8cf}
body.dark .card .which-opt{color:inherit}
.which-foot{font-size:.92rem;color:var(--grey);margin-bottom:0}
html{scroll-behavior:smooth}
#approach,#engines{scroll-margin-top:96px}
/* restoration start chooser (redesign) */
.start .start-sub{max-width:62ch;color:#c4c8cf;margin:.4rem 0 1.4rem}
.start-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.2rem}
.start-tile{display:flex;flex-direction:column;background:#17191d;border:1px solid #2a2d32;border-radius:var(--r);overflow:hidden;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s}
.start-tile:hover,.start-tile:focus-visible{border-color:var(--red);transform:translateY(-2px)}
.start-tile img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.st-body{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 1.2rem 1.3rem}
.st-body strong{font-size:1.3rem;color:#fff}.st-body span{color:#c4c8cf}
.st-body em{font-style:normal;font-weight:700;color:#ff5a6e;margin-top:.3rem}
.start-links{margin:1.4rem 0 0;color:var(--grey);font-size:.95rem}.start-links a{color:#e4e6ea}
/* engine mini hero */
.eng-top{align-items:center}
.eng-hero{position:relative;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:#0e0f11;box-shadow:0 18px 40px rgba(0,0,0,.45);border:1px solid #2a2d32}
.eng-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s ease}
.eng-hero img.on{opacity:1}
.eh-dots{position:absolute;left:0;right:0;bottom:.8rem;display:flex;justify-content:center;gap:.5rem}
.eh-dots button{width:28px;height:28px;padding:0;border:0;background:none;cursor:pointer;position:relative}
.eh-dots button::after{content:"";position:absolute;inset:10px;border-radius:50%;background:rgba(255,255,255,.45)}
.eh-dots button.on::after{background:var(--red)}
@media(min-width:900px){.eng-top{grid-template-columns:1.15fr 1fr}}
.pagehead:has(+section.start){padding-bottom:1.75rem}
.pagehead+section.start{padding-top:1.75rem}
@media(max-width:700px){.pagehead:has(+section.start){padding-bottom:1rem}.pagehead+section.start{padding-top:1.1rem}}
/* review bookmark tab + dialog */
.rv-tab{position:fixed;right:0;top:46%;z-index:900;background:var(--gold);color:#1d1f22;border:0;cursor:pointer;font:inherit;font-weight:800;font-size:.85rem;letter-spacing:.04em;padding:1rem .55rem 1.5rem;border-radius:8px 0 0 8px;writing-mode:vertical-rl;transform:rotate(180deg);clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - 12px),0 100%);box-shadow:0 4px 14px rgba(0,0,0,.4);transition:padding .2s}
.rv-tab{transform:rotate(180deg) translateX(0)}.rv-tab:hover,.rv-tab:focus-visible{padding-right:.9rem}
.rv-tab span{display:block}
@media(max-width:700px){.rv-tab{top:auto;bottom:22%;font-size:.75rem;padding:.8rem .45rem 1.3rem}}
.rv-dlg{border:1px solid #2a2d32;border-radius:var(--r);background:#17191d;color:#e4e6ea;padding:0;width:min(520px,94vw);max-height:92vh}
.rv-dlg::backdrop{background:rgba(0,0,0,.7)}
.rv-form{padding:1.5rem;display:grid;gap:.8rem;position:relative}.rv-form h2{margin:0;padding-right:2rem}.rv-sub{margin:0;color:#c4c8cf;font-size:.95rem}
.rv-form label{display:grid;gap:.3rem;font-weight:600;font-size:.92rem}
.rv-form input:not([type=radio]):not([type=checkbox]),.rv-form textarea{font:inherit;background:#0e0f11;color:#e4e6ea;border:1px solid #2a2d32;border-radius:10px;padding:.65rem .75rem}
.rv-form .rv-chk{display:flex;gap:.5rem;align-items:flex-start;font-weight:400}
.rv-x{position:absolute;top:.6rem;right:.7rem;background:none;border:0;color:#c4c8cf;font-size:1.8rem;cursor:pointer;width:44px;height:44px}
.rv-stars{border:0;padding:0;margin:0;display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:.15rem}.rv-stars legend{font-weight:600;font-size:.92rem;margin-bottom:.2rem;float:left;width:100%}
.rv-stars input{position:absolute;opacity:0;width:1px;height:1px}.rv-stars label{font-size:2rem;color:#3a3d42;cursor:pointer;line-height:1}
.rv-stars input:checked~label,.rv-stars label:hover,.rv-stars label:hover~label{color:var(--gold)}
.rv-stars input:focus-visible+label{outline:2px solid var(--gold)}
.rv-status{margin:0;color:#ff8a98;min-height:1.2em}.hp{position:absolute;left:-9999px}
.rv-lbl{margin:0 0 -.5rem;font-weight:600;font-size:.92rem}
/* home reviews hero */
.rhero{background:radial-gradient(ellipse at 50% 0%,#1d1013 0%,#0e0f11 65%);border-top:1px solid #1e2125;border-bottom:1px solid #1e2125;padding:3.2rem 0 2.6rem;text-align:center}
.rh-head{display:flex;flex-direction:column;align-items:center;gap:.4rem;margin-bottom:1.4rem}
.rh-score{margin:0;color:#c9ccd1;font-size:.95rem}.rh-score .stars{color:var(--gold);letter-spacing:2px}
.rh-slides{display:grid;max-width:820px;margin:0 auto;min-height:12rem}
.rh-slide{grid-area:1/1;margin:0;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 0s 1s;display:flex;flex-direction:column;align-items:center;justify-content:center}
.rh-slide.on{opacity:1;visibility:visible;transition:opacity 1s ease}
.rh-slide .stars{color:var(--gold);font-size:1.3rem;letter-spacing:3px}
.rh-slide blockquote{margin:.8rem 0;font-size:clamp(1.2rem,2.4vw,1.65rem);line-height:1.45;color:#f2f3f5;font-weight:600}
.rh-slide figcaption{color:#a3a8b0;font-size:.95rem}.rh-slide figcaption b{color:#e4e6ea}
.rh-ctrl{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1.2rem}
.rh-prev,.rh-next{background:none;border:1px solid #2a2d32;color:#e4e6ea;border-radius:50%;width:40px;height:40px;font-size:1.3rem;cursor:pointer}
.rh-prev:hover,.rh-next:hover{border-color:var(--red)}
.rh-dots{display:flex}.rh-dots button{width:26px;height:26px;border:0;background:none;padding:0;cursor:pointer;position:relative}
.rh-dots button::after{content:"";position:absolute;inset:9px;border-radius:50%;background:#3a3d42}.rh-dots button.on::after{background:var(--red)}
.rh-links{margin:1rem 0 0;font-size:.92rem}.rh-links a{color:#e4e6ea}
@media(max-width:600px){.rhero{padding:2.4rem 0 2rem}.rh-slides{min-height:15rem}}
/* review tab v2: tombstone rising from bottom edge */
.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{top:auto;bottom:0;right:1.5rem;writing-mode:horizontal-tb;clip-path:none;transform:translateY(14px);border-radius:70px 70px 0 0;width:132px;padding:1.1rem .8rem 1.6rem;text-align:center;line-height:1.15;font-size:.82rem;box-shadow:0 -6px 18px rgba(0,0,0,.45),inset 0 0 0 3px #1d1f22,inset 0 0 0 5px #f0c22a;transition:transform .25s ease}
.rv-tab:hover,.rv-tab:focus-visible{transform:translateY(0)}
.rv-tab span{white-space:normal}
.rv-tab span::before{content:"";display:none}
@media(max-width:700px){.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{bottom:0;right:.75rem;width:104px;font-size:.72rem;padding:.85rem .6rem 1.4rem;border-radius:56px 56px 0 0}}
.rv-star{display:block;font-size:1.15rem;line-height:1;margin-bottom:.15rem}
.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{width:118px;height:132px;padding:1.6rem .7rem 1rem;border-radius:59px 59px 4px 4px;display:flex;align-items:flex-start;justify-content:center;transform:translateY(18px)}
.rv-tab:hover,.rv-tab:focus-visible{transform:translateY(4px)}
@media(max-width:700px){.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{width:92px;height:104px;padding:1.15rem .5rem .8rem;border-radius:46px 46px 4px 4px;transform:translateY(16px)}}
/* review tab v3: slim side pill */
.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{top:50%;bottom:auto;right:0;width:auto;height:auto;display:flex;align-items:center;gap:.35rem;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);clip-path:none;border-radius:0 999px 999px 0;padding:.9rem .32rem .9rem .38rem;font-size:.74rem;letter-spacing:.06em;box-shadow:0 2px 10px rgba(0,0,0,.45);opacity:.92;transition:opacity .2s,padding .2s}
.rv-tab:hover,.rv-tab:focus-visible{opacity:1;padding-left:.6rem}
.rv-tab span{display:flex;align-items:center;gap:.3rem}
.rv-star{display:inline;font-size:.85rem;margin:0}
@media(max-width:700px){.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{top:auto;bottom:24%;transform:rotate(180deg);right:0;width:auto;height:auto;padding:.7rem .22rem .7rem .26rem;font-size:.66rem;border-radius:0 999px 999px 0}}
/* pill v3.1: sit low on the right edge, clear of hero arrows */
@media(min-width:701px){.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{top:auto;bottom:12vh;transform:rotate(180deg)}}
@media(max-width:1180px){.mh .mh-next{right:2.4rem}}
.bike-fig{max-width:900px;margin:2rem auto 0}.bike-fig img{width:100%;height:auto;display:block;aspect-ratio:4/3;object-fit:cover}
.bike-fig figcaption{text-align:center;color:#c4c8cf;font-size:.95rem;padding-top:.6rem}.bike-fig a{color:#ff5a6e}
@media(min-width:900px){.bike-fig img{aspect-ratio:16/9}}
.rv-line{padding:1.5rem 0 2.5rem;text-align:center}.rv-line p{margin:0;color:#c4c8cf}.rv-line .stars{color:var(--gold);letter-spacing:2px;margin-right:.3rem}.rv-line a{color:#e4e6ea}
.rh-dots{flex-wrap:wrap;justify-content:center;max-width:70vw}@media(max-width:600px){.rh-dots{display:none}.rh-ctrl{gap:1.5rem}}
/* paint & plating */
.pp-pick{padding:1.5rem 0 0}.pagehead+section.pp-pick{padding-top:1.5rem}
.pp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}
.pp-tile{display:block;padding:1.1rem 1.2rem;border:1px solid #2a2d32;border-left:4px solid var(--red);border-radius:12px;background:#17191d;text-decoration:none;color:inherit;transition:border-color .2s}
.pp-tile:hover{border-color:var(--red)}.pp-tile strong{display:block;color:#fff;font-size:1.15rem}.pp-tile span{color:#c4c8cf;font-size:.92rem}
.pp-slot{margin:0;aspect-ratio:4/3;border:2px dashed #3a3d42;border-radius:var(--r);display:flex;align-items:center;justify-content:center;background:#131518;color:#8a9099;font-size:.95rem;text-align:center;padding:1rem}
#paint,#zinc,#chrome{scroll-margin-top:96px}
.pp-cta .cta{display:flex;flex-wrap:wrap;gap:.6rem}
.pagehead:has(+section.pp-pick){padding-bottom:1.5rem}
.pp-standalone{margin:1.2rem 0 0;padding:1rem 1.2rem;border-left:4px solid var(--gold);background:#17191d;border-radius:0 12px 12px 0;color:#d8dbe0;max-width:900px}
.tb-flag{font-style:normal}
.ap-mix{margin:1.25rem 0 1.75rem}.ap-mix p{margin:.5rem 0 0;color:var(--grey)}
.tun-head .eng-hero{max-width:560px;justify-self:end;width:100%}@media(max-width:900px){.tun-head .eng-hero{justify-self:stretch;max-width:none}}
.uk-flag{display:inline-block;width:1.35em;height:auto;vertical-align:-.12em;margin-left:.15em;border-radius:1px;box-shadow:0 0 0 1px rgba(255,255,255,.15)}
@media(min-width:1600px){.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{font-size:.9rem;padding:1.15rem .45rem 1.15rem .5rem;gap:.45rem}.rv-tab:hover,.rv-tab:focus-visible{padding-left:.75rem}}
@media(min-width:1920px){.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{font-size:1.02rem;padding:1.35rem .55rem 1.35rem .6rem}.rv-tab:hover,.rv-tab:focus-visible{padding-left:.9rem}}
@media(min-width:2400px){.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{font-size:1.15rem;padding:1.6rem .65rem 1.6rem .7rem}.rv-tab:hover,.rv-tab:focus-visible{padding-left:1rem}}
/* pill v3.2: bigger on phones */
@media(max-width:700px){.rv-tab,.rv-tab:hover,.rv-tab:focus-visible{bottom:20%;min-width:36px;padding:1.05rem .5rem 1.05rem .55rem;font-size:.82rem;gap:.4rem;letter-spacing:.05em;opacity:1;box-shadow:0 3px 14px rgba(0,0,0,.55)}.rv-star{font-size:1rem}}
.kk-fit{margin-top:.45rem!important;font-size:.78rem!important;color:#f0b400!important}.kk-group .kk-with:first-of-type{margin-top:.6rem}

.ws-intro{max-width:1100px;margin:0 0 1.6rem;border-left:4px solid var(--gold);padding:1.1rem 1.4rem}.ws-intro p{margin:0;font-size:1.08rem;line-height:1.6;color:#d8dbe0;max-width:70ch}
@media(max-width:600px){.ws-intro{padding:1rem 1.1rem;margin-bottom:1.3rem}.ws-intro p{font-size:1rem}}
body.dark .card.ws-intro{border-left:4px solid var(--gold)}
.pf-show{align-self:start}.pf-slides{display:grid}
.pf-slide{grid-area:1/1;margin:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility 0s .8s}
.pf-slide.on{opacity:1;visibility:visible;transition:opacity .8s ease}
.pf-slide img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r);display:block}
.pf-slide figcaption{color:#c4c8cf;font-size:.92rem;padding:.55rem .2rem 0}
.pf-ctrl{margin-top:.6rem}
@media(prefers-reduced-motion:reduce){.pf-slide,.pf-slide.on{transition:none}}
/* shared in-page slideshow (.ss) – Tuning, Engines, Paint, home Customers */
.ss{position:relative;width:100%;align-self:start}
.ss-stage{position:relative;display:grid}
.ss-slide{grid-area:1/1;margin:0;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0s .9s}
.ss-slide.on{opacity:1;visibility:visible;transition:opacity .9s ease}
.ss-frame{display:block;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:#0e0f11;border:1px solid #2a2d32;box-shadow:0 18px 40px rgba(0,0,0,.45);cursor:zoom-in}
.ss-frame img{width:100%;height:100%;object-fit:cover;display:block}
.ss-slide figcaption{color:#c4c8cf;font-size:.92rem;line-height:1.4;padding:.6rem .2rem 0;min-height:2.9em}
.ss-nav{position:absolute;z-index:3;top:calc((100% - 2.9em - .6rem) / 2);width:40px;height:40px;margin-top:-20px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(10,11,13,.45);color:#fff;cursor:pointer;opacity:.8;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:opacity .25s,background .25s,border-color .25s,transform .25s;padding:0;font-size:1.5rem;line-height:1}
.ss-nav:hover,.ss-nav:focus-visible{opacity:1;background:var(--red);border-color:var(--red);transform:scale(1.06)}
.ss-nav:focus-visible{outline:2px solid #fff;outline-offset:2px}
.ss-prev{left:.8rem}.ss-next{right:.8rem}
.ss-dots{position:absolute;z-index:3;left:0;right:0;top:calc(100% - 2.9em - .6rem - 2.6rem);display:flex;justify-content:center;gap:.1rem;pointer-events:none}
.ss-dots button{width:26px;height:26px;padding:0;border:0;background:none;cursor:pointer;position:relative;pointer-events:auto}
.ss-dots button::after{content:"";position:absolute;inset:9px;border-radius:50%;background:rgba(255,255,255,.5);box-shadow:0 0 0 1px rgba(0,0,0,.25)}
.ss-dots button.on::after{background:var(--red)}
@media(max-width:900px){.ss-nav{width:36px;height:36px;margin-top:-18px}}
@media(prefers-reduced-motion:reduce){.ss-slide,.ss-slide.on{transition:none}.ss-nav{transition:none}}
.tun-head .ss{max-width:560px;justify-self:end}@media(max-width:900px){.tun-head .ss{justify-self:stretch;max-width:none}}
.rv-ph{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:inherit}.rh-slide .rv-ph{justify-content:center;margin:-.2rem 0 .7rem}
.rv-ph a{display:block;border-radius:6px;overflow:hidden;border:1px solid #3a3f45;line-height:0;transition:transform .15s,border-color .15s}
.rv-ph a:hover,.rv-ph a:focus-visible{transform:scale(1.05);border-color:var(--gold)}
.rv-ph img{width:64px;height:64px;object-fit:cover}
.rv-note{margin:-.35rem 0 .2rem;font-size:.8rem;color:#9aa0a8;line-height:1.4}
/* slideshow: only the active caption is visible (no overlap during crossfade) */
.ss-slide figcaption{opacity:0;transition:opacity .25s}.ss-slide.on figcaption{opacity:1;transition:opacity .35s .55s}
.ss-frame img{background:#15171a}
@media(prefers-reduced-motion:reduce){.ss-slide figcaption{transition:none}}
/* Review tiles (reviews_widget.py) */
.rt{background:radial-gradient(ellipse at 50% 0%,#1d1013 0%,#0e0f11 65%);border-top:1px solid #1e2125;border-bottom:1px solid #1e2125;padding:2.2rem 0 1.8rem;color:#e4e6ea}
.rt-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.8rem 1.2rem;margin-bottom:1.1rem}
.rt-head h2{margin:.2rem 0 .25rem;color:#fff;font-size:clamp(1.4rem,2.6vw,1.9rem)}
.rt-score{margin:0;color:#c9ccd1;font-size:.95rem}.rt-stars{color:var(--gold);letter-spacing:1px}
.rt-cta{display:flex;flex-wrap:wrap;gap:.6rem}
.rt-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 1.15rem;border-radius:999px;border:1px solid var(--red);background:var(--red);color:#fff;font:inherit;font-weight:700;font-size:.92rem;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,opacity .2s,transform .15s;white-space:nowrap}
.rt-btn:hover:not(:disabled),.rt-btn:focus-visible{background:#e0142f;border-color:#e0142f;transform:translateY(-1px)}
.rt-btn.ghost{background:transparent;border-color:#3a3f45;color:#e4e6ea}.rt-btn.ghost:hover{border-color:var(--gold);background:transparent;color:#fff}
.rt-btn:disabled{opacity:.35;cursor:default;background:#2a2d32;border-color:#2a2d32}
.rt-btn:focus-visible,.rt-track:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.rt-track{--n:4;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--n) - 1)*1rem)/var(--n));column-gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;padding:2px 0 4px;border-radius:var(--r)}
.rt-track::-webkit-scrollbar{display:none}
.rt-tile{scroll-snap-align:start;display:flex;flex-direction:column;gap:.65rem;background:#1a1d21;border:1px solid #2c3035;border-top:3px solid var(--red);border-radius:var(--r);padding:1rem 1.05rem;min-width:0}
.rt-hd{display:flex;align-items:center;gap:.65rem}
.rt-av{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;font-size:1.05rem}
.rt-who{display:flex;flex-direction:column;min-width:0;line-height:1.25}.rt-who b{color:#fff;font-size:.97rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rt-meta{font-size:.8rem;color:#9aa0a8}.rt-meta .rt-stars{font-size:.82rem}
.rt-badge{margin-left:auto;flex:none;font-size:.7rem;font-weight:700;padding:.2rem .5rem;border-radius:999px;background:#25282d;color:#c9ccd1;border:1px solid #33373c}
.rt-badge.g b{color:#4285f4;font-weight:900}.rt-badge.site{background:var(--red);border-color:var(--red);color:#fff}
.rt-txt{margin:0;font-size:.92rem;line-height:1.55;color:#e6e8eb;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(1.55em*5)}
.rt-ft{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:44px}
.rt-more{background:none;border:0;padding:.6rem 0;min-height:44px;color:var(--gold);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.rt-more[hidden]{visibility:hidden;display:block}
.rt-ph{display:flex;gap:.35rem}.rt-ph a,.rt-ph button{display:block;line-height:0;border-radius:8px;overflow:hidden;border:1px solid #3a3f45;padding:0;background:none;cursor:zoom-in;transition:border-color .15s,transform .15s}
.rt-ph a:hover,.rt-ph button:hover{border-color:var(--gold);transform:scale(1.05)}.rt-ph img{width:44px;height:44px;object-fit:cover}
.rt-ph.big img{width:96px;height:96px}
.rt-ctrl{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.1rem}
.rt-page{font-size:.9rem;color:#c9ccd1;min-width:7.5em;text-align:center}
.rt-dlg{max-width:min(620px,92vw);width:100%;border:1px solid #33373c;border-top:3px solid var(--red);border-radius:var(--r);background:#1a1d21;color:#e6e8eb;padding:1.4rem 1.4rem 1.2rem}
.rt-dlg::backdrop{background:rgba(0,0,0,.7)}
.rt-dlg .rt-hd{padding-right:2.2rem}.rt-full{font-size:1rem;line-height:1.65;white-space:pre-line;margin:1rem 0}
.rt-x{position:absolute;top:.5rem;right:.5rem;width:44px;height:44px;border-radius:50%;border:0;background:none;color:#fff;font-size:1.6rem;cursor:pointer}.rt-x:hover{color:var(--gold)}
@media(max-width:999px){.rt-track{--n:2}}
@media(max-width:699px){.rt{padding:1.6rem 0 1.3rem}.rt-track{grid-auto-columns:86%;column-gap:.75rem}.rt-head{align-items:flex-start}.rt-cta{width:100%}.rt-cta .rt-btn{flex:1}.rt-ctrl{gap:.5rem}.rt-ctrl .rt-btn{flex:1;padding:0 .6rem}.rt-page{min-width:6em;font-size:.85rem}}
@media(prefers-reduced-motion:reduce){.rt-btn,.rt-ph a{transition:none}}
a.rt-btn,a.rt-btn:visited,a.rt-btn:hover{color:#fff}
.rt-meta{white-space:nowrap}
@media(min-width:1000px){.rt-badge.g{padding:0;width:26px;height:26px;display:grid;place-items:center;font-size:0}.rt-badge.g b{font-size:.95rem}}
.rt a.rt-btn:not(.ghost){color:#fff!important}
.jb02 .grid{align-items:start}.jb02 .jb-price{margin-top:1rem}.jb02 .jb-price h3{margin-top:0}.jb02 .jb-price p:last-child{margin-bottom:0}
.jb-gal{position:sticky;top:calc(var(--hdr-h,80px) + 1rem)}.jb-link{margin:.6rem 0 0;font-weight:600}
@media(max-width:900px){.jb-gal{position:static}}
/* Form validation: readable on dark theme, never light backgrounds */
.cform [aria-invalid=true],body.dark .cform [aria-invalid=true],.rv-form [aria-invalid=true]{background:#111316!important;color:#e9ebee!important;border-color:var(--red)!important;box-shadow:0 0 0 2px rgba(200,16,46,.35)}
.cform input[type=checkbox][aria-invalid=true]{outline:2px solid var(--red);outline-offset:2px}
.ferr{margin:.35rem 0 0;color:#ff6b7d;font-size:.86rem;font-weight:600}
body.dark .fstatus.err{color:#ff6b7d}body.dark .fstatus.ok{color:#5fd38a}
