/* Dominium — camada premium v4
   Objetivo: mais presença visual sem perder clareza, com landing pages coerentes
   e marcas reconhecíveis antes da leitura. */

:root{
  --dom-navy:#061a31;
  --dom-navy-2:#0a2947;
  --dom-cyan:#22c7e8;
  --dom-blue:#198cff;
  --dom-green:#21c98f;
  --dom-line:rgba(19,73,108,.12);
  --dom-shadow:0 22px 60px rgba(4,24,43,.13);
}

/* Fundo com profundidade sutil em vez de grandes áreas totalmente chapadas */
body{background:#f7fbfd}
main{overflow:hidden}
.hero,.page-hero{position:relative;isolation:isolate}
.hero:before,.page-hero:before{
  content:"";position:absolute;inset:0;z-index:-2;
  background:
    radial-gradient(circle at 12% 15%,rgba(34,199,232,.11),transparent 34%),
    radial-gradient(circle at 88% 26%,rgba(33,201,143,.10),transparent 30%),
    linear-gradient(180deg,#fbfeff 0%,#f4fafd 100%);
}
.hero:after,.page-hero:after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.52;
  background-image:linear-gradient(rgba(12,67,102,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(12,67,102,.035) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(to bottom,black,transparent 88%);
}

/* Marca do cabeçalho integrada ao fundo: sem retângulo branco/efeito de recorte */
.brand-lockup-wrap{padding:0!important;border:0!important;box-shadow:none!important}
.brand-lockup{width:188px!important;max-height:48px!important;object-fit:contain!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;filter:none!important}

/* Header com presença um pouco maior, sem pesar */
.site-header{background:rgba(251,254,255,.92)!important;backdrop-filter:blur(16px);border-bottom:1px solid rgba(15,68,101,.075)!important}
.nav a{position:relative}.nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:-6px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--dom-blue),var(--dom-green));transition:.2s ease}.nav a:hover:after{left:0;right:0}
.header-actions .btn-primary{box-shadow:0 9px 24px rgba(25,140,255,.20)}

/* Home: bento com profundidade e leitura mais imediata */
.control-panel{border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 30px 80px rgba(3,22,41,.25)!important;background:radial-gradient(circle at 15% 0,rgba(34,199,232,.16),transparent 30%),linear-gradient(155deg,#092b4a,#061a31 72%)!important}
.platform-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.11)!important;background:rgba(255,255,255,.065)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.platform-card:after{content:"";position:absolute;inset:auto -18px -22px auto;width:64px;height:64px;border-radius:50%;background:rgba(34,199,232,.07)}
.platform-card img{width:31px!important;height:31px!important;object-fit:contain!important;filter:none!important}
.brand-rail{border-top:1px solid rgba(8,60,94,.06)!important;border-bottom:1px solid rgba(8,60,94,.08)!important;background:rgba(255,255,255,.78)!important;backdrop-filter:blur(12px)}
.brand-chip{background:#fff!important;border:1px solid #e4edf3!important;box-shadow:0 6px 18px rgba(5,31,57,.045)}
.brand-chip img{width:24px!important;height:24px!important;object-fit:contain!important}

/* Serviços: cada card tem mais assinatura sem virar carnaval */
.service-grid{gap:16px!important}
.service-card{position:relative;overflow:hidden;border:1px solid #dce8ef!important;box-shadow:0 12px 34px rgba(5,31,57,.07)!important;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease!important}
.service-card:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--dom-blue),var(--dom-cyan),var(--dom-green));opacity:.82}
.service-card:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-72px;bottom:-82px;background:radial-gradient(circle,rgba(34,199,232,.11),transparent 68%);pointer-events:none}
.service-card:hover{transform:translateY(-5px)!important;box-shadow:0 22px 52px rgba(5,31,57,.13)!important;border-color:#c8dce7!important}
.service-card.dark{border-color:rgba(255,255,255,.12)!important;box-shadow:0 20px 52px rgba(3,20,38,.24)!important}
.service-card .service-icon{box-shadow:0 8px 22px rgba(6,45,72,.08)}
.service-icon.multi,.service-icon.social-multi{width:auto!important;min-width:152px!important;padding:8px 10px!important;gap:7px!important;background:#fff!important;border:1px solid #dbe7ee!important}
.service-icon.multi img,.service-icon.social-multi>img{width:28px!important;height:28px!important;object-fit:contain!important}

/* Landing pages: o mesmo sistema visual, com acentos de cada serviço */
.page-hero{padding-top:58px!important;padding-bottom:58px!important}
.page-hero-grid{align-items:center!important}
.page-hero h1{letter-spacing:-.055em!important;line-height:.98!important}
.page-hero .lead{font-size:1.03rem!important;line-height:1.72!important}
.service-brand{min-height:48px;padding:7px 10px!important;border-radius:14px!important;background:rgba(255,255,255,.90)!important;border:1px solid #dbe7ee!important;box-shadow:0 8px 24px rgba(5,31,57,.07)!important;width:max-content;max-width:100%}
.service-brand strong{color:#13324b!important}

/* Clusters de marcas: reconhecimento antes de ler o texto */
.service-brand-platforms{display:flex!important;align-items:center!important;gap:11px!important}
.platform-lockup{display:inline-flex;align-items:center;gap:6px;padding:3px 5px;border-radius:10px;background:#fff}
.platform-lockup>img,.platform-lockup>.wa-business-mini{width:28px!important;height:28px!important;object-fit:contain!important;flex:0 0 28px}
.platform-lockup .wa-business-mini>img{width:26px!important;height:26px!important}
.location-lockup{min-width:130px;justify-content:center}
.social-lockup{min-width:132px;justify-content:center}

/* Cada LP ganha uma atmosfera própria, mas todas continuam Dominium */
.page-google .page-hero:before{background:radial-gradient(circle at 88% 14%,rgba(66,133,244,.14),transparent 30%),radial-gradient(circle at 8% 35%,rgba(52,168,83,.08),transparent 34%),linear-gradient(180deg,#fbfeff,#f4f9ff)}
.page-instagram .page-hero:before{background:radial-gradient(circle at 89% 18%,rgba(225,48,108,.12),transparent 31%),radial-gradient(circle at 10% 42%,rgba(79,91,213,.08),transparent 34%),linear-gradient(180deg,#fffdfd,#f7f9fd)}
.page-localizacao .page-hero:before{background:radial-gradient(circle at 88% 20%,rgba(33,201,143,.13),transparent 31%),radial-gradient(circle at 10% 40%,rgba(25,140,255,.08),transparent 34%),linear-gradient(180deg,#fbfffd,#f4fafb)}
.page-seo .page-hero:before{background:radial-gradient(circle at 86% 18%,rgba(34,199,232,.13),transparent 32%),linear-gradient(180deg,#fbfeff,#f3fafc)}
.page-360 .page-hero:before{background:radial-gradient(circle at 88% 18%,rgba(34,199,232,.13),transparent 30%),radial-gradient(circle at 15% 42%,rgba(25,140,255,.07),transparent 33%),linear-gradient(180deg,#fbfeff,#f4fafd)}
.page-sites .page-hero:before{background:radial-gradient(circle at 87% 16%,rgba(33,201,143,.12),transparent 31%),linear-gradient(180deg,#fbfffd,#f4faf8)}
.page-presenca .page-hero:before{background:radial-gradient(circle at 88% 15%,rgba(34,199,232,.11),transparent 30%),radial-gradient(circle at 12% 42%,rgba(33,201,143,.10),transparent 33%),linear-gradient(180deg,#fbfeff,#f4fbf9)}

.lp-visual{border-radius:26px!important;box-shadow:0 28px 72px rgba(3,24,45,.22)!important}
.google-visual,.instagram-visual,.location-visual,.site-visual,.seo-visual,.tour-visual{outline:1px solid rgba(255,255,255,.06);outline-offset:-8px}

/* Conteúdo interno das LPs acompanha o acabamento do hero */
.sticky-card{border:1px solid #dbe8ef!important;box-shadow:0 14px 38px rgba(5,31,57,.07)!important;background:linear-gradient(155deg,#fff,#f7fbfd)!important}
.feature{border:1px solid #e0eaf0!important;background:#fff!important;box-shadow:0 8px 24px rgba(5,31,57,.045)!important}
.feature strong{color:#12324d!important}.feature p{color:#587085!important}
.page-process{position:relative;background:linear-gradient(180deg,#f7fbfd,#eef6fa)!important;border-top:1px solid #e3edf2;border-bottom:1px solid #e3edf2}
.step{background:#fff!important;border:1px solid #dce8ef!important;box-shadow:0 10px 30px rgba(5,31,57,.055)!important}
.step .num{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#e8f5ff,#e8fbf4);color:#0f6fae!important;font-weight:950}

/* CTA final: deixa de parecer apenas outro bloco branco */
.final-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.12)!important;background:radial-gradient(circle at 85% 20%,rgba(34,199,232,.14),transparent 34%),linear-gradient(145deg,#082b49,#061a31)!important;box-shadow:0 26px 70px rgba(3,22,41,.23)!important}
.final-card h2,.final-card p,.final-card .eyebrow{color:#fff!important}.final-card p{opacity:.78}.final-card .btn-primary{box-shadow:0 12px 28px rgba(25,140,255,.25)}

/* WhatsApp redondo de verdade, sem esmagar o logo */
.float-wa{border-radius:50%!important;display:grid!important;place-items:center!important;padding:0!important;overflow:hidden!important;background:#25d366!important;box-shadow:0 10px 26px rgba(20,124,61,.28)!important}
.float-wa img{width:23px!important;height:23px!important;display:block!important;object-fit:contain!important;transform:none!important}

/* Mobile: impacto preservado, sem excesso */
@media(max-width:860px){
  .brand-lockup{width:172px!important;max-height:45px!important}
  .hero:after,.page-hero:after{background-size:28px 28px;opacity:.40}
  .page-hero{padding-top:42px!important;padding-bottom:44px!important}
  .page-hero h1{font-size:clamp(2.35rem,11vw,3.55rem)!important;line-height:1.01!important}
  .service-brand{min-height:44px;padding:6px 8px!important}
  .platform-lockup{gap:5px}.platform-lockup>img,.platform-lockup>.wa-business-mini{width:25px!important;height:25px!important;flex-basis:25px}
  .location-lockup,.social-lockup{min-width:116px}
  .service-card{box-shadow:0 9px 24px rgba(5,31,57,.06)!important}
  .control-panel{box-shadow:0 22px 58px rgba(3,22,41,.22)!important}
}

@media(max-width:430px){
  .brand-lockup{width:158px!important;max-height:42px!important}
  .page-hero .lead{font-size:.95rem!important;line-height:1.62!important}
  .service-brand{max-width:100%;width:100%;justify-content:flex-start!important}
  .service-brand strong{font-size:.77rem!important}
  .platform-lockup{min-width:auto!important}
  .platform-lockup>img,.platform-lockup>.wa-business-mini{width:23px!important;height:23px!important;flex-basis:23px}
  .service-icon.multi,.service-icon.social-multi{min-width:138px!important}
  .service-card:hover{transform:none!important}
}

/* QA publicado: os heroes claros precisam de texto escuro.
   Painéis demonstrativos preservam sua própria superfície navy. */
.hero,.page-hero{color:var(--dom-navy)!important}
.hero h1,.page-hero h1{color:var(--dom-navy)!important}
.hero h1 span{background:linear-gradient(90deg,#1167b1,#087e92,#087752);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead,.page-hero .lead{color:#455f74!important}
.hero .eyebrow,.page-hero .eyebrow{color:#116a86!important}
.hero-proof{color:#455f74!important}
.page-hero .tag{color:#274b63!important;background:#e9f2f7!important;border-color:#c7dae7!important}
.control-panel,.lp-visual{color:#fff!important}
.lp-visual{background:radial-gradient(circle at 85% 15%,rgba(34,199,232,.16),transparent 40%),linear-gradient(145deg,#0a2947,#061a31)!important;border-color:rgba(255,255,255,.18)!important}
.page-seo .seo-visual{background:linear-gradient(145deg,#0a2947,#061a31)!important}
.platform-card small{color:#b8cbdb!important}

/* A altura do menu acompanha o cabeçalho compacto em cada breakpoint. */
@media(max-width:900px){.mobile-nav{top:64px!important}}
@media(max-width:860px){.mobile-nav{top:60px!important}}
@media(max-width:390px){.mobile-nav{top:58px!important}}

/* Cabeçalho horizontal com os pixels e a tipografia da arte oficial. */
.brand-lockup{width:252px!important;height:52px!important;max-height:52px!important}
.header-inner{height:64px!important}
.service-icon.brand-symbol-icon img,.service-brand-dominium img,.presence-core img{object-fit:contain!important;background:transparent!important;border-radius:0!important;padding:0!important}
.service-icon.brand-symbol-icon img{width:48px!important;height:40px!important}
.presence-core{background:#fff!important;box-shadow:0 16px 40px rgba(0,0,0,.18)!important}
.presence-core img{width:88px!important;height:60px!important;margin:0 auto 6px!important}
.presence-core small{color:#12324d!important;opacity:1!important}
.service-brand-dominium img{width:44px!important;height:32px!important}
.google-maps-duo{flex-direction:row!important}
.footer-contact-actions .whatsapp img{width:23px!important;height:23px!important}
.float-wa img{width:28px!important;height:28px!important}
.tour-showcase-head b{color:#c6dbe9}
@media(max-width:900px){.brand-lockup{width:228px!important;height:47px!important;max-height:47px!important}}
@media(max-width:860px){.header-inner{height:60px!important}.brand-lockup{width:220px!important;height:45px!important;max-height:45px!important}}
@media(max-width:430px){.brand-lockup{width:210px!important;height:43px!important;max-height:43px!important}.presence-core img{width:75px!important;height:52px!important}}
@media(max-width:390px){.header-inner{height:58px!important}.brand-lockup{width:194px!important;height:40px!important;max-height:40px!important}}

.brand-lockup,.service-icon.brand-symbol-icon img,.service-brand-dominium img,.presence-core img{mix-blend-mode:multiply!important}

/* Remove the paper surface while preserving the official artwork. */
.brand-lockup,.service-icon.brand-symbol-icon img,.service-brand-dominium img,.presence-core img,.seo-result-title img{mix-blend-mode:normal!important}
.service-icon.brand-symbol-icon{background:transparent!important;border-color:transparent!important}
.presence-core{background:transparent!important;border:0!important;box-shadow:none!important}
.presence-core img{width:106px!important;height:78px!important;box-shadow:none!important;filter:none!important}
.presence-core small{color:#d9f0f4!important}
@media(max-width:430px){.presence-core img{width:96px!important;height:70px!important}}

/* Auditoria pré-lançamento: acessibilidade, semântica e estabilidade visual. */
:root{--muted:#5d7183}
.skip-link{position:fixed;left:12px;top:10px;z-index:999;transform:translateY(-160%);padding:11px 15px;border-radius:10px;background:#fff;color:#061a31;font-weight:900;box-shadow:0 8px 24px rgba(3,20,38,.25)}
.skip-link:focus{transform:none}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #fff!important;outline-offset:3px!important;box-shadow:0 0 0 6px #0b6fb8!important}
.btn-primary{color:#fff!important;background:linear-gradient(95deg,#0f6fae,#087e92,#087752)!important}
.section .eyebrow,.faq-section .eyebrow{color:#176fa8}
.service-card:not(.dark) p{color:#5d7183}
.service-card .link{color:#0f6fae}
.social-intro p,.social-channel p{color:#5d7183!important}
.social-channel small{color:#176fa8!important}
.google-meta,.insta-stats small,.seo-demo-note,.seo-result-body small,.seo-result-title small,.seo-result-body em,.seo-result-meta span{color:#5d7183!important}
.google-stars{color:#8a5d00}
.google-profile-title{display:block;margin:0 0 5px;font-size:1.05rem;font-weight:900}
.seo-rank{color:#0f6fae}
.nav a{padding:10px 2px}
.footer-col a{min-height:28px;display:flex;align-items:center}
.footer-col h2{margin:8px 0 15px;font-size:.78rem;letter-spacing:.13em;text-transform:uppercase}
.spacer-40{height:40px}
.section-head-single{grid-template-columns:1fr;margin-bottom:24px}
.section-title-detail{font-size:clamp(2rem,4vw,3.3rem)}
.privacy-updated{margin-top:24px}

@media(max-width:620px){.footer-col h2{font-size:.7rem;margin-bottom:11px}}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important}
}
