/* ==========================================================================
   Página: Como funciona — da demonstração à rotina automatizada
   Só o que é exclusivo desta página. Header, footer, nav, botões, largura de
   coluna, espaçamentos e o acordeão de FAQ vêm de assets/css/main.css.
   ========================================================================== */

/* ===== Trilha resumo dos 4 passos (sobrepõe o hero) ===== */
.trilha{margin-top:-48px;position:relative;z-index:2;}
.trilha-grade{display:grid;grid-template-columns:1fr;gap:14px;}
.trilha-card{background:#fff;border:1px solid var(--cinza-borda);border-radius:16px;box-shadow:0 2px 20px rgba(0,0,0,.04);padding:22px 20px;display:flex;gap:14px;align-items:flex-start;transition:transform .15s;}
.trilha-card:hover{transform:translateY(-4px);}
.trilha-num{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--amarelo);color:var(--azul);font-weight:800;font-size:1.05rem;display:flex;align-items:center;justify-content:center;}
.trilha-card h3{font-size:.98rem;color:var(--azul);font-weight:800;line-height:1.3;margin-bottom:4px;}
.trilha-card p{font-size:.84rem;color:var(--cinza);line-height:1.5;}

/* ===== Blocos dos passos ===== */
.passo{display:grid;grid-template-columns:1fr;gap:32px;align-items:center;padding:40px 0;}
.passo-texto .num-grande{display:inline-flex;align-items:center;gap:12px;margin-bottom:16px;}
.passo-texto .num-grande .bolha{width:52px;height:52px;border-radius:14px;background:var(--azul-claro);color:#fff;font-weight:800;font-size:1.4rem;display:flex;align-items:center;justify-content:center;}
.passo-texto .num-grande span.rotulo-passo{color:var(--azul-claro);font-weight:700;font-size:.78rem;letter-spacing:2px;text-transform:uppercase;}
.passo-texto h3{font-size:1.7rem;color:var(--azul);font-weight:800;letter-spacing:-.015em;line-height:1.25;margin-bottom:14px;}
.passo-texto p{color:var(--cinza);margin-bottom:14px;font-size:1rem;}
.passo-texto p strong{color:var(--texto);}
.passo-texto ul{list-style:none;margin-top:6px;}
.passo-texto ul li{position:relative;padding-left:30px;margin-bottom:10px;color:var(--texto);font-size:.96rem;}
.passo-texto ul li::before{content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:50%;background:var(--bg);border:2px solid var(--azul-claro);}
.passo-texto ul li::after{content:"";position:absolute;left:5px;top:8px;width:8px;height:5px;border-left:2px solid var(--azul-claro);border-bottom:2px solid var(--azul-claro);transform:rotate(-45deg);}
.passo-visual{border-radius:16px;overflow:hidden;border:1px solid var(--cinza-borda);box-shadow:0 2px 20px rgba(0,0,0,.04);transition:transform .15s;}
.passo-visual:hover{transform:translateY(-3px);}
.passo-visual svg{width:100%;height:auto;display:block;}
.divisor-passo hr{border:none;border-top:1px dashed var(--cinza-borda);}

/* ===== Faixa "o que você recebe junto" ===== */
.faixa-junto{background:var(--azul);color:#DCEBFA;}
.faixa-junto .section-head h2{color:#fff;}
.faixa-junto .section-head p{color:#DCEBFA;}
.faixa-junto .section-head .kicker{color:var(--amarelo);}
.junto-grade{display:grid;grid-template-columns:1fr;gap:18px;}
.junto-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:28px 24px;transition:transform .15s;}
.junto-card:hover{transform:translateY(-4px);}
.junto-card .icone{width:48px;height:48px;border-radius:12px;background:rgba(245,184,65,.18);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.junto-card h3{font-size:1.08rem;font-weight:800;margin-bottom:8px;color:#fff;}
.junto-card p{font-size:.92rem;color:#DCEBFA;}
.junto-card .destaque-num{font-size:1.6rem;font-weight:800;color:var(--amarelo);line-height:1;display:block;margin-bottom:6px;}

/* ===== Bloco de custo ===== */
.custo-caixa{max-width:900px;margin:0 auto;background:#fff;border-radius:18px;box-shadow:0 2px 20px rgba(0,0,0,.04);border:1px solid var(--cinza-borda);overflow:hidden;display:grid;grid-template-columns:1fr;}
.custo-conteudo{padding:40px 32px;}
.custo-conteudo .kicker{color:var(--azul-claro);font-weight:700;font-size:.78rem;letter-spacing:2px;text-transform:uppercase;display:inline-flex;align-items:center;gap:9px;margin-bottom:10px;}
.custo-conteudo h2{font-size:1.9rem;color:var(--azul);font-weight:800;line-height:1.25;letter-spacing:-.015em;margin-bottom:14px;}
.custo-conteudo p{color:var(--cinza);margin-bottom:14px;font-size:.98rem;}
.custo-conteudo p strong{color:var(--texto);}
.custo-lateral{background:var(--azul);color:#DCEBFA;padding:40px 32px;display:flex;flex-direction:column;justify-content:center;gap:22px;}
.custo-lateral .item{display:flex;gap:14px;align-items:flex-start;}
.custo-lateral .item .icone{flex-shrink:0;width:38px;height:38px;border-radius:10px;background:rgba(245,184,65,.18);display:flex;align-items:center;justify-content:center;}
.custo-lateral .item h4{font-size:.98rem;color:#fff;margin-bottom:2px;}
.custo-lateral .item p{font-size:.85rem;color:#DCEBFA;}

/* ===== Responsivo ===== */
@media(min-width:680px){
  .trilha-grade{grid-template-columns:repeat(2,1fr);}
}
@media(min-width:820px){
  .junto-grade{grid-template-columns:repeat(3,1fr);}
  .custo-caixa{grid-template-columns:5fr 4fr;}
}
@media(min-width:900px){
  .passo{grid-template-columns:1fr 1fr;gap:64px;}
  .passo.invertido .passo-visual{order:2;}
  .passo.invertido .passo-texto{order:1;}
}
@media(min-width:1000px){
  .trilha-grade{grid-template-columns:repeat(4,1fr);}
}
@media(max-width:640px){
  .passo-texto h3{font-size:1.35rem;}
  .custo-conteudo h2{font-size:1.4rem;}
  .custo-conteudo,.custo-lateral{padding:30px 24px;}
}

.custo-conteudo .kicker::before{content:"";width:20px;height:3px;border-radius:2px;background:var(--amarelo);flex:none;}