
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,video{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
h1,h2,h3,h4,p,ul,ol,figure{margin:0}
ul,ol{padding:0;list-style:none}
.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}
.skip{position:absolute;left:16px;top:-60px;z-index:999;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:10px;transition:top .2s}
.skip:focus{top:12px}
:focus-visible{outline:3px solid var(--focus,var(--accent));outline-offset:3px;border-radius:6px}
main:focus{outline:none}
.wrap{width:min(1200px,100% - 32px);margin-inline:auto}
.ico{width:1.15em;height:1.15em;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ico.fill{fill:currentColor;stroke:none}
.js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0) * 90ms)}
.js [data-reveal="left"]{transform:translateX(-36px)}
.js [data-reveal="right"]{transform:translateX(36px)}
.js [data-reveal="zoom"]{transform:scale(.94)}
.js [data-reveal].in{opacity:1;transform:none}
.js .mask-lines .ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.js .mask-lines .ln>span{display:inline-block;transform:translateY(105%);transition:transform 1.1s cubic-bezier(.2,.8,.15,1);transition-delay:calc(var(--l,0) * 120ms + 150ms)}
.js .mask-lines.in .ln>span{transform:none}
.draw path,.draw circle{transition:stroke-dashoffset 2.2s cubic-bezier(.6,.05,.25,1)}
.spin-badge{position:relative;width:var(--size,132px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;flex:none}
.spin-badge svg.ring{position:absolute;inset:0;width:100%;height:100%;animation:spin 16s linear infinite}
.spin-badge:hover svg.ring{animation-duration:6s}
.spin-badge text{font-family:var(--font-label,var(--font-body));font-size:9.4px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;fill:currentColor}
.spin-badge .core{position:relative;width:46%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center}
.spin-badge .core .ico{width:44%;height:44%}
@keyframes spin{to{transform:rotate(360deg)}}
.marquee{overflow:hidden;display:flex;user-select:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.marquee.edge{-webkit-mask-image:none;mask-image:none}
.marquee__track{display:flex;flex:none;gap:var(--gap,48px);padding-right:var(--gap,48px);align-items:center;animation:marq var(--dur,38s) linear infinite}
.marquee.rev .marquee__track{animation-direction:reverse}
.marquee:hover .marquee__track{animation-play-state:paused}
@keyframes marq{to{transform:translateX(-100%)}}
.field{position:relative}
.field input,.field textarea,.field select{width:100%;border:1.5px solid var(--line);background:var(--field,#fff);border-radius:var(--r-field,12px);padding:14px 44px 14px 16px;font-size:15px;transition:border-color .25s,box-shadow .25s,background .25s;-webkit-appearance:none;appearance:none}
.field textarea{min-height:84px;resize:vertical;padding-right:16px}
.field input::placeholder,.field textarea::placeholder{color:var(--muted)}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 28%,transparent)}
.field .ico{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.field input[type=date]::-webkit-calendar-picker-indicator{opacity:0;position:absolute;inset:0;width:100%;cursor:pointer}
.field.bad input{border-color:#c62828}
.form-done{display:none;text-align:center;padding:28px 8px}
.form-done .ico{width:52px;height:52px;margin:0 auto 14px;color:var(--accent-ink,var(--ink))}
.quote-form.sent .form-body{display:none}
.quote-form.sent .form-done{display:block;animation:pop .6s cubic-bezier(.2,.8,.2,1)}
@keyframes pop{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
.acc details{border-bottom:1.5px solid var(--line)}
.acc summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;padding:22px 4px}
.acc summary::-webkit-details-marker{display:none}
.acc .pm{margin-left:auto;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:none;transition:transform .45s cubic-bezier(.2,.8,.2,1),background .3s}
.acc details[open] .pm{transform:rotate(45deg)}
.acc .ans{overflow:hidden}
.acc .ans p{padding:0 4px 22px 4px;max-width:70ch;color:var(--muted-ink)}
.car{display:grid;grid-auto-flow:column;grid-auto-columns:var(--card,calc((100% - 2 * 18px) / 3));gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding-bottom:4px}
.car::-webkit-scrollbar{display:none}
.car>*{scroll-snap-align:start}
.stars{display:inline-flex;gap:2px;color:#f5a623}
.stars .ico{width:15px;height:15px}
@media (pointer:coarse){.btn{min-height:44px}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js [data-reveal],.js .mask-lines .ln>span{opacity:1!important;transform:none!important;transition:none!important}
  .spin-badge svg.ring,.marquee__track{animation:none!important}
  .draw path,.draw circle{transition:none!important;stroke-dashoffset:0!important}
}
.rm [data-reveal],.rm .mask-lines .ln>span{opacity:1!important;transform:none!important;transition:none!important}
.rm .spin-badge svg.ring,.rm .marquee__track{animation:none!important}
.rm .draw path,.rm .draw circle{stroke-dashoffset:0!important;transition:none!important}
:root{--font-display:'Bebas Neue',Impact,'Arial Narrow',sans-serif;--font-body:'Inter',system-ui,sans-serif;--font-label:'Inter',system-ui,sans-serif;--r:24px;--r-field:12px}
.h-disp{font-family:var(--font-display);font-weight:400;line-height:.95;letter-spacing:.01em;text-transform:uppercase}
.acc-t{color:var(--accent-text,var(--accent))}
.sec{padding:clamp(64px,9vw,120px) 0}
.sec-h{font-size:clamp(40px,5.4vw,68px);text-align:center;max-width:22ch;margin:0 auto clamp(36px,4vw,56px)}
.lede{color:var(--muted-ink);max-width:56ch}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:600;font-size:15px;border-radius:12px;padding:14px 24px;transition:transform .35s cubic-bezier(.2,.8,.2,1),background .3s,color .3s,box-shadow .3s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-acc{background:var(--accent);color:var(--accent-ink);box-shadow:0 10px 24px -12px color-mix(in srgb,var(--accent) 80%,transparent)}
.btn-acc:hover{box-shadow:0 16px 30px -12px color-mix(in srgb,var(--accent) 90%,transparent)}
.btn-dark{background:var(--ink);color:var(--bg)}
.btn-ghost{border:1.5px solid currentColor}
.btn .ico{transition:transform .35s}
.btn:hover .ico.arr{transform:translateX(4px)}
.hdr{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);transition:box-shadow .3s}
.hdr.scrolled{box-shadow:0 8px 30px -18px rgba(0,0,0,.35)}
.hdr .wrap{display:flex;align-items:center;gap:28px;height:84px;transition:height .3s}
.hdr.scrolled .wrap{height:70px}
.logo{display:flex;align-items:center;flex:none}
.logo img{height:var(--logo-h,52px);width:auto;transition:height .3s}
.hdr.scrolled .logo img{height:calc(var(--logo-h,52px) - 8px)}
.nav{display:flex;gap:30px;margin-inline:auto;font-weight:500;font-size:15px}
.nav a{position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.nav a:hover::after{transform:scaleX(1);transform-origin:left}
.hdr-call{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:26px;letter-spacing:.02em;white-space:nowrap}
.hdr-call .ic{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center}
.hdr-call .ico{width:17px;height:17px}
.burger{display:none;width:46px;height:46px;border-radius:12px;background:var(--ink);color:var(--bg);place-items:center;margin-left:auto}
.mnav{position:fixed;inset:0;z-index:60;background:var(--dark);color:var(--on-dark);padding:96px 24px 32px;display:flex;flex-direction:column;gap:6px;transform:translateY(-100%);transition:transform .55s cubic-bezier(.7,0,.2,1);visibility:hidden}
.mnav.open{transform:none;visibility:visible}
.mnav a.l{font-family:var(--font-display);font-size:46px;line-height:1.1;border-bottom:1px solid color-mix(in srgb,var(--on-dark) 16%,transparent);padding:10px 0}
.mnav .btn{margin-top:22px}
.mnav-x{position:absolute;top:20px;right:16px;width:46px;height:46px;border-radius:12px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center}
.hero{padding:8px 0 0}
.stage{position:relative;border-radius:32px;overflow:hidden;background:var(--dark);min-height:min(720px,calc(100svh - 110px));display:grid;grid-template-columns:1fr 420px;gap:24px;padding:20px;isolation:isolate}
.stage>.bg{position:absolute;inset:0;z-index:-2}
.stage>.bg img{width:100%;height:100%;object-fit:cover;object-position:var(--hero-pos,center);transform:scale(1.08);animation:heroZoom 2.4s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes heroZoom{to{transform:scale(1)}}
.stage::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.05) 25%,rgba(0,0,0,.72) 82%),linear-gradient(90deg,rgba(0,0,0,.35),transparent 55%)}
.swirl{position:absolute;left:-10px;top:-20px;width:min(300px,34%);z-index:-1;color:#fff;opacity:.9}
.hero-copy{align-self:end;padding:24px 20px 26px;color:#fff}
.hero-copy h1{font-size:clamp(58px,8.6vw,138px);text-shadow:0 4px 30px rgba(0,0,0,.25)}
.hero-copy p{margin-top:14px;max-width:60ch;font-size:15.5px;color:rgba(255,255,255,.9)}
.hero-copy p b{font-weight:600;border-bottom:1.5px solid var(--accent)}
.hero-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.hero-chips span{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:99px;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:13.5px;font-weight:500;border:1px solid rgba(255,255,255,.22)}
.hero-chips .ico{color:var(--accent);width:16px;height:16px}
.qcard{background:var(--bg);border-radius:24px;padding:28px 24px 24px;align-self:center;box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}
.qcard h2{font-family:var(--font-display);font-size:34px;line-height:1;text-align:center;margin-bottom:20px;font-weight:400}
.qcard .form-body{display:grid;gap:11px}
.qcard .row2{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.qcard .btn{width:100%;margin-top:6px;padding:16px}
.qcard .fine{font-size:12.5px;color:var(--muted);text-align:center;margin-top:10px}
.qcard .fine a{color:var(--ink);font-weight:600}
.strip{display:grid;grid-template-columns:1.85fr 1fr;gap:20px;margin-top:20px}
.stat-dark{background:var(--dark);color:var(--on-dark);border-radius:var(--r);padding:28px 36px;display:flex;align-items:center;gap:40px}
.stat-ph{position:relative;flex:none}
.stat-ph .ph{width:150px;height:150px;border-radius:50%;overflow:hidden}
.stat-ph .ph img{width:100%;height:100%;object-fit:cover}
.stat-ph .spin-badge{position:absolute;right:-30px;top:-22px;--size:84px;background:var(--accent);color:var(--accent-ink)}
.stat-ph .spin-badge text{font-size:11.5px}
.stat-ph .spin-badge .core{background:var(--accent-ink);color:var(--accent);width:36%}
.stat-sep{width:1px;align-self:stretch;background:color-mix(in srgb,var(--on-dark) 18%,transparent)}
.stat-n{display:flex;gap:44px;flex-wrap:wrap}
.stat-n .n{font-family:var(--font-display);font-size:58px;line-height:1}
.stat-n p{font-size:14px;opacity:.85;max-width:22ch;margin-top:6px}
.chips{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.chips span{font-size:12.5px;border:1px solid color-mix(in srgb,var(--on-dark) 45%,transparent);border-radius:99px;padding:4px 12px}
.rate-card{position:relative;overflow:hidden;background:var(--tint);border-radius:var(--r);padding:26px 28px;display:flex;flex-direction:column;justify-content:space-between;min-height:200px}
.rate-card .map{position:absolute;inset:0;color:var(--ink);opacity:.07;width:100%;height:100%}
.rate-card .top{display:flex;justify-content:space-between;align-items:center;position:relative}
.rate-card .g{width:46px;height:46px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 6px 16px -10px rgba(0,0,0,.4)}
.rate-card .wr{background:#fff;border-radius:99px;padding:9px 18px;font-size:13.5px;font-weight:600;transition:transform .3s}
.rate-card .wr:hover{transform:translateY(-2px)}
.rate-card .big{position:relative;font-family:var(--font-display);font-size:58px;line-height:1;display:flex;align-items:flex-start;gap:6px;margin-top:18px}
.rate-card .big .ico{width:22px;height:22px;color:#f5a623;margin-top:6px}
.rate-card p{position:relative;font-size:14px;color:var(--muted-ink)}
.feat{padding:44px 0 8px;display:flex;align-items:center;gap:32px}
.feat .lab{font-family:var(--font-display);font-size:22px;line-height:1;flex:none;max-width:9ch}
.feat .marquee{flex:1}
.cert{height:84px;width:auto;object-fit:contain;filter:saturate(.95);transition:transform .35s}
.cert:hover{transform:scale(1.06)}
.areaword{font-family:var(--font-display);font-size:42px;line-height:1;color:color-mix(in srgb,var(--ink) 38%,var(--bg));display:flex;align-items:center;gap:48px;white-space:nowrap}
.areaword::after{content:"";width:12px;height:12px;border-radius:50%;background:var(--accent)}
.svc3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.scard{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:1/1.08;color:#fff;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;padding:22px}
.scard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.scard::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.78));transition:background .5s}
.scard:hover img{transform:scale(1.07)}
.scard:hover::before{background:linear-gradient(180deg,rgba(0,0,0,.15) 10%,rgba(0,0,0,.86))}
.scard .pill{position:absolute;top:18px;left:18px;background:#fff;color:#111;border-radius:99px;font-size:12.5px;font-weight:600;padding:6px 14px}
.scard .go{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:#fff;color:#111;display:grid;place-items:center;transition:transform .4s,background .3s}
.scard:hover .go{transform:rotate(45deg);background:var(--accent);color:var(--accent-ink)}
.scard h3{font-family:var(--font-display);font-weight:400;font-size:34px;line-height:1}
.scard p{font-size:14px;opacity:.9;max-height:0;overflow:hidden;transition:max-height .6s cubic-bezier(.2,.8,.2,1),margin .6s;margin-top:0}
.scard:hover p,.scard:focus-within p{max-height:120px;margin-top:8px}
.split{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(32px,6vw,90px);align-items:center}
.split h2{font-size:clamp(42px,5.2vw,66px);margin-bottom:18px}
.checks{display:grid;gap:12px;margin:24px 0 30px}
.checks li{display:flex;gap:12px;align-items:center;font-weight:500;font-size:15px}
.checks .ico{color:var(--accent-text,var(--accent));width:20px;height:20px}
.collage{position:relative;padding:0 0 70px 70px}
.collage .main{border-radius:var(--r);overflow:hidden;aspect-ratio:1.18}
.collage .main img{width:100%;height:100%;object-fit:cover}
.collage .sub{position:absolute;left:0;bottom:0;width:46%;border-radius:20px;overflow:hidden;border:6px solid var(--bg);aspect-ratio:1.3;box-shadow:0 30px 50px -30px rgba(0,0,0,.5)}
.collage .sub img{width:100%;height:100%;object-fit:cover}
.collage .spin-badge{position:absolute;left:30%;bottom:28%;--size:130px;background:var(--dark);color:var(--on-dark);box-shadow:0 0 0 6px var(--bg)}
.collage .spin-badge .core{background:var(--accent);color:var(--accent-ink)}
.bento{display:grid;grid-template-columns:1fr 1.15fr 1fr;grid-template-rows:repeat(2,minmax(220px,auto));gap:20px}
.bento .scard{aspect-ratio:auto;min-height:220px}
.bento .tall{grid-row:span 2}
.bento .scard h3{font-size:30px}
.bento .cta-tile{border-radius:var(--r);background:var(--accent);color:var(--accent-ink);padding:28px;display:flex;flex-direction:column;justify-content:flex-end;gap:18px;position:relative;overflow:hidden}
.bento .cta-tile h3{font-family:var(--font-display);font-weight:400;font-size:34px;line-height:1.02;max-width:12ch}
.bento .cta-tile .loop{position:absolute;right:-40px;top:-30px;width:240px;opacity:.22}
.bento .cta-tile .btn{align-self:flex-start;background:var(--accent-ink);color:var(--accent)}
.rev-panel{background:var(--tint);border-radius:36px;padding:clamp(32px,5vw,64px)}
.rev-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}
.rev-head h2{font-size:clamp(40px,5vw,62px)}
.arrows{display:flex;gap:10px}
.arrows button{width:50px;height:50px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center;transition:background .3s,transform .3s,opacity .3s}
.arrows button.nx{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.arrows button:hover{transform:scale(1.07)}
.arrows button:disabled{opacity:.35;transform:none}
.tabs{display:flex;gap:6px;border-bottom:1.5px solid color-mix(in srgb,var(--ink) 18%,transparent);margin-bottom:26px;overflow-x:auto;scrollbar-width:none}
.tabs button{padding:12px 20px;font-weight:600;font-size:15px;position:relative;color:var(--muted-ink);white-space:nowrap}
.tabs button[aria-selected=true]{color:var(--ink)}
.tabs button::after{content:"";position:absolute;left:0;right:0;bottom:-1.5px;height:3px;border-radius:3px;background:var(--accent);transform:scaleX(0);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.tabs button[aria-selected=true]::after{transform:scaleX(1)}
.rcard{background:#fff;border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:16px;min-height:240px}
.rcard .who{display:flex;align-items:center;gap:12px}
.rcard .av{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:18px;background:var(--dark);color:var(--on-dark);flex:none;position:relative}
.rcard .av em{position:absolute;right:-8px;top:-6px;background:var(--accent);color:var(--accent-ink);font-style:normal;font-size:11px;font-weight:700;border-radius:99px;padding:2px 6px}
.rcard blockquote{margin:0;font-size:15px;line-height:1.6;flex:1}
.rcard .meta{display:flex;align-items:center;justify-content:space-between;font-size:13.5px;font-weight:600;gap:8px}
.rcard .src{display:flex;align-items:center;gap:8px}
.rcard .src svg{width:18px;height:18px}
.rcard .date{font-weight:400;color:var(--muted)}
.rev-panel .car{--card:calc((100% - 2 * 18px) / 3)}
.gal{position:relative;overflow:hidden;padding-bottom:clamp(70px,9vw,120px)!important}
.gal .loopbg{position:absolute;left:-5%;top:22%;width:110%;color:var(--tint);z-index:-1}
.gal-row{display:flex;gap:22px;align-items:center;justify-content:center;padding:0 16px}
.gal-row figure{border-radius:20px;overflow:hidden;flex:0 0 auto;width:clamp(180px,23vw,300px);position:relative}
.gal-row figure img{width:100%;height:100%;object-fit:cover}
.gal-row figure:nth-child(odd){aspect-ratio:.86}
.gal-row figure:nth-child(even){aspect-ratio:.82;margin-top:70px}
.gal-row figure:nth-child(3){aspect-ratio:.82;margin-top:-30px}
.gal .spin-badge{position:absolute;--size:110px;background:var(--dark);color:var(--on-dark);right:calc(50% - 360px);top:44%;z-index:2}
.gal .spin-badge .core{background:var(--accent);color:var(--accent-ink)}
.faq{max-width:860px;margin:0 auto}
.faq h2{font-size:clamp(40px,5vw,62px);margin-bottom:22px}
.faq summary{font-size:17px;font-weight:500}
.faq summary .no{font-variant-numeric:tabular-nums;color:var(--muted-ink);min-width:2.2em}
.faq .pm{background:var(--accent);color:var(--accent-ink)}
.band{background:var(--accent);color:var(--accent-ink);padding:18px 0;display:block}
.band .marquee__track{--gap:44px}
.band span.t{font-family:var(--font-display);font-size:clamp(40px,5vw,64px);line-height:1;white-space:nowrap}
.band .ico{width:46px;height:46px;stroke-width:2.6}
.ftr{background:var(--dark);color:var(--on-dark);padding:56px 0 0;overflow:hidden}
.ftr-top{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-bottom:36px;border-bottom:1px solid color-mix(in srgb,var(--on-dark) 25%,transparent);flex-wrap:wrap}
.ftr-top h2{font-family:var(--font-display);font-weight:400;font-size:clamp(30px,3.2vw,40px);line-height:1.02;max-width:20ch}
.ftr-top .acts{display:flex;gap:12px;flex-wrap:wrap}
.ftr-top .btn-ghost{color:var(--on-dark)}
.ftr-cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:36px;padding:44px 0}
.ftr-cols h3{font-family:var(--font-display);font-weight:400;font-size:24px;margin-bottom:14px;letter-spacing:.02em}
.ftr-cols li{margin-bottom:9px;font-size:14.5px;opacity:.88}
.ftr-cols li a:hover{color:var(--accent);opacity:1}
.ftr-cols .about p{font-size:14px;opacity:.8;margin:14px 0 18px;max-width:34ch}
.ftr .logo img{height:60px}
.ftr .logo.boxed{background:#fff;border-radius:14px;padding:8px 12px;display:inline-flex}
.soc{display:flex;gap:10px}
.soc a{width:38px;height:38px;border-radius:50%;background:var(--on-dark);color:var(--dark);display:grid;place-items:center;transition:background .3s,transform .3s}
.soc a:first-child{background:var(--accent);color:var(--accent-ink)}
.soc a:hover{transform:translateY(-3px);background:var(--accent);color:var(--accent-ink)}
.soc svg{width:17px;height:17px}
.ftr-big{display:flex;align-items:center;justify-content:center;gap:2vw;font-family:var(--font-display);line-height:.9;color:color-mix(in srgb,var(--on-dark) 92%,var(--accent));white-space:nowrap;padding:10px 0 .12em;font-size:var(--big-fs,13vw)}
.ftr-big .arr{color:var(--accent);width:.7em;height:.7em;stroke-width:2.2}
.ftr-legal{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;opacity:.7;padding:18px 0 22px;border-top:1px solid color-mix(in srgb,var(--on-dark) 18%,transparent)}
.mbar{display:none}
@media (max-width:1100px){
  .nav{gap:20px}
  .hdr-call{display:none}
  .stage{grid-template-columns:1fr 380px}
}
@media (max-width:920px){
  .nav,.hdr .btn-acc{display:none}
  .burger{display:grid}
  .hdr .wrap{height:72px}
  .stage{grid-template-columns:1fr;min-height:0;padding:14px;border-radius:24px}
  .stage>.bg{bottom:auto;height:560px}
  .stage::before{bottom:auto;height:560px}
  .hero-copy{min-height:520px;display:flex;flex-direction:column;justify-content:flex-end;padding:20px 8px}
  .qcard{margin-top:6px}
  .strip{grid-template-columns:1fr}
  .stat-dark{flex-direction:column;align-items:flex-start;gap:26px;padding:28px 24px}
  .stat-sep{display:none}
  .feat{flex-direction:column;align-items:flex-start;gap:16px}
  .feat .marquee{width:100%}
  .svc3{grid-template-columns:1fr;gap:16px}
  .scard{aspect-ratio:1.25}
  .scard p{max-height:120px;margin-top:8px}
  .split{grid-template-columns:1fr}
  .collage{padding:0 0 60px 40px}
  .bento{grid-template-columns:1fr 1fr}
  .bento .tall{grid-row:auto;grid-column:span 2;min-height:300px}
  .rev-panel .car{--card:86%}
  .rev-head{flex-wrap:wrap}
  .gal-row{justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:10px}
  .gal-row::-webkit-scrollbar{display:none}
  .gal-row figure{width:62vw;scroll-snap-align:center;margin-top:0!important}
  .gal .spin-badge{right:16px;top:-10px;--size:92px}
  .ftr-cols{grid-template-columns:1fr 1fr}
  .ftr-cols .about{grid-column:span 2}
  .mbar{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:10px;right:10px;bottom:10px;z-index:40;transform:translateY(130%);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
  .mbar.show{transform:none}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;border-radius:14px;font-weight:600;font-size:15px;box-shadow:0 14px 30px -14px rgba(0,0,0,.5)}
  .mbar .c{background:var(--dark);color:var(--on-dark)}
  .mbar .q{background:var(--accent);color:var(--accent-ink)}
  .ftr{padding-bottom:70px}
}
@media (max-width:560px){
  .qcard .row2{grid-template-columns:1fr}
  .stat-n{gap:28px}
  .stat-n .n{font-size:50px}
  .bento{grid-template-columns:1fr}
  .bento .tall{grid-column:auto}
  .collage .spin-badge{--size:104px;left:auto;right:8px;bottom:6px}
  .ftr-cols{grid-template-columns:1fr}
  .ftr-cols .about{grid-column:auto}
  .rev-panel{border-radius:26px;padding:28px 18px}
}
@media (max-height:620px) and (min-width:921px){.swirl{display:none}}
.stat-ph .ph img{object-position:var(--sp,center)}
.logo.dark-badge{background:var(--dark);border-radius:50%;padding:3px}
.logo.dark-badge img{height:calc(var(--logo-h,52px) + 10px)}
.hdr.scrolled .logo.dark-badge img{height:calc(var(--logo-h,52px) + 2px)}
@media (max-width:920px){
  .gal .spin-badge{position:relative;right:auto;top:auto;margin:26px auto 0}
  .tabs{flex-wrap:wrap;gap:2px}
  .tabs button{padding:10px 12px;font-size:14px}
  .stage::before{background:linear-gradient(180deg,rgba(0,0,0,.1) 15%,rgba(0,0,0,.82) 70%)}
  .feat .marquee{--gap:26px}
  .cert{height:62px}
}
