.elementor-10991 .elementor-element.elementor-element-1324359{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(min-width:768px){.elementor-10991 .elementor-element.elementor-element-1324359{--content-width:100%;}}/* Start custom CSS for html, class: .elementor-element-5848a10 */:root{
  --branco:#FFFFFF;
  --tinta:#0B3B5C;
  --azul:#1668A8;
  --azul-claro:#E8F1F8;
  --agua:#3FBFAE;
  --agua-clara:#E3F5F1;
  --grafite:#22333D;
  --cinza:#5E727E;
  --linha:#D7E4EC;
  --serif:'Fraunces',Georgia,serif;
  --sans:'Instrument Sans',system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--sans);
  color:var(--grafite);
  background:var(--branco);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 24px}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.12;letter-spacing:-.015em;color:var(--tinta)}
h2{font-size:clamp(28px,4vw,42px);margin-bottom:14px}
h3{font-size:22px;margin-bottom:8px}
p{max-width:66ch}
section{padding:88px 0}

/* ---------- topo ---------- */
.topo{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--linha);
}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;height:68px}
.marca{font-family:var(--serif);font-size:19px;color:var(--tinta);line-height:1.15}
.marca span{display:block;font-family:var(--sans);font-size:12px;color:var(--cinza);letter-spacing:.02em}

/* ---------- botões ---------- */
.zap{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--agua);color:#04302A;
  font-family:var(--sans);font-weight:600;font-size:16px;
  padding:14px 22px;border-radius:999px;text-decoration:none;
  border:1px solid transparent;
  transition:background .18s ease,transform .18s ease;
}
.zap:hover{background:#35a99a;transform:translateY(-1px)}
.zap:focus-visible{outline:3px solid var(--azul);outline-offset:3px}
.zap svg{width:19px;height:19px;flex:none;fill:currentColor}
.zap.pequeno{padding:10px 16px;font-size:14.5px}
.zap.contorno{background:transparent;color:var(--tinta);border-color:var(--tinta)}
.zap.contorno:hover{background:var(--azul-claro)}

/* ---------- hero ---------- */
.hero{padding:64px 0 72px;background:linear-gradient(180deg,var(--branco) 0%,var(--agua-clara) 100%)}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:48px 56px;align-items:center}
.hero .wrap>*{min-width:0}
.hero .cartao-grafico{grid-column:1/-1}

/* foto real preenchendo a moldura (vale para a hero e para o "Quem é") */
.foto-marca:has(img){padding:0;border:none;background:none;overflow:hidden}
.foto-marca img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.hero h1{font-size:clamp(34px,5.1vw,56px);margin-bottom:20px}
.hero .lede{font-size:19px;color:var(--cinza);margin-bottom:30px;max-width:46ch}
.hero-acoes{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.hero-nota{font-size:14px;color:var(--cinza);margin-top:18px}

/* cartão do gráfico */
.cartao-grafico{
  background:var(--branco);
  border:1px solid var(--linha);
  border-radius:20px;
  padding:22px 22px 16px;
  box-shadow:0 18px 40px -28px rgba(11,59,92,.45);
}
.cartao-grafico header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px}
.cartao-grafico h4{font-family:var(--serif);font-size:17px;font-weight:500;color:var(--tinta)}
.cartao-grafico .fonte{font-size:12.5px;color:var(--cinza)}
.cartao-grafico svg{width:100%;height:auto;display:block}
.legenda{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--cinza);margin-top:6px}
.legenda i{display:inline-block;width:16px;height:2px;border-radius:2px;vertical-align:middle;margin-right:5px}

.eixo{stroke:var(--linha);stroke-width:1}
.grade{stroke:#EDF3F7;stroke-width:1}
.rotulo{font-family:var(--sans);font-size:11px;fill:var(--cinza)}
.curva{fill:none;stroke-width:2;stroke-linecap:round}
.curva.p50{stroke:var(--azul);stroke-width:3.2}
.curva.borda{stroke:var(--agua);opacity:.55}
.curva.extremo{stroke:#A8C6D8;stroke-dasharray:5 5;opacity:.9}
.faixa{fill:var(--agua);opacity:.10}

/* ---------- credenciais ---------- */
.credenciais{background:var(--tinta);color:#DCEAF3;padding:0}
.credenciais .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14);border-right:1px solid rgba(255,255,255,.14)}
.cred{background:var(--tinta);padding:26px 22px}
.cred b{display:block;font-family:var(--serif);font-size:26px;color:var(--branco);font-weight:500;line-height:1.1}
.cred span{font-size:13.5px;color:#9FC0D4}

/* ---------- programa primeiro ano ---------- */
.pa-selo{display:inline-block;font-size:13.5px;color:var(--azul);border:1px solid #C9DEEE;border-radius:999px;padding:5px 12px;margin-bottom:16px}
.pa-painel{display:grid;grid-template-columns:1.02fr .98fr;border:1px solid var(--linha);border-radius:22px;overflow:hidden;margin-top:34px}
.pa-esq{padding:38px 36px;background:var(--branco)}
.pa-dir{padding:38px 36px;background:linear-gradient(165deg,var(--agua-clara) 0%,var(--azul-claro) 100%);border-left:1px solid var(--linha)}
.pa-esq p{font-size:16.5px;color:var(--cinza)}
.pa-total{display:flex;align-items:baseline;gap:14px;margin:26px 0 4px}
.pa-total b{font-family:var(--serif);font-weight:500;font-size:62px;line-height:1;color:var(--tinta)}
.pa-total span{font-size:16.5px;color:var(--cinza);max-width:16ch;line-height:1.35}
.pa-esq .zap{margin-top:26px}
.pa-dir h4{font-family:var(--serif);font-weight:500;font-size:18px;color:var(--tinta);margin-bottom:6px}
.pa-fase{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid rgba(11,59,92,.12)}
.pa-fase:last-of-type{border-bottom:none;padding-bottom:4px}
.pa-fase strong{display:block;font-weight:600;font-size:16px;color:var(--tinta)}
.pa-fase small{font-size:14.5px;color:var(--cinza);line-height:1.35}
.pa-pontos{display:flex;gap:6px;flex:none}
.pa-pontos i{
  width:13px;height:13px;border-radius:50%;background:var(--azul);
  opacity:0;transform:scale(.3);
  transition:opacity .3s ease,transform .45s cubic-bezier(.2,1.5,.4,1);
}
.pa-pontos i.on{opacity:1;transform:none}
.pa-bonus{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.bonus{
  border:1px solid var(--linha);border-radius:16px;
  padding:26px 24px;background:var(--branco);
}
.bonus-icone{
  display:flex;align-items:center;justify-content:center;
  width:46px;height:46px;border-radius:13px;
  background:var(--agua-clara);margin-bottom:16px;
}
.bonus-icone svg{
  width:24px;height:24px;fill:none;stroke:var(--azul);
  stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;
}
.bonus h4{font-family:var(--serif);font-weight:500;font-size:19px;color:var(--tinta);margin-bottom:6px}
.bonus p{font-size:15.5px;color:var(--cinza)}
.pa-nota{font-size:14.5px;color:var(--cinza);margin-top:30px;max-width:70ch}



.hero,.final,.locais{position:relative;isolation:isolate}
.hero>.wrap,.final>.wrap,.locais>.wrap{position:relative;z-index:2}

.hero::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22340%22%20height%3D%22340%22%20viewBox%3D%220%200%20340%20340%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%231668A8%22%20stroke-opacity%3D%220.30%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22translate%2848%2C52%29%22%3E%3Cpath%20d%3D%22M-9.6%204.4c-2.7%200-4.9-2-4.9-4.5%200-2.4%202-4.4%204.5-4.5C-9.3-7.7-6.4-10-2.9-10c3.6%200%206.6%202.6%207.2%206h.5c2.6%200%204.7%201.9%204.7%204.3s-2.1%204.1-4.7%204.1Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28196%2C92%29%22%3E%3Cpath%20d%3D%22M0%20-6C.9%20-1.7%201.7%20-.9%206%200%201.7%20.9%20.9%201.7%200%206-.9%201.7-1.7%20.9-6%200-1.7-.9-.9-1.7%200-6Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28296%2C164%29%22%3E%3Cpath%20d%3D%22M-4.6%200h9.2M0%20-4.6v9.2%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28120%2C200%29%22%3E%3Cpath%20d%3D%22M0%206.4C-7.2%201.5-8.8%20-1.7-7%20-4.3c1.8-2.8%205.4-2.1%207%20.6%201.6-2.7%205.2-3.4%207-.6C8.8%20-1.7%207.2%201.5%200%206.4Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28252%2C268%29%20scale%28.92%29%22%3E%3Cpath%20d%3D%22M-9.6%204.4c-2.7%200-4.9-2-4.9-4.5%200-2.4%202-4.4%204.5-4.5C-9.3-7.7-6.4-10-2.9-10c3.6%200%206.6%202.6%207.2%206h.5c2.6%200%204.7%201.9%204.7%204.3s-2.1%204.1-4.7%204.1Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%2864%2C290%29%22%3E%3Cpath%20d%3D%22M3.8%20-7.4A7.6%207.6%200%201%200%203.8%207.4%208.8%208.8%200%200%201%203.8%20-7.4Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28316%2C44%29%22%3E%3Cellipse%20cx%3D%220%22%20cy%3D%220%22%20rx%3D%225.2%22%20ry%3D%226.4%22%2F%3E%3Cpath%20d%3D%22M0%206.4v2.8M-1.5%2012c1.5-.9%201.5-1.6%201.5-2.4%200%20.8%200%201.5%201.5%202.4%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28156%2C326%29%20scale%28.8%29%22%3E%3Cpath%20d%3D%22M0%20-6C.9%20-1.7%201.7%20-.9%206%200%201.7%20.9%20.9%201.7%200%206-.9%201.7-1.7%20.9-6%200-1.7-.9-.9-1.7%200-6Z%22%2F%3E%3C%2Fg%3E%3Ccircle%20cx%3D%22196%22%20cy%3D%22212%22%20r%3D%222.2%22%2F%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%22164%22%20r%3D%222.2%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") repeat;background-size:340px 340px;
  -webkit-mask-image:radial-gradient(115% 95% at 34% 48%,transparent 34%,#000 78%);
  mask-image:radial-gradient(115% 95% at 34% 48%,transparent 34%,#000 78%);
}
.final::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22340%22%20height%3D%22340%22%20viewBox%3D%220%200%20340%20340%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%231668A8%22%20stroke-opacity%3D%220.30%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22translate%2848%2C52%29%22%3E%3Cpath%20d%3D%22M-9.6%204.4c-2.7%200-4.9-2-4.9-4.5%200-2.4%202-4.4%204.5-4.5C-9.3-7.7-6.4-10-2.9-10c3.6%200%206.6%202.6%207.2%206h.5c2.6%200%204.7%201.9%204.7%204.3s-2.1%204.1-4.7%204.1Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28196%2C92%29%22%3E%3Cpath%20d%3D%22M0%20-6C.9%20-1.7%201.7%20-.9%206%200%201.7%20.9%20.9%201.7%200%206-.9%201.7-1.7%20.9-6%200-1.7-.9-.9-1.7%200-6Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28296%2C164%29%22%3E%3Cpath%20d%3D%22M-4.6%200h9.2M0%20-4.6v9.2%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28120%2C200%29%22%3E%3Cpath%20d%3D%22M0%206.4C-7.2%201.5-8.8%20-1.7-7%20-4.3c1.8-2.8%205.4-2.1%207%20.6%201.6-2.7%205.2-3.4%207-.6C8.8%20-1.7%207.2%201.5%200%206.4Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28252%2C268%29%20scale%28.92%29%22%3E%3Cpath%20d%3D%22M-9.6%204.4c-2.7%200-4.9-2-4.9-4.5%200-2.4%202-4.4%204.5-4.5C-9.3-7.7-6.4-10-2.9-10c3.6%200%206.6%202.6%207.2%206h.5c2.6%200%204.7%201.9%204.7%204.3s-2.1%204.1-4.7%204.1Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%2864%2C290%29%22%3E%3Cpath%20d%3D%22M3.8%20-7.4A7.6%207.6%200%201%200%203.8%207.4%208.8%208.8%200%200%201%203.8%20-7.4Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28316%2C44%29%22%3E%3Cellipse%20cx%3D%220%22%20cy%3D%220%22%20rx%3D%225.2%22%20ry%3D%226.4%22%2F%3E%3Cpath%20d%3D%22M0%206.4v2.8M-1.5%2012c1.5-.9%201.5-1.6%201.5-2.4%200%20.8%200%201.5%201.5%202.4%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28156%2C326%29%20scale%28.8%29%22%3E%3Cpath%20d%3D%22M0%20-6C.9%20-1.7%201.7%20-.9%206%200%201.7%20.9%20.9%201.7%200%206-.9%201.7-1.7%20.9-6%200-1.7-.9-.9-1.7%200-6Z%22%2F%3E%3C%2Fg%3E%3Ccircle%20cx%3D%22196%22%20cy%3D%22212%22%20r%3D%222.2%22%2F%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%22164%22%20r%3D%222.2%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") repeat;background-size:340px 340px;
  -webkit-mask-image:radial-gradient(70% 100% at 50% 50%,transparent 42%,#000 88%);
  mask-image:radial-gradient(70% 100% at 50% 50%,transparent 42%,#000 88%);
}
.locais::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22340%22%20height%3D%22340%22%20viewBox%3D%220%200%20340%20340%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%239FD4EE%22%20stroke-opacity%3D%220.20%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22translate%2848%2C52%29%22%3E%3Cpath%20d%3D%22M-9.6%204.4c-2.7%200-4.9-2-4.9-4.5%200-2.4%202-4.4%204.5-4.5C-9.3-7.7-6.4-10-2.9-10c3.6%200%206.6%202.6%207.2%206h.5c2.6%200%204.7%201.9%204.7%204.3s-2.1%204.1-4.7%204.1Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28196%2C92%29%22%3E%3Cpath%20d%3D%22M0%20-6C.9%20-1.7%201.7%20-.9%206%200%201.7%20.9%20.9%201.7%200%206-.9%201.7-1.7%20.9-6%200-1.7-.9-.9-1.7%200-6Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28296%2C164%29%22%3E%3Cpath%20d%3D%22M-4.6%200h9.2M0%20-4.6v9.2%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28120%2C200%29%22%3E%3Cpath%20d%3D%22M0%206.4C-7.2%201.5-8.8%20-1.7-7%20-4.3c1.8-2.8%205.4-2.1%207%20.6%201.6-2.7%205.2-3.4%207-.6C8.8%20-1.7%207.2%201.5%200%206.4Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28252%2C268%29%20scale%28.92%29%22%3E%3Cpath%20d%3D%22M-9.6%204.4c-2.7%200-4.9-2-4.9-4.5%200-2.4%202-4.4%204.5-4.5C-9.3-7.7-6.4-10-2.9-10c3.6%200%206.6%202.6%207.2%206h.5c2.6%200%204.7%201.9%204.7%204.3s-2.1%204.1-4.7%204.1Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%2864%2C290%29%22%3E%3Cpath%20d%3D%22M3.8%20-7.4A7.6%207.6%200%201%200%203.8%207.4%208.8%208.8%200%200%201%203.8%20-7.4Z%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28316%2C44%29%22%3E%3Cellipse%20cx%3D%220%22%20cy%3D%220%22%20rx%3D%225.2%22%20ry%3D%226.4%22%2F%3E%3Cpath%20d%3D%22M0%206.4v2.8M-1.5%2012c1.5-.9%201.5-1.6%201.5-2.4%200%20.8%200%201.5%201.5%202.4%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28156%2C326%29%20scale%28.8%29%22%3E%3Cpath%20d%3D%22M0%20-6C.9%20-1.7%201.7%20-.9%206%200%201.7%20.9%20.9%201.7%200%206-.9%201.7-1.7%20.9-6%200-1.7-.9-.9-1.7%200-6Z%22%2F%3E%3C%2Fg%3E%3Ccircle%20cx%3D%22196%22%20cy%3D%22212%22%20r%3D%222.2%22%2F%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%22164%22%20r%3D%222.2%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") repeat;background-size:380px 380px;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 55%);
  mask-image:linear-gradient(180deg,transparent 0%,#000 55%);
}

/* ---------- bordas orgânicas entre seções ----------
   Cada passagem recebe uma curva diferente, para a repetição
   não virar carimbo. */
.locais,#atendimento,#duvidas,.final{position:relative;padding-top:128px}
#atendimento>.wrap,#duvidas>.wrap{position:relative;z-index:2}
.locais::before,#atendimento::before,#duvidas::before,.final::before{
  content:"";position:absolute;top:0;left:0;right:0;height:64px;z-index:1;
  background-repeat:no-repeat;background-position:top center;background-size:100% 100%;
  pointer-events:none;
}
.locais::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%2064%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%200h1440v26c-240%2034-360-14-600%204S240%2066%200%2034Z%22%20fill%3D%22%23E8F1F8%22%2F%3E%3C%2Fsvg%3E")}
#atendimento::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%2064%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%200h1440v18c-260%2044-430-18-700%202S230%2074%200%2044Z%22%20fill%3D%22%23FFFFFF%22%2F%3E%3C%2Fsvg%3E")}
#duvidas::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%2064%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%200h1440v46c-190-30-390%2026-660%2020S250%204%200%2038Z%22%20fill%3D%22%230B3B5C%22%2F%3E%3C%2Fsvg%3E")}
.final::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%2064%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%200h1440v34c-300%2030-490-24-760-6S240%2060%200%2020Z%22%20fill%3D%22%23FFFFFF%22%2F%3E%3C%2Fsvg%3E")}

/* ---------- marcação de foto (placeholder) ---------- */
.hero-visual{display:grid;gap:22px}
.foto-marca{
  position:relative;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:10px;
  text-align:center;padding:26px;
  border:2px dashed var(--agua);border-radius:20px;
  background:linear-gradient(160deg,var(--agua-clara) 0%,var(--azul-claro) 100%);
}
.foto-marca svg{width:40px;height:40px;fill:none;stroke:var(--azul);stroke-width:1.5;stroke-linecap:round;opacity:.75}
.foto-marca b{font-family:var(--serif);font-weight:500;font-size:18px;color:var(--tinta)}
.foto-marca span{font-size:13px;color:var(--cinza);max-width:34ch;line-height:1.4}
.proporcao-43{aspect-ratio:8/10}
.proporcao-34{aspect-ratio:3/4}

/* ---------- quem é o médico ---------- */
.sobre{display:grid;grid-template-columns:.82fr 1.18fr;gap:46px;align-items:center}
.sobre-texto h2{margin-bottom:18px}
.sobre-texto p{font-size:17px;color:var(--cinza);margin-bottom:16px;max-width:60ch}
.sobre-cred{
  display:grid;grid-template-columns:repeat(2,1fr);gap:20px 24px;
  margin-top:28px;padding-top:26px;border-top:1px solid var(--linha);
}
.sobre-cred b{display:block;font-family:var(--serif);font-weight:500;font-size:24px;color:var(--tinta);line-height:1.1}
.sobre-cred span{font-size:14px;color:var(--cinza)}

/* ---------- áreas ---------- */
.duas{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:38px}
.area{border:1px solid var(--linha);border-radius:18px;padding:30px;background:var(--branco)}
.area.destaque{background:var(--azul-claro);border-color:#C9DEEE}
.area ul{list-style:none;margin-top:16px}
.area li{position:relative;padding-left:26px;margin-bottom:10px;font-size:16.5px}
.area li::before{
  content:"";position:absolute;left:0;top:9px;width:12px;height:12px;
  border-radius:50%;border:3px solid var(--agua);
}
.rqe{display:inline-block;margin-top:18px;font-size:13.5px;color:var(--azul);border:1px solid #C9DEEE;border-radius:999px;padding:5px 12px}

/* ---------- jornada ---------- */
.passos{counter-reset:p;margin-top:38px;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.passo{position:relative;padding-top:52px}
.passo::before{
  counter-increment:p;content:counter(p);
  position:absolute;top:0;left:0;
  width:38px;height:38px;border-radius:50%;
  background:var(--tinta);color:var(--branco);
  font-family:var(--serif);font-size:19px;
  display:flex;align-items:center;justify-content:center;
}
.passo::after{
  content:"";position:absolute;top:19px;left:46px;right:-14px;height:1px;background:var(--linha);
}
.passo:last-child::after{display:none}
.passo h3{font-size:19px}
.passo p{font-size:16px;color:var(--cinza)}

/* ---------- locais ---------- */
.locais{background:var(--tinta);color:#D5E7F2}
.locais h2{color:var(--branco)}
.locais .sub{color:#9FC0D4;max-width:56ch}
.grade-locais{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:38px}
.local{border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:30px;background:rgba(255,255,255,.045)}
.local h3{color:var(--branco);font-size:24px;margin-bottom:6px}
.local .end{color:#B7D2E3;font-size:16px;margin-bottom:22px}
.local .cidade{font-size:13px;color:var(--agua);margin-bottom:14px}

/* ---------- perguntas ---------- */
.faq{margin-top:34px;border-top:1px solid var(--linha);max-width:1120px}
details{border-bottom:1px solid var(--linha)}
summary{
  list-style:none;cursor:pointer;padding:22px 40px 22px 0;position:relative;
  font-family:var(--serif);font-size:20px;color:var(--tinta);
}
summary::-webkit-details-marker{display:none}
summary::after{
  content:"";position:absolute;right:8px;top:31px;
  width:11px;height:11px;border-right:2px solid var(--azul);border-bottom:2px solid var(--azul);
  transform:rotate(45deg);transition:transform .25s ease;
}
details[open] summary::after{transform:rotate(-135deg)}
details .resp{padding:0 0 24px;color:var(--cinza);font-size:16.5px;animation:abre .3s ease}
@keyframes abre{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* ---------- cta final ---------- */
.final{background:var(--agua-clara);text-align:center}
.final p{margin:0 auto 28px;color:var(--cinza);font-size:18px}
.final .zap{font-size:18px;padding:17px 30px}

/* ---------- rodapé ---------- */
footer{padding:40px 0;border-top:1px solid var(--linha);font-size:14px;color:var(--cinza)}
footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

/* ---------- entrada ---------- */
.rev{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.rev.on{opacity:1;transform:none}

/* ---------- responsivo ---------- */
@media (max-width:900px){
  .hero .wrap{grid-template-columns:1fr;gap:38px}
  .credenciais .wrap{grid-template-columns:1fr 1fr}
  .duas,.grade-locais{grid-template-columns:1fr}
  .pa-painel{grid-template-columns:1fr}
  .pa-dir{border-left:none;border-top:1px solid var(--linha)}
  .pa-bonus{grid-template-columns:1fr 1fr}
  .passos{grid-template-columns:1fr 1fr;gap:28px}
  .passo::after{display:none}
}
@media (max-width:600px){
  body{font-size:16px}
  section{padding:64px 0}
  .topo .marca span{display:none}
  .passos{grid-template-columns:1fr}
  .pa-esq,.pa-dir{padding:28px 20px}
  .pa-bonus{grid-template-columns:1fr}
  .pa-total b{font-size:52px}
  .pa-fase{flex-direction:column;align-items:flex-start;gap:12px}
  .hero-acoes{width:100%}
  .hero-acoes .zap{flex:1;justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
  .rev{opacity:1;transform:none}
}


/* rede de segurança geral */
html,body{overflow-x:hidden;max-width:100%}
img,svg{max-width:100%}
h1,h2,h3,h4,p,summary,li,small,strong,span,b,a{overflow-wrap:break-word;word-break:normal;hyphens:auto}

@media (max-width:900px){
  /* os dois botões do topo do hero passam a ocupar a linha inteira */
  .hero-acoes .zap{flex:1 1 100%;justify-content:center}
}

@media (max-width:600px){
  .wrap{padding:0 18px}

  /* cabeçalho fixo: nome e botão não se empurram mais */
  .topo .wrap{gap:10px}
  .topo .marca{font-size:16px;min-width:0}
  .topo .zap.pequeno{padding:9px 14px;font-size:13.5px;white-space:nowrap;flex:none}

  /* faixa de credenciais */
  .cred{padding:20px 16px}
  .cred b{font-size:21px}
  .cred span{font-size:12.5px}

  /* programa primeiro ano */
  .pa-total{flex-wrap:wrap;gap:10px}
  .pa-total span{max-width:100%}
  .pa-esq .zap,.local .zap,.final .zap{width:100%;justify-content:center}
  .pa-pontos{flex-wrap:wrap}

  /* perguntas frequentes: título e resposta sempre dentro da tela */
  summary{font-size:17.5px;padding:18px 34px 18px 0;line-height:1.3}
  summary::after{top:26px;right:4px;width:9px;height:9px}
  details .resp{font-size:15.5px;padding-bottom:20px}

  /* rodapé e endereços */
  footer .wrap{flex-direction:column;gap:10px}
  footer{font-size:13px}
  .local{padding:24px 20px}
  .local h3{font-size:21px}
  .area{padding:24px 20px}
}

@media (max-width:380px){
  .credenciais .wrap{grid-template-columns:1fr}
  .cred b{font-size:22px}
  .hero h1{font-size:30px}
  .topo .marca{font-size:15px}
}

@media (max-width:600px){
  /* textos de botão longos cabem em uma linha só */
  .final .zap{font-size:16px;padding:16px 22px}
  .pa-esq .zap{font-size:15px}
}

@media (max-width:900px){
  .sobre{grid-template-columns:1fr;gap:32px}
  .sobre .foto-marca{max-width:400px}
}

@media (max-width:600px){
  /* em telas estreitas a altura passa a mandar na marcação,
     evitando que a proporção fixa force uma largura maior que a tela */
  .hero-visual>*,.sobre>*{min-width:0}
  .foto-marca{padding:20px}
  .foto-marca.proporcao-43,.foto-marca.proporcao-34{aspect-ratio:auto;min-height:230px}
  .foto-marca b{font-size:16.5px}
  .foto-marca span{font-size:12.5px}
  .sobre-cred{gap:16px 18px}
  .sobre-cred b{font-size:20px}
  .sobre-texto p{font-size:16px}
}

@media (max-width:600px){
  .hero::after,.final::after{background-size:230px 230px}
  .locais::after{background-size:250px 250px}
  .locais,#atendimento,#duvidas,.final{padding-top:94px}
  .locais::before,#atendimento::before,#duvidas::before,.final::before{height:38px}
}

/* ---------- outros atendimentos ---------- */
.mais-bloco{margin-top:56px}
.mais-bloco h3{font-size:26px}
.mais-bloco p{color:var(--cinza);font-size:17px}
.mais{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:26px}
.mais-nota{font-size:14.5px;color:var(--cinza);margin-top:24px;max-width:70ch}
@media (max-width:900px){.mais{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.mais{grid-template-columns:1fr}.mais-bloco{margin-top:44px}}

/* não quebrar palavras: só passa para a linha de baixo a palavra inteira */
h1,h2,h3,h4,p,summary,li,small,strong,span,b,a{
  -webkit-hyphens:manual;
  hyphens:manual;
  overflow-wrap:normal;
  word-break:normal;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4a024d0 *//* garante que não vai surgir barra horizontal */
html, body { overflow-x: hidden; }

.btn-whatsapp{
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 9999;

  background-color: rgb(37, 211, 102);
  width: 60px;
  height: 60px;
  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #fff;
  font-size: 28px;
  text-decoration: none;
}

.btn-whatsapp:before,
.btn-whatsapp:after{
  content: '';
  position: absolute;
  border-radius: 50%;
  border: 1px solid #25d366;
  inset: -20px;              /* no lugar de left/right/top/bottom */
  animation: animate 1.5s linear infinite;
  opacity: 0;
  pointer-events: none;
}

.pulsaDelay:after{ animation-delay: 0.5s; }

@keyframes animate{
  0%{ transform: scale(0.5); opacity: 0; }
  50%{ opacity: 1; }
  100%{ transform: scale(1.2); opacity: 0; }
}/* End custom CSS */