@font-face{font-family:"Plus Jakarta Sans";src:url(/upanddown/f/pjs.woff2) format("woff2");font-weight:500 800;font-display:swap}
@font-face{font-family:Inter;src:url(/upanddown/f/inter.woff2) format("woff2");font-weight:100 900;font-display:optional}
:root{--card:#fff;--bg:#fff;--ink:#0c0d0f;--ink2:#383d45;--mut:#6b727c;--line:#e5e7ea;--gray:#f4f4f2;--or:#f28a22;--or2:#e0761a;--orT:#b85a0c;--dk:#0b0c0e;--dk2:#16181b;
--g:clamp(16px,4vw,72px);--max:1920px;--r:6px;--ease:cubic-bezier(.2,.7,.1,1);--hd:78px;
--fd:"Plus Jakarta Sans",Inter,system-ui,sans-serif;--fb:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--hd) + 16px)}
body{margin:0;background:var(--bg);color:var(--ink);font:400 clamp(16px,.2vw + 15px,18px)/1.6 var(--fb);-webkit-font-smoothing:antialiased;overflow-x:clip}
img,video,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--fd);font-weight:700;line-height:1.08;letter-spacing:-.022em;margin:0;text-wrap:balance}
p{margin:0 0 1em}
button{font:inherit;color:inherit}
.wrap{width:min(100% - 2*var(--g),var(--max));margin-inline:auto}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--ink);color:#fff;padding:10px 14px}
.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--or);outline-offset:3px}
.eyebrow{font:700 15px/1 var(--fb);letter-spacing:.16em;text-transform:uppercase;color:var(--orT);margin:0 0 18px;display:flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:22px;height:3px;background:var(--or)}
.eyebrow.lt{color:#fff}
.xl{font-size:clamp(34px,3.4vw + 10px,80px)}
.lead{font-size:clamp(18px,.5vw + 15px,22px);line-height:1.5;color:var(--ink2)}
.or{color:var(--or)}
.ar{width:18px;height:18px;flex:none;transition:transform .35s var(--ease)}
.ic{width:17px;height:17px;flex:none}
/* buttons: logo language = black type on orange */
.btn{display:inline-flex;align-items:center;gap:12px;background:var(--or);color:var(--ink);text-decoration:none;font:700 15px/1 var(--fb);padding:16px 22px;border-radius:var(--r);border:1px solid var(--or);cursor:pointer;transition:background .25s,border-color .25s,color .25s;white-space:nowrap}
.btn:hover{background:var(--or2);border-color:var(--or2)}
.btn:hover .ar,.lnk:hover .ar,a:hover .go .ar{transform:translateX(4px)}
.btn.lg{padding:20px 28px;font-size:16px}
.btn.sm{padding:12px 16px;font-size:16px}
.btn.glass{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.btn.glass:hover{background:var(--card);color:var(--ink);border-color:#fff}
.btn.dark{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn.dark:hover{background:#000}
.lnk{display:inline-flex;align-items:center;gap:10px;font-weight:700;text-decoration:none;border-bottom:2px solid var(--or);padding-bottom:4px}
/* utility bar + header */
.ub{background:var(--dk);color:#c9ccd1;font-size:16px;position:relative;z-index:61}
.ubi{display:flex;justify-content:space-between;gap:20px;padding:9px 0}
.ubi span{display:flex;gap:18px;align-items:center}
.ubi a{text-decoration:none;color:#fff}
.ubi i{width:7px;height:7px;border-radius:50%;background:#35c46a;box-shadow:0 0 0 4px rgba(53,196,106,.18);display:inline-block}
.hd{position:sticky;top:0;z-index:60;height:var(--hd);margin-bottom:calc(-1*var(--hd));color:#fff;transition:background .3s,color .3s,box-shadow .3s}
.hd.solid{background:var(--hdbg,rgba(255,255,255,.96));color:var(--ink);box-shadow:0 1px 0 var(--line);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px)}
.hdi{display:flex;align-items:center;gap:28px;height:100%}
.logo{position:relative;display:block;flex:none}
.logo img{height:52px;width:auto}
.logo .lk{position:absolute;inset:0;opacity:0;transition:opacity .3s}
.hd.solid .logo .lk{opacity:1}
.hd.solid .logo .lw{opacity:0}
.nv{flex:1}
.top{list-style:none;margin:0;padding:0;display:flex;gap:4px}
.top>li{position:relative}
.dd{display:flex;align-items:center}
.tl{display:block;padding:10px 12px;text-decoration:none;font-weight:600;font-size:15px}
.ddb{background:none;border:0;padding:6px 4px;cursor:pointer;margin-left:-8px}
.cv{width:16px;height:16px;transition:transform .3s}
.dd.open .cv{transform:rotate(180deg)}
.mega{position:fixed;left:0;right:0;top:calc(var(--hd) + 36px);background:var(--card);color:var(--ink);box-shadow:0 30px 60px -20px rgba(0,0,0,.25);border-top:1px solid var(--line);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s,transform .25s,visibility .25s}
.hd.solid .mega{top:var(--hd)}
.dd.open .mega{opacity:1;visibility:visible;transform:none}
@media (hover:hover) and (min-width:1101px){.dd:hover .mega{opacity:1;visibility:visible;transform:none}.dd:hover .cv{transform:rotate(180deg)}}
.mgi{display:grid;grid-template-columns:minmax(220px,1fr) 3fr;gap:48px;padding:36px 0 40px}
.mgl .mh{font:700 26px/1.1 var(--fd);margin-bottom:10px}
.mgl p{color:var(--ink2);font-size:15px}
.mgt{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.mt{display:flex;gap:14px;align-items:center;padding:10px;border-radius:var(--r);text-decoration:none;transition:background .2s}
.mt:hover{background:var(--gray)}
.mt img{width:84px;height:63px;object-fit:cover;border-radius:4px;flex:none}
.mt b{display:block;font-size:15px}
.mt small{display:block;color:var(--mut);font-size:16px;line-height:1.35}
.mcity{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 16px}
.mcity a{padding:9px 0;border-bottom:1px solid var(--line);text-decoration:none;font-weight:600;display:flex;justify-content:space-between}
.mcity a:hover{color:var(--orT)}
.hcta{display:flex;align-items:center;gap:18px;margin-left:auto}
.hph{display:flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;white-space:nowrap}
.mb{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;flex-direction:column;justify-content:center;gap:6px;padding:10px}
.mb span{display:block;height:2px;background:currentColor;transition:transform .3s,opacity .3s}
.mnf{display:none}
/* hero */
.hero{position:relative;min-height:max(640px,100svh);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;background:var(--dk);overflow:hidden}
.hmedia,.hmedia img,.hvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hmedia::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.15) 30%,rgba(0,0,0,.35) 60%,rgba(0,0,0,.88) 100%),linear-gradient(90deg,rgba(0,0,0,.55),transparent 65%)}
.hin{position:relative;padding:calc(var(--hd) + 60px) 0 48px}
.hh{font-size:clamp(46px,6.4vw + 8px,150px);line-height:.92;letter-spacing:-.025em;margin-bottom:34px;max-width:13ch}
.hh span{display:block}
.hrow{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}
.hrow .lead{color:#e6e8eb;max-width:560px;margin:0}
.hbtn{display:flex;gap:12px;flex-wrap:wrap}
.hstats{position:relative;border-top:1px solid rgba(255,255,255,.18);background:rgba(10,11,13,.55);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.hsg{display:grid;grid-template-columns:repeat(4,1fr)}
.hsg>div{padding:22px 24px 22px 0;display:flex;flex-direction:column;gap:6px}
.hsg>div+div{padding-left:24px;border-left:1px solid rgba(255,255,255,.14)}
.hsg b{font:700 clamp(24px,1.6vw + 10px,40px)/1 var(--fd);}
.hsg b em{font-style:normal;color:var(--or)}
.hsg span{font-size:16px;color:#b9bdc4}
/* marquee */
.marq{background:var(--or);color:var(--ink);overflow:hidden;padding:18px 0;border-block:1px solid var(--or2)}
.mq{display:flex;gap:34px;width:max-content;animation:mq 42s linear infinite}
.mq span{font:700 clamp(22px,1.6vw + 10px,40px)/1 var(--fd);text-transform:uppercase;letter-spacing:-.01em;white-space:nowrap}
.mq span:nth-of-type(even){color:var(--or)}
.mq i{width:12px;height:12px;background:var(--ink);transform:rotate(45deg);align-self:center;flex:none}
@keyframes mq{to{transform:translateX(-50%)}}
/* sections */
.sec{padding:clamp(72px,8vw,150px) 0}
.sec.gray{background:var(--gray)}
.sec.dark{background:var(--dk);color:#fff}
.sec.dark .lead,.sec.dark .shp{color:#b9bdc4}
.sh{display:flex;justify-content:space-between;align-items:flex-end;gap:30px 60px;margin-bottom:clamp(36px,4vw,64px);flex-wrap:wrap}
.sh>div{max-width:900px}
.shp{max-width:520px;color:var(--ink2);margin:0}
/* reveal */
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .rv.in{opacity:1;transform:none}
/* diagnose tool */
.dx{display:grid;grid-template-columns:minmax(260px,.8fr) 1.4fr;gap:clamp(24px,3vw,56px);align-items:stretch}
.dxl{display:flex;flex-direction:column;gap:8px}
.dxl button{display:flex;align-items:center;gap:14px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;cursor:pointer;font-weight:600;transition:border-color .2s,background .2s,transform .3s var(--ease)}
.dxl button small{display:block;font-weight:400;color:var(--mut);font-size:15px}
.dxl button b{font:700 15px/1 var(--fb);color:var(--mut);width:22px;flex:none}
.dxl button:hover{border-color:#c9ccd1}
.dxl button[aria-selected=true]{border-color:var(--ink);background:var(--ink);color:#fff;transform:translateX(6px)}
.dxl button[aria-selected=true] small,.dxl button[aria-selected=true] b{color:var(--or)}
.dxp{display:grid;grid-template-columns:1fr 1fr;background:var(--card);border-radius:calc(var(--r)*2);overflow:hidden;border:1px solid var(--line);min-height:520px}
.dxi{position:relative;background:var(--dk)}
.dxi img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .45s}
.dxi .tag{position:absolute;left:16px;top:16px;background:rgba(0,0,0,.65);color:#fff;font-size:16px;font-weight:600;padding:7px 10px;border-radius:4px;backdrop-filter:blur(6px)}
.dxt{padding:clamp(24px,2.6vw,44px);display:flex;flex-direction:column}
.dxt h3{font-size:clamp(26px,1.4vw + 14px,40px);margin-bottom:18px}
.dxt dl{margin:0 0 24px;display:grid;gap:16px}
.dxt dt{font:700 15px/1 var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--orT);margin-bottom:6px}
.dxt dd{margin:0;color:var(--ink2)}
.sev{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:16px;padding:8px 12px;border-radius:40px;background:#fdf0e3;color:#8a4308;align-self:flex-start;margin-bottom:18px}
.sev.hi{background:#fde6e4;color:#a1221a}
.sev::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.dxa{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap}
/* service grid */
.sg{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(10px,1vw,18px)}
.sc{position:relative;display:block;border-radius:calc(var(--r)*1.5);overflow:hidden;color:#fff;text-decoration:none;aspect-ratio:3/4;background:var(--dk)}
.sc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.sc:hover img{transform:scale(1.06)}
.sc::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.85))}
.sct{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:clamp(18px,1.6vw,28px)}
.sct small{font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--or);font-weight:700}
.sct b{display:block;font:700 clamp(22px,1vw + 12px,32px)/1.05 var(--fd);margin:8px 0}
.sct em{display:block;font-style:normal;color:#d5d8dc;font-size:16px;line-height:1.45;max-width:30ch}
.go{position:absolute;right:clamp(18px,1.6vw,28px);top:clamp(18px,1.6vw,28px);z-index:1;width:44px;height:44px;border-radius:50%;background:var(--or);color:var(--ink);display:grid;place-items:center;transition:transform .35s var(--ease)}
.sc:hover .go{transform:rotate(-45deg)}
.sc.wide{grid-column:span 2;aspect-ratio:auto}
/* audience tiles */
.aud{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:clamp(10px,1vw,18px)}
.at{position:relative;min-height:clamp(420px,42vw,640px);border-radius:calc(var(--r)*1.5);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(22px,2vw,36px);text-decoration:none;color:#fff;background:var(--dk2)}
.at>img,.at>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75;transition:opacity .5s,transform 1.2s var(--ease)}
.at:hover>img,.at:hover>video{opacity:.9;transform:scale(1.04)}
.at::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.85))}
.at>div{position:relative;z-index:1}
.at small{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:16px;color:var(--or)}
.at h3{font-size:clamp(28px,1.8vw + 12px,52px);margin:10px 0 12px}
.at p{color:#d5d8dc;max-width:40ch}
.at ul{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-wrap:wrap;gap:6px}
.at li{font-size:16px;border:1px solid rgba(255,255,255,.3);border-radius:30px;padding:5px 11px}
/* emergency band */
.rush{position:relative;color:#fff;padding:clamp(100px,12vw,220px) 0;overflow:hidden;background:var(--dk)}
.rush>video,.rush>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.rush::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.2))}
.rushi{position:relative;z-index:1;max-width:900px}
.rushi p:not(.clock):not(.eyebrow){color:#dfe2e6;font-size:clamp(17px,.4vw + 15px,21px);max-width:620px}
.clock{font:700 clamp(80px,12vw,240px)/.8 var(--fd);letter-spacing:-.025em;color:transparent;-webkit-text-stroke:0;color:var(--or);margin-bottom:20px}
/* doors carousel */
.car{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(260px,24vw,420px);gap:clamp(12px,1vw,20px);overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--g) 8px;scrollbar-width:none;overscroll-behavior-x:contain}
.car::-webkit-scrollbar{display:none}
.dc{scroll-snap-align:start;background:var(--card);border-radius:calc(var(--r)*1.5);overflow:hidden;border:1px solid var(--line);text-decoration:none;display:flex;flex-direction:column;transition:transform .5s var(--ease),box-shadow .5s}
.dc:hover{transform:translateY(-6px);box-shadow:0 30px 50px -30px rgba(0,0,0,.35)}
.dc .dci{aspect-ratio:8/7;background:#eceae6;overflow:hidden}
.dc img{width:100%;height:100%;object-fit:cover}
.dc span{padding:20px 22px 24px}
.dc b{display:block;font:700 24px/1.1 var(--fd);margin-bottom:6px}
.dc em{display:block;font-style:normal;color:var(--ink2);font-size:16px;line-height:1.45}
.carc{display:flex;align-items:center;gap:10px}
.cbtn{width:52px;height:52px;border-radius:50%;border:1px solid #cfd3d8;background:var(--card);display:grid;place-items:center;cursor:pointer;transition:background .2s,color .2s}
.cbtn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.cbtn svg{width:20px;height:20px}
.cbar{height:2px;background:#dcdfe3;margin-top:28px;position:relative}
.cbar span{position:absolute;left:0;top:0;bottom:0;background:var(--ink);width:20%;transition:transform .2s}
.brands{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.brands span{border:1px solid var(--line);background:var(--card);border-radius:40px;padding:9px 16px;font-weight:600;font-size:16px}
/* reviews */
.rvw{display:grid;grid-template-columns:minmax(260px,.7fr) 2fr;gap:clamp(30px,4vw,80px)}
.score{position:sticky;top:calc(var(--hd) + 30px);align-self:start}
.score b{display:block;font:700 clamp(90px,9vw,180px)/.85 var(--fd);letter-spacing:-.025em}
.stars{display:flex;gap:4px;color:var(--or);margin:16px 0 10px}
.stars svg{width:26px;height:26px}
.score p{color:#b9bdc4}
.rg{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.2vw,22px)}
.rc{background:var(--dk2);border:1px solid #24272c;border-radius:calc(var(--r)*1.5);padding:clamp(24px,2vw,36px);display:flex;flex-direction:column;margin:0}
.rc .stars svg{width:18px;height:18px}
.rc blockquote{margin:0 0 22px;font-size:clamp(16px,.3vw + 15px,19px);line-height:1.6;color:#e6e8eb}
.rc blockquote::before{content:"\201C";display:block;font:700 72px/.6 var(--fd);color:var(--or);margin-bottom:14px}
.rc figcaption{margin-top:auto;display:flex;align-items:center;gap:12px}
.rc figcaption i{width:40px;height:40px;border-radius:50%;background:var(--or);color:var(--ink);display:grid;place-items:center;font:700 16px var(--fd);font-style:normal}
.rc figcaption small{display:block;color:#9ba0a8;font-size:15px}
/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);counter-reset:s}
.st{padding:36px 36px 20px 0;border-right:1px solid var(--line)}
.st+.st{padding-left:36px}
.st:last-child{border-right:0}
.st b{font:700 clamp(56px,4vw,90px)/1 var(--fd);color:var(--or);display:block;margin-bottom:22px}
.st h3{font-size:clamp(22px,.8vw + 15px,30px);margin-bottom:12px}
.st p{color:var(--ink2);margin:0}
/* area map */
.ng{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(30px,4vw,80px);align-items:center}
.chips{list-style:none;padding:0;margin:26px 0 30px;display:flex;flex-wrap:wrap;gap:8px}
.chips a{display:block;text-decoration:none;border:1px solid var(--line);border-radius:40px;padding:8px 14px;font-weight:600;font-size:16px;transition:all .2s}
.chips a:hover,.chips a.hl{background:var(--ink);color:#fff;border-color:var(--ink)}
.addr{display:flex;gap:18px;align-items:flex-start;padding:22px;border:1px solid var(--line);border-radius:calc(var(--r)*1.5);background:var(--gray)}
.addr img{width:120px;height:90px;object-fit:cover;border-radius:4px}
.addr b{display:block;font:700 20px/1.2 var(--fd);margin-bottom:6px}
.addr span{display:block;color:var(--ink2);font-size:15px}
.map{width:100%;height:auto}
.map .gr line{stroke:var(--line);stroke-width:1}
.map .wt{fill:#eef3f7}
.map .rt{fill:none;stroke:var(--or);stroke-width:1.6;stroke-dasharray:1;stroke-dashoffset:1;opacity:.85}
.map.on .rt{animation:dr 1.6s var(--ease) forwards}
.map.on .rt:nth-of-type(3n){animation-delay:.15s}.map.on .rt:nth-of-type(3n+1){animation-delay:.3s}
@keyframes dr{to{stroke-dashoffset:0}}
.map .ct circle{fill:#fff;stroke:var(--ink);stroke-width:2}
.map .ct text{font:600 17px var(--fb);fill:var(--ink)}
.map .ct.hl circle{fill:var(--or);stroke:var(--or)}
.map .ct.hl text{fill:var(--orT)}
.map .hub circle{fill:var(--or)}
.map .hub .pl{fill:none;stroke:var(--or);stroke-width:2;transform-origin:center;transform-box:fill-box;animation:pl 2.2s ease-out infinite}
@keyframes pl{from{transform:scale(1);opacity:.9}to{transform:scale(3.4);opacity:0}}
.map .hub text{font:700 16px var(--fd);letter-spacing:.08em;fill:var(--ink)}
.map .zn{font:700 15px var(--fb);letter-spacing:.2em;fill:#9aa1ab}
/* why grid */
.ig{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,100px);align-items:center}
.chk{list-style:none;padding:0;margin:26px 0 30px;display:grid;gap:14px}
.chk li{display:flex;gap:14px;align-items:flex-start;font-weight:500}
.chk li::before{content:"";flex:none;width:22px;height:22px;margin-top:2px;border-radius:50%;background:var(--or) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12 4 4 8-8' fill='none' stroke='%230c0d0f' stroke-width='3'/%3E%3C/svg%3E") center/14px no-repeat}
.stack{position:relative;aspect-ratio:1/1}
.stack img{position:absolute;border-radius:calc(var(--r)*1.5);object-fit:cover;box-shadow:0 40px 60px -35px rgba(0,0,0,.45)}
.stack .a{left:0;top:0;width:66%;height:78%}
.stack .b{right:0;bottom:0;width:52%;height:58%;border:8px solid #fff}
.stack .badge{position:absolute;left:8%;bottom:6%;background:var(--ink);color:#fff;padding:18px 22px;border-radius:var(--r);max-width:250px}
.stack .badge b{display:block;font:700 30px/1 var(--fd);color:var(--or)}
.stack .badge span{font-size:16px;color:#c9ccd1}
/* cta + footer */
.cta{position:relative;background:var(--dk);color:#fff;overflow:hidden}
.cta>video,.cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}
.ctai{position:relative;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;padding:clamp(80px,9vw,160px) 0}
.ctai h2{font-size:clamp(40px,4.6vw + 10px,110px);max-width:14ch}
.ctai p{color:#d5d8dc;max-width:520px;margin:20px 0 0}
.ctab{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.ctab .bigph{font:700 clamp(28px,2vw + 12px,48px)/1 var(--fd);text-decoration:none;color:#fff}
.ft{background:#070809;color:#a9aeb6;padding:clamp(60px,6vw,100px) 0 30px;font-size:15px}
.ftop{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;border-bottom:1px solid #1f2226;padding-bottom:50px;margin-bottom:50px}
.fbig{font:700 clamp(56px,9vw,200px)/.85 var(--fd);letter-spacing:-.025em;color:#fff;margin:0}
.fbig span{color:var(--or)}
.fg{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}
.fg h2{font:700 15px/1 var(--fb);letter-spacing:.16em;text-transform:uppercase;color:#fff;margin:0 0 18px}
.fl{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:9px}
.fl.two{grid-template-columns:1fr 1fr;column-gap:20px}
.ft a{text-decoration:none}
.ft a:hover{color:#fff}
.fbrand img{height:74px;width:auto;margin-bottom:20px}
.fb{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #1f2226;margin-top:30px;padding-top:24px;font-size:15px}
.abar{display:none}
/* responsive */
@media (max-width:1300px){.fg{grid-template-columns:1fr 1fr}}
@media (max-width:1100px){
.hph span{display:none}
.mb{display:flex}
.nv{position:fixed;inset:0;top:0;background:var(--card);color:var(--ink);padding:calc(var(--hd) + 44px) var(--g) 40px;overflow-y:auto;clip-path:inset(0 0 0 100%);visibility:hidden;transition:clip-path .45s var(--ease),visibility 0s .45s;z-index:-1}
.nv.open{clip-path:inset(0);visibility:visible;transition:clip-path .45s var(--ease)}
body.menu .hd{background:var(--card);color:var(--ink)}
body.menu .hd .lk{opacity:1}body.menu .hd .lw{opacity:0}
body.menu{overflow:hidden}
.mb[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.mb[aria-expanded=true] span:nth-child(2){opacity:0}
.mb[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.top{flex-direction:column;gap:0}
.top>li{border-bottom:1px solid var(--line);flex-wrap:wrap}
.tl{font:700 26px/1 var(--fd);padding:18px 0;flex:1}
.ddb{padding:14px}
.cv{width:22px;height:22px}
.mega{position:static;box-shadow:none;border:0;display:none;opacity:1;visibility:visible;transform:none;width:100%}
.dd.open .mega{display:block}
.mgi{grid-template-columns:1fr;padding:0 0 20px;gap:10px;width:100%}
.mgl{display:none}
.mnf{display:flex;flex-direction:column;gap:12px;margin-top:30px}
.mnf .btn{justify-content:space-between}
.dx{grid-template-columns:1fr}.sg{grid-template-columns:1fr 1fr}
.dxl{flex-direction:row;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1*var(--g));padding-inline:var(--g)}
.dxl button{flex:none;max-width:260px}
.dxl button[aria-selected=true]{transform:none}
.aud{grid-template-columns:1fr}
.at{min-height:440px}
.rvw,.ng,.ig{grid-template-columns:1fr}
.score{position:static}
}
@media (max-width:900px){.hsg{grid-template-columns:1fr 1fr}.hsg>div:nth-child(3){padding-left:0;border-left:0}.hsg>div:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}.steps{grid-template-columns:1fr}.st,.st+.st{padding:30px 0;border-right:0;border-bottom:1px solid var(--line)}.rg{grid-template-columns:1fr}.sg{grid-template-columns:1fr 1fr}}
@media (max-width:700px){
:root{--hd:66px}
.ub{display:none}
.mega{top:var(--hd)}
.logo img{height:42px}
.hcta .btn{display:none}
.hero{min-height:100svh}
.hh{font-size:clamp(44px,12.5vw,76px)}
.hrow .lead{font-size:17px}
.hbtn .btn{flex:1;justify-content:space-between}
.hsg>div{padding:16px 12px 16px 0}.hsg>div+div{padding-left:12px}
.hsg span{font-size:15px}
.dxp{grid-template-columns:1fr;min-height:0}
.dxi{aspect-ratio:4/3}
.sg{grid-template-columns:1fr}
.sc,.sc.wide{aspect-ratio:4/3.4}
.car{grid-auto-columns:78vw}
.stack{aspect-ratio:1/1.05}
.fg{grid-template-columns:1fr}
.abar{display:grid;grid-template-columns:1fr 1.4fr;position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--ink);padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:10px;transform:translateY(110%);transition:transform .35s var(--ease)}
.abar.on{transform:none}
.abar a{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px;border-radius:var(--r);text-decoration:none;font-weight:700;color:#fff;border:1px solid #3a3e44}
.abar a.q{background:var(--or);border-color:var(--or);color:var(--ink)}
.ft{padding-bottom:110px}
}

/* v6 hero: slow-mo + info chapters */
.hvid{opacity:0;transition:opacity 1.2s ease}
.hvid.on{opacity:1}
.hmedia img,.hvid{animation:kb 22s ease-in-out infinite alternate;transform-origin:55% 60%}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.07)}}
.hnow{justify-self:start;width:max-content;display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:#fff;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.18);padding:7px 13px 7px 11px;border-radius:40px;margin:0 0 22px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.hnow i{width:8px;height:8px;border-radius:50%;background:#ff4d3d;animation:blink 1.4s ease-in-out infinite}
@keyframes blink{50%{opacity:.25}}
.hnow span{transition:opacity .3s}
.hin{display:grid;grid-template-columns:1fr minmax(300px,380px);column-gap:60px;align-items:end}
.hin>*:not(.hch){grid-column:1}
.hch{grid-column:2;grid-row:1/span 4;align-self:end;list-style:none;margin:0;padding:0;display:grid;gap:4px}
.hch li{display:grid;grid-template-columns:30px 1fr;column-gap:12px;padding:14px 16px 12px;border-radius:var(--r);background:rgba(12,13,15,.42);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:.62;transition:opacity .4s,background .4s,border-color .4s}
.hch li.on{opacity:1;background:rgba(12,13,15,.72);border-color:rgba(242,138,34,.55)}
.hch b{font:700 15px/1.5 var(--fb);color:var(--or)}
.hch strong{display:block;font:700 17px/1.2 var(--fd);}
.hch small{display:block;font-size:16px;color:#c9ccd1;line-height:1.4;max-height:0;overflow:hidden;transition:max-height .45s var(--ease),margin .45s}
.hch li.on small{max-height:60px;margin-top:4px}
.hch u{grid-column:1/-1;display:block;height:2px;background:rgba(255,255,255,.14);margin-top:12px;text-decoration:none;overflow:hidden}
.hch em{display:block;height:100%;width:100%;background:var(--or);transform:scaleX(0);transform-origin:left}
.hch li.done em{transform:scaleX(1)}
@media (max-width:1100px){.hin{grid-template-columns:1fr}.hch{display:none}}
@media (max-width:700px){
.dsk{display:none}
.hmedia::after{background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.2) 22%,rgba(0,0,0,.62) 45%,rgba(0,0,0,.94) 100%)}
.hin{padding-bottom:28px}
.hh{margin-bottom:18px}
.hrow{gap:20px}
.hbtn{width:100%}
.hbtn .btn.lg{padding:17px 20px}
.hnow{margin-bottom:16px}
/* swipe rows instead of long stacks */
.sg,.aud,.rg{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:84%;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:calc(-1*var(--g));padding:0 var(--g) 6px;scroll-padding-inline:var(--g);scrollbar-width:none}
.sg::-webkit-scrollbar,.aud::-webkit-scrollbar,.rg::-webkit-scrollbar{display:none}
.sg>*,.aud>*,.rg>*{scroll-snap-align:start}
.sc,.sc.wide{aspect-ratio:3/4}
.at{min-height:520px}
.rc blockquote{font-size:16px}
.swipe{display:flex!important}
.map .ct text{font-size:30px}
.map .ct circle{r:9px}
.map .hub text{font-size:26px}
.rg{align-items:start}
.ftop .ctab{display:none}
.ftop{padding-bottom:30px;margin-bottom:36px}
.map .zn{display:none}
.sec{padding:64px 0}
.sh{margin-bottom:28px}
.xl{font-size:clamp(32px,9vw,44px)}
.steps .st b{font-size:48px;margin-bottom:12px}
.rush{padding:90px 0}
.clock{font-size:96px}
}
.swipe{display:none;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--mut);margin:14px 0 0}
.swipe::after{content:"";width:34px;height:2px;background:currentColor;animation:sw 1.6s ease-in-out infinite}
.sec.dark .swipe{color:#9ba0a8}
@keyframes sw{50%{transform:translateX(8px)}}

/* v9 quick-book chips */
.qb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%;margin-top:4px}
.qb span{font-size:16px;color:#c9ccd1;margin-right:4px}
.qb button{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.28);color:#fff;border-radius:40px;padding:8px 14px;font-size:16px;font-weight:600;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .2s,color .2s,border-color .2s}
.qb button:hover{background:var(--or);border-color:var(--or);color:var(--ink)}
.dxa .lnk{align-self:center;margin-left:6px}
/* brand showroom */
.brw{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:clamp(20px,3vw,56px);align-items:start}
.brt{display:flex;flex-direction:column;gap:6px;position:sticky;top:calc(var(--hd) + 20px)}
.brt button{text-align:left;background:none;border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;cursor:pointer;transition:all .25s var(--ease)}
.brt button b{display:block;font:700 19px/1.1 var(--fd);}
.brt button small{display:block;font-size:16px;color:var(--mut);margin-top:4px}
.brt button:hover{border-color:#c9ccd1}
.brt button[aria-selected=true]{background:var(--ink);color:#fff;border-color:var(--ink);transform:translateX(6px)}
.brt button[aria-selected=true] small{color:var(--or)}
.brp{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(20px,3vw,48px);align-items:center;animation:brin .5s var(--ease)}
.brp[hidden]{display:none}
@keyframes brin{from{opacity:0;transform:translateY(12px)}}
.brx h3{font-size:clamp(28px,1.6vw + 14px,46px);margin-bottom:14px}
.brx>p{color:var(--ink2)}
.brl{list-style:none;padding:0;margin:20px 0 24px;display:flex;flex-wrap:wrap;gap:7px}
.brl li{font-size:15px;font-weight:600;background:var(--gray);border:1px solid var(--line);border-radius:40px;padding:7px 12px}
.brk{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center}
.brg{display:grid;gap:10px;grid-template-columns:1fr 1fr;grid-auto-rows:clamp(150px,13vw,240px)}
.brg.n3 .bim:first-child{grid-row:span 2}
.brg.n2{grid-template-columns:1fr 1fr;grid-auto-rows:clamp(260px,24vw,440px)}
.bim{background:var(--card);border:1px solid var(--line);border-radius:calc(var(--r)*1.5);overflow:hidden;display:grid;place-items:center;padding:14px}
.bim img{width:100%;height:100%;object-fit:contain;transition:transform .8s var(--ease)}
.bim:hover img{transform:scale(1.05)}
.also{margin:34px 0 0;color:var(--mut);font-size:15px}
.also b{color:var(--ink)}
/* booking drawer */
.bk{position:fixed;inset:0;z-index:120;visibility:hidden;transition:visibility 0s .45s}
.bk.open{visibility:visible;transition:none}
.bkb{position:absolute;inset:0;background:rgba(8,9,10,.55);opacity:0;transition:opacity .4s;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.bk.open .bkb{opacity:1}
.bks{position:absolute;top:0;right:0;bottom:0;width:min(540px,100%);background:var(--card);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .45s var(--ease);box-shadow:-30px 0 60px -20px rgba(0,0,0,.35)}
.bk.open .bks{transform:none}
.bkh{display:flex;justify-content:space-between;align-items:flex-start;padding:26px 28px 16px}
.bkh h2{font-size:32px}
.bkst{font-size:16px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--orT);margin:0 0 8px}
.bkx{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--card);font-size:26px;line-height:1;cursor:pointer}
.bkp{height:3px;background:var(--line);margin:0 28px}
.bkp span{display:block;height:100%;width:25%;background:var(--or);transition:width .4s var(--ease)}
.bkf{flex:1;overflow-y:auto;padding:22px 28px 10px;overscroll-behavior:contain}
.bstep{display:none;border:0;margin:0;padding:0;min-width:0}
.bstep.on{display:block;animation:brin .4s var(--ease)}
.bstep legend{font:700 22px/1.15 var(--fd);margin-bottom:16px;padding:0}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.opt,.win,.day,.ptype button{text-align:left;background:var(--card);border:1.5px solid var(--line);border-radius:var(--r);padding:14px;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}
.opt b,.win b{display:block;font-size:15px}
.opt small,.win small{display:block;font-size:16px;color:var(--mut);margin-top:3px;line-height:1.35}
.opt:hover,.win:hover,.day:hover,.ptype button:hover{border-color:#b9bec5}
.opt[aria-checked=true],.win[aria-checked=true],.day[aria-checked=true],.ptype button[aria-checked=true]{border-color:var(--ink);background:var(--card)7ef;box-shadow:inset 0 0 0 1px var(--ink)}
.opt.em b{color:#a1221a}
.bemg{margin-top:14px;background:#fde6e4;border-radius:var(--r);padding:16px;display:grid;gap:6px}
.bemg b{color:#a1221a}
.bemg .btn{justify-self:start;margin-top:6px}
.days{display:grid;grid-auto-flow:column;grid-auto-columns:84px;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px;margin-bottom:16px}
.days::-webkit-scrollbar{display:none}
.day{text-align:center;padding:12px 6px}
.day small{display:block;font-size:16px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.day b{display:block;font:700 24px/1.1 var(--fd);margin:4px 0 0}
.day em{display:block;font-style:normal;font-size:16px;color:var(--mut)}
.day.asap{background:var(--ink);color:#fff;border-color:var(--ink)}
.day.asap small,.day.asap em{color:var(--or)}
.day.asap[aria-checked=true]{background:#000;box-shadow:0 0 0 2px var(--or)}
.wins{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.bnote{font-size:16px;color:var(--mut);margin:14px 0 0}
.bkf label{display:block;font-size:16px;font-weight:600;margin-bottom:14px}
.bkf input,.bkf textarea{display:block;width:100%;margin-top:6px;font:inherit;font-size:16px;padding:14px;border:1.5px solid var(--line);border-radius:var(--r);background:var(--card);transition:border-color .2s}
.bkf input:focus,.bkf textarea:focus{outline:0;border-color:var(--ink)}
.bkf input.bad{border-color:#c62828}
.ptype{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.ptype button{padding:10px 14px;font-weight:600;font-size:16px}
.hp{position:absolute;left:-9999px;width:1px;height:1px}
.bsum{display:grid;gap:0;margin:0;border:1px solid var(--line);border-radius:var(--r)}
.bsum div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}
.bsum div:last-child{border-bottom:0}
.bsum dt{font-size:16px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);padding-top:2px}
.bsum dd{margin:0;font-weight:600}
.bsum button{background:none;border:0;color:var(--orT);font-weight:700;cursor:pointer;padding:0;font-size:16px;margin-left:8px}
.bdone{text-align:center;padding:30px 0}
.bdone h3{font-size:34px;margin:18px 0 10px}
.bdone p{color:var(--ink2)}
.tick svg{width:84px;height:84px;margin:0 auto;fill:none;stroke:#1b9c55;stroke-width:3}
.tick circle{stroke-dasharray:151;stroke-dashoffset:151;animation:tk .7s var(--ease) forwards}
.tick path{stroke-dasharray:40;stroke-dashoffset:40;animation:tk .45s .55s var(--ease) forwards}
@keyframes tk{to{stroke-dashoffset:0}}
.berr{color:#a1221a;font-weight:600;font-size:16px;margin:12px 0 0}
.bkn{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 28px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--card)}
.bkn .btn{flex:1;justify-content:space-between;max-width:280px;margin-left:auto}
.bkbk{background:none;border:0;font-weight:700;cursor:pointer;padding:12px 4px;color:var(--ink2)}
.bkbk[hidden]{display:none}
.bk.done .bkn{display:none}
body.bko{overflow:hidden}
/* sample switcher (preview only) */
.vsw{position:fixed;left:14px;bottom:14px;z-index:90;display:flex;align-items:center;gap:4px;background:rgba(12,13,15,.86);color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:40px;padding:5px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:16px;box-shadow:0 10px 30px -10px rgba(0,0,0,.5)}
.vsw a{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:24px;line-height:1;background:rgba(255,255,255,.08)}
.vsw a:hover{background:var(--or);color:var(--ink)}
.vsw span{padding:0 10px;line-height:1.25;max-width:240px}
.vsw b{display:block;color:var(--or);font-size:15px}
.vsw small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.clock small{font-size:.3em;-webkit-text-stroke:0}
@media (max-width:1100px){.brw{grid-template-columns:1fr}.brt{position:static;flex-direction:row;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1*var(--g));padding:0 var(--g) 4px}.brt::-webkit-scrollbar{display:none}.brt button{flex:none}.brt button[aria-selected=true]{transform:none}.brp{grid-template-columns:1fr}}
@media (max-width:700px){
.qb{display:none}
.bks{top:auto;height:94svh;width:100%;border-radius:18px 18px 0 0;transform:translateY(100%)}
.bkh{padding:20px 20px 12px}.bkh h2{font-size:26px}.bkp{margin:0 20px}.bkf{padding:18px 20px 10px}.bkn{padding:12px 20px calc(12px + env(safe-area-inset-bottom))}
.opts{grid-template-columns:1fr 1fr}.opt{padding:12px}
.wins{grid-template-columns:1fr}
.win{display:flex;justify-content:space-between;align-items:center}.win small{margin:0}
.vsw{left:auto;right:8px;bottom:auto;top:calc(var(--hd) + 8px);font-size:16px;padding:3px}
.vsw a{width:30px;height:30px;font-size:20px}
.vsw span{padding:0 6px}
.vsw small{display:none}
.brg,.brg.n2{grid-auto-rows:150px}
.brt button{padding:10px 14px}.brt button b{font-size:16px}
}

/* showroom v2 */
.srbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px;flex-wrap:wrap}
.srtabs{display:flex;gap:6px;flex-wrap:wrap}
.srtabs button{background:var(--card);border:1px solid var(--line);border-radius:40px;padding:10px 18px;cursor:pointer;text-align:left;transition:all .25s var(--ease)}
.srtabs button b{font:700 16px/1 var(--fd);}
.srtabs button small{display:none}
.srtabs button:hover{border-color:#b9bec5}
.srtabs button[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.srtabs button.off{display:none}
.seg{display:inline-flex;background:var(--gray);border:1px solid var(--line);border-radius:40px;padding:4px}
.seg button{background:none;border:0;border-radius:40px;padding:8px 14px;font-weight:600;font-size:16px;cursor:pointer;color:var(--ink2)}
.seg button[aria-checked=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.srm{display:grid;grid-template-columns:minmax(280px,.8fr) 1.5fr;gap:clamp(24px,3.5vw,64px);align-items:start}
.srx{position:sticky;top:calc(var(--hd) + 24px)}
.srx h3{font-size:clamp(30px,1.8vw + 14px,52px);margin-bottom:14px}
.srx>p:not(.eyebrow){color:var(--ink2)}
.srm.sw .srx,.srm.sw .spot{animation:brin .45s var(--ease)}
.spot{margin:0;background:var(--card);border:1px solid var(--line);border-radius:calc(var(--r)*2);overflow:hidden;box-shadow:0 30px 60px -40px rgba(0,0,0,.25)}
.spi{position:relative;aspect-ratio:4/3;background:var(--card);cursor:zoom-in;overflow:hidden}
.spi>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .3s,transform .6s var(--ease)}
.spi.ld>img{opacity:0;transform:scale(.97)}
.lens{position:absolute;width:220px;height:220px;border-radius:50%;pointer-events:none;border:3px solid #fff;box-shadow:0 10px 40px rgba(0,0,0,.28),0 0 0 1px rgba(0,0,0,.08);background-repeat:no-repeat;background-color:#fff;opacity:0;transform:scale(.6);transition:opacity .2s,transform .2s}
.spi.z .lens{opacity:1;transform:scale(1)}
.zhint{position:absolute;left:14px;bottom:14px;font-size:16px;font-weight:600;color:var(--mut);background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:30px;padding:6px 10px;transition:opacity .3s}
.spi.z .zhint{opacity:0}
.spn{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.92);font-size:26px;line-height:1;cursor:pointer;opacity:0;transition:opacity .25s,background .2s}
.spi:hover .spn,.spn:focus-visible{opacity:1}
.spn:hover{background:var(--ink);color:#fff}
.spn.prev{left:14px}.spn.next{right:14px}
.spot figcaption{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;border-top:1px solid var(--line)}
.spot figcaption small{display:block;font-size:16px;font-weight:700;letter-spacing:.12em;color:var(--orT)}
.spot figcaption b{display:block;font:700 22px/1.15 var(--fd);margin:4px 0}
.spot figcaption em{display:block;font-style:normal;font-size:16px;color:var(--ink2);line-height:1.45}
.spot figcaption .btn{flex:none}
.ths{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(120px,1fr);gap:10px;margin-top:12px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.ths::-webkit-scrollbar{display:none}
.th{background:var(--card);border:1.5px solid var(--line);border-radius:var(--r);padding:6px 6px 8px;cursor:pointer;transition:border-color .2s,transform .3s var(--ease)}
.th img{width:100%;aspect-ratio:4/3;object-fit:contain}
.th span{display:block;font-size:16px;font-weight:600;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.th:hover{transform:translateY(-3px);border-color:#b9bec5}
.th[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.th .bar{display:block;height:2px;background:var(--line);margin-top:6px;overflow:hidden}
.zbox{position:fixed;inset:0;z-index:130;background:var(--card);overflow:auto;display:grid;place-items:center}
.zbox[hidden]{display:none}
.zbox img{width:auto;max-width:none;height:auto;min-width:100%;cursor:zoom-out}
.zbox.fit img{min-width:0;max-width:100%;max-height:100vh}
.zbox .bkx{position:fixed;top:14px;right:14px;z-index:2;font-size:28px}
@media (max-width:1100px){.srm{grid-template-columns:1fr}.srx{position:static}.srtabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1*var(--g));padding:0 var(--g)}.srtabs::-webkit-scrollbar{display:none}.srtabs button{flex:none}.srbar{flex-direction:column;align-items:stretch;flex-wrap:nowrap}.seg{align-self:flex-start}}
@media (max-width:700px){.spot figcaption{flex-direction:column;align-items:stretch}.spot figcaption .btn{justify-content:space-between}.spn{opacity:1;width:40px;height:40px}.zhint{display:none}.ths{grid-auto-columns:104px}.srx .brl{margin:14px 0 16px}}

/* v12: text button, theme toggle, strata */
.thm{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer;transition:background .2s,border-color .2s}
.hd.solid .thm{border-color:var(--line)}
.thm:hover{background:rgba(127,127,127,.15)}
.thm .su{display:none}
[data-theme=dark] .thm .su{display:block}[data-theme=dark] .thm .mo{display:none}
.htx{display:flex;align-items:center;gap:7px;text-decoration:none;font-weight:700}
.ubi span a+a{margin-left:0}
.mlang{margin:10px 0 0;font-weight:600}
.mlang a{text-decoration:none}
.stg2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,90px);align-items:center}
.stv{position:relative;aspect-ratio:4/4.4;border-radius:calc(var(--r)*2);overflow:hidden;background:var(--dk)}
.stv video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.stbadge{position:absolute;left:18px;bottom:18px;background:rgba(10,11,13,.8);color:#fff;border-radius:var(--r);padding:14px 16px;font-size:16px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.stbadge b{display:block;font:700 22px/1.1 var(--fd);color:var(--or)}
.strata .hbtn{align-items:center;gap:18px}
.spi,.th{background:#fff}
.btn:not(.glass):not(.dark),.qb button:hover,.go,.abar a.q,.rc figcaption i,.marq,.vsw a:hover{color:#0c0d0f}
.mq span:nth-of-type(even){-webkit-text-stroke-color:#0c0d0f}
.mq i{background:#0c0d0f}
/* dark theme */
:root[data-theme=dark]{--bg:#0d0e10;--card:#16181b;--ink:#eef0f3;--ink2:#c2c7ce;--mut:#8e959f;--line:#272b31;--gray:#121417;--orT:#f6a45c;--hdbg:rgba(13,14,16,.92);color-scheme:dark}
[data-theme=dark] .hd.solid .lk{opacity:0}[data-theme=dark] .hd.solid .lw{opacity:1}
[data-theme=dark] :is(.btn.dark,.dxl button[aria-selected=true],.srtabs button[aria-selected=true],.chips a:hover,.chips a.hl,.cbtn:hover,.day.asap,.spn:hover,.th[aria-pressed=true]){background:#fff;color:#0c0d0f;border-color:#fff}
[data-theme=dark] .th[aria-pressed=true]{box-shadow:0 0 0 2px var(--or)}
[data-theme=dark] .dxl button[aria-selected=true] small,[data-theme=dark] .dxl button[aria-selected=true] b{color:var(--orT)}
[data-theme=dark] :is(.abar,.stack .badge,.skip){background:#000}
[data-theme=dark] :is(.opt,.win,.day,.ptype button)[aria-checked=true]{background:#2a2118;box-shadow:inset 0 0 0 1px var(--or);border-color:var(--or)}
[data-theme=dark] .day.asap[aria-checked=true]{background:#fff}
[data-theme=dark] .sev{background:#3a2a17;color:#ffc58a}[data-theme=dark] .sev.hi{background:#3d1b18;color:#ff9f95}
[data-theme=dark] .bemg{background:#3d1b18}[data-theme=dark] .bemg b{color:#ff9f95}
[data-theme=dark] .spot,[data-theme=dark] .th{border-color:#2f343b}
[data-theme=dark] .zhint{background:rgba(255,255,255,.92);color:#555}
[data-theme=dark] .spn{background:rgba(255,255,255,.92);color:#0c0d0f}
[data-theme=dark] .dc .dci{background:#e9e7e3}
[data-theme=dark] .map .zn{fill:#6e7580}
[data-theme=dark] .marq{border-color:var(--or)}
@media (max-width:1100px){.htx span{display:none}}
@media (max-width:1100px){.stg2{grid-template-columns:1fr}.stv{aspect-ratio:16/11}}
@media (max-width:700px){.txb{display:none}.abar{grid-template-columns:1fr 1fr 1.5fr}.thm{width:36px;height:36px}.hcta{gap:12px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}}
.bemg[hidden]{display:none}
.srm>*,.srbar>*,.srs{min-width:0}
/* ===== v18: softer type, calmer sizes, photo hero, 3D blueprint section ===== */
.eyebrow{font:600 15px/1.2 var(--fb);letter-spacing:.12em}
.xl{font-size:clamp(30px,1.9vw + 16px,60px)}
.lead{font-size:clamp(17px,.35vw + 15px,20px)}
.hh{font-size:clamp(40px,3.4vw + 16px,88px);line-height:1.04;letter-spacing:-.025em;max-width:15ch;margin:0 0 22px;font-weight:700}
.hh span{display:inline}
.hin{padding:calc(var(--hd) + 80px) 0 clamp(36px,5vh,64px);max-width:none}
.hin .lead{color:#e8eaed;max-width:34em;margin:0 0 30px}
.hmedia::after{background:linear-gradient(90deg,rgba(6,7,9,.86) 0%,rgba(6,7,9,.55) 38%,rgba(6,7,9,.08) 70%),linear-gradient(180deg,rgba(6,7,9,.55) 0%,rgba(6,7,9,0) 22%,rgba(6,7,9,0) 62%,rgba(6,7,9,.8) 100%)}
.hsg b{font-size:clamp(22px,1.2vw + 12px,34px)}
.sct b{font-size:clamp(20px,.7vw + 14px,26px)}
.at h3{font-size:clamp(24px,1.1vw + 14px,38px)}
.dxt h3{font-size:clamp(24px,1vw + 14px,34px)}
.score b{font-size:clamp(72px,6vw,128px)}
.st b{font-size:clamp(36px,2.4vw,52px)}
.clock{font-size:clamp(64px,8vw,150px);opacity:.92}
.fbig{font-size:clamp(46px,6vw,120px);line-height:.95}
.ftl{color:#a9aeb6;max-width:460px;margin:22px 0 0;font-size:16px}
.mgl .mh,.mlt b{font-weight:700}
.bps{background:#0b0c0e;color:#fff;padding:clamp(72px,8vw,140px) 0 clamp(36px,4vw,60px)}
.bph{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 40px;flex-wrap:wrap;margin-bottom:clamp(28px,3vw,48px)}
.bph .xl{margin:0}
.bph .shp{color:#aab0b8;max-width:460px;margin:0}
.bp{position:relative;width:100%;aspect-ratio:16/9;max-height:92vh;overflow:hidden;background:#0b0c0e;cursor:grab;touch-action:pan-y}
.bpp{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .8s}
.bp.on .bpp{opacity:0;pointer-events:none}
.bpst{position:absolute;left:0;top:0;width:1920px;height:1080px;transform-origin:0 0}
.bpk{display:flex;gap:10px 30px;flex-wrap:wrap;padding-top:24px;font-size:16px;color:#c9ccd1}
.bpk b{color:var(--or);font-weight:700;margin-right:8px;font-variant-numeric:tabular-nums}
.rush>img{opacity:.5}
@media (max-width:700px){
.hh{font-size:clamp(34px,9.6vw,48px);max-width:none}
.hin{padding-top:calc(var(--hd) + 40px)}
.hin .lead{font-size:16.5px;margin-bottom:22px}
.hmedia::after{background:linear-gradient(180deg,rgba(6,7,9,.55) 0%,rgba(6,7,9,.15) 25%,rgba(6,7,9,.7) 55%,rgba(6,7,9,.94) 100%)}
.xl{font-size:clamp(28px,7.6vw,36px)}
.bp{aspect-ratio:auto;height:min(118vw,520px)}
.bpk{font-size:16px;gap:8px 18px}
.fbig{font-size:clamp(44px,13vw,64px)}
.bpst .bpspec{display:none}}
/* v20: keep the truck logo clear of the hero text */
.hh{max-width:11.5ch}
.hin .lead{max-width:30em}
@media (min-width:701px){.hin>*{max-width:min(560px,44vw)}.hin .hh{max-width:min(560px,44vw)}}
@media (max-width:700px){
.hero{justify-content:flex-start}
.hmedia{bottom:auto;height:min(62vh,540px)}
.hmedia::after{background:linear-gradient(180deg,rgba(6,7,9,.35) 0%,rgba(6,7,9,0) 30%,rgba(6,7,9,0) 70%,rgba(11,12,14,1) 100%)}
.hin{padding-top:calc(min(62vh,540px) - 40px)}
.hmedia img{object-position:62% 50%}}
@media (min-width:701px){.hin>.hbtn{max-width:none}}
/* v21: blueprint fits the screen, calmer heading */
.bps{padding-top:clamp(56px,6vw,100px)}
.bph .xl{font-size:clamp(26px,1.4vw + 14px,44px)}
.bph .shp{font-size:15px}
.bp{aspect-ratio:auto;height:min(56.25vw,calc(100svh - var(--hd) - 40px));max-height:none}
@media (max-width:700px){.bp{height:min(118vw,520px)}}
@media (max-width:700px){.bp{height:72vw}}
/* v25: blueprint as a page background + soft section blending */
:root{--fh:clamp(64px,9vw,180px);--grid:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px)}
.bps{position:relative;overflow:hidden;background:var(--dk);padding:clamp(64px,7vw,120px) 0 clamp(64px,7vw,130px)}
.bps::before{content:"";position:absolute;inset:0;background-image:var(--grid);background-size:64px 64px;background-position:center top;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 55% 55%,#000 30%,transparent 85%);mask-image:radial-gradient(ellipse 80% 70% at 55% 55%,#000 30%,transparent 85%);pointer-events:none}
.bph{position:relative;z-index:2;pointer-events:none}
.bph .xl{font-size:clamp(30px,1.8vw + 14px,52px);text-shadow:0 2px 30px rgba(11,12,14,.9)}
.bph .shp{text-shadow:0 1px 16px rgba(11,12,14,.95)}
.bp{background:transparent;margin-top:clamp(-70px,-3vw,-20px);height:min(60vw,calc(100svh - var(--hd) + 60px));
 -webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent),linear-gradient(180deg,transparent,#000 12%,#000 80%,transparent);-webkit-mask-composite:source-in;
 mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent),linear-gradient(180deg,transparent,#000 12%,#000 80%,transparent);mask-composite:intersect}
.bpk{position:relative;z-index:2;margin-top:clamp(-90px,-5vw,-30px);padding-top:22px;border-top:1px solid;border-image:linear-gradient(90deg,rgba(242,138,34,.6),rgba(255,255,255,.08) 40%,transparent) 1}
.bpk span{opacity:.85;transition:opacity .2s}.bpk span:hover{opacity:1}
/* dark sections share the blueprint grid */
.sec.dark{position:relative;isolation:isolate;background:var(--dk);background-image:var(--grid);background-size:64px 64px;background-position:center}
/* fades between light and dark */
.sec.dark::before,.rush::before,.cta::before,.sec.dark::after,.bps::after{content:"";position:absolute;left:0;right:0;height:var(--fh);pointer-events:none;z-index:2}
.sec.dark::before,.rush::before,.cta::before{top:0;background:linear-gradient(0deg,color-mix(in srgb,var(--ft,transparent) 0%,transparent) 0%,color-mix(in srgb,var(--ft,transparent) 3%,transparent) 18%,color-mix(in srgb,var(--ft,transparent) 9%,transparent) 32%,color-mix(in srgb,var(--ft,transparent) 19%,transparent) 45%,color-mix(in srgb,var(--ft,transparent) 34%,transparent) 57%,color-mix(in srgb,var(--ft,transparent) 52%,transparent) 68%,color-mix(in srgb,var(--ft,transparent) 70%,transparent) 78%,color-mix(in srgb,var(--ft,transparent) 85%,transparent) 87%,color-mix(in srgb,var(--ft,transparent) 95%,transparent) 94%,color-mix(in srgb,var(--ft,transparent) 100%,transparent) 100%)}
.sec.dark::after,.bps::after{bottom:0;background:linear-gradient(180deg,color-mix(in srgb,var(--fb,transparent) 0%,transparent) 0%,color-mix(in srgb,var(--fb,transparent) 3%,transparent) 18%,color-mix(in srgb,var(--fb,transparent) 9%,transparent) 32%,color-mix(in srgb,var(--fb,transparent) 19%,transparent) 45%,color-mix(in srgb,var(--fb,transparent) 34%,transparent) 57%,color-mix(in srgb,var(--fb,transparent) 52%,transparent) 68%,color-mix(in srgb,var(--fb,transparent) 70%,transparent) 78%,color-mix(in srgb,var(--fb,transparent) 85%,transparent) 87%,color-mix(in srgb,var(--fb,transparent) 95%,transparent) 94%,color-mix(in srgb,var(--fb,transparent) 100%,transparent) 100%)}
.sec:not(.dark):not(.gray)+:is(.sec.dark,.rush,.cta){--ft:var(--bg)}
.sec.gray+:is(.sec.dark,.rush,.cta){--ft:var(--gray)}
:is(.sec.dark,.bps,.rush):has(+.sec:not(.dark):not(.gray)){--fb:var(--bg)}
:is(.sec.dark,.bps,.rush):has(+.sec.gray){--fb:var(--gray)}
.rush::after{background:linear-gradient(180deg,transparent calc(100% - var(--fh)),color-mix(in srgb,var(--fb,transparent) 19%,transparent) calc(100% - var(--fh)*.55),color-mix(in srgb,var(--fb,transparent) 70%,transparent) calc(100% - var(--fh)*.22),var(--fb,transparent)),linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.2))}
.rushi{z-index:3}
.sec.gray{background:linear-gradient(var(--bg),var(--gray) var(--fh),var(--gray) calc(100% - var(--fh)),var(--bg))}
.bps+.sec.gray{background:linear-gradient(var(--gray) calc(100% - var(--fh)),var(--bg))}
.sec.gray:has(+.cta){background:linear-gradient(var(--bg),var(--gray) var(--fh))}
.sec.dark>.wrap,.cta>*:not(video):not(img){position:relative;z-index:3}
@media (max-width:700px){.bp{margin-top:-24px;height:84vw}.bpk{margin-top:-10px}}
@media (max-width:700px){.hmedia{-webkit-mask-image:linear-gradient(#000 68%,transparent);mask-image:linear-gradient(#000 68%,transparent)}}
.wins .wh{grid-column:1/-1;margin:4px 0;color:var(--mute,#667487);font-size:16px}
/* v26 (2026-09-29): clean + easy-to-read pass — bigger type, stronger contrast, no decorative fades/grids */
:root{--mut:#4a515b;--ink2:#2b3036}
:root[data-theme=dark]{--mut:#b3bac4;--ink2:#d9dde3}
body{font-size:clamp(17px,.25vw + 16px,19px);line-height:1.65}
p{line-height:1.65}
.lead{font-size:clamp(19px,.5vw + 16px,23px);line-height:1.55}
.eyebrow{font:700 15px/1.2 var(--fb);letter-spacing:.08em}
h1,h2,h3{letter-spacing:-.012em;line-height:1.12}
.hh{letter-spacing:-.015em;line-height:1.06}
.btn{font-size:17px;padding:18px 26px;min-height:56px}
.btn.lg{font-size:18px}
.shp,.sg p,.aud p,.st p,.chk li,.rg p{font-size:clamp(17px,.2vw + 16px,19px);line-height:1.6}
/* soft section fades kept (owner likes them); grid texture removed */
.sec.dark{background-image:none}
/* the 3D door sits on a real engineering-blueprint sheet */
.bps{background:#0f3057}
.bps::before{background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:96px 96px,96px 96px,24px 24px,24px 24px;-webkit-mask-image:none;mask-image:none}
.bph .xl,.bph .shp{text-shadow:none}
.bps .eyebrow.lt{color:#cfe0f5}.bps .eyebrow.lt::before{background:#cfe0f5}
.bpk{border-image:none;border-top:1px solid rgba(255,255,255,.35)}
.bpk span{opacity:1;font-size:17px}.bpk b{color:#fff}
.bp{-webkit-mask-image:none;mask-image:none}
.wins .wh{color:var(--mut);font-size:16px}
/* v26 hero job reel: crossfading real-job carousel + blurred ambient backdrop */
.hero2{position:relative;min-height:auto;padding:calc(var(--hd) + 56px) 0 0;background:#0b0c0e;color:#fff;overflow:hidden}
.hero2 .hbgs{position:absolute;inset:0;z-index:0}
.hero2 .hbg{position:absolute;inset:-40px;background-size:cover;background-position:center;filter:blur(38px) saturate(1.1) brightness(.42);opacity:0;transition:opacity 1.4s ease}
.hero2 .hbg.on{opacity:1}
.hero2::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(11,12,14,.92) 0%,rgba(11,12,14,.6) 45%,rgba(11,12,14,.35) 100%)}
.h2g{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(28px,4vw,72px);align-items:center;padding-bottom:clamp(40px,5vw,72px)}
.hin2 .hh{max-width:14ch}
.hreel{position:relative}
.hjs{position:relative;aspect-ratio:4/3;border-radius:18px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.08);background:#16181b;touch-action:pan-y;cursor:grab}
.hj{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.2s ease;pointer-events:none}
.hj.on{opacity:1;pointer-events:auto}
.hj img{width:100%;height:100%;object-fit:cover;transform:scale(1.001);transition:transform 7s linear}
.hj.on img{transform:scale(1.08)}
.hj figcaption{position:absolute;left:0;right:0;bottom:0;padding:48px 24px 20px;background:linear-gradient(transparent,rgba(0,0,0,.78));display:flex;flex-direction:column;gap:4px}
.hj figcaption small{font:700 14px/1.2 var(--fb);letter-spacing:.08em;text-transform:uppercase;color:var(--or)}
.hj figcaption b{font:700 clamp(20px,1vw + 12px,26px)/1.2 var(--fd);color:#fff}
.hjbar{display:flex;align-items:center;gap:14px;margin-top:16px}
.hjn{font:600 16px/1 var(--fb);color:#c9ced6;min-width:70px}.hjn b{color:#fff}
.hjp{flex:1;height:3px;background:rgba(255,255,255,.18);border-radius:3px;overflow:hidden}.hjp i{display:block;height:100%;width:0;background:var(--or)}
.hja{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.06);color:#fff;font-size:26px;line-height:1;cursor:pointer;transition:background .2s,border-color .2s}
.hja:hover,.hja:focus-visible{background:var(--or);border-color:var(--or);color:#0b0c0e}
.hjts{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:14px}
.hjt{padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:none;cursor:pointer;opacity:.55;transition:opacity .25s,border-color .25s,transform .25s}
.hjt img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.hjt:hover{opacity:.9;transform:translateY(-2px)}.hjt.on{opacity:1;border-color:var(--or)}
.hero2 .hstats{position:relative;z-index:2}
@media (max-width:900px){.h2g{grid-template-columns:1fr}.hin2 .hh{max-width:none}.hjts{grid-template-columns:repeat(6,minmax(56px,1fr));overflow-x:auto}.hero2{padding-top:calc(var(--hd) + 28px)}}
@media (prefers-reduced-motion:reduce){.hj,.hbg{transition:none}.hj img,.hj.on img{transition:none;transform:none}}
/* v26 "Why" section: crossfading job carousel replaces the stacked photos */
.wreel{position:relative}
.wreel .hjs{aspect-ratio:4/5;cursor:grab}
.wreel .hjbar .hjn{color:var(--mut)}.wreel .hjbar .hjn b{color:var(--ink)}
.wreel .hjp{background:var(--line)}
.wreel .hja{border-color:var(--line);color:var(--ink);background:var(--card)}
.wreel .badge2{position:absolute;left:18px;top:18px;z-index:3;background:rgba(11,12,14,.82);color:#fff;border-radius:10px;padding:10px 14px;font:600 15px/1.3 var(--fb)}
.wreel .badge2 b{color:var(--or);display:block;font:700 19px/1.2 var(--fd)}
.hero2 .lead{color:#e3e7ec}.hero2 .eyebrow.lt{color:#fff}
.hero2 .hbtn{flex-wrap:wrap;gap:12px}
/* ================= v27 premium commercial pass (2026-09-29) ================= */
:root{--or:#e2721b;--or2:#c9620f;--orT:#b4560f;--ink:#0f1a24;--ink2:#34404c;--mut:#56616d;--dk:#0f1a24;--dk2:#16242f;--gray:#f4f6f8;--line:#e2e6eb;--r:6px}
:root[data-theme=dark]{--bg:#0b131a;--card:#121e28;--gray:#0f1922;--line:#223140;--ink:#eef2f6;--ink2:#c6ced6;--mut:#9aa6b2}
body{letter-spacing:-.003em}
h1,h2,h3{font-weight:700;letter-spacing:-.018em}
.xl{font-size:clamp(32px,1.9vw + 18px,56px);line-height:1.1}
.sec{padding:clamp(80px,8vw,136px) 0}
.eyebrow{font:600 14px/1.2 var(--fb);letter-spacing:.14em;color:var(--orT)}
.eyebrow::before{width:28px;height:2px}
/* buttons: solid, squared, calm */
.btn{border-radius:6px;font-weight:600;letter-spacing:0;box-shadow:none}
.btn:hover{background:var(--or2);border-color:var(--or2)}
.btn.glass{background:transparent;border:1px solid rgba(255,255,255,.55);backdrop-filter:none;-webkit-backdrop-filter:none;color:#fff}
.btn.glass:hover{background:#fff;color:var(--ink);border-color:#fff}
.btn.ghost{background:transparent;border:1px solid var(--ink);color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:#fff}
.btn.dark{background:var(--ink);border-color:var(--ink)}
/* header + hero in deep navy instead of black */
.hd{--hdbg:rgba(15,26,36,.97)}
.hero2{background:#0f1a24}
.hero2 .hbg{filter:blur(48px) saturate(.5) brightness(.32)}
.hero2::after{background:linear-gradient(90deg,rgba(15,26,36,.96) 0%,rgba(15,26,36,.78) 50%,rgba(15,26,36,.55) 100%)}
.hjs{border-radius:8px;box-shadow:0 30px 60px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.1)}
.hjt{border-radius:4px}.hja{width:44px;height:44px;font-size:22px}
.hstats,.hero2 .hstats{background:#0b141c;backdrop-filter:none;border-top:1px solid rgba(255,255,255,.1)}
.hsg b{font-weight:600}.hsg b em{color:var(--or)}
/* emergency: calm band, small live marker instead of the giant clock */
.rush{background:#0b141c;padding:clamp(72px,8vw,120px) 0}
.rush>img{opacity:.28}
.clock2{display:inline-flex;align-items:center;gap:10px;font:600 15px/1 var(--fb);letter-spacing:.06em;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:40px;padding:9px 16px;margin:0 0 22px}
.clock2 .dot{width:8px;height:8px;border-radius:50%;background:#3ccf6e;box-shadow:0 0 0 4px rgba(60,207,110,.18)}
/* service cards: photo on top, text on white — no text over busy photos, no orange bubbles */
.sg .sc{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden;min-height:0;color:var(--ink);text-decoration:none;transition:border-color .25s,box-shadow .25s,transform .25s}
.sg .sc:hover{border-color:#c5ccd4;box-shadow:0 18px 40px -24px rgba(15,26,36,.35);transform:translateY(-3px)}
.sg .sc>picture,.sg .sc>img{position:static;display:block}
.sg .sc img{position:static;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;opacity:1;transform:none}
.sg .sc::after,.sg .sc .go{display:none}
.sg .sc .sct{position:static;padding:20px 22px 24px;background:none;color:var(--ink);display:flex;flex-direction:column;gap:6px}
.sg .sc .sct small{color:var(--orT);font-weight:600;letter-spacing:.12em;font-size:13px;text-transform:uppercase}
.sg .sc .sct b{font:700 21px/1.25 var(--fd);color:var(--ink)}
.sg .sc .sct em{font-style:normal;color:var(--mut);font-size:16px;line-height:1.55}
/* audience cards: same clean treatment */
.aud .at{min-height:0;background:var(--dk2);border:1px solid rgba(255,255,255,.08);border-radius:8px;justify-content:flex-start;padding:0}
.aud .at>img,.aud .at>picture img{position:static;width:100%;aspect-ratio:16/10;height:auto;object-fit:cover;opacity:1}
.aud .at>picture{display:block}
.aud .at::after{display:none}
.aud .at>div{padding:26px 28px 30px}
.aud .at h3{font-size:clamp(24px,1vw + 16px,32px)}
.aud .at li{border-color:rgba(255,255,255,.22)}
/* commercial capabilities */
.comx{background:var(--gray)}
.cxg{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cx{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden;color:var(--ink);text-decoration:none;transition:border-color .25s,box-shadow .25s,transform .25s}
.cx:hover{border-color:#c5ccd4;box-shadow:0 18px 40px -24px rgba(15,26,36,.35);transform:translateY(-3px)}
.cx img{width:100%;aspect-ratio:16/10;height:auto;object-fit:cover}
.cx img.prod{object-fit:contain;background:#fff;padding:18px}
.cx>div{padding:22px 24px 26px}.cx h3{font-size:21px;margin:0 0 8px}.cx p{margin:0;color:var(--mut);font-size:16px;line-height:1.6}
.cxi{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-top:40px;padding-top:32px;border-top:1px solid var(--line)}
.cxl{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,auto);gap:10px 36px;font-size:17px;color:var(--ink2)}
.cxl li::before{content:"";display:inline-block;width:6px;height:6px;background:var(--or);margin-right:10px;vertical-align:middle}
.cxb{display:flex;gap:12px;flex-wrap:wrap}
/* diagnose + reviews + misc: navy not black, thinner */
.dxl button[aria-selected=true]{background:var(--ink);border-color:var(--ink);transform:none}
.dxp{border-radius:8px}
.sec.dark,.bps~.sec.dark{background-color:var(--dk)}
.rg>*{border-radius:8px}
.chips li,.chips a{border-radius:6px}
@media (max-width:1100px){.cxg{grid-template-columns:repeat(2,1fr)}.cxl{grid-template-columns:repeat(2,auto)}}
@media (max-width:700px){.cxg{grid-template-columns:1fr}.cxl{grid-template-columns:1fr}}
/* v27 fixes: no mobile overflow in hero grid; single-line desktop menu */
@media (max-width:900px){.h2g{grid-template-columns:minmax(0,1fr)}}
.nv .tl,.nv button{white-space:nowrap}
@media (min-width:1101px) and (max-width:1400px){.nv .tl,.nv button{font-size:15px}.nv ul{gap:clamp(12px,1.2vw,22px)}.htx{display:none}}
/* v27b: symptom checker is text-only (no repeated photos) */
.dxp{grid-template-columns:1fr;min-height:0}.dxi{display:none}
.mt{padding:12px 14px;border-left:2px solid transparent;border-radius:0}.mt:hover{border-left-color:var(--or)}.mt b{font-size:17px}
/* v28 detailed mega menus */
.mgi{display:grid;grid-template-columns:minmax(220px,.8fr) 3fr;gap:clamp(24px,3vw,56px);align-items:start}
.mcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:28px}
.mch{font:700 13px/1.2 var(--fb);letter-spacing:.12em;text-transform:uppercase;color:var(--orT);margin:0 0 12px}
.mcol ul{list-style:none;margin:0;padding:0}.mcol li{margin:0 0 9px}
.mcol a{color:var(--ink);text-decoration:none;font-size:16px;line-height:1.35;border-bottom:1px solid transparent;transition:border-color .2s,color .2s}
.mcol a:hover{color:var(--orT);border-bottom-color:var(--or)}
@media (max-width:1100px){.mgi{grid-template-columns:1fr}.mgl{display:none}.mcols{grid-template-columns:1fr 1fr;gap:18px}}
/* v28 compact footer */
.ft2{padding:48px 0 24px;font-size:15px}
.ft2 .fg2{display:grid;grid-template-columns:1.1fr 1.2fr 1.4fr .8fr;gap:clamp(20px,3vw,48px)}
.ft2 .fbrand img{width:120px;height:auto;margin-bottom:12px}
.ft2 .fbrand p{font-size:15px;line-height:1.6;margin:0}
.ft2 h2{font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;color:#fff}
.ft2 .fl{list-style:none;padding:0;margin:0}.ft2 .fl li{margin:0 0 6px}.ft2 .fl a{font-size:15px}
.ft2 .fl.three{columns:3;column-gap:16px}
.ft2 .fb{margin-top:28px;padding-top:18px;font-size:13.5px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;opacity:.85}
@media (max-width:1000px){.ft2 .fg2{grid-template-columns:1fr 1fr}.ft2 .fl.three{columns:2}}
@media (max-width:600px){.ft2 .fg2{grid-template-columns:1fr}}
/* v28 door-type video strip */
.dtg{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.dt{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden;color:var(--ink);text-decoration:none;transition:border-color .25s,box-shadow .25s,transform .25s}
.dt:hover{border-color:#c5ccd4;box-shadow:0 18px 40px -24px rgba(15,26,36,.35);transform:translateY(-3px)}
.dt video{width:100%;aspect-ratio:16/10;object-fit:cover;background:#0f1a24;display:block}
.dt>div{padding:18px 20px 22px}.dt h3{font-size:20px;margin:0 0 6px}.dt p{margin:0;color:var(--mut);font-size:16px;line-height:1.55}
.stk{margin:14px 0 0;font-size:13px;color:var(--mut)}
.hj video{width:100%;height:100%;object-fit:cover}
.hj .stktag{position:absolute;right:12px;top:12px;background:rgba(15,26,36,.75);color:#dfe3e8;font-size:12px;padding:4px 8px;border-radius:4px}
@media (max-width:1100px){.dtg{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.dtg{grid-template-columns:1fr}}
.mhood{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 18px}.mhood a{font-size:15px;color:var(--ink);text-decoration:none}.mhood a:hover{color:var(--orT)}
.dtg{grid-template-columns:repeat(3,1fr)}
.pvid{margin:1.6em 0;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#0f1a24}
.pvid video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.pvid figcaption{font-size:14px;color:var(--mut);padding:10px 14px;background:var(--card)}
.ft2 ul.fl.three{display:block;columns:3 140px;column-gap:18px}.ft2 ul.fl.three li{break-inside:avoid}
.hj figcaption{background:linear-gradient(transparent,rgba(0,0,0,.55) 35%,rgba(0,0,0,.88));padding-top:64px}
/* v28 homepage SEO parity blocks */
.hh .h1k,.h1k{display:block;font:600 clamp(16px,.4vw + 14px,19px)/1.3 var(--fb);letter-spacing:.02em;color:#cfd6de;margin:0 0 14px}
.acg{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-top:22px}
.ac{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);text-decoration:none;transition:border-color .2s}
.ac:hover{border-color:var(--or)}.ac b{font:700 19px/1.2 var(--fd)}.ac span{font-size:16px;line-height:1.6;color:var(--mut)}
.narrow{max-width:960px}
.hq{background:var(--card);border:1px solid var(--line);border-radius:8px;margin:0 0 12px}
.hq summary{cursor:pointer;list-style:none;padding:20px 56px 20px 22px;font:700 clamp(18px,.3vw + 17px,21px)/1.35 var(--fd);position:relative}
.hq summary::-webkit-details-marker{display:none}.hq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:28px;color:var(--or)}
.hq[open] summary::after{content:"–"}.hq>div{padding:0 22px 20px;font-size:18px;line-height:1.7;color:var(--ink2)}
.lineup{margin-top:36px;border-top:1px solid var(--line);padding-top:26px}
.lu{border-bottom:1px solid var(--line)}.lu summary{cursor:pointer;list-style:none;display:flex;gap:16px;align-items:baseline;padding:16px 36px 16px 0;position:relative}
.lu summary::-webkit-details-marker{display:none}.lu summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:26px;color:var(--or)}.lu[open] summary::after{content:"–"}
.lu summary b{font:700 20px/1.2 var(--fd);min-width:190px}.lu summary span{color:var(--mut);font-size:16px}
.lu>div{padding:0 0 20px;font-size:17px;line-height:1.65;color:var(--ink2)}.lu ul{margin:8px 0 14px;padding-left:1.2em}.lu li{margin:4px 0}.lul{color:var(--mut)}
.lu .lnk{margin-right:18px}

/* inner pages (reskin.py) */
body.inner .hd{--hdbg:rgba(15,26,36,.97)}
.ph{position:relative;background:#0f1a24;color:#fff;padding:calc(var(--hd) + 64px) 0 56px;overflow:hidden}
.ph .hbgs{position:absolute;inset:0}.ph .hbg{position:absolute;inset:-40px;background-size:cover;background-position:center;filter:blur(48px) saturate(.5) brightness(.32);opacity:0;transition:opacity 1.4s}.ph .hbg.on{opacity:1}
.ph::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,26,36,.96),rgba(15,26,36,.6))}
.phg{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,4vw,64px);align-items:center}
.bc{font-size:16px;color:#c9ced6;margin:0 0 18px}.bc a{color:#fff}.bc span{margin:0 8px;opacity:.6}
.ph h1{font-size:clamp(36px,3vw + 14px,64px);line-height:1.08;margin:0 0 18px;color:#fff}
.ph .lead{color:#e3e7ec;margin:0 0 26px;max-width:40ch}
.ph .hbtn{display:flex;flex-wrap:wrap;gap:12px}
.trust{display:flex;flex-wrap:wrap;gap:10px 22px;margin:26px 0 0;padding:0;list-style:none;color:#dfe3e8;font-size:16px}.trust li::before{content:"✓";color:var(--or);font-weight:800;margin-right:8px}
.ph .hjs{aspect-ratio:4/3}
.pc{padding:clamp(48px,6vw,96px) 0}
.pcg{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(32px,5vw,80px);align-items:start}
.prose{font-size:clamp(18px,.25vw + 17px,20px);line-height:1.75;color:var(--ink2);max-width:72ch}
.prose h2{font-size:clamp(26px,1.2vw + 18px,36px);color:var(--ink);margin:1.8em 0 .6em;line-height:1.2}
.prose h2:first-child{margin-top:0}.prose h3{font-size:clamp(21px,.5vw + 18px,25px);color:var(--ink);margin:1.5em 0 .5em}
.prose p{margin:0 0 1.1em}.prose ul,.prose ol{padding-left:1.3em;margin:0 0 1.2em}.prose li{margin:.35em 0}
.prose a{color:var(--orT);text-decoration:underline;text-underline-offset:3px}
.prose img{max-width:100%;height:auto;border-radius:12px}
.prose table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.95em}.prose th,.prose td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.pside{position:sticky;top:calc(var(--hd) + 24px);display:grid;gap:16px}
.pcard{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:24px;box-shadow:0 20px 40px -24px rgba(0,0,0,.25)}
.pcard h3{font-size:22px;margin:0 0 8px}.pcard p{font-size:17px;color:var(--mut);margin:0 0 16px}
.pcard .btn{width:100%;justify-content:space-between;margin-bottom:10px}
.pcard ul{list-style:none;padding:0;margin:8px 0 0;font-size:16px}.pcard li{padding:6px 0;border-top:1px solid var(--line)}.pcard li::before{content:"✓";color:var(--or);font-weight:800;margin-right:8px}
.faq{background:var(--gray);padding:clamp(48px,6vw,96px) 0}
.faq h2{font-size:clamp(28px,1.4vw + 18px,44px);margin:0 0 24px}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:8px;margin:0 0 12px;max-width:900px}
.faq summary{cursor:pointer;list-style:none;padding:20px 56px 20px 22px;font:700 clamp(18px,.3vw + 17px,21px)/1.35 var(--fd);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:28px;color:var(--or);font-weight:400}
.faq details[open] summary::after{content:"–"}
.faq .ans{padding:0 22px 20px;font-size:18px;line-height:1.7;color:var(--ink2)}
.rel{padding:clamp(48px,6vw,88px) 0}
.rel h2{font-size:clamp(26px,1.2vw + 18px,38px);margin:0 0 20px}
.rl{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;list-style:none;padding:0;margin:0}
.rl a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink);text-decoration:none;font-size:17px;line-height:1.35;transition:border-color .2s,transform .2s}
.rl a::after{content:"→";color:var(--or);flex:none}.rl a:hover{border-color:var(--or);transform:translateY(-2px)}
.langs{margin:22px 0 0;font-size:17px;color:var(--mut)}.langs a{margin-left:12px;color:var(--orT)}
.revs{padding:clamp(48px,6vw,88px) 0}
.pvid{margin:1.6em 0 2em}.pvid video{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;background:#0f1a24;display:block}.pvid figcaption{font-size:15px;color:var(--mut);margin-top:8px}
.revs .rg{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
@media (max-width:980px){.phg,.pcg{grid-template-columns:1fr}.pside{position:static}}

/* v29 Sep-30: hero reel + H1 fade in together; below-fold photos fade in on scroll */
@keyframes udfx{from{opacity:.001;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes udfo{from{opacity:.001}to{opacity:1}}
@media (prefers-reduced-motion:no-preference){
.hero2 .hin2>*,.hero2 .hreel,.ph .phg>div>*{animation:udfx .95s cubic-bezier(.2,.7,.2,1) both}
.hero2 .hin2>.hh,.hero2 .hreel,.ph .phg h1{animation-delay:.06s}
.hero2 .hin2>.lead,.ph .phg .lead{animation-delay:.2s}
.hero2 .hin2>.hbtn,.ph .phg .hbtn{animation-delay:.32s}
.hero2 .hbgs,.ph .hbgs{animation:udfo 1.3s ease both}
.fo{opacity:0;transform:translateY(18px) scale(.985);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1)}
.fo.fin{opacity:1;transform:none}
}
/* hero photo blend v2 (Sep-30): solid dark → photo, left→right; no hard box edges */
.hjs{border-radius:0;box-shadow:none;background:transparent;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.hjs::after{content:"";position:absolute;inset:-1px;z-index:1;pointer-events:none;background:linear-gradient(90deg,#141c24 0,#141c24 4%,rgba(20,28,36,.92) 14%,rgba(20,28,36,.55) 30%,rgba(20,28,36,0) 52%),linear-gradient(270deg,rgba(20,28,36,.9) 0,rgba(20,28,36,0) 14%)}
.hj figcaption{z-index:2;background:none;padding-left:clamp(28px,7vw,72px);text-shadow:0 2px 14px rgba(0,0,0,.9)}
@media (max-width:900px){.hjs::after{background:linear-gradient(180deg,#141c24 0,rgba(20,28,36,.75) 12%,rgba(20,28,36,0) 38%),linear-gradient(0deg,rgba(20,28,36,.9) 0,rgba(20,28,36,0) 40%),linear-gradient(90deg,rgba(20,28,36,.8) 0,rgba(20,28,36,0) 10%,rgba(20,28,36,0) 90%,rgba(20,28,36,.8) 100%)}.hj figcaption{padding-left:20px}}
/* 2026-10-01 polish: rounder corners + pill buttons + proportioned mobile menu */
:root{--r:12px}
.btn{border-radius:999px}
@media (max-width:1100px){
.nv{padding:calc(var(--hd) + 14px) var(--g) 32px}
.tl{font:700 19px/1.2 var(--fd);padding:16px 0}
.ddb{padding:10px 4px 10px 14px}
.cv{width:20px;height:20px}
.mgi{padding:2px 0 16px}
.mcols{gap:14px 18px}
.mch{font-size:11.5px;margin-bottom:8px}
.mcol li{margin:0 0 2px}
.mcol a{font-size:15px;display:block;padding:7px 0}
.mcity{grid-template-columns:1fr 1fr;gap:0 16px}
.mcity a{font-size:15px;padding:12px 0;align-items:center}
.mcity a .ar{width:15px;height:15px;flex:none}
.mnf{margin-top:22px}
}
