
:root{
  --bg:#0f1113; --panel:#171a1d; --panel2:#1d2125; --text:#f4f6f7; --muted:#aeb6bc;
  --cyan:#12a8d1; --cyan2:#078bb0; --line:rgba(255,255,255,.09); --max:1180px; --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.6}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button{font:inherit}
.wrap{max-width:var(--max);margin:auto;padding:0 24px}
.header{position:sticky;top:0;z-index:60;background:rgba(15,17,19,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{height:78px;display:flex;align-items:center;gap:22px}
.logo img{width:118px}
.menu{display:flex;align-items:center;gap:24px;margin-left:auto}
.menu a{font-size:14px;color:#d7dde1;font-weight:700}
.menu a:hover,.menu a.active{color:#fff}
.portal-link{font-weight:800}
.nav-whats{margin-left:8px;background:#12a8d1;color:#fff;padding:12px 16px;border-radius:10px;font-weight:800;display:inline-flex;gap:8px;align-items:center}
.nav-whats svg{width:17px;height:17px}
.mobile-toggle{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:27px;cursor:pointer}

.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:
linear-gradient(135deg,rgba(18,168,209,.12),transparent 35%),
radial-gradient(circle at 80% 20%,rgba(18,168,209,.17),transparent 30%),
linear-gradient(135deg,#0f1113,#171a1d 72%,#0f1113)}
.hero-grid{min-height:610px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:38px;position:relative;padding:44px 0 22px}
.eyebrow{display:inline-flex;padding:7px 11px;border:1px solid rgba(18,168,209,.45);border-radius:999px;color:#73d8f4;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1.4px}
.hero h1{font-size:clamp(42px,6vw,74px);line-height:1.03;margin:18px 0 16px;letter-spacing:-2.5px}
.hero h1 em{font-style:normal;color:var(--cyan)}
.hero p.lead{font-size:19px;color:var(--muted);max-width:610px;margin:0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{background:#12a8d1;color:#fff;padding:13px 20px;border-radius:10px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid rgba(18,168,209,.15);transition:.2s}
.btn:hover{transform:translateY(-2px);background:#25b9e0}
.btn.outline{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.09);color:#fff}
.btn.outline:hover{background:rgba(255,255,255,.05)}
.btn svg{width:18px;height:18px}
.hero-slider{position:relative;height:420px;border:1px solid rgba(255,255,255,.08);border-radius:24px;overflow:hidden;background:#151a1e;box-shadow:0 25px 70px rgba(0,0,0,.35)}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .5s ease;pointer-events:none}
.slide.active{opacity:1;pointer-events:auto}
.slide img{width:100%;height:100%;object-fit:cover}
.slide svg{width:100%;height:100%;display:block}
.slide-caption{position:absolute;left:22px;right:22px;bottom:22px;padding:14px 16px;border-radius:12px;background:rgba(7,10,12,.72);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08)}
.slide-caption b,.slide-caption span{display:block}
.slide-caption b{font-size:12px;color:#fff;letter-spacing:.8px}
.slide-caption span{font-size:11px;color:#aeb8bd;margin-top:3px}
.slide-prev,.slide-next{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:39px;height:39px;border-radius:50%;border:1px solid var(--line);background:rgba(0,0,0,.55);color:#fff;font-size:24px;cursor:pointer}
.slide-prev{left:13px}.slide-next{right:13px}
.slide-dots{position:absolute;z-index:6;top:16px;right:16px;display:flex;gap:6px}
.slide-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#667178;cursor:pointer}
.slide-dots button.active{width:22px;border-radius:10px;background:var(--cyan)}
.quick-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;border-top:1px solid rgba(255,255,255,.08);padding:22px 0 28px}
.stat{display:flex;align-items:center;gap:12px}
.stat-icon{width:44px;height:44px;border-radius:12px;background:rgba(18,168,209,.12);border:1px solid rgba(18,168,209,.18);display:grid;place-items:center;color:#73d8f4;flex:0 0 auto}
.stat-icon svg{width:22px;height:22px}
.stat strong{display:block;font-size:14px}.stat span{display:block;font-size:12px;color:var(--muted);line-height:1.3}

.section{padding:84px 0}
.section-head{max-width:770px;margin-bottom:36px}
.kicker{color:var(--cyan);font-size:12px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase}
h2{font-size:clamp(30px,4vw,46px);line-height:1.08;margin:10px 0 12px;letter-spacing:-1.4px}
.section-head p{color:var(--muted);font-size:17px;margin:0}

.about-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:34px;align-items:center}
.about-art{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:linear-gradient(145deg,#191d20,#121416)}
.about-art img{width:100%;height:100%;display:block}
.about-copy p{color:var(--muted);font-size:16px}
.about-points{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}
.point{padding:15px;border-radius:12px;background:rgba(18,168,209,.07);border:1px solid rgba(18,168,209,.14)}
.point h3{margin:0 0 6px;font-size:15px}.point p{margin:0;color:#bcc6cb;font-size:13px;line-height:1.45}

.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{padding:26px;border:1px solid var(--line);border-radius:18px;background:var(--panel);transition:.2s}
.card:hover{transform:translateY(-3px);border-color:rgba(18,168,209,.35)}
.icon{width:52px;height:52px;border-radius:14px;background:rgba(18,168,209,.12);border:1px solid rgba(18,168,209,.16);display:grid;place-items:center;color:#73d8f4;margin-bottom:18px}
.icon svg{width:28px;height:28px}
.card h3{margin:0 0 8px;font-size:20px;line-height:1.2}
.card p{color:var(--muted);font-size:14px;margin:0}
.service-cta{margin-top:22px;border:1px solid rgba(18,168,209,.22);border-radius:18px;padding:26px;background:linear-gradient(120deg,rgba(18,168,209,.10),rgba(255,255,255,.025));display:flex;align-items:center;justify-content:space-between;gap:24px}
.service-cta .bubble{width:58px;height:58px;border-radius:50%;border:2px solid var(--cyan);display:grid;place-items:center;color:#73d8f4;flex:0 0 auto}
.service-cta .bubble svg{width:28px;height:28px}
.service-cta h3{margin:0 0 5px;font-size:24px}
.service-cta p{margin:0;color:var(--muted);font-size:14px;max-width:720px}

.enterprise{background:linear-gradient(135deg,#121416,#10232b);border-top:1px solid rgba(18,168,209,.18);border-bottom:1px solid rgba(18,168,209,.18)}
.enterprise-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.enterprise .lead{font-size:18px;color:var(--muted)}
.bullets{display:grid;gap:12px;margin:22px 0}
.bullet{display:flex;gap:12px;align-items:flex-start}
.bullet .mini{width:34px;height:34px;border-radius:10px;background:rgba(18,168,209,.12);color:#73d8f4;border:1px solid rgba(18,168,209,.16);display:grid;place-items:center;flex:0 0 auto}
.bullet .mini svg{width:18px;height:18px}
.bullet b{display:block;font-size:14px}
.bullet span{display:block;color:#b7c3c9;font-size:13px;line-height:1.45}
.portal-box{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:linear-gradient(145deg,#191d20,#121416)}
.portal-box img{width:100%;height:100%;display:block}

.audience-wrap{display:grid;grid-template-columns:.78fr 1.22fr;gap:34px;align-items:center}
.audience-intro p{color:var(--muted);font-size:16px}
.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.audience-card{padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}
.audience-card .art{height:145px;margin-bottom:16px}
.audience-card .art img{width:100%;height:100%;object-fit:cover}
.audience-card h3{margin:0 0 8px;font-size:22px}
.audience-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}

.why{padding-top:78px}
.why-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:30px;align-items:center}
.benefits{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.benefit{text-align:center}
.benefit .icon{margin:0 auto 12px}
.benefit b{display:block;font-size:13px;line-height:1.25}
.quote{padding-left:30px;border-left:2px solid var(--cyan);font-size:18px;font-weight:800;color:#e9f1f5}
.quote .mark{font-size:44px;color:var(--cyan);line-height:1;display:block;margin-bottom:10px}

.presence{padding-top:0}
.presence-box{border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#15191c,#111417);padding:24px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}
.presence-box p{margin:6px 0 0;color:var(--muted)}
.presence-actions{display:flex;gap:12px;flex-wrap:wrap}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.contact-card,.map-box{border:1px solid var(--line);border-radius:20px;background:var(--panel);overflow:hidden}
.contact-item{display:flex;gap:15px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid var(--line)}
.contact-item:last-child{border-bottom:0}
.contact-item:hover{background:rgba(255,255,255,.025)}
.contact-icon{width:43px;height:43px;flex:0 0 43px;border-radius:12px;background:rgba(18,168,209,.11);color:#73d8f4;display:grid;place-items:center}
.contact-icon svg{width:22px;height:22px}
.contact-item small,.contact-item b,.contact-item em{display:block}
.contact-item small{font-size:10px;letter-spacing:1.1px;color:#738087}
.contact-item b{font-size:15px;margin:2px 0}
.contact-item em{font-size:11px;color:var(--cyan);font-style:normal}
.map-box iframe{display:block;width:100%;height:390px;border:0}
.map-box a{display:block;padding:13px 17px;color:#68d9f7;font-size:12px;font-weight:800}
.whatsapp-float{position:fixed;right:22px;bottom:22px;width:56px;height:56px;border-radius:50%;background:#25d366;color:#07150b;display:grid;place-items:center;font-size:25px;z-index:50;box-shadow:0 12px 30px #0008}
.whatsapp-float svg{width:27px;height:27px}
.footer{padding:26px 0;border-top:1px solid var(--line);color:#7f898f;font-size:12px;background:#0b0d0e}
.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center}
.footer img{width:110px}
.footer-links{display:flex;gap:18px;align-items:center}
.footer-links a{color:#bfc7cc}
.back-top{width:42px;height:42px;border-radius:50%;border:1px solid rgba(18,168,209,.45);display:grid;place-items:center;color:#73d8f4}
.back-top svg{width:18px;height:18px}

@media(max-width:980px){
  .about-grid,.enterprise-grid,.audience-wrap,.why-grid,.contact-grid{grid-template-columns:1fr}
  .benefits{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:850px){
  .mobile-toggle{display:block}
  .menu{display:none}
  .menu.open{display:flex;position:absolute;left:0;right:0;top:78px;background:rgba(15,17,19,.98);padding:20px 24px;flex-direction:column;align-items:flex-start;border-top:1px solid var(--line)}
  .nav-whats{display:none}
  .hero-grid{grid-template-columns:1fr;min-height:unset;padding:68px 0 24px}
  .hero-slider{height:360px}
  .quick-stats{grid-template-columns:1fr 1fr}
  .services{grid-template-columns:1fr 1fr}
  .audience-grid{grid-template-columns:1fr}
  .why-grid{gap:18px}
}
@media(max-width:560px){
  .wrap{padding:0 18px}
  .logo img{width:102px}
  .hero h1{letter-spacing:-1.8px}
  .hero p.lead{font-size:17px}
  .hero-slider{height:300px}
  .services,.about-points,.benefits,.quick-stats{grid-template-columns:1fr}
  .service-cta,.presence-box{grid-template-columns:1fr;display:grid}
  .service-cta{align-items:flex-start}
  .presence-actions,.footer-links{flex-wrap:wrap}
  .contact-grid{grid-template-columns:1fr}
  .footer-inner{flex-direction:column;align-items:flex-start}
}

/* V5 refinements */
.hero-trust{margin-top:22px;display:inline-grid;grid-template-columns:auto 1fr;gap:13px;align-items:center;padding:12px 15px;border:1px solid rgba(18,168,209,.22);border-radius:14px;background:rgba(18,168,209,.07);max-width:510px}
.trust-number{font-size:38px;line-height:1;font-weight:900;color:#73d8f4;letter-spacing:-1.5px}
.hero-trust strong,.hero-trust span{display:block}.hero-trust strong{font-size:13px;color:#fff}.hero-trust span{font-size:11px;color:#9eabb2;margin-top:2px}
.slide-prev,.slide-next{display:grid;place-items:center;padding:0;line-height:1}
.slide-prev svg,.slide-next svg{width:20px;height:20px}
.hero-slider:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:24px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}
.hero-slider .slide-caption{max-width:calc(100% - 44px)}
.company-features{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}
.company-feature{display:flex;gap:11px;align-items:flex-start;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.025)}
.cf-icon{width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:rgba(18,168,209,.12);border:1px solid rgba(18,168,209,.17);display:grid;place-items:center;color:#73d8f4;font-weight:900}
.company-feature b,.company-feature small{display:block}.company-feature b{font-size:13px}.company-feature small{font-size:11px;color:#9dabb2;line-height:1.4;margin-top:3px}
.company-callout{border-left:3px solid var(--cyan);padding:11px 14px;margin:20px 0;color:#dce5e9;background:rgba(0,0,0,.12);border-radius:0 10px 10px 0}
.company-callout strong,.company-callout span{display:block}.company-callout strong{font-size:14px}.company-callout span{font-size:12px;color:#9eabb2;margin-top:3px}
.enterprise-visual{position:relative}
.portal-ribbon{position:absolute;top:16px;left:16px;right:16px;z-index:2;padding:12px 14px;border-radius:12px;background:rgba(7,10,12,.78);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08)}
.portal-ribbon span,.portal-ribbon b{display:block}.portal-ribbon span{font-size:10px;letter-spacing:1.4px;color:#73d8f4;font-weight:900}.portal-ribbon b{font-size:12px;color:#fff;margin-top:2px}
.reviews-section{background:linear-gradient(145deg,#121416,#10171b);border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}
.reviews-head{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end;margin-bottom:30px}
.reviews-head h2{margin-bottom:8px}.reviews-head p{color:var(--muted);margin:0;max-width:720px}
.google-score{text-align:right;padding:16px 18px;border:1px solid rgba(18,168,209,.22);border-radius:16px;background:rgba(18,168,209,.07);min-width:150px}
.score-number{font-size:34px;font-weight:900;line-height:1;color:#fff}.score-stars{letter-spacing:2px;color:#ffc94a;font-size:14px;margin:7px 0 3px}.google-score span{font-size:11px;color:#9facb2}
.reviews-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.review-card{padding:22px;border:1px solid var(--line);border-radius:16px;background:#171a1d}
.review-stars{color:#ffc94a;letter-spacing:2px;font-size:13px}.review-card p{color:#dce4e8;font-size:13px;line-height:1.55;min-height:82px}.review-card b,.review-card span{display:block}.review-card b{font-size:12px}.review-card span{font-size:10px;color:#77858c;margin-top:2px}
.reviews-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-top:22px}
@media(max-width:980px){.reviews-grid{grid-template-columns:1fr 1fr}.company-features{grid-template-columns:1fr}}
@media(max-width:850px){
  .hero-grid{gap:28px}.hero-slider{height:330px}
  .quick-stats{gap:10px}.stat{padding:4px 0}
  .reviews-head{grid-template-columns:1fr}.google-score{text-align:left;width:max-content}
  .enterprise-grid{gap:26px}
}
@media(max-width:560px){
  .hero-grid{padding-top:48px}
  .hero h1{font-size:42px;line-height:1.04}
  .hero p.lead{font-size:16px}
  .hero-trust{width:100%;grid-template-columns:54px 1fr;padding:11px 12px}.trust-number{font-size:34px}
  .hero-slider{height:260px;border-radius:18px}.hero-slider:after{border-radius:18px}
  .slide-caption{left:12px;right:12px;bottom:12px;padding:10px 11px}.slide-caption span{display:none}
  .slide-prev,.slide-next{width:34px;height:34px}.slide-prev{left:8px}.slide-next{right:8px}
  .slide-dots{top:10px;right:10px}
  .quick-stats{grid-template-columns:1fr 1fr}.stat-icon{width:38px;height:38px}.stat strong{font-size:12px}.stat span{font-size:10px}
  .services{grid-template-columns:1fr}
  .card{padding:22px}
  .service-cta{padding:20px}
  .company-features{grid-template-columns:1fr}
  .portal-ribbon{top:10px;left:10px;right:10px}.portal-ribbon b{font-size:10px}
  .reviews-grid{grid-template-columns:1fr}.review-card p{min-height:auto}
  .reviews-actions{justify-content:stretch}.reviews-actions .btn{width:100%}
  .contact-item{padding:16px}.map-box iframe{height:300px}
}

/* V6 — consistência visual de ícones e refinamento mobile */
:root{
  --icon-card:52px;
  --icon-mobile:46px;
  --icon-glyph:27px;
}

/* Normalização entre os diferentes blocos */
.card .icon,
.benefit .icon{
  width:var(--icon-card);
  height:var(--icon-card);
  flex:0 0 var(--icon-card);
}
.card .icon svg,
.benefit .icon svg{
  width:var(--icon-glyph);
  height:var(--icon-glyph);
}
.company-feature .cf-icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  border-radius:12px;
  font-size:17px;
}
.contact-icon{
  width:44px;
  height:44px;
  flex-basis:44px;
}
.stat-icon{
  width:44px;
  height:44px;
}

/* Evita que ilustrações dos perfis "compitam" visualmente com os ícones de serviço */
.audience-card .art{
  display:flex;
  align-items:center;
  justify-content:center;
}
.audience-card .art img{
  max-width:190px;
  margin:auto;
}

@media(max-width:560px){

  /* Serviços: ícone e conteúdo passam a trabalhar como uma única linha visual */
  .services .card{
    display:grid;
    grid-template-columns:var(--icon-mobile) 1fr;
    column-gap:14px;
    row-gap:4px;
    align-items:start;
    text-align:left;
    padding:18px;
  }
  .services .card .icon{
    width:var(--icon-mobile);
    height:var(--icon-mobile);
    grid-row:1 / span 2;
    margin:0;
    border-radius:12px;
  }
  .services .card .icon svg{
    width:24px;
    height:24px;
  }
  .services .card h3{
    font-size:17px;
    margin:1px 0 4px;
    line-height:1.22;
  }
  .services .card p{
    font-size:13px;
    line-height:1.5;
  }

  /* Empresa: mesma escala visual dos serviços */
  .company-feature{
    padding:14px;
    gap:13px;
    align-items:center;
  }
  .company-feature .cf-icon{
    width:var(--icon-mobile);
    height:var(--icon-mobile);
    flex:0 0 var(--icon-mobile);
    font-size:18px;
  }
  .company-feature b{
    font-size:14px;
  }
  .company-feature small{
    font-size:12px;
    line-height:1.45;
  }

  /* Perfis de atendimento: deixa de parecer "banner grande" e vira card horizontal */
  .audience-card{
    display:grid;
    grid-template-columns:94px 1fr;
    column-gap:15px;
    row-gap:3px;
    align-items:center;
    padding:16px;
    text-align:left;
  }
  .audience-card .art{
    width:94px;
    height:78px;
    margin:0;
    grid-row:1 / span 2;
  }
  .audience-card .art img{
    width:94px;
    height:78px;
    object-fit:cover;
    max-width:none;
    border-radius:10px;
  }
  .audience-card h3{
    font-size:17px;
    margin:0 0 3px;
  }
  .audience-card p{
    font-size:12px;
    line-height:1.45;
  }

  /* Diferenciais: remove os ícones centralizados soltos e cria linhas consistentes */
  .benefits{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }
  .benefit{
    min-height:64px;
    display:grid;
    grid-template-columns:var(--icon-mobile) 1fr;
    gap:13px;
    align-items:center;
    text-align:left;
    padding:10px 12px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:13px;
    background:#171a1d;
  }
  .benefit .icon{
    width:var(--icon-mobile);
    height:var(--icon-mobile);
    margin:0;
    border-radius:12px;
  }
  .benefit .icon svg{
    width:24px;
    height:24px;
  }
  .benefit b{
    font-size:13px;
    line-height:1.35;
  }

  /* Indicadores do hero seguem a mesma escala e alinhamento */
  .quick-stats{
    gap:8px;
  }
  .stat{
    min-height:58px;
    gap:10px;
    padding:7px;
    border:1px solid rgba(255,255,255,.055);
    border-radius:12px;
    background:rgba(255,255,255,.018);
  }
  .stat-icon{
    width:40px;
    height:40px;
    flex:0 0 40px;
  }
  .stat-icon svg{
    width:20px;
    height:20px;
  }
  .stat strong{
    font-size:12px;
  }
  .stat span{
    font-size:10px;
    line-height:1.25;
  }

  /* Contato mantém a mesma linguagem de caixa/ícone */
  .contact-icon{
    width:var(--icon-mobile);
    height:var(--icon-mobile);
    flex:0 0 var(--icon-mobile);
  }
  .contact-icon svg{
    width:23px;
    height:23px;
  }

  /* Frase final dos diferenciais fica menos isolada no celular */
  .quote{
    margin-top:6px;
    padding:16px 18px;
    border-left:0;
    border:1px solid rgba(18,168,209,.18);
    border-radius:14px;
    background:rgba(18,168,209,.055);
    font-size:16px;
  }
  .quote .mark{
    display:inline;
    margin:0 7px 0 0;
    font-size:27px;
    vertical-align:-4px;
  }
}

/* V6 refinado — normalização completa de escalas no desktop, tablet e mobile */

/* Escala-base */
:root{
  --ui-icon-box:48px;
  --ui-icon-svg:24px;
  --ui-radius:12px;
}

/* Indicadores do hero */
.stat{
  min-height:62px;
  align-items:center;
}
.stat-icon{
  width:var(--ui-icon-box);
  height:var(--ui-icon-box);
  flex:0 0 var(--ui-icon-box);
  border-radius:var(--ui-radius);
}
.stat-icon svg{
  width:var(--ui-icon-svg);
  height:var(--ui-icon-svg);
}

/* Serviços */
.services .card{
  min-height:220px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-align:left;
}
.services .card .icon{
  width:var(--ui-icon-box);
  height:var(--ui-icon-box);
  flex:0 0 var(--ui-icon-box);
  margin:0 0 16px;
  border-radius:var(--ui-radius);
}
.services .card .icon svg{
  width:var(--ui-icon-svg);
  height:var(--ui-icon-svg);
}
.services .card h3{
  min-height:48px;
  display:flex;
  align-items:flex-start;
  font-size:18px;
  line-height:1.22;
}
.services .card p{
  margin-top:auto;
}

/* Área empresarial */
.company-feature{
  min-height:96px;
  align-items:flex-start;
}
.company-feature .cf-icon{
  width:var(--ui-icon-box);
  height:var(--ui-icon-box);
  flex:0 0 var(--ui-icon-box);
  border-radius:var(--ui-radius);
  display:grid;
  place-items:center;
  font-size:18px;
}
.company-feature b{
  font-size:14px;
}
.company-feature small{
  font-size:12px;
  line-height:1.45;
}

/* Perfis de atendimento */
.audience-card{
  min-height:330px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-align:left;
}
.audience-card .art{
  width:100%;
  height:155px;
  min-height:155px;
  margin-bottom:16px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.audience-card .art img{
  width:100%;
  height:100%;
  max-width:100%;
  object-fit:cover;
  border-radius:12px;
}
.audience-card h3{
  font-size:20px;
  line-height:1.2;
  margin:0 0 8px;
}
.audience-card p{
  margin-top:auto;
}

/* Diferenciais: mesma escala dos serviços, sem efeito de "ícones soltos" */
.benefits{
  align-items:stretch;
}
.benefit{
  min-height:138px;
  padding:16px 10px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:14px;
  background:rgba(255,255,255,.018);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
}
.benefit .icon{
  width:var(--ui-icon-box);
  height:var(--ui-icon-box);
  flex:0 0 var(--ui-icon-box);
  margin:0 auto 12px;
  border-radius:var(--ui-radius);
}
.benefit .icon svg{
  width:var(--ui-icon-svg);
  height:var(--ui-icon-svg);
}
.benefit b{
  max-width:125px;
  margin:auto 0 0;
  font-size:12px;
  line-height:1.3;
  text-align:center;
}

/* Contato */
.contact-icon{
  width:var(--ui-icon-box);
  height:var(--ui-icon-box);
  flex:0 0 var(--ui-icon-box);
  border-radius:var(--ui-radius);
}
.contact-icon svg{
  width:var(--ui-icon-svg);
  height:var(--ui-icon-svg);
}
.contact-item{
  min-height:86px;
  align-items:center;
}

/* CTA não encontrado */
.service-cta .bubble{
  width:var(--ui-icon-box);
  height:var(--ui-icon-box);
  flex:0 0 var(--ui-icon-box);
}
.service-cta .bubble svg{
  width:var(--ui-icon-svg);
  height:var(--ui-icon-svg);
}

/* Tablet: preserva proporções */
@media(max-width:980px) and (min-width:561px){
  .services .card{
    min-height:205px;
  }
  .audience-card{
    min-height:auto;
  }
  .audience-card .art{
    height:145px;
    min-height:145px;
  }
  .benefit{
    min-height:126px;
  }
}

/* Mobile continua horizontal, mas agora usa a mesma escala-base */
@media(max-width:560px){
  .services .card{
    min-height:auto;
  }
  .services .card .icon,
  .company-feature .cf-icon,
  .benefit .icon,
  .contact-icon{
    width:46px;
    height:46px;
    flex:0 0 46px;
  }
  .services .card .icon svg,
  .benefit .icon svg,
  .contact-icon svg{
    width:23px;
    height:23px;
  }
  .company-feature{
    min-height:auto;
  }
  .audience-card{
    min-height:auto;
  }
  .benefit{
    min-height:64px;
  }
}

/* V7 – iconografia adicional, hero ilustrado e legibilidade */
body{font-size:16px}
.kicker,.eyebrow{font-size:13px}
.section-head p,.about-copy p,.audience-intro p,.enterprise .lead{font-size:18px;line-height:1.65}
.card p,.audience-card p,.company-feature small,.point p,.review-card p,.service-cta p{font-size:14px;line-height:1.6}
.stat span,.hero-trust span,.slide-caption span,.contact-item small,.contact-item em{font-size:12px}
.slide-caption b{font-size:13px}
.menu a{font-size:14px}
.hero-slider{height:430px}
.slide img{object-fit:cover}
.point{
  display:grid;
  grid-template-columns:46px 1fr;
  gap:12px;
  align-items:flex-start;
}
.point-icon{
  width:46px;
  height:46px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:rgba(18,168,209,.12);
  border:1px solid rgba(18,168,209,.16);
  color:#73d8f4;
  font-size:22px;
}
.point h3{margin:0 0 6px;font-size:16px}
.hero-actions .btn{min-height:46px}
.menu .portal-link{white-space:nowrap}
@media(max-width:980px){
  .hero-slider{height:380px}
}
@media(max-width:850px){
  .menu.open a{font-size:15px}
}
@media(max-width:560px){
  body{font-size:15px}
  .kicker,.eyebrow{font-size:12px}
  .section-head p,.about-copy p,.audience-intro p,.enterprise .lead{font-size:16px;line-height:1.6}
  .card p,.audience-card p,.company-feature small,.point p,.review-card p,.service-cta p{font-size:13px;line-height:1.55}
  .hero-slider{height:270px}
  .point{grid-template-columns:42px 1fr;gap:10px}
  .point-icon{width:42px;height:42px;font-size:20px}
  .about-points{grid-template-columns:1fr}
}


/* V8 polimento geral */
.nav-whats{
  display:flex; align-items:center; gap:10px; padding:10px 14px; border-radius:14px;
  background:linear-gradient(180deg,rgba(18,168,209,.18),rgba(18,168,209,.12));
  border:1px solid rgba(18,168,209,.22); min-height:50px;
}
.nav-whats-icon{
  width:34px; height:34px; border-radius:11px; background:#12a8d1; color:#fff;
  display:grid; place-items:center; flex:0 0 34px;
}
.nav-whats-icon svg{width:18px;height:18px}
.nav-whats-text{display:block; line-height:1.1}
.nav-whats-text small{display:block; font-size:10px; color:#96dff2; text-transform:uppercase; letter-spacing:1px}
.nav-whats-text strong{display:block; font-size:14px; color:#fff}
.stat-icon{width:48px;height:48px;flex:0 0 48px;border-radius:13px}
.stat-icon svg{width:24px;height:24px}
.point-icon{width:50px;height:50px;font-size:0}
.point-icon svg{width:25px;height:25px}
.about-art img{min-height:100%; object-fit:cover}
.company-feature .cf-icon{font-size:0}
.company-feature .cf-icon svg{width:22px;height:22px}
.company-features{align-items:stretch}
.company-feature{min-height:96px}
.benefits{grid-template-columns:repeat(3,1fr);gap:14px}
.benefit{min-height:144px;padding:18px 14px}
.benefit .icon{width:58px;height:58px;flex:0 0 58px;border-radius:15px;margin:0 auto 14px}
.benefit .icon svg{width:28px;height:28px}
.benefit b{font-size:13px;max-width:140px}
.why-grid{grid-template-columns:1.2fr .8fr;align-items:start}
.why-visual{display:grid;gap:16px}
.why-visual-art{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#191d20,#121416)}
.why-visual-art img{width:100%;height:100%;display:block;min-height:290px;object-fit:cover}
.why-note{padding:18px;border:1px solid rgba(18,168,209,.14);background:rgba(18,168,209,.06);border-radius:16px}
.why-note strong,.why-note span{display:block}
.why-note strong{font-size:15px}
.why-note span{font-size:13px;color:#aeb6bc;line-height:1.55;margin-top:5px}
.reviews-marquee{overflow:hidden; mask-image:linear-gradient(to right, transparent, black 6%, black 94%, transparent); -webkit-mask-image:linear-gradient(to right, transparent, black 6%, black 94%, transparent);}
.reviews-track{display:flex;gap:16px;width:max-content;animation:reviewsScroll 58s linear infinite}
.review-card{width:270px;flex:0 0 270px}
.review-card p{min-height:96px}
@keyframes reviewsScroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 8px))}}
.reviews-marquee:hover .reviews-track{animation-play-state:paused}

.hero-slider{height:440px}
.slide-prev,.slide-next{background:rgba(8,12,15,.7);border-color:rgba(255,255,255,.11)}
.section-head p,.about-copy p,.audience-intro p,.enterprise .lead{font-size:17px;line-height:1.65}
.card p,.audience-card p,.company-feature small,.point p,.review-card p,.service-cta p{font-size:14px;line-height:1.58}
@media(max-width:980px){
  .benefits{grid-template-columns:repeat(2,1fr)}
  .why-grid{grid-template-columns:1fr}
}
@media(max-width:850px){
  .nav-whats{display:none}
  .hero-slider{height:360px}
}
@media(max-width:560px){
  .hero-slider{height:280px}
  .stat-icon{width:44px;height:44px;flex-basis:44px}.stat-icon svg{width:22px;height:22px}
  .benefits{grid-template-columns:1fr 1fr;gap:10px}
  .benefit{min-height:112px;padding:14px 10px;align-items:flex-start;text-align:left}
  .benefit .icon{width:50px;height:50px;flex-basis:50px;margin:0 0 10px}
  .benefit .icon svg{width:24px;height:24px}
  .benefit b{max-width:none;font-size:12px;text-align:left}
  .why-visual-art img{min-height:220px}
  .review-card{width:240px;flex-basis:240px}
  .review-card p{min-height:120px;font-size:13px}
  .point-icon{width:46px;height:46px}.point-icon svg{width:23px;height:23px}
}


/* V9 refinamentos pedidos */
.slide{display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#151a1e,#101317)}
.slide img{
  object-fit:contain !important;
  object-position:center center !important;
  width:100%;
  height:100%;
  padding:14px 18px 28px;
}
.hero-slider{height:430px}
.hero-actions .btn svg{width:24px;height:24px}
.nav-whats{
  background:#12a8d1 !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:none !important;
  gap:10px;
  border-radius:12px;
  min-height:46px;
  padding:10px 16px;
}
.nav-whats-icon{
  background:rgba(255,255,255,.18) !important;
  width:38px;height:38px;flex:0 0 38px;
  border-radius:10px;
}
.nav-whats-icon svg{width:22px !important;height:22px !important}
.nav-whats strong{font-size:15px}
.nav-whats small,.nav-whats-text{display:none !important}
.stat-icon{width:48px;height:48px;flex:0 0 48px}
.stat-icon svg{width:26px;height:26px}
.about-art img,.why-visual-art img{object-fit:contain !important;padding:14px;background:linear-gradient(145deg,#171b1e,#111315)}
.services .card .icon,
.company-feature .cf-icon,
.benefit .icon{width:52px;height:52px;flex:0 0 52px}
.services .card .icon svg{width:30px;height:30px}
.company-feature .cf-icon svg{width:28px;height:28px}
.benefit .icon svg{width:30px;height:30px}
.company-feature{min-height:auto}
.company-feature small{font-size:13px}
.benefits{grid-template-columns:repeat(5,1fr)}
.benefit{min-height:126px;padding:16px 12px}
.benefit .icon{margin:0 auto 12px}
.benefit b{font-size:13px;max-width:126px}
.why-note{display:none} /* remove extra repeated messaging and reduce clutter */
.section-head p,.about-copy p,.audience-intro p,.enterprise .lead{font-size:16px}
.card p,.audience-card p,.company-feature small,.point p,.review-card p,.service-cta p{font-size:14px}
@media(max-width:980px){
  .benefits{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:850px){
  .hero-slider{height:340px}
}
@media(max-width:560px){
  .hero-slider{height:265px}
  .slide img{padding:10px 12px 24px}
  .benefits{grid-template-columns:1fr !important;gap:10px}
  .benefit{
    display:grid !important;
    grid-template-columns:52px 1fr;
    gap:12px;
    align-items:center;
    text-align:left;
    min-height:auto;
    padding:12px 14px;
  }
  .benefit .icon{
    margin:0;
    width:52px;height:52px;flex:0 0 52px;
  }
  .benefit b{
    max-width:none;
    text-align:left;
    font-size:13px;
    line-height:1.35;
  }
  .services .card .icon svg{width:28px;height:28px}
  .company-feature .cf-icon svg{width:26px;height:26px}
  .benefit .icon svg{width:28px;height:28px}
  .stat-icon{width:46px;height:46px;flex-basis:46px}
  .stat-icon svg{width:24px;height:24px}
}

/* V10 final candidate */
html{scroll-behavior:smooth}
img{max-width:100%;height:auto}

/* V10.3 CTA requested refinements */
.service-cta .btn svg{width:24px;height:24px;flex:0 0 24px}
.service-cta .btn{gap:12px}


/* V10.4 nav WhatsApp refinado */
.nav-whats{
  gap: 12px;
}
.nav-whats-icon{
  background: transparent !important;
  width: auto !important;
  height: auto !important;
  flex: 0 0 auto !important;
  border-radius: 0 !important;
  display: grid;
  place-items: center;
}
.nav-whats-icon svg{
  width: 28px !important;
  height: 28px !important;
}
@media(max-width:560px){
  .nav-whats-icon svg{
    width: 30px !important;
    height: 30px !important;
  }
}
