/* R&R Luxury Wraps · Garage build v2 */
@font-face{font-family:"Manrope";src:url(../assets/fonts/Manrope.woff2) format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:"Cormorant";src:url(../assets/fonts/Cormorant-Italic.woff2) format("woff2");font-style:italic;font-weight:300 700;font-display:swap}
:root{
  --bg:#09090B;--bg2:#0F1013;--panel:#121317;--graphite:#2B2D31;--line:rgba(255,255,255,.09);--line2:rgba(255,255,255,.16);
  --fg:#EDECEA;--mute:#A3A5AB;--mute2:#7C7F86;
  --red:#C0283F;--mid:#4A60B8;--chrome:#C9CBD0;--gold:#DCAF46;--gold-hi:#EBCB74;--gold-lo:#A9822C;
  --grad:linear-gradient(90deg,#C0283F,#4A60B8);
  --gold-grad:linear-gradient(180deg,#EED07E 0%,#DCAF46 48%,#B88A2F 100%);
  --ease:cubic-bezier(.2,.7,.1,1);--spring:cubic-bezier(.34,1.56,.64,1);
  --pad:clamp(18px,5vw,72px);--hud:58px;--cb:72px;--safe:env(safe-area-inset-bottom,0px)
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--bg);scroll-behavior:smooth;scroll-padding-top:calc(var(--hud) + 12px);-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--fg);font-family:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;-webkit-tap-highlight-color:transparent;padding-bottom:calc(var(--cb) + var(--safe))}
img,svg,canvas{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;touch-action:manipulation}
a{color:inherit;text-decoration:none}
em{font-family:Cormorant,Georgia,serif;font-style:italic;font-weight:500;letter-spacing:-.01em}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:8px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}
.skip{position:fixed;left:12px;top:-60px;z-index:200;background:var(--fg);color:#000;padding:10px 16px;border-radius:8px;font-weight:600}.skip:focus{top:12px}
.wrap{width:100%;max-width:1320px;margin:0 auto;padding:0 var(--pad)}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mute)}
.pip{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px rgba(220,175,70,.8);flex:none}
.h2{font-weight:300;font-size:clamp(38px,6vw,84px);line-height:1;letter-spacing:-.03em;margin-top:16px}
.h2 em{font-size:1.08em}
.h3{font-weight:500;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.02em;line-height:1.1}
.lede{font-size:clamp(16px,1.4vw,19px);line-height:1.6;color:#C9CACE;max-width:44ch;margin-top:18px}
kbd{font:600 10px/1 Manrope,sans-serif;letter-spacing:.04em;color:var(--mute);border:1px solid var(--line2);border-bottom-width:2px;border-radius:5px;padding:3px 5px;min-width:18px;text-align:center;display:inline-block}
.ico{width:18px;height:18px;fill:currentColor;flex:none}

/* ---------------- HUD ---------------- */
.hud{position:fixed;inset:0 0 auto;z-index:60;height:var(--hud);display:flex;align-items:center;gap:12px;padding:0 14px 0 12px;background:rgba(9,9,11,.72);backdrop-filter:saturate(1.4) blur(16px);-webkit-backdrop-filter:saturate(1.4) blur(16px);border-bottom:1px solid var(--line)}
.hud-logo{flex:none;display:block;padding:4px}
.hud-logo img{height:42px;width:auto;filter:drop-shadow(0 2px 10px rgba(220,175,70,.18))}
.hud-steps{list-style:none;display:flex;gap:4px;flex:1;min-width:0;justify-content:center}
.hud-steps button{display:flex;align-items:center;gap:6px;height:34px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mute2);transition:color .3s,background .3s}
.hud-steps .n{font-variant-numeric:tabular-nums}
.hud-steps .l{display:none}
.hud-steps button.done{color:var(--chrome)}
.hud-steps button[aria-current=step]{color:#0A0A0C;background:var(--fg)}
.hud-steps button[aria-current=step] .l{display:inline}
.hud-bar{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:transparent}
.hud-bar i{display:block;height:100%;width:25%;background:var(--grad);box-shadow:0 0 14px rgba(74,96,184,.7);transition:width .7s var(--ease)}
.hud-nav{display:flex;gap:22px;font-size:13px;font-weight:500;letter-spacing:.02em}
.hud-nav a{color:#CFD0D3;transition:color .25s}.hud-nav a:hover{color:#fff}
.hud-nav a:not(:first-child){display:none}
.hud .call-sm{display:none}

/* ---------------- CALL / SMS BUTTONS ---------------- */
.call{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#1B1405;background:var(--gold-grad);box-shadow:0 1px 0 rgba(255,255,255,.55) inset,0 -2px 0 rgba(0,0,0,.18) inset,0 12px 34px -12px rgba(220,175,70,.75);transition:transform .25s var(--spring),box-shadow .3s,filter .3s;cursor:pointer;user-select:none;-webkit-user-select:none;overflow:hidden;isolation:isolate}
.call::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%) no-repeat;background-size:250% 100%;background-position:140% 0;z-index:-1;animation:glint 4.5s var(--ease) infinite}
@keyframes glint{0%,55%{background-position:140% 0}85%,100%{background-position:-40% 0}}
.call:hover{filter:brightness(1.06);transform:translateY(-1px)}
.call:active,.call.press{transform:scale(.96)}
.call-t{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}
.call-t small{font-size:.68em;font-weight:600;letter-spacing:.08em;opacity:.8;text-transform:none}
.call-sm{height:38px;padding:0 16px;font-size:12px}
.call-lg{height:58px;padding:0 30px;font-size:15px}
.call-xl{width:100%;height:68px;font-size:18px;letter-spacing:.08em;border-radius:18px}
.call-xl .ico{width:24px;height:24px}
.call-bar{height:50px;padding:0 20px;font-size:14px;flex:none}
.call.is-off{color:#C9CBD0;background:linear-gradient(180deg,#1C1D21,#141518);box-shadow:inset 0 0 0 1px rgba(220,175,70,.38);cursor:not-allowed}
.call.is-off::after{display:none}
.call.is-off .ico{color:var(--gold)}
.call.is-off .call-t small{color:var(--gold);opacity:1}
.call.is-off:hover{transform:none;filter:none}
.sms{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:54px;border-radius:16px;font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg);background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px rgba(201,203,208,.35);transition:background .3s,box-shadow .3s,transform .25s var(--spring);cursor:pointer}
.sms:hover{background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px var(--chrome)}
.sms:active{transform:scale(.97)}
.sms.is-off{color:var(--mute);cursor:not-allowed;box-shadow:inset 0 0 0 1px var(--line2)}
.sms.is-off:hover{background:rgba(255,255,255,.03)}
.sms .call-t{align-items:center}

/* ---------------- GARAGE ---------------- */
.garage{position:relative;padding-top:var(--hud);min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(120% 60% at 50% 0%,#15161b 0%,var(--bg) 60%)}
.stage{position:relative;height:clamp(250px,37svh,340px);transition:height .7s var(--ease);overflow:hidden;flex:none;touch-action:pan-y;isolation:isolate}
.stage-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.stage-bg .spot{position:absolute;inset:-10% -20% 20%;background:radial-gradient(50% 55% at 50% 30%,rgba(201,203,208,.13),rgba(201,203,208,0) 70%)}
.stage-bg .grid{position:absolute;left:-50%;right:-50%;bottom:-6%;height:52%;background-image:repeating-linear-gradient(90deg,rgba(201,203,208,.09) 0 1px,transparent 1px 64px),repeating-linear-gradient(0deg,rgba(201,203,208,.07) 0 1px,transparent 1px 44px);transform:perspective(380px) rotateX(64deg);transform-origin:50% 100%;-webkit-mask-image:linear-gradient(0deg,#000 10%,transparent 92%);mask-image:linear-gradient(0deg,#000 10%,transparent 92%);animation:gridrun 6s linear infinite}
@keyframes gridrun{to{background-position:0 0,0 44px}}
.stage-bg .horizon{position:absolute;left:8%;right:8%;top:66%;height:1px;background:linear-gradient(90deg,transparent,rgba(192,40,63,.7) 30%,rgba(74,96,184,.8) 70%,transparent);box-shadow:0 0 22px 2px rgba(74,96,184,.35)}
.readout{position:absolute;left:var(--pad);top:16px;z-index:4;pointer-events:none;max-width:62%}
.ro-k{font-size:10px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--mute2)}
.ro-name{font-weight:300;font-size:clamp(26px,4vw,52px);letter-spacing:-.03em;line-height:1.02;margin-top:6px;transition:opacity .25s}
.ro-sub{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--chrome);margin-top:6px}
.readout.flash .ro-name{animation:roflash .5s var(--ease)}
@keyframes roflash{0%{opacity:0;transform:translateY(6px)}100%{opacity:1;transform:none}}
.ro-code{position:absolute;right:var(--pad);top:18px;z-index:4;text-align:right;pointer-events:none}
.ro-code span{display:block;font-size:10px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--mute2)}
.ro-code b{display:block;font-size:13px;font-weight:700;letter-spacing:.1em;color:var(--gold);margin-top:6px;font-variant-numeric:tabular-nums}

.viewport{position:absolute;left:50%;bottom:10%;width:min(112%,1180px);aspect-ratio:16/9;transform:translateX(-50%);z-index:2;transition:transform 1s var(--ease)}
.stage[data-step="2"] .viewport{transform:translateX(-50%) scale(1.04)}
.stage[data-step="3"] .viewport{transform:translateX(-50%) scale(1.06)}
.stage[data-step="4"] .viewport{transform:translateX(-50%) scale(1.02)}
.veh{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateX(16%) scale(.97);filter:blur(4px);transition:opacity .55s var(--ease),transform .9s var(--ease),filter .6s var(--ease),visibility 0s .9s}
.veh.on{opacity:1;visibility:visible;transform:none;filter:none;transition:opacity .55s var(--ease),transform .9s var(--ease),filter .6s var(--ease),visibility 0s}
.veh.leave{transform:translateX(-18%) scale(.97)}

/* car rig: concept illustration + mask tint */
.veh-car{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 94%,transparent 100%),linear-gradient(180deg,transparent 0,#000 30%,#000 86%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 94%,transparent 100%),linear-gradient(180deg,transparent 0,#000 30%,#000 86%,transparent 100%);mask-composite:intersect}
.rig{position:absolute;inset:0;transform:translate(-11%,5%) scale(1.04)}
.rig>*{position:absolute;inset:0;width:100%;height:100%}
.rig img{object-fit:fill;user-select:none;-webkit-user-select:none;pointer-events:none}
.rig .lift,.rig .tint,.rig .chromefx,.rig .decal,.rig .spec,.rig .sweep,.rig .wipe{-webkit-mask-image:url(../assets/img/car-mask-alpha.png);mask-image:url(../assets/img/car-mask-alpha.png);-webkit-mask-size:100% 100%;mask-size:100% 100%}
.rig .lift{opacity:0;transition:filter .8s var(--ease),opacity .8s var(--ease)}
.rig .tint{mix-blend-mode:color;opacity:0;background-size:300% 100%;transition:background-color .8s var(--ease),opacity .8s var(--ease)}
.rig .tint.shift{animation:shiftpan 7s ease-in-out infinite alternate}
@keyframes shiftpan{from{background-position:0 0}to{background-position:100% 0}}
.rig .chromefx{mix-blend-mode:overlay;opacity:0;background:linear-gradient(180deg,#fff 0%,#e9ebef 36%,#1a1b1f 50%,#2a2c31 56%,#cfd2d8 74%,#fff 100%);transition:opacity .8s var(--ease)}
.rig .decal{opacity:0;background:linear-gradient(176deg,transparent 0 56%,var(--dc,#C0283F) 56% 62%,transparent 62% 64%,var(--dc2,#DCAF46) 64% 65.2%,transparent 65.2%);transition:opacity .6s var(--ease)}
.rig .spec{mix-blend-mode:screen;opacity:var(--spo,.6);background:radial-gradient(ellipse 26% 9% at var(--mx,62%) var(--my,46%),rgba(255,255,255,var(--si,.5)),rgba(255,255,255,0) 100%);transition:opacity .6s}
.rig .sweep{mix-blend-mode:screen;opacity:var(--swo,.3);background:linear-gradient(100deg,transparent 42%,rgba(255,255,255,.9) 50%,transparent 58%) no-repeat;background-size:250% 100%;animation:sweep 6.5s var(--ease) infinite;transition:opacity .6s}
.rig .wipe{mix-blend-mode:screen;opacity:0;background:linear-gradient(100deg,transparent 40%,rgba(255,255,255,.95) 50%,transparent 60%) no-repeat;background-size:300% 100%;background-position:120% 0}
.veh.wipe-go .rig .wipe{animation:wipe .9s var(--ease)}
@keyframes wipe{0%{opacity:1;background-position:120% 0}100%{opacity:1;background-position:-20% 0}}
@keyframes sweep{0%{background-position:130% 0}60%,100%{background-position:-30% 0}}
.rig .trim{pointer-events:none}
.rig .trim path{fill:none;stroke:var(--trim,#d9dbdf);stroke-width:3.2;stroke-linecap:round;opacity:0;transition:opacity .6s,stroke .6s}
.veh.trim-on .rig .trim path{opacity:1;stroke-width:5}
.veh.trim-pulse .rig .trim path{animation:trimpulse 1.6s var(--ease) 2}
@keyframes trimpulse{50%{stroke-width:9;filter:drop-shadow(0 0 6px var(--trim))}}

/* vector vehicles */
.vsvg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.vsvg .shadow{fill:#000;opacity:.7;filter:blur(10px)}
.vsvg .body{fill:var(--paint,#9B1C2C);transition:fill .8s var(--ease)}
.vsvg .shade{opacity:var(--shade,1);transition:opacity .6s}
.vsvg .side{opacity:.9}
.vsvg .spec{fill:#fff;opacity:var(--spo,.45);filter:blur(3px);transition:opacity .6s}
.vsvg .spec-hi{opacity:calc(var(--spo,.45) * .9)}
.vsvg .line{fill:none;stroke:#000;stroke-opacity:.38;stroke-width:2}
.vsvg .rocker{fill:#000;opacity:.35}
.vsvg .glass{fill:#0c0f15;stroke:none}
.veh-truck .glass{fill:url(#tGlass)}.veh-van .glass{fill:url(#vGlass)}
.vsvg .glass-hi{fill:#fff;opacity:.08}
.vsvg .trim-s{fill:none;stroke:var(--trim,url(#tTrimChrome));stroke-width:5;stroke-linejoin:round;transition:stroke .6s}
.vsvg .trim-f{fill:var(--trimf,url(#tTrimChrome));transition:fill .6s}
.veh-van{--trim:#1b1c20;--trimf:#1b1c20}
.vsvg .grille-bars path{stroke:#000;stroke-opacity:.5;stroke-width:3}
.vsvg .lamp{fill:#dfe6f2}
.vsvg .lamp-glow{fill:#fff;opacity:.55;filter:blur(6px)}
.vsvg .tail{fill:#a3101f}
.vsvg .tire{fill:#0b0b0c;stroke:#1d1d20;stroke-width:4}
.vsvg .rimface{fill:#141519;stroke-width:6}
.veh-truck .rimface{stroke:url(#tRim)}.veh-van .rimface{stroke:url(#vRim);fill:#2a2c31}
.veh-truck .spokes{fill:url(#tRim)}.veh-van .spokes{fill:#7d8087}
.vsvg .hub{fill:#2b2d31;stroke:#9a9ca2;stroke-width:2}
.vsvg .rim{transform-box:fill-box;transform-origin:center}
.veh.on.arrive .rim{animation:spin 1s var(--ease)}
@keyframes spin{from{transform:rotate(-540deg)}to{transform:rotate(0)}}
.vsvg .decals{opacity:0;transition:opacity .6s var(--ease)}
.veh.decals-on .vsvg .decals{opacity:1}
.vsvg .dc-a{fill:var(--dc,#C0283F);transition:fill .6s}
.vsvg .dc-b{fill:var(--dc2,#DCAF46);transition:fill .6s}
.vsvg .dc-t{font:800 34px Manrope,sans-serif;letter-spacing:.14em;fill:var(--dct,#fff);text-anchor:middle}
.vsvg .dc-t-lg{font-size:62px;letter-spacing:.1em}
.vsvg .dc-s{font:700 18px Manrope,sans-serif;letter-spacing:.3em;fill:var(--dct,#fff);opacity:.8;text-anchor:middle}
.vsvg .paintable{transition:filter .6s}
.veh.matte .vsvg .paintable{filter:saturate(.92) brightness(.97)}
.veh.trim-pulse .vsvg .trimset{animation:trimglow 1.6s var(--ease) 2}
@keyframes trimglow{50%{filter:drop-shadow(0 0 8px var(--glow,#DCAF46))}}
.veh-svg .sweep{fill:#fff;opacity:0;filter:blur(18px)}
.veh-svg .sweep{animation:svgsweep 6.5s var(--ease) infinite;opacity:var(--swo,.25)}
@keyframes svgsweep{0%{transform:translateX(0) skewX(-18deg)}60%,100%{transform:translateX(1900px) skewX(-18deg)}}
.veh-svg.wipe-go .sweep{animation:svgsweep .9s var(--ease);opacity:.9}

/* photo */
.veh-photo{display:flex;align-items:center;justify-content:center}
.veh-photo canvas{max-width:86%;max-height:92%;width:auto;height:auto;border-radius:14px;box-shadow:0 30px 80px -20px #000,0 0 0 1px var(--line2)}

.stamp{position:absolute;left:50%;top:46%;z-index:5;transform:translate(-50%,-50%) rotate(-6deg) scale(1.8);opacity:0;pointer-events:none;font-weight:800;font-size:clamp(18px,3vw,30px);letter-spacing:.32em;text-transform:uppercase;color:var(--gold);padding:10px 18px 10px 24px;border:2px solid var(--gold);border-radius:10px;background:rgba(9,9,11,.55);backdrop-filter:blur(4px);text-shadow:0 0 18px rgba(220,175,70,.5)}
.stamp.go{animation:stamp 1.8s var(--ease) forwards}
@keyframes stamp{0%{opacity:0;transform:translate(-50%,-50%) rotate(-6deg) scale(1.8)}18%{opacity:1;transform:translate(-50%,-50%) rotate(-6deg) scale(1)}70%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) rotate(-6deg) scale(1)}}
.stage-tag{position:absolute;right:6px;bottom:12px;z-index:4;font-size:8.5px;white-space:nowrap;writing-mode:vertical-rl;transform:rotate(180deg);padding:9px 4px!important;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#C9CBD0;background:rgba(9,9,11,.7);border:1px solid var(--line2);padding:5px 9px;border-radius:999px}
.stage-photo-btn{position:absolute;right:var(--pad);bottom:42px;z-index:4;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:8px 14px;border-radius:999px;background:rgba(9,9,11,.75);border:1px solid var(--line2)}
.realcard{position:absolute;left:var(--pad);bottom:10px;z-index:4;display:flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:14px;background:rgba(14,15,18,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(220,175,70,.35);box-shadow:0 10px 30px -10px #000;max-width:calc(100% - var(--pad) * 2 - 30px);transition:transform .3s var(--spring),border-color .3s}
.realcard[hidden]{display:none}
.realcard.pop{animation:popin .55s var(--spring)}
@keyframes popin{from{opacity:0;transform:translateY(10px) scale(.92)}}
.realcard:hover{border-color:var(--gold)}
.realcard img{width:34px;height:44px;object-fit:cover;border-radius:9px;flex:none}
.realcard>span{display:flex;flex-direction:column;min-width:0;line-height:1.2}
.realcard b{font-size:9.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.realcard #realTitle{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.realcard small{font-size:11px;color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* panel */
.panel{position:relative;flex:1;display:flex;flex-direction:column;padding:18px var(--pad) 0;background:linear-gradient(180deg,rgba(18,19,23,0),var(--bg) 40px);outline:none}
.steps-wrap{flex:1;position:relative}
.step{animation:stepin .5s var(--ease)}
.step.back-in{animation:stepback .5s var(--ease)}
@keyframes stepin{from{opacity:0;transform:translateX(28px)}}
@keyframes stepback{from{opacity:0;transform:translateX(-28px)}}
.step[hidden]{display:none}
.step-h{font-weight:300;font-size:clamp(32px,4.4vw,52px);letter-spacing:-.03em;line-height:1;margin:10px 0 18px;outline:none}
.step-h em{font-size:1.1em;background:linear-gradient(90deg,#E9C468,#DCAF46);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.06em}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.opt{position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:4px;padding:14px 14px 13px;min-height:96px;border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));box-shadow:inset 0 0 0 1px var(--line);transition:transform .25s var(--spring),box-shadow .3s,background .3s;overflow:hidden}
.opt::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s}
.opt:hover{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02))}
.opt:active{transform:scale(.965)}
.opt[aria-checked=true]{background:linear-gradient(180deg,rgba(74,96,184,.16),rgba(192,40,63,.08));box-shadow:0 12px 30px -16px rgba(74,96,184,.9)}
.opt[aria-checked=true]::before{opacity:1}
.opt[aria-checked=true]::after{content:"";position:absolute;right:12px;top:12px;width:18px;height:18px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px rgba(220,175,70,.7);-webkit-mask:radial-gradient(circle,#000 99%,transparent 100%);animation:check .4s var(--spring)}
@keyframes check{from{transform:scale(0)}}
.opt-ico{width:46px;height:20px;fill:none;stroke:var(--chrome);stroke-width:1.6;stroke-linejoin:round;margin-bottom:8px;transition:stroke .3s}
.opt[aria-checked=true] .opt-ico{stroke:#fff}
.opt-n{font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--gold);margin-bottom:4px}
.opt-t{font-weight:600;font-size:15px;letter-spacing:-.01em;line-height:1.2;padding-right:20px}
.opt-s{font-size:12px;color:var(--mute);line-height:1.35}
.opt kbd{position:absolute;right:10px;bottom:10px;display:none}
.opt.ripple .rp{position:absolute;border-radius:50%;background:rgba(255,255,255,.25);transform:scale(0);animation:rp .6s var(--ease) forwards;pointer-events:none}
@keyframes rp{to{transform:scale(1);opacity:0}}
.fine{font-size:12px;color:var(--mute2);margin-top:12px;line-height:1.5;max-width:52ch}

.seg{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px;margin:0 calc(var(--pad) * -1);padding-left:var(--pad);padding-right:var(--pad)}
.seg::-webkit-scrollbar,.rail::-webkit-scrollbar{display:none}
.seg button{flex:none;height:42px;padding:0 18px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.04em;color:#CFD0D3;box-shadow:inset 0 0 0 1px var(--line2);transition:background .3s,color .3s,transform .25s var(--spring)}
.seg button:active{transform:scale(.95)}
.seg button[aria-checked=true]{background:var(--fg);color:#0A0A0C;box-shadow:0 8px 24px -10px rgba(237,236,234,.6)}
.rail-label{margin-top:18px;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mute)}
.rail-label b{color:var(--fg);font-weight:700;letter-spacing:.12em;margin-left:8px}
.rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding:12px var(--pad) 14px;margin:0 calc(var(--pad) * -1)}
.sw{flex:none;scroll-snap-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;width:64px;transition:transform .25s var(--spring)}
.sw:active{transform:scale(.92)}
.sw i{position:relative;width:52px;height:52px;border-radius:50%;background:var(--c);box-shadow:inset 0 -6px 12px rgba(0,0,0,.35),inset 0 6px 10px rgba(255,255,255,.22),0 0 0 1px rgba(255,255,255,.14);transition:box-shadow .3s,transform .35s var(--spring)}
.sw.shiftsw i{background:linear-gradient(135deg,var(--a),var(--b))}
.sw.chromesw i{background:linear-gradient(180deg,#fff 0%,var(--c) 38%,#15161a 52%,var(--c) 70%,#fff 100%)}
.sw.clearsw i{background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.7),rgba(255,255,255,.08) 45%,rgba(255,255,255,.02) 70%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.sw.bodysw i{background:conic-gradient(from 200deg,#C0283F,#4A60B8,#5CC6DC,#C0283F)}
.sw span{font-size:10.5px;font-weight:600;color:var(--mute);text-align:center;line-height:1.25;letter-spacing:.01em}
.sw[aria-checked=true] i{transform:scale(1.08);box-shadow:inset 0 -6px 12px rgba(0,0,0,.35),inset 0 6px 10px rgba(255,255,255,.22),0 0 0 2px var(--bg),0 0 0 4px var(--gold),0 0 22px rgba(220,175,70,.45)}
.sw[aria-checked=true] span{color:var(--fg)}

.panel-nav{position:sticky;bottom:calc(var(--cb) + var(--safe));z-index:6;display:flex;gap:10px;padding:14px 0 14px;margin-top:16px;background:linear-gradient(180deg,rgba(9,9,11,0),var(--bg) 30%)}
.back{flex:none;width:54px;height:54px;border-radius:16px;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--line2);transition:opacity .3s,transform .25s var(--spring)}
.back svg,.next svg{width:20px;height:20px}
.back:disabled{opacity:.3;cursor:default}
.back:active:not(:disabled){transform:scale(.93)}
.next{flex:1;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#0A0A0C;background:var(--fg);transition:transform .25s var(--spring),box-shadow .3s}
.next:hover{box-shadow:0 10px 34px -10px rgba(192,40,63,.6),0 10px 34px -10px rgba(74,96,184,.6)}
.next:active{transform:scale(.97)}
.next[hidden]{display:none}
.panel.at-4 .panel-nav{display:none}
.stage[data-step="4"]{height:clamp(200px,27svh,260px)}
@media (max-width:999px){
  .stage[data-step="4"] .viewport{transform:translateX(-50%) scale(.84);transform-origin:50% 100%;bottom:4%}
  .stage[data-step="4"] .ro-name,.stage[data-step="4"] .ro-sub,.stage[data-step="4"] .realcard{display:none}
  .stage[data-step="4"] .stage-tag{writing-mode:horizontal-tb;transform:none;padding:5px 9px!important;right:var(--pad);bottom:10px}
}
.kbd-hint{display:none}
.scroll-cue{display:none}

/* loadout */
.loadout{position:relative;padding:18px 16px 18px;border-radius:22px;background:linear-gradient(180deg,#15161A,#0E0F12);box-shadow:inset 0 0 0 1px rgba(220,175,70,.28),0 30px 60px -30px #000;overflow:hidden}
.loadout::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--grad)}
.loadout::after{content:"";position:absolute;right:-30%;top:-40%;width:80%;height:80%;background:radial-gradient(circle,rgba(220,175,70,.12),transparent 65%);pointer-events:none}
.lo-head{display:flex;align-items:center;gap:14px}
.lo-logo{width:44px;height:auto;flex:none;filter:drop-shadow(0 4px 14px rgba(220,175,70,.25))}
.lo-head .step-h{margin:6px 0 0;font-size:clamp(28px,4vw,44px)}
.lo-list{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:16px 0 14px;border-radius:14px;overflow:hidden;background:var(--line)}
.lo-list div{background:#111215;padding:11px 12px}
.lo-list dt{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mute2)}
.lo-list dd{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;margin-top:4px;line-height:1.25}
.lo-sw{width:16px;height:16px;border-radius:50%;flex:none;background:var(--c,#C0283F);box-shadow:0 0 0 1px rgba(255,255,255,.25)}
.lo-stats{display:grid;gap:8px;margin-bottom:14px}
.lo-stats div{display:grid;grid-template-columns:64px 1fr;align-items:center;gap:10px}
.lo-stats span{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
.lo-stats b{height:6px;border-radius:6px;background:rgba(255,255,255,.07);overflow:hidden;display:block}
.lo-stats i{display:block;height:100%;width:0;border-radius:6px;background:var(--grad);transition:width 1s var(--ease)}
.lo-code{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}
.lo-code b{color:var(--gold);font-size:15px;letter-spacing:.12em}
.loadout .sms{margin-top:10px}
.lo-note{font-size:12px;color:var(--mute);text-align:center;margin-top:12px;line-height:1.5}
.link-btn{display:block;margin:10px auto 0;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--chrome);padding:8px;border-bottom:1px solid transparent}
.link-btn:hover{border-color:var(--chrome)}

/* ---------------- SECTIONS ---------------- */
.builds,.services,.how,.area{padding:clamp(72px,10vw,150px) 0}
.builds{border-top:1px solid var(--line);background:linear-gradient(180deg,#0c0d10,var(--bg) 40%)}
.build-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.bf{height:38px;padding:0 16px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--chrome);background:transparent;box-shadow:inset 0 0 0 1px var(--line2);transition:background .25s,color .25s,box-shadow .25s,transform .2s}
.bf:hover{box-shadow:inset 0 0 0 1px rgba(220,175,70,.55);color:var(--gold)}
.bf.is-on,.bf[aria-selected="true"]{color:#1B1405;background:var(--gold-grad);box-shadow:none}
.bf-n{display:inline-block;margin-left:6px;opacity:.7;font-variant-numeric:tabular-nums}
.bf.is-on .bf-n{opacity:.85}
.build-empty{margin-top:28px;color:var(--chrome);font-size:14px}
.feature[hidden],.bay[hidden]{display:none!important}
.bay-space{box-shadow:inset 0 0 0 1px rgba(220,175,70,.18)}

.feature{display:grid;gap:26px;margin-top:36px}
.ba-wrap{display:flex;flex-direction:column;gap:12px}
.ba-angles{display:flex;flex-wrap:wrap;gap:8px}
.ba-ang{height:34px;padding:0 14px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--chrome);box-shadow:inset 0 0 0 1px var(--line2);background:transparent;transition:background .25s,color .25s,box-shadow .25s}
.ba-ang.is-on,.ba-ang[aria-selected="true"]{color:#1B1405;background:var(--gold-grad);box-shadow:none}
.ba{position:relative;aspect-ratio:5/4;border-radius:22px;overflow:hidden;background:#111;box-shadow:0 30px 80px -30px #000,inset 0 0 0 1px var(--line);touch-action:pan-y;user-select:none;-webkit-user-select:none;--p:88%}
.ba-wide{aspect-ratio:5/4}
.ba picture,.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--p)) 0 0);will-change:clip-path}
.ba-tag{position:absolute;top:14px;z-index:3;font-size:10px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;padding:7px 12px;border-radius:999px;background:rgba(9,9,11,.72);backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.ba-tag-l{left:14px;color:#ffb4c0}.ba-tag-r{right:14px;color:var(--gold)}
.ba-handle{position:absolute;top:0;bottom:0;left:var(--p);width:2px;margin-left:-1px;background:var(--gold);z-index:2;box-shadow:0 0 18px rgba(220,175,70,.55),0 0 2px #000;pointer-events:none}
.ba-handle i{position:absolute;top:50%;left:50%;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;background:linear-gradient(160deg,#F0D078,#DCAF46 55%,#A87E1E);box-shadow:0 8px 24px rgba(0,0,0,.45),0 0 0 3px rgba(220,175,70,.35);color:#1B1405}
.ba-handle i::before,.ba-handle i::after{content:"";position:absolute;top:50%;width:8px;height:8px;border:solid #1B1405;border-width:0 0 2.2px 2.2px;margin-top:-4px}
.ba-handle i::before{left:12px;transform:rotate(45deg)}.ba-handle i::after{right:12px;transform:rotate(-135deg)}
.ba-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:4;margin:0;-webkit-appearance:none;appearance:none;touch-action:pan-y}
.ba-range:focus-visible{outline:none}
.ba:focus-within{box-shadow:0 0 0 2px var(--gold),0 30px 80px -30px #000}
.ba-snaps{position:absolute;left:14px;bottom:14px;z-index:5;display:flex;gap:6px;pointer-events:auto}
.ba-snap{height:30px;padding:0 12px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(9,9,11,.72);backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:background .2s,color .2s}
.ba-snap:hover{background:rgba(220,175,70,.9);color:#1B1405}
.ba-replay{position:absolute;right:14px;bottom:14px;z-index:5;height:34px;padding:0 14px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#1B1405;background:var(--gold-grad);box-shadow:0 10px 28px rgba(0,0,0,.35);transition:transform .25s var(--spring)}
.ba-replay:hover{transform:scale(1.04)}.ba-replay:active{transform:scale(.96)}
.fin-frame{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:3/4;background:#111;box-shadow:0 30px 80px -30px #000,inset 0 0 0 1px var(--line)}
.fin-frame img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.04);transition:transform 1.4s var(--ease)}
.fin-frame.is-in img{transform:scale(1)}
.fin-sheen,.bay-sheen{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 30%,rgba(220,175,70,.22) 48%,transparent 62%);transform:translateX(-120%);opacity:0}
.fin-frame.is-in .fin-sheen,.bay.is-in .bay-sheen{animation:sheen 1.6s var(--ease) .15s both}
@keyframes sheen{0%{transform:translateX(-120%);opacity:0}20%{opacity:1}100%{transform:translateX(120%);opacity:0}}
.fin-zoom{position:absolute;right:12px;bottom:12px;z-index:2;height:34px;padding:0 14px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(9,9,11,.72);backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.fin-zoom:hover{background:var(--gold);color:#1B1405}
.bay-img{isolation:isolate}
.bay-space .bay-img{aspect-ratio:4/3}
.feature-copy{display:flex;flex-direction:column;gap:14px}
.chip-row{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:6px 10px;border-radius:999px;color:var(--chrome);box-shadow:inset 0 0 0 1px var(--line2)}
.big{font-size:clamp(18px,1.8vw,24px);font-weight:300;line-height:1.45;color:#D7D8DB;max-width:34ch}
.thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:4px}
.thumb{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:3/4;background:#111;box-shadow:inset 0 0 0 1px var(--line);transition:transform .3s var(--spring)}
.thumb img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.thumb:hover img{transform:scale(1.06)}
.thumb:active{transform:scale(.96)}
.thumb span{position:absolute;left:8px;bottom:8px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;background:rgba(9,9,11,.72);padding:4px 8px;border-radius:999px}
.ghost{align-self:flex-start;height:46px;padding:0 20px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:inset 0 0 0 1px rgba(220,175,70,.5);color:var(--gold);transition:background .3s,color .3s,transform .25s var(--spring)}
.ghost:hover{background:var(--gold);color:#1B1405}
.ghost:active{transform:scale(.96)}
.bays{display:grid;gap:18px;margin-top:40px}
.bay{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:start;padding:12px;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));box-shadow:inset 0 0 0 1px var(--line)}
.bay-img{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:3/4;background:#111}
.bay-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.bay-img:hover img{transform:scale(1.05)}
.bay-count{position:absolute;left:6px;bottom:6px;font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:rgba(9,9,11,.75);padding:4px 7px;border-radius:999px}
.bay-copy{display:flex;flex-direction:column;gap:10px;padding-top:4px}
.bay-copy p:not(.chip-row){font-size:14px;color:#C9CACE;line-height:1.5}
.bay-copy .ghost{height:40px;font-size:11px;padding:0 16px}

.svc-strip{list-style:none;display:grid;gap:1px;margin-top:36px;background:var(--line);border-radius:20px;overflow:hidden}
.svc-strip li{background:var(--bg);padding:22px 20px;display:grid;grid-template-columns:40px 1fr;gap:4px 12px}
.svc-strip .num{grid-row:span 3;font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--gold);padding-top:4px}
.svc-strip h3{font-weight:500;font-size:20px;letter-spacing:-.01em}
.svc-strip p{font-size:14px;color:#BFC0C4;line-height:1.55}
.arrow-link{justify-self:start;display:inline-flex;align-items:center;gap:8px;margin-top:8px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--fg);border-bottom:1px solid rgba(237,236,234,.3);padding-bottom:3px;transition:border-color .3s,gap .3s}
.arrow-link:hover{border-color:var(--gold);gap:12px}

.how-steps{list-style:none;display:grid;gap:12px;margin-top:36px;counter-reset:s}
.how-steps li{position:relative;padding:22px 20px 22px 74px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));box-shadow:inset 0 0 0 1px var(--line)}
.how-n{position:absolute;left:20px;top:22px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;letter-spacing:.06em;color:#1B1405;background:var(--gold-grad)}
.how-steps h3{font-weight:500;font-size:22px;letter-spacing:-.01em}
.how-steps p{font-size:14px;color:#BFC0C4;margin-top:4px;max-width:40ch}
.how-cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:30px}

.area{border-top:1px solid var(--line)}
.area-in{display:grid;gap:30px;align-items:center}
.area-map{width:100%;max-width:440px;justify-self:center;overflow:visible}
.area-map .ring{fill:none;stroke:rgba(201,203,208,.12);stroke-dasharray:3 6}
.area-map .route{fill:none;stroke:url(#aGrad);stroke-width:2;stroke-linecap:round;stroke-dasharray:6 6;animation:dash 3s linear infinite}
@keyframes dash{to{stroke-dashoffset:-24}}
.area-map .city{fill:var(--chrome)}
.area-map .home{fill:var(--gold)}
.area-map .home-pulse{fill:none;stroke:var(--gold);stroke-width:2;transform-box:fill-box;transform-origin:center;animation:pulse 2.4s var(--ease) infinite}
@keyframes pulse{from{transform:scale(1);opacity:.9}to{transform:scale(3.2);opacity:0}}
.area-map .lbl{font:600 13px Manrope,sans-serif;fill:#CFD0D3;text-anchor:middle;letter-spacing:.04em}
.area-map .lbl-home{font-weight:800;fill:var(--gold);font-size:15px}

.foot{border-top:1px solid var(--line);padding:48px 0 40px;background:#070709}
.foot-in{display:grid;gap:24px}
.foot-logo{width:66px;height:auto}
.foot-k{font-weight:700;letter-spacing:.04em;font-size:16px}
.foot-txt p{font-size:14px;color:#BFC0C4;margin-top:4px}
.foot-phone{color:var(--gold)!important;font-weight:600}
.foot-nav{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:14px}
.foot-nav a{color:#CFD0D3}.foot-nav a:hover{color:#fff}
.foot-fine{font-size:12px;color:var(--mute2);line-height:1.6;max-width:72ch}

/* callbar */
.callbar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px calc(11px + var(--safe)) 18px;background:rgba(9,9,11,.86);backdrop-filter:saturate(1.4) blur(18px);-webkit-backdrop-filter:saturate(1.4) blur(18px);border-top:1px solid rgba(220,175,70,.22)}
.cb-txt{display:flex;flex-direction:column;line-height:1.15;min-width:0}
.cb-k{font-size:9.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--mute2)}
.cb-txt b{font-size:14px;letter-spacing:.1em;color:var(--gold);white-space:nowrap}

/* lightbox */
.lb{margin:0;width:100%;height:100%;max-width:none;max-height:none;border:0;padding:0;background:rgba(5,5,6,.96);color:var(--fg);display:none;place-items:center}
.lb[open]{display:grid;animation:fade .35s var(--ease)}
.lb::backdrop{background:rgba(0,0,0,.7)}
@keyframes fade{from{opacity:0}}
.lb-fig{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:min(92vw,560px);padding:60px 0 70px}
.lb-fig img{max-height:calc(100svh - 190px);width:auto;max-width:100%;border-radius:16px;object-fit:contain;box-shadow:0 30px 80px -20px #000;touch-action:pan-y}
.lb-fig figcaption{font-size:14px;color:#CFD0D3;text-align:center;max-width:44ch;line-height:1.5;padding:0 16px}
.lb-x{position:absolute;right:14px;top:14px;width:46px;height:46px;border-radius:50%;font-size:28px;line-height:1;box-shadow:inset 0 0 0 1px var(--line2);background:rgba(20,21,24,.8)}
.lb-arrow{position:absolute;top:50%;width:48px;height:48px;margin-top:-24px;border-radius:50%;font-size:18px;box-shadow:inset 0 0 0 1px var(--line2);background:rgba(20,21,24,.8)}
.lb-prev{left:10px}.lb-next{right:10px}
.lb-arrow[hidden]{display:none}
.lb-count{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--mute)}

.toast{position:fixed;left:50%;bottom:calc(var(--cb) + var(--safe) + 14px);z-index:90;transform:translate(-50%,20px);opacity:0;pointer-events:none;max-width:calc(100% - 32px);padding:12px 18px;border-radius:14px;background:#1A1B1F;box-shadow:inset 0 0 0 1px rgba(220,175,70,.4),0 20px 40px -10px #000;font-size:14px;font-weight:500;text-align:center;transition:opacity .3s,transform .4s var(--spring)}
.toast.on{opacity:1;transform:translate(-50%,0)}

.js .rv{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform 1s var(--ease)}
.js .rv.in{opacity:1;transform:none}

/* ---------------- SMALL PHONES ---------------- */
@media (max-width:360px){
  .opt{min-height:88px;padding:12px}
  .opt-t{font-size:14px}
  .call-bar{padding:0 16px;font-size:13px}
}

/* ---------------- TABLET+ ---------------- */
@media (min-width:640px){
  .opts-veh,.opts-svc{grid-template-columns:repeat(4,1fr)}
  .bays{grid-template-columns:1fr 1fr}
  .bay{grid-template-columns:1fr;padding:12px 12px 18px}
  .bay-img{aspect-ratio:4/5}
  .svc-strip{grid-template-columns:1fr 1fr}
  .how-steps{grid-template-columns:repeat(3,1fr)}
  .how-steps li{padding:76px 22px 26px}
  .how-n{top:24px}
}

/* ---------------- DESKTOP ---------------- */
@media (min-width:1000px){
  :root{--hud:72px}
  body{padding-bottom:0}
  .hud{padding:0 24px 0 20px;gap:24px}
  .hud-logo img{height:52px}
  .hud-steps{flex:0 1 auto;margin:0 auto}
  .hud-steps button{height:38px;padding:0 14px}
  .hud-steps .l{display:inline}
  .hud-nav a:not(:first-child){display:inline}
  .hud .call-sm{display:inline-flex}
  .callbar{display:none}
  .toast{bottom:28px}
  .garage{display:grid;grid-template-columns:minmax(0,1fr) 460px;height:100svh;min-height:680px}
  .stage,.stage[data-step="4"]{height:auto}
  .stage-tag{top:auto;bottom:30px}
  .stage-photo-btn{bottom:64px}
  .viewport{width:min(104%,1500px);bottom:6%}
  .panel.at-4 .panel-nav{display:flex}
  .panel.at-4 .panel-nav .next{display:none}
  .readout{top:34px}.ro-code{top:38px}
  .ro-name{font-size:clamp(40px,4.2vw,64px)}
  .realcard{bottom:28px;padding:8px 18px 8px 8px;max-width:46%}
  .stage-tag{font-size:9.5px;writing-mode:horizontal-tb;transform:none;right:var(--pad);padding:5px 9px!important}
  .seg{flex-wrap:wrap;overflow:visible}
  .realcard img{width:46px;height:60px}
  .panel{padding:34px 34px 0;overflow-y:auto;border-left:1px solid var(--line);background:linear-gradient(180deg,#101114,#0B0C0E)}
  .opts-veh,.opts-svc{grid-template-columns:1fr 1fr}
  .opt{min-height:118px;padding:18px}
  .opt kbd{display:inline-block}
  .seg,.rail{margin:0;padding-left:2px;padding-right:2px}
  .rail{flex-wrap:wrap;overflow:visible}
  .panel-nav{bottom:0;padding-bottom:12px}
  .kbd-hint{display:flex;gap:6px;align-items:center;justify-content:center;font-size:11px;color:var(--mute2);padding:0 0 18px}
  .scroll-cue{position:absolute;left:calc((100% - 460px) / 2);bottom:22px;transform:translateX(-50%);z-index:5;display:none}
  .feature{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:60px;align-items:center}
  .ba{aspect-ratio:5/4;max-height:78svh}
  .feature-fin{margin-top:64px}
  .bays{grid-template-columns:1fr 1fr;gap:22px}
  .bays{grid-template-columns:1fr 1fr;gap:28px;margin-top:70px}
  .bay{grid-template-columns:240px 1fr;gap:24px;padding:16px}
  .bay-img{aspect-ratio:3/4}
  .svc-strip{grid-template-columns:repeat(4,1fr)}
  .svc-strip li{grid-template-columns:1fr;padding:30px 26px}
  .svc-strip .num{grid-row:auto;margin-bottom:12px}
  .area-in{grid-template-columns:1fr 1fr}
  .foot-in{grid-template-columns:auto 1fr auto;align-items:start;gap:30px 48px}
  .foot-fine{grid-column:1/-1}
}
@media (min-width:1000px) and (max-height:760px){
  .opt{min-height:96px;padding:14px}
  .step-h{font-size:38px;margin-bottom:14px}
  .lo-stats{display:none}
}

/* ---------------- REDUCED MOTION ---------------- */
@media (prefers-reduced-motion:reduce){
  .fin-sheen,.bay-sheen{animation:none!important;opacity:0!important}
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .stage-bg .grid,.rig .sweep,.veh-svg .sweep,.call::after,.area-map .route,.area-map .home-pulse{animation:none!important}
  .rig .tint.shift{animation:none!important;background-position:50% 0}
  .stamp.go{animation:none!important;opacity:1;transform:translate(-50%,-50%) rotate(-6deg)}
  .js .rv{opacity:1;transform:none}
}
.lo-links{display:flex;justify-content:center;gap:18px;margin-top:6px}
.lo-links .link-btn{margin:0}

/* ==========================================================================
   v3: garage tint extras + service quote builder
   ========================================================================== */
.seg-label{margin:0 0 10px}
.rail.rail-pills{gap:8px}
.sw.pillsw{width:auto}
.sw.pillsw i{display:none}
.sw.pillsw span{display:flex;align-items:center;height:42px;padding:0 16px;border-radius:999px;font-size:13px;font-weight:600;color:#CFD0D3;white-space:nowrap;box-shadow:inset 0 0 0 1px var(--line2);transition:background .3s,color .3s}
.sw.pillsw[aria-checked=true] span{background:rgba(220,175,70,.14);color:var(--fg);box-shadow:inset 0 0 0 1.5px var(--gold),0 0 18px rgba(220,175,70,.25)}
.lo-sw[hidden]{display:none}
.lo-list .lo-wide{grid-column:1/-1}
.lo-list div[hidden]{display:none}
.veh-svg.tinted .glass{transition:fill .6s var(--ease)}

/* switch */
.tog{display:flex;align-items:center;gap:14px;width:100%;margin-top:14px;padding:14px 16px;border-radius:16px;text-align:left;background:rgba(255,255,255,.025);box-shadow:inset 0 0 0 1px var(--line2);transition:box-shadow .3s,background .3s}
.tog[hidden]{display:none}
.tog i{position:relative;flex:none;width:46px;height:28px;border-radius:999px;background:#25262b;box-shadow:inset 0 0 0 1px var(--line2);transition:background .3s}
.tog i::after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#C9CBD0;box-shadow:0 2px 6px rgba(0,0,0,.5);transition:transform .35s var(--spring),background .3s}
.tog[aria-checked=true]{background:rgba(220,175,70,.08);box-shadow:inset 0 0 0 1.5px rgba(220,175,70,.6)}
.tog[aria-checked=true] i{background:var(--gold-grad)}
.tog[aria-checked=true] i::after{transform:translateX(18px);background:#fff}
.tog-t{display:flex;flex-direction:column;gap:2px;line-height:1.25}
.tog-t b{font-size:14px;font-weight:600}
.tog-t small{font-size:12px;color:var(--mute)}

/* service cards */
.svc-group-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-top:40px;font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.svc-group-h small{font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--mute2)}
.svc-cards{list-style:none;display:grid;gap:10px;margin-top:14px}
.svc-card{position:relative;display:grid;grid-template-columns:44px 1fr;grid-template-areas:"ico n" "ico t" "ico s" "ico tags" "ico go";column-gap:14px;align-items:start;width:100%;height:100%;padding:18px 18px 16px;border-radius:18px;text-align:left;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012));box-shadow:inset 0 0 0 1px var(--line);overflow:hidden;transition:transform .25s var(--spring),box-shadow .3s,background .3s}
.svc-card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--gold-grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s}
.svc-card:hover{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02))}
.svc-card:active{transform:scale(.975)}
.svc-card.is-quote{box-shadow:inset 0 0 0 1px rgba(220,175,70,.24)}
.svc-card[aria-pressed=true]{background:linear-gradient(180deg,rgba(220,175,70,.13),rgba(220,175,70,.02));box-shadow:0 16px 40px -20px rgba(220,175,70,.7)}
.svc-card[aria-pressed=true]::before{opacity:1}
.svc-card.ripple .rp{position:absolute;border-radius:50%;background:rgba(220,175,70,.22);transform:scale(0);animation:rp .6s var(--ease) forwards;pointer-events:none}
.sc-ico{grid-area:ico;width:44px;height:44px;padding:9px;border-radius:12px;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;background:rgba(220,175,70,.08);box-shadow:inset 0 0 0 1px rgba(220,175,70,.25)}
.svc-card:not(.is-quote) .sc-ico{stroke:var(--chrome);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line2)}
.sc-n{grid-area:n;font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--gold)}
.sc-t{grid-area:t;font-size:18px;font-weight:600;letter-spacing:-.01em;line-height:1.2;margin-top:2px}
.sc-s{grid-area:s;font-size:13px;color:#BFC0C4;line-height:1.45;margin-top:4px}
.sc-tags{grid-area:tags;display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}
.sc-tags i{font-style:normal;font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:4px 8px;border-radius:999px;color:var(--chrome);box-shadow:inset 0 0 0 1px var(--line2)}
.sc-go{grid-area:go;justify-self:start;display:inline-flex;gap:8px;margin-top:12px;font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--fg);border-bottom:1px solid rgba(237,236,234,.3);padding-bottom:3px;transition:gap .3s,border-color .3s}
.svc-card.is-quote .sc-go{color:var(--gold);border-color:rgba(220,175,70,.45)}
.svc-card:hover .sc-go{gap:12px;border-color:var(--gold)}
.svc-card[aria-pressed=true] .sc-go{opacity:.55}

/* quote builder */
.iq{position:relative;margin-top:16px;padding:16px 16px 18px;border-radius:22px;background:linear-gradient(180deg,#15161A,#0E0F12);box-shadow:inset 0 0 0 1px rgba(220,175,70,.28),0 30px 60px -30px #000;overflow:hidden;animation:iqin .5s var(--ease);scroll-margin-top:calc(var(--hud) + 10px)}
.iq[hidden]{display:none}
@keyframes iqin{from{opacity:0;transform:translateY(14px)}}
.iq::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--grad)}
.iq-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.iq-title{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.iq-x{flex:none;width:42px;height:42px;border-radius:50%;font-size:24px;line-height:1;color:var(--chrome);box-shadow:inset 0 0 0 1px var(--line2);transition:background .3s}
.iq-x:hover{background:rgba(255,255,255,.06)}
.iq-prog{list-style:none;display:flex;gap:4px;margin:12px 0 4px}
.iq-prog li{flex:1;height:4px;border-radius:4px;background:rgba(255,255,255,.08);transition:background .4s}
.iq-prog li.done{background:var(--gold)}
.iq-prog li.cur{background:var(--grad);box-shadow:0 0 12px rgba(74,96,184,.6)}
.iq-grid{display:grid;gap:16px}
.iq-main[hidden],.iq-side[hidden]{display:none}
.iq-stage{padding-top:12px}
.iq-stage.in{animation:stepin .45s var(--ease)}
.iq-stage.shake{animation:shake .4s}
@keyframes shake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.iq-h{font-size:clamp(30px,4vw,46px);margin:10px 0 14px}
.iq-lead{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;font-weight:600;color:var(--gold-hi);background:rgba(220,175,70,.08);border-radius:12px;padding:10px 12px;margin:-2px 0 12px;box-shadow:inset 0 0 0 1px rgba(220,175,70,.25)}
.iq-lead::before{content:"★";flex:none;color:var(--gold)}
.iq-opts .opt{min-height:0;padding:14px 12px 13px}
.iq-opts .opt-ico{margin-bottom:6px}
.iq-opts .opt[aria-checked=true]{background:linear-gradient(180deg,rgba(220,175,70,.14),rgba(220,175,70,.03));box-shadow:0 12px 30px -18px rgba(220,175,70,.8)}
.iq-opts .opt[aria-checked=true]::before{background:var(--gold-grad)}
.iq-opts.iq-3{grid-template-columns:1fr}
.iq-opts.iq-3 .opt{display:grid;grid-template-columns:52px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center}
.iq-opts.iq-3 .opt-ico{grid-row:span 2;margin:0;width:52px;height:24px}
.opt.hot{box-shadow:inset 0 0 0 1px rgba(220,175,70,.5);background:linear-gradient(180deg,rgba(220,175,70,.07),rgba(255,255,255,.01))}
.opt-badge{font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#1B1405;background:var(--gold-grad);padding:3px 7px;border-radius:999px;margin-bottom:2px}
.iq-hint{min-height:18px;font-size:12.5px;font-weight:600;color:var(--gold-hi);text-align:center}
.iq-hint:empty{min-height:0}
.iq-nav{display:flex;gap:10px;margin-top:16px}
.iq-nav .next{background:rgba(237,236,234,.35);color:#0A0A0C}
.iq-nav .next.ready{background:var(--fg)}
.iq-colors{margin-top:6px}
.iq-colors .rail{padding-top:10px}
.sw.unsuresw i::after{content:"?";position:absolute;inset:0;display:grid;place-items:center;font:700 20px/1 Manrope,sans-serif;color:var(--fg)}

/* finish / shade preview tiles */
.fx{display:block;width:56px;height:34px;border-radius:9px;margin-bottom:8px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);background:#1a1c22;position:relative;overflow:hidden}
.fx::after{content:"";position:absolute;inset:0}
.fx-frost{background:linear-gradient(135deg,#e8ecf0,#b9c0c9);}
.fx-frost::after{background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.7),transparent 50%);filter:blur(2px)}
.fx-crystal{background:repeating-linear-gradient(45deg,#d9dee4 0 3px,#b6bdc6 3px 6px)}
.fx-crystal::after{background:repeating-linear-gradient(-45deg,rgba(255,255,255,.35) 0 1px,transparent 1px 7px)}
.fx-opaque{background:#f4f4f2}
.fx-blackout{background:#050506}
.fx-gradient{background:linear-gradient(0deg,#dfe3e8 0%,#dfe3e8 30%,rgba(223,227,232,.12) 100%),linear-gradient(135deg,#2c3544,#151a22)}
.fx-mirror{background:linear-gradient(180deg,#fff 0%,#c9cbd0 40%,#2a2c31 52%,#9a9da4 70%,#fff 100%)}
.fx-clear{background:linear-gradient(135deg,rgba(120,170,220,.28),rgba(120,170,220,.08)),linear-gradient(135deg,#2c3544,#151a22)}
.fx-clear::after{background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.35) 48%,transparent 56%)}
.fx-unsure{background:rgba(255,255,255,.04)}
.fx-unsure::after{content:"?";display:grid;place-items:center;font:700 18px/1 Manrope,sans-serif;color:var(--gold)}
.fx-sh35,.fx-sh20,.fx-sh05{background:linear-gradient(135deg,#7fa6c9,#3f5d7a)}
.fx-sh35::after{background:rgba(5,6,8,.55)}
.fx-sh20::after{background:rgba(5,6,8,.75)}
.fx-sh05::after{background:rgba(5,6,8,.93)}
/* coverage diagrams: little side-glass maps */
[class*="fx-cv-"],[class*="fx-pf"],[class*="fx-f-"]{background:#16181d}
.fx-cv-full::before,.fx-cv-front::before,.fx-cv-strip::before,.fx-cv-ws::before{content:"";position:absolute;left:8%;right:14%;top:30%;height:45%;border-radius:4px;box-shadow:inset 0 0 0 1px rgba(201,203,208,.35)}
.fx-cv-full::after{background:linear-gradient(90deg,var(--gold) 0 100%) 8% 30%/78% 45% no-repeat;opacity:.55}
.fx-cv-front::after{background:linear-gradient(90deg,var(--gold) 0 100%) 8% 30%/26% 45% no-repeat;opacity:.7}
.fx-cv-strip::after{background:linear-gradient(90deg,var(--gold) 0 100%) 8% 18%/78% 14% no-repeat;opacity:.8}
.fx-cv-ws::after{background:linear-gradient(90deg,var(--gold) 0 100%) 100% 30%/14% 45% no-repeat;opacity:.8}
.fx-f-gloss::after{background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.65) 45%,transparent 58%),linear-gradient(180deg,#3d55a8,#1a2650)}
.fx-f-matte::after{background:linear-gradient(180deg,#3a4566,#262d44)}
.fx-f-color::after{background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.45) 47%,transparent 58%),conic-gradient(from 200deg,#C0283F,#DCAF46,#5CC6DC,#4A60B8,#C0283F)}
[class*="fx-pf"]::before{content:"";position:absolute;left:5px;right:5px;top:9px;bottom:7px;border-radius:12px 18px 4px 4px;box-shadow:inset 0 0 0 1px rgba(201,203,208,.4)}
.fx-pf1::after{background:linear-gradient(var(--gold),var(--gold)) 100% 60%/18% 55% no-repeat,linear-gradient(var(--gold),var(--gold)) 85% 30%/16% 25% no-repeat;opacity:.75}
.fx-pf2::after{background:linear-gradient(var(--gold),var(--gold)) 100% 50%/36% 75% no-repeat;opacity:.75}
.fx-pf3::after{background:linear-gradient(var(--gold),var(--gold)) 100% 50%/36% 75% no-repeat,linear-gradient(var(--gold),var(--gold)) 50% 88%/80% 12% no-repeat,linear-gradient(var(--gold),var(--gold)) 62% 30%/6% 30% no-repeat;opacity:.75}
.fx-pf4::after{background:linear-gradient(var(--gold),var(--gold)) 50% 55%/84% 70% no-repeat;opacity:.7}
.fx-pf5::after{background:radial-gradient(circle,var(--gold) 0 3px,transparent 3.5px) 82% 40%/12px 12px no-repeat,radial-gradient(circle,var(--gold) 0 3px,transparent 3.5px) 50% 52%/12px 12px no-repeat,linear-gradient(var(--gold),var(--gold)) 45% 86%/50% 10% no-repeat;opacity:.85}

.iq-side{border-radius:16px;padding:12px 14px;background:rgba(255,255,255,.025);box-shadow:inset 0 0 0 1px var(--line)}
.iq-side-k{font-size:10px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--mute2)}
.iq-picks{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.iq-picks div{display:flex;gap:6px;align-items:baseline;font-size:12px;padding:5px 10px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line2);animation:popin .4s var(--spring)}
.iq-picks dt{font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mute2)}
.iq-picks dd{font-weight:600}
.iq-side-code{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mute2)}
.iq-side-code b{color:var(--gold);font-size:12.5px;letter-spacing:.1em;word-break:break-all;text-align:right}

.iq-card{margin-top:14px;box-shadow:inset 0 0 0 1px rgba(220,175,70,.4),0 30px 60px -30px #000}
.iq-card[hidden]{display:none}
.iq-card .lo-head .step-h{outline:none}
.iq-card .lo-list dd{word-break:break-word}
.iq-card .lo-code b{word-break:break-all;text-align:right;margin-left:12px}
.iq-card .call-xl{font-size:16px;letter-spacing:.06em}
.iq-stamp{position:absolute;right:14px;top:16px;z-index:2;font-size:10px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);padding:5px 9px;border:1.5px solid var(--gold);border-radius:7px;transform:rotate(-6deg);opacity:.9}
.iq-card.go .iq-stamp{animation:iqstamp .7s var(--spring)}
@keyframes iqstamp{from{opacity:0;transform:rotate(-6deg) scale(1.8)}}
.iq.at-card{background:transparent;box-shadow:none;padding:0}
.iq.at-card::before{display:none}
.iq.at-card .iq-top{padding:0 2px}

@media (max-width:420px){
  .iq-stamp{display:none}
  .iq-card .call-xl{font-size:14.5px;letter-spacing:.04em;padding:0 10px}
}
@media (min-width:640px){
  .opts-svc{grid-template-columns:repeat(3,1fr)}
  .svc-cards{grid-template-columns:repeat(3,1fr);gap:14px}
  .svc-card{grid-template-columns:1fr;grid-template-areas:"ico" "n" "t" "s" "tags" "go";padding:22px 20px 20px;align-content:start}
  .sc-ico{margin-bottom:16px}
  .sc-go{align-self:end}
  .iq{padding:22px 24px 24px}
  .iq-opts{grid-template-columns:repeat(3,1fr)}
  .iq-opts.iq-3{grid-template-columns:repeat(3,1fr)}
  .iq-opts.iq-3 .opt{display:flex}
  .iq-opts.iq-3 .opt-ico{margin-bottom:6px}
  .iq-card{max-width:640px;margin-left:auto;margin-right:auto}
}
@media (min-width:1000px){
  .opts-svc{grid-template-columns:1fr 1fr}
  .iq{padding:26px 30px 30px}
  .iq-grid{grid-template-columns:minmax(0,1fr) 290px;gap:28px;align-items:start}
  .iq-opts{grid-template-columns:repeat(4,1fr)}
  .iq-opts.iq-3{grid-template-columns:repeat(3,1fr)}
  .iq-opts.n5{grid-template-columns:repeat(5,1fr)}
  .iq-opts .opt{min-height:132px;padding:16px 14px}
  .iq-side{position:sticky;top:calc(var(--hud) + 16px);margin-top:12px;padding:18px}
  .iq-picks{flex-direction:column;flex-wrap:nowrap;gap:0}
  .iq-picks div{display:grid;grid-template-columns:1fr;gap:2px;padding:10px 0;border-radius:0;box-shadow:none;border-bottom:1px solid var(--line)}
  .iq-picks dd{font-size:14px}
  .iq-nav{max-width:520px}
  .iq-card{margin-top:18px}
}
@media (min-width:1000px) and (max-height:760px){ .lo-stats{display:none} }
.iq-grid{grid-template-columns:minmax(0,1fr)}
.iq-main,.iq-stage{min-width:0}
.iq-colors .rail{margin:0 -16px;padding-left:16px;padding-right:16px}
.iq-card .lo-code{flex-direction:column;align-items:flex-start;gap:6px}
.iq-card .lo-code b{margin-left:0;word-break:normal;white-space:nowrap;font-size:16px}
.iq-card .lo-links{flex-wrap:wrap;gap:4px 18px}
.iq-card .lo-links .link-btn{white-space:nowrap}
.cb-txt b{overflow:hidden;text-overflow:ellipsis}
@media (min-width:640px){ .iq-colors .rail{margin:0 -24px;padding-left:24px;padding-right:24px} }
@media (min-width:1000px){ .iq-grid{grid-template-columns:minmax(0,1fr) 290px} .iq-colors .rail{margin:0;padding-left:2px;padding-right:2px} }
@media (max-width:639px){ .iq-opts.n5 .opt:last-child,.iq-opts.n7 .opt:last-child{grid-column:1/-1} }

/* ==========================================================================
   v4: vehicle tint zones + per-window shades
   ========================================================================== */
.vsvg .brow{fill:#000;opacity:0;transition:opacity .5s var(--ease),fill .5s var(--ease)}
.vsvg .brow.on{opacity:.95}
.fx-sh10{background:linear-gradient(135deg,#7fa6c9,#3f5d7a)}
.fx-sh10::after{background:rgba(5,6,8,.85)}
.fx-cv-custom{background:#16181d}
.fx-cv-custom::after{background:radial-gradient(circle,var(--gold) 0 3px,transparent 3.5px) 22% 50%/12px 12px no-repeat,radial-gradient(circle,rgba(201,203,208,.55) 0 3px,transparent 3.5px) 50% 50%/12px 12px no-repeat,radial-gradient(circle,var(--gold) 0 3px,transparent 3.5px) 78% 50%/12px 12px no-repeat}

/* zone multi-select */
.zpick{margin-top:14px}
.zpick[hidden]{display:none}
.zpick .rail-label{margin:0 0 10px}
.zpick .rail-label b{color:var(--mute2);text-transform:none;letter-spacing:.02em;font-weight:600}
.zchips{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.zchip{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 12px;border-radius:14px;text-align:left;font-size:13.5px;font-weight:600;line-height:1.25;color:#D7D8DB;background:rgba(255,255,255,.025);box-shadow:inset 0 0 0 1px var(--line2);transition:background .3s,box-shadow .3s,transform .25s var(--spring)}
.zchip:active{transform:scale(.97)}
.zchip i{position:relative;flex:none;width:20px;height:20px;border-radius:6px;box-shadow:inset 0 0 0 1.5px var(--mute2);transition:background .25s,box-shadow .25s}
.zchip[aria-checked=true]{color:var(--fg);background:rgba(220,175,70,.1);box-shadow:inset 0 0 0 1.5px rgba(220,175,70,.7)}
.zchip[aria-checked=true] i{background:var(--gold-grad);box-shadow:none}
.zchip[aria-checked=true] i::after{content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid #1B1405;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* per-zone shade rows */
.zall{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;padding:10px 12px;border-radius:14px;background:rgba(220,175,70,.06);box-shadow:inset 0 0 0 1px rgba(220,175,70,.22)}
.zall-k{font-size:10.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.zrows{display:grid;gap:8px}
.zrow{padding:12px;border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012));box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s}
.zrow.set{box-shadow:inset 0 0 0 1px rgba(220,175,70,.4)}
.zname{font-size:14px;font-weight:600;margin-bottom:9px}
.zseg{display:flex;flex-wrap:wrap;gap:6px}
.zpill{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px;border-radius:999px;font-size:13px;font-weight:700;color:#CFD0D3;box-shadow:inset 0 0 0 1px var(--line2);transition:background .25s,color .25s,box-shadow .25s,transform .2s var(--spring)}
.zpill:active{transform:scale(.94)}
.zpill i{width:12px;height:12px;border-radius:50%;background:var(--g,#222);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.zpill[aria-checked=true]{background:var(--fg);color:#0A0A0C;box-shadow:0 6px 18px -8px rgba(237,236,234,.6)}
.zpill-all{height:34px;font-size:12px;padding:0 11px}
.zpill-all:hover{box-shadow:inset 0 0 0 1px var(--gold);color:var(--fg)}
.zrows+.tog{margin-top:12px}

.gmix{margin-top:14px;display:inline-flex;align-items:center;gap:8px}
.gmix[hidden]{display:none}

@media (max-width:370px){ .zchips{grid-template-columns:1fr} .zpill{padding:0 10px} }
@media (min-width:640px){ .zchips{grid-template-columns:repeat(3,1fr)} .zrow{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:12px} .zname{margin:0} }
@media (min-width:1000px){ .panel .zchips{grid-template-columns:1fr 1fr} .iq-opts.n4{grid-template-columns:repeat(4,1fr)} }
@media (max-width:639px){
  .zrow .zseg,.zall .zseg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;width:100%}
  .zpill{justify-content:center;padding:0 4px;font-size:12.5px;line-height:1.05;text-align:center;gap:0}
  .zpill i{display:none}
  .zall{padding:10px}
}

/* ---------- v5: inspiration upload ---------- */
.inspo-link{display:inline-block;margin:14px 0 2px;font-size:13px;font-weight:700;color:var(--gold);text-decoration:underline;text-underline-offset:3px;padding:6px 0}
.inspo{margin-top:16px;padding:14px;border:1px solid var(--line2);border-radius:16px;background:rgba(220,175,70,.04);transition:border-color .2s,background .2s}
.inspo.drag{border-color:var(--gold);background:rgba(220,175,70,.10)}
.inspo .rail-label{margin:0 0 10px}
.inspo .rail-label b{font-weight:600;color:var(--mute2);letter-spacing:.08em;margin-left:6px}
.inspo-drop{display:flex;align-items:center;gap:14px;width:100%;min-height:72px;padding:14px 16px;border:1.5px dashed rgba(220,175,70,.55);border-radius:14px;color:var(--fg);text-align:left;cursor:pointer;background:rgba(9,9,11,.4);transition:border-color .2s,background .2s}
.inspo-drop:hover{border-color:var(--gold);background:rgba(220,175,70,.07)}
.inspo-drop.full{opacity:.6;cursor:not-allowed;border-style:solid}
.inspo-drop svg{width:28px;height:28px;flex:none;color:var(--gold)}
.inspo-drop span{display:flex;flex-direction:column;gap:3px;min-width:0}
.inspo-drop b{font-size:15px;font-weight:800}
.inspo-drop small{font-size:12px;color:var(--mute)}
@media (pointer:coarse){.inspo-dd{display:none}}
.inspo-thumbs{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.inspo-thumbs[hidden]{display:none}
.th{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--graphite);box-shadow:0 0 0 1px var(--line2)}
.th img{width:100%;height:100%;object-fit:cover;display:block}
.th.noprev{display:flex;align-items:center;justify-content:center;padding:6px}
.th.noprev span{font-size:10px;color:var(--mute);word-break:break-all;text-align:center}
.th-x{position:absolute;top:4px;right:4px;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;font-weight:700;color:#fff;background:rgba(9,9,11,.78);box-shadow:0 0 0 1px rgba(255,255,255,.25);cursor:pointer}
.th-x:hover{background:var(--red)}
.inspo-lbl{display:block;margin:14px 0 6px;font-size:12px;font-weight:700;color:var(--fg)}
.inspo-idea{display:block;width:100%;min-height:76px;resize:vertical;padding:10px 12px;border-radius:12px;border:1px solid var(--line2);background:rgba(9,9,11,.55);color:var(--fg);font:500 14px/1.45 Manrope,sans-serif}
.inspo-idea::placeholder{color:var(--mute2)}
.inspo-idea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(220,175,70,.18)}
.inspo-note{margin-top:10px}
@media (min-width:640px){.inspo-thumbs{grid-template-columns:repeat(6,minmax(0,1fr))}}
/* step 4 delivery */
.inspo-thumbs-sm{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:0 0 12px}
.inspo-thumbs-sm .th{border-radius:8px}
.lo-desk{margin-top:12px;padding:12px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line2);text-align:center}
.lo-desk p{font-size:13px;color:var(--mute);margin:0 0 4px}
.lo-desk-num{display:inline-block;font-size:clamp(24px,4vw,32px);font-weight:800;letter-spacing:.03em;color:var(--gold);text-decoration:none;padding:4px 8px}
.lo-desk-num:hover{color:var(--gold-hi);text-decoration:underline}
.inspo-link[hidden],.inspo[hidden],.lo-desk[hidden],.inspo-thumbs[hidden]{display:none!important}
.inspo .rail-label b{display:block;margin:4px 0 0}
@media (min-width:640px){.inspo-thumbs:not(.inspo-thumbs-sm){grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ---------- v6: single delivery button ---------- */
.lo-thumbs{margin:14px 0 0}
.send-note{margin:8px 0 0;font-size:13px;line-height:1.45;text-align:center;color:var(--fg)}
.send-note.is-share{color:var(--gold)}
.send-note[hidden]{display:none!important}
/* v8: generic tile for photos the browser can't preview (e.g. HEIC) */
.th.noprev{flex-direction:column;padding:0;color:var(--mute)}
.th-gen{width:38%;height:38%;color:var(--gold)}
.th-name{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.th-tag{position:absolute;top:4px;left:4px;padding:2px 5px;border-radius:5px;font-size:9px;font-weight:800;letter-spacing:.08em;color:#1B1405;background:var(--chrome);word-break:normal}
.inspo-thumbs-sm .th-tag{font-size:8px;padding:1px 3px;top:3px;left:3px}

/* ================= R&R STUDIO (spaces builder) ================= */
:root{--mb:58px}
.modebar{position:relative;z-index:5;margin-top:var(--hud);height:var(--mb);display:flex;align-items:center;justify-content:center;padding:0 var(--pad);background:linear-gradient(180deg,#0E0F12,#15161b);border-bottom:1px solid var(--line)}
.mode-tabs{display:flex;gap:4px;padding:4px;border-radius:999px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line2);width:min(100%,380px)}
.mode-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;height:42px;border-radius:999px;color:#CFD0D3;transition:background .3s,color .3s,box-shadow .3s}
.mode-tab svg{width:30px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linejoin:round;flex:none}
.mode-tab span{display:flex;flex-direction:column;line-height:1.1;text-align:left}
.mode-tab b{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.mode-tab small{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--mute2)}
.mode-tab[aria-selected=true]{background:linear-gradient(180deg,#E9C668,var(--gold));color:#0A0A0C;box-shadow:0 8px 24px -10px rgba(220,175,70,.8)}
.mode-tab[aria-selected=true] small{color:rgba(10,10,12,.62)}
.mode-tab:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.modebar ~ .garage{padding-top:0;min-height:calc(100svh - var(--hud) - var(--mb))}
.garage[hidden],.studio[hidden]{display:none!important}
.rail-label.mt,.seg-label.mt{margin-top:20px}
.opts-path{margin-top:10px}
.opts-path[hidden]{display:none}
.opt-path .opt-ico{width:52px;height:23px}
.opts-surf .opt{min-height:84px}
#sFinWrap[hidden],#sMurWrap[hidden],#sTintWrap[hidden],#sPerfWrap[hidden],#sSizeWrap[hidden],#sSheenWrap[hidden],.sc-lbl[hidden]{display:none!important}
.ssw i{border-radius:14px;background:var(--c)}
.ssw[aria-checked=true] i{transform:scale(1.06)}
.s-glassq{margin-top:16px;height:auto;min-height:44px;padding:10px 18px;line-height:1.3;text-align:left}
.s-explain{margin-top:2px;padding:12px 14px;border-radius:14px;font-size:14px;line-height:1.5;color:var(--fg);background:rgba(220,175,70,.07);box-shadow:inset 0 0 0 1px rgba(220,175,70,.25)}
.studio .lo-sw{border-radius:5px}
.studio .lo-code{flex-direction:column;align-items:flex-start;gap:6px}
.studio .lo-code b{font-size:15px;letter-spacing:.06em;overflow-wrap:anywhere}

/* stage + scene box */
.sstage .sview{position:absolute;left:50%;bottom:7%;height:63%;aspect-ratio:16/9;max-width:94%;transform:translateX(-50%);z-index:2;border-radius:12px;overflow:hidden;background:#0d0e11;box-shadow:0 34px 60px -24px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.1);transition:transform 1s var(--ease)}
.sstage[data-step="3"] .sview{transform:translateX(-50%) scale(1.03)}
.scene{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .5s var(--ease),visibility 0s .5s}
.scene.on{opacity:1;visibility:visible;transition:opacity .5s var(--ease)}
.scene .p{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}
.scene .b{position:absolute;display:block;pointer-events:none}
.scene svg.sv{overflow:hidden}
.scene .sv line:not(.sc){vector-effect:non-scaling-stroke}
.tg::after{content:"";position:absolute;inset:0;background:var(--s,none);opacity:var(--so,0);transition:opacity .3s}
.tg.on{background:var(--f)!important;animation:tgin .7s var(--ease)}
.tg.gl.on{background:var(--f),var(--view,transparent)!important}
@keyframes tgin{0%{filter:brightness(1.5) saturate(.7)}100%{filter:none}}
.sc-lbl{position:absolute;z-index:3;transform:translate(-50%,-50%);font-size:clamp(9px,1.6vw,18px);font-weight:800;letter-spacing:.3em;text-transform:uppercase;color:#F3D78A;white-space:nowrap;text-shadow:0 2px 12px rgba(0,0,0,.6);padding:.5em 1em;border:1.5px dashed rgba(243,215,138,.6);border-radius:6px}
.sc-room .sc-lbl{left:50%;top:26%}
.sc-house .sc-lbl{left:34%;top:62%;font-size:clamp(7px,1.1vw,13px)}
.sc-office .sc-lbl{left:47.5%;top:30%}
.sc-gdoor .sc-lbl{left:50%;top:52%}
.sc-store .sc-lbl{left:50%;top:8%;font-size:clamp(7px,1.1vw,13px)}
.st-sign-t{font-size:clamp(8px,1.7vw,19px);font-weight:800;letter-spacing:.34em;color:#F6DE9C;white-space:nowrap;text-shadow:0 0 6px rgba(255,214,130,.9),0 0 18px rgba(255,190,90,.55)}
.sc-room .rm-side1{clip-path:polygon(0% 0%,11.875% 5.556%,11.875% 72.222%,0% 80.556%);background:linear-gradient(90deg,#C9C2B6,#D8D1C6);}
.sc-room .rm-side2{clip-path:polygon(88.125% 5.556%,100% 0%,100% 80.556%,88.125% 72.222%);background:linear-gradient(270deg,#C9C2B6,#D8D1C6);}
.sc-room .rm-acc{clip-path:inset(5.556% 11.875% 27.778% 11.875%);background:linear-gradient(180deg,#5E6470,#4F5560);}
.sc-room .rm-win{clip-path:polygon(1.875% 14.199%,10.312% 18.523%,10.312% 52.770%,1.875% 57.298%);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0));--view:transparent}
.sc-room .rm-trim{clip-path:polygon(90% 23.270%,98.125% 22.035%,98.125% 79.240%,90% 73.538%);background:linear-gradient(90deg,#E7E2D9,#D8D2C8);}
.sc-room .rm-door{clip-path:polygon(90.750% 25.249%,97.375% 24.474%,97.375% 78.713%,90.750% 74.064%);background:linear-gradient(90deg,#EFEBE4,#DCD6CC);--s:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.12) 52%,transparent 78%);--so:1}
.sc-room .rm-furn{clip-path:inset(56.889% 13.125% 32% 74.375%);background:url(/assets/studio/tex/wood.svg) 0 0/18.75% 33.33%,linear-gradient(90deg,#B78958,#A57749 50%,#BC8E5D);}
.sc-kitchen .k-bs{clip-path:inset(4.444% 9.375% 47.778% 28.125%);background:linear-gradient(rgba(246,244,240,.38),rgba(246,244,240,.38)),url(/assets/studio/tex/marble-grey.svg) 0 0/28.75% 51.11%,linear-gradient(135deg,#F4F2ED,#E5E1D9);--s:linear-gradient(100deg,transparent 0 50%,rgba(255,255,255,.12) 54%,rgba(255,255,255,.06) 57%,transparent 60% 67%,rgba(255,255,255,.08) 69%,transparent 71.5%),linear-gradient(180deg,rgba(255,255,255,.16),transparent 45%);--so:1}
.sc-kitchen .k-app{clip-path:inset(6.444% 79.875% 28.889% 10.625%);background:linear-gradient(180deg,#EFEBE4,#E2DDD4);--s:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.12) 52%,transparent 78%),linear-gradient(180deg,rgba(255,255,255,.07),transparent 55%);--so:1}
.sc-kitchen .k-pan{clip-path:inset(6.444% 71.875% 28.889% 20.125%);background:linear-gradient(180deg,#EFEBE4,#E2DDD4);--s:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.12) 52%,transparent 78%),linear-gradient(180deg,rgba(255,255,255,.07),transparent 55%);--so:1}
.sc-kitchen .k-up1{clip-path:inset(7.778% 52.500% 64.444% 28.750%);background:linear-gradient(180deg,#EFEBE4,#E2DDD4);--s:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.12) 52%,transparent 78%),linear-gradient(180deg,rgba(255,255,255,.07),transparent 55%);--so:1}
.sc-kitchen .k-up2{clip-path:inset(7.778% 9.375% 64.444% 62.500%);background:linear-gradient(180deg,#EFEBE4,#E2DDD4);--s:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.12) 52%,transparent 78%),linear-gradient(180deg,rgba(255,255,255,.07),transparent 55%);--so:1}
.sc-kitchen .k-hood1{clip-path:inset(4.444% 43.125% 78.444% 53.125%);background:url(/assets/studio/tex/noise.svg) 0 0/8.75% 15.56%,linear-gradient(180deg,#EDE9E2,#D9D3C9);--s:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.12) 52%,transparent 78%),linear-gradient(180deg,rgba(255,255,255,.07),transparent 55%);--so:1}
.sc-kitchen .k-hood2{clip-path:polygon(51.125% 21.333%,58.875% 21.333%,61.250% 33.333%,48.750% 33.333%);background:url(/assets/studio/tex/noise.svg) 0 0/8.75% 15.56%,linear-gradient(180deg,#EDE9E2,#D9D3C9);--s:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.12) 52%,transparent 78%),linear-gradient(180deg,rgba(255,255,255,.07),transparent 55%);--so:1}
.sc-kitchen .k-lo{clip-path:inset(54.444% 7.375% 28.889% 28.125%);background:linear-gradient(180deg,#EFEBE4,#E2DDD4);--s:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.12) 52%,transparent 78%),linear-gradient(180deg,rgba(255,255,255,.07),transparent 55%);--so:1}
.sc-kitchen .k-ctr1{clip-path:polygon(28.125% 50.667%,90.625% 50.667%,93.375% 52.667%,28.125% 52.667%);background:linear-gradient(rgba(246,244,240,.38),rgba(246,244,240,.38)),url(/assets/studio/tex/marble-grey.svg) 0 0/28.75% 51.11%,linear-gradient(135deg,#F4F2ED,#E5E1D9);--s:linear-gradient(100deg,transparent 0 50%,rgba(255,255,255,.24) 54%,rgba(255,255,255,.06) 57%,transparent 60% 67%,rgba(255,255,255,.13) 69%,transparent 71.5%),linear-gradient(180deg,rgba(255,255,255,.16),transparent 45%);--so:1}
.sc-kitchen .k-ctr2{clip-path:inset(52.667% 6.625% 45.556% 28.125%);background:linear-gradient(rgba(246,244,240,.38),rgba(246,244,240,.38)),url(/assets/studio/tex/marble-grey.svg) 0 0/28.75% 51.11%,linear-gradient(135deg,#F4F2ED,#E5E1D9);--s:linear-gradient(100deg,transparent 0 50%,rgba(255,255,255,.24) 54%,rgba(255,255,255,.06) 57%,transparent 60% 67%,rgba(255,255,255,.13) 69%,transparent 71.5%),linear-gradient(180deg,rgba(255,255,255,.16),transparent 45%);--so:1}
.sc-kitchen .k-isltop1{clip-path:polygon(22.625% 66.444%,77.375% 66.444%,80.625% 70.444%,19.375% 70.444%);background:linear-gradient(rgba(246,244,240,.38),rgba(246,244,240,.38)),url(/assets/studio/tex/marble-grey.svg) 0 0/28.75% 51.11%,linear-gradient(135deg,#F4F2ED,#E5E1D9);--s:linear-gradient(100deg,transparent 0 50%,rgba(255,255,255,.24) 54%,rgba(255,255,255,.06) 57%,transparent 60% 67%,rgba(255,255,255,.13) 69%,transparent 71.5%),linear-gradient(180deg,rgba(255,255,255,.16),transparent 45%);--so:1}
.sc-kitchen .k-isltop2{clip-path:inset(70.444% 19.375% 27.111% 19.375%);background:linear-gradient(rgba(246,244,240,.38),rgba(246,244,240,.38)),url(/assets/studio/tex/marble-grey.svg) 0 0/28.75% 51.11%,linear-gradient(135deg,#F4F2ED,#E5E1D9);--s:linear-gradient(100deg,transparent 0 50%,rgba(255,255,255,.24) 54%,rgba(255,255,255,.06) 57%,transparent 60% 67%,rgba(255,255,255,.13) 69%,transparent 71.5%),linear-gradient(180deg,rgba(255,255,255,.16),transparent 45%);--so:1}
.sc-kitchen .k-isltop3{clip-path:inset(72.889% 78.375% 6.222% 19.375%);background:linear-gradient(rgba(246,244,240,.38),rgba(246,244,240,.38)),url(/assets/studio/tex/marble-grey.svg) 0 0/28.75% 51.11%,linear-gradient(135deg,#F4F2ED,#E5E1D9);--s:linear-gradient(100deg,transparent 0 50%,rgba(255,255,255,.24) 54%,rgba(255,255,255,.06) 57%,transparent 60% 67%,rgba(255,255,255,.13) 69%,transparent 71.5%),linear-gradient(180deg,rgba(255,255,255,.16),transparent 45%);--so:1}
.sc-kitchen .k-isltop4{clip-path:inset(72.889% 19.375% 6.222% 78.375%);background:linear-gradient(rgba(246,244,240,.38),rgba(246,244,240,.38)),url(/assets/studio/tex/marble-grey.svg) 0 0/28.75% 51.11%,linear-gradient(135deg,#F4F2ED,#E5E1D9);--s:linear-gradient(100deg,transparent 0 50%,rgba(255,255,255,.24) 54%,rgba(255,255,255,.06) 57%,transparent 60% 67%,rgba(255,255,255,.13) 69%,transparent 71.5%),linear-gradient(180deg,rgba(255,255,255,.16),transparent 45%);--so:1}
.sc-kitchen .k-isl{clip-path:inset(72.889% 21.625% 6.222% 21.625%);background:url(/assets/studio/tex/wood.svg) 0 0/18.75% 33.33%,linear-gradient(90deg,#BE8F5E,#A97A4B 45%,#C19262);}
.sc-kitchen .k-islr{clip-path:inset(94% 21.625% 0% 21.625%);background:url(/assets/studio/tex/wood.svg) 0 0/18.75% 33.33%,linear-gradient(90deg,#BE8F5E,#A97A4B 45%,#C19262);opacity:.2;-webkit-mask-image:linear-gradient(180deg,transparent 93%,#000 94%,transparent 100%);mask-image:linear-gradient(180deg,transparent 93%,#000 94%,transparent 100%)}
.sc-kitchen .k-isltr{clip-path:polygon(19.375% 94%,21.625% 94%,21.625% 100%,19.375% 100%);background:linear-gradient(rgba(246,244,240,.38),rgba(246,244,240,.38)),url(/assets/studio/tex/marble-grey.svg) 0 0/28.75% 51.11%,linear-gradient(135deg,#F4F2ED,#E5E1D9);opacity:.18}
.sc-kitchen .k-isltr2{clip-path:inset(94% 19.375% 0% 78.375%);background:linear-gradient(rgba(246,244,240,.38),rgba(246,244,240,.38)),url(/assets/studio/tex/marble-grey.svg) 0 0/28.75% 51.11%,linear-gradient(135deg,#F4F2ED,#E5E1D9);opacity:.18}
.sc-house .hs-wall1{clip-path:inset(42.444% 45.625% 14.444% 14.375%);background:repeating-linear-gradient(90deg,rgba(0,0,0,.16) 0 .12%,transparent .12% 1.6%),linear-gradient(180deg,#E9E4DA,#D3CCC0);}
.sc-house .hs-wall2{clip-path:polygon(14.375% 42.889%,34.375% 19.556%,54.375% 42.889%);background:repeating-linear-gradient(90deg,rgba(0,0,0,.16) 0 .12%,transparent .12% 1.6%),linear-gradient(180deg,#E9E4DA,#D3CCC0);}
.sc-house .hs-win1{clip-path:inset(48.889% 68.438% 22.222% 17.188%);background:linear-gradient(180deg,rgba(255,226,170,.0),rgba(255,226,170,0));--view:transparent}
.sc-house .hs-win2{clip-path:inset(48.889% 48.125% 22.222% 43.125%);background:linear-gradient(180deg,rgba(255,226,170,.0),rgba(255,226,170,0));--view:transparent}
.sc-house .hs-win3{clip-path:polygon(26.250% 40.222%,34.375% 29.333%,42.500% 40.222%);background:linear-gradient(180deg,rgba(255,226,170,.0),rgba(255,226,170,0));--view:transparent}
.sc-house .hs-fdoor{clip-path:inset(52.222% 59.250% 14.444% 34.750%);background:url(/assets/studio/tex/wood.svg) 0 0/16.25% 28.89%,linear-gradient(90deg,#9A6A3E,#7E5330);}
.sc-house .hs-gdoor{clip-path:inset(59.444% 14.375% 14.444% 59.375%);background:linear-gradient(180deg,#5A5D62,#45484C);}
.sc-house .hs-gdr{clip-path:inset(85.778% 14.375% 7.556% 59.375%);background:linear-gradient(180deg,#5A5D62,#45484C);opacity:.16}
.sc-office .of-conf{clip-path:polygon(87.500% 10%,100% 4.444%,100% 82.222%,87.500% 70%);background:linear-gradient(180deg,#C7C0B4,#B5AEA2);}
.sc-office .of-glass{clip-path:polygon(87.500% 6.667%,100% 0%,100% 84.444%,87.500% 71.111%);background:linear-gradient(115deg,rgba(255,255,255,.0) 30%,rgba(255,255,255,.12) 45%,rgba(255,255,255,0) 52%),linear-gradient(180deg,rgba(200,220,230,.08),rgba(200,220,230,.04));--view:transparent}
.sc-office .of-feat{clip-path:inset(6.667% 31.250% 28.889% 26.250%);background:linear-gradient(180deg,#3C4048,#30333A);}
.sc-office .of-col1{clip-path:inset(6.667% 76% 28.889% 18.750%);background:linear-gradient(90deg,#9C968C,#D6D0C6 40%,#ECE7DF 55%,#A9A398);}
.sc-office .of-col2{clip-path:inset(6.667% 23.750% 28.889% 71%);background:linear-gradient(90deg,#9C968C,#D6D0C6 40%,#ECE7DF 55%,#A9A398);}
.sc-office .of-desk{clip-path:inset(58% 32.500% 18.222% 32.500%);background:url(/assets/studio/tex/wood.svg) 0 0/16.25% 28.89%,linear-gradient(90deg,#B4875A,#9C7047 50%,#B88C60);}
.sc-office .of-deskr{clip-path:inset(82.222% 32.500% 7.778% 32.500%);background:url(/assets/studio/tex/wood.svg) 0 0/16.25% 28.89%,linear-gradient(90deg,#B4875A,#9C7047 50%,#B88C60);opacity:.16}
.sc-office .of-colr1{clip-path:inset(71.333% 76% 12% 18.750%);background:linear-gradient(90deg,#9C968C,#D6D0C6 40%,#ECE7DF 55%,#A9A398);opacity:.14}
.sc-office .of-colr2{clip-path:inset(71.333% 23.750% 12% 71%);background:linear-gradient(90deg,#9C968C,#D6D0C6 40%,#ECE7DF 55%,#A9A398);opacity:.14}
.sc-store .sf-fac{clip-path:polygon(3.750% 4.444%,96.250% 4.444%,96.250% 90%,90.625% 90%,90.625% 31.111%,9.375% 31.111%,9.375% 90%,3.750% 90%);background:repeating-linear-gradient(0deg,rgba(0,0,0,.13) 0 .25%,transparent .25% 3.1%),repeating-linear-gradient(90deg,rgba(0,0,0,.1) 0 .12%,transparent .12% 4.2%),linear-gradient(180deg,#E6E1D8,#CFC8BC);}
.sc-store .sf-fac2{clip-path:inset(4.444% 9.375% 68.889% 9.375%);background:repeating-linear-gradient(0deg,rgba(0,0,0,.13) 0 .25%,transparent .25% 3.1%),repeating-linear-gradient(90deg,rgba(0,0,0,.1) 0 .12%,transparent .12% 4.2%),linear-gradient(180deg,#E6E1D8,#CFC8BC);}
.sc-store .sf-w1{left:11.875%;top:38.333%;width:23.125%;height:46.111%;background:linear-gradient(120deg,rgba(255,255,255,0) 30%,rgba(255,255,255,.14) 44%,rgba(255,255,255,0) 50%);--view:transparent}
.sc-store .sf-w2{left:49.375%;top:38.333%;width:20%;height:46.111%;background:linear-gradient(120deg,rgba(255,255,255,0) 30%,rgba(255,255,255,.14) 44%,rgba(255,255,255,0) 50%);--view:transparent}
.sc-store .sf-w3{left:71.250%;top:38.333%;width:16.875%;height:46.111%;background:linear-gradient(120deg,rgba(255,255,255,0) 30%,rgba(255,255,255,.14) 44%,rgba(255,255,255,0) 50%);--view:transparent}
.sc-store .sf-dg{left:38.125%;top:38.333%;width:8.125%;height:50%;background:linear-gradient(120deg,rgba(255,255,255,0) 30%,rgba(255,255,255,.14) 44%,rgba(255,255,255,0) 50%);--view:transparent}
.sc-store .sf-sign{left:12.5%;top:13.3%;width:75%;height:10%;display:flex!important;align-items:center;justify-content:center;background:linear-gradient(180deg,#1b1c1f,#101113);box-shadow:0 10px 24px -10px rgba(0,0,0,.7)}
.sc-gdoor .gd-door{clip-path:inset(17.778% 15.625% 11.111% 15.625%);background:linear-gradient(180deg,#E9E6E0,#CFCBC3);}
.sc-gdoor .gd-refl{clip-path:inset(89.111% 15.625% 0% 15.625%);background:linear-gradient(180deg,#E9E6E0,#CFCBC3);opacity:.15;-webkit-mask-image:linear-gradient(180deg,transparent 89%,#000 89.2%,transparent 100%);mask-image:linear-gradient(180deg,transparent 89%,#000 89.2%,transparent 100%)}

/* kitchen builder controls */
.kchips{display:flex;flex-wrap:wrap;gap:8px}
.kchip{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 10px;border-radius:999px;font-size:13px;font-weight:600;color:#CFD0D3;box-shadow:inset 0 0 0 1px var(--line2);transition:background .25s,color .25s,box-shadow .25s,transform .2s var(--spring)}
.kchip:active{transform:scale(.95)}
.kchip svg{width:18px;height:18px;border-radius:50%;fill:none;stroke:transparent;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;box-shadow:inset 0 0 0 1.5px var(--line2);transition:background .25s,stroke .25s}
.kchip[aria-checked=true]{color:var(--fg);background:rgba(220,175,70,.12);box-shadow:inset 0 0 0 1.5px var(--gold)}
.kchip[aria-checked=true] svg{background:var(--gold);stroke:#0A0A0C;box-shadow:none}
.s-hint{margin-top:10px;font-size:12.5px;line-height:1.45;color:var(--mute)}
.kseg button{display:inline-flex;align-items:center;gap:8px;padding:0 16px 0 8px}
.kseg button i{width:26px;height:26px;border-radius:50%;flex:none;background:var(--c,#333);box-shadow:inset 0 -3px 6px rgba(0,0,0,.3),0 0 0 1px rgba(255,255,255,.2)}
#sKitSurfWrap{margin-bottom:16px}
#sKitSurfWrap[hidden],#sSubWrap[hidden],#sKitWrap[hidden]{display:none!important}
.lo-kit{display:grid;gap:7px;width:100%;margin:2px 0 0;padding:0;list-style:none}
.lo-kit li{display:grid;grid-template-columns:16px auto 1fr;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--mute);line-height:1.3}
.lo-kit li b{font-weight:700;color:var(--fg)}
.lo-kit li span{min-width:0}

/* services: studio cards */
.svc-cards-sp .sc-ico{stroke:var(--gold)!important;background:rgba(220,175,70,.08)!important;box-shadow:inset 0 0 0 1px rgba(220,175,70,.25)!important}

@media (min-width:640px){ .opts-sp{grid-template-columns:repeat(3,1fr)} }
@media (max-width:639px){ .opts-sp .opt:last-child{grid-column:1/-1;min-height:0} }
@media (min-width:1000px){
  :root{--mb:62px}
  .modebar ~ .garage{height:calc(100svh - var(--hud) - var(--mb));min-height:640px}
  .mode-tabs{width:440px}
  .mode-tab{height:46px}
  .sstage .sview{bottom:11%;height:60%;max-width:90%}
  .opts-sp{grid-template-columns:1fr 1fr}
  .opts-sp .opt:last-child{grid-column:1/-1;min-height:0}
  .opts-surf .opt{min-height:96px}
}
@media (min-width:1000px) and (max-height:760px){ .opts-surf .opt{min-height:80px} }
/* studio: long design codes */
body.is-studio .cb-txt b{white-space:normal;font-size:11.5px;letter-spacing:.05em;overflow-wrap:anywhere;line-height:1.25;text-overflow:clip}
@media (max-width:999px){
  .studio .readout{max-width:56%}
  .studio .ro-name{font-size:clamp(22px,6.2vw,40px)}
  .studio .ro-code{max-width:40%}
  .studio .ro-code b{font-size:11px;letter-spacing:.06em;overflow-wrap:anywhere;line-height:1.35}
}
.studio .ro-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100vw - 2 * var(--pad))}
@media (min-width:1000px){ .studio .ro-sub{max-width:calc(100vw - 460px - 2 * var(--pad))} }

/* custom design toggle (garage door / custom mural finish step) */
.cd-card{position:relative;display:flex;align-items:center;gap:14px;width:100%;margin:4px 0 16px;padding:16px;border-radius:16px;text-align:left;background:linear-gradient(180deg,rgba(220,175,70,.09),rgba(220,175,70,.02));box-shadow:inset 0 0 0 1px rgba(220,175,70,.38);transition:background .3s,box-shadow .3s,transform .25s var(--spring);overflow:hidden}
.cd-card:active{transform:scale(.985)}
.cd-card:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.cd-card[hidden],.cd-or[hidden]{display:none!important}
.cd-ico{flex:none;width:40px;height:40px;padding:8px;border-radius:12px;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;background:rgba(220,175,70,.1)}
.cd-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.cd-t{font-size:16px;font-weight:800;color:#fff}
.cd-s{font-size:12.5px;line-height:1.4;color:var(--mute)}
.cd-sw{flex:none;position:relative;width:46px;height:26px;border-radius:13px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px var(--line);transition:background .3s}
.cd-sw i{position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#C9CBD0;transition:transform .3s var(--spring),background .3s}
.cd-card[aria-pressed=true]{background:linear-gradient(180deg,rgba(220,175,70,.24),rgba(220,175,70,.07));box-shadow:inset 0 0 0 1.5px var(--gold),0 14px 34px -18px rgba(220,175,70,.9)}
.cd-card[aria-pressed=true] .cd-ico{stroke:#17181D;background:var(--gold)}
.cd-card[aria-pressed=true] .cd-sw{background:var(--gold)}
.cd-card[aria-pressed=true] .cd-sw i{transform:translateX(20px);background:#17181D}
.cd-or{margin:-6px 0 12px;font-size:12.5px;color:var(--mute)}
#sStep3.cd-on #sFinWrap,#sStep3.cd-on #sMurWrap{opacity:.5;transition:opacity .3s}
#sStep3.cd-on #sFinWrap:focus-within,#sStep3.cd-on #sMurWrap:focus-within,#sStep3.cd-on #sFinWrap:hover,#sStep3.cd-on #sMurWrap:hover{opacity:.85}

/* blank-canvas interior (garage space wall mural) */
.sc-canvas .cv-grainf{clip-path:polygon(15.625% 74.222%,84.375% 74.222%,100% 87.778%,100% 100%,0% 100%,0% 87.778%);background:url(/assets/studio/tex/wood.svg) 0 0/16.25% 28.89%,transparent;opacity:.16;mix-blend-mode:multiply}
.sc-canvas .cv-wall{left:15.625%;top:6.444%;width:68.750%;height:67.778%;background:radial-gradient(120% 90% at 50% 30%,#EFEAE2,#E4DDD2 60%,#D9D1C4);}
.sc-canvas .cv-plas{left:15.625%;top:6.444%;width:68.750%;height:67.778%;background:url(/assets/studio/tex/noise.svg) 0 0/7.50% 13.33%,transparent;opacity:.22;mix-blend-mode:multiply;pointer-events:none}
.sc-canvas .sc-lbl{left:50%;top:40%;color:rgba(96,84,66,.8);border-color:rgba(96,84,66,.38);text-shadow:none;background:rgba(255,255,255,.18)}

/* ================= YOUR PACKAGE ================= */
.pk-row{display:grid;grid-template-columns:1fr;gap:8px;margin:12px 0 10px}
.pk-add,.pk-rev{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:54px;border-radius:16px;font-weight:800;font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;transition:background .3s,box-shadow .3s,transform .2s var(--spring)}
.pk-add{color:var(--gold-hi);background:linear-gradient(180deg,rgba(220,175,70,.2),rgba(220,175,70,.07));box-shadow:inset 0 0 0 1.5px var(--gold),0 12px 30px -18px rgba(220,175,70,.8)}
.pk-add:hover{background:linear-gradient(180deg,rgba(220,175,70,.3),rgba(220,175,70,.12))}
.pk-add .ico{width:20px;height:20px}
.pk-rev{color:var(--chrome);background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px rgba(220,175,70,.4)}
.pk-add:active,.pk-rev:active{transform:scale(.98)}
.pk-add:focus-visible,.pk-rev:focus-visible,.pkg-bar:focus-visible,.pk-x:focus-visible,.pk-ed:focus-visible,.svc-mbtn:focus-visible,.svc-start:focus-visible,.pkg-go:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.pk-rev[hidden],.pk-cnt[hidden],.pkg[hidden],.pkg-body[hidden],.pkg-q[hidden],.pkg-empty[hidden],.pkg-none[hidden],#pkgCodeRow[hidden],.svc-start[hidden],.svc-pick-hint[hidden]{display:none!important}
.pk-cnt{margin:-2px 0 8px;text-align:center;font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--gold)}

/* tray */
.pkg{position:fixed;z-index:72;left:10px;right:10px;bottom:calc(78px + var(--safe));border-radius:18px;background:rgba(14,15,18,.94);backdrop-filter:saturate(1.4) blur(18px);-webkit-backdrop-filter:saturate(1.4) blur(18px);box-shadow:inset 0 0 0 1px rgba(220,175,70,.45),0 18px 40px -12px rgba(0,0,0,.8);overflow:hidden}
.pkg.bump{animation:pkbump .5s var(--spring)}
@keyframes pkbump{0%{transform:scale(1)}40%{transform:scale(1.03)}100%{transform:scale(1)}}
.pkg-bar{display:flex;align-items:center;gap:12px;width:100%;min-height:54px;padding:8px 14px;text-align:left;color:var(--fg)}
.pkg-bar>.ico{flex:none;width:22px;height:22px;color:var(--gold)}
.pkg-tt{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}
.pkg-t{font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.pkg-sub{font-size:12px;color:var(--mute)}
.pkg-n{flex:none;min-width:28px;height:28px;padding:0 8px;border-radius:14px;display:grid;place-items:center;background:var(--gold);color:#17181D;font-size:14px;font-weight:900}
.pkg-chev{flex:none;width:20px;height:20px;fill:none;stroke:var(--chrome);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s var(--spring)}
.pkg.open .pkg-chev{transform:rotate(180deg)}
.pkg-body{padding:0 12px 12px;max-height:min(58vh,520px);overflow:auto;overscroll-behavior:contain}
.pk-list,.pk-items,.pkg-ql,.pk-lines{list-style:none;margin:0;padding:0}
.pk-it{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-top:1px solid var(--line)}
.pk-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pk-k{font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.pk-lbl{font-size:13.5px;line-height:1.35;color:var(--fg);overflow-wrap:anywhere}
.pk-code{font-size:11.5px;letter-spacing:.06em;color:var(--chrome);overflow-wrap:anywhere}
.pk-acts{flex:none;display:flex;align-items:center;gap:6px}
.pk-x{width:40px;height:40px;border-radius:12px;font-size:22px;line-height:1;color:var(--chrome);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line)}
.pk-x:hover{color:#fff;background:rgba(192,40,63,.25)}
.pk-ed{height:40px;padding:0 14px;border-radius:12px;font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);box-shadow:inset 0 0 0 1px rgba(220,175,70,.45)}
.pkg-empty{padding:12px 0;font-size:13px;color:var(--mute);border-top:1px solid var(--line)}
.pkg-q{padding:10px 0;border-top:1px solid var(--line)}
.pkg-qk{font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin:0 0 6px}
.pk-qi{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0;font-size:13.5px}
.pk-qi .pk-x{width:34px;height:34px;font-size:18px}
.pkg-qn{margin-top:8px;height:40px}
.pkg-acts{display:grid;grid-template-columns:1fr 1.3fr;gap:8px;padding-top:12px;border-top:1px solid var(--line)}
.pkg-acts .ghost{align-self:stretch;height:48px;padding:0 10px}
.pkg-go{height:48px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#17181D;background:linear-gradient(180deg,#F3D78A,var(--gold))}
.pkg-go:disabled{opacity:.45}
body.has-pkg{padding-bottom:calc(var(--cb) + var(--safe) + 80px)}
@media (min-width:1000px){
  .pkg{left:auto;right:22px;bottom:22px;width:380px}
  body.has-pkg{padding-bottom:96px}
}

/* review card */
.pkg-dlg{padding:0;border:0;background:transparent;color:var(--fg);width:min(560px,100vw);max-width:100vw;max-height:100dvh;margin:auto}
.pkg-dlg::backdrop{background:rgba(5,5,7,.72);backdrop-filter:blur(6px)}
.pkg-dlg[open]{animation:pkin .35s var(--ease)}
@keyframes pkin{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.pkg-card{max-height:calc(100dvh - 24px);overflow:auto;margin:12px}
.pkg-dx{position:absolute;right:12px;top:12px;z-index:2}
.pk-items .pk-it{padding:12px 0}
.pk-items .pk-lbl{font-size:15px;font-weight:700}
.pk-lines{margin-top:6px;display:flex;flex-direction:column;gap:3px}
.pk-lines li{font-size:12.5px;line-height:1.4;color:var(--mute);overflow-wrap:anywhere}
.pk-lines .pk-pic{color:var(--gold)}
.pkg-none{padding:14px 0;color:var(--mute);font-size:14px}
.pkg-card .call-xl{margin-top:4px}
.pk-dis{opacity:.5}
.pkg-clear.armed{color:#ff8a98;border-bottom-color:#ff8a98}
@media (max-width:639px){
  .pkg-dlg{width:100vw;height:100dvh;max-height:100dvh;margin:0}
  .pkg-card{margin:0;min-height:100dvh;max-height:100dvh;border-radius:0;padding-top:22px;padding-bottom:calc(22px + var(--safe))}
  .pk-items .pk-it{flex-wrap:wrap}
}

/* services: select several */
.svc-multi{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 6px}
.svc-mbtn,.svc-start{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.svc-mbtn{color:var(--gold);box-shadow:inset 0 0 0 1px rgba(220,175,70,.5)}
.svc-mbtn[aria-pressed=true]{background:rgba(220,175,70,.14)}
.svc-mbtn svg,.svc-start svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.svc-start{color:#17181D;background:linear-gradient(180deg,#F3D78A,var(--gold))}
.svc-start:disabled{opacity:.45}
.svc-pick-n,.svc-pick-hint{flex-basis:100%;margin:0;font-size:12.5px;color:var(--mute)}
.svc-pick-n:empty{display:none}
.svc-picking .svc-card{cursor:pointer}
.svc-picking .svc-card::after{content:"";z-index:2;position:absolute;right:14px;top:14px;width:22px;height:22px;border-radius:7px;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);background:rgba(0,0,0,.2)}
.svc-picking .svc-card[aria-pressed=true]{box-shadow:inset 0 0 0 1.5px var(--gold),0 14px 34px -18px rgba(220,175,70,.9)}
.svc-picking .svc-card[aria-pressed=true]::after{content:"\2713";display:grid;place-items:center;font-size:15px;font-weight:900;line-height:1;color:#17181D;background:var(--gold);box-shadow:none}

.svc-picking .svc-multi{position:sticky;top:calc(var(--hud) + 8px);z-index:6;padding:10px 12px;border-radius:18px;background:rgba(9,9,11,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:inset 0 0 0 1px rgba(220,175,70,.35)}
.svc-picking .svc-pick-hint{display:none!important}
@media (max-width:639px){ .svc-picking .svc-multi{gap:8px;padding:8px 10px} .svc-picking .svc-mbtn,.svc-picking .svc-start{height:40px;padding:0 14px;font-size:11px;letter-spacing:.1em} }

.studio-proof{margin:8px 0 4px;max-width:46ch;color:var(--chrome);font-size:13px;line-height:1.45}
.studio-proof a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}

/* ---------------- v21: how-it-works x4, FAQ, area, footer social, package next steps ---------------- */
.how .lede{max-width:52ch}
.how-tel{color:var(--gold);font-weight:700;white-space:nowrap}
.how-tel:hover{text-decoration:underline}
.how-cta .sms,.faq-cta .sms{width:auto;height:58px;padding:0 24px;border-radius:999px}
@media (min-width:640px){ .how-steps.how-4{grid-template-columns:repeat(2,1fr)} }
@media (min-width:1100px){ .how-steps.how-4{grid-template-columns:repeat(4,1fr)} }
.faq{padding:clamp(72px,10vw,150px) 0;border-top:1px solid var(--line)}
.faq-in{display:grid;gap:34px}
.faq-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.faq-cta .call{height:58px;padding:0 26px;font-size:14px}
.faq-list{display:grid;gap:10px}
.faq-q{border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .25s,background .25s}
.faq-q[open]{box-shadow:inset 0 0 0 1px rgba(220,175,70,.45);background:linear-gradient(180deg,rgba(220,175,70,.06),rgba(255,255,255,.01))}
.faq-q summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:18px 20px;cursor:pointer;list-style:none;font-size:17px;font-weight:600;line-height:1.35;border-radius:18px}
.faq-q summary::-webkit-details-marker{display:none}
.faq-q summary:hover{color:#fff}
.faq-q summary i{position:relative;flex:none;width:30px;height:30px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line2);transition:transform .3s var(--ease),background .3s}
.faq-q summary i::before,.faq-q summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;border-radius:2px;background:var(--gold)}
.faq-q summary i::after{transform:rotate(90deg);transition:transform .3s var(--ease)}
.faq-q[open] summary i{background:rgba(220,175,70,.12)}
.faq-q[open] summary i::after{transform:rotate(0)}
.faq-q p{padding:0 20px 20px;font-size:15px;line-height:1.65;color:#C9CACE;max-width:66ch}
@media (min-width:1000px){ .faq-in{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:start} .faq-head{position:sticky;top:110px} }
.area-cities{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;padding:0}
.area-cities li{height:36px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--chrome);box-shadow:inset 0 0 0 1px var(--line2)}
.area-cities li.is-home{color:#1B1405;background:linear-gradient(180deg,var(--gold-hi),var(--gold));box-shadow:none}
.ig-link{display:inline-flex;align-items:center;gap:10px;margin-top:22px;min-height:44px;font-size:14px;color:#CFD0D3;border-bottom:1px solid transparent}
.ig-link b{color:var(--fg)}
.ig-link:hover{color:#fff;border-color:var(--line2)}
.ig-ico{width:20px;height:20px;flex:none;color:var(--gold)}
.foot-sep{color:var(--mute2);margin:0 4px}
.foot-contact{font-size:14px;margin-top:4px}.foot-sms{color:var(--gold);font-weight:600}.foot-sms:hover{text-decoration:underline}
.foot-social{margin-top:10px!important}
.foot-social a{display:inline-flex;align-items:center;gap:8px;min-height:40px;color:#CFD0D3}
.foot-social a:hover{color:#fff}
.pkg-next{list-style:none;counter-reset:pn;margin:14px 0 0;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.025);box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:8px}
.pkg-next li{counter-increment:pn;position:relative;padding-left:30px;font-size:13px;line-height:1.45;color:#C9CACE}
.pkg-next li::before{content:counter(pn);position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:800;color:#1B1405;background:var(--gold)}
.pkg-next b{color:var(--fg)}
.pk-lines li{display:flex;gap:10px}
.pk-lines .pk-k{flex:none;min-width:66px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mute2);padding-top:2px}
.pk-lines .pk-v{color:#D7D8DB}
.bf:focus-visible,.ba-ang:focus-visible,.ba-snap:focus-visible,.ba-replay:focus-visible,.thumb:focus-visible,.bay-img:focus-visible,.fin-zoom:focus-visible,.faq-q summary:focus-visible,.ig-link:focus-visible,.how-tel:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media (prefers-reduced-motion:reduce){ .faq-q summary i,.faq-q summary i::after{transition:none} }

/* v22: five vehicle services + two quote cards, no orphan gaps */
@media (max-width:639px),(min-width:1000px){ .opts-svc>.opt:last-child:nth-child(odd){grid-column:1/-1} }
@media (min-width:640px){
  .svc-cards-q{grid-template-columns:1fr 1fr}
}
@media (min-width:640px) and (max-width:999px){
  .opts-svc{grid-template-columns:repeat(6,1fr)}
  .opts-svc>.opt{grid-column:span 2}
  .opts-svc>.opt:nth-child(4),.opts-svc>.opt:nth-child(5){grid-column:span 3}
}
