/* Obrena — página Contato (/contato/). Só o que é desta página; o compartilhado das internas vive em interna.css. */

/* ===== Hero dividido: copy à esquerda, formulário sobre painel cobalto à direita ===== */
.ct-hero{position:relative;overflow:hidden;padding:64px 0 96px;background:var(--bg)}
.ct-hero::before{content:"";position:absolute;top:0;right:0;bottom:0;width:46%;background:linear-gradient(160deg,#1f3bff 0%,#1530d6 55%,#0e1220 140%);border-radius:0 0 0 64px}
.ct-hero::after{content:"";position:absolute;right:-8%;top:-20%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(0,194,168,.45),transparent 62%);pointer-events:none}
.ct-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:64px;max-width:var(--max);margin:auto;padding:0 26px}
.ct-hero-copy h1{margin:0;max-width:600px;font-size:clamp(38px,4.3vw,62px);line-height:1.02;letter-spacing:-.04em}
.ct-hero-text{max-width:520px;margin:22px 0 0;color:#4c515b;font-size:17px;line-height:1.7}
.ct-canais{display:grid;gap:12px;max-width:520px;margin:34px 0 0;padding:0;list-style:none}
.ct-canal{display:flex;align-items:center;gap:16px;padding:16px 20px;border:1.5px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);text-decoration:none;transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease}
.ct-canal:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 22px 40px -30px rgba(31,59,255,.5)}
.ct-canal svg{flex:0 0 auto;width:30px;height:30px;color:var(--accent)}
.ct-canal span{display:flex;flex-direction:column;gap:2px}
.ct-canal b{font-family:var(--display);font-size:17px;font-weight:800;letter-spacing:-.015em;overflow-wrap:anywhere}
.ct-canal small{color:#666c77;font-size:13.5px}
.ct-quem{margin:24px 0 0;color:#666c77;font-size:14px;line-height:1.55}
.ct-form-card{position:relative;top:auto;box-shadow:0 46px 90px -50px rgba(14,18,32,.85)}
.ct-form-card h2{font-size:clamp(28px,2.6vw,36px)}
.ct-previa{display:none;margin-top:22px;padding-top:18px;border-top:1.5px solid var(--line)}
.ct-previa.js{display:block}
.ct-previa-titulo{margin:0 0 10px;color:#666c77;font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.ct-balao{position:relative;margin:0;padding:12px 14px 12px 16px;border-radius:4px 14px 14px 14px;background:#dcf8c6;color:#111b21;font:inherit;font-size:14px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;box-shadow:0 1px 1px rgba(0,0,0,.08);transition:opacity .25s}
.ct-balao::before{content:"";position:absolute;left:-8px;top:0;border:8px solid transparent;border-top-color:#dcf8c6;border-right-color:#dcf8c6}
.ct-previa.is-vazia .ct-balao{opacity:.55}

/* ===== Depois que você manda: linha do tempo ===== */
.ct-depois{padding:104px 0 96px;background:#fff}
.ct-depois-heading{margin-bottom:56px}
.ct-linha{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px;margin:0;padding:0;list-style:none;counter-reset:etapa}
.ct-linha::before{content:"";position:absolute;left:24px;right:24px;top:24px;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent-2))}
.ct-etapa{position:relative;padding-top:70px}
.ct-etapa-num{position:absolute;left:0;top:0;display:grid;width:50px;height:50px;place-items:center;border-radius:50%;background:var(--ink);color:#fff;font-family:var(--display);font-size:18px;font-weight:800;box-shadow:0 0 0 8px #fff}
.ct-etapa:first-child .ct-etapa-num{background:var(--accent)}
.ct-etapa h3{margin:0;font-size:22px;line-height:1.18;letter-spacing:-.025em}
.ct-etapa p{margin:12px 0 0;color:#4c515b;font-size:15.5px;line-height:1.68}

/* ===== FAQ + canal direto ===== */
.ct-faq .pg-contact-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}
.ct-direto{position:sticky;top:calc(var(--header) + 24px);padding:36px;border-radius:26px;background:var(--ink);color:#fff}
.ct-direto h2{margin:0;color:#fff;font-size:clamp(28px,2.6vw,36px);line-height:1.06;letter-spacing:-.035em}
.ct-direto>p{margin:14px 0 0;color:rgba(255,255,255,.78);font-size:15.5px;line-height:1.6}
.ct-direto .button{margin-top:26px;background:#fff;color:var(--ink);border-color:#fff}
.ct-direto .button:hover{background:var(--accent-2);border-color:var(--accent-2)}
.ct-direto-alt{margin-top:18px!important;font-size:14.5px!important}
.ct-direto-alt a{color:#fff;font-weight:750}
.ct-direto-nota{margin-top:26px!important;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);font-size:14px!important;color:rgba(255,255,255,.68)!important}
.ct-direto-nota a{color:var(--accent-2);font-weight:750}

/* ===== Larguras ===== */
@media (max-width:1180px){
  .ct-hero-inner{gap:40px}
  .ct-linha{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 36px}
  .ct-linha::before{display:none}
}
@media (max-width:960px){
  .ct-hero{padding:48px 0 0}
  .ct-hero::before{width:100%;top:auto;height:150px;border-radius:64px 0 0 0}
  .ct-hero::after{display:none}
  .ct-hero-inner{grid-template-columns:minmax(0,1fr);gap:0}
  .ct-hero-copy{min-width:0}
  .ct-hero-copy h1{max-width:none}
  .ct-hero-text{max-width:none}
  .ct-canais{max-width:none}
  .ct-form-card{margin-top:40px}
  .ct-depois{padding:84px 0 80px}
  .ct-direto{position:relative;top:auto}
  .ct-faq .pg-contact-grid{grid-template-columns:1fr}
}
@media (max-width:700px){
  .ct-hero-inner{padding-inline:18px}
  .ct-hero-copy h1{font-size:clamp(33px,9.6vw,46px)}
  .ct-hero-text{font-size:15.5px}
  .ct-canal{padding:14px 16px}
  .ct-canal b{font-size:15.5px}
  .ct-linha{grid-template-columns:1fr;gap:36px}
  .ct-etapa{padding:0 0 0 68px}
  .ct-etapa-num{width:46px;height:46px;font-size:16px}
  .ct-direto{padding:28px 22px;border-radius:21px}
}
@media (prefers-reduced-motion:reduce){
  .ct-canal{transition:none}
}
