/* ==========================================================================
   JT Creative Hub — folha de estilo única
   Cores e tipografia seguem identidade/design-guide.md
   ========================================================================== */

:root{
  --preto:#0A0A0A;
  --card:#141416;
  --card-2:#191920;
  --borda:#26262B;
  --texto:#F2F4F6;
  --muted:#9BA1A8;
  --azul:#1E5BFF;
  --roxo:#7B3FE4;
  --grad:linear-gradient(135deg,#1E5BFF 0%,#7B3FE4 100%);

  --titulo:'Montserrat',system-ui,'Segoe UI',sans-serif;
  --corpo:'Inter',system-ui,'Segoe UI',sans-serif;

  --max:1180px;
  --gut:clamp(20px,5vw,48px);
  --r:14px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  margin:0;background:var(--preto);color:var(--texto);
  font-family:var(--corpo);font-size:17px;line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}

/* acessibilidade -------------------------------------------------------- */
.pular{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--azul);color:#fff;padding:12px 18px;border-radius:0 0 8px 0;
}
.pular:focus{left:0}
:focus-visible{outline:3px solid #6E8BFF;outline-offset:3px;border-radius:4px}

/* estrutura ------------------------------------------------------------- */
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
section{padding-block:clamp(56px,9vw,104px)}
.sec--card{background:var(--card);border-block:1px solid var(--borda)}

/* tipografia ------------------------------------------------------------ */
h1,h2,h3{font-family:var(--titulo);letter-spacing:-.03em;line-height:1.08;margin:0}
h1{font-size:clamp(31px,5.4vw,58px);font-weight:800;letter-spacing:-.035em}
h2{font-size:clamp(26px,4vw,42px);font-weight:800}
h3{font-size:clamp(18px,2vw,21px);font-weight:700;letter-spacing:-.02em}
p{margin:0}

.eyebrow{
  font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.24em;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;
  color:transparent;margin-bottom:18px;
}
.rule{width:74px;height:4px;border-radius:2px;background:var(--grad);margin:26px 0}
.lead{color:var(--muted);font-size:clamp(17px,2.1vw,20px);margin-top:20px;max-width:62ch}
.muted{color:var(--muted)}
.sec-intro{color:var(--muted);margin-top:18px;max-width:64ch}

/* botões ---------------------------------------------------------------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:var(--corpo);font-weight:700;font-size:16px;line-height:1;
  padding:16px 26px;border-radius:11px;border:0;cursor:pointer;
  text-decoration:none;background:var(--grad);color:#fff;
  transition:transform .15s ease,filter .15s ease;
}
.btn:hover{filter:brightness(1.1)}
.btn:active{transform:translateY(1px)}
.btn--ghost{
  background:transparent;color:var(--texto);
  border:1px solid #33333A;
}
.btn--ghost:hover{border-color:#4A4A55;filter:none}
.btn--sm{padding:12px 18px;font-size:15px}
.btn-linha{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.btn svg{width:19px;height:19px;flex:0 0 auto}

/* botões que levam ao WhatsApp usam o verde oficial da marca.
   Texto escuro de propósito: branco sobre #25D366 dá contraste de 2:1 e é
   ilegível; com #062616 fica em 10:1. O href é o gatilho, então qualquer
   botão novo apontando pro WhatsApp já nasce verde. */
.btn[href*="wa.me"]{background:#25D366;color:#062616}

/* cabeçalho ------------------------------------------------------------- */
.topo{
  position:sticky;top:0;z-index:50;
  background:rgba(10,10,10,.88);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--borda);
}
.topo__in{display:flex;align-items:center;gap:20px;height:70px}
.topo__logo{margin-right:auto;display:flex;align-items:center}
.topo__logo img{height:27px;width:auto}
.nav{display:flex;align-items:center;gap:6px}
.nav a{
  text-decoration:none;color:var(--muted);font-size:15px;font-weight:600;
  padding:9px 13px;border-radius:8px;transition:color .15s,background .15s;
}
.nav a:hover{color:var(--texto);background:#17171B}
.nav a[aria-current="page"]{color:var(--texto)}
.menu-btn{
  display:none;background:transparent;border:1px solid #33333A;border-radius:9px;
  width:44px;height:44px;cursor:pointer;color:var(--texto);
}
.menu-btn span{display:block;width:19px;height:2px;background:currentColor;margin:4px auto;border-radius:2px}

@media (max-width:900px){
  .menu-btn{display:block}
  .nav{
    position:absolute;left:0;right:0;top:70px;flex-direction:column;
    align-items:stretch;gap:0;padding:10px var(--gut) 20px;
    background:var(--preto);border-bottom:1px solid var(--borda);
    display:none;
  }
  .nav[data-aberto="true"]{display:flex}
  .nav a{padding:14px 6px;font-size:17px;border-bottom:1px solid #1C1C21}
  .nav .btn{margin-top:14px;justify-content:center}
}

/* herói ----------------------------------------------------------------- */
.hero{position:relative;overflow:hidden;padding-block:clamp(64px,11vw,128px)}
.hero__glow{
  position:absolute;pointer-events:none;width:min(920px,120vw);aspect-ratio:1;
  right:-18%;top:-38%;border-radius:50%;
  background:radial-gradient(circle,rgba(88,70,255,.20) 0%,rgba(10,10,10,0) 66%);
}
.hero__in{position:relative;z-index:2}
.hero h1{max-width:19ch}
.hero .eyebrow{max-width:none}

/* trecho em destaque dentro de um título — mesmo gradiente da marca, só que
   clareado: sobre o preto o azul da paleta fica em 3,4:1 e o roxo em 3,1:1,
   no limite do mínimo. Esta variante sobe os dois para ~5,5:1. */
.destaque{
  background:linear-gradient(135deg,#4E82FF 0%,#A06BFF 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

/* herói com foto de fundo (só a home) ----------------------------------- */
/* A manchete de posicionamento é alta (4 linhas). Com o respiro antigo
   (120px em cima e embaixo) o bloco passava da altura útil de um notebook
   1366x768 e os CTAs caíam abaixo da dobra. O respiro menor mantém o ar do
   herói e garante os dois botões visíveis sem rolar. */
.hero--foto{
  display:flex;align-items:center;
  min-height:min(78vh,700px);
  padding-block:clamp(44px,6vw,72px);
}
.hero--foto .hero__bg{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero--foto .hero__bg picture{display:block;width:100%;height:100%}
.hero--foto .hero__bg img{
  width:100%;height:100%;object-fit:cover;object-position:50% 50%;
  /* a escala dá folga pro parallax deslocar sem revelar as bordas */
  transform:scale(1.05) translate3d(var(--px,0px),var(--py,0px),0);
  transition:transform .5s cubic-bezier(.22,.61,.36,1);
}
.hero--foto[data-ativo] .hero__bg img{will-change:transform}

/* véu: escurece a esquerda pro texto respirar e funde a foto na marca.
   As paradas do gradiente horizontal acompanham a largura de .hero__txt —
   se o bloco de texto crescer, o platô escuro precisa crescer junto. */
.hero--foto .hero__veu{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(10,10,10,.88) 0%, rgba(10,10,10,.82) 38%,
      rgba(10,10,10,.56) 60%, rgba(10,10,10,.24) 80%, rgba(10,10,10,.34) 100%),
    linear-gradient(180deg,
      rgba(10,10,10,.70) 0%, rgba(10,10,10,0) 24%,
      rgba(10,10,10,0) 60%, var(--preto) 100%),
    linear-gradient(135deg, rgba(30,91,255,.24) 0%, rgba(123,63,228,.18) 48%, rgba(10,10,10,0) 84%),
    rgba(10,10,10,.14);
}
/* a manchete da home é de posicionamento (mais longa que a das páginas de
   serviço): abre um pouco a medida e baixa o teto do corpo pra ela fechar em
   4 linhas em vez de 6, sem virar um bloco pesado no topo. */
.hero--foto .hero__txt{max-width:700px}
.hero--foto h1{max-width:24ch;font-size:clamp(29px,4.6vw,50px)}
.hero--foto .lead{max-width:56ch;margin-top:16px}
.hero--foto .btn-linha{margin-top:28px}

/* o secundário fica sobre a foto: a borda padrão (#33333A) some no claro do
   fundo, então aqui ele ganha borda mais viva e um fundo fosco por trás. */
.hero--foto .btn--ghost{
  border-color:#55555F;background:rgba(10,10,10,.42);backdrop-filter:blur(6px);
}
.hero--foto .btn--ghost:hover{border-color:#7C7C8C;background:rgba(10,10,10,.60)}

@media (max-width:900px){
  .hero--foto{min-height:min(90vh,680px)}
  .hero--foto .hero__bg img{object-position:58% 45%}
  .hero--foto .hero__veu{
    background:
      linear-gradient(180deg,
        rgba(10,10,10,.86) 0%, rgba(10,10,10,.74) 42%,
        rgba(10,10,10,.84) 74%, var(--preto) 100%),
      linear-gradient(135deg, rgba(30,91,255,.20) 0%, rgba(123,63,228,.16) 55%, rgba(10,10,10,0) 90%);
  }
}
@media (prefers-reduced-motion:reduce){
  .hero--foto .hero__bg img{transition:none;transform:scale(1.03)}
}
.selo{
  display:inline-flex;align-items:center;gap:9px;margin-top:30px;
  font-size:14px;font-weight:600;color:var(--muted);
}
.selo::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--grad)}

/* autodiagnóstico ------------------------------------------------------- */
.diag{margin-top:42px;max-width:900px}
.sec-intro > p + p{margin-top:12px}

/* checklist */
.diag__campo{border:0;padding:0;margin:0;min-width:0}
.diag__titulo{
  font-family:var(--titulo);font-weight:700;letter-spacing:-.02em;
  font-size:clamp(17px,2vw,20px);padding:0;margin-bottom:16px;
}
.diag__lista{
  list-style:none;margin:0;padding:0;display:grid;gap:11px;
  grid-template-columns:repeat(auto-fit,minmax(330px,1fr));
}
.diag__lista label{
  display:flex;gap:14px;align-items:center;cursor:pointer;height:100%;
  background:var(--card-2);border:1px solid var(--borda);border-radius:12px;
  padding:15px 18px;
  transition:border-color .22s ease,background .22s ease,box-shadow .22s ease,transform .22s ease;
}
.diag__lista label:hover{border-color:#40404E;background:#1C1C23;transform:translateY(-1px)}
.diag__lista input{position:absolute;width:1px;height:1px;opacity:0}

/* estado marcado: borda azul + fundo levemente iluminado */
.diag__lista label:has(input:checked){
  border-color:var(--azul);
  background:linear-gradient(135deg,rgba(30,91,255,.15),rgba(123,63,228,.10));
  box-shadow:0 0 0 1px rgba(30,91,255,.30),0 8px 24px rgba(30,91,255,.10);
}
.diag__lista label:has(input:focus-visible){outline:2px solid var(--azul);outline-offset:3px}

/* marcador — o "check" é desenhado em CSS, sem repetir SVG por item */
.diag__marca{
  position:relative;flex:0 0 auto;width:22px;height:22px;
  border:1.5px solid #40404E;border-radius:7px;
  transition:background .22s ease,border-color .22s ease;
}
.diag__marca::after{
  content:"";position:absolute;left:7px;top:3px;width:5px;height:10px;
  border:solid #fff;border-width:0 2.2px 2.2px 0;border-radius:1px;
  transform:rotate(45deg) scale(.4);opacity:0;
  transition:opacity .2s ease,transform .2s cubic-bezier(.34,1.56,.64,1);
}
.diag__lista input:checked ~ .diag__marca{background:var(--grad);border-color:transparent}
.diag__lista input:checked ~ .diag__marca::after{opacity:1;transform:rotate(45deg) scale(1)}
.diag__lista input:checked ~ .diag__marca{animation:diagPulso .34s ease}
@keyframes diagPulso{0%{transform:scale(1)}45%{transform:scale(1.16)}100%{transform:scale(1)}}

.diag__txt{color:var(--muted);font-size:16px;line-height:1.45;transition:color .22s ease}
.diag__lista input:checked ~ .diag__txt{color:var(--texto)}

/* card de diagnóstico --------------------------------------------------- */
.dcard{
  --nivel:#5A5A66;
  margin-top:26px;padding:26px clamp(20px,3vw,30px) 28px;
  border-radius:18px;border:1px solid #2A2A34;
  background:
    radial-gradient(120% 140% at 0% 0%,rgba(30,91,255,.12) 0%,rgba(10,10,10,0) 58%),
    var(--card-2);
}
.dcard__topo{display:flex;align-items:center;gap:15px;flex-wrap:wrap}
.dcard__ico{
  flex:0 0 auto;width:44px;height:44px;border-radius:12px;
  display:grid;place-items:center;color:#fff;background:var(--grad);
}
.dcard__ico svg{width:22px;height:22px}
.dcard__id{flex:1 1 220px;min-width:0}
.dcard__rotulo{font-size:clamp(17px,2vw,20px);font-weight:700}
.dcard__contagem{color:var(--muted);font-size:14px;margin-top:3px}

.dcard__nivel{
  display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;
  padding:7px 14px;border-radius:999px;
  border:1px solid color-mix(in srgb,var(--nivel) 45%,transparent);
  background:color-mix(in srgb,var(--nivel) 14%,transparent);
  color:var(--texto);font-size:13px;font-weight:700;
  text-transform:uppercase;letter-spacing:.10em;
}
.dcard__nivel[hidden]{display:none}
.dcard__ponto{
  width:9px;height:9px;border-radius:50%;background:var(--nivel);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--nivel) 22%,transparent);
}

.dcard__barra{
  height:8px;border-radius:999px;background:#232330;overflow:hidden;margin-top:20px;
}
.dcard__barra-fill{
  display:block;height:100%;width:0;border-radius:999px;
  background:linear-gradient(90deg,color-mix(in srgb,var(--nivel) 55%,#1E5BFF),var(--nivel));
  transition:width .5s cubic-bezier(.22,.61,.36,1),background .4s ease;
}

.dcard__corpo{
  margin-top:20px;
  transition:opacity .26s ease,transform .26s ease;
}
.dcard__corpo.trocando{opacity:0;transform:translateY(10px)}
.dcard__titulo{font-size:clamp(19px,2.3vw,24px);font-weight:800}
.dcard__titulo[hidden]{display:none}
.dcard__texto{color:var(--muted);font-size:16px;line-height:1.65;margin-top:10px;max-width:66ch}
.dcard__extra{
  margin-top:16px;padding:15px 18px;border-radius:12px;
  border-left:3px solid var(--nivel);background:rgba(255,255,255,.035);
  color:var(--texto);font-size:15px;line-height:1.6;max-width:66ch;
}
.dcard__extra[hidden]{display:none}
.dcard__cta{margin-top:24px}
.dcard__cta[hidden]{display:none}

/* níveis */
.dcard[data-nivel="baixo"]{--nivel:#2FBF71}
.dcard[data-nivel="atencao"]{--nivel:#E3B341}
.dcard[data-nivel="alto"]{--nivel:#F0883E}
.dcard[data-nivel="critico"]{--nivel:#E5534B}

@media (prefers-reduced-motion:reduce){
  .diag__lista label,.diag__marca,.diag__marca::after,
  .dcard__corpo,.dcard__barra-fill{transition:none;animation:none}
}

/* grades ---------------------------------------------------------------- */
.grid{display:grid;gap:18px;margin-top:44px}
.grid--3{grid-template-columns:repeat(auto-fit,minmax(258px,1fr))}
.grid--2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}

.box{
  background:var(--card);border:1px solid var(--borda);border-radius:var(--r);
  padding:28px;
}
.sec--card .box{background:var(--card-2)}
.box h3{margin-bottom:10px}
.box p{color:var(--muted);font-size:16px}

/* cartões de serviço ---------------------------------------------------- */
.servico{display:flex;flex-direction:column;gap:14px}
.servico__arte{
  border-radius:12px;border:1px solid var(--borda);overflow:hidden;background:#0E0E14;
}
/* proporção fixa: os dois cartões ficam com a mesma altura de imagem */
.servico__arte img{
  display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;
  transition:transform .45s cubic-bezier(.22,.61,.36,1);
}
.servico:hover .servico__arte img{transform:scale(1.035)}
@media (prefers-reduced-motion:reduce){
  .servico__arte img{transition:none}
  .servico:hover .servico__arte img{transform:none}
}
.servico a{
  margin-top:auto;text-decoration:none;font-weight:700;font-size:15px;
  display:inline-flex;align-items:center;gap:7px;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.servico a::after{content:"→";-webkit-text-fill-color:#7B3FE4}

/* passos ---------------------------------------------------------------- */
.passos{counter-reset:p;display:grid;gap:18px;margin-top:44px;
  grid-template-columns:repeat(auto-fit,minmax(232px,1fr))}
.passo{background:var(--card);border:1px solid var(--borda);border-radius:var(--r);padding:26px}
.sec--card .passo{background:var(--card-2)}
.passo__n{
  font-family:var(--titulo);font-weight:900;font-size:42px;line-height:1;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;
  color:transparent;margin-bottom:14px;
}
.passo h3{margin-bottom:8px}
.passo p{color:var(--muted);font-size:16px}

/* lista de itens incluídos --------------------------------------------- */
.checks{list-style:none;padding:0;margin:40px 0 0;display:grid;gap:13px;
  grid-template-columns:repeat(auto-fit,minmax(310px,1fr))}
.checks li{display:flex;gap:13px;align-items:flex-start;color:var(--muted);font-size:16px}
.checks svg{width:21px;height:21px;flex:0 0 auto;margin-top:2px;color:#5B7DFF}

/* como usamos IA ------------------------------------------------------- */
/* Seção de posicionamento, não de oferta. O brilho é o mesmo recurso do
   .dcard (radial da paleta sobre o fundo), só que na seção inteira — dá o
   ar de tecnologia sem introduzir cor, borda ou tipografia nova. */
/* Respiro menor só nas duas primeiras transições da home (herói → IA → o
   problema). O padrão de 104px do `section` continua valendo do terceiro
   bloco em diante: a abertura fica compacta, o miolo segue arejado. */
.ia{padding-block:clamp(36px,4.5vw,56px)}
.ia + section{padding-top:clamp(36px,4.5vw,56px)}

.ia{
  position:relative;overflow:hidden;
  background:
    /* o herói termina em preto puro: sem esta primeira camada o brilho começa
       a plena força na borda e a emenda entre as duas seções fica visível */
    linear-gradient(180deg,var(--preto) 0%,rgba(10,10,10,0) 16%),
    radial-gradient(90% 120% at 12% 0%,rgba(30,91,255,.10) 0%,rgba(10,10,10,0) 62%),
    radial-gradient(70% 100% at 92% 8%,rgba(123,63,228,.09) 0%,rgba(10,10,10,0) 60%),
    var(--preto);
}
.ia .sec-intro{max-width:70ch}
.ia .checks{margin-top:34px}
.ia__nota{
  margin-top:30px;padding:16px 20px;border-radius:12px;
  border-left:3px solid var(--azul);background:rgba(255,255,255,.035);
  color:var(--texto);font-size:15.5px;line-height:1.6;max-width:66ch;
}

/* galeria de demonstrações -------------------------------------------- */
/* duas colunas: cada peça fica ~80% maior do que na grade de três */
.demos{display:grid;gap:24px;margin-top:44px;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr))}
.demo{
  background:var(--card);border:1px solid var(--borda);border-radius:16px;
  overflow:hidden;
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.demo:hover{
  transform:translateY(-4px);border-color:#3E3E4C;
  box-shadow:0 20px 48px rgba(0,0,0,.55);
}
.demo img{
  display:block;width:100%;aspect-ratio:3/2;object-fit:cover;object-position:top;
  border-bottom:1px solid var(--borda);
}
.demo__txt{padding:20px 22px 24px}
.demo__txt strong{display:block;font-family:var(--titulo);font-weight:700;font-size:19px}
.demo__txt span{display:block;color:var(--muted);font-size:14.5px;margin-top:5px}
.demos__nota{margin-top:26px;color:var(--muted);font-size:14px;max-width:62ch}
@media (prefers-reduced-motion:reduce){
  .demo{transition:none}
  .demo:hover{transform:none}
}

/* nichos ---------------------------------------------------------------- */
.nichos__rotulo{
  margin-top:36px;color:var(--muted);
  font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;
}
.nichos{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:12px;
  grid-template-columns:repeat(auto-fit,minmax(248px,1fr))}
.nichos li{
  display:flex;align-items:flex-start;gap:13px;
  background:var(--card);border:1px solid var(--borda);border-radius:12px;padding:16px;
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}
.sec--card .nichos li{background:var(--card-2)}
/* cartões não são clicáveis: hover é só um respiro visual, sem sinal de ação */
.nichos li:hover{transform:translateY(-2px);border-color:#3E3E4C}
.sec--card .nichos li:hover{background:#1E1E26}

.nichos__ico{
  flex:0 0 auto;margin-top:1px;color:var(--ico,#7C838B);
  transition:transform .22s ease,filter .22s ease;
}
.nichos__ico svg{display:block;width:20px;height:20px}
.nichos li:hover .nichos__ico{transform:scale(1.12);filter:brightness(1.2)}

.nichos__txt{flex:1 1 auto;min-width:0}
.nichos__txt strong{display:block;font-size:15px;font-weight:700;line-height:1.3}
.nichos__txt span{display:block;color:var(--muted);font-size:13px;line-height:1.45;margin-top:4px}

.nichos__nota{margin-top:24px;color:var(--muted);font-size:14.5px;max-width:60ch}

/* uma cor por segmento — mesma luminosidade, pra grade ler como um conjunto */
.nichos [data-seg="barbearia"]  {--ico:#E0A44A}
.nichos [data-seg="salao"]      {--ico:#E06BA8}
.nichos [data-seg="clinica"]    {--ico:#2FB6A8}
.nichos [data-seg="dentista"]   {--ico:#41A9DE}
.nichos [data-seg="advogado"]   {--ico:#7B7CE0}
.nichos [data-seg="contador"]   {--ico:#4F8BEA}
.nichos [data-seg="psicologo"]  {--ico:#A56BE0}
.nichos [data-seg="restaurante"]{--ico:#E3874A}
.nichos [data-seg="pizzaria"]   {--ico:#DE6A5E}
.nichos [data-seg="petshop"]    {--ico:#4FB870}
.nichos [data-seg="academia"]   {--ico:#8FC24A}
.nichos [data-seg="imobiliaria"]{--ico:#46A5C9}
.nichos [data-seg="loja"]       {--ico:#CE6BC9}
.nichos [data-seg="prestador"]  {--ico:#8CA0B8}

@media (prefers-reduced-motion:reduce){
  .nichos li,.nichos__ico{transition:none}
  .nichos li:hover{transform:none}
  .nichos li:hover .nichos__ico{transform:none}
}

/* não prometemos ------------------------------------------------------- */
.nao li{display:flex;gap:13px;align-items:flex-start;color:var(--muted);font-size:16px}
.nao{list-style:none;padding:0;margin:40px 0 0;display:grid;gap:15px}
.nao svg{width:21px;height:21px;flex:0 0 auto;margin-top:2px;color:#8A8A96}

/* perguntas frequentes ------------------------------------------------- */
.faq{margin-top:40px;display:grid;gap:12px}
.faq details{
  background:var(--card);border:1px solid var(--borda);border-radius:var(--r);
}
.sec--card .faq details{background:var(--card-2)}
.faq summary{
  cursor:pointer;list-style:none;padding:22px 24px;
  font-family:var(--titulo);font-weight:700;font-size:clamp(16px,1.9vw,19px);
  display:flex;align-items:flex-start;justify-content:space-between;gap:18px;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"+";font-size:26px;line-height:1;color:#7B8794;flex:0 0 auto;
  transition:transform .18s ease;
}
.faq details[open] summary::after{content:"−"}
.faq p{padding:0 24px 24px;color:var(--muted);max-width:74ch}

/* chamada final -------------------------------------------------------- */
/* mesmo fundo das demais seções (idêntico a .sec--card) */
.final{
  background:var(--card);border-block:1px solid var(--borda);
  text-align:center;
}
.final h2{max-width:24ch;margin-inline:auto}
.final p{color:var(--muted);margin-top:26px;max-width:60ch;margin-inline:auto}
.final .btn{margin-top:42px}
.final .assin{margin-top:26px;color:var(--muted);font-size:13.5px}

/* rodapé --------------------------------------------------------------- */
.rodape{background:var(--preto);border-top:1px solid var(--borda);padding-block:56px 40px}
.rodape__grid{display:grid;gap:36px;grid-template-columns:repeat(auto-fit,minmax(228px,1fr))}
.rodape img{height:25px;width:auto;margin-bottom:16px}
.rodape p,.rodape li{color:var(--muted);font-size:15px}
.rodape h4{
  font-family:var(--corpo);font-size:12px;font-weight:800;text-transform:uppercase;
  letter-spacing:.2em;color:#C6CBD1;margin:0 0 14px;
}
.rodape ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.rodape a{text-decoration:none}
.rodape a:hover{color:var(--texto)}
.sociais{display:flex;gap:11px;margin-top:16px}
.sociais a{
  width:41px;height:41px;border:1px solid var(--borda);border-radius:11px;
  display:grid;place-items:center;color:var(--muted);
}
.sociais a:hover{color:var(--texto);border-color:#43434E}
.sociais svg{width:19px;height:19px}
.rodape__base{
  margin-top:40px;padding-top:24px;border-top:1px solid #1C1C21;
  display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;
  color:#6E747B;font-size:14px;
}

/* botão flutuante de WhatsApp ------------------------------------------ */
.zap{
  position:fixed;right:18px;bottom:18px;z-index:60;
  width:56px;height:56px;border-radius:50%;
  background:#25D366;display:grid;place-items:center;color:#062616;
  box-shadow:0 10px 30px rgba(37,211,102,.30);
  text-decoration:none;
}
.zap svg{width:28px;height:28px}
.zap:hover{filter:brightness(1.1)}
@media (min-width:901px){.zap{right:26px;bottom:26px}}
