
:root{
  --navy:#04143A;--navy-2:#071B4D;--navy-3:#020A22;--blue:#1161E9;--blue-2:#0A7CFF;
  --ice:#F4F7FB;--white:#fff;--silver:#D7DDE7;--text:#132244;--muted:#64738F;
  --radius:28px;--radius-lg:42px;--shadow:0 24px 70px rgba(3,15,45,.16);--soft:0 14px 42px rgba(3,15,45,.10);--container:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Montserrat,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.55}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}.container{width:min(var(--container),calc(100% - 32px));margin:auto}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:12px;top:12px;background:#fff;color:#000;z-index:999;padding:10px;border-radius:10px}.topbar{background:var(--navy);color:#fff;font-size:.88rem}.topbar .container{display:flex;justify-content:space-between;gap:16px;padding:9px 0;align-items:center}.topbar a{color:#fff;font-weight:900}.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);box-shadow:0 8px 32px rgba(3,15,45,.08)}.nav{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:13px 0}.brand img{width:210px;max-height:58px;object-fit:contain;display:block}.menu{display:flex;gap:26px;align-items:center}.menu a{font-weight:900;font-size:.84rem;color:var(--navy);text-transform:uppercase;letter-spacing:.03em}.menu a:hover{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--blue-2));color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.02em;box-shadow:0 14px 32px rgba(17,97,233,.28);border:0;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-2px);filter:brightness(1.05)}.btn.secondary{background:#fff;color:var(--navy);border:2px solid rgba(17,97,233,.22);box-shadow:none}.btn.ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.24);box-shadow:none}.hamb{display:none;background:var(--navy);color:#fff;border:0;border-radius:14px;padding:10px 14px;font-weight:900}.blue{color:var(--blue-2)}.eyebrow,.mini-label{display:inline-flex;align-items:center;gap:10px;color:var(--blue);font-weight:900;text-transform:uppercase;letter-spacing:.11em;font-size:.78rem}.eyebrow:before{content:"";width:42px;height:5px;background:var(--blue);border-radius:999px}.mini-label{background:rgba(17,97,233,.10);padding:8px 13px;border-radius:999px;letter-spacing:.07em}.snow-bg{position:relative;overflow:hidden}.snow-bg:after{content:"❄";position:absolute;right:-50px;bottom:-105px;font-size:310px;color:rgba(17,97,233,.06);line-height:1;pointer-events:none}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 18%,rgba(17,97,233,.30),transparent 32%),linear-gradient(120deg,var(--navy) 0%,#071943 58%,#0b2e78 100%);color:#fff}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,58,.94),rgba(4,20,58,.62)),repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 1px,transparent 1px 36px);z-index:1}.hero-snow{position:absolute;right:-110px;top:64px;font-size:460px;line-height:1;color:rgba(255,255,255,.05);z-index:1}.hero .container{position:relative;z-index:2;display:grid;grid-template-columns:1.03fr .97fr;gap:52px;align-items:center;padding:88px 0}.breadcrumb{font-size:.9rem;color:#bfd0f5;margin-bottom:18px}.breadcrumb a{color:#fff;font-weight:900}.hero h1{font-size:clamp(2.15rem,4.4vw,4.35rem);line-height:1.02;margin:18px 0 18px;text-transform:uppercase;letter-spacing:-.035em;font-weight:900;max-width:760px}.hero p{font-size:1.16rem;max-width:630px;color:#eaf1ff;margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;min-height:535px;box-shadow:var(--shadow);background:#000}.hero-card img{height:100%;min-height:535px;width:100%;object-fit:cover;filter:contrast(1.06) saturate(1.04)}.hero-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 46%,rgba(4,20,58,.92));z-index:1}.hero-badge{position:absolute;right:22px;top:22px;z-index:4;background:linear-gradient(135deg,var(--blue),var(--blue-2));color:#fff;border-radius:18px;padding:12px 16px;font-weight:900;text-transform:uppercase;font-size:.78rem;letter-spacing:.04em}.trust-strip{position:absolute;left:22px;right:22px;bottom:22px;z-index:3;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.trust-item{background:rgba(255,255,255,.94);color:var(--navy);border-radius:18px;padding:14px 12px;text-align:center;font-weight:900;font-size:.82rem;box-shadow:0 8px 22px rgba(0,0,0,.12)}.section{padding:88px 0}.section.light{background:var(--ice)}.section.white{background:#fff}.section.dark{background:radial-gradient(circle at 80% 24%,rgba(17,97,233,.20),transparent 28%),linear-gradient(135deg,var(--navy),#061a48 68%,#081f5c);color:#fff;position:relative;overflow:hidden}.section.dark:after{content:"❄";position:absolute;right:-70px;bottom:-110px;font-size:360px;color:rgba(255,255,255,.04)}.section-title{max-width:900px;margin:0 auto 44px;text-align:center;position:relative;z-index:2}.section-title h2{font-size:clamp(1.85rem,3.2vw,2.85rem);line-height:1.08;margin:12px 0 14px;text-transform:uppercase;letter-spacing:-.025em;color:var(--navy);font-weight:900}.section-title p{font-size:1.07rem;color:var(--muted);margin:0 auto;max-width:760px}.section.dark .section-title h2,.section.dark h2,.section.dark h3{color:#fff}.section.dark p{color:#dce8ff}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border-radius:var(--radius);padding:30px;box-shadow:var(--soft);border:1px solid rgba(7,27,77,.08);position:relative;overflow:hidden}.card:after{content:"";position:absolute;left:0;bottom:0;height:5px;width:72px;background:var(--blue);border-radius:999px}.card h3{font-size:1.26rem;line-height:1.15;margin:0 0 11px;text-transform:uppercase;color:var(--navy);font-weight:900}.card p{margin:0;color:#52627f}.icon{width:60px;height:60px;border-radius:18px;background:linear-gradient(135deg,var(--blue),#0742b7);display:grid;place-items:center;color:#fff;font-size:1.65rem;font-weight:900;margin-bottom:18px;box-shadow:0 12px 26px rgba(17,97,233,.22)}.icon svg{width:32px;height:32px;stroke:currentColor}.panel{background:linear-gradient(145deg,var(--navy),#0c317b);color:#fff;border-radius:var(--radius-lg);padding:44px;position:relative;overflow:hidden;box-shadow:var(--shadow)}.panel:after{content:"❄";position:absolute;right:-35px;bottom:-90px;font-size:260px;color:rgba(255,255,255,.055)}.panel h2,.panel h3{color:#fff;text-transform:uppercase;letter-spacing:-.03em;margin-top:0}.panel p,.panel li{color:#e5efff}.service-img,.split-shape{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);position:relative;background:#d9e0ea}.service-img img,.split-shape img{height:500px;width:100%;object-fit:cover;object-position:center;filter:contrast(1.06) saturate(1.04)}.service-img:after,.split-shape:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 68%,rgba(4,20,58,.38));pointer-events:none}.checklist{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:12px}.checklist li{display:flex;gap:12px;align-items:flex-start}.checklist li:before{content:"✓";display:grid;place-items:center;min-width:27px;height:27px;border-radius:999px;background:var(--blue);color:#fff;font-weight:900}.alert-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:24px}.alert-item{display:flex;align-items:center;gap:12px;background:#fff;color:var(--navy);border-radius:18px;padding:16px;font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.12)}.alert-item span{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:rgba(17,97,233,.11);color:var(--blue);font-weight:900}.notice{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid rgba(17,97,233,.18);border-left:6px solid var(--blue);border-radius:20px;padding:20px;color:var(--navy);box-shadow:var(--soft);margin-top:24px}.areas{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.areas a,.city-links a{background:#fff;border-radius:18px;padding:17px 18px;color:var(--navy);font-weight:900;box-shadow:0 8px 28px rgba(3,15,45,.08);border:1px solid rgba(7,27,77,.07);transition:.2s}.areas a:hover,.city-links a:hover{background:var(--blue);color:#fff;transform:translateY(-2px)}.city-links{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.faq{display:grid;gap:14px;max-width:930px;margin:auto}.faq-item{background:#fff;border-radius:22px;border:1px solid rgba(7,27,77,.08);overflow:hidden;box-shadow:0 8px 26px rgba(3,15,45,.05)}.faq-q{width:100%;background:#fff;border:0;padding:22px;text-align:left;font-size:1rem;font-weight:900;color:var(--navy);cursor:pointer;display:flex;justify-content:space-between;gap:18px}.faq-q span{color:var(--blue);font-size:1.2rem}.faq-a{display:none;padding:0 22px 22px;color:#52627f}.faq-item.active .faq-a{display:block}.cta-wrap{padding:70px 0}.cta{background:linear-gradient(135deg,var(--navy),#0a2d77);color:#fff;border-radius:40px;padding:56px;display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:center;overflow:hidden;position:relative;box-shadow:var(--shadow)}.cta:before{content:"❄";position:absolute;right:30px;top:-95px;font-size:270px;color:rgba(255,255,255,.06)}.cta h2{font-size:clamp(1.9rem,3.2vw,3rem);line-height:1.08;margin:0 0 14px;text-transform:uppercase;letter-spacing:-.025em}.cta p{color:#e5efff;font-size:1.08rem;margin:0}.cta .actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;position:relative;z-index:2}.footer{background:#030b20;color:#fff;padding:52px 0 28px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}.footer img{width:240px;max-height:72px;object-fit:contain;margin-bottom:16px}.footer h3{margin:0 0 14px;text-transform:uppercase;font-size:1rem;letter-spacing:.05em}.footer a,.footer p{color:#dce8ff;margin:0}.footer-links{display:grid;gap:8px}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:32px;padding-top:20px;color:#9fb0cf;font-size:.9rem}.float-whats{position:fixed;right:18px;bottom:18px;z-index:80;background:#25d366;color:#fff;border-radius:999px;padding:14px 18px;font-weight:900;box-shadow:0 14px 30px rgba(0,0,0,.22);display:flex;align-items:center;gap:10px}.local-note{background:#fff;border-left:6px solid var(--blue);border-radius:20px;padding:22px;box-shadow:0 10px 35px rgba(3,15,45,.08);color:var(--navy)}.local-note p{margin:0;color:#435574 !important}.local-note strong{color:var(--navy)}.local-note a{color:var(--blue-2) !important;font-weight:800}
@media(max-width:980px){.menu{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;padding:20px;box-shadow:0 16px 30px rgba(3,15,45,.12)}.menu.open{display:flex}.hamb{display:block}.hero .container,.grid-2,.cta{grid-template-columns:1fr}.hero-card{min-height:370px}.hero-card img{min-height:370px}.grid-3{grid-template-columns:1fr 1fr}.city-links{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.topbar .container{flex-direction:column;align-items:flex-start}.section{padding:64px 0}.cta .actions{justify-content:flex-start}}
@media(max-width:640px){.brand img{width:156px}.topbar{display:none}.hero .container{padding:54px 0}.hero h1{font-size:2.55rem}.hero p{font-size:1rem}.hero-actions .btn,.cta .btn{width:100%}.trust-strip{position:static;margin:12px;grid-template-columns:1fr}.grid-3,.alert-grid,.city-links,.footer-grid{grid-template-columns:1fr}.section-title{text-align:left}.card,.panel,.cta{padding:24px;border-radius:24px}.service-img img,.split-shape img{height:330px}.float-whats{left:14px;right:14px;justify-content:center}.hero-snow,.snow-bg:after{display:none}}

/* Ajustes finos solicitados: proporção de títulos, menu simplificado, logos limpas e imagem ATF sem texto sobreposto */
.service-img img[src*="maquina-troca-oleo-cambio-clean"]{object-position:center top;}
.header .brand{display:flex;align-items:center;line-height:0;}
.footer img{background:transparent;border:0;box-shadow:none;border-radius:0;}
.footer{background:linear-gradient(135deg,#020A22,#04143A 68%,#061a48);}
@media(max-width:640px){.hero h1{font-size:2.2rem}.section-title h2{font-size:1.95rem}.brand img{width:178px}.menu a{font-size:.9rem}}


/* v3 - ajustes solicitados: logo Master Ar Automotivo, header sem topbar e faixa de marcas com movimento */
.header{top:0;}
.brand img{width:250px;max-height:66px;}
.footer img{width:270px;max-height:82px;}
.brands-section{position:relative;overflow:hidden;background:#fff;padding:76px 0 70px;}
.brands-section:after{content:"❄";position:absolute;right:-54px;top:6px;font-size:260px;color:rgba(17,97,233,.055);line-height:1;pointer-events:none;}
.brands-head{position:relative;z-index:2;text-align:center;max-width:860px;margin:0 auto 34px;}
.brands-head h2{margin:12px 0 10px;color:var(--navy);font-size:clamp(2rem,3.2vw,3.1rem);line-height:1.05;text-transform:uppercase;letter-spacing:-.035em;font-weight:900;}
.brands-head p{margin:0 auto;color:var(--muted);font-size:1.06rem;max-width:720px;}
.brand-marquee{position:relative;z-index:2;width:100%;overflow:hidden;padding:18px 0;background:linear-gradient(135deg,var(--navy),#08246a);box-shadow:0 22px 60px rgba(3,15,45,.16);}
.brand-marquee:before,.brand-marquee:after{content:"";position:absolute;top:0;bottom:0;width:120px;z-index:3;pointer-events:none;}
.brand-marquee:before{left:0;background:linear-gradient(90deg,var(--navy),transparent);}
.brand-marquee:after{right:0;background:linear-gradient(270deg,#08246a,transparent);}
.brand-track{display:flex;align-items:center;gap:18px;width:max-content;animation:masterMarquee 30s linear infinite;}
.brand-track span{display:inline-flex;align-items:center;justify-content:center;min-width:max-content;padding:14px 24px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.07);color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.055em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);}
.brand-track span:nth-child(3n){color:#dce8ff;background:rgba(17,97,233,.20);}
@keyframes masterMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.brand-marquee:hover .brand-track{animation-play-state:paused;}
@media(max-width:980px){.brand img{width:218px}.footer img{width:240px}.brands-section{padding:62px 0}.brand-track{animation-duration:24s}.brand-track span{padding:12px 18px;font-size:.9rem}}
@media(max-width:640px){.brand img{width:190px}.footer img{width:220px}.brands-head{text-align:left}.brand-marquee:before,.brand-marquee:after{width:52px}}


/* v4 - seção Marcas que Trabalhamos com logos PNG enviadas pelo cliente */
.brand-logo-marquee{padding:22px 0;background:linear-gradient(135deg,#020A22,#061a48 62%,#0b36a3);}
.brand-logo-track{gap:20px;animation-duration:34s;}
.brand-logo-card{min-width:178px;height:112px;padding:16px 22px;border-radius:28px;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.38);box-shadow:0 18px 40px rgba(0,0,0,.20);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--navy);}
.brand-logo-card img{max-width:118px;max-height:58px;width:auto;height:auto;object-fit:contain;display:block;filter:drop-shadow(0 8px 10px rgba(3,15,45,.12));}
.brand-logo-card span,.brand-logo-card strong{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.055em;color:var(--navy);line-height:1.1;text-align:center;}
.brand-logo-card.text-brand{background:linear-gradient(135deg,rgba(255,255,255,.98),#eef4ff);border:1px solid rgba(17,97,233,.16);}
.brand-logo-card.text-brand strong{font-size:.9rem;color:#061a48;}
.brand-logo-marquee .brand-track span{all:unset;}
@media(max-width:980px){.brand-logo-card{min-width:150px;height:98px;padding:14px 18px;border-radius:24px}.brand-logo-card img{max-width:100px;max-height:50px}.brand-logo-track{animation-duration:28s}}
@media(max-width:640px){.brand-logo-card{min-width:132px;height:90px;padding:12px 14px}.brand-logo-card img{max-width:88px;max-height:44px}.brand-logo-card span,.brand-logo-card strong{font-size:.68rem}.brand-logo-track{animation-duration:24s}}


/* v5 - logos adicionais na seção Marcas que Trabalhamos */
.brand-logo-track{animation-duration:48s;}
.brand-logo-card{min-width:168px;height:118px;}
.brand-logo-card img{max-width:126px;max-height:62px;}
.brand-logo-card img[src*="logo-audi"],
.brand-logo-card img[src*="logo-ford"],
.brand-logo-card img[src*="logo-kia"]{max-width:138px;max-height:58px;}
.brand-logo-card img[src*="logo-renault"],
.brand-logo-card img[src*="logo-toyota"],
.brand-logo-card img[src*="logo-honda"],
.brand-logo-card img[src*="logo-mercedes"],
.brand-logo-card img[src*="logo-fiat"]{max-width:92px;max-height:66px;}
@media(max-width:640px){.brand-logo-track{animation-duration:36s}.brand-logo-card{min-width:132px;height:94px}.brand-logo-card img{max-width:98px;max-height:50px}}


/* v6 - logos adicionais: Peugeot, Jeep, Porsche e Chevrolet */
.brand-logo-card img[src*="logo-peugeot"]{max-width:82px;max-height:72px;}
.brand-logo-card img[src*="logo-jeep"]{max-width:142px;max-height:58px;}
.brand-logo-card img[src*="logo-porsche"]{max-width:84px;max-height:78px;}
.brand-logo-card img[src*="logo-chevrolet"]{max-width:142px;max-height:58px;}
@media(max-width:640px){
  .brand-logo-card img[src*="logo-jeep"],
  .brand-logo-card img[src*="logo-chevrolet"]{max-width:104px;max-height:46px;}
  .brand-logo-card img[src*="logo-porsche"],
  .brand-logo-card img[src*="logo-peugeot"]{max-width:62px;max-height:56px;}
}


/* v7 - correção do hero: sem breadcrumb, título proporcional e leitura mais limpa */
.hero .container{grid-template-columns:.92fr 1.08fr;gap:56px;padding:76px 0 82px;}
.hero h1{font-size:clamp(2rem,3.45vw,3.55rem);line-height:1.08;letter-spacing:-.025em;max-width:650px;margin:18px 0 14px;}
.hero h1 .hero-place{display:block;color:var(--blue-2);font-size:.82em;line-height:1.12;margin-top:4px;}
.hero-highlight{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;padding:11px 16px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);color:#dce8ff;font-weight:900;text-transform:uppercase;letter-spacing:.035em;font-size:.84rem;}
.hero p{font-size:1.05rem;line-height:1.65;max-width:590px;}
.breadcrumb{display:none;}
@media(max-width:980px){.hero .container{grid-template-columns:1fr;padding:60px 0}.hero h1{font-size:clamp(2rem,6vw,3.2rem);max-width:720px}.hero-highlight{font-size:.78rem;flex-wrap:wrap}}
@media(max-width:640px){.hero h1{font-size:2.15rem;line-height:1.12}.hero-highlight{border-radius:18px;line-height:1.35}.hero p{font-size:1rem}.hero .container{padding:48px 0}}


/* v8 - Hero com imagem de fachada fornecida pelo cliente: menos vertical, mais institucional */
.hero-card{min-height:440px;border-radius:34px;}
.hero-card img{min-height:440px;height:440px;object-fit:cover;object-position:center;}
.hero-card:after{background:linear-gradient(180deg,rgba(4,20,58,.04) 0%,rgba(4,20,58,.08) 48%,rgba(4,20,58,.88) 100%);}
@media(max-width:980px){.hero-card{min-height:360px}.hero-card img{height:360px;min-height:360px}}
@media(max-width:640px){.hero-card{min-height:300px;border-radius:26px}.hero-card img{height:300px;min-height:300px}.trust-strip{display:none}}


/* v9 - logo oficial enviada pelo cliente */
.header .brand img{width:255px;max-height:74px;object-fit:contain;}
.footer-grid>div:first-child img{background:#fff;padding:10px 14px;border-radius:18px;box-shadow:0 12px 28px rgba(0,0,0,.14);width:260px;max-height:none;}
@media(max-width:640px){.header .brand img{width:190px}.footer-grid>div:first-child img{width:210px;padding:8px 12px;border-radius:14px}}


/* v13 - seção de autoridade com Marcus Roger */
.expert-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center}
.expert-content h2{font-size:clamp(1.85rem,3vw,2.7rem);line-height:1.08;text-transform:uppercase;color:var(--navy);letter-spacing:-.025em;margin:14px 0 16px}
.expert-content p{margin:0;color:var(--muted);font-size:1.04rem}
.expert-actions{margin-top:24px}
.expert-banner{border-radius:34px;overflow:hidden;box-shadow:var(--shadow);background:#dfe6f2;border:1px solid rgba(7,27,77,.08)}
.expert-banner img{display:block;width:100%;height:auto}
@media(max-width:980px){.expert-grid{grid-template-columns:1fr}.expert-banner{order:-1}}
@media(max-width:640px){.expert-content h2{font-size:2rem}.expert-banner{border-radius:24px}}


/* v14 - botão flutuante premium do WhatsApp com logo enviada */
.float-whats{display:none !important;}

.whatsapp-float {
  position: fixed;
  right: 22px;
  bottom: 22px;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
  z-index: 9999;
  text-decoration: none;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  animation: whatsappPulse 2s infinite;
}

.whatsapp-float:hover {
  transform: translateY(-4px) scale(1.05);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.25);
}

.whatsapp-float img {
  width: 46px;
  height: 46px;
  object-fit: contain;
  display: block;
}

.whatsapp-tooltip {
  position: absolute;
  right: 88px;
  background: #04143A;
  color: #ffffff;
  font-size: 14px;
  font-weight: 800;
  padding: 10px 14px;
  border-radius: 12px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transform: translateY(6px);
  transition: all 0.25s ease;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.16);
}

.whatsapp-tooltip::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -6px;
  transform: translateY(-50%);
  border-width: 6px 0 6px 6px;
  border-style: solid;
  border-color: transparent transparent transparent #04143A;
}

.whatsapp-float:hover .whatsapp-tooltip {
  opacity: 1;
  transform: translateY(0);
}

@keyframes whatsappPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.45), 0 12px 30px rgba(0, 0, 0, 0.18);
  }
  70% {
    box-shadow: 0 0 0 16px rgba(37, 211, 102, 0), 0 12px 30px rgba(0, 0, 0, 0.18);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0), 0 12px 30px rgba(0, 0, 0, 0.18);
  }
}

@media (max-width: 768px) {
  .whatsapp-float {
    width: 62px;
    height: 62px;
    right: 16px;
    bottom: 16px;
  }

  .whatsapp-float img {
    width: 40px;
    height: 40px;
  }

  .whatsapp-tooltip {
    display: none;
  }
}


/* v17 - animações interativas e microinterações */
.reveal-up,
.reveal-left,
.reveal-right,
.reveal-scale {
  opacity: 0;
  transition: opacity .75s ease, transform .75s ease;
  will-change: opacity, transform;
}

.reveal-up { transform: translateY(34px); }
.reveal-left { transform: translateX(-34px); }
.reveal-right { transform: translateX(34px); }
.reveal-scale { transform: scale(.94); }

.reveal-up.is-visible,
.reveal-left.is-visible,
.reveal-right.is-visible,
.reveal-scale.is-visible {
  opacity: 1;
  transform: translate(0, 0) scale(1);
}

.delay-1 { transition-delay: .12s; }
.delay-2 { transition-delay: .24s; }
.delay-3 { transition-delay: .36s; }

.animated-hero::after {
  content: "";
  position: absolute;
  inset: -40%;
  background:
    radial-gradient(circle at 20% 30%, rgba(10,124,255,.18), transparent 20%),
    radial-gradient(circle at 80% 20%, rgba(255,255,255,.08), transparent 18%),
    radial-gradient(circle at 60% 90%, rgba(10,124,255,.13), transparent 22%);
  animation: heroGlow 11s ease-in-out infinite alternate;
  z-index: 0;
  pointer-events: none;
}

@keyframes heroGlow {
  from { transform: translate3d(-2%, -1%, 0) rotate(0deg); opacity: .72; }
  to { transform: translate3d(2%, 1%, 0) rotate(4deg); opacity: 1; }
}

.magnetic-card,
.card,
.brand-logo-card,
.faq-item,
.city-links a,
.btn {
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease,
    filter .25s ease;
}

.magnetic-card:hover,
.card:hover,
.brand-logo-card:hover,
.faq-item:hover,
.city-links a:hover {
  transform: translateY(-8px);
  box-shadow: 0 26px 70px rgba(3,15,45,.18);
}

.btn:hover {
  transform: translateY(-3px) scale(1.02);
}

.card:hover .icon {
  animation: iconPulse .75s ease;
}

@keyframes iconPulse {
  0% { transform: scale(1); }
  45% { transform: scale(1.13) rotate(-4deg); }
  100% { transform: scale(1); }
}

.hero-card img,
.service-img img,
.split-shape img,
.expert-banner img {
  transition: transform .65s ease, filter .65s ease;
}

.hero-card:hover img,
.service-img:hover img,
.split-shape:hover img,
.expert-banner:hover img {
  transform: scale(1.045);
  filter: contrast(1.08) saturate(1.08);
}

.brand-logo-card img {
  transition: transform .3s ease, filter .3s ease;
}

.brand-logo-card:hover img {
  transform: scale(1.08);
  filter: drop-shadow(0 12px 14px rgba(3,15,45,.18));
}

.checklist li {
  transition: transform .2s ease, color .2s ease;
}

.checklist li:hover {
  transform: translateX(6px);
  color: var(--blue);
}

.counter {
  display: inline-block;
  font-weight: 900;
  color: var(--blue-2);
  min-width: 78px;
}

.whatsapp-float {
  animation: whatsappPulse 2s infinite, whatsappFloat 4s ease-in-out infinite;
}

@keyframes whatsappFloat {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

.whatsapp-float:hover {
  animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }

  .reveal-up,
  .reveal-left,
  .reveal-right,
  .reveal-scale {
    opacity: 1 !important;
    transform: none !important;
  }
}


/* v19 - animações híbridas: mantém a pegada interativa da v17, mas com entradas mais elegantes */
.reveal-up,
.reveal-left,
.reveal-right,
.reveal-scale {
  opacity: 0;
  transition: opacity .65s ease, transform .65s cubic-bezier(.2,.8,.2,1);
  will-change: opacity, transform;
}

/* Em vez de movimentos laterais fortes, tudo entra de forma mais limpa */
.reveal-up { transform: translateY(18px); }
.reveal-left { transform: translateY(18px); }
.reveal-right { transform: translateY(18px); }
.reveal-scale { transform: translateY(14px) scale(.98); }

.reveal-up.is-visible,
.reveal-left.is-visible,
.reveal-right.is-visible,
.reveal-scale.is-visible {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.delay-1 { transition-delay: .08s; }
.delay-2 { transition-delay: .16s; }
.delay-3 { transition-delay: .24s; }

/* Mantém o efeito técnico no fundo do hero, porém menos exagerado */
.animated-hero::after {
  opacity: .55;
  animation: heroGlowHybrid 13s ease-in-out infinite alternate !important;
}

@keyframes heroGlowHybrid {
  from { transform: translate3d(-1%, -1%, 0) rotate(0deg); opacity: .48; }
  to { transform: translate3d(1.2%, 1%, 0) rotate(2deg); opacity: .68; }
}

/* Mantém interatividade mais perceptível nos cards, como na versão anterior */
.magnetic-card:hover,
.card:hover,
.brand-logo-card:hover,
.faq-item:hover,
.city-links a:hover {
  transform: translateY(-7px);
  box-shadow: 0 24px 64px rgba(3,15,45,.17);
}

/* Zoom das imagens mais bonito que a v18, mas sem exagerar */
.hero-card:hover img,
.service-img:hover img,
.split-shape:hover img,
.expert-banner:hover img {
  transform: scale(1.032);
  filter: contrast(1.08) saturate(1.07);
}

/* Menu com linha animada discreta */
.menu a:not(.btn) {
  position: relative;
}

.menu a:not(.btn)::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -7px;
  width: 0;
  height: 3px;
  border-radius: 999px;
  background: var(--blue-2);
  transition: width .25s ease;
}

.menu a:not(.btn):hover::after {
  width: 100%;
}

/* Botões com micro brilho */
.btn {
  position: relative;
  overflow: hidden;
}

.btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -80%;
  width: 55%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.33), transparent);
  transform: skewX(-18deg);
  transition: left .6s ease;
}

.btn:hover::before {
  left: 130%;
}

/* Marcas em movimento mais fluido */
.brand-logo-track {
  animation-duration: 54s !important;
}

/* WhatsApp com destaque equilibrado */
.whatsapp-float {
  animation: whatsappPulse 2.4s infinite, whatsappFloat 4.5s ease-in-out infinite !important;
}

@media(max-width:768px){
  .reveal-up,
  .reveal-left,
  .reveal-right,
  .reveal-scale {
    transform: translateY(12px);
  }

  .magnetic-card:hover,
  .card:hover,
  .brand-logo-card:hover,
  .faq-item:hover,
  .city-links a:hover {
    transform: translateY(-3px);
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }

  .reveal-up,
  .reveal-left,
  .reveal-right,
  .reveal-scale {
    opacity: 1 !important;
    transform: none !important;
  }
}


/* v20 - alterações aplicadas sobre a V19: arte final do hero + WhatsApp genérico */
.hero-card-final{
  min-height:auto !important;
  height:auto !important;
  background:transparent !important;
  box-shadow:var(--shadow);
  border-radius:34px;
  overflow:hidden;
}
.hero-card-final::after,
.hero-card-final:after{display:none !important;}
.hero-card-final img{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  filter:none !important;
  display:block;
}
.hero-card-final:hover img{
  transform:scale(1.015) !important;
  filter:none !important;
}
.hero-card-final .hero-badge,
.hero-card-final .trust-strip{display:none !important;}
.whatsapp-float img{
  width:46px;
  height:46px;
  object-fit:contain;
}
@media(max-width:980px){
  .hero-card-final{border-radius:28px;}
}
@media(max-width:640px){
  .hero-card-final{border-radius:22px;}
  .whatsapp-float img{width:40px;height:40px;}
}


/* v21 - crédito Engagi Marketing no rodapé */
.footer-credit{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;}
.engagi-credit{display:inline-flex;align-items:center;gap:10px;color:#dce8ff;text-decoration:none;font-weight:800;transition:.2s ease;}
.engagi-credit span{color:#9fb0cf;font-weight:600;}
.engagi-credit strong{color:#fff;font-weight:900;}
.engagi-credit img{width:auto;height:34px;max-width:160px;object-fit:contain;margin:0;background:transparent!important;border-radius:0!important;box-shadow:none!important;padding:0!important;}
.engagi-credit:hover{transform:translateY(-2px);opacity:.95;}
@media(max-width:640px){.footer-credit{align-items:flex-start;flex-direction:column}.engagi-credit{gap:8px}.engagi-credit img{width:auto;height:30px;max-width:140px}}


/* v25 - ajustes de hierarquia do hero da home */
.hero .hero-kicker-title{font-size:clamp(.9rem,1.1vw,1.08rem);line-height:1.35;margin:0 0 16px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--blue-2);max-width:640px;}
.hero .hero-kicker-title:before{content:"";display:inline-block;width:42px;height:5px;background:var(--blue);border-radius:999px;margin-right:12px;vertical-align:middle;}
.hero .hero-main-title{font-size:clamp(2.55rem,4.8vw,5rem);line-height:.98;margin:0 0 24px;text-transform:uppercase;letter-spacing:-.045em;font-weight:900;color:#fff;max-width:760px;}
.hero .hero-highlight{margin-bottom:26px;}
@media(max-width:980px){.hero .hero-main-title{font-size:clamp(2.45rem,7vw,4rem)}.hero .hero-kicker-title{font-size:.9rem}}
@media(max-width:640px){.hero .hero-main-title{font-size:2.65rem;line-height:1.02}.hero .hero-kicker-title{font-size:.78rem;letter-spacing:.055em}.hero .hero-kicker-title:before{width:28px;height:4px;margin-right:8px}}

/* v31 - correções mobile: remover flocos decorativos sobre textos/imagens e melhorar leitura */
.panel > *, .cta > *, .section.dark .container, .snow-bg .container{
  position: relative;
  z-index: 2;
}

@media(max-width:640px){
  /* Remove os flocos grandes que estavam passando por cima do conteúdo no mobile */
  .hero-snow,
  .snow-bg:after,
  .panel:after,
  .section.dark:after,
  .cta:before,
  .brands-section:after{
    display:none !important;
    content:none !important;
  }

  /* Ajustes de leitura em cards e painéis */
  .panel,
  .cta{
    overflow:hidden;
    padding:28px 24px !important;
  }

  .panel h2,
  .panel h3,
  .cta h2{
    font-size:clamp(1.75rem,8vw,2.2rem) !important;
    line-height:1.12 !important;
  }

  .panel p,
  .cta p,
  .checklist li,
  .local-note p{
    font-size:1rem !important;
    line-height:1.55 !important;
  }

  .local-note{
    padding:20px 18px !important;
    border-radius:18px !important;
    overflow:hidden;
  }

  .service-img img,
  .split-shape img{
    height:300px !important;
  }

  .cta .actions{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
  }

  .cta .actions .btn{
    width:100%;
  }

  /* Evita que o botão flutuante cubra áreas de texto no mobile */
  .whatsapp-float{
    width:58px !important;
    height:58px !important;
    right:16px !important;
    bottom:18px !important;
  }

  .whatsapp-float img{
    width:38px !important;
    height:38px !important;
  }
}
