/* Seções de conteúdo: componentes com largura, ritmo e tipografia comuns. */
:root { --section-space: 80px; --section-title: clamp(30px, 3vw, 42px); --surface-border: #dfe7d9; }
.pag_lp #interna :is(#jessicaramalho,#conheca,#selos,#oquedizem,#servicos,#parceiros,#mensagem2) {
  padding: var(--section-space) 24px;
}
.pag_lp #interna :is(#jessicaramalho,#conheca,#selos,#oquedizem,#servicos,#parceiros,#mensagem2) > .container { padding: 0; margin: 0 auto; max-width: 1120px; }
.pag_lp #interna #selos, .pag_lp #interna #servicos { margin: 0; }
.pag_lp #interna #servicos.lp .container,
.pag_lp #interna #dados.vantagens > .container { margin: 0 auto; }
.pag_lp #interna :is(#conheca,#selos,#oquedizem,#servicos,#parceiros) h3 {
  font: 700 var(--section-title)/1.15 Acuidar, Arial, sans-serif;
  letter-spacing: -.5px;
  text-wrap: balance;
  margin: 0 auto 36px;
}
.pag_lp #interna :is(#conheca,#selos,#parceiros) h5 {
  font: 700 12px/1.4 Acuidar, Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin: 0 0 12px;
  color: var(--green);
}
.pag_lp #interna :is(#oquedizem,#servicos,#parceiros) > .container > .text-center > br,
.pag_lp #interna #parceiros > .container > br { display: none; }
/* A história da fundadora, com espaço para a leitura. */
.pag_lp #interna #jessicaramalho { background: #fff; }
.pag_lp #interna #jessicaramalho .bloco { padding: 40px; border-radius: 24px; background: var(--paper); }
.pag_lp #interna #jessicaramalho .bloco > .row { display: grid; grid-template-columns: .85fr 1.15fr; gap: 40px; margin: 0; align-items: center; }
.pag_lp #interna #jessicaramalho .bloco > .row > div { padding: 0; max-width: none; }
.pag_lp #interna #jessicaramalho .bloco > .row > div > br { display: none; }
.pag_lp #interna #jessicaramalho .imagem { margin: 0 auto 24px; max-width: 340px; }
.pag_lp #interna #jessicaramalho .imagem img { width: 100%; height: auto; }
.pag_lp #interna #jessicaramalho .bloco p { font-size: 18px; line-height: 1.55; margin: 0 0 16px; }
.pag_lp #interna #jessicaramalho .bloco p:last-child { margin-bottom: 0; }
.pag_lp #interna #jessicaramalho .bloco p strong { font-family: Acuidar, Arial, sans-serif; font-size: inherit; }
.pag_lp #interna #jessicaramalho .bloco .autor { font-size: 15px; line-height: 1.4; }
.pag_lp #interna #jessicaramalho .bloco .autor strong { font-size: 16px; }
/* Convite ao atendimento. */
.pag_lp #interna #conheca { background: var(--ink); }
.pag_lp #interna #conheca h5 { color: #c5dcb1; }
.pag_lp #interna #conheca h3 { color: #fff; max-width: 640px; margin-bottom: 28px; }
.pag_lp #interna #conheca .container > .text-center { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }
.pag_lp #interna #conheca :is(#btn_solicitar_visita,#btn_mais_informacoes) {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  border-radius: 10px; padding: 16px 22px; margin: 0;
  font: 700 15px/1.4 Acuidar, Arial, sans-serif; min-height: 52px;
}
.pag_lp #interna #conheca #btn_solicitar_visita { background: var(--gold); color: var(--ink); border: 1px solid var(--gold); }
.pag_lp #interna #conheca #btn_mais_informacoes { color: #fff; border: 1px solid #96b2a5; background: transparent; }
.pag_lp #interna #conheca #btn_mais_informacoes:hover { background: #ffffff15; }
#conheca .action-whatsapp { margin: 0; }
/* Selos distribuídos em uma grade de superfícies iguais. */
.pag_lp #interna #selos { background: var(--paper); text-align: center; }
.pag_lp #interna #selos .award-proof {
  max-width: 760px;
  margin: -8px auto 36px;
  padding: 24px 32px;
  background: #fff;
  border: 1px solid var(--surface-border);
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(16, 61, 53, .06);
}
.pag_lp #interna #selos .award-proof-title {
  margin: 0 0 10px;
  color: var(--ink);
  font: 700 clamp(22px, 2.1vw, 30px)/1.2 Acuidar, Arial, sans-serif;
  text-wrap: balance;
}
.pag_lp #interna #selos .award-proof-heading {
  display: grid;
  grid-template-columns: 42px minmax(0, 620px);
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 10px;
}
.pag_lp #interna #selos .award-proof-heading .award-proof-title { width: auto; min-width: 0; margin: 0; }
.pag_lp #interna #selos .verified-seal {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  fill: var(--button-green, #527c2b);
}
.pag_lp #interna #selos .verified-check {
  fill: none;
  stroke: #fff;
  stroke-width: 3.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.pag_lp #interna #selos .award-proof-description {
  max-width: 650px;
  margin: 0 auto;
  color: #4f6358;
  font: 400 17px/1.5 Acuidar, Arial, sans-serif;
  text-wrap: balance;
}
.pag_lp #interna #selos > .row { margin: 0 auto; max-width: 1120px; }
.pag_lp #interna #selos > .row > div { flex: 1; max-width: 100%; padding: 0; }
.pag_lp #interna #selos .row.text-center { display: grid; grid-template-columns: 1.6fr 1fr .8fr 1.4fr 1fr; gap: 16px; margin: 0; align-items: stretch; }
.pag_lp #interna #selos .row.text-center > div { display: grid !important; place-items: center; max-width: none; padding: 20px 14px; background: #fff; border: 1px solid var(--surface-border); border-radius: 14px; }
.pag_lp #interna #selos .row.text-center > .visivel_mobile { display: none !important; }
.pag_lp #interna #selos .row.text-center img { display: block; max-width: 100%; width: auto; height: 94px; object-fit: contain; }
/* Depoimento: vídeo e relato com o mesmo peso visual. */
.pag_lp #interna #oquedizem { background: #fff; padding-bottom: 32px; }
.pag_lp #interna #oquedizem > .container > .row { display: grid; grid-template-columns: 1fr 1.15fr; gap: 32px; margin: 0; align-items: center; }
.pag_lp #interna #oquedizem > .container > .row > div { max-width: none; padding: 0; }
.pag_lp #interna #oquedizem > .container > .row > .col-lg-1 { display: none; }
.pag_lp #interna #oquedizem br { display: none; }
.pag_lp #interna #oquedizem h3 br { display: initial; }
.pag_lp #interna #oquedizem .imagem_video { padding: 0; }
.pag_lp #interna #oquedizem .imagem_video .sombra { display: none; }
.pag_lp #interna #oquedizem .video { aspect-ratio: 16 / 9; padding: 0; height: auto; border-radius: 18px; background: var(--ink); overflow: hidden; }
.pag_lp #interna #oquedizem .video iframe { width: 100%; height: 100%; position: absolute; inset: 0; }
.pag_lp #interna #oquedizem .video > img { width: 100%; height: 100%; object-fit: cover; }
.lite-youtube { position: relative; z-index: 0; display: block; width: 100%; padding: 0; border: 0; cursor: pointer; overflow: hidden; }
.lite-youtube > img { display: block; width: 100%; height: 100%; object-fit: cover; position: relative; z-index: 0; }
.video-play { position: absolute; z-index: 20; inset: 50% auto auto 50%; width: 68px; height: 48px; transform: translate(-50%, -50%); filter: drop-shadow(0 3px 10px rgba(0,0,0,.45)); transition: transform .18s ease; pointer-events: none; }
.video-play svg { display: block; width: 100%; height: 100%; }
.video-play-bg { fill: #ff0000; }
.video-play-icon { fill: #fff; }
.lite-youtube:hover .video-play-bg { fill: #ff1a1a; }
.lite-youtube:hover .video-play { transform: translate(-50%, -50%) scale(1.06); }
.lite-youtube:focus-visible { outline: 3px solid #fff; outline-offset: -5px; }
.pag_lp #interna #oquedizem .bloco { padding: 28px; border-radius: 20px; border: 1px solid var(--surface-border); background: var(--paper); box-shadow: none; }
.pag_lp #interna #oquedizem .bloco > .row { display: grid; grid-template-columns: 112px 1fr; gap: 24px; margin: 0; align-items: start; }
.pag_lp #interna #oquedizem .bloco > .row > div { max-width: none; padding: 0; }
.pag_lp #interna #oquedizem .bloco .imagem img { width: 112px; height: 112px; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 12px; }
.pag_lp #interna #oquedizem .bloco p { font: 400 18px/1.5 Acuidar, Arial, sans-serif; color: var(--ink); }
.pag_lp #interna #oquedizem .bloco .autor { font-size: 14px; margin: 20px 0 0; padding-top: 16px; border-top: 1px solid #cfdac8; }
.pag_lp #interna #oquedizem .bloco .autor strong { display: block; font: 700 18px/1.4 Acuidar, Arial, sans-serif; }
.pag_lp #interna :is(#jessicaramalho,#oquedizem) .aspas_inicio { display: none; }
/* Cinco serviços, cada um com foto e conteúdo completos. */
.pag_lp #interna #servicos.lp { background: var(--paper); }
.pag_lp #interna #servicos > .container > .row { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px; margin: 0; }
.pag_lp #interna #servicos > .container > .row > div { display: none !important; }
.pag_lp #interna #servicos > .container > .row > .invisivel_mobile:has(.servico) { display: block !important; grid-column: span 2; padding: 0; max-width: none; }
.pag_lp #interna #servicos > .container > .row > .invisivel_mobile:nth-last-of-type(5) { grid-column: 2 / span 2; }
.pag_lp #interna #servicos.lp .servico { height: 100%; margin: 0; padding: 0 0 24px; background: #fff; border: 1px solid var(--surface-border); border-radius: 18px; overflow: hidden; }
.pag_lp #interna #servicos.lp .servico .imagem { margin: 0 0 22px; }
.pag_lp #interna #servicos.lp .servico .imagem img { width: 100%; height: auto; aspect-ratio: 1.6; object-fit: cover; border-radius: 0; box-shadow: none; }
.pag_lp #interna #servicos.lp .servico h4 { font: 700 24px/1.2 Acuidar, Arial, sans-serif; margin: 0 24px 12px; }
.pag_lp #interna #servicos.lp .servico p { font: 400 17px/1.5 Acuidar, Arial, sans-serif; margin: 0 24px; color: #4f6358; }
/* Parceiros: logos sem recorte e sem grandes espaços vazios. */
.pag_lp #interna #parceiros { background: #fff; padding-bottom: 32px; }
.pag_lp #interna #parceiros h3 { max-width: 740px; }
.pag_lp #interna #parceiros > .container > .row { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; margin: 0; }
.pag_lp #interna #parceiros .parceiro { display: grid; place-items: center; max-width: none; margin: 0; padding: 20px; border: 1px solid var(--surface-border); border-radius: 12px; background: #fff; }
.pag_lp #interna #parceiros .parceiro img { width: 100%; height: 72px; object-fit: contain; }
/* Conclusão e botões consistentes. */
.pag_lp #interna #mensagem2 { background: var(--ink) url('assets/optimized/dalia-bg.webp') center / cover; text-align: center; }
.pag_lp #interna #mensagem2 > .container { max-width: 820px; }
.pag_lp #interna #mensagem2 h3 { font: 400 clamp(24px, 2.4vw, 30px)/1.4 Acuidar, Arial, sans-serif; color: #fff; margin: 0 0 20px; text-wrap: balance; }
.pag_lp #interna #mensagem2 h3 strong { font-family: inherit; font-weight: 700; }
.pag_lp #interna #mensagem2 br { display: none; }
.pag_lp #interna #mensagem2 #btn_mais_informacoes2 { display: inline-flex; gap: 10px; align-items: center; justify-content: center; padding: 17px 26px; min-height: 52px; margin-top: 12px; font: 700 17px/1.4 Acuidar, Arial, sans-serif; }
.section-cta { padding: 24px 24px 48px; }
#conheca + .section-cta { background: var(--ink); padding-top: 0; }
.pag_lp #interna #dados.vantagens .section-cta { background: transparent; padding: 36px 0 0; }
#conheca + .section-cta .cta { background: transparent; color: #fff !important; border: 1px solid #96b2a5; }
.pag_lp #rodape { padding: 32px 24px; }
.pag_lp #rodape .container { max-width: 1000px; }
.pag_lp #rodape p { color: #dae5db; font-size: 13px; line-height: 1.6; }
.pag_lp #rodape a { color: #dae5db; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 991px) {
  :root { --section-space: 56px; }
  .pag_lp #interna #jessicaramalho .bloco { padding: 28px; }
  .pag_lp #interna #jessicaramalho .bloco > .row { grid-template-columns: 1fr; gap: 28px; }
  .pag_lp #interna #jessicaramalho .imagem { max-width: 260px; }
  .pag_lp #interna #oquedizem > .container > .row { grid-template-columns: 1fr; max-width: 680px; margin: auto; gap: 24px; }
  .pag_lp #interna #servicos > .container > .row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pag_lp #interna #servicos > .container > .row > .invisivel_mobile:has(.servico) { grid-column: auto; }
  .pag_lp #interna #parceiros > .container > .row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pag_lp #interna #selos .row.text-center { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
  :root { --section-space: 40px; }
  .pag_lp #interna :is(#jessicaramalho,#conheca,#selos,#oquedizem,#servicos,#parceiros,#mensagem2) { padding-left: 20px; padding-right: 20px; }
  .pag_lp #interna :is(#conheca,#selos,#oquedizem,#servicos,#parceiros) h3 { margin-bottom: 28px; }
  .pag_lp #interna #jessicaramalho .bloco { padding: 24px; border-radius: 18px; }
  .pag_lp #interna #jessicaramalho .bloco p { font-size: 17px; }
  .pag_lp #interna #jessicaramalho .imagem { max-width: 220px; }
  .pag_lp #interna #conheca :is(#btn_solicitar_visita,#btn_mais_informacoes) { width: 100%; font-size: 14px; padding: 15px 12px; }
  .pag_lp #interna #selos .row.text-center { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .pag_lp #interna #selos .award-proof { margin-bottom: 28px; padding: 20px; border-radius: 14px; }
  .pag_lp #interna #selos .award-proof-title { font-size: 23px; }
  .pag_lp #interna #selos .award-proof-heading { grid-template-columns: 34px minmax(0, 300px); align-items: flex-start; gap: 6px; }
  .pag_lp #interna #selos .verified-seal { width: 34px; height: 34px; flex-basis: 34px; }
  .pag_lp #interna #selos .award-proof-description { font-size: 16px; line-height: 1.45; }
  .pag_lp #interna #selos .row.text-center > div:first-child { grid-column: 1 / -1; }
  .pag_lp #interna #selos .row.text-center img { height: 82px; }
  .pag_lp #interna #oquedizem .bloco { padding: 24px; }
  .pag_lp #interna #oquedizem .bloco > .row { grid-template-columns: 1fr; gap: 20px; }
  .pag_lp #interna #oquedizem .bloco .imagem { text-align: left; }
  .pag_lp #interna #oquedizem .bloco .imagem img { width: 100px; height: 100px; }
  .pag_lp #interna #oquedizem .bloco p { font-size: 17px; }
  .pag_lp #interna #servicos > .container > .row { grid-template-columns: 1fr; gap: 20px; }
  .pag_lp #interna #servicos.lp .servico h4 { font-size: 23px; }
  .pag_lp #interna #servicos.lp .servico p { font-size: 16px; }
  .pag_lp #interna #parceiros > .container > .row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .pag_lp #interna #parceiros .parceiro { padding: 16px; }
  .pag_lp #interna #parceiros .parceiro img { height: 60px; }
  .section-cta { padding: 20px 20px 36px; }
  .pag_lp #interna #mensagem2 #btn_mais_informacoes2 { width: 100%; }
}

/* Revisão: marca verde, primeira dobra em duas colunas e conteúdo compacto. */
:root { --button-green: #527c2b; --button-green-hover: #406323; }
.action-arrow { width: 21px; height: 21px; flex: 0 0 21px; vertical-align: middle; fill: none; stroke: currentColor; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.cta, .hero #formulario #btn_ser_franqueado,
.pag_lp #interna #conheca #btn_solicitar_visita,
.pag_lp #interna #mensagem2 #btn_mais_informacoes2 {
  background: var(--button-green); color: #fff; border-color: var(--button-green);
}
.pag_lp #interna .section-cta a, .ary-content > .cta { color: #fff; }
.cta:hover, .hero #formulario #btn_ser_franqueado:hover,
.pag_lp #interna #conheca #btn_solicitar_visita:hover,
.pag_lp #interna #mensagem2 #btn_mais_informacoes2:hover { background: var(--button-green-hover); color: #fff; }
.site-header { max-width: 1184px; padding: 18px 32px; }
#banner.hero { background: #f4f6ef; }
.hero-inner {
  max-width: 1184px; padding: 40px 32px 48px;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  grid-template-areas: 'copy form' 'photo form';
  gap: 24px 64px; align-items: center;
}
.hero-copy { align-self: end; }
.hero h1#hero-title { font-size: clamp(38px, 3.9vw, 52px); line-height: 1.06; letter-spacing: -1px; margin-bottom: 16px; }
.hero .eyebrow { font-size: 10px; line-height: 1.5; letter-spacing: 1.2px; margin-bottom: 14px; }
.hero-description { font-size: 19px; line-height: 1.45; margin: 0; max-width: 480px; }
.hero-assurance, .hero-link { display: none; }
.hero-photo {
  width: 100%; max-width: none; height: 220px; aspect-ratio: auto;
  border-radius: 18px; align-self: start; justify-self: stretch;
}
#banner .hero-photo img {
  width: 100%; max-width: none; height: auto; right: auto; bottom: auto;
  left: 0; top: 50%; transform: translateY(-50%);
}
.hero #formulario { padding: 30px; border-radius: 20px; width: 100%; margin: 0; box-shadow: 0 12px 36px #123f3010; }
.hero #formulario h2 { font-size: 30px; }
.hero #formulario .form-description { font-size: 16px; margin-bottom: 22px; }
.hero #formulario input.form-control, .hero #formulario select { height: 52px; }
.hero #formulario .form-group { margin-bottom: 14px; }
.hero #formulario #btn_ser_franqueado { font-size: 17px; min-height: 52px; gap: 12px; }
/* O vídeo tem fundo próprio e largura de leitura, não ocupa a tela inteira. */
.ary-section {
  padding: 44px 24px;
  background: #103d35 url('assets/optimized/dalia-bg.webp') center / cover;
  border-block: 1px solid #234f42;
}
.ary-content { max-width: 660px; }
.ary-player { border-radius: 18px; border: 1px solid #ffffff40; box-shadow: 0 12px 32px #001c2840; }
.ary-content > .cta { margin-top: 24px; background: #fff; color: var(--ink); }
.ary-content > .cta:hover { background: #edf4e5; color: var(--ink); }
/* História da fundadora mais ao fim, com texto menor e parágrafos arejados. */
.pag_lp #interna #jessicaramalho .bloco p { font-size: 17px; line-height: 1.5; margin-bottom: 14px; }
.pag_lp #interna #jessicaramalho .bloco > .row { grid-template-columns: .7fr 1.3fr; }
.pag_lp #interna #jessicaramalho .imagem { max-width: 270px; }
.pag_lp #interna #conheca h3 { margin-bottom: 24px; }
/* Fechamento com hierarquia: contexto, mensagem principal e chamada. */
.pag_lp #interna #mensagem2 { padding: 56px 24px; background: #f4f6ef; }
.pag_lp #interna #mensagem2 > .container {
  max-width: 1000px; padding: 56px 64px;
  background: #103d35 url('assets/optimized/dalia-bg.webp') center / cover;
  border-radius: 24px; text-align: center;
}
.pag_lp #interna #mensagem2 h3:first-of-type { max-width: 650px; margin: 0 auto 20px; font-size: 20px; line-height: 1.5; color: #e3eddf; }
.pag_lp #interna #mensagem2 h3:nth-of-type(2) { font-size: clamp(28px, 3vw, 38px); line-height: 1.18; margin-bottom: 24px; }
.pag_lp #interna #mensagem2 h3:nth-of-type(3) { font-size: 18px; line-height: 1.45; margin-bottom: 20px; }
.pag_lp #interna #mensagem2 #btn_mais_informacoes2 { background: #fff; color: var(--ink) !important; margin-top: 0; }
.pag_lp #interna #mensagem2 #btn_mais_informacoes2:hover { background: #edf4e5; color: var(--ink) !important; }
@media (min-width: 768px) and (max-width: 991px) {
  .hero-inner { gap: 24px 32px; padding: 32px 24px; }
  .hero h1#hero-title { font-size: 36px; }
  .hero-photo { height: 175px; }
  .hero #formulario { padding: 24px; }
}
@media (max-width: 767px) {
  .site-header { padding: 10px 18px; min-height: 52px; }
  .brand img { width: 30px; height: 30px; }
  .brand>span { font-size: 23px; }
  .site-header .brand small { font-size: 7px; margin-top: 3px; }
  .site-header nav .header-cta { font-size: 11px; padding: 8px 10px; gap: 5px; }
  .site-header .action-arrow { display: none; }
  .hero-inner { grid-template-columns: 1fr; grid-template-areas: 'photo' 'copy' 'form'; padding: 12px 18px 20px; gap: 12px; max-width: 480px; }
  .hero-photo { height: auto; aspect-ratio: 16 / 9; width: 100%; border-radius: 12px; }
  .hero-copy { text-align: center; }
  .hero h1#hero-title { font-size: 30px; line-height: 1.05; margin-bottom: 8px; letter-spacing: -.5px; }
  .hero-description { font-size: 15px; line-height: 1.3; margin: 0 auto; max-width: 360px; }
  .hero #formulario { padding: 16px; border-radius: 16px; }
  .hero #formulario h2 { font-size: 23px; margin: 0 0 12px; }
  .hero #formulario .form-description { display: none; }
  .hero #formulario input.form-control, .hero #formulario select { height: 44px; font-size: 16px; padding-inline: 12px; }
  .hero #formulario .form-group { margin: 0 0 8px; }
  .hero #formulario .form-group:last-child { margin-bottom: 0; }
  .hero #formulario #btn_ser_franqueado { min-height: 44px; padding: 11px 8px; font-size: 16px; margin: 0; gap: 10px; }
  .hero #formulario .form-note { margin: 8px 0 0; font-size: 10px; line-height: 1.3; }
  .ary-section { padding: 32px 20px; }
  .ary-content { max-width: 520px; }
  .ary-player { border-radius: 12px; }
  .ary-content > .cta { margin-top: 20px; }
  .pag_lp #interna #jessicaramalho .bloco > .row { grid-template-columns: 1fr; gap: 24px; }
  .pag_lp #interna #jessicaramalho .bloco { padding: 24px; }
  .pag_lp #interna #jessicaramalho .imagem { max-width: 180px; margin-bottom: 16px; }
  .pag_lp #interna #jessicaramalho .bloco p { font-size: 16px; line-height: 1.5; margin-bottom: 12px; }
  .pag_lp #interna #jessicaramalho .bloco .autor { font-size: 14px; }
  .pag_lp #interna #mensagem2 { padding: 28px 16px; }
  .pag_lp #interna #mensagem2 > .container { padding: 32px 24px; border-radius: 20px; }
  .pag_lp #interna #mensagem2 h3:first-of-type { font-size: 17px; line-height: 1.4; margin-bottom: 18px; }
  .pag_lp #interna #mensagem2 h3:nth-of-type(2) { font-size: 28px; line-height: 1.18; margin-bottom: 20px; }
  .pag_lp #interna #mensagem2 h3:nth-of-type(3) { font-size: 16px; margin-bottom: 24px; }
}

@media (max-width: 767px) and (max-height: 740px) {
  .hero-inner { padding-block: 8px 12px; gap: 10px; }
  .hero-photo { aspect-ratio: auto; height: 128px; }
  .hero h1#hero-title { font-size: 28px; }
  .hero-description { font-size: 14px; }
  .hero #formulario { padding: 12px; }
  .hero #formulario h2 { display: none; }
}

.hero-inner { grid-template-areas: 'copy form' 'photo form' 'rating form'; row-gap: 16px; }
.hero-rating { grid-area: rating; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; font: 400 13px/1.3 Acuidar, Arial, sans-serif; color: #4f6358; }
.google-word { font-family: Arial, sans-serif; font-weight: 600; font-size: 15px; color: #3c4043; }
.rating-stars { color: #a46900; letter-spacing: 1px; font-size: 17px; }
.hero-rating strong { color: var(--ink); font-size: 15px; }
.rating-count { white-space: nowrap; }
@media (max-width: 767px) {
  .hero-inner { grid-template-areas: 'photo' 'rating' 'copy' 'form'; row-gap: 10px; }
  .hero-rating { font-size: 11px; gap: 6px; }
  .google-word { font-size: 13px; }
  .rating-stars { font-size: 15px; }
  .hero-rating strong { font-size: 13px; }
}

#banner .hero-photo img { top: 0; transform: translateY(-12.5%); }
.pag_lp #interna #mensagem2 #btn_mais_informacoes2:hover { color: var(--ink); }
@media (max-width: 360px) and (max-height: 640px) {
  .hero-photo { height: 104px; }
  .hero-inner { row-gap: 8px; }
  .hero #formulario .form-note { font-size: 9px; }
}

/* Contraste do formulário com o fundo claro da primeira dobra. */
.hero #formulario {
  background: #103d35;
  border-color: #285a49;
  box-shadow: 0 12px 30px #073c3526;
}
.hero #formulario h2 { color: #fff; }
.hero #formulario .form-eyebrow { color: #c5dcb1; }
.hero #formulario .form-description,
.hero #formulario .form-note { color: #e0eadd; }
.hero #formulario .form-note a { color: #fff; }
.hero #formulario input.form-control,
.hero #formulario select { background: #f8faf5; border-color: #c6d2c0; }
.hero #formulario #btn_ser_franqueado { border: 1px solid #8aae63; }

.hero-inner { grid-template-areas: 'location form' 'copy form' 'photo form' 'rating form'; }
.hero-location {
  grid-area: location;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 16px;
  border: 1px solid #b9cbc1;
  border-radius: 999px;
  background: #e1e8df;
  color: var(--ink);
  font: 400 12px/1.2 Arial, sans-serif;
  letter-spacing: 1.2px;
}
.hero-location > span { width: 8px; height: 8px; border-radius: 50%; background: #77a343; flex: 0 0 auto; }
@media (max-width: 767px) {
  .hero-inner { grid-template-areas: 'location' 'photo' 'rating' 'copy' 'form'; }
  .hero-location { justify-self: center; font-size: 11px; padding: 6px 13px; }
}
@media (max-width: 360px) and (max-height: 640px) {
  .hero-photo { height: 88px; }
  .hero-inner { row-gap: 6px; }
}

.mobile-form-prompt { display: none; }
@media (max-width: 767px) {
  .hero-inner { grid-template-areas: 'location' 'photo' 'rating' 'copy' 'prompt' 'form'; }
  .hero-inner { grid-template-columns: minmax(0, 1fr); }
  .mobile-form-prompt {
    display: block;
    grid-area: prompt;
    min-width: 0;
    margin: 0;
    color: var(--ink);
    text-align: center;
    font: 700 11px/1.2 Acuidar, Arial, sans-serif;
    letter-spacing: -.1px;
    text-wrap: balance;
  }
}

/* Primeira dobra mais compacta no mobile, para o botão do formulário aparecer sem rolar a tela na maioria dos aparelhos. */
@media (max-width: 767px) {
  .site-header { padding: 8px 18px; min-height: 46px; }
  .hero-inner { padding: 8px 18px 14px; row-gap: 8px; }
  .hero-location { padding: 5px 12px; }
  .hero-photo { height: 150px; aspect-ratio: auto; }
  .hero h1#hero-title { font-size: 26px; margin-bottom: 6px; }
  .hero-description { font-size: 14px; line-height: 1.25; }
  .hero #formulario { padding: 14px; }
  .hero #formulario h2 { font-size: 20px; margin: 0 0 8px; }
  .hero #formulario .form-group { margin: 0 0 6px; }
  .hero #formulario #btn_ser_franqueado { min-height: 42px; padding: 9px 8px; }
  .hero #formulario .form-note { margin: 6px 0 0; }
}
@media (max-width: 767px) and (max-height: 740px) {
  .hero-photo { height: 96px; }
  .hero-inner { row-gap: 6px; }
}
@media (max-width: 360px) and (max-height: 640px) {
  .hero-photo { height: 90px; }
}

/* Leitura da primeira dobra: título, descrição e chamada com mais respiro. */
.hero h1#hero-title { font-size: clamp(40px, 4.1vw, 56px); margin-bottom: 22px; }
.hero-description { font-size: 20px; line-height: 1.45; }
@media (max-width: 767px) {
  .hero h1#hero-title { font-size: 32px; margin-bottom: 14px; }
  .hero-description { font-size: 16px; line-height: 1.35; }
  .mobile-form-prompt { margin: 6px 0; line-height: 1.4; }
}
@media (max-width: 767px) and (max-height: 740px) {
  .hero h1#hero-title { font-size: 30px; margin-bottom: 12px; }
  .hero-description { font-size: 15px; }
}

@media (max-width: 767px) {
  .hero h1#hero-title { margin-bottom: 20px; }
  .mobile-form-prompt { margin-top: 12px; margin-bottom: 6px; }
}

@media (max-width: 767px) {
  .pag_lp #interna #dados.vantagens .section-cta { padding-top: 32px; }
  .pag_lp #interna #dados.vantagens .section-cta .cta {
    width: 100%; max-width: 360px; padding: 15px 12px;
    gap: 10px; font-size: 16px; white-space: nowrap;
  }
}

/* Depoimentos e passo a passo, no mesmo ritmo das demais seções. */
.pag_lp #interna :is(#depoimentos,#como-funciona) { padding: var(--section-space) 24px; }
.pag_lp #interna :is(#depoimentos,#como-funciona) > .container { padding: 0; margin: 0 auto; max-width: 1120px; }
.pag_lp #interna .section-head { text-align: center; max-width: 640px; margin: 0 auto 40px; }
.pag_lp #interna .section-head h5 { font: 700 12px/1.4 Acuidar, Arial, sans-serif; letter-spacing: 2px; margin: 0 0 12px; color: var(--green); }
.pag_lp #interna .section-head h3 { font: 700 var(--section-title)/1.15 Acuidar, Arial, sans-serif; letter-spacing: -.5px; text-wrap: balance; margin: 0 0 12px; color: var(--ink); }
.pag_lp #interna .section-sub { font-size: 17px; line-height: 1.45; color: #4f6358; margin: 0; }
.pag_lp #interna .section-sub .rating-stars { display: block; color: var(--gold); font-size: 22px; letter-spacing: 3px; margin-bottom: 6px; }
.pag_lp #interna :is(#depoimentos,#como-funciona) .section-cta { background: transparent; padding: 40px 0 0; }

.pag_lp #interna #depoimentos { background: #fff; }
.depoimentos-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.depoimento { display: flex; flex-direction: column; text-align: left; margin: 0; padding: 24px; background: var(--paper); border: 1px solid var(--surface-border); border-radius: 18px; }
.depoimento-stars { color: var(--gold); font-size: 15px; letter-spacing: 2px; margin-bottom: 14px; }
.depoimento blockquote { flex: 1; margin: 0 0 20px; padding: 0; border: 0; }
.depoimento blockquote p { font: 400 16px/1.55 Acuidar, Arial, sans-serif; color: var(--ink); margin: 0; }
.depoimento figcaption { display: flex; align-items: center; gap: 12px; padding-top: 16px; border-top: 1px solid #cfdac8; font-size: 13px; line-height: 1.35; color: #4f6358; }
.depoimento figcaption img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; flex: 0 0 48px; }
.depoimento figcaption strong { display: block; font: 700 15px/1.3 Acuidar, Arial, sans-serif; color: var(--ink); }

.pag_lp #interna #como-funciona { background: #103d35 url('assets/optimized/dalia-bg.webp') center / cover; }
.pag_lp #interna #como-funciona .section-head h5 { color: #c5dcb1; }
.pag_lp #interna #como-funciona .section-head h3 { color: #fff; }
.pag_lp #interna #como-funciona .section-sub { color: #d7e4d9; }
.passos { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; counter-reset: none; }
.passos li { position: relative; text-align: left; padding: 28px 24px; background: #ffffff0f; border: 1px solid #ffffff26; border-radius: 18px; }
.passos li:not(:last-child)::after { content: ''; position: absolute; top: 51px; left: calc(100% + 1px); width: 18px; height: 2px; background: var(--gold); }
.passo-num { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 18px; border-radius: 50%; background: var(--gold); color: var(--ink); font: 700 20px/1 Acuidar, Arial, sans-serif; }
.passos h4 { font: 700 20px/1.25 Acuidar, Arial, sans-serif; color: #fff; margin: 0 0 8px; }
.passos p { font: 400 15px/1.5 Acuidar, Arial, sans-serif; color: #d7e4d9; margin: 0; }
.pag_lp #interna #como-funciona .section-cta a { background: #fff; color: var(--ink); }
.pag_lp #interna #como-funciona .section-cta a:hover { background: #edf4e5; color: var(--ink); }

@media (max-width: 991px) {
  .depoimentos-grid, .passos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .passos li::after { display: none; }
}
@media (max-width: 767px) {
  .pag_lp #interna :is(#depoimentos,#como-funciona) { padding-left: 20px; padding-right: 20px; }
  .pag_lp #interna .section-head { margin-bottom: 28px; }
  .pag_lp #interna .section-sub { font-size: 15px; }
  .depoimentos-grid, .passos { grid-template-columns: 1fr; gap: 14px; }
  .depoimento { padding: 20px; }
  .passos li { display: grid; grid-template-columns: 44px 1fr; column-gap: 16px; padding: 20px; }
  .passo-num { width: 44px; height: 44px; font-size: 18px; margin: 0; grid-row: span 2; }
  .passos h4 { font-size: 18px; align-self: end; }
  .pag_lp #interna :is(#depoimentos,#como-funciona) .section-cta { padding-top: 28px; }
}
