:root{
--night:#0F1D33; --night-2:#14253F; --night-3:#1C3150;
--frost:#EAF3FC; --frost-2:rgba(234,243,252,.78); --frost-3:rgba(234,243,252,.56);
--ice:#9CD3FF; --brand:#2A6CB8; --ember:#FF8B45;
--line:rgba(234,243,252,.13); --line-2:rgba(234,243,252,.22);
--display:'Archivo','Arial Narrow',system-ui,sans-serif;
--voice:'Instrument Serif',Georgia,'Times New Roman',serif;
--body:'Hanken Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
--ease:cubic-bezier(.19,1,.22,1);
--ease-io:cubic-bezier(.77,0,.18,1);
--gutter:clamp(16px,4vw,64px);
--max:1560px;
color-scheme:dark;
}
*{box-sizing:border-box}
html{background:var(--night)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;background:var(--night);color:var(--frost);font-family:var(--body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:90;background:var(--night)}
img,video{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;color:inherit}
::selection{background:var(--ice);color:var(--night)}
:focus-visible{outline:2px solid var(--ice);outline-offset:4px;border-radius:8px}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px))}
.label{font-family:var(--display);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--frost-3);font-stretch:112%}
.title{font-family:var(--display);font-weight:800;text-transform:uppercase;font-stretch:125%;letter-spacing:-.01em;line-height:.92;margin:0;text-wrap:balance}
.voice{font-family:var(--display);font-style:normal;font-weight:700;text-transform:uppercase;font-stretch:125%;letter-spacing:-.01em;line-height:.92;color:transparent;-webkit-text-stroke:1.5px var(--frost);paint-order:stroke fill}
.voice.ice{color:transparent;-webkit-text-stroke-color:var(--ice)}
@supports not (-webkit-text-stroke:1px black){.voice{color:var(--ice);font-weight:300}}
.sec{padding-block:clamp(96px,11vw,170px)}
.muted{color:var(--frost-2)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.grain{position:fixed;inset:-50%;z-index:80;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,2%)}100%{transform:translate(0,0)}}
.loader{position:fixed;inset:0;z-index:100;background:var(--night-2);display:grid;place-items:center;transition:clip-path 1.1s var(--ease-io)}
.loader.out{clip-path:inset(0 0 100% 0)}
.loader-in{display:flex;flex-direction:column;align-items:center;gap:18px}
.loader-temp{font-family:var(--display);font-weight:800;font-stretch:125%;font-size:clamp(72px,14vw,180px);line-height:1;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,var(--frost),var(--ice));-webkit-background-clip:text;background-clip:text;color:transparent}
.loader-bar{width:min(260px,60vw);height:2px;background:var(--line);overflow:hidden;border-radius:2px}
.loader-bar i{display:block;height:100%;width:100%;background:var(--ice);transform:scaleX(0);transform-origin:left}
.no-js .loader,.reduce .loader{display:none}
.pt{position:fixed;inset:0;z-index:97;background:var(--night-2);transform:translateY(100%);transition:transform .75s var(--ease-io);display:grid;place-items:center;pointer-events:none}
.pt img{height:56px;width:auto;opacity:0;transition:opacity .4s}
.pt.cover{transform:none}.pt.cover img{opacity:1;transition-delay:.2s}
.pt.enter{transform:none;transition:none}.pt.enter img{opacity:1}
.pt.leave{transform:translateY(-100%)}
.page-hero{padding-top:clamp(140px,18vh,200px);padding-bottom:clamp(40px,6vw,80px)}
.page-hero h1{font-size:clamp(46px,8vw,130px);margin:24px 0 26px}
.page-hero h1 .voice{display:block}
.page-hero p{font-size:clamp(17px,1.4vw,20px);color:var(--frost-2);max-width:36rem;margin:0}
.rv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:clamp(50px,6vw,90px)}
.rv-card{margin:0;padding:24px;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border:1px solid var(--line);display:flex;flex-direction:column;gap:14px}
.rv-card blockquote{margin:0;font-size:15.5px;color:var(--frost-2);line-height:1.6}
.rv-card figcaption{margin-top:auto;font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.rv-card figcaption span{color:var(--frost-3)}
@media (max-width:1000px){.rv-grid{grid-template-columns:1fr 1fr}}@media (max-width:640px){.rv-grid{grid-template-columns:1fr}}
.page-hero + section .sec,.page-hero + .sec,.page-hero + section.sec{padding-top:clamp(20px,3vw,40px)}
.hdr{position:fixed;left:0;right:0;top:env(safe-area-inset-top,0px);z-index:70;transition:transform .7s var(--ease),background .4s,border-color .4s;border-bottom:1px solid transparent}
.hdr.solid{background:rgba(15,29,51,.78);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border-color:var(--line)}
.hdr.hide{transform:translateY(-110%)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:16px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.logo .lockup{height:46px;width:auto;display:block;transition:transform .6s var(--ease)}
.logo:hover .lockup{transform:translateY(-1px)}
@media (max-width:560px){.logo .lockup{height:38px}}
.logo b{font-family:var(--display);font-weight:900;font-stretch:125%;font-size:17px;letter-spacing:.04em}
.logo small{display:block;font-size:9.5px;font-weight:700;letter-spacing:.24em;color:var(--frost-3);margin-top:2px}
.nav{display:flex;align-items:center;gap:34px}
@media (max-width:1240px){.nav{gap:24px}}
.nav a{font-family:var(--display);font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--frost-2);font-stretch:112%;transition:color .3s}
.nav a:hover,.nav a[aria-current]{color:var(--frost)}
.nav a[data-nav]{position:relative}
.nav a[data-nav]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1.5px;background:var(--ice);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.nav a[data-nav]:hover::after,.nav a[aria-current]::after{transform:scaleX(1);transform-origin:left}
.nav a.pill::after{display:none}.nav a.pill[aria-current]{color:var(--night)}
.burger{display:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:none;cursor:pointer;place-items:center}
.burger i,.burger i::before{display:block;width:16px;height:1.5px;background:var(--frost);position:relative;transition:transform .5s var(--ease)}
.burger i::before{content:"";position:absolute;top:5px}
.burger i{transform:translateY(-2.5px)}
.menu-open .burger i{transform:rotate(45deg)}
.menu-open .burger i::before{transform:translateY(-5px) rotate(-90deg)}
.sheet{position:fixed;inset:0;z-index:65;background:var(--night-2);display:flex;flex-direction:column;justify-content:center;gap:6px;padding:100px max(var(--gutter),env(safe-area-inset-left,0px)) 40px;clip-path:inset(0 0 100% 0);transition:clip-path .9s var(--ease-io);visibility:hidden}
.menu-open .sheet{clip-path:inset(0);visibility:visible}
.sheet a{font-family:var(--display);font-weight:800;text-transform:uppercase;font-stretch:125%;font-size:clamp(34px,9vw,64px);line-height:1.05;text-decoration:none;transform:translateY(40px);opacity:0;transition:transform .8s var(--ease),opacity .6s}
.menu-open .sheet a{transform:none;opacity:1}
.menu-open .sheet a:nth-child(2){transition-delay:.05s}.menu-open .sheet a:nth-child(3){transition-delay:.1s}.menu-open .sheet a:nth-child(4){transition-delay:.15s}.menu-open .sheet a:nth-child(5){transition-delay:.2s}
@media (max-width:960px){.nav a{display:none}.burger{display:grid}}
.dd{position:relative;display:flex;align-items:center;gap:4px}
.dd-btn{width:22px;height:22px;border:0;padding:0;background:none;color:var(--frost-2);cursor:pointer;display:grid;place-items:center;border-radius:50%;transition:color .3s,transform .45s var(--ease)}
.dd-btn svg{width:12px;height:12px}
.dd:hover .dd-btn,.dd.open .dd-btn{color:var(--frost)}
.dd.open .dd-btn{transform:rotate(180deg)}
.dd-panel{position:absolute;top:calc(100% + 22px);left:50%;width:min(760px,calc(100vw - 2*var(--gutter)));padding:12px;border-radius:22px;background:rgba(20,37,63,.94);border:1px solid var(--line-2);box-shadow:0 40px 90px -20px rgba(3,8,18,.7);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);opacity:0;visibility:hidden;transform:translate(-50%,10px) scale(.985);transform-origin:50% 0;transition:opacity .22s ease,transform .38s var(--ease),visibility 0s linear .38s;contain:layout paint}
.dd-panel::before{content:"";position:absolute;left:0;right:0;top:-24px;height:24px}
.dd.open .dd-panel{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1);transition:opacity .22s ease,transform .38s var(--ease),visibility 0s}
.dd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.nav .dd-item{display:flex;flex-direction:column;gap:12px;padding:8px 8px 14px;border-radius:16px;text-transform:none;letter-spacing:0;font-family:var(--body);font-size:14px;color:var(--frost);transition:background .3s;opacity:0;transform:translateY(6px)}
.dd.open .dd-item{opacity:1;transform:none;transition:background .3s,opacity .35s ease,transform .5s var(--ease)}
.dd.open .dd-item:nth-child(2){transition-delay:0s,.04s,.04s}.dd.open .dd-item:nth-child(3){transition-delay:0s,.08s,.08s}
.nav .dd-item:hover,.nav .dd-item:focus-visible{background:rgba(234,243,252,.07);color:var(--frost)}
.dd-img{display:block;aspect-ratio:16/10;border-radius:11px;overflow:hidden;background:var(--night-3)}
.dd-img img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.dd-item:hover .dd-img img{transform:scale(1.06)}
.dd-txt{display:flex;flex-direction:column;gap:3px;padding-inline:4px}
.dd-txt b{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:17px;line-height:1}
.dd-txt em{font-style:normal;font-family:var(--display);font-weight:700;font-stretch:125%;text-transform:uppercase;font-size:17px;line-height:1;color:transparent;-webkit-text-stroke:1px var(--frost)}
.dd-txt small{margin-top:6px;font-size:13px;line-height:1.4;color:var(--frost-3)}
.dd-foot{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:8px;padding:12px 12px 4px;border-top:1px solid var(--line)}
.dd-foot span{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--frost-3);font-stretch:112%}
.nav .dd-all{display:inline-flex;align-items:center;gap:8px;color:var(--ice);font-size:11.5px}
.dd-all svg{width:14px;height:14px;transition:transform .4s var(--ease)}
.dd-all:hover svg{transform:translateX(3px)}
.no-js .dd:hover .dd-panel,.no-js .dd:focus-within .dd-panel{opacity:1;visibility:visible;transform:translate(-50%,0)}
.no-js .dd-item{opacity:1;transform:none}
.sheet-sub{display:flex;flex-direction:column;gap:2px;margin:2px 0 10px;padding-left:4px;border-left:1px solid var(--line-2)}
.sheet .sheet-sub a{font-size:15px;font-weight:700;font-stretch:112%;letter-spacing:.06em;padding:8px 14px;color:var(--frost-2)}
.sheet .sheet-sub a span{color:var(--frost-3);font-weight:600}
.menu-open .sheet .sheet-sub a{transition-delay:.12s}
@media (max-width:960px){.dd{display:none}}
@media (hover:none){.dd-panel::before{display:none}}
.pill{--x:50%;--y:50%;position:relative;display:inline-flex;align-items:center;gap:12px;height:54px;padding:0 26px;border-radius:999px;font-family:var(--display);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%;text-decoration:none;cursor:pointer;overflow:hidden;isolation:isolate;border:1px solid var(--line-2);background:none;transition:color .45s var(--ease),border-color .45s}
.pill::before{content:"";position:absolute;z-index:-1;left:var(--x);top:var(--y);width:0;height:0;border-radius:50%;background:var(--frost);transform:translate(-50%,-50%);transition:width .6s var(--ease),height .6s var(--ease)}
.pill:hover::before{width:340px;height:340px}
.pill:hover{color:var(--night);border-color:var(--frost)}
.pill.solid{background:var(--frost);color:var(--night);border-color:var(--frost)}
.pill.solid::before{background:var(--ice)}
.pill svg{width:16px;height:16px;transition:transform .5s var(--ease)}
.pill:hover svg{transform:rotate(-45deg)}
.pill.sm{height:44px;padding:0 20px;font-size:11.5px}
.hero{position:relative;min-height:min(100svh,1000px);padding-top:120px;overflow:hidden}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,var(--night));pointer-events:none;z-index:2}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(32px,4vw,72px);align-items:start}
.hero-copy{padding-top:clamp(20px,6vh,70px);position:relative;z-index:3}
.hero h1{font-size:clamp(46px,7.4vw,124px);margin:clamp(20px,6vh,70px) 0 30px}
.hero h1 .voice{display:block;font-size:1em;margin-top:.04em;-webkit-text-stroke-width:2px}
.w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.w>span{display:inline-block}
.js .w>span{animation:wordUp 1.1s var(--ease) both;animation-delay:var(--d,0ms)}
@keyframes wordUp{from{transform:translateY(110%)}to{transform:none}}
.reduce .w>span,.no-js .w>span{transform:none}
.hero p.lead{font-size:clamp(17px,1.35vw,20px);max-width:36rem;color:var(--frost-2);margin:0 0 34px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
.facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(40px,7vh,80px);border-top:1px solid var(--line)}
.fact{padding:22px 20px 0 0;min-width:0}
.fact+.fact{padding-left:20px;border-left:1px solid var(--line)}
.fact b{display:block;font-family:var(--display);font-weight:800;font-stretch:125%;font-size:clamp(20px,2vw,28px);text-transform:uppercase;line-height:1.1}
.fact span{font-size:14px;color:var(--frost-3)}
.js .fade{animation:fadeUp 1s var(--ease) both;animation-delay:var(--d,0ms)}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.reduce .fade,.no-js .fade{opacity:1;transform:none;animation:none}
.kicker{display:inline-flex;align-items:center;gap:10px;padding:9px 16px;border-radius:999px;background:rgba(156,211,255,.1);border:1px solid rgba(156,211,255,.25);font-family:var(--display);font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-stretch:112%;color:var(--ice)}
.kicker .dot{width:7px;height:7px;border-radius:50%;background:var(--ice);box-shadow:0 0 0 0 rgba(156,211,255,.6);animation:pulse 2.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(156,211,255,.55)}80%,100%{box-shadow:0 0 0 10px rgba(156,211,255,0)}}
@media (max-width:560px){.kicker{font-size:11px;letter-spacing:.08em}}
.jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:-30px;margin-bottom:clamp(40px,6vw,80px)}
.jump a{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 20px 0 8px;border-radius:999px;border:1px solid var(--line-2);text-decoration:none;font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%;transition:background .35s,color .35s,border-color .35s}
.jump a span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(234,243,252,.08);font-size:10.5px;letter-spacing:.04em;transition:background .35s}
.jump a:hover{background:var(--frost);color:var(--night);border-color:var(--frost)}
.jump a:hover span{background:rgba(15,29,51,.1)}
.cat{scroll-margin-top:90px;padding-block:clamp(56px,7vw,110px);border-top:1px solid var(--line)}
.cat-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.cat.flip .cat-media{order:2}
.cat-media{position:relative;aspect-ratio:4/5;max-height:640px;width:100%;border-radius:24px;overflow:hidden;background:var(--night-3)}
.cat-media img,.cat-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cat-copy{display:flex;flex-direction:column;gap:22px;max-width:34rem}
.cat-n{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.16em;color:var(--ice);font-stretch:112%}
.cat-copy{min-width:0}.cat-copy .title{font-size:clamp(34px,4.5vw,72px);overflow-wrap:anywhere}
.cat-copy .title .voice{display:block;font-size:.7em;margin-top:.12em}
.cat-copy p{margin:0;font-size:clamp(17px,1.35vw,19.5px);color:var(--frost-2)}
.cat-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.cat-list li{padding:9px 15px;border-radius:999px;border:1px solid var(--line);background:rgba(234,243,252,.04);font-size:14.5px;color:var(--frost)}
.sos{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(16px,3vw,40px);padding:clamp(24px,3.4vw,44px);border-radius:24px;border:1px solid var(--line-2);background:linear-gradient(120deg,rgba(255,139,69,.12),rgba(156,211,255,.06));text-decoration:none;transition:border-color .4s,transform .6s var(--ease)}
.sos .label{color:#FFB98F}
.sos b{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(24px,3.2vw,46px);line-height:.95}
.sos b .voice{display:inline}
.sos .arrow{width:56px;height:56px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;transition:transform .6s var(--ease),background .4s,color .4s}
.sos .arrow svg{width:18px;height:18px}
.sos:hover{border-color:var(--frost)}
.sos:hover .arrow{transform:rotate(-45deg);background:var(--frost);color:var(--night)}
@media (max-width:820px){
.cat-grid{grid-template-columns:1fr}
.cat.flip .cat-media{order:0}
.cat-media{aspect-ratio:4/3}
.sos{grid-template-columns:1fr auto}.sos .label{grid-column:1/-1}
.jump{margin-top:-10px}
}
.feature{margin-bottom:0}
.feature + .work{padding-top:clamp(56px,6vw,96px)}
.feature figure{position:relative;margin:0;aspect-ratio:16/10;max-height:82svh;width:100%;border-radius:clamp(18px,2.4vw,32px);overflow:hidden;background:var(--night-3);cursor:pointer}
.feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;transform:scale(1.08);transition:transform 1.8s var(--ease)}
.feature .rv.in img,.reduce .feature img,.no-js .feature img{transform:scale(1)}
.feature figure::after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,rgba(10,20,36,.72));pointer-events:none}
.feature figcaption{position:absolute;left:clamp(16px,2.4vw,32px);right:clamp(16px,2.4vw,32px);bottom:clamp(16px,2.4vw,30px);z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.feature figcaption b{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(20px,2.6vw,38px);line-height:.95}
.feature figcaption b .voice{display:block}
.feature figcaption > span{flex:none;padding:8px 14px;border-radius:999px;background:rgba(5,8,14,.45);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.16);font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-stretch:112%}
@media (max-width:640px){.feature figure{aspect-ratio:4/3}.feature img{object-position:42% 45%}.feature figcaption > span{display:none}}
.dg{display:block;width:100%;height:auto;overflow:visible}
.dg .b{fill:none;stroke:rgba(234,243,252,.34);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.dg .bf{fill:rgba(234,243,252,.035)}
.dg .g{stroke:rgba(234,243,252,.3);stroke-width:1.6}
.dg .soil{fill:rgba(255,185,143,.05)}
.dg .u{fill:#EAF3FC}
.dg .ud{fill:none;stroke:#0F1D33;stroke-width:1.4;opacity:.5}
.dg .feet{fill:rgba(234,243,252,.45)}
.dg .trunk{fill:rgba(234,243,252,.09)}
.dg .soft{fill:rgba(234,243,252,.18)}
.dg .sofa{fill:rgba(234,243,252,.07)}
.dg .ref,.dg .hot,.dg .cold{fill:none;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.dg .ref{stroke:#9CD3FF}.dg .hot{stroke:#FF8B45}.dg .cold{stroke:#5EA9FF}
.dg .flow{fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:.5 11.5;opacity:.95;animation:dgdash 1.2s linear infinite}
.dg .flow.rev{animation-direction:reverse}
.dg .air{fill:none;stroke:#9CD3FF;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:5 7;opacity:.8;animation:dgdash 1.5s linear infinite}
.dg .air.warm{stroke:#FFB98F}
.dg .duct{fill:none;stroke:rgba(234,243,252,.42);stroke-width:9;stroke-linejoin:round}
.dg .grille{fill:#EAF3FC}
.dg .coil{fill:none;stroke:#FF8B45;stroke-width:2;stroke-linecap:round}
.dg .rad{fill:rgba(255,139,69,.16);stroke:rgba(255,185,143,.8);stroke-width:1.4}
.dg .fin{stroke:rgba(255,185,143,.75);stroke-width:1.4}
.dg .ring{fill:none;stroke:#9CD3FF;stroke-width:1.6;opacity:.75}
.dg .panel{fill:rgba(234,243,252,.16);stroke:rgba(234,243,252,.4);stroke-width:1.4}
.dg .chill{fill:#132A47}
.dg .shelf{stroke:rgba(234,243,252,.4);stroke-width:2}
.dg .crate{fill:rgba(156,211,255,.22);stroke:rgba(156,211,255,.5);stroke-width:1}
.dg .frost path{fill:none;stroke:#9CD3FF;stroke-width:1.8;stroke-linecap:round}
.dg .mk circle{fill:#FF8B45}
.dg .mk text{font-family:var(--display);font-weight:800;font-size:12.5px;fill:#0F1D33;text-anchor:middle;dominant-baseline:central}
.dg .tmp{font-family:var(--display);font-weight:800;font-stretch:112%;font-size:24px;fill:#9CD3FF}
.dg .tmp.sm{font-size:15px;fill:rgba(156,211,255,.85)}
.dg:not(.on) *{animation-play-state:paused}
@keyframes dgdash{to{stroke-dashoffset:-24}}
.dg .screed{fill:rgba(255,139,69,.1);stroke:rgba(255,185,143,.45);stroke-width:1.2}
.dg .ufh{fill:rgba(255,139,69,.35);stroke:#FF8B45;stroke-width:1.6}
.dg .beer{fill:none;stroke:#F2B544;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.dg .keg{fill:rgba(234,243,252,.82)}
.dg .kegb{stroke:rgba(15,29,51,.45);stroke-width:2}
.dg .tap{fill:none;stroke:#EAF3FC;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.dg .bottle{fill:rgba(156,211,255,.55)}
.dg .chill.warm{fill:#2A2633}
.dg .tube{fill:rgba(234,243,252,.08);stroke:rgba(234,243,252,.5);stroke-width:1.4}
.dg .warn{fill:#FF8B45}
.dg .lcd{font-family:var(--display);font-weight:700;font-size:13px;fill:#9CD3FF}
.dg .tmp.sm.warmt{fill:#FFB98F}
.sec.tight{padding-block:clamp(56px,7vw,110px)}
.page-hero + .jump + .sec.tight,.page-hero + .sec.tight{padding-top:clamp(20px,3vw,40px)}
.ben-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:clamp(12px,1.4vw,20px)}
.ben{padding:clamp(22px,2.2vw,30px);border-radius:22px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012));display:flex;flex-direction:column;gap:12px;transition:border-color .4s,transform .6s var(--ease)}
.ben:hover{border-color:var(--line-2);transform:translateY(-4px)}
.ben-ic{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(156,211,255,.1);color:var(--ice);margin-bottom:6px}
.ben-ic svg{width:26px;height:26px}
.ben h3{margin:0;font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(18px,1.5vw,22px);line-height:1}
.ben p{margin:0;color:var(--frost-2);font-size:15.5px;line-height:1.55}
.sys-list{display:flex;flex-direction:column;gap:clamp(48px,7vw,110px)}
.sys{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(28px,5vw,80px);align-items:center;scroll-margin-top:100px}
.sys.flip .sys-fig{order:2}
.sys-fig{padding:clamp(16px,2.4vw,34px);border-radius:26px;border:1px solid var(--line);background:radial-gradient(120% 90% at 30% 0%,rgba(156,211,255,.07),transparent 60%),rgba(255,255,255,.02)}
.sys-copy{display:flex;flex-direction:column;gap:16px;max-width:34rem}
.sys-copy h3{margin:0;font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(28px,3.4vw,52px);line-height:.95}
.sys-copy>p{margin:0;font-size:clamp(16.5px,1.3vw,19px);color:var(--frost-2)}
.legend{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.legend li{display:flex;align-items:center;gap:12px;font-size:15.5px}
.legend b{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--ember);color:var(--night);font-family:var(--display);font-size:12px;font-weight:800}
.best{margin:6px 0 0;padding:14px 18px;border-radius:16px;background:rgba(156,211,255,.07);border:1px solid rgba(156,211,255,.18);font-size:15px;color:var(--frost);display:flex;flex-direction:column;gap:4px}
.best span{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ice);font-stretch:112%}
.fact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(12px,1.4vw,20px)}
.fact{padding:clamp(22px,2.4vw,32px);border-radius:22px;background:var(--frost);color:var(--night);display:flex;flex-direction:column;gap:10px}
.fact .label{color:var(--brand)}
.fact h3{margin:0;font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(19px,1.6vw,24px);line-height:1}
.fact p{margin:0;color:rgba(15,29,51,.78);font-size:15.5px}
.fact a{color:var(--brand);font-weight:600}
@media (max-width:860px){.sys{grid-template-columns:1fr}.sys.flip .sys-fig{order:0}.sys-fig{padding:12px;border-radius:20px}}
@media (max-width:520px){.ben-grid{grid-template-columns:1fr}.ben{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:14px}.ben-ic{margin:0;width:46px;height:46px}.ben p{flex-basis:100%}}
.nm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,20px)}
.nm{display:flex;flex-direction:column;gap:16px;padding:clamp(22px,2.4vw,32px);border-radius:24px;border:1px solid var(--line);background:rgba(255,255,255,.02);text-decoration:none;opacity:.62;transition:opacity .4s,border-color .4s,transform .6s var(--ease)}
.nm.rv.in{opacity:.62}.nm.on,.nm.on.rv.in{opacity:1;border-color:rgba(156,211,255,.4);background:radial-gradient(120% 100% at 0% 0%,rgba(156,211,255,.1),transparent 60%),rgba(255,255,255,.03)}
.nm:hover,.nm.rv.in:hover{opacity:1;transform:translateY(-4px)}
.nm-row{display:flex;align-items:center;gap:12px}
.nm-w{display:flex;flex-direction:column;align-items:center;gap:6px;flex:none;width:84px}
.nm-ic{width:54px;height:54px;border-radius:50%;display:grid;place-items:center}
.nm-ic svg{width:26px;height:26px}
.nm-w.src .nm-ic{background:rgba(156,211,255,.14);color:var(--ice)}
.nm-w.snk .nm-ic{background:rgba(255,139,69,.16);color:#FFB98F}
.nm-w b{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:17px;line-height:1}
.nm-w small{font-family:var(--display);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--frost-3)}
.nm-arrow{position:relative;flex:1;height:2px;margin-top:-34px;background:linear-gradient(90deg,var(--ice),#FFB98F);border-radius:2px;overflow:visible}
.nm-arrow::after{content:"";position:absolute;right:-1px;top:50%;width:9px;height:9px;border-top:2px solid #FFB98F;border-right:2px solid #FFB98F;transform:translateY(-50%) rotate(45deg)}
.nm-arrow i{position:absolute;top:50%;left:0;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:#fff;box-shadow:0 0 10px rgba(255,255,255,.8);animation:nmgo 2.2s cubic-bezier(.45,0,.55,1) infinite}
@keyframes nmgo{0%{left:0;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:calc(100% - 8px);opacity:0}}
.nm p{margin:0;color:var(--frost-2);font-size:15.5px;line-height:1.55}
.cmp-t{border-radius:24px;border:1px solid var(--line);overflow:hidden}
.cmp-r{display:grid;grid-template-columns:1.1fr repeat(3,1fr);border-top:1px solid var(--line)}
.cmp-r:first-child{border-top:0}
.cmp-l,.cmp-c{padding:18px clamp(14px,1.6vw,24px);font-size:15.5px;display:flex;align-items:center;gap:10px}
.cmp-l{color:var(--frost-2)}
.cmp-c.c0{background:rgba(156,211,255,.09);color:var(--frost);font-weight:600}
.cmp-c.c1,.cmp-c.c2{color:var(--frost-2)}
.cmp-h .cmp-c{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(14px,1.2vw,17px);color:var(--frost)}
.cmp-h .cmp-c.c0{color:var(--ice)}
.tick{flex:none;width:22px;height:22px;border-radius:50%;position:relative}
.tick.yes{background:rgba(156,211,255,.2)}
.tick.yes::after{content:"";position:absolute;left:7px;top:4px;width:6px;height:10px;border:solid var(--ice);border-width:0 2px 2px 0;transform:rotate(45deg)}
.tick.no{background:rgba(234,243,252,.07)}
.tick.no::after{content:"";position:absolute;left:6px;right:6px;top:10px;height:2px;background:var(--frost-3)}
.cmp-note{margin:18px 0 0;color:var(--frost-3);font-size:15px;max-width:52rem}
@media (max-width:980px){.nm-grid{grid-template-columns:1fr}.nm{flex-direction:row;align-items:center;gap:24px}.nm-row{flex:none;width:300px}}
@media (max-width:760px){
.nm{flex-direction:column;align-items:stretch;gap:14px}.nm-row{width:auto}
.cmp-r{grid-template-columns:repeat(3,1fr)}
.cmp-l{grid-column:1/-1;padding-bottom:4px;font-family:var(--display);font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--frost-3)}
.cmp-h .cmp-l{display:none}
.cmp-c{padding:10px 12px 16px;font-size:14px;align-items:flex-start}
.cmp-h .cmp-c{padding:16px 12px;font-size:12.5px}
.cmp-c .tick{width:20px;height:20px}
}
.hot-card{position:relative;overflow:hidden;padding:clamp(28px,4.4vw,64px);border-radius:30px;background:radial-gradient(90% 120% at 100% 0%,rgba(255,139,69,.22),transparent 55%),radial-gradient(70% 90% at 0% 100%,rgba(156,211,255,.12),transparent 60%),#16294A;border:1px solid var(--line)}
.hot-q{margin:0 0 18px;font-family:var(--display);font-weight:700;font-stretch:112%;font-size:clamp(18px,1.8vw,26px);line-height:1.25;color:#FFB98F;max-width:34rem}
.hot-card .title{font-size:clamp(44px,6vw,96px)}
.hot-lead{margin:20px 0 0;font-size:clamp(17px,1.4vw,20px);color:var(--frost-2);max-width:40rem}
.hot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(10px,1.2vw,16px);margin-top:clamp(28px,3.4vw,44px)}
.hot-s{padding:20px;border-radius:18px;background:rgba(5,8,14,.28);border:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.hot-s b{font-family:var(--display);font-weight:800;font-stretch:125%;font-size:clamp(26px,2.6vw,38px);line-height:1;color:var(--frost)}
.hot-s:first-child b{color:#FFB98F}
.hot-s span{font-size:14.5px;line-height:1.45;color:var(--frost-2)}
.hot-sleep{margin-top:clamp(18px,2vw,26px);display:flex;gap:16px;align-items:flex-start;padding:20px 22px;border-radius:18px;background:var(--frost);color:var(--night)}
.hot-moon{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#16294A;color:var(--ice)}
.hot-moon svg{width:22px;height:22px}
.hot-sleep b{display:block;font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(17px,1.5vw,21px);line-height:1.05;margin-bottom:6px}
.hot-sleep span{font-size:15.5px;color:rgba(15,29,51,.78)}
.hot-src{margin:16px 0 0;font-size:12.5px;color:var(--frost-3)}
.hot-src a{color:var(--frost-2)}
@media (max-width:900px){.hot-grid{grid-template-columns:1fr 1fr}}
.smart{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,100px);align-items:center}
.phone{justify-self:center;width:min(300px,78vw);padding:12px;border-radius:44px;background:linear-gradient(160deg,#2B3E5C,#0B1424);box-shadow:0 40px 90px -30px rgba(0,0,0,.7),inset 0 0 0 1px rgba(255,255,255,.08)}
.ph-screen{border-radius:34px;padding:26px 20px 22px;background:linear-gradient(180deg,#F4F8FC,#E3ECF6);color:var(--night);display:flex;flex-direction:column;gap:14px;transition:background .6s}
.ph-screen[data-mode=cool]{background:linear-gradient(180deg,#F1F8FF,#D6EAFB)}
.ph-screen[data-mode=heat]{background:linear-gradient(180deg,#FFF7F1,#F6E4D8)}
.ph-top{display:flex;justify-content:space-between;align-items:center;font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.ph-on{width:10px;height:10px;border-radius:50%;background:#3BB273;box-shadow:0 0 0 4px rgba(59,178,115,.18)}
.ph-dial{display:flex;align-items:center;justify-content:space-between;padding:8px 0}
.ph-b{width:46px;height:46px;border-radius:50%;border:0;background:#fff;box-shadow:0 6px 16px -6px rgba(15,29,51,.35);font-size:24px;line-height:1;color:var(--night);cursor:pointer;transition:transform .2s}
.ph-b:active{transform:scale(.92)}
.ph-t{text-align:center;display:flex;flex-direction:column;align-items:center;position:relative}
.ph-t b{font-family:var(--display);font-weight:800;font-stretch:112%;font-size:64px;line-height:1;font-variant-numeric:tabular-nums}
.ph-t sup{position:absolute;top:4px;right:-26px;font-family:var(--display);font-weight:700;font-size:16px}
.ph-t small{margin-top:6px;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#C2571B;transition:color .4s}
.ph-screen[data-mode=cool] .ph-t small{color:var(--brand)}
.ph-screen[data-mode=dry] .ph-t small{color:#3A8F8F}
.ph-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;border-radius:14px;background:rgba(15,29,51,.06)}
.ph-modes button{border:0;border-radius:10px;padding:10px 0;background:none;font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(15,29,51,.6);cursor:pointer;transition:background .3s,color .3s}
.ph-modes button.on{background:#fff;color:var(--night);box-shadow:0 4px 12px -6px rgba(15,29,51,.35)}
.ph-row{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.7);font-size:14px}
.ph-row b{font-weight:700}
.ph-sw{width:38px;height:22px;border-radius:999px;background:rgba(15,29,51,.18);position:relative}
.ph-sw::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff}
.ph-bump{animation:phb .35s var(--ease)}
@keyframes phb{40%{transform:scale(1.12)}}
.smart-lead{margin:18px 0 0;font-size:clamp(17px,1.4vw,20px);color:var(--frost-2)}
.smart-list{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.smart-list li{padding:18px 20px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.02);display:flex;flex-direction:column;gap:6px}
.smart-list b{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:15.5px;line-height:1.05}
.smart-list span{font-size:15px;color:var(--frost-2)}
@media (max-width:900px){.smart{grid-template-columns:1fr}.smart-list{grid-template-columns:1fr}}
.pc{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}
.pc-col{padding:16px 18px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.02)}
.pc-col>span{display:block;margin-bottom:10px;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-stretch:112%}
.pc-col.pro>span{color:var(--ice)}.pc-col.con>span{color:#FFB98F}
.pc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pc li{position:relative;padding-left:24px;font-size:14.5px;line-height:1.4;color:var(--frost-2)}
.pc li::before{content:"";position:absolute;left:0;top:2px;width:16px;height:16px;border-radius:50%}
.pro li::before{background:rgba(156,211,255,.18)}
.pro li::after{content:"";position:absolute;left:5.5px;top:5px;width:4px;height:7px;border:solid var(--ice);border-width:0 1.8px 1.8px 0;transform:rotate(45deg)}
.con li::before{background:rgba(255,185,143,.16)}
.con li::after{content:"";position:absolute;left:4.5px;top:9.2px;width:7px;height:1.8px;background:#FFB98F;border-radius:1px}
@media (max-width:560px){.pc{grid-template-columns:1fr}}
.nf-links{display:flex;flex-wrap:wrap;gap:10px}
.nf-links a{padding:14px 22px;border-radius:999px;border:1px solid var(--line-2);text-decoration:none;font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;transition:background .3s,color .3s}
.nf-links a:hover{background:var(--frost);color:var(--night)}
.feature .media{position:absolute;inset:0;border-radius:inherit}
.cform{position:relative;display:flex;flex-direction:column;gap:18px;padding:clamp(24px,3vw,40px);border-radius:24px;background:var(--night);color:var(--frost)}
.cf-head .label{color:var(--ice)}
.cf-head h3{margin:8px 0 0;font-family:var(--display);font-weight:800;font-stretch:112%;font-size:clamp(22px,2.2vw,32px);line-height:1.1;text-transform:uppercase}
.cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cf-f{display:flex;flex-direction:column;gap:6px}
.cf-f.full{grid-column:1/-1}
.cf-f label{font-family:var(--display);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--frost-2)}
.cf-f label em{font-style:normal;font-weight:600;letter-spacing:.04em;text-transform:none;color:var(--frost-3)}
.cf-f input,.cf-f textarea{width:100%;padding:14px 16px;border-radius:14px;border:1px solid rgba(234,243,252,.18);background:rgba(234,243,252,.06);color:var(--frost);font:inherit;font-size:16px;line-height:1.4;transition:border-color .25s,background .25s}
.cf-f textarea{resize:vertical;min-height:110px}
.cf-f input::placeholder,.cf-f textarea::placeholder{color:rgba(234,243,252,.38)}
.cf-f input:focus,.cf-f textarea:focus{outline:none;border-color:var(--ice);background:rgba(234,243,252,.1)}
.cf-f.bad input,.cf-f.bad textarea{border-color:#FF8B45}
.cform .cf-send{align-self:flex-start;background:var(--frost);color:var(--night);border-color:var(--frost)}
.cform .cf-send::before{background:var(--ice)}
.cform .cf-send[disabled]{opacity:.6;pointer-events:none}
.cf-note{margin:-6px 0 0;font-size:13px;color:var(--frost-3)}
.cf-status{margin:0;font-size:14.5px;color:#FFB98F;min-height:0}
.cf-status:empty{display:none}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.cf-done{display:flex;flex-direction:column;gap:14px;padding:clamp(8px,1vw,14px) 0}
.cf-done svg{width:64px;height:64px}
.cf-done circle{stroke-dasharray:200;stroke-dashoffset:200;animation:qzDraw .9s var(--ease) forwards}
.cf-done path{stroke-dasharray:50;stroke-dashoffset:50;animation:qzDraw .5s var(--ease) .7s forwards}
@keyframes qzDraw{to{stroke-dashoffset:0}}
.cf-done h3{margin:0;font-family:var(--display);font-weight:800;font-stretch:112%;font-size:clamp(24px,2.4vw,34px);line-height:1.05;text-transform:uppercase}
.cf-done p{margin:0;color:var(--frost-2)}
.qmini{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border-radius:20px;background:var(--night);color:var(--frost);text-decoration:none;transition:transform .5s var(--ease)}
.qmini .label{display:block;color:var(--ice);margin-bottom:6px}
.qmini b{font-family:var(--display);font-weight:800;font-stretch:112%;text-transform:uppercase;font-size:clamp(16px,1.4vw,19px);line-height:1.15}
.qmini i{flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--frost);color:var(--night);transition:transform .5s var(--ease)}
.qmini i svg{width:18px;height:18px}
.qmini:hover i{transform:rotate(-45deg)}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}
@media (max-width:520px){.cf-grid{grid-template-columns:1fr}}
.contact .cf-head .label,.contact .qmini .label{color:var(--ice)}
#cform .cf-send{background:var(--frost);color:var(--night);border-color:var(--frost)}
#cform .cf-send::before{background:var(--ice)}
#cform .cf-send:hover{color:var(--night)}
.fab{position:fixed;right:max(20px,env(safe-area-inset-right,0px));bottom:max(20px,env(safe-area-inset-bottom,0px));z-index:75;display:flex;flex-direction:column;align-items:flex-end;gap:12px;transition:opacity .4s,transform .5s var(--ease)}
.fab.away{opacity:0;transform:translateY(16px);pointer-events:none}
.fab-btn{position:relative;height:56px;padding:0 22px 0 18px;border-radius:999px;border:0;background:var(--frost);color:var(--night);cursor:pointer;box-shadow:0 18px 40px -14px rgba(0,0,0,.6);display:flex;align-items:center;font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;font-stretch:112%;transition:transform .3s var(--ease)}
.fab-btn:hover{transform:translateY(-2px)}
.fab-o{display:flex;align-items:center;gap:10px}
.fab-o svg{width:20px;height:20px}
.fab-o em{font-style:normal}
.fab-x{position:absolute;inset:0;display:none}
.fab-x::before,.fab-x::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:2px;margin:-1px 0 0 -8px;background:var(--night);border-radius:2px;transform:rotate(45deg)}
.fab-x::after{transform:rotate(-45deg)}
.fab.open .fab-btn{width:56px;padding:0}
.fab.open .fab-o{visibility:hidden}
.fab.open .fab-x{display:block}
.fab-menu{display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:22px;background:rgba(20,37,63,.96);border:1px solid var(--line-2);box-shadow:0 30px 70px -20px rgba(0,0,0,.7);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;visibility:hidden;transform:translateY(10px) scale(.98);transform-origin:100% 100%;transition:opacity .2s,transform .35s var(--ease),visibility 0s linear .35s}
.fab.open .fab-menu{opacity:1;visibility:visible;transform:none;transition:opacity .2s,transform .35s var(--ease),visibility 0s}
.fab-menu a{display:flex;align-items:center;gap:14px;padding:12px 16px 12px 12px;border-radius:14px;text-decoration:none;color:var(--frost);min-width:250px;transition:background .25s}
.fab-menu a:hover,.fab-menu a:focus-visible{background:rgba(234,243,252,.08);outline:none}
.fab-menu svg{flex:none;width:38px;height:38px;padding:9px;border-radius:50%;background:rgba(156,211,255,.12);color:var(--ice)}
.fab-menu span{display:flex;flex-direction:column;font-size:13.5px;color:var(--frost-2)}
.fab-menu b{font-family:var(--display);font-weight:800;font-stretch:112%;text-transform:uppercase;font-size:14px;color:var(--frost)}
.mbar{display:none}
@media (max-width:760px){
.fab{display:none}
.mbar{position:fixed;left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom,0px));z-index:75;display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:6px;padding:6px;border-radius:20px;background:rgba(20,37,63,.94);border:1px solid var(--line-2);box-shadow:0 18px 40px -14px rgba(0,0,0,.7);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:transform .5s var(--ease),opacity .4s}
.mbar.away{transform:translateY(130%);opacity:0}
.mbar a{display:flex;align-items:center;justify-content:center;gap:8px;height:48px;border-radius:14px;text-decoration:none;color:var(--frost);font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;font-stretch:112%}
.mbar a svg{width:18px;height:18px}
.mbar a:nth-child(2) svg{color:#5BD08A}
.mbar a.mbar-q{background:var(--frost);color:var(--night)}
footer{padding-bottom:84px}
}
.menu-open .mbar,.menu-open .fab{opacity:0;pointer-events:none}
.cc{position:fixed;left:max(20px,env(safe-area-inset-left,0px));bottom:max(20px,env(safe-area-inset-bottom,0px));z-index:80;width:min(380px,calc(100vw - 40px));padding:18px 20px;border-radius:20px;background:var(--frost);color:var(--night);box-shadow:0 24px 60px -20px rgba(0,0,0,.6);display:flex;flex-direction:column;gap:12px;font-size:14.5px;line-height:1.45}
.cc[hidden]{display:none}
.cc p{margin:0}
.cc div{display:flex;gap:8px}
.cc button{flex:1;height:42px;border-radius:999px;border:1px solid rgba(15,29,51,.2);background:none;color:var(--night);font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.cc .cc-yes{background:var(--night);color:var(--frost);border-color:var(--night)}
@media (max-width:760px){.cc{left:10px;right:10px;width:auto;bottom:calc(84px + env(safe-area-inset-bottom,0px))}}
.acfaq{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:start}
.ac-stage{position:sticky;top:104px;display:flex;flex-direction:column;gap:6px}
.ac-svg{display:block;width:100%;height:auto;overflow:visible}
.ac-body{fill:url(#acg)}
.ac-shade{fill:rgba(15,29,51,.07)}
.ac-slot{stroke:rgba(15,29,51,.16);stroke-width:3;stroke-linecap:round}
.ac-brand{font-family:var(--display);font-weight:800;font-stretch:125%;font-size:15px;letter-spacing:.14em;fill:rgba(15,29,51,.42)}
.ac-led-bg{fill:#0F1D33}
.ac-led{font-family:var(--display);font-weight:700;font-stretch:112%;font-size:22px;fill:#9CD3FF;text-anchor:middle;dominant-baseline:central;filter:drop-shadow(0 0 6px rgba(156,211,255,.8))}
.ac-dot{fill:#9CD3FF;opacity:.35;transition:opacity .2s}
.ac-gap{fill:#0F1D33;opacity:0;transition:opacity .5s var(--ease)}
.ac-flap{fill:#D3E0EE;transform-box:fill-box;transform-origin:50% 0;transition:transform .7s var(--ease)}
.ac.open .ac-gap{opacity:.75}
.ac.open .ac-flap{transform:translateY(9px) scaleY(1.7)}
.ac.beep .ac-dot{opacity:1}
.ac.beep .ac-led-bg{animation:ledflash .5s ease}
@keyframes ledflash{0%,100%{fill:#0F1D33}30%{fill:#1E3A5F}}
.ac-flow{fill:none;stroke:#9CD3FF;stroke-width:2;stroke-linecap:round;stroke-dasharray:4 16;opacity:.28;animation:dgdash 2.4s linear infinite}
.ac.open .ac-flow{opacity:.55;animation-duration:1.2s}
.ac.gust .ac-flow{animation:gust 1.3s cubic-bezier(.3,.55,.4,1) both;stroke-dasharray:56 300;stroke-width:2.6;opacity:.9}
.ac.gust .ac-flow:nth-child(2){animation-delay:.06s}.ac.gust .ac-flow:nth-child(3){animation-delay:.12s}.ac.gust .ac-flow:nth-child(4){animation-delay:.04s}.ac.gust .ac-flow:nth-child(5){animation-delay:.1s}.ac.gust .ac-flow:nth-child(6){animation-delay:.16s}.ac.gust .ac-flow:nth-child(7){animation-delay:.08s}
@keyframes gust{from{stroke-dashoffset:56;opacity:0}12%{opacity:1}75%{opacity:.9}to{stroke-dashoffset:-190;opacity:0}}
.ac-ans{position:relative;margin-top:-34px;padding:clamp(24px,2.6vw,36px);border-radius:24px;background:var(--frost);color:var(--night);min-height:220px;overflow:hidden}
.ac-ans::before{content:"";position:absolute;inset:0 0 auto;height:60px;background:linear-gradient(rgba(156,211,255,.28),transparent);pointer-events:none}
.ac-in{position:relative;display:flex;flex-direction:column;gap:12px}
.ac-in .label{color:var(--brand)}
.ac-in h2{margin:0;font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(22px,2.2vw,32px);line-height:1.02}
.ac-in p{margin:0;font-size:17px;line-height:1.6;color:rgba(15,29,51,.8)}
.ac-in a{color:var(--brand)!important;border-color:rgba(42,108,184,.4)!important}
.ac-in.blow{animation:blowIn .8s cubic-bezier(.2,.75,.25,1) .18s both}
@keyframes blowIn{from{opacity:0;transform:translateY(-26px) scale(.97);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
.acq{counter-reset:q}
.acq .q{counter-increment:q}
.acq .q button{padding:20px 4px;gap:16px;justify-content:flex-start;transition:color .3s,padding .5s var(--ease)}
.acq .q button::before{content:counter(q,decimal-leading-zero);flex:none;width:36px;font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--frost-3);transition:color .3s}
.acq .q button:hover{padding-left:12px}
.acq .q.on button{color:var(--ice)}
.acq .q.on button::before{color:var(--ember)}
@media (min-width:901px){.acq .q .a{display:none}.acq .q .pm{display:none}}
.acq .q .pm{margin-left:auto}
@media (max-width:900px){.acfaq{grid-template-columns:1fr}.ac-stage{position:relative;top:0;max-width:520px}.ac-ans{display:none}}
.wall{--wh:min(820px,90svh);position:relative;height:var(--wh);margin-top:-40px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px;align-items:start;-webkit-mask-image:linear-gradient(transparent,#000 12%,#000 82%,transparent);mask-image:linear-gradient(transparent,#000 12%,#000 82%,transparent);transform:rotate(-3deg) scale(1.06);transform-origin:60% 40%}
.col{display:flex;flex-direction:column;gap:14px;animation:glide var(--dur,44s) cubic-bezier(.45,0,.55,1) infinite alternate;animation-delay:var(--off,0s);will-change:transform}
.col.up{animation-direction:alternate-reverse}
.wall:hover .col{animation-play-state:paused}
@keyframes glide{from{transform:translateY(0)}to{transform:translateY(min(0px,calc(var(--wh) - 100%)))}}
.tile{position:relative;aspect-ratio:9/16;border-radius:16px;overflow:hidden;background:var(--night-3);border:0;padding:0;cursor:pointer;flex:none}
.tile img,.tile video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease),filter .6s}
.tile:hover img,.tile:hover video{transform:scale(1.06)}
.tile .tag{position:absolute;left:10px;bottom:10px;right:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:var(--display);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-stretch:112%;text-align:left}
.tile .tag span{padding:6px 10px;border-radius:999px;background:rgba(5,8,14,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.14);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tile .tag i{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(234,243,252,.92);color:var(--night)}
.tile .tag i svg{width:10px;height:10px}
@media (max-width:960px){
.hero-grid{grid-template-columns:1fr}
.wall{--wh:520px;margin-top:0;transform:none}
.hero{min-height:0}
}
@media (max-width:560px){.wall{--wh:440px;gap:8px}.col{gap:8px}.tile{border-radius:12px}.tile .tag span{display:none}.facts{grid-template-columns:1fr 1fr 1fr}.fact{padding-right:8px}.fact+.fact{padding-left:12px}.fact span{font-size:12.5px}}
.marq{border-block:1px solid var(--line);overflow:hidden;padding-block:clamp(18px,2.6vw,34px);position:relative;z-index:3;background:var(--night)}
.marq-track{display:flex;width:max-content;will-change:transform}
.marq-item{display:flex;align-items:center;gap:clamp(18px,2.4vw,40px);padding-right:clamp(18px,2.4vw,40px);font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(34px,6vw,96px);line-height:1;white-space:nowrap}
.marq-item .o{color:transparent;-webkit-text-stroke:1px var(--frost-3)}
.marq-item svg{width:.5em;height:.5em;flex:none}
.marq-item .sun{color:var(--ember)}.marq-item .snow{color:var(--ice)}
.js .rv{opacity:0;transform:translateY(40px);transition:opacity 1.1s var(--ease),transform 1.3s var(--ease);transition-delay:var(--d,0ms)}
.rv.in,.reduce .rv,.no-js .rv{opacity:1;transform:none}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;margin-bottom:clamp(40px,6vw,80px)}
.head h2{font-size:clamp(38px,6vw,96px)}
.head h2 .voice{display:block;font-size:1em}
.head p{max-width:30rem;margin:0;color:var(--frost-2)}
.range-sec{position:relative}
.range-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,20px)}
.unit{position:relative;display:flex;flex-direction:column;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));border:1px solid var(--line);overflow:hidden;transition:transform .7s var(--ease),border-color .5s,box-shadow .7s var(--ease)}
.unit:hover{transform:translateY(-6px);border-color:var(--line-2);box-shadow:0 30px 60px rgba(0,0,0,.25)}
.unit.main{border-color:rgba(156,211,255,.55);box-shadow:0 0 0 1px rgba(156,211,255,.25),0 30px 70px rgba(42,108,184,.25)}
.u-badge{position:absolute;top:14px;left:14px;z-index:3;padding:7px 12px;border-radius:999px;background:var(--ice);color:var(--night);font-family:var(--display);font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.u-stage{position:relative;aspect-ratio:5/4;background:radial-gradient(70% 55% at 50% 45%,rgba(156,211,255,.10),transparent 70%);overflow:hidden}
.u-stage::after{content:"";position:absolute;left:16%;right:16%;bottom:24%;height:12px;border-radius:50%;background:rgba(0,0,0,.35);filter:blur(10px)}
.u-view{position:absolute;inset:0 0 14% 0;display:grid;place-items:center;transition:opacity .6s var(--ease),transform .9s var(--ease)}
.u-img{position:relative;width:88%;aspect-ratio:3/1.15;display:grid;place-items:center}
.u-img img{position:absolute;max-width:100%;max-height:100%;object-fit:contain;opacity:0;transform:translateY(8px) scale(.98);transition:opacity .6s var(--ease),transform .8s var(--ease);filter:drop-shadow(0 16px 22px rgba(0,0,0,.35))}
.u-img img.on{opacity:1;transform:none}
.u-img.out-img{width:58%;aspect-ratio:1/0.8}
.air{position:absolute;left:24%;right:24%;top:72%;height:34px;display:flex;justify-content:space-between;pointer-events:none}
.air i{width:2px;height:100%;border-radius:2px;background:linear-gradient(rgba(111,169,220,.8),transparent);transform-origin:top;transform:scaleY(0);opacity:0;transition:transform 1s var(--ease) .6s,opacity .6s .6s}
.unit.live .air i{transform:scaleY(1);opacity:.8;animation:breeze 2.4s ease-in-out infinite}
.air i:nth-child(2){animation-delay:-.8s}.air i:nth-child(3){animation-delay:-1.6s}
@keyframes breeze{50%{transform:scaleY(.6) translateX(6px)}}
.u-view.out{opacity:0;transform:translateX(30px) scale(.96);pointer-events:none}
.u-view.outdoor.out{transform:translateX(-30px) scale(.96)}
.u-tog{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);z-index:3;display:flex;padding:3px;border-radius:999px;background:rgba(15,29,51,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.u-tog button{border:0;background:none;color:var(--frost-2);font-family:var(--display);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:7px 11px;border-radius:999px;cursor:pointer;transition:background .4s,color .4s}
.u-tog button[aria-pressed="true"]{background:var(--frost);color:var(--night)}
.u-body{display:flex;flex-direction:column;gap:14px;padding:20px 20px 22px;flex:1}
.u-logo{height:40px;display:flex;align-items:center}
.u-logo span{display:inline-flex;align-items:center;height:36px}
.u-logo img{height:100%;width:auto;max-width:170px;object-fit:contain;opacity:.95}
.u-logo .mhi{height:44px}.u-logo .lg{height:32px}
.u-name{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(20px,1.7vw,26px);line-height:1;margin:0}
.u-col{font-size:14px;color:var(--frost-3);min-height:1.4em}
.sw{display:flex;gap:10px}
.sw button{width:30px;height:30px;border-radius:50%;border:2px solid transparent;padding:3px;background:none;cursor:pointer;transition:border-color .3s,transform .4s var(--ease)}
.sw button i{display:block;width:100%;height:100%;border-radius:50%;background:var(--c);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35),inset 0 -6px 10px rgba(0,0,0,.12)}
.sw button[aria-pressed="true"]{border-color:var(--frost)}
.sw button:hover{transform:scale(1.12)}
.u-cta{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;text-decoration:none;font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding-top:14px;border-top:1px solid var(--line)}
.u-cta svg{width:16px;height:16px;transition:transform .5s var(--ease)}
.u-cta:hover svg{transform:translateX(5px)}
.flap{transform-box:fill-box;transform-origin:50% 0;transition:transform 1.2s var(--ease) .3s}
.unit:not(.live) .flap{transform:rotateX(0) scaleY(.2)}
.air path{stroke-dasharray:6 10;animation:air 1.6s linear infinite;opacity:0;transition:opacity .8s .9s}
.unit.live .air path{opacity:.7}
.air path:nth-child(2){animation-delay:-.5s}.air path:nth-child(3){animation-delay:-1s}
@keyframes air{to{stroke-dashoffset:-32}}
.fan{transform-box:fill-box;transform-origin:center;animation:spin 1.1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.led{animation:led 2.4s ease-in-out infinite}
@keyframes led{50%{opacity:.35}}
@media (max-width:1100px){.range-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.range-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter);scrollbar-width:none}.range-grid::-webkit-scrollbar{display:none}.unit{flex:none;width:82%;scroll-snap-align:center}}
.work{position:relative}
.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,24px)}
@media (max-width:900px){.work-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.work-grid{gap:12px}.card figcaption{flex-direction:column;gap:2px;padding-top:10px}.card figcaption span{white-space:normal}}
.card{position:relative;flex:none;width:auto;margin:0;cursor:pointer;background:none;border:0;padding:0;text-align:left}
.card .media{position:relative;aspect-ratio:4/5;border-radius:20px;overflow:hidden;background:var(--night-3)}
.card .media img,.card .media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.15);transition:transform 1.4s var(--ease)}
.card:hover .media img,.card:hover .media video{transform:scale(1.05)}
.card figcaption{display:flex;justify-content:space-between;gap:16px;padding-top:16px;align-items:baseline}
.card figcaption b{font-family:var(--display);font-weight:700;font-stretch:112%;font-size:15px;text-transform:uppercase;letter-spacing:.06em}
.card figcaption span{font-size:14px;color:var(--frost-3);white-space:nowrap}
.card .badge{position:absolute;top:14px;left:14px;padding:7px 12px;border-radius:999px;font-family:var(--display);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;background:rgba(5,8,14,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.14)}
.native .card{scroll-snap-align:start}
.fog{position:relative;height:min(92svh,900px);min-height:560px;overflow:hidden;border-radius:clamp(20px,3vw,40px);margin-inline:max(var(--gutter),env(safe-area-inset-left,0px));touch-action:pan-y}
.fog img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.fog canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair}
.fog-copy{position:absolute;left:0;right:0;bottom:0;padding:clamp(24px,4vw,56px);display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;pointer-events:none;background:linear-gradient(transparent,rgba(5,8,14,.75))}
.fog-copy h2{font-size:clamp(36px,5.6vw,88px)}
.fog-copy h2 .voice{display:block}
.fog-copy p{margin:0;max-width:24rem;color:var(--frost-2)}
.fog-hint{position:absolute;top:24px;left:50%;transform:translateX(-50%);padding:10px 16px;border-radius:999px;background:rgba(5,8,14,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.16);font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;pointer-events:none;transition:opacity .6s;white-space:nowrap}
.svc-list{border-top:1px solid var(--line)}
.svc{position:relative;display:grid;grid-template-columns:1fr 1.1fr auto;gap:30px;align-items:center;padding-block:clamp(22px,2.6vw,36px);border-bottom:1px solid var(--line);text-decoration:none;overflow:hidden}
.svc::before{content:"";position:absolute;inset:0;background:var(--frost);transform:scaleY(0);transform-origin:bottom;transition:transform .7s var(--ease);z-index:-1}
.svc{isolation:isolate;transition:color .5s var(--ease),padding .6s var(--ease)}
.svc:hover{color:var(--night);padding-inline:clamp(12px,2vw,28px)}
.svc:hover::before{transform:scaleY(1)}
.svc h3{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(22px,2.8vw,44px);line-height:1;margin:0}
.svc h3 .voice{display:block;font-size:.62em;margin-top:.22em;-webkit-text-stroke-width:1.2px;transition:-webkit-text-stroke-color .5s}
.svc:hover h3 .voice{-webkit-text-stroke-color:var(--night)}
.svc p{margin:0;color:var(--frost-2);transition:color .5s}
.svc:hover p{color:rgba(5,8,14,.72)}
.svc .arrow{width:52px;height:52px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;transition:transform .6s var(--ease),border-color .5s,background .5s}
.svc .arrow svg{width:18px;height:18px}
.svc:hover .arrow{transform:rotate(-45deg);background:var(--night);color:var(--frost);border-color:var(--night)}
.svc.hot h3::after{content:"24/7";display:none}
.peek{position:fixed;left:0;top:0;z-index:60;width:260px;aspect-ratio:4/5;border-radius:16px;overflow:hidden;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(-6deg);transition:opacity .4s,transform .6s var(--ease);box-shadow:0 30px 80px rgba(0,0,0,.5);background:var(--night-3)}
.peek.on{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(-3deg)}
.peek img{width:100%;height:100%;object-fit:cover}
@media (max-width:820px){.svc{grid-template-columns:1fr auto}.svc p{grid-column:1/-1;grid-row:2}.peek{display:none}}
.cmp{position:relative;aspect-ratio:16/9;max-height:84svh;width:100%;border-radius:clamp(18px,2.4vw,32px);overflow:hidden;user-select:none;touch-action:pan-y;--p:50%}
.cmp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cmp .warm{filter:saturate(1.15) brightness(1.03)}
.cmp .warm-tint{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 25%,rgba(255,150,70,.55),rgba(190,70,20,.45));mix-blend-mode:color;opacity:.55}
.cmp .cool-layer{position:absolute;inset:0;clip-path:inset(0 0 0 var(--p))}
.cmp .cool{filter:saturate(.7) brightness(1.06) contrast(1.02)}
.cmp .cool-tint{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 25%,rgba(156,211,255,.7),rgba(40,100,190,.6));mix-blend-mode:color;opacity:.6}
.cmp .handle{position:absolute;top:0;bottom:0;left:var(--p);width:2px;background:var(--frost);transform:translateX(-1px);pointer-events:none}
.cmp .knob{position:absolute;top:50%;left:50%;width:64px;height:64px;border-radius:50%;transform:translate(-50%,-50%);background:var(--frost);color:var(--night);display:grid;place-items:center;box-shadow:0 10px 40px rgba(0,0,0,.4)}
.cmp .knob svg{width:26px;height:26px}
.cmp input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.cmp .read{position:absolute;top:clamp(16px,2.4vw,32px);display:flex;flex-direction:column;gap:2px;pointer-events:none}
.cmp .read b{font-family:var(--display);font-weight:800;font-stretch:125%;font-size:clamp(34px,5vw,72px);line-height:1;font-variant-numeric:tabular-nums}
.cmp .read.l{left:clamp(16px,2.4vw,32px)}.cmp .read.r{right:clamp(16px,2.4vw,32px);text-align:right}
.cmp .read.l b{color:#FFD2B3}.cmp .read.r b{color:#D6ECFF}.cmp .read{transition:opacity .3s;text-shadow:0 2px 20px rgba(0,0,0,.35)}
.proc{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,6vw,100px)}
.proc-side{position:sticky;top:120px;align-self:start}
.proc-side h2{font-size:clamp(38px,5vw,80px)}
.proc-side h2 .voice{display:block}
.steps{position:relative;display:flex;flex-direction:column}
.steps::before{content:"";position:absolute;left:23px;top:24px;bottom:24px;width:1px;background:var(--line)}
.steps .fill{position:absolute;left:23px;top:24px;width:1px;height:calc(100% - 48px);background:linear-gradient(var(--ice),var(--brand));transform-origin:top;transform:scaleY(var(--prog,0))}
.step{position:relative;display:grid;grid-template-columns:48px 1fr;gap:28px;padding-block:28px}
.step .n{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:14px;background:var(--night);border:1px solid var(--line-2);transition:background .6s,color .6s,border-color .6s;z-index:1}
.step.on .n{background:var(--ice);color:var(--night);border-color:var(--ice)}
.step h3{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(22px,2.4vw,34px);margin:6px 0 10px;line-height:1}
.step p{margin:0;color:var(--frost-2);max-width:32rem}
@media (max-width:900px){.proc{grid-template-columns:1fr}.proc-side{position:static}}
.rev{position:relative}
.rev-top{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:40px}
.score{display:flex;align-items:center;gap:16px}
.score b{font-family:var(--display);font-weight:800;font-stretch:125%;font-size:56px;line-height:1}
.stars{display:flex;gap:3px;color:#FFC24B}
.stars svg{width:18px;height:18px;fill:currentColor}
.rev-stage{position:relative;min-height:clamp(300px,28vw,380px)}
.quote{position:absolute;inset:0;margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:30px;opacity:0;pointer-events:none}
.quote.on{opacity:1;pointer-events:auto}
.quote blockquote{margin:0;font-family:var(--display);font-weight:300;font-stretch:112%;font-size:clamp(26px,3.2vw,52px);line-height:1.14;letter-spacing:-.015em;max-width:60rem}
.quote blockquote.short{font-size:clamp(38px,5.6vw,90px);line-height:1.02;font-weight:800;font-stretch:125%;text-transform:uppercase}
.quote .qw{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.quote .qw>span{display:inline-block;transform:translateY(110%);transition:transform .9s var(--ease);transition-delay:var(--d,0ms)}
.quote.on .qw>span{transform:none}
.quote figcaption{display:flex;align-items:center;gap:14px;font-family:var(--display);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.quote figcaption span{color:var(--frost-3)}
.rev-ctrl{display:flex;align-items:center;gap:16px;margin-top:30px}
.rev-ctrl button{width:52px;height:52px;border-radius:50%;border:1px solid var(--line-2);background:none;cursor:pointer;display:grid;place-items:center;transition:background .4s,color .4s}
.rev-ctrl button:hover{background:var(--frost);color:var(--night)}
.rev-ctrl svg{width:18px;height:18px}
.rev-bar{flex:1;height:2px;background:var(--line);border-radius:2px;overflow:hidden}
.rev-bar i{display:block;height:100%;background:var(--ice);transform-origin:left;transform:scaleX(0)}
.rev-count{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.12em;font-variant-numeric:tabular-nums;color:var(--frost-3)}
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,6vw,100px)}
.faq h2{font-size:clamp(38px,5vw,80px)}
.faq h2 .voice{display:block}
.q{border-bottom:1px solid var(--line)}
.q:first-child{border-top:1px solid var(--line)}
.q button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;background:none;border:0;cursor:pointer;text-align:left;font-family:var(--display);font-weight:700;font-stretch:112%;font-size:clamp(17px,1.6vw,22px)}
.q .pm{position:relative;width:20px;height:20px;flex:none}
.q .pm::before,.q .pm::after{content:"";position:absolute;left:0;right:0;top:50%;height:1.5px;background:currentColor;transition:transform .6s var(--ease)}
.q .pm::after{transform:rotate(90deg)}
.q.open .pm::after{transform:rotate(0)}
.q .a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .7s var(--ease)}
.q.open .a{grid-template-rows:1fr}
.q .a>div{overflow:hidden}
.q .a p{margin:0 0 26px;color:var(--frost-2);max-width:40rem}
@media (max-width:900px){.faq{grid-template-columns:1fr}}
.contact{position:relative;border-radius:clamp(24px,3.4vw,48px) clamp(24px,3.4vw,48px) 0 0;background:var(--frost);color:var(--night);margin-top:clamp(60px,8vw,120px)}
.contact .label{color:rgba(5,8,14,.55)}
.contact h2{font-size:clamp(44px,8vw,140px)}
.contact h2 .voice{display:block;color:transparent;-webkit-text-stroke-color:var(--brand)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,100px);margin-top:clamp(40px,5vw,70px)}
.lines{display:flex;flex-direction:column;border-top:1px solid rgba(5,8,14,.14)}
.lines a,.lines div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;border-bottom:1px solid rgba(5,8,14,.14);text-decoration:none;font-family:var(--display);font-weight:700;font-stretch:112%;font-size:clamp(17px,1.7vw,24px);transition:padding .5s var(--ease)}
.lines a:hover{padding-left:12px}
.lines small{flex:none;font-family:var(--display);font-weight:800;font-stretch:112%;font-size:clamp(13px,1.1vw,15px);letter-spacing:.12em;text-transform:uppercase;color:var(--night)}
.lines span{text-align:right;color:rgba(15,29,51,.82);overflow-wrap:anywhere}
.lines a span{color:var(--brand);transition:color .3s}
.lines a:hover span{color:var(--night)}
.contact .pill{border-color:rgba(5,8,14,.2)}
.contact .pill::before{background:var(--night)}
.contact .pill:hover{color:var(--frost)}
.contact .pill.solid{background:var(--night);color:var(--frost);border-color:var(--night)}
.contact .pill.solid::before{background:var(--brand)}
form .f{position:relative;margin-bottom:22px}
form label{display:block;font-family:var(--display);font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(5,8,14,.55);margin-bottom:6px}
form input,form textarea{width:100%;border:0;border-bottom:1.5px solid rgba(5,8,14,.2);background:transparent;padding:10px 0 12px;font:500 18px var(--body);color:var(--night);border-radius:0;transition:border-color .4s;resize:vertical}
form input:focus,form textarea:focus{outline:none;border-color:var(--brand)}
form ::placeholder{color:rgba(5,8,14,.35)}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.sent{display:none;padding:30px 0}
.sent h3{font-family:var(--display);font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:32px;margin:0 0 8px}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr}.f2{grid-template-columns:1fr}}
.qcta{display:flex;flex-direction:column;gap:18px;padding:clamp(24px,3vw,40px);border-radius:24px;background:var(--night);color:var(--frost)}
.qcta .label{color:var(--ice)}
.qcta h3{margin:0;font-family:var(--display);font-weight:800;font-stretch:112%;font-size:clamp(22px,2.2vw,32px);line-height:1.1;text-transform:uppercase}
.qcta .pill{align-self:flex-start;background:var(--frost);color:var(--night);border-color:var(--frost)}
.qcta .pill::before{background:var(--ice)}
footer{background:var(--frost);color:var(--night);overflow:hidden}
.foot-top{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-block:60px 30px;border-top:1px solid rgba(5,8,14,.14)}
.foot-top .fh{margin:0 0 14px;font-family:var(--display);font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(5,8,14,.66)}
.foot-top a{display:block;text-decoration:none;padding:3px 0;font-weight:600}
.foot-top a:hover{color:var(--brand)}
.foot-brand{display:flex;align-items:center;gap:18px;padding-top:28px;border-top:1px solid rgba(5,8,14,.14)}
.foot-brand img{width:56px;height:56px;flex:none;object-fit:contain}
.foot-brand .areas-line{padding-top:0}
.areas-line{margin:0;padding-top:18px;font-size:14px;line-height:1.55;color:rgba(5,8,14,.66);max-width:56rem}
.legal{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-block:24px calc(28px + env(safe-area-inset-bottom,0px));font-size:13px;color:rgba(5,8,14,.68)}
@media (max-width:720px){.foot-top{grid-template-columns:1fr 1fr}}
.cur{position:fixed;left:0;top:0;z-index:95;pointer-events:none;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--frost);mix-blend-mode:difference;transition:width .5s var(--ease),height .5s var(--ease),margin .5s var(--ease),opacity .3s}
.cur.big{width:84px;height:84px;margin:-42px 0 0 -42px;mix-blend-mode:normal;background:rgba(234,243,252,.94)}
.cur em{position:absolute;inset:0;display:grid;place-items:center;font-style:normal;font-family:var(--display);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--night);opacity:0;transition:opacity .3s}
.cur.big em{opacity:1}
@media (pointer:coarse){.cur{display:none}}
.lb{position:fixed;inset:0;z-index:99;display:grid;place-items:center;background:rgba(3,5,9,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;visibility:hidden;transition:opacity .5s,visibility .5s;padding:max(20px,env(safe-area-inset-top,0px)) 20px max(20px,env(safe-area-inset-bottom,0px))}
.lb.on{opacity:1;visibility:visible}
.lb-box{position:relative;max-height:88svh;max-width:min(92vw,1200px);transform:scale(.92) translateY(20px);transition:transform .7s var(--ease)}
.lb.on .lb-box{transform:none}
.lb-box video,.lb-box img{max-height:84svh;max-width:100%;border-radius:18px;background:#000}
.lb-cap{margin-top:12px;font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--frost-2)}
.lb-x{position:absolute;top:max(18px,env(safe-area-inset-top,0px));right:max(18px,env(safe-area-inset-right,0px));width:52px;height:52px;border-radius:50%;border:1px solid var(--line-2);background:rgba(5,8,14,.6);cursor:pointer;display:grid;place-items:center}
.lb-x svg{width:18px;height:18px}
@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
.grain{display:none}
}