/* Refinamento da mesma marca: materiais em destaque, leitura confortável. */
:root { --ambar-texto:#925008; }
html { scroll-padding-top:24px; }
h2 { line-height:1.12; letter-spacing:-.035em; }
.head { max-width:700px; margin-bottom:36px; }
.head p { line-height:1.7; }
.eyebrow { font-size:12px; letter-spacing:.12em; color:var(--ambar-texto); margin-bottom:10px; }
.on-dark .eyebrow { color:var(--ambar); }
.lead > .sub { font-size:17px; line-height:1.7; color:#d5cee5; }
.chips span { font-size:12px; padding:7px 12px; }
.cta { min-height:48px; justify-content:center; text-align:center; }
.cta-txt { display:inline-flex; align-items:center; min-height:44px; }
.nav .entrar { min-height:44px; display:inline-flex; align-items:center; white-space:nowrap; }
.gallery { padding:12px 0 22px; }
.prova-item { padding-top:28px; padding-bottom:28px; }
.prova-item span { font-size:14px; line-height:1.6; }

/* As colunas podem encolher em telas pequenas e com zoom de texto. */
.dores { grid-template-columns:repeat(auto-fit,minmax(min(100%,258px),1fr)); }
.familias { grid-template-columns:repeat(auto-fit,minmax(min(100%,272px),1fr)); }
.passos { grid-template-columns:repeat(auto-fit,minmax(min(100%,268px),1fr)); }
.quem { grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr)); }
.wrap > *, .fam > *, .oferta > * { min-width:0; }
.dor { padding:28px; background:transparent; box-shadow:none; border-radius:12px; }
.dor .mk { color:var(--cinza); font-size:12px; letter-spacing:.08em; }
.dor p, .passo p { font-size:16px; line-height:1.7; }
.fam { border-radius:18px; }
.fam .top { padding:26px; }
.fam .top .tag { font-size:12px; letter-spacing:.1em; color:var(--ambar-texto); }
.fam .top h3 { font-size:20px; line-height:1.25; margin-bottom:10px; }
.fam .top p, .fam li { font-size:15px; line-height:1.65; }
.fam ul { padding:22px 26px 26px; gap:12px; }
.fam.larga .top { padding:28px; }
.fam.larga ul { padding:28px; }
.passo { padding-top:20px; border-top:2px solid var(--linha); }
.passo .n { color:var(--roxo); font-size:44px; margin-bottom:18px; }
.passo h3 { font-size:20px; line-height:1.25; margin-bottom:12px; }
.implantacao { margin-top:38px; }
.implantacao p, .quem li { font-size:16px; }
.retrato .cg { font-size:14px; line-height:1.5; }
.quem .box { padding:28px; }
.oferta { border-color:#cfc3e2; }
.oferta .fund { font-size:12px; letter-spacing:.1em; color:var(--ambar-texto); }
.oferta .preco .n { color:var(--roxo); }
.oferta .inclui li { font-size:16px; }
.oferta .inclui p, .oferta .setup > span, .oferta .prazo { font-size:14px; line-height:1.7; }
.oferta .de s { color:var(--cinza); }
.faq details { padding:0 16px; border-radius:10px; }
.faq details[open] { background:#fff; }
.faq details p { font-size:16px; line-height:1.7; }
.faq summary { padding:22px 0; line-height:1.4; }
footer { color:#bcb3cf; font-size:14px; }
footer a { color:#ded8eb; }

@media(min-width:1041px) {
  .wall { padding-top:148px; padding-bottom:86px; }
  .wall .wrap { gap:36px; }
  .filme .head { max-width:none; display:grid; grid-template-columns:1.15fr 1fr; gap:0 48px; align-items:end; }
  .filme .head .eyebrow { grid-column:1/-1; }
  .filme .head h2 { margin-bottom:0; }
  .filme .head p { font-size:16px; }
}
@media(min-width:941px) and (max-width:1040px) {
  .wall .wrap { grid-template-columns:1fr; }
  .gallery { justify-self:center; }
  .lead { max-width:700px; }
}
@media(max-width:560px) {
  body { font-size:16px; }
  .nav .wrap { gap:10px; }
  .brand { gap:8px; }
  .brand .spark { width:32px; height:32px; font-size:19px; border-radius:9px; }
  .brand .nm { font-size:16px; }
  .brand .nm small { font-size:9px; letter-spacing:.08em; }
  .nav .entrar { font-size:12px; padding:8px 10px; }
  .wall { padding-top:108px; padding-bottom:38px; }
  .wall .wrap { gap:24px; }
  h1.hd { font-size:clamp(34px,9.2vw,48px); line-height:1.04; letter-spacing:-.04em; }
  .lead > .sub { font-size:16px; }
  .ctas { gap:12px; margin-top:24px; }
  .ctas .cta { width:100%; }
  .ctas .cta-txt { margin:auto; }
  .gallery { align-items:center; justify-self:center; padding-bottom:12px; }
  .head { margin-bottom:28px; }
  .head p { font-size:16px; }
  .filme { padding-top:42px; }
  .filme-nota { font-size:14px; gap:12px; }
  .player.js .play i { font-size:12px; letter-spacing:.06em; }
  .dor, .quem .box { padding:22px; }
  .fam .top, .fam.larga .top { padding:22px; }
  .fam ul, .fam.larga ul { padding:20px 22px 24px; }
  .passos { gap:30px; }
  .passo { display:grid; grid-template-columns:48px minmax(0,1fr); gap:0 16px; }
  .passo .n { grid-row:1/3; font-size:34px; }
  .passo p { grid-column:2; }
  .implantacao { padding:20px; gap:12px; }
  .oferta .valor, .oferta .inclui { padding:26px 22px; }
  .faq { gap:24px; }
  .faq details { padding:0 10px; }
  .fim { padding:58px 0; }
  .fim .cta { width:100%; padding-inline:16px; }
  .fim .vagas { letter-spacing:.05em; }
}
