/* ============================================================
   DIGITEC RASTREAMENTO VEICULAR — estilo
   ============================================================ */

:root{
  --vermelho:#D81F26;
  --vermelho-esc:#A8151B;
  --vermelho-cl:#FF4A50;
  --amarelo:#FBCD01;
  --amarelo-esc:#E0A003;

  --escuro:#0D0F12;
  --escuro-2:#151A21;

  --tinta:#14171C;
  --cinza:#5B6675;
  --cinza-cl:#8A93A1;

  --fundo:#FFFFFF;
  --fundo-alt:#F4F6F8;
  --linha:#E2E6EB;

  --raio:16px;
  --raio-sm:12px;
  --wrap:1180px;
  --sombra:0 8px 30px rgba(13,15,18,.09);
  --sombra-f:0 16px 44px rgba(13,15,18,.14);
}

*,*::before,*::after{ box-sizing:border-box; }

html{
  font-size:17px;
  scroll-behavior:smooth;
  scroll-padding-top:92px;
  -webkit-text-size-adjust:100%;
}

body{
  margin:0;
  background:var(--fundo);
  color:var(--tinta);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:1.02rem;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img,svg{ max-width:100%; }
a{ color:inherit; }

.wrap{ width:100%; max-width:var(--wrap); margin:0 auto; padding:0 22px; }
.wrap--fino{ max-width:840px; }

.pular{
  position:absolute; left:-9999px; top:0; z-index:200;
  background:var(--vermelho); color:#fff; padding:12px 18px; border-radius:0 0 10px 0;
}
.pular:focus{ left:0; }

/* ---------------- TOPO ---------------- */
.topo{
  position:sticky; top:0; z-index:90;
  background:rgba(13,15,18,.94);
  backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.topo__in{ display:flex; align-items:center; justify-content:space-between; min-height:84px; gap:16px; }

.marca{ display:flex; align-items:center; text-decoration:none; flex:0 0 auto; }
.marca img{ height:62px; width:auto; display:block; }
@media (max-width:560px){ .marca img{ height:52px; } }

.menu{ display:flex; align-items:center; gap:26px; }
.menu a{ color:#D6DBE2; text-decoration:none; font-size:.93rem; font-weight:600; padding:6px 0; border-bottom:2px solid transparent; }
.menu a:hover{ color:#fff; border-bottom-color:var(--vermelho); }
.menu__cta{
  background:var(--vermelho); color:#fff !important; padding:11px 18px !important;
  border-radius:99px; border-bottom:0 !important; font-weight:700;
}
.menu__cta:hover{ background:var(--vermelho-cl); }

.hamb{ display:none; background:none; border:0; padding:10px; cursor:pointer; }
.hamb span{ display:block; width:24px; height:2px; background:#fff; margin:5px 0; border-radius:2px; transition:.25s; }
.hamb[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.hamb[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.hamb[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

@media (max-width:940px){
  .hamb{ display:block; }
  .menu{
    position:fixed; inset:84px 0 auto 0;
    flex-direction:column; align-items:stretch; gap:0;
    background:#0D0F12; border-bottom:1px solid rgba(255,255,255,.1);
    padding:8px 22px 26px;
    transform:translateY(-130%); transition:transform .3s ease; visibility:hidden;
  }
  .menu.is-open{ transform:translateY(0); visibility:visible; }
  .menu a{ padding:15px 0; border-bottom:1px solid rgba(255,255,255,.07); font-size:1.02rem; }
  .menu__cta{ margin-top:16px; text-align:center; padding:15px !important; }
}

/* ---------------- HERO ---------------- */
.hero{
  position:relative; overflow:hidden;
  background:linear-gradient(160deg,#0D0F12 0%,#171C24 55%,#0D0F12 100%);
  color:#fff;
  padding:76px 0 84px;
}
.hero__mapa{ position:absolute; inset:0; opacity:.95; }
.hero__mapa svg{ width:100%; height:100%; display:block; }
/* escurece o lado do texto para o traçado do mapa não competir com a leitura */
.hero__mapa::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(100deg,rgba(13,15,18,.92) 0%,rgba(13,15,18,.80) 38%,rgba(13,15,18,.18) 70%,rgba(13,15,18,0) 100%);
}
@media (max-width:700px){
  .hero__mapa::after{ background:linear-gradient(180deg,rgba(13,15,18,.86),rgba(13,15,18,.62) 60%,rgba(13,15,18,.86)); }
}
.rota{ stroke-dasharray:8 10; opacity:.75; animation:corre 2.4s linear infinite; }
@keyframes corre{ to{ stroke-dashoffset:-36; } }

.hero::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:120px;
  background:linear-gradient(to top,rgba(13,15,18,.9),transparent); pointer-events:none;
}
.hero__in{ position:relative; z-index:2; }

.hero__tag{
  display:inline-block; margin:0 0 20px;
  font-size:.76rem; letter-spacing:.16em; text-transform:uppercase; font-weight:700;
  color:var(--amarelo); background:rgba(251,205,1,.10);
  border:1px solid rgba(251,205,1,.42); border-radius:99px; padding:8px 16px;
}
.hero__h1{
  margin:0 0 20px; font-size:clamp(2.15rem,6.2vw,3.9rem); line-height:1.08;
  font-weight:800; letter-spacing:-.02em; max-width:15ch;
}
.hero__h1 em{ font-style:normal; color:var(--vermelho-cl); }
.hero__sub{
  margin:0 0 32px; max-width:56ch; font-size:1.12rem; line-height:1.62; color:#C7CED8;
}

.hero__btns{ display:flex; flex-wrap:wrap; gap:14px; margin-bottom:46px; }

.hero__selos{
  list-style:none; margin:0; padding:26px 0 0; border-top:1px solid rgba(255,255,255,.12);
  display:grid; grid-template-columns:repeat(3,1fr); gap:22px;
}
.hero__selos li{ display:flex; flex-direction:column; }
.hero__selos b{ font-size:1.06rem; color:#fff; }
.hero__selos span{ font-size:.9rem; color:#A9B2BF; line-height:1.45; }
@media (max-width:700px){
  .hero{ padding:52px 0 64px; }
  .hero__selos{ grid-template-columns:1fr; gap:16px; }
  .hero__selos li{ flex-direction:row; align-items:baseline; gap:10px; flex-wrap:wrap; }
}

/* ---------------- BOTÕES ---------------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:16px 26px; border-radius:99px; text-decoration:none;
  font-weight:700; font-size:1rem; border:2px solid transparent; cursor:pointer;
  transition:transform .18s ease, background .2s ease, box-shadow .2s ease;
  font-family:inherit;
}
.btn--zap{ background:var(--vermelho); color:#fff; box-shadow:0 8px 24px rgba(216,31,38,.34); }
.btn--zap:hover{ background:var(--vermelho-cl); transform:translateY(-2px); }
.btn--linha{ border-color:rgba(255,255,255,.34); color:#fff; }
.btn--linha:hover{ border-color:#fff; background:rgba(255,255,255,.08); }
.btn--sm{ padding:13px 22px; font-size:.95rem; }
.btn--full{ width:100%; margin-top:8px; }

/* ---------------- SEÇÕES ---------------- */
.sec{ padding:82px 0; }
.sec--alt{ background:var(--fundo-alt); }
@media (max-width:700px){ .sec{ padding:58px 0; } }

.olho{
  margin:0 0 12px; font-size:.76rem; letter-spacing:.18em; text-transform:uppercase;
  font-weight:800; color:var(--vermelho);
}
.olho--claro{ color:var(--amarelo); }

.h2{
  margin:0 0 16px; font-size:clamp(1.7rem,4.2vw,2.6rem); line-height:1.16;
  font-weight:800; letter-spacing:-.02em; max-width:20ch;
}
.sub{ margin:0 0 44px; max-width:60ch; font-size:1.08rem; color:var(--cinza); line-height:1.66; }
.sub--claro{ color:#C7CED8; }

/* ---------------- CARDS GRANDES ---------------- */
.grid2{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
@media (max-width:860px){ .grid2{ grid-template-columns:1fr; } }

.card{
  background:#fff; border:1px solid var(--linha); border-radius:var(--raio);
  padding:34px 30px 30px; box-shadow:var(--sombra);
  display:flex; flex-direction:column;
}
.card__ic{
  width:58px; height:58px; border-radius:15px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(140deg,var(--vermelho),var(--vermelho-esc)); color:#fff;
  margin-bottom:20px; box-shadow:0 8px 20px rgba(216,31,38,.28);
}
.card h3{ margin:0 0 12px; font-size:1.42rem; font-weight:800; letter-spacing:-.01em; }
.card p{ margin:0 0 20px; color:var(--cinza); }

.lista{ list-style:none; margin:0 0 24px; padding:0; }
.lista li{ position:relative; padding-left:30px; margin-bottom:11px; line-height:1.5; }
.lista li::before{
  content:""; position:absolute; left:0; top:.42em; width:18px; height:18px; border-radius:50%;
  background:rgba(216,31,38,.12);
}
.lista li::after{
  content:""; position:absolute; left:5.5px; top:.72em; width:7px; height:4px;
  border-left:2px solid var(--vermelho); border-bottom:2px solid var(--vermelho);
  transform:rotate(-45deg);
}

.card__link{
  margin-top:auto; text-decoration:none; font-weight:700; color:var(--vermelho);
  display:inline-flex; align-items:center; gap:7px;
}
.card__link:hover{ color:var(--vermelho-esc); }
.card__link span{ transition:transform .18s ease; display:inline-block; }
.card__link:hover span{ transform:translateX(4px); }

/* ---------------- RECURSOS ---------------- */
.grid4{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
@media (max-width:1000px){ .grid4{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .grid4{ grid-template-columns:1fr; } }

.rec{ background:#fff; border:1px solid var(--linha); border-radius:var(--raio-sm); padding:26px 22px; }
.rec__ic{
  display:flex; width:46px; height:46px; align-items:center; justify-content:center;
  border-radius:12px; background:rgba(216,31,38,.10); color:var(--vermelho); margin-bottom:16px;
}
.rec h3{ margin:0 0 8px; font-size:1.06rem; font-weight:800; }
.rec p{ margin:0; font-size:.96rem; color:var(--cinza); line-height:1.56; }

/* ---------------- PARA QUEM ---------------- */
.grid4--pq{ gap:16px; }
.pq{
  border:1px solid var(--linha); border-radius:var(--raio-sm); padding:24px 20px;
  background:linear-gradient(180deg,#fff,#FAFBFC);
  border-top:3px solid var(--vermelho);
}
.pq b{ display:block; font-size:1.04rem; margin-bottom:7px; }
.pq p{ margin:0; font-size:.95rem; color:var(--cinza); line-height:1.55; }

/* ---------------- PASSOS ---------------- */
.passos{ list-style:none; margin:0 0 44px; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:24px; counter-reset:p; }
@media (max-width:860px){ .passos{ grid-template-columns:1fr; } }
.passos li{ background:#fff; border:1px solid var(--linha); border-radius:var(--raio); padding:30px 26px; position:relative; }
.passos__n{
  display:flex; width:44px; height:44px; align-items:center; justify-content:center;
  border-radius:50%; background:var(--vermelho); color:#fff; font-weight:800; font-size:1.15rem;
  margin-bottom:16px; box-shadow:0 6px 16px rgba(216,31,38,.3);
}
.passos h3{ margin:0 0 9px; font-size:1.18rem; font-weight:800; }
.passos p{ margin:0; color:var(--cinza); }

.faixa{
  background:linear-gradient(135deg,#14171C,#242C36); color:#fff;
  border-radius:var(--raio); padding:30px 32px;
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
}
.faixa p{ margin:0; max-width:60ch; color:#C7CED8; }
.faixa b{ color:#fff; }

/* ---------------- FAQ ---------------- */
.faq details{
  background:#fff; border:1px solid var(--linha); border-radius:var(--raio-sm);
  margin-bottom:12px; overflow:hidden;
}
.faq summary{
  cursor:pointer; list-style:none; padding:20px 54px 20px 22px; position:relative;
  font-weight:700; font-size:1.04rem; line-height:1.45;
}
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{
  content:""; position:absolute; right:22px; top:50%; width:11px; height:11px;
  border-right:2.5px solid var(--vermelho); border-bottom:2.5px solid var(--vermelho);
  transform:translateY(-70%) rotate(45deg); transition:transform .22s ease;
}
.faq details[open] summary::after{ transform:translateY(-20%) rotate(-135deg); }
.faq details[open] summary{ color:var(--vermelho); }
.faq div{ padding:0 22px 22px; }
.faq div p{ margin:0; color:var(--cinza); }

/* ---------------- CTA / CONTATO ---------------- */
.sec--cta{ background:linear-gradient(150deg,#0D0F12 0%,#2A1013 60%,#0D0F12 100%); color:#fff; }
.cta{ display:grid; grid-template-columns:1.05fr .95fr; gap:52px; align-items:start; }
@media (max-width:900px){ .cta{ grid-template-columns:1fr; gap:36px; } }

.contatos{ list-style:none; margin:0; padding:0; display:grid; gap:16px; }
.contatos li{ display:flex; align-items:center; gap:14px; }
.contatos__ic{
  flex:0 0 auto; width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.09); color:#FF7A7F; border:1px solid rgba(255,255,255,.12);
}
.contatos a,.contatos__tx{ display:flex; flex-direction:column; text-decoration:none; color:#fff; line-height:1.35; }
.contatos b{ font-size:1.06rem; font-weight:700; }
.contatos span{ font-size:.88rem; color:#A9B2BF; }
.contatos a:hover b{ color:var(--vermelho-cl); }

.form{
  background:#fff; color:var(--tinta); border-radius:var(--raio);
  padding:32px 28px; box-shadow:var(--sombra-f);
}
.form__h{ margin:0 0 6px; font-size:1.3rem; font-weight:800; }
.form__ajuda{ margin:0 0 22px; font-size:.95rem; color:var(--cinza); }
.form label{ display:block; font-size:.88rem; font-weight:700; margin:16px 0 7px; }
.form input,.form select{
  width:100%; padding:14px 15px; border:1.5px solid var(--linha); border-radius:11px;
  font-size:1rem; font-family:inherit; background:#fff; color:var(--tinta);
}
.form input:focus,.form select:focus{ outline:none; border-color:var(--vermelho); box-shadow:0 0 0 3px rgba(216,31,38,.14); }
.form input::placeholder{ color:#A6AEBA; }
.form__nota{ margin:12px 0 0; font-size:.9rem; min-height:1.2em; color:var(--vermelho); text-align:center; }

/* ---------------- RODAPÉ ---------------- */
.rodape{ background:var(--escuro); color:#A9B2BF; padding:48px 0 34px; }
.rodape__in{ display:grid; gap:28px; }
.rodape__marca{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.rodape__marca img{ height:92px; width:auto; display:block; }
.rodape__marca p{ margin:0; max-width:44ch; font-size:.94rem; line-height:1.55; }
.rodape__nav{ display:flex; flex-wrap:wrap; gap:10px 26px; }
.rodape__nav a{ color:#A9B2BF; text-decoration:none; font-size:.94rem; }
.rodape__nav a:hover{ color:#fff; }
.rodape__fim{
  display:flex; flex-wrap:wrap; gap:8px 24px; justify-content:space-between;
  border-top:1px solid rgba(255,255,255,.09); padding-top:22px; font-size:.86rem;
}

/* ---------------- BOTÃO FLUTUANTE ---------------- */
.flut{
  position:fixed; right:18px; bottom:18px; z-index:80;
  display:inline-flex; align-items:center; gap:9px;
  background:#25D366; color:#fff; text-decoration:none;
  padding:14px 20px 14px 16px; border-radius:99px; font-weight:700;
  box-shadow:0 10px 28px rgba(0,0,0,.28);
  transition:transform .2s ease;
}
.flut:hover{ transform:translateY(-3px); }
@media (max-width:560px){
  .flut{ padding:15px; right:14px; bottom:14px; }
  .flut__tx{ display:none; }
}

/* ---------------- MOVIMENTO REDUZIDO ---------------- */
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
  .rota{ animation:none; }
}

/* ============================================================
   BLOCOS DA RODADA 2 — grade de 3, comparativo, planos, preço
   ============================================================ */

.wrap--medio{ max-width:1000px; }

.grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
@media (max-width:920px){ .grid3{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .grid3{ grid-template-columns:1fr; } }

/* faixa de destaque dentro de seção clara */
.destaque{
  margin-top:28px; display:flex; align-items:center; gap:18px; flex-wrap:wrap;
  background:linear-gradient(135deg,#14171C,#242C36); color:#fff;
  border-radius:var(--raio); padding:26px 30px;
  border-left:5px solid var(--amarelo);
}
.destaque__ic{
  flex:0 0 auto; width:52px; height:52px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  background:rgba(251,205,1,.14); color:var(--amarelo); border:1px solid rgba(251,205,1,.3);
}
.destaque p{ margin:0; color:#C7CED8; max-width:64ch; }
.destaque b{ color:#fff; }

/* ---------------- COMPARATIVO (sempre lado a lado) ---------------- */
.versus{ display:grid; grid-template-columns:1fr auto 1fr; gap:10px; align-items:stretch; }
@media (min-width:700px){ .versus{ gap:20px; } }

.versus__col{ border-radius:var(--raio); padding:24px 20px; border:1px solid var(--linha); }
.versus__col h3{ margin:0 0 16px; font-size:1.06rem; font-weight:800; line-height:1.3; }
.versus__col ul{ list-style:none; margin:0; padding:0; }
.versus__col li{ position:relative; padding-left:24px; margin-bottom:12px; font-size:.95rem; line-height:1.5; }
.versus__col li::before{ content:""; position:absolute; left:0; top:.5em; width:12px; height:12px; border-radius:50%; }

.versus__col--frio{ background:var(--fundo-alt); color:var(--cinza); }
.versus__col--frio h3{ color:var(--tinta); }
.versus__col--frio li::before{ background:#C9D0D9; }

.versus__col--quente{
  background:linear-gradient(160deg,#14171C,#25161A); color:#C7CED8;
  border-color:rgba(251,205,1,.35);
}
.versus__col--quente h3{ color:#fff; }
.versus__col--quente li::before{ background:var(--amarelo); }

.versus__vs{ display:flex; align-items:center; justify-content:center; }
.versus__vs span{
  display:flex; align-items:center; justify-content:center;
  width:38px; height:38px; border-radius:50%; background:var(--vermelho); color:#fff;
  font-weight:800; font-size:.78rem; letter-spacing:.04em;
  box-shadow:0 6px 16px rgba(216,31,38,.32);
}
@media (min-width:700px){ .versus__vs span{ width:52px; height:52px; font-size:.95rem; } }
@media (max-width:600px){
  .versus{ gap:6px; }
  .versus__col{ padding:16px 12px; }
  .versus__col h3{ font-size:.92rem; margin-bottom:12px; }
  .versus__col li{ font-size:.84rem; padding-left:18px; margin-bottom:10px; line-height:1.42; }
  .versus__col li::before{ width:9px; height:9px; top:.42em; }
}

/* ---------------- PLANOS ---------------- */
.grid3--planos{ align-items:stretch; }
.plano{
  position:relative; display:flex; flex-direction:column;
  background:#fff; border:1px solid var(--linha); border-radius:var(--raio);
  padding:30px 26px 26px; box-shadow:var(--sombra);
}
.plano h3{ margin:0 0 6px; font-size:1.24rem; font-weight:800; letter-spacing:-.01em; line-height:1.25; }
.plano__pra{ margin:0 0 20px; font-size:.92rem; color:var(--cinza); }
.plano .lista{ margin-bottom:24px; }
.plano .lista li{ font-size:.96rem; }
.plano .btn{ margin-top:auto; }

.plano--destaque{
  background:linear-gradient(165deg,#14171C,#22181B); color:#fff;
  border-color:rgba(251,205,1,.4); box-shadow:0 18px 44px rgba(13,15,18,.28);
}
.plano--destaque h3{ color:#fff; }
.plano--destaque .plano__pra{ color:#A9B2BF; }
.plano--destaque .lista li::before{ background:rgba(251,205,1,.16); }
.plano--destaque .lista li::after{ border-color:var(--amarelo); }
.plano__selo{
  position:absolute; top:-13px; left:26px;
  background:var(--amarelo); color:#14171C; font-size:.72rem; font-weight:800;
  letter-spacing:.1em; text-transform:uppercase; padding:6px 14px; border-radius:99px;
}
.btn--linha-v{ border-color:var(--vermelho); color:var(--vermelho); }
.btn--linha-v:hover{ background:var(--vermelho); color:#fff; }

/* ---------------- PREÇO ---------------- */
.preco{
  margin-top:30px; background:#fff; border:1px solid var(--linha); border-radius:var(--raio);
  padding:30px 32px; display:flex; align-items:center; justify-content:space-between;
  gap:24px; flex-wrap:wrap; border-top:4px solid var(--vermelho);
}
.preco__de{ margin:0; font-size:.86rem; letter-spacing:.12em; text-transform:uppercase; font-weight:800; color:var(--cinza); }
.preco__val{ margin:4px 0 8px; font-size:clamp(2rem,5vw,2.7rem); font-weight:800; letter-spacing:-.02em; color:var(--vermelho); line-height:1.1; }
.preco__val span{ font-size:1rem; font-weight:700; color:var(--cinza); letter-spacing:0; }
.preco__obs{ margin:0; font-size:.94rem; color:var(--cinza); max-width:52ch; }

/* ============================================================
   RODADA 3 — site de 3 páginas
   ============================================================ */

/* hero reduzido das páginas internas */
.hero--pag{ padding:64px 0 60px; }
.hero--pag .hero__h1{ max-width:20ch; font-size:clamp(1.9rem,5vw,3.1rem); }
.hero--pag .hero__sub{ margin-bottom:26px; }
@media (max-width:700px){ .hero--pag{ padding:44px 0 46px; } }

.volta{
  display:flex; width:max-content; align-items:center; gap:7px; margin-bottom:20px;
  font-size:.9rem; font-weight:600; color:#A9B2BF; text-decoration:none;
}
.volta:hover{ color:#fff; }

/* ---------------- ESCOLHA (dois caminhos na home) ---------------- */
.escolha{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
@media (max-width:860px){ .escolha{ grid-template-columns:1fr; } }

.via-card{
  display:flex; flex-direction:column; text-decoration:none; color:inherit;
  background:#fff; border:1px solid var(--linha); border-radius:var(--raio);
  padding:34px 30px 30px; box-shadow:var(--sombra);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.via-card:hover{ transform:translateY(-4px); box-shadow:var(--sombra-f); border-color:var(--vermelho); }
.via-card__ic{
  width:60px; height:60px; border-radius:16px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(140deg,var(--vermelho),var(--vermelho-esc)); color:#fff;
  margin-bottom:20px; box-shadow:0 8px 20px rgba(216,31,38,.28);
}
.via-card h3{ margin:0 0 10px; font-size:1.5rem; font-weight:800; letter-spacing:-.015em; }
.via-card__p{ margin:0 0 20px; color:var(--cinza); }
.via-card .lista{ margin-bottom:24px; }
.via-card__go{
  margin-top:auto; display:inline-flex; align-items:center; gap:8px;
  font-weight:800; color:var(--vermelho); font-size:1.02rem;
}
.via-card__go span{ transition:transform .18s ease; display:inline-block; }
.via-card:hover .via-card__go span{ transform:translateX(5px); }

/* ---------------- VÍDEO ---------------- */
.video{ display:grid; grid-template-columns:minmax(0,300px) 1fr; gap:36px; align-items:center; }
@media (max-width:760px){ .video{ grid-template-columns:1fr; gap:24px; } }
.video__pl{
  width:100%; max-width:300px; aspect-ratio:9/16; border-radius:var(--raio);
  background:#000; display:block; box-shadow:var(--sombra-f); margin:0 auto;
}
.video__tx h3{ margin:0 0 12px; font-size:clamp(1.4rem,3.4vw,2rem); font-weight:800; letter-spacing:-.02em; }
.video__tx p{ margin:0 0 20px; color:var(--cinza); max-width:52ch; }

/* ---------------- NAVEGAÇÃO ENTRE PÁGINAS ---------------- */
.outras{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:44px; }
@media (max-width:700px){ .outras{ grid-template-columns:1fr; } }
.outras a{
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:22px 24px; border-radius:var(--raio-sm); text-decoration:none;
  border:1px solid var(--linha); background:#fff; font-weight:700;
  transition:border-color .2s ease, transform .2s ease;
}
.outras a:hover{ border-color:var(--vermelho); transform:translateY(-2px); }
.outras small{ display:block; font-weight:500; font-size:.88rem; color:var(--cinza); margin-top:3px; }
.outras i{ font-style:normal; color:var(--vermelho); font-size:1.3rem; }

/* menu: item da página atual */
.menu a[aria-current="page"]{ color:#fff; border-bottom-color:var(--amarelo); }

/* ---------------- PREÇO DENTRO DO CARD DE PLANO ---------------- */
.plano__preco{
  margin:0 0 20px; padding-bottom:20px; border-bottom:1px dashed var(--linha);
  line-height:1.1;
}
.plano__preco b{
  display:block; font-size:2.15rem; font-weight:800; letter-spacing:-.03em; color:var(--vermelho);
}
.plano__preco span{ font-size:.92rem; font-weight:600; color:var(--cinza); letter-spacing:0; }
.plano--destaque .plano__preco{ border-bottom-color:rgba(255,255,255,.16); }
.plano--destaque .plano__preco b{ color:var(--amarelo); }
.plano--destaque .plano__preco span{ color:#A9B2BF; }
.plano__preco i{
  display:block; font-style:normal; font-size:.78rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase; color:var(--cinza); margin-bottom:2px;
}
.plano--destaque .plano__preco i{ color:#A9B2BF; }

.grid3--planos + .faixa{ margin-top:30px; }

/* ---------------- CLAIM DE REDUÇÃO DE CUSTO ---------------- */
.destaque--num .destaque__ic{
  width:auto; min-width:96px; height:auto; padding:12px 18px; border-radius:14px;
  flex-direction:column; line-height:1;
  font-size:1.9rem; font-weight:800; letter-spacing:-.02em; color:var(--amarelo);
}
.destaque--num .destaque__ic small{
  font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; font-weight:700;
  color:#A9B2BF; margin-bottom:5px;
}
.rodape__fim a{ text-decoration:none; }
.rodape__fim a:hover{ color:#fff; }
