/* Kit vidracaria · design "Cristal": azul-noite, gelo ciano, reflexo âmbar e muito vidro (blur, brilho e reflexos) */
:root{
  --noite:#010c33; --mar:#0a2f8f; --mar2:#123a59; --gelo:#8fb4ff; --sol:#e6bd5a; --papel:#f1f4fb; --tinta:#04144a;
  --mute:#58707f; --mute-c:#9fbacb; --linha:rgba(10,24,36,.14); --linha-c:rgba(143,180,255,.2);
  --display:'Bricolage Grotesque',system-ui,sans-serif; --sans:'Manrope',system-ui,sans-serif;
  --r:28px; --ease:cubic-bezier(.22,1,.36,1); --spring:cubic-bezier(.34,1.56,.64,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--papel);color:var(--tinta);font:400 17px/1.65 var(--sans);overflow-x:clip;-webkit-font-smoothing:antialiased}
main,.rod{overflow-x:clip}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
ul,ol{list-style:none}
fieldset{border:0;min-width:0}
:focus-visible{outline:2px solid var(--gelo);outline-offset:3px;border-radius:8px}
.wrap{width:min(1240px,100% - 40px);margin-inline:auto}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
em{font-style:normal;color:var(--gelo);position:relative}
.hero em{white-space:nowrap}
em::after{content:"";position:absolute;left:-2%;right:-2%;bottom:.04em;height:.14em;background:currentColor;opacity:.28;border-radius:99px;transform:scaleX(0);transform-origin:left;transition:transform 1s .5s var(--ease)}
.vis em::after,.hero em::after{transform:scaleX(1)}
/* em em fundo claro: texto escuro com marca-texto gelo (gelo sobre claro não tem contraste) */
.lab em,.sobre em,.servicos em{color:var(--tinta);background:linear-gradient(transparent 64%,var(--gelo) 64% 92%,transparent 92%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.lab em::after,.sobre em::after,.servicos em::after{display:none}
.ct-painel em{color:inherit}

/* ---------- abertura ---------- */
.cortina{position:fixed;inset:0;z-index:100;background:var(--noite);color:var(--gelo);display:grid;place-items:center;transition:transform 1s var(--ease),visibility 0s 1.1s;overflow:hidden}
.cortina::after{content:"";position:absolute;top:-20%;bottom:-20%;left:-30%;width:26%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-18deg);animation:varre 1.6s .3s var(--ease) infinite}
@keyframes varre{to{left:120%}}
.cortina>div{position:relative;display:grid;justify-items:center;gap:16px;transition:opacity .4s,transform .8s var(--ease)}
.cortina .marca{width:78px;height:78px;position:relative;z-index:1}
.cortina .cn{font:700 clamp(18px,5vw,26px) var(--display);color:#fff;letter-spacing:.01em;text-align:center;max-width:calc(100vw - 32px);overflow-wrap:anywhere}
.lente{position:absolute;top:-34px;width:150px;height:150px;border-radius:50%;border:1px solid var(--linha-c);background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.25),transparent 40%),radial-gradient(circle,rgba(143,180,255,.08),transparent 70%);overflow:hidden}
.lente i{position:absolute;inset:0;background:conic-gradient(from 0deg,rgba(143,180,255,.5),transparent 24%);animation:giro 1.6s linear infinite}
@keyframes giro{to{transform:rotate(360deg)}}
.marca.draw .dr{stroke-dasharray:240;stroke-dashoffset:240;animation:dr 1.3s var(--ease) forwards}
.marca.draw .dr:nth-child(2){animation-delay:.25s}.marca.draw .dr:nth-child(3){animation-delay:.45s}
@keyframes dr{to{stroke-dashoffset:0}}
body.pronto .cortina{transform:translateY(-100%);visibility:hidden}
body.pronto .cortina>div{opacity:0;transform:translateY(-30px)}

.demo{position:fixed;top:0;left:0;right:0;z-index:60;background:#ffe600;color:#111;text-align:center;font-size:13px;font-weight:700;padding:7px 12px}
.demo a{color:inherit;text-decoration:underline}

/* ---------- navegação ---------- */
.nav{position:fixed;z-index:50;top:14px;left:50%;translate:-50% 0;width:min(1240px,100% - 24px);display:flex;align-items:center;gap:18px;padding:9px 10px 9px 18px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.03)),rgba(1,12,51,.5);backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.22);color:#fff;transition:background .3s}
body:has(.demo) .nav{top:46px}
body:has(.demo){padding-top:36px}
.nav.solid{background:rgba(1,12,51,.9)}
.logo{display:flex;align-items:center;gap:10px;margin-right:auto;line-height:1.1}
.logo .marca{width:36px;height:36px;color:var(--gelo);flex:none}
.logo b{display:block;font:700 18px var(--display);white-space:nowrap}
.logo small{font-size:12px;opacity:.65;letter-spacing:.04em}
.menu{display:flex;gap:4px}
.menu a{display:block;padding:8px 14px;border-radius:999px;font-size:15px;font-weight:600;white-space:nowrap;transition:background .25s,color .25s}
.menu a:hover,.menu a.on{background:rgba(143,180,255,.15);color:var(--gelo)}
.nav>.btn-sm{flex:none}
@media (min-width:981px) and (max-width:1180px){.nav{gap:12px}.menu a{padding:8px 9px;font-size:14px}}
@media (min-width:981px) and (max-width:1060px){.nav>.btn-sm{display:none}}
.burger{display:none;width:44px;height:44px;border-radius:50%;background:var(--gelo);position:relative}
.burger i{position:absolute;left:13px;right:13px;height:2px;background:var(--noite);border-radius:2px;transition:transform .35s var(--ease),top .35s var(--ease)}
.burger i:first-child{top:18px}.burger i:last-child{top:25px}
.burger[aria-expanded=true] i:first-child{top:21px;transform:rotate(45deg)}.burger[aria-expanded=true] i:last-child{top:21px;transform:rotate(-45deg)}

/* ---------- botões ---------- */
.btn{position:relative;display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border-radius:999px;background:var(--gelo);color:var(--noite);font:700 16px var(--sans);overflow:hidden;isolation:isolate;transition:transform .35s var(--ease),box-shadow .3s;box-shadow:0 10px 30px -12px rgba(143,180,255,.75);white-space:nowrap}
.btn::before{content:"";position:absolute;inset:0;background:var(--sol);transform:translateY(101%);transition:transform .45s var(--ease);z-index:-1;border-radius:inherit}
.btn::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);transform:skewX(-20deg);z-index:1;pointer-events:none}
.btn:hover::after{animation:brilha .8s var(--ease)}
@keyframes brilha{to{left:130%}}
.btn:hover::before{transform:none}
.btn svg{transition:transform .35s var(--ease);flex:none}
.btn:hover svg{transform:translateX(4px)}
.btn-sm{padding:10px 18px;font-size:15px}
.btn-lg{padding:18px 32px;font-size:18px}
.btn-escuro{background:var(--noite);color:var(--gelo);box-shadow:0 14px 34px -14px rgba(0,0,0,.6)}
.btn-escuro::before{background:#fff}.btn-escuro:hover{color:var(--noite)}
.btn.pulsa{animation:pulsa .5s var(--spring)}
@keyframes pulsa{50%{transform:scale(1.07)}}
.lk{font-weight:700;display:inline-flex;gap:8px;align-items:center;border-bottom:2px solid var(--gelo);padding-bottom:2px}
.lk span{display:inline-block;transition:transform .3s}.lk:hover span{transform:translateY(4px)}

/* ---------- títulos e rótulos ---------- */
.tag{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 12px;border-radius:99px;border:1px solid var(--linha);font:700 12.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.tag::before{content:"";width:8px;height:8px;border-radius:2px;rotate:45deg;background:var(--gelo);box-shadow:0 0 0 3px rgba(143,180,255,.28)}
.tag-claro,.cab.claro .tag,.escura .tag{border-color:var(--linha-c);color:var(--mute-c)}
.cab{display:grid;gap:18px;margin-bottom:52px;max-width:720px}
.cab>.tag{justify-self:start}
.cab.centro{margin-inline:auto;justify-items:center;text-align:center}
.cab.centro>.tag{justify-self:center}
.cab p{font-size:18.5px;color:var(--mute);max-width:56ch}
.cab.claro p{color:var(--mute-c)}
.tt{font:700 clamp(34px,5.4vw,64px)/1.02 var(--display);letter-spacing:-.025em;text-wrap:balance}
.pal{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.ch{display:inline-block;transform:translateY(110%) rotate(8deg);opacity:0;transition:transform .8s var(--ease),opacity .6s;transition-delay:calc(var(--c) * 16ms)}
.vis .ch,.tt.vis .ch{transform:none;opacity:1}
.rv{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease) var(--d,0s),transform .8s var(--ease) var(--d,0s)}
.rv.vis{opacity:1;transform:none}
section{position:relative}

/* escuras */
.hero,.manifesto,.raiox,.area,.relatos,.rod{background:var(--noite);color:#fff}
.raiox .tt,.area .tt,.relatos .tt{color:#fff}
.raiox .cab p,.area .cab p,.relatos .cab p{color:var(--mute-c)}
.raiox .tag,.area .tag,.relatos .tag{border-color:var(--linha-c);color:var(--mute-c)}

/* reflexo que segue o ponteiro nos cartões de vidro */
.sv::after,.rx-painel::after,.comp li::after,.rc::after,.ps-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(360px circle at var(--gx,-50%) var(--gy,-50%),rgba(255,255,255,.16),transparent 60%);opacity:0;transition:opacity .3s}
.sv:hover::after,.rx-painel:hover::after,.comp li:hover::after,.rc:hover::after,.ps-card:hover::after{opacity:1}

/* ---------- hero ---------- */
.hero{min-height:100svh;display:grid;align-items:center;padding:150px 0 70px;overflow:hidden;background:var(--noite)}
.hero-cena{position:absolute;inset:0;background:radial-gradient(900px 640px at 78% 22%,rgba(150,240,255,.7),transparent 62%),radial-gradient(760px 520px at 10% 90%,rgba(230,189,90,.4),transparent 65%),linear-gradient(160deg,#12709f 0%,#0a3d5e 55%,#010c33 100%)}
.hero-feixes{position:absolute;inset:-20% -10%;background:repeating-linear-gradient(115deg,transparent 0 120px,rgba(255,255,255,.1) 120px 190px,transparent 190px 340px);animation:feixe 22s linear infinite}
@keyframes feixe{to{transform:translateX(340px)}}
.hero-cacos i{position:absolute;display:block;background:linear-gradient(135deg,rgba(255,255,255,.2),rgba(143,180,255,.06) 55%,rgba(255,255,255,.14));border:1px solid rgba(255,255,255,.2);clip-path:polygon(18% 0,100% 12%,82% 100%,0 76%);animation:caco var(--t) ease-in-out infinite alternate var(--d);rotate:var(--r)}
@keyframes caco{to{transform:translate(18px,-26px) rotate(7deg)}}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;touch-action:pan-y;transition:opacity 1.4s var(--ease)}
.hero.limpo canvas{opacity:0;pointer-events:none}
.hero-grade{position:absolute;inset:0;background-image:linear-gradient(var(--linha-c) 1px,transparent 1px),linear-gradient(90deg,var(--linha-c) 1px,transparent 1px);background-size:64px 64px;opacity:.4;mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,#000 20%,transparent 78%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,#000 20%,transparent 78%)}
.hero-luz{position:absolute;inset:0;background:radial-gradient(420px circle at var(--mx,70%) var(--my,30%),rgba(255,255,255,.14),transparent 70%);transition:background .1s}
.hero-in{position:relative;z-index:2;pointer-events:none}
.hero-in a,.hero-in .chip{pointer-events:auto}
.hero-pre{display:inline-flex;align-items:center;gap:10px;font:700 13px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gelo);margin-bottom:26px;text-shadow:0 1px 12px rgba(1,12,51,.8)}
.pulso{width:10px;height:10px;border-radius:50%;background:var(--gelo);box-shadow:0 0 0 0 rgba(143,180,255,.7);animation:ping 2s infinite}
@keyframes ping{70%{box-shadow:0 0 0 14px rgba(143,180,255,0)}100%{box-shadow:0 0 0 0 rgba(143,180,255,0)}}
.hero h1{font:800 clamp(46px,9.4vw,150px)/.94 var(--display);letter-spacing:-.04em;margin-bottom:44px;text-shadow:0 4px 40px rgba(1,12,51,.55)}
.ln{display:block;overflow:hidden;padding:.06em 0 .1em;margin-bottom:-.1em}
.ln-i{display:block;transform:translateY(110%) skewY(6deg);transition:transform 1.1s var(--ease);transition-delay:calc(var(--i) * .12s + .1s)}
body.pronto .ln-i{transform:none}
.hero-pe{display:grid;grid-template-columns:minmax(0,520px) auto;gap:32px 56px;align-items:end;margin-bottom:46px}
.hero-pe p{font-size:19px;color:#d3e6f0;max-width:46ch;text-shadow:0 1px 14px rgba(1,12,51,.8)}
.hero-bt{display:flex;flex-wrap:wrap;align-items:center;gap:22px}
.hero-chips{display:flex;flex-wrap:wrap;gap:12px}
.chip{position:relative;display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border-radius:99px;border:1px solid rgba(255,255,255,.2);background:rgba(1,12,51,.45);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:14.5px;font-weight:600;overflow:hidden}
.dot{width:9px;height:9px;border-radius:50%;background:#7a8f9e}
.dot.on{background:var(--gelo);box-shadow:0 0 0 4px rgba(143,180,255,.25)}
@media (max-width:900px){.hero-pe{grid-template-columns:1fr}}

/* ---------- fitas de vidro ---------- */
.fitas{position:relative;height:150px;background:var(--noite);overflow:hidden}
.fita{position:absolute;left:-5%;width:110%;overflow:hidden;padding:14px 0;font:800 clamp(20px,3vw,32px) var(--display);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}
.f1{top:22px;background:linear-gradient(100deg,#c9f6ff,var(--gelo) 40%,#a9ecff 70%,#e8fbff);color:var(--noite);transform:rotate(-2.2deg);z-index:2;box-shadow:0 14px 40px -14px rgba(0,0,0,.7)}
.f2{top:70px;background:linear-gradient(100deg,var(--mar2),#0d3350);color:#fff;border-block:1px solid rgba(143,180,255,.5);transform:rotate(1.6deg);z-index:1}
.fita::after{content:"";position:absolute;top:0;bottom:0;left:-30%;width:22%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:varre 5s 1s ease-in-out infinite}
.f2::after{animation-delay:3s;opacity:.4}
.fita-in{display:inline-flex;align-items:center;gap:28px;padding-left:28px;animation:corre 38s linear infinite}
.f2 .fita-in{animation-direction:reverse;animation-duration:46s}
.fita-in i{width:14px;height:14px;background:var(--sol);transform:rotate(45deg);flex:none}
.f2 .fita-in i{background:var(--gelo)}
@keyframes corre{to{transform:translateX(-33.333%)}}

/* ---------- manifesto ---------- */
.manifesto{padding:90px 0 140px}
.manifesto .wrap{display:grid;gap:30px;justify-items:start}
.mf{font:600 clamp(26px,4.4vw,56px)/1.18 var(--display);letter-spacing:-.02em;max-width:24em}
.mf .w{color:rgba(255,255,255,.16);transition:color .5s}
.mf .w.on{color:#fff}
.mf .w.on:nth-child(5n){color:var(--gelo)}

/* ---------- laboratório do vidro ---------- */
.lab{padding:130px 0 120px;background:var(--papel)}
.lab-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:48px;align-items:start}
.lab-cena{position:sticky;top:110px;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:#0a3552;box-shadow:0 30px 70px -34px rgba(1,12,51,.7);border:1px solid rgba(255,255,255,.2)}
.lab-ceu{position:absolute;inset:0;background:linear-gradient(180deg,#ffb86b 0%,#ff8a5c 18%,#8a6bd1 46%,#1b4f86 78%)}
.lab-sol{position:absolute;left:62%;top:38%;width:18%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#fff6d6 0 40%,#ffd36b 70%,transparent 72%);box-shadow:0 0 90px 30px rgba(255,200,110,.6)}
.lab-nuv{position:absolute;height:5%;border-radius:99px;background:rgba(255,255,255,.55);filter:blur(3px);animation:nuvem 36s linear infinite}
.lab-nuv.n1{width:26%;top:14%;left:-30%}
.lab-nuv.n2{width:18%;top:28%;left:-30%;animation-duration:50s;animation-delay:-20s;opacity:.7}
@keyframes nuvem{to{left:120%}}
.lab-city{position:absolute;left:0;right:0;bottom:0;width:100%;height:34%}
.lab-city path{fill:#07182a}
.lab-vidro{--vc:rgba(200,238,255,.14);--vb:0px;position:absolute;left:50%;top:50%;width:calc(var(--pw) * 1%);height:calc(var(--ph) * 1%);translate:-50% -50%;border-radius:6px;border:2px solid rgba(255,255,255,.7);background:var(--vc);backdrop-filter:blur(var(--vb)) saturate(1.1);-webkit-backdrop-filter:blur(var(--vb)) saturate(1.1);box-shadow:inset 0 0 0 6px rgba(255,255,255,.06),inset 0 0 40px rgba(255,255,255,.15),0 20px 50px -10px rgba(0,0,0,.5);overflow:visible;transition:width .6s var(--ease),height .6s var(--ease),background .5s,backdrop-filter .5s}
.lab-brilho{position:absolute;inset:0;overflow:hidden;border-radius:4px}
.lab-brilho::before,.lab-brilho::after{content:"";position:absolute;top:-20%;bottom:-20%;left:-50%;width:22%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transform:skewX(-20deg);animation:varre 5.5s ease-in-out infinite}
.lab-brilho::after{width:9%;animation-delay:.25s;opacity:.7}
.lab-med{position:absolute;font:700 12.5px var(--sans);color:#fff;background:rgba(1,12,51,.7);padding:3px 10px;border-radius:99px;white-space:nowrap;opacity:0;transition:opacity .3s}
.lab-med.on{opacity:1}
.lab-w{left:50%;bottom:calc(100% + 10px);translate:-50% 0}
.lab-h{top:50%;left:calc(100% + 10px);translate:0 -50%}
.lab-tag{position:absolute;left:16px;bottom:16px;padding:8px 16px;border-radius:99px;background:rgba(1,12,51,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font:700 14px var(--sans);border:1px solid rgba(255,255,255,.2)}
.lab-ctl{display:grid;gap:26px}
.lab-f legend{display:flex;align-items:center;gap:12px;font:700 19px var(--display);margin-bottom:14px}
.lab-f legend b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--noite);color:var(--gelo);font-size:14px}
.lab-pills,.lab-sw{display:flex;flex-wrap:wrap;gap:10px}
.s-pill{display:inline-flex;align-items:center;gap:10px;padding:9px 18px 9px 10px;border-radius:99px;background:#fff;border:2px solid var(--linha);font:700 15.5px var(--sans);transition:background .3s,border-color .3s,transform .4s var(--spring),color .3s}
.s-pill .ico{width:32px;height:32px;padding:5px;border-radius:50%;background:var(--papel);color:var(--mar);transition:background .3s,transform .5s var(--spring)}
.s-pill:hover{border-color:var(--gelo);transform:scale(1.04)}
.s-pill:hover .ico{transform:rotate(-12deg) scale(1.1)}
.s-pill[aria-pressed=true]{background:var(--noite);border-color:var(--noite);color:#fff}
.s-pill[aria-pressed=true] .ico{background:var(--gelo);color:var(--noite)}
.s-pill .ok{width:0;height:20px;overflow:hidden;position:relative;transition:width .3s var(--ease)}
.s-pill .ok::after{content:"";position:absolute;left:3px;top:3px;width:12px;height:7px;border-left:3px solid var(--gelo);border-bottom:3px solid var(--gelo);transform:rotate(-45deg)}
.s-pill[aria-pressed=true] .ok{width:20px}
.sw{display:inline-flex;align-items:center;gap:10px;padding:8px 18px 8px 8px;border-radius:99px;background:#fff;border:2px solid var(--linha);font:700 15px var(--sans);transition:border-color .3s,background .3s,color .3s,transform .4s var(--spring)}
.sw:hover{transform:scale(1.04);border-color:var(--gelo)}
.sw-c{width:30px;height:30px;border-radius:50%;border:1px solid rgba(10,24,36,.25);background:var(--cor),repeating-conic-gradient(#cfdde5 0 25%,#fff 0 50%) 0 0/10px 10px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.5)}
.sw[aria-checked=true]{background:var(--noite);color:#fff;border-color:var(--noite)}
.lab-desc{margin-top:14px;padding:14px 18px;border-radius:18px;background:rgba(143,180,255,.18);font-size:15.5px;line-height:1.5;min-height:3.4em}
.lab-med-in{display:flex;flex-wrap:wrap;gap:14px}
.lab-med-in label{position:relative;display:grid;gap:4px;flex:1 1 150px}
.lab-med-in label span{font:700 12.5px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.lab-med-in input{width:100%;padding:14px 48px 14px 18px;border-radius:16px;border:2px solid var(--linha);background:#fff;font:700 18px var(--sans);color:var(--tinta);transition:border-color .3s;-moz-appearance:textfield}
.lab-med-in input::-webkit-outer-spin-button,.lab-med-in input::-webkit-inner-spin-button{-webkit-appearance:none}
.lab-med-in input:focus{outline:0;border-color:var(--gelo);box-shadow:0 0 0 4px rgba(143,180,255,.3)}
.lab-med-in input::placeholder{color:#9bb0bc;font-weight:500}
.lab-med-in .un{position:absolute;right:16px;bottom:15px;font:600 14px var(--sans);color:var(--mute)}
.lab-med-in .un::after{display:none}
.lab-res{margin-top:12px;font-weight:600;color:var(--mar)}
.lab-ctl .btn{justify-self:start}
.s-nota{color:var(--mute);font-size:15px}
@media (max-width:980px){.lab-grid{grid-template-columns:1fr}.lab-cena{position:relative;top:auto}}

/* ---------- casa em corte ---------- */
.raiox{padding:130px 0 130px;background:radial-gradient(900px 500px at 80% 0,rgba(143,180,255,.14),transparent 70%),var(--noite)}
.rx-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px;align-items:center}
.rx-casa{position:relative;color:var(--gelo);border:1px solid var(--linha-c);border-radius:var(--r);background:linear-gradient(180deg,rgba(143,180,255,.07),transparent),var(--mar);padding:18px;overflow:hidden;aspect-ratio:800/500}
.rx-svg{width:100%;height:100%}
.rx-svg .tr{stroke-dasharray:1;stroke-dashoffset:1}
.rx-casa.vis .rx-svg .tr{animation:tr 2.4s var(--ease) forwards}
.rx-svg .tr:nth-child(2){animation-delay:.2s}.rx-svg .tr:nth-child(3){animation-delay:.4s}.rx-svg .tr:nth-child(4){animation-delay:.6s}.rx-svg .tr:nth-child(5){animation-delay:.8s}.rx-svg .tr:nth-child(6){animation-delay:1s}
@keyframes tr{to{stroke-dashoffset:0}}
.rx-svg g.tr{stroke-dasharray:none;stroke-dashoffset:0;opacity:0;transition:opacity 1s 1.2s}
.rx-casa.vis .rx-svg g.tr{opacity:1;animation:none}
.rx-casa.vis .rx-svg g.tr[opacity]{opacity:.55}
.rx-scan{position:absolute;top:-20%;bottom:-20%;left:0;width:70px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-20deg);animation:scan 6s ease-in-out infinite;pointer-events:none}
@keyframes scan{0%{translate:-100% 0}100%{translate:var(--w,900px) 0}}
.rx-pt{position:absolute;translate:-50% -50%;display:flex;align-items:center;gap:8px;z-index:2}
.rx-n{position:relative;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gelo);color:var(--noite);font:800 15px var(--display);transition:transform .4s var(--spring),background .3s}
.rx-n::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--gelo);animation:onda 2.2s infinite}
@keyframes onda{to{transform:scale(2.4);opacity:0}}
.rx-rot{position:absolute;left:100%;margin-left:8px;white-space:nowrap;padding:5px 12px;border-radius:99px;background:var(--noite);border:1px solid var(--linha-c);font:700 12.5px var(--sans);color:#fff;opacity:0;transform:translateX(-8px);pointer-events:none;transition:opacity .3s,transform .3s}
.rx-pt:hover .rx-rot,.rx-pt.on .rx-rot,.rx-pt:focus-visible .rx-rot{opacity:1;transform:none}
.rx-pt:hover .rx-n{transform:scale(1.15)}
.rx-pt.on .rx-n{background:var(--sol);transform:scale(1.25)}
.rx-pt.on .rx-n::before{border-color:var(--sol)}
.rx-pt[style*="left:9"] .rx-rot,.rx-pt[style*="left:7"] .rx-rot{left:auto;right:100%;margin:0 8px 0 0}
.rx-painel{position:relative;border:1px solid var(--linha-c);border-radius:var(--r);padding:34px;background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.03));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);min-height:420px}
.rx-p{display:grid;gap:16px;align-content:start;animation:entra .6s var(--ease)}
.rx-p[hidden]{display:none}
@keyframes entra{from{opacity:0;transform:translateY(18px)}}
.rx-lbl{font:700 12.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gelo)}
.rx-p h3{font:700 clamp(26px,3vw,36px)/1.08 var(--display);letter-spacing:-.02em}
.rx-dica{color:var(--mute-c);font-size:16px}
.rx-lista{display:grid;gap:10px}
.rx-lista li{display:flex;gap:14px;align-items:flex-start;padding:14px;border-radius:18px;background:rgba(255,255,255,.06)}
.rx-lista .ico{width:44px;height:44px;flex:none;padding:7px;border-radius:50%;background:var(--gelo);color:var(--noite)}
.rx-lista b{display:block;font-size:16px}.rx-lista span{display:block;font-size:14.5px;color:var(--mute-c);line-height:1.5}
.rx-p .btn{justify-self:start;margin-top:6px}
@media (max-width:980px){.rx-grid{grid-template-columns:1fr}.rx-painel{min-height:0;padding:24px}.rx-n{width:30px;height:30px;font-size:13px}.rx-rot{display:none}}

/* ---------- serviços (cartas de vidro empilhadas) ---------- */
.servicos{padding:130px 0 140px;background:var(--papel)}
.sv-pilha{display:grid;gap:24px}
.sv{--tc:#fff;--bg:var(--noite);--mu:var(--mute-c);position:sticky;top:calc(96px + var(--i) * 16px);display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:40px;align-items:center;padding:46px 50px;border-radius:36px;background:var(--bg);color:var(--tc);box-shadow:0 -20px 60px -30px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.2);transform:scale(var(--s,1));transform-origin:50% 0;min-height:420px;overflow:hidden}
.sv::before{content:"";position:absolute;top:-30%;bottom:-30%;left:-40%;width:24%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform:skewX(-20deg);pointer-events:none;transition:left 1.1s var(--ease)}
.sv:hover::before{left:130%}
.t-mar{--bg:var(--mar2)}
.t-gelo{--bg:var(--gelo);--tc:var(--noite);--mu:#134a62}
.t-sol{--bg:var(--sol);--tc:var(--noite);--mu:#5b4208}
.sv-ico{position:relative;display:grid;place-items:center;aspect-ratio:1;border-radius:50% 50% 46% 54%/54% 46% 54% 46%;background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.2);animation:forma 9s ease-in-out infinite}
.t-gelo .sv-ico,.t-sol .sv-ico{background:linear-gradient(145deg,rgba(255,255,255,.5),rgba(255,255,255,.12));border-color:rgba(1,12,51,.15)}
@keyframes forma{50%{border-radius:44% 56% 52% 48%/48% 52% 48% 52%}}
.sv-ico .ico{width:62%;height:62%;color:var(--gelo);transition:transform .8s var(--spring)}
.t-gelo .sv-ico .ico,.t-sol .sv-ico .ico{color:var(--noite)}
.sv:hover .sv-ico .ico{transform:rotate(8deg) scale(1.08)}
.sv-n{position:absolute;top:6%;left:8%;font:800 22px var(--display);opacity:.55}
.sv h3{font:800 clamp(30px,3.6vw,48px)/1 var(--display);letter-spacing:-.03em;margin-bottom:14px}
.sv-res{font-size:18.5px;line-height:1.55;margin-bottom:22px;max-width:52ch}
.sv-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;padding:18px 0;border-top:1px solid rgba(128,128,128,.3);margin-bottom:6px}
.sv-cols b{display:block;font:700 12.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;opacity:.75}
.sv-cols p{font-size:15.5px;line-height:1.55;color:var(--mu)}
.sv-pe{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center;justify-content:space-between}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags span{padding:5px 12px;border-radius:99px;border:1px solid currentColor;font-size:13px;font-weight:600;opacity:.8}
.sv-lk{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:99px;background:var(--tc);color:var(--bg);font-weight:700;font-size:15px;transition:transform .35s var(--spring)}
.sv-lk:hover{transform:scale(1.06)}
@media (max-width:900px){.sv{position:relative;top:auto;grid-template-columns:1fr;padding:30px 24px;gap:22px;min-height:0;transform:none}.sv-ico{width:120px;aspect-ratio:1}.sv-cols{grid-template-columns:1fr}}

/* ---------- sobre ---------- */
.sobre{padding:130px 0;background:var(--papel);border-top:1px solid var(--linha)}
.so-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:70px;align-items:center}
.so-p{font-size:18.5px;color:#2f4656;margin-bottom:16px;max-width:56ch}
.stats{display:flex;flex-wrap:wrap;gap:20px 46px;margin-top:34px}
.stats dt{font:800 clamp(44px,6vw,76px)/1 var(--display);letter-spacing:-.04em}
.stats dd{font-size:14.5px;color:var(--mute);max-width:16ch;line-height:1.35;margin-top:4px}
.so-vis{position:relative;display:grid;gap:22px;justify-items:start}
.selo{position:relative;width:min(210px,50vw);aspect-ratio:1;border-radius:50%;background:var(--noite);color:var(--gelo);display:grid;place-items:center;box-shadow:0 24px 50px -26px rgba(1,12,51,.7)}
.selo svg:first-child{position:absolute;inset:0;width:100%;height:100%;animation:giro 24s linear infinite}
.selo text{font:700 14.5px var(--sans);letter-spacing:.16em;fill:currentColor}
.selo .marca{width:42%;height:42%}
.comp{display:grid;gap:12px;width:100%}
.comp li{position:relative;overflow:hidden;display:flex;gap:16px;align-items:flex-start;padding:18px 20px;border-radius:22px;background:#fff;border:1px solid var(--linha);transition:transform .4s var(--spring),border-color .3s}
.comp li:hover{transform:translateX(8px);border-color:var(--gelo)}
.comp li::after{background:radial-gradient(260px circle at var(--gx,-50%) var(--gy,-50%),rgba(143,180,255,.3),transparent 60%)}
.comp i{width:40px;height:40px;flex:none;border-radius:50%;background:var(--gelo);display:grid;place-items:center;font-style:normal}
.comp i .ico{width:24px;height:24px}
.comp b{display:block}.comp span{display:block;font-size:15px;color:var(--mute);line-height:1.5}
@media (max-width:900px){.so-grid{grid-template-columns:1fr;gap:44px}}

/* ---------- caminho ---------- */
.caminho{padding:130px 0 140px;background:var(--mar);color:#fff}
.caminho .tag{border-color:var(--linha-c);color:var(--mute-c)}
.caminho .cab p{color:var(--mute-c)}
.ps-list{position:relative;max-width:920px;margin:0 auto;display:grid;gap:56px;padding:20px 0}
.ps-linha{position:absolute;left:50%;top:0;width:3px;height:100%;translate:-50% 0;border-radius:3px;background:rgba(255,255,255,.14)}
.ps-viva{position:absolute;inset:0;border-radius:3px;background:var(--gelo);transform-origin:top;transform:scaleY(var(--lp,0));box-shadow:0 0 14px rgba(143,180,255,.8)}
.ps{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center}
.ps-dot{grid-column:1/-1;grid-row:1;justify-self:center;display:grid;place-items:center;width:52px;height:52px;border-radius:14px;rotate:45deg;background:var(--noite);border:2px solid var(--gelo);z-index:2;font:800 20px var(--display);color:var(--gelo);scale:.4;transition:scale .7s var(--spring)}
.ps-dot b{rotate:-45deg}
.ps.vis .ps-dot{scale:1}
.ps-card{position:relative;overflow:hidden;grid-row:1;grid-column:1;padding:24px 28px;border-radius:24px;background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.03));border:1px solid var(--linha-c);margin-right:50px;opacity:0;transform:translateX(-40px);transition:opacity .8s var(--ease) .1s,transform .8s var(--ease) .1s}
.ps:nth-child(odd) .ps-card{grid-column:2;margin:0 0 0 50px;transform:translateX(40px)}
.ps.vis .ps-card{opacity:1;transform:none}
.ps-card h3{font:700 22px var(--display);margin-bottom:6px;color:var(--gelo)}
.ps-card p{color:#c3d8e4;font-size:16px;line-height:1.55}
@media (max-width:760px){.ps-linha{left:26px;translate:-50% 0}.ps{grid-template-columns:52px 1fr;gap:16px}.ps-dot{grid-column:1;justify-self:start}.ps-card,.ps:nth-child(odd) .ps-card{grid-column:2;margin:0;transform:translateY(24px)}}

/* ---------- onde atendemos ---------- */
.area{padding:130px 0;background:radial-gradient(700px 500px at 20% 100%,rgba(143,180,255,.14),transparent 70%),var(--noite)}
.ar-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 60px;align-items:center}
.ar-form{display:grid;gap:16px;justify-items:start}
.ar-vis{position:relative;aspect-ratio:1;max-width:460px;width:100%;margin-inline:auto;display:grid;place-items:center}
.ar-vis .r{position:absolute;border-radius:50%;border:1px solid var(--linha-c);inset:calc(var(--k) * 1%)}
.r1{--k:0}.r2{--k:16}.r3{--k:32}
.ar-vis .r::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--gelo);opacity:0;animation:onda2 4s infinite}
.r2::after{animation-delay:1.3s}.r3::after{animation-delay:2.6s}
@keyframes onda2{0%{transform:scale(.6);opacity:.7}100%{transform:scale(1.1);opacity:0}}
.ar-pin{position:relative;z-index:2;display:grid;place-items:center;width:30%;aspect-ratio:1;border-radius:50%;background:var(--gelo);color:var(--noite);box-shadow:0 0 50px rgba(143,180,255,.5)}
.ar-pin .marca{width:60%;height:60%}
.ar-vis ul{position:absolute;inset:0;animation:giro 60s linear infinite}
.ar-vis li{position:absolute;inset:0;rotate:var(--a)}
.ar-vis li span{position:absolute;left:50%;top:0;translate:-50% -50%;padding:6px 14px;border-radius:99px;background:var(--mar);border:1px solid var(--linha-c);font:700 13px var(--sans);white-space:nowrap;animation:contra 60s linear infinite}
.ar-vis li{--a:0deg}
.ar-vis li span{rotate:calc(var(--a) * -1)}
@keyframes contra{to{transform:rotate(-360deg)}}
.ar-lista{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px}
.ar-lista li{padding:7px 16px;border-radius:99px;border:1px solid var(--linha-c);font-weight:600;font-size:14.5px;color:#c3d8e4}
@media (max-width:900px){.ar-grid{grid-template-columns:1fr}.ar-vis{max-width:340px}.ar-vis li span{font-size:11.5px;padding:4px 10px}}

/* ---------- relatos ---------- */
.relatos{padding:20px 0 130px}
.rl-topo{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:flex-end}
.rl-bt{display:flex;gap:10px;margin-bottom:52px}
.redondo{width:54px;height:54px;border-radius:50%;border:1px solid var(--linha-c);font-size:22px;transition:background .3s,color .3s,transform .3s var(--spring)}
.redondo:hover{background:var(--gelo);color:var(--noite);transform:scale(1.08)}
.rl-faixa{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px max(20px,calc((100vw - 1240px) / 2)) 24px;scrollbar-width:none}
.rl-faixa::-webkit-scrollbar{display:none}
.rc{position:relative;overflow:hidden;flex:0 0 min(440px,84vw);scroll-snap-align:start;padding:32px;border-radius:28px;background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.02)),var(--mar);border:1px solid var(--linha-c);display:grid;gap:16px;align-content:space-between;transition:transform .4s var(--spring),border-color .3s}
.rc:hover{transform:translateY(-6px) rotate(-.6deg);border-color:var(--gelo)}
.rc-est{color:var(--sol);letter-spacing:.14em}
.rc p{font:500 20px/1.5 var(--display)}
.rc footer{display:flex;gap:12px;align-items:center}
.av{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--gelo);color:var(--noite);font:800 18px var(--display)}
.rc footer b{display:block;font-size:15.5px}.rc footer small{color:var(--mute-c);font-size:13px}

/* ---------- contato ---------- */
.contato{padding:20px 0 120px;background:var(--noite);color:#fff}
.ct-painel{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;padding:56px;border-radius:44px;background:var(--gelo);color:var(--noite);overflow:hidden;isolation:isolate}
.ct-mesh{position:absolute;inset:0;z-index:-1;filter:blur(50px);opacity:.9}
.ct-mesh i{position:absolute;border-radius:50%;animation:deriva 14s ease-in-out infinite alternate}
.ct-mesh i:nth-child(1){width:55%;aspect-ratio:1;left:-10%;top:-30%;background:#e4fbff}
.ct-mesh i:nth-child(2){width:45%;aspect-ratio:1;right:-8%;bottom:-30%;background:var(--sol);animation-delay:-5s}
.ct-mesh i:nth-child(3){width:40%;aspect-ratio:1;right:25%;top:-20%;background:#3fb9e6;animation-delay:-9s}
@keyframes deriva{to{transform:translate(12%,14%) scale(1.15)}}
.ct-painel .tag{border-color:rgba(1,12,51,.3);color:var(--noite)}
.ct-painel .tag::before{background:var(--noite);box-shadow:0 0 0 3px rgba(1,12,51,.18)}
.ct-painel .cab p{color:#103a52}
.ct-painel .tt{color:var(--noite)}
.ct-l{display:grid;align-content:start;gap:24px}
.ct-l .cab{margin-bottom:0}
.ct-l .btn-lg{justify-self:start}
.urg{display:flex;gap:12px;align-items:center;padding:14px 18px;border-radius:18px;background:rgba(1,12,51,.12);font-weight:600;font-size:15.5px;line-height:1.4}
.urg i{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--noite);color:var(--sol);font:800 16px var(--display);font-style:normal}
address{font-style:normal;display:grid;gap:10px}
address a{border-bottom:2px solid var(--noite)}
.ct-r{display:grid;gap:18px;align-content:start}
.horas{display:grid;gap:2px;padding:20px 22px;border-radius:24px;background:rgba(255,255,255,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.7)}
.horas li{display:flex;justify-content:space-between;gap:16px;padding:6px 10px;border-radius:12px;font-size:15.5px}
.horas li.hoje{background:var(--noite);color:var(--gelo);font-weight:700}
.horas-livre{padding:22px;border-radius:24px;background:rgba(255,255,255,.55);font-weight:600}
.mapa{border-radius:24px;overflow:hidden;aspect-ratio:16/10;border:2px solid var(--noite)}
.mapa iframe{width:100%;height:100%;border:0;filter:grayscale(.3) contrast(1.05)}
@media (max-width:900px){.ct-painel{grid-template-columns:1fr;padding:34px 22px;border-radius:30px}}
.faq{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:50px;margin-top:100px;align-items:start}
.faq .cab{position:sticky;top:120px;margin-bottom:0}
.faq .tag{border-color:var(--linha-c);color:var(--mute-c)}
.faq .cab p{color:var(--mute-c)}
.fq{border-bottom:1px solid var(--linha-c)}
.fq summary{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 4px;font:700 clamp(18px,2vw,22px)/1.25 var(--display);cursor:pointer;list-style:none}
.fq summary::-webkit-details-marker{display:none}
.fq summary i{position:relative;flex:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--linha-c);transition:background .3s,transform .5s var(--spring)}
.fq summary i::before,.fq summary i::after{content:"";position:absolute;left:11px;right:11px;top:50%;height:2px;margin-top:-1px;background:var(--gelo);transition:background .3s,transform .4s}
.fq summary i::after{transform:rotate(90deg)}
.fq[open] summary i{background:var(--gelo);transform:rotate(180deg)}
.fq[open] summary i::before,.fq[open] summary i::after{background:var(--noite)}
.fq[open] summary i::after{transform:rotate(0)}
.fq-a{overflow:hidden}.fq-a p{padding:0 4px 24px;color:var(--mute-c);max-width:60ch}
@media (max-width:900px){.faq{grid-template-columns:1fr;gap:20px;margin-top:70px}.faq .cab{position:static}}

/* ---------- rodapé ---------- */
.rod{position:relative;padding:0 0 60px;background:var(--noite);border-top:0}
.rod-risco{height:10px;background:linear-gradient(90deg,var(--gelo),#fff,var(--sol),var(--gelo),#fff,var(--gelo));background-size:200% 100%;animation:fluxo 8s linear infinite}
@keyframes fluxo{to{background-position:200% 0}}
.rod-gigante{overflow:hidden;padding:50px 20px 0;text-align:center;line-height:.85}
.rod-gigante span{display:inline-block;font:800 min(260px,calc(170vw / var(--n)))/.9 var(--display);letter-spacing:-.04em;color:rgba(143,180,255,.26);white-space:nowrap;transform:translateY(var(--ry,0%));transition:color .6s}
.rod-gigante:hover span{color:rgba(143,180,255,.55)}
.rod-in{display:flex;flex-wrap:wrap;gap:20px 40px;justify-content:space-between;align-items:center;padding-top:36px;border-top:1px solid var(--linha-c);margin-top:30px;color:var(--mute-c);font-size:14.5px}
.rod-in .logo{color:#fff;margin:0}
.rod .peq{width:100%;font-size:13px;opacity:.7}

/* ---------- botão do WhatsApp ---------- */
.zap{position:fixed;z-index:70;right:18px;bottom:18px;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 14px 34px -10px rgba(37,211,102,.7);transform:scale(0) rotate(-90deg);transition:transform .6s var(--spring)}
.zap.vis{transform:none}
.zap:hover{transform:scale(1.1) rotate(-6deg)}
.zap svg:not(.zap-anel){position:relative}
.zap-anel{position:absolute;inset:-4px;max-width:none;width:calc(100% + 8px);height:calc(100% + 8px);rotate:-90deg;fill:none;stroke-width:3}
.zap-anel circle{stroke:rgba(255,255,255,.25)}
.zap-anel .zap-p{stroke:var(--sol);stroke-dasharray:189;stroke-dashoffset:calc(189 - 189 * var(--sp,0));stroke-linecap:round}

@media (max-width:980px){
  .nav{padding-right:8px}
  .burger{display:block}
  .nav>.btn-sm{display:none}
  nav{position:static}
  .menu{position:absolute;top:calc(100% + 10px);left:0;right:0;flex-direction:column;gap:2px;padding:12px;border-radius:26px;background:rgba(1,12,51,.96);border:1px solid var(--linha-c);opacity:0;pointer-events:none;transform:translateY(-10px);transition:opacity .3s,transform .4s var(--ease)}
  .menu.aberto{opacity:1;pointer-events:auto;transform:none}
  .menu a{padding:14px 18px;font-size:17px}
  .fitas{height:130px}
}
@media (max-width:600px){
  body{font-size:16px}
  .hero{padding-top:128px}
  .manifesto,.lab,.raiox,.servicos,.sobre,.caminho,.area{padding-block:90px}
  .zap{width:58px;height:58px}
  .lab-w,.lab-h{font-size:11px}
}

/* respeita quem prefere menos movimento */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0s!important}
  .rv,.ch,.ln-i,.s-pill,.ps-card,.ps-dot{opacity:1!important;transform:none!important;scale:1!important}
  .ps-dot{rotate:45deg}
  .rx-svg .tr{stroke-dashoffset:0}.rx-svg g.tr{opacity:1}
  .sv{position:relative;top:auto}
  .mf .w{color:#fff}
  .hero canvas{display:none}
}

/* ---------- fotos reais (opcional) ---------- */
.hero-foto{position:absolute;inset:0;background-size:cover;background-position:center 40%;animation:zoomfoto 26s ease-in-out infinite alternate}
@keyframes zoomfoto{to{transform:scale(1.07)}}
.hero-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(1,12,51,.93) 0%,rgba(1,12,51,.7) 42%,rgba(1,12,51,.25) 100%),linear-gradient(0deg,rgba(1,12,51,.85),transparent 40%)}
.hero-cena:has(.hero-foto) .hero-feixes{opacity:.35;mix-blend-mode:soft-light}
.sv-ico.com-foto{border-radius:34px 34px 120px 34px;overflow:hidden;animation:none;padding:0;aspect-ratio:4/5;background:#000}
.sv-ico.com-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.sv:hover .sv-ico.com-foto img{transform:scale(1.07)}
.sv-ico.com-foto::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,12,51,.35),transparent 35%,rgba(1,12,51,.55));z-index:1}
.sv-ico.com-foto .sv-n{z-index:2;color:#fff;opacity:.95;text-shadow:0 2px 10px rgba(0,0,0,.6)}
.sv-ico.com-foto .ico{position:absolute;z-index:2;right:12px;bottom:12px;width:54px;height:54px;padding:12px;border-radius:18px;background:rgba(1,12,51,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:var(--gelo)!important}
.logo-img{height:54px;width:auto;max-width:100%}

.galeria{padding:130px 0 140px;background:var(--noite);color:#fff;overflow:hidden}
.galeria .tt{color:#fff}.galeria .cab p{color:var(--mute-c)}.galeria .tag{border-color:var(--linha-c);color:var(--mute-c)}
.galeria em{color:var(--gelo)}
.gl-grade{width:min(1380px,100% - 24px);margin-inline:auto;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(150px,19vw,270px);grid-auto-flow:dense;gap:12px}
.gl-it{position:relative;overflow:hidden;border-radius:22px;background:var(--mar);padding:0;display:block;isolation:isolate}
.gl-it.g-l{grid-column:span 2}.gl-it.g-a{grid-row:span 2}.gl-it.g-g{grid-column:span 2;grid-row:span 2}
.gl-it img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.gl-it::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(1,12,51,.82),transparent 48%);opacity:.7;transition:opacity .4s;z-index:1}
.gl-it::before{content:"";position:absolute;top:-30%;bottom:-30%;left:-60%;width:30%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-20deg);z-index:2;pointer-events:none;transition:left 1s var(--ease)}
.gl-it:hover::before{left:130%}
.gl-it:hover img{transform:scale(1.09)}.gl-it:hover::after{opacity:1}
.gl-it span{position:absolute;left:16px;right:16px;bottom:14px;z-index:3;text-align:left;font:700 15px/1.25 var(--sans);transform:translateY(8px);opacity:.9;transition:transform .4s var(--ease)}
.gl-it:hover span{transform:none}
.gl-luz{position:fixed;inset:0;z-index:90;background:rgba(2,8,24,.94);backdrop-filter:blur(12px);display:grid;place-items:center;padding:24px}
.gl-luz[hidden]{display:none}
.gl-luz figure{display:grid;gap:12px;justify-items:center;max-width:min(1100px,100%)}
.gl-luz img{max-height:78vh;width:auto;max-width:100%;border-radius:18px;box-shadow:0 30px 80px -20px #000}
.gl-luz figcaption{color:var(--mute-c);font-weight:600}
.gl-x,.gl-n{position:absolute;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);font-size:26px;line-height:1;color:#fff;transition:background .3s}
.gl-x:hover,.gl-n:hover{background:var(--gelo);color:var(--noite)}
.gl-x{top:18px;right:18px}.gl-a{left:18px;top:50%}.gl-p{right:18px;top:50%}
@media (max-width:900px){.gl-grade{grid-template-columns:repeat(2,1fr);grid-auto-rows:44vw}.galeria{padding-block:90px}.logo-img{height:46px}.sv-ico.com-foto{width:100%;max-width:none;aspect-ratio:16/10;border-radius:28px}.gl-a,.gl-p{top:auto;bottom:18px}}
