/* COSS — camada visual: hero cheio, cards 3D, mapa 3D, rolagem animada, WhatsApp realista */
:root{--wa:#25d366;--neon:#72ef28;--deep:#050c09}

/* ---------- Progresso de rolagem + header ---------- */
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:100%;z-index:90;transform-origin:0 50%;transform:scaleX(var(--p,0));background:linear-gradient(90deg,#3fb618,var(--neon),#c8ff8f);box-shadow:0 0 14px var(--neon);pointer-events:none}
.header{background:#0a1713d9;backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);transition:background .3s,box-shadow .3s}
.header .navrow{transition:height .3s var(--ease)}
.header.scrolled{background:#07110dee;box-shadow:0 10px 30px -12px #000a}
.header.scrolled .navrow{height:72px}

/* ---------- Botões ---------- */
.button{border-radius:12px;position:relative;overflow:hidden;transition:transform .25s var(--ease),box-shadow .3s,background .2s,color .2s,border-color .2s}
.button.primary{background:linear-gradient(180deg,#8cf84a,#5fd81a);box-shadow:0 0 0 1px #b9ff8d66 inset,0 10px 30px -8px #72ef28aa,0 0 22px -4px #72ef2866}
.button.primary:hover{background:linear-gradient(180deg,#a0ff62,#6fe828);transform:translateY(-2px);box-shadow:0 0 0 1px #d4ffb8 inset,0 16px 40px -8px #72ef28dd,0 0 34px -2px #72ef28aa}
.button.primary:before{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#ffffff70 50%,transparent 65%);transform:translateX(-120%);transition:transform .7s var(--ease)}
.button.primary:hover:before{transform:translateX(120%)}
.button.outline:hover{box-shadow:0 0 22px -4px #72ef2877,inset 0 0 14px -6px #72ef2877}
.button.text{border-radius:0}
.button.wa{color:#fff;background:linear-gradient(180deg,#2fe074,#1aa653);box-shadow:0 0 0 1px #ffffff40 inset,0 10px 30px -8px #25d366aa;gap:12px;padding-inline:18px 22px}
.button.wa:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #ffffff70 inset,0 16px 40px -8px #25d366dd}
.button.wa svg{width:24px;height:24px}
input,textarea,select{border-radius:10px;transition:border-color .2s,box-shadow .2s}
input:focus,textarea:focus{box-shadow:0 0 0 4px #72ef2833}

/* ---------- Revelar ao rolar ---------- */
html.js [data-reveal]{opacity:0;transform:translate3d(0,46px,0);transition:opacity .9s var(--ease) var(--d,0ms),transform 1.1s var(--ease) var(--d,0ms)}
html.js [data-reveal=left]{transform:translate3d(-70px,0,0)}
html.js [data-reveal=right]{transform:translate3d(70px,0,0)}
html.js [data-reveal=zoom]{transform:scale(.86)}
html.js [data-reveal].is-in{opacity:1;transform:none}
html.js [data-reveal].is-in[data-tilt]{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
html.js [data-reveal].settled{transition:transform .25s ease-out,box-shadow .3s,border-color .3s,background .3s,color .2s}

/* ---------- Hero em tela cheia ---------- */
.hero{position:relative;isolation:isolate;display:grid;min-height:min(860px,calc(100svh - 88px));background:var(--deep)}
.hero-slides{position:absolute;inset:-7% 0;z-index:-3;transform:translate3d(0,var(--py,0px),0);will-change:transform}
.hero-slide{background-position:center}
.hero-slide:first-child{background-position:50% 35%}
.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#050c09e6 0%,#050c0996 34%,#050c0940 66%,#050c0914 100%),linear-gradient(0deg,#050c09 0%,#050c0900 38%),linear-gradient(180deg,#050c0990 0%,#050c0900 22%)}
.hero .hero-layout{width:min(1248px,calc(100% - 96px));display:grid;grid-template-columns:1.12fr .88fr;grid-template-rows:1fr auto;column-gap:40px;align-items:center;padding-block:56px 22px}
.hero-pill{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 12px;margin-bottom:26px;border:1px solid #72ef2855;border-radius:99px;background:#72ef2814;color:#d9f9c4;font:400 13px/1.3 var(--display);backdrop-filter:blur(8px)}
.hero-pill .status-dot{width:8px;height:8px;box-shadow:0 0 0 0 #72ef28;animation:ping 2s ease-out infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 #72ef28aa}100%{box-shadow:0 0 0 12px #72ef2800}}
.hero h1{font-size:clamp(42px,5.3vw,78px);line-height:1.04;letter-spacing:-.035em;text-shadow:0 6px 40px #0009}
.hero h1>span{white-space:nowrap;background:linear-gradient(100deg,#72ef28 0%,#d4ff9e 45%,#72ef28 90%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 6s ease-in-out infinite;filter:drop-shadow(0 0 22px #72ef2866)}
@keyframes sheen{0%,100%{background-position:0 0}50%{background-position:100% 0}}
.hero-brand{font-size:17px;color:#d7e4d9;letter-spacing:.01em}
.hero-actions{gap:16px 20px;margin-top:34px}
.hero-actions .text{margin-left:6px}
.hero-load>*{animation:rise .9s var(--ease) both}
.hero-load>*:nth-child(2){animation-delay:.08s}.hero-load>*:nth-child(3){animation-delay:.16s}.hero-load>*:nth-child(4){animation-delay:.24s}.hero-load>*:nth-child(5){animation-delay:.32s}
@keyframes rise{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}

.hero-cards{position:relative;height:440px;perspective:1100px;transform-style:preserve-3d;--mx:0;--my:0}
.hcard{position:absolute;transform-style:preserve-3d;transform:translate3d(calc(var(--mx) * var(--k) * 1px),calc(var(--my) * var(--k) * 1px),var(--z)) rotateY(calc(-14deg + var(--mx) * 6deg)) rotateX(calc(6deg - var(--my) * 5deg));transition:transform .25s ease-out}
.hcard-in{min-width:230px;padding:22px 28px 22px 24px;border-radius:20px;border:1px solid #ffffff30;background:linear-gradient(135deg,#ffffff24,#ffffff08);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);box-shadow:0 40px 70px -24px #000c,0 0 0 1px #72ef2814,inset 0 1px 0 #ffffff40;animation:floaty 7s ease-in-out infinite;animation-delay:var(--fd,0s)}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hcard b{display:flex;align-items:baseline;gap:4px;font:500 clamp(44px,4.4vw,64px)/1 var(--display);letter-spacing:-.04em;color:var(--neon);text-shadow:0 0 26px #72ef2877}
.hcard b small{font-size:.42em;letter-spacing:0;color:#d4ffb8;font-weight:400}
.hcard span{display:block;margin-top:8px;font-size:14px;line-height:1.4;color:#dbe8dd}
.hcard i{position:absolute;right:16px;top:16px;width:34px;height:34px;color:#c8ff8f;opacity:.9}
.hcard i svg{width:100%;height:100%}
.hcard:nth-child(1){top:50%;right:8%;margin-top:-70px;--k:22;--z:90px;--fd:0s}
.hcard:nth-child(2){top:140px;left:0;--k:-26;--z:130px;--fd:-2.4s}
.hcard:nth-child(3){top:290px;right:0;--k:32;--z:40px;--fd:-4.6s}
.hero-footer{border-top:1px solid #ffffff22;align-self:end}
.hero-footer .scroll-link{position:relative}
.scroll-link svg{animation:nudge 1.6s ease-in-out infinite}
@keyframes nudge{0%,100%{translate:0 0}50%{translate:4px 0}}

/* ---------- Serviços em cards 3D ---------- */
.services{position:relative;background:linear-gradient(180deg,#f8f9f5,#eef3ea)}
.services-layout{grid-template-columns:.62fr 1.38fr;gap:64px}
.services-intro h2{font-size:clamp(44px,5vw,68px)}
.services-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:0;counter-reset:svc}
.service-row{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:40px;min-height:250px;padding:28px 28px 26px;border:1px solid #ffffff14;border-radius:22px;background:radial-gradient(420px circle at var(--gx,30%) var(--gy,0%),#72ef2822,transparent 60%),linear-gradient(160deg,#13301f 0%,#0a1812 60%,#07110c 100%);color:var(--night-text);overflow:hidden;box-shadow:0 30px 60px -34px #000c;counter-increment:svc;transform-style:preserve-3d}
.service-row:before{content:counter(svc,decimal-leading-zero);position:absolute;right:22px;top:6px;font:500 84px/1 var(--display);letter-spacing:-.05em;color:#ffffff0b;pointer-events:none}
.service-row:after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--neon),transparent);transform:scaleX(0);transition:transform .5s var(--ease)}
.service-row:hover{border-color:#72ef2866;box-shadow:0 40px 70px -30px #000d,0 0 40px -12px #72ef2855}
.service-row:hover:after{transform:scaleX(1)}
.service-row:hover h3{color:#fff}
.service-ico{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;color:var(--neon);background:linear-gradient(145deg,#72ef2826,#72ef2808);border:1px solid #72ef2840;box-shadow:inset 0 1px 0 #ffffff25,0 10px 24px -10px #72ef2877;transform:translateZ(30px)}
.service-ico svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.service-row h3{font-size:25px;color:#f3f7ef;transform:translateZ(20px)}
.service-row h3>span{color:#b7c9bb}
.service-more{color:#b7c9bb;transform:translateZ(14px);margin-top:auto}
.service-row:hover .service-more{color:var(--neon)}

/* ---------- Institucional ---------- */
.institution{position:relative;background:linear-gradient(180deg,#eaf0e7,#dfe9da)}
.photo-frame{position:relative;border-radius:24px;overflow:visible}
.photo-frame img{border-radius:22px;box-shadow:0 40px 70px -30px #0a2a14bb}
.photo-frame:before{content:'';position:absolute;inset:-12px 22px 22px -12px;border:2px solid #72ef28;border-radius:26px;opacity:.55;z-index:-1;transform:translateZ(-30px)}
.photo-frame:after{content:'30+ anos';position:absolute;left:-18px;bottom:26px;padding:14px 20px;border-radius:16px;background:linear-gradient(135deg,#0f2a1a,#07110c);border:1px solid #72ef2855;color:var(--neon);font:500 20px/1 var(--display);box-shadow:0 20px 40px -14px #000a,0 0 24px -6px #72ef2866;transform:translateZ(50px)}
.values details{border:1px solid #b7c8b3;border-top-color:#b7c8b3;border-radius:18px;padding:4px 22px;background:#ffffffa6;transition:box-shadow .3s,transform .3s var(--ease),border-color .3s}
.values details:hover,.values details[open]{box-shadow:0 24px 44px -26px #0a2a14aa;border-color:#72ef28}
.experience-context strong{background:linear-gradient(100deg,#1d6a0f,#44b21b);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:34px}

/* ---------- Clientes ---------- */
.brands img{filter:grayscale(1);opacity:.7;transition:filter .3s,opacity .3s,transform .4s var(--ease)}
.brands img:hover{filter:none;opacity:1;transform:translateY(-4px) scale(1.06)}

/* ---------- Regiões atendidas: mapa 3D ---------- */
.coverage{position:relative;color:var(--night-text);overflow:clip;background:radial-gradient(ellipse 70% 70% at 72% 45%,#12391f 0%,#08140d 55%,#050c09 100%);padding-block:104px}
.coverage:before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.4;background-image:radial-gradient(#72ef2830 1px,transparent 1.4px);background-size:34px 34px;-webkit-mask-image:radial-gradient(ellipse at 70% 50%,#000,transparent 72%);mask-image:radial-gradient(ellipse at 70% 50%,#000,transparent 72%)}
.coverage-grid{position:relative;grid-template-columns:.85fr 1.15fr;gap:48px}
.coverage-text h2{font-size:clamp(46px,5.4vw,76px);max-width:none}
.coverage-text h2 em{color:var(--neon);text-shadow:0 0 36px #72ef2866}
.coverage-text p{color:#c3d5c7}
.coverage-text strong{color:#fff}
.coverage-map{text-align:left}
.map3d{position:relative;height:clamp(400px,46vw,600px);perspective:1600px;perspective-origin:50% 30%;touch-action:pan-y;--rx:58deg;--rz:-18deg}
.map3d-stage{position:absolute;left:50%;top:52%;width:min(100%,610px);aspect-ratio:560/577;translate:-50% -50%;transform-style:preserve-3d;transform:rotateX(var(--rx)) rotateZ(var(--rz));will-change:transform}
.map3d-floor{position:absolute;inset:-18%;transform:translateZ(-34px);border-radius:50%;background:radial-gradient(closest-side,#72ef2838,#72ef2810 55%,transparent 72%);filter:blur(6px);pointer-events:none}
.map3d-grid{position:absolute;inset:-34%;transform:translateZ(-36px);pointer-events:none;background-image:linear-gradient(#72ef2830 1px,transparent 1px),linear-gradient(90deg,#72ef2830 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(closest-side,#000 25%,transparent 100%);mask-image:radial-gradient(closest-side,#000 25%,transparent 100%)}
.map3d-layer{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.map3d-layer.base{transform:translateZ(calc(var(--i) * 2.4px))}
.map3d-layer.cov{transform:translateZ(0);transition:transform 1.2s var(--ease) calc(var(--i) * 34ms)}
.map3d.in .map3d-layer.cov{transform:translateZ(calc(var(--i) * var(--step,2.8px)))}
.map3d-layer.top{filter:drop-shadow(0 0 12px #72ef28aa)}
.map3d-layer.top path{pointer-events:auto;cursor:pointer;transition:fill .25s,stroke .25s}
.map3d-layer.top path.hl{fill:#e3ffc9;stroke:#fff}
.map-label{position:absolute;left:var(--x);top:var(--y);display:flex;align-items:center;justify-content:center;width:0;height:0;pointer-events:none;transform:translateZ(calc(var(--zt) + 10px)) rotateZ(calc(var(--rz) * -1)) rotateX(calc(var(--rx) * -1));opacity:0;transition:opacity .6s ease 1.1s}
.map3d.in .map-label{opacity:1}
.map-label span{flex:none;padding:5px 10px;border-radius:99px;background:#07110cdd;border:1px solid #72ef28aa;color:#c8ff8f;font:500 13px/1 var(--display);letter-spacing:.04em;box-shadow:0 8px 20px -6px #000c,0 0 16px -4px #72ef28aa;transition:background .25s,color .25s,scale .25s}
.map-label.hl span{background:#72ef28;color:#0b2108;scale:1.18}
.map-label.sede span{position:relative}
.map-label.sede span:after{content:'';position:absolute;inset:-6px;border-radius:99px;border:2px solid var(--neon);animation:ring 2.2s ease-out infinite}
@keyframes ring{0%{transform:scale(.8);opacity:.9}100%{transform:scale(1.7);opacity:0}}
.map-tip{position:absolute;left:0;top:0;z-index:5;padding:8px 14px;border-radius:10px;background:#07110cf0;border:1px solid #72ef2877;color:#eaffd9;font:400 13px/1.3 var(--display);pointer-events:none;opacity:0;transform:translate(-50%,-140%);transition:opacity .2s;white-space:nowrap}
.map-tip.on{opacity:1}
.map-tip b{color:var(--neon);font-weight:500}
.map-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:6px 0 0;padding:0;justify-content:center}
.map-chips button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border-radius:99px;border:1px solid #72ef2855;background:#72ef2810;color:#d7ecc9;font:400 14px var(--display);transition:background .25s,color .25s,transform .25s var(--ease),box-shadow .25s}
.map-chips button b{font-weight:500;color:var(--neon)}
.map-chips button:hover,.map-chips button:focus-visible,.map-chips button.on{background:var(--neon);color:#0b2108;transform:translateY(-3px);box-shadow:0 10px 26px -8px #72ef28cc;outline:0}
.map-chips button:hover b,.map-chips button:focus-visible b,.map-chips button.on b{color:#0b2108}
.coverage .map-caption{color:#9fb8a4;justify-content:center;margin-top:18px}
.coverage .map-caption .status-dot{background:var(--neon)}

/* ---------- Faixa WhatsApp ---------- */
.wa-band{position:relative;overflow:clip;isolation:isolate;padding:96px 0;color:#fff;background:linear-gradient(120deg,#0a3a1f 0%,#06130c 55%,#0b4a26 100%)}
.wa-band:before,.wa-band:after{content:'';position:absolute;z-index:-1;border-radius:50%;filter:blur(70px);pointer-events:none}
.wa-band:before{width:520px;height:520px;left:-120px;top:-200px;background:#25d36655;animation:orb 12s ease-in-out infinite}
.wa-band:after{width:460px;height:460px;right:-100px;bottom:-220px;background:#72ef2844;animation:orb 14s ease-in-out infinite reverse}
@keyframes orb{0%,100%{transform:translate(0,0)}50%{transform:translate(60px,40px)}}
.wa-band-inner{display:grid;grid-template-columns:1.3fr .7fr;gap:56px;align-items:center}
.wa-band h2{font-size:clamp(36px,4.6vw,62px);max-width:16ch}
.wa-band h2 em{color:var(--neon)}
.wa-band p{margin-top:18px;font-size:18px;line-height:1.7;color:#cfe3d3;max-width:46ch}
.wa-cta{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.wa-big{display:inline-flex;align-items:center;gap:16px;padding:14px 30px 14px 14px;border-radius:99px;color:#fff;font:500 20px/1.2 var(--display);background:linear-gradient(180deg,#34e57a,#1aa653);box-shadow:0 0 0 1px #ffffff55 inset,0 22px 50px -14px #25d366,0 0 40px -6px #25d36688;transition:transform .3s var(--ease),box-shadow .3s}
.wa-big:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 0 0 1px #fff inset,0 30px 60px -14px #25d366,0 0 60px -4px #25d366aa}
.wa-big .wa-ico{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;color:#1aa653;box-shadow:0 4px 10px #0004}
.wa-big .wa-ico svg{width:32px;height:32px}
.wa-big small{display:block;font:400 13px/1.2 var(--body);opacity:.9}
.wa-phones{display:flex;gap:18px;flex-wrap:wrap;font-size:15px;color:#b9d3bf}
.wa-phones a{min-height:36px;display:inline-flex;align-items:center}.wa-phones a:hover{color:var(--neon)}

/* ---------- Newsletter + rodapé ---------- */
.newsletter{background:linear-gradient(180deg,#eaf0e7,#e0ead9)}
.footer-grid,footer{position:relative}
footer{background:radial-gradient(ellipse 60% 80% at 90% 0%,#0f3320 0%,#07110c 60%)}
.socials a{border-radius:12px;transition:background .25s,color .25s,transform .3s var(--ease),border-color .25s}
.socials a:hover{background:var(--neon);color:#0b2108;border-color:var(--neon);transform:translateY(-4px)}

/* ---------- Botão flutuante do WhatsApp (realista) ---------- */
.wa-symbol{width:64px;height:64px;color:#fff;border:0;background:radial-gradient(circle at 32% 24%,#7dfba8 0%,#2fe073 34%,#1db954 62%,#0e7f3a 100%);box-shadow:0 14px 30px -8px #1db954cc,0 4px 8px #0006,inset 0 2px 3px #ffffff80,inset 0 -5px 9px #05562580;transition:transform .35s var(--ease),box-shadow .3s}
.wa-symbol:before{inset:0;border:2px solid #25d366;animation:wa-ring 2.6s ease-out infinite}
.wa-symbol:after{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid #25d366;animation:wa-ring 2.6s ease-out 1.3s infinite;pointer-events:none}
@keyframes wa-ring{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.75);opacity:0}}
.wa-symbol svg{width:36px;height:36px;filter:drop-shadow(0 2px 2px #04401c88)}
.whatsapp{filter:drop-shadow(0 0 0 transparent);animation:wa-bob 4.5s ease-in-out infinite}
@keyframes wa-bob{0%,88%,100%{transform:translateY(0)}92%{transform:translateY(-8px)}96%{transform:translateY(0)}98%{transform:translateY(-4px)}}
.whatsapp:hover .wa-symbol{transform:scale(1.1) rotate(-6deg);box-shadow:0 18px 38px -8px #1db954,0 4px 8px #0006,inset 0 2px 3px #ffffff80,inset 0 -5px 9px #05562580}
@media(min-width:1101px){
  .wa-copy{background:#fff;border-radius:14px;padding:10px 16px;box-shadow:0 14px 34px -10px #000a;position:relative}
  .wa-copy:after{content:'';position:absolute;right:-6px;top:50%;width:12px;height:12px;background:#fff;transform:translateY(-50%) rotate(45deg);border-radius:2px}
  .wa-copy>span{color:#4b6052}.wa-copy strong{color:#128c4a}
  .whatsapp.peek .wa-copy{opacity:1;translate:0 0}
}

/* ---------- Responsivo ---------- */
@media(max-width:1100px){
  .hero .hero-layout{width:calc(100% - 72px);column-gap:24px}
  .hcard-in{min-width:190px;padding:18px 20px}
  .services-layout{grid-template-columns:1fr;gap:36px}.services-intro{position:static}
  .coverage-grid{grid-template-columns:1fr;gap:20px}
  .coverage-text h2 br{display:none}
  .coverage-text{text-align:left}
  .wa-band-inner{grid-template-columns:1fr;gap:32px}
  .wa-symbol{width:56px;height:56px}.wa-symbol svg{width:32px;height:32px}
}
@media(max-width:960px){
  .hero .hero-layout{grid-template-columns:1fr;grid-template-rows:auto auto auto}
  .hero-cards{height:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;perspective:none;margin-top:34px}
  .hcard{position:static;transform:none!important}
  .hcard-in{min-width:0;padding:16px 16px;animation:none}
  .hcard b{font-size:34px}.hcard span{font-size:12.5px}.hcard i{display:none}
  .hero-shade{background:linear-gradient(180deg,#050c09e6 0%,#050c09b0 55%,#050c09 100%)}
}
@media(max-width:760px){
  .hero{min-height:0}
  .hero .hero-layout{width:calc(100% - 48px);padding-block:40px 18px}
  .hero h1{font-size:clamp(40px,11vw,60px)}
  .services-list{grid-template-columns:1fr}.service-row{min-height:0;gap:26px}
  .photo-frame:after{left:10px;bottom:14px;font-size:17px}.photo-frame:before{inset:-8px 14px 14px -8px}
  .coverage{padding-block:72px}
  .map3d{height:clamp(320px,88vw,440px)}
  .map-label span{font-size:11px;padding:4px 8px}
  .wa-band{padding-block:68px}
}
@media(max-width:620px){
  .hero .hero-layout{width:calc(100% - 40px)}
  .hero-cards{grid-template-columns:1fr 1fr 1fr;gap:8px}
  .hcard-in{padding:12px}.hcard b{font-size:28px}.hcard span{font-size:11.5px}
  .hero-actions .primary{flex-basis:auto;width:100%}
  .hero-actions .wa{width:100%}
  .hero-pill{font-size:12px}
  .wa-big{width:100%;font-size:18px}
  .wa-symbol{width:52px;height:52px}.wa-symbol svg{width:30px;height:30px}
}
@media(prefers-reduced-motion:reduce){
  html.js [data-reveal]{opacity:1!important;transform:none!important}
  .hero-scan,.whatsapp,.hcard-in{animation:none!important}
  .map3d-layer.cov{transform:translateZ(calc(var(--i) * var(--step,2.8px)))!important}
  .map-label{transform:translateZ(calc(var(--zt) + 10px)) rotateZ(calc(var(--rz) * -1)) rotateX(calc(var(--rx) * -1))!important}
}
[data-tilt]:not([data-reveal]){transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease-out}
@media(max-width:960px){.hero-slide:nth-child(1){background-position:80% 40%}.hero-slide:nth-child(2){background-position:62% center}.hero-slide:nth-child(3){background-position:70% center}}

.map-label.small span{padding:3px 7px;font-size:11px}

/* ---- ajustes mobile v2 ---- */
/* WhatsApp: somente o botão redondo, fixo em todo o site */
.wa-copy{display:none!important}
.whatsapp{position:fixed;left:auto;right:22px;bottom:22px;top:auto;width:auto;min-height:0;padding:0;background:none;box-shadow:none;gap:0;justify-content:flex-end}
@media(max-width:1100px){
  body{padding-bottom:0}
  html{scroll-padding-bottom:0}
  .whatsapp{left:auto;right:16px;bottom:16px;min-height:0;padding:0;background:none;box-shadow:none;gap:0}
}
/* Cabeçalho: botão do menu sempre à direita */
@media(max-width:960px){.menu-toggle{margin-left:auto}}
@media(min-width:621px) and (max-width:960px){.navcta+.menu-toggle{margin-left:0}}
@media(max-width:620px){.navrow .menu-toggle,.navcta+.menu-toggle{margin-left:auto}}
/* Hero (mobile): cartão de 24h logo abaixo do título, antes dos botões */
@media(max-width:960px){
  .hero .hero-content{display:contents}
  .hero-pill{grid-row:1;justify-self:start}
  .hero .hero-content h1{grid-row:2}
  .hero .hero-brand{grid-row:3}
  .hero .hero-cards{grid-row:4;margin-top:28px}
  .hero .hero-actions{grid-row:5;margin-top:28px}
  .hero .hero-footer{grid-row:6}
}
@media(max-width:960px){.hero .hero-layout{grid-template-rows:none;row-gap:0;align-content:center}}
@media(max-width:960px){.hero .hcard:nth-child(1){margin-top:0}}
/* Evita rolagem/zoom lateral causado por blocos que entram pela lateral */
html,body{overflow-x:clip}
@media(max-width:860px){
  html.js [data-reveal=left],html.js [data-reveal=right]{transform:translate3d(0,40px,0)}
}
@media(max-width:960px){.hero-footer{padding-right:76px}}

/* ---- hero v3 ---- */
/* menos altura no computador */
.hero{min-height:min(740px,calc(100svh - 88px))}
.hero .hero-layout{padding-block:44px 18px}
@media(max-width:960px){
  /* cartão 24h compacto, à direita, subindo para o espaço livre ao lado de "por dia." */
  .hero .hero-layout{grid-template-columns:minmax(0,1fr) auto;padding-block:30px 14px}
  .hero .hero-pill,.hero .hero-content h1,.hero .hero-brand,.hero .hero-actions,.hero .hero-footer{grid-column:1/-1}
  .hero .hero-pill{margin-bottom:16px}
  .hero .hero-cards{grid-column:2;grid-row:2;align-self:end;justify-self:end;display:block;margin:0 0 -10px;z-index:2;height:auto}
  .hero .hcard{position:static;transform:none!important}
  .hero .hcard-in{display:flex;align-items:center;gap:10px;min-width:0;padding:5px 12px 5px 11px;border-radius:13px;animation:none}
  .hero .hcard b{font-size:27px;margin:0}
  .hero .hcard b small{font-size:.5em}
  .hero .hcard span{margin:0;font-size:11px;line-height:1.25}
  .hero .hero-brand{margin-top:14px}
  .hero .hero-actions{margin-top:20px;gap:10px 18px}
  .hero .hero-footer{margin-top:6px}
}
@media(max-width:620px){
  .hero .hero-layout{padding-block:26px 12px}
  .hero .hero-actions .button{min-height:48px}
}
