/* ==========================================================================
   Homesin — sistema visual
   Cores, tipografia, escala e componentes conforme o Manual de Identidade
   Visual, revisao A, agosto de 2026. Nao alterar valores sem consultar o
   manual: cada HEX e cada tamanho abaixo esta especificado la.
   ========================================================================== */

/* ---------- Fontes auto-hospedadas (LGPD: nenhuma requisicao a terceiros) -- */
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/space-grotesk-400.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/space-grotesk-ext-400.woff2') format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/space-grotesk-500.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/space-grotesk-ext-500.woff2') format('woff2');unicode-range:U+0100-02AF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/space-grotesk-600.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/space-grotesk-ext-600.woff2') format('woff2');unicode-range:U+0100-02AF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/space-grotesk-700.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/space-grotesk-ext-700.woff2') format('woff2');unicode-range:U+0100-02AF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/manrope-400.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/manrope-ext-400.woff2') format('woff2');unicode-range:U+0100-02AF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/manrope-500.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/manrope-ext-500.woff2') format('woff2');unicode-range:U+0100-02AF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+2C60-2C7F,U+A720-A7FF}

/* ---------- Tokens -------------------------------------------------------- */
:root{
  /* primarias */
  --azul-pilar:#0B3C8C;
  --azul-noturno:#0B2340;
  --laranja-hall:#FF6A1A;
  /* neutros */
  --grafite-900:#12161C;
  --cinza-700:#39424E;
  --cinza-500:#5A636E;
  --cinza-300:#8A939E;
  --cinza-200:#C8D0D9;
  --cinza-50:#F4F6F8;
  --branco:#FFFFFF;
  /* semanticas */
  --verde-quitado:#1B8A5A;
  --ambar-prazo:#E8A400;
  --vermelho-debito:#D32F2F;
  --azul-aviso:#1D6FD0;

  /* papeis */
  --fundo:var(--branco);
  --fundo-alt:var(--cinza-50);
  --texto:var(--grafite-900);
  --texto-suave:var(--cinza-500);
  --borda:var(--cinza-200);
  --superficie:var(--branco);

  --fonte-inst:'Space Grotesk',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --fonte-texto:'Manrope',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;

  --max:1180px;
  --gutter:clamp(20px,5vw,48px);
  --raio-botao:4px;   /* manual 8.2 */
  --raio-card:8px;    /* manual 8.2 */
}

/* Modo escuro — paleta definida no cap. 5.3 do manual */
@media (prefers-color-scheme:dark){
  :root{
    --fundo:var(--azul-noturno);
    --fundo-alt:#12294A;
    --texto:var(--branco);
    --texto-suave:#B9C4D4;
    --borda:#1E3C66;
    --superficie:#12294A;
    --laranja-hall:#FF7F38; /* clareia para manter contraste, cap. 5.3 */
  }
}
:root[data-tema="claro"]{--fundo:#FFF;--fundo-alt:#F4F6F8;--texto:#12161C;--texto-suave:#5A636E;--borda:#C8D0D9;--superficie:#FFF;--laranja-hall:#FF6A1A}
:root[data-tema="escuro"]{--fundo:#0B2340;--fundo-alt:#12294A;--texto:#FFF;--texto-suave:#B9C4D4;--borda:#1E3C66;--superficie:#12294A;--laranja-hall:#FF7F38}

/* ---------- Base ---------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
body{
  margin:0;background:var(--fundo);color:var(--texto);
  font-family:var(--fonte-texto);font-size:17px;line-height:1.6;font-weight:400;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--laranja-hall);outline-offset:3px;border-radius:2px}

h1,h2,h3,h4{font-family:var(--fonte-inst);margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(34px,6vw,56px);line-height:1.05;letter-spacing:-.03em;font-weight:700}
h2{font-size:clamp(27px,4.2vw,40px);line-height:1.1;letter-spacing:-.025em;font-weight:700}
h3{font-size:clamp(21px,2.6vw,28px);line-height:1.2;letter-spacing:-.02em;font-weight:600}
h4{font-size:21px;line-height:1.3;letter-spacing:-.01em;font-weight:600}
p{margin:0 0 1.1em;max-width:66ch}
strong{font-weight:600}

.rotulo{font-family:var(--fonte-inst);font-weight:600;font-size:12px;line-height:1;
  letter-spacing:.18em;text-transform:uppercase;color:var(--azul-pilar);margin:0 0 16px}
@media (prefers-color-scheme:dark){.rotulo{color:#7FA3D1}}
:root[data-tema="escuro"] .rotulo{color:#7FA3D1}
:root[data-tema="claro"] .rotulo{color:#0B3C8C}
.legenda{font-size:13px;line-height:1.5;letter-spacing:.02em;color:var(--texto-suave)}

.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
section{padding-block:clamp(56px,9vw,104px)}
.fundo-alt{background:var(--fundo-alt)}
.pular{position:absolute;left:-9999px;top:0;background:var(--azul-pilar);color:#fff;padding:12px 20px;z-index:200}
.pular:focus{left:8px;top:8px}

/* ---------- Marca --------------------------------------------------------- */
.marca{display:inline-flex;align-items:center;gap:.55em;text-decoration:none;line-height:1}
.marca svg{height:1.62em;width:auto;flex:none}
.marca__nome{font-family:var(--fonte-inst);font-weight:700;font-size:1.32em;
  letter-spacing:-.035em;color:var(--texto)}
.marca__ponto{width:.30em;height:.30em;background:var(--laranja-hall);display:inline-block;
  margin-left:.06em;vertical-align:baseline;flex:none}
.marca--neg .marca__nome{color:#fff}

/* ---------- Botoes (manual 8.2) ------------------------------------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  min-height:44px;padding:13px 24px;border-radius:var(--raio-botao);border:2px solid transparent;
  font-family:var(--fonte-inst);font-weight:600;font-size:15px;letter-spacing:.02em;
  text-decoration:none;cursor:pointer;transition:background-color .16s,border-color .16s,color .16s;
  box-shadow:none}
/* CTA laranja leva texto Grafite 900 — regra 5.3 do manual. Nunca branco. */
.btn--primario{background:var(--laranja-hall);color:#12161C}
.btn--primario:hover{background:#EA5D10}
:root[data-tema="escuro"] .btn--primario:hover,
:root:not([data-tema]) .btn--primario:hover{background:#EA5D10}
.btn--inst{background:var(--azul-pilar);color:#fff}
.btn--inst:hover{background:#09326F}
.btn--sec{background:transparent;color:var(--texto);border-color:var(--texto)}
.btn--sec:hover{background:var(--texto);color:var(--fundo)}
.btn[disabled],.btn[aria-disabled="true"]{background:var(--cinza-200);color:var(--cinza-500);cursor:not-allowed;border-color:transparent}
.btn-linha{display:flex;flex-wrap:wrap;gap:14px}

/* ---------- Cabecalho ----------------------------------------------------- */
.topo{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--fundo) 92%,transparent);
  backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--borda)}
.topo__in{display:flex;align-items:center;gap:24px;min-height:72px}
.topo__nav{margin-left:auto;display:flex;align-items:center;gap:28px}
.topo__nav a{font-family:var(--fonte-inst);font-weight:500;font-size:15px;text-decoration:none;
  color:var(--texto);letter-spacing:-.01em}
.topo__nav a:hover{color:var(--azul-pilar)}
:root[data-tema="escuro"] .topo__nav a:hover{color:#7FA3D1}
.topo__cta{margin-left:8px}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--borda);
  border-radius:var(--raio-botao);width:46px;height:46px;cursor:pointer;color:var(--texto);
  align-items:center;justify-content:center}
@media (max-width:900px){
  .topo__nav{position:fixed;inset:72px 0 auto;flex-direction:column;align-items:stretch;gap:0;
    background:var(--fundo);border-bottom:1px solid var(--borda);padding:8px var(--gutter) 24px;
    display:none}
  .topo__nav[data-aberto="true"]{display:flex}
  .topo__nav a{padding:15px 0;border-bottom:1px solid var(--borda);font-size:17px}
  .topo__cta{margin:16px 0 0}
  .menu-btn{display:inline-flex}
}

/* ---------- Fachada (grafismo, cap. 07) -----------------------------------
   Faixa de rodape em Azul Pilar com as janelas visiveis e as acesas em
   Laranja Hall. E o elemento de marca que se repete em toda peca.
   -------------------------------------------------------------------------- */
.fachada{position:absolute;left:0;right:0;bottom:0;z-index:0;pointer-events:none;
  background-repeat:repeat;background-position:left bottom;
  background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyMDInIGhlaWdodD0nMTIwJyB2aWV3Qm94PScwIDAgMjAyIDEyMCc+PHJlY3QgeD0nMC4wJyB5PSc1OC44JyB3aWR0aD0nNDYuMCcgaGVpZ2h0PScxJyBmaWxsPScjRkZGRkZGJyBmaWxsLW9wYWNpdHk9JzAuMjgnLz48cmVjdCB4PSc2LjknIHk9JzExLjUnIHdpZHRoPScyMy4wJyBoZWlnaHQ9JzI3LjYnIHJ4PScyLjMnIGZpbGw9JyNGRkZGRkYnIGZpbGwtb3BhY2l0eT0nMC4xMycgc3Ryb2tlPScjRkZGRkZGJyBzdHJva2Utb3BhY2l0eT0nMC4zJyBzdHJva2Utd2lkdGg9JzEnLz48cmVjdCB4PSc1MC42JyB5PSc1OC44JyB3aWR0aD0nNDYuMCcgaGVpZ2h0PScxJyBmaWxsPScjRkZGRkZGJyBmaWxsLW9wYWNpdHk9JzAuMjgnLz48cmVjdCB4PSc1Ny41JyB5PScxMS41JyB3aWR0aD0nMjMuMCcgaGVpZ2h0PScyNy42JyByeD0nMi4zJyBmaWxsPScjRkZGRkZGJyBmaWxsLW9wYWNpdHk9JzAuMTMnIHN0cm9rZT0nI0ZGRkZGRicgc3Ryb2tlLW9wYWNpdHk9JzAuMycgc3Ryb2tlLXdpZHRoPScxJy8+PHJlY3QgeD0nMTAxLjInIHk9JzU4LjgnIHdpZHRoPSc0Ni4wJyBoZWlnaHQ9JzEnIGZpbGw9JyNGRkZGRkYnIGZpbGwtb3BhY2l0eT0nMC4yOCcvPjxyZWN0IHg9JzEwOC4xJyB5PScxMS41JyB3aWR0aD0nMjMuMCcgaGVpZ2h0PScyNy42JyByeD0nMi4zJyBmaWxsPScjRkZGRkZGJyBmaWxsLW9wYWNpdHk9JzAuMTMnIHN0cm9rZT0nI0ZGRkZGRicgc3Ryb2tlLW9wYWNpdHk9JzAuMycgc3Ryb2tlLXdpZHRoPScxJy8+PHJlY3QgeD0nMTUxLjgnIHk9JzU4LjgnIHdpZHRoPSc0Ni4wJyBoZWlnaHQ9JzEnIGZpbGw9JyNGRkZGRkYnIGZpbGwtb3BhY2l0eT0nMC4yOCcvPjxyZWN0IHg9JzE1OC43JyB5PScxMS41JyB3aWR0aD0nMjMuMCcgaGVpZ2h0PScyNy42JyByeD0nMi4zJyBmaWxsPScjRkZGRkZGJyBmaWxsLW9wYWNpdHk9JzAuMTMnIHN0cm9rZT0nI0ZGRkZGRicgc3Ryb2tlLW9wYWNpdHk9JzAuMycgc3Ryb2tlLXdpZHRoPScxJy8+PHJlY3QgeD0nMC4wJyB5PScxMTguNicgd2lkdGg9JzQ2LjAnIGhlaWdodD0nMScgZmlsbD0nI0ZGRkZGRicgZmlsbC1vcGFjaXR5PScwLjI4Jy8+PHJlY3QgeD0nNi45JyB5PSc3MS4zJyB3aWR0aD0nMjMuMCcgaGVpZ2h0PScyNy42JyByeD0nMi4zJyBmaWxsPScjRkZGRkZGJyBmaWxsLW9wYWNpdHk9JzAuMTMnIHN0cm9rZT0nI0ZGRkZGRicgc3Ryb2tlLW9wYWNpdHk9JzAuMycgc3Ryb2tlLXdpZHRoPScxJy8+PHJlY3QgeD0nNTAuNicgeT0nMTE4LjYnIHdpZHRoPSc0Ni4wJyBoZWlnaHQ9JzEnIGZpbGw9JyNGRkZGRkYnIGZpbGwtb3BhY2l0eT0nMC4yOCcvPjxyZWN0IHg9JzU3LjUnIHk9JzcxLjMnIHdpZHRoPScyMy4wJyBoZWlnaHQ9JzI3LjYnIHJ4PScyLjMnIGZpbGw9JyNGRkZGRkYnIGZpbGwtb3BhY2l0eT0nMC4xMycgc3Ryb2tlPScjRkZGRkZGJyBzdHJva2Utb3BhY2l0eT0nMC4zJyBzdHJva2Utd2lkdGg9JzEnLz48cmVjdCB4PScxMDEuMicgeT0nMTE4LjYnIHdpZHRoPSc0Ni4wJyBoZWlnaHQ9JzEnIGZpbGw9JyNGRkZGRkYnIGZpbGwtb3BhY2l0eT0nMC4yOCcvPjxyZWN0IHg9JzEwOC4xJyB5PSc3MS4zJyB3aWR0aD0nMjMuMCcgaGVpZ2h0PScyNy42JyByeD0nMi4zJyBmaWxsPScjRkY2QTFBJy8+PHJlY3QgeD0nMTUxLjgnIHk9JzExOC42JyB3aWR0aD0nNDYuMCcgaGVpZ2h0PScxJyBmaWxsPScjRkZGRkZGJyBmaWxsLW9wYWNpdHk9JzAuMjgnLz48cmVjdCB4PScxNTguNycgeT0nNzEuMycgd2lkdGg9JzIzLjAnIGhlaWdodD0nMjcuNicgcng9JzIuMycgZmlsbD0nI0ZGRkZGRicgZmlsbC1vcGFjaXR5PScwLjEzJyBzdHJva2U9JyNGRkZGRkYnIHN0cm9rZS1vcGFjaXR5PScwLjMnIHN0cm9rZS13aWR0aD0nMScvPjwvc3ZnPg==);background-size:202px 120px;
  height:120px}
.fachada--azul{background-color:var(--azul-pilar)}
.fachada--noturno{background-color:var(--azul-noturno)}
.fachada--transp{background-color:transparent}
.fachada--rodape{height:120px}

/* ---------- Hero ---------------------------------------------------------- */
.hero{position:relative;overflow:hidden;background:var(--fundo);
  padding-block:clamp(48px,8vw,88px) calc(clamp(56px,9vw,96px) + 120px)}
.hero__in{position:relative;z-index:1;display:grid;gap:clamp(36px,5vw,64px);
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center}
@media (max-width:900px){.hero__in{grid-template-columns:1fr}}
.hero h1{margin-bottom:.42em}
.hero__sub{font-size:clamp(17px,2vw,21px);line-height:1.55;color:var(--texto-suave);max-width:36ch}
.hero__micro{margin-top:18px;font-size:13px;line-height:1.5;color:var(--texto-suave);max-width:46ch}
.hero__arte{position:relative}

/* Painel mockup — dado ilustrativo, sempre rotulado */
.painel{background:var(--azul-noturno);border-radius:var(--raio-card);padding:26px 24px 22px;
  border:1px solid #1E3C66;color:#fff;position:relative;overflow:hidden}

.painel > *{position:relative;z-index:1}
.painel__topo{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}
.painel__rot{font-family:var(--fonte-inst);font-weight:600;font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:#7FA3D1}
.painel__valor{font-family:var(--fonte-inst);font-weight:700;font-size:clamp(30px,4.4vw,40px);
  letter-spacing:-.025em;line-height:1;margin:4px 0 20px}
.painel__linhas{display:grid;gap:8px;margin-bottom:18px}
.painel__linha{display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  background:rgba(255,255,255,.05);border-radius:6px;padding:11px 13px;font-size:14px}
.painel__linha b{font-family:var(--fonte-inst);font-weight:600;font-size:15px;letter-spacing:-.01em}
.painel__linha span{color:#B9C4D4;font-size:13px}
.painel__alerta{border-left:3px solid var(--ambar-prazo);background:rgba(232,164,0,.10);
  padding:10px 13px;border-radius:0 6px 6px 0;font-size:13px;color:#F0D9A6;margin-bottom:18px}
.painel__nota{font-size:11px;letter-spacing:.04em;color:#8FA4C0;margin:14px 0 0;text-transform:uppercase}

/* ---------- Grades e cards ------------------------------------------------ */
.grade{display:grid;gap:20px}
.grade--2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.grade--3{grid-template-columns:repeat(auto-fit,minmax(268px,1fr))}
.grade--4{grid-template-columns:repeat(auto-fit,minmax(228px,1fr))}
.card{background:var(--superficie);border:1px solid var(--borda);border-radius:var(--raio-card);
  padding:26px 24px;box-shadow:none}
.card--alt{background:var(--fundo-alt);border-color:transparent}
.card h3,.card h4{margin-bottom:.45em}
.card p{margin:0;font-size:15.5px;line-height:1.58;color:var(--texto-suave)}
.card__icone{color:var(--azul-pilar);margin-bottom:18px}
@media (prefers-color-scheme:dark){.card__icone{color:#7FA3D1}}
:root[data-tema="escuro"] .card__icone{color:#7FA3D1}
:root[data-tema="claro"] .card__icone{color:#0B3C8C}
.card__icone svg{width:32px;height:32px}

/* Barra de compromissos */
.compromissos{display:grid;gap:1px;background:var(--borda);border:1px solid var(--borda);
  border-radius:var(--raio-card);overflow:hidden;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.compromissos li{background:var(--fundo);padding:22px 22px;list-style:none;display:flex;gap:12px;align-items:flex-start}
.compromissos svg{flex:none;color:var(--verde-quitado);width:22px;height:22px;margin-top:2px}
.compromissos span{font-size:15px;line-height:1.5}
ul.compromissos{margin:0;padding:0}

/* Passos */
.passos{counter-reset:p;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.passo{position:relative;padding-top:26px;border-top:2px solid var(--azul-pilar)}
.passo:nth-child(4n+1){border-top-color:var(--laranja-hall)}
.passo__n{font-family:var(--fonte-inst);font-weight:700;font-size:13px;letter-spacing:.18em;
  color:var(--texto-suave);display:block;margin-bottom:10px}
.passo h3{font-size:21px}
.passo p{font-size:15.5px;color:var(--texto-suave);margin:0}

/* ---------- Telma --------------------------------------------------------- */
.telma{display:grid;gap:clamp(32px,5vw,60px);grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  align-items:center}
@media (max-width:860px){.telma{grid-template-columns:1fr}}
.telma__foto{border-radius:var(--raio-card);overflow:hidden;border:1px solid var(--borda)}
.telma__cargo{font-family:var(--fonte-inst);font-weight:500;font-size:16px;letter-spacing:.01em;
  color:var(--texto-suave);margin:-.2em 0 1.1em}
.citacao{font-family:var(--fonte-inst);font-weight:500;font-size:clamp(19px,2.3vw,23px);
  line-height:1.42;letter-spacing:-.015em;border-left:3px solid var(--laranja-hall);
  padding-left:22px;margin:28px 0;color:var(--texto)}
.credenciais{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:9px}
.credenciais li{display:flex;gap:11px;align-items:flex-start;font-size:15.5px;color:var(--texto-suave)}
.credenciais li::before{content:"";flex:none;width:9px;height:9px;background:var(--laranja-hall);margin-top:8px}

/* ---------- Depoimentos --------------------------------------------------- */
.depo{background:var(--fundo-alt);border-radius:var(--raio-card);padding:28px 26px;position:relative}
.depo__aspas{font-family:var(--fonte-inst);font-weight:700;font-size:34px;line-height:1;
  color:var(--cinza-300);display:block;margin-bottom:10px}
.depo p{font-family:var(--fonte-inst);font-weight:500;font-size:18px;line-height:1.45;
  letter-spacing:-.012em;margin:0 0 20px}
.depo__quem{font-size:14px;line-height:1.4;color:var(--texto-suave)}
.depo__quem b{display:block;color:var(--texto);font-weight:600;font-size:15px}
.aviso-placeholder{border:2px dashed var(--ambar-prazo);background:rgba(232,164,0,.08);
  border-radius:var(--raio-card);padding:18px 20px;margin-bottom:28px;font-size:14.5px;line-height:1.55}
.aviso-placeholder b{font-family:var(--fonte-inst);letter-spacing:.02em}

/* ---------- FAQ ----------------------------------------------------------- */
.faq{max-width:840px;margin-inline:auto;border-top:1px solid var(--borda)}
.faq details{border-bottom:1px solid var(--borda)}
.faq summary{font-family:var(--fonte-inst);font-weight:600;font-size:clamp(17px,2vw,19px);
  letter-spacing:-.015em;padding:22px 44px 22px 0;cursor:pointer;position:relative;list-style:none;
  min-height:44px;display:flex;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:8px;top:50%;width:12px;height:12px;
  border-right:2px solid var(--laranja-hall);border-bottom:2px solid var(--laranja-hall);
  transform:translateY(-70%) rotate(45deg);transition:transform .18s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{padding:0 0 22px;margin:0;color:var(--texto-suave);font-size:16px;max-width:72ch}

/* ---------- Formulario ---------------------------------------------------- */
.form{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}
.form .full{grid-column:1/-1}
@media (max-width:620px){.form{grid-template-columns:1fr}}
.campo label{display:block;font-family:var(--fonte-inst);font-weight:600;font-size:13px;
  letter-spacing:.04em;margin-bottom:7px;color:var(--texto)}
.campo input,.campo textarea,.campo select{width:100%;font-family:var(--fonte-texto);font-size:16px;
  padding:13px 14px;border:1px solid var(--borda);border-radius:var(--raio-botao);
  background:var(--superficie);color:var(--texto);min-height:48px}
.campo textarea{min-height:120px;resize:vertical}
.campo input:focus,.campo textarea:focus{border-color:var(--azul-pilar);outline:3px solid var(--laranja-hall);outline-offset:1px}
.consent{display:flex;gap:11px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--texto-suave)}
.consent input{width:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--azul-pilar)}
.form-msg{border-radius:var(--raio-botao);padding:14px 16px;font-size:15px;display:none}
.form-msg[data-tipo="ok"]{display:block;background:rgba(27,138,90,.12);border-left:3px solid var(--verde-quitado)}
.form-msg[data-tipo="erro"]{display:block;background:rgba(211,47,47,.10);border-left:3px solid var(--vermelho-debito)}
.mel{position:absolute;left:-9999px;opacity:0;height:0;width:0}

/* ---------- Faixa CTA ----------------------------------------------------- */
.faixa{position:relative;overflow:hidden;background:var(--azul-pilar);color:#fff}

.faixa__in{position:relative;z-index:1}
.faixa h2{color:#fff}
.faixa p{color:#DDE6F3}

/* ---------- Rodape -------------------------------------------------------- */
.rodape{position:relative;overflow:hidden;background:var(--azul-noturno);color:#fff;
  padding-block:clamp(48px,7vw,72px) 120px}
.rodape__in{position:relative;z-index:1}
.rodape__grade{display:grid;gap:36px;grid-template-columns:1.35fr repeat(3,1fr);margin-bottom:44px}
@media (max-width:860px){.rodape__grade{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.rodape__grade{grid-template-columns:1fr}}
.rodape h3{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:#7FA3D1;
  font-weight:600;margin-bottom:16px}
.rodape ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.rodape a{color:#DDE6F3;text-decoration:none;font-size:15px}
.rodape a:hover{color:#fff;text-decoration:underline}
.rodape__assin{font-family:var(--fonte-inst);font-weight:500;font-size:18px;letter-spacing:-.01em;
  color:#fff;margin:14px 0 0}
.rodape__legal{border-top:1px solid #1E3C66;padding-block:22px 26px;display:flex;flex-wrap:wrap;
  gap:8px 22px;align-items:center;font-size:13px;color:#8FA4C0;position:relative;z-index:1}
.rodape__legal a{font-size:13px;color:#8FA4C0}


/* ---------- WhatsApp flutuante -------------------------------------------- */
.zap{position:fixed;right:18px;bottom:18px;z-index:120;width:58px;height:58px;border-radius:50%;
  background:#25D366;display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 16px rgba(0,0,0,.22);text-decoration:none;transition:transform .16s}
.zap:hover{transform:scale(1.06)}
.zap svg{width:31px;height:31px;color:#fff}
@media (max-width:520px){.zap{right:14px;bottom:14px;width:54px;height:54px}}

/* ---------- Cookies ------------------------------------------------------- */
.cookies{position:fixed;left:14px;right:14px;bottom:14px;z-index:130;max-width:560px;
  background:var(--superficie);border:1px solid var(--borda);border-radius:var(--raio-card);
  padding:20px 22px;box-shadow:0 8px 30px rgba(0,0,0,.16);display:none}
.cookies[data-visivel="true"]{display:block}
.cookies p{font-size:14.5px;line-height:1.55;margin:0 0 16px;color:var(--texto-suave)}
.cookies .btn-linha{gap:10px}
.cookies .btn{font-size:14px;padding:10px 18px;min-height:44px}
@media (max-width:520px){.zap{bottom:14px}.cookies{bottom:82px}}

/* ---------- Conteudo legal ------------------------------------------------ */
.legal{max-width:760px}
.legal h2{font-size:clamp(22px,3vw,28px);margin-top:2em}
.legal h3{font-size:19px;margin-top:1.6em}
.legal ul,.legal ol{padding-left:22px;color:var(--texto-suave)}
.legal li{margin-bottom:9px}
.legal p{color:var(--texto-suave)}
.legal table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:14.5px}
.legal th,.legal td{border:1px solid var(--borda);padding:11px 13px;text-align:left;vertical-align:top}
.legal th{font-family:var(--fonte-inst);font-weight:600;background:var(--fundo-alt)}

/* ---------- Blog ---------------------------------------------------------- */
.vazio{border:1px dashed var(--borda);border-radius:var(--raio-card);padding:44px 32px;text-align:center}
.vazio p{margin-inline:auto}

/* ---------- Utilitarios --------------------------------------------------- */
.centro{text-align:center;margin-inline:auto}
.centro p{margin-inline:auto}
.mt0{margin-top:0}.mb0{margin-bottom:0}
.limite{max-width:62ch}
.visualmente-oculto{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
