.lf-sites-page {
  --lfcs-azul: var(--lf-azul-escuro);
  --lfcs-rosa: var(--lf-rosa);
  --lfcs-texto: #102033;
  --lfcs-texto-suave: #5d6878;
  --lfcs-borda: #e7edf4;
  --lfcs-fundo: #f7f9fc;
  --lfcs-branco: #ffffff;
  --lfcs-raio: 18px;
  --lfcs-sombra: 0 18px 48px rgba(7, 24, 43, .09);
  --lfcs-sombra-forte: 0 24px 70px rgba(7, 24, 43, .15);
  color: var(--lfcs-texto);
  background: var(--lfcs-branco);
  overflow: hidden;
}

.lf-sites-page *,
.lf-sites-page *::before,
.lf-sites-page *::after {
  box-sizing: border-box;
}

.lf-sites-page .container {
  max-width: 1120px;
}

/* Espaçamentos gerais */

.lf-sites-page .lf-section {
  padding: 46px 0;
}

.lf-sites-page .lf-section-head {
  max-width: 780px;
  margin: 0 auto 28px;
}

.lf-sites-page .lf-section-head.text-start {
  margin-right: 0;
  margin-left: 0;
}

.lf-sites-page .lf-eyebrow {
  display: inline-flex;
  margin-bottom: 10px;
  color: var(--lfcs-rosa);
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .11em;
  line-height: 1;
  text-transform: uppercase;
}

.lf-sites-page h2,
.lf-sites-page .lf-intro-copy h2,
.lf-sites-page .lf-section-head h2,
.lf-sites-page .lf-answer-box h2,
.lf-sites-page .lf-local-section h2,
.lf-sites-page .lf-ai-section h2,
.lf-sites-page .lf-reviews-box h2,
.lf-sites-page .lf-author-box h2,
.lf-sites-page .lf-cta-box h2 {
  margin: 0 0 12px;
  color: var(--lfcs-texto);
  font-size: clamp(1.65rem, 5.7vw, 2.35rem);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -.045em;
}

.lf-sites-page p,
.lf-sites-page .lf-intro-copy p,
.lf-sites-page .lf-section-head p,
.lf-sites-page .lf-answer-box p,
.lf-sites-page .lf-local-section p,
.lf-sites-page .lf-ai-section p,
.lf-sites-page .lf-reviews-box p,
.lf-sites-page .lf-author-box p,
.lf-sites-page .lf-cta-box p {
  margin: 0 0 14px;
  line-height: 1.72;
  font-size: 1.10rem; font-weight: 300;color: #242424;
}

/* Barra de prova rápida */

.lf-sites-page .lf-proofbar {
  background: var(--lfcs-branco);
  border-bottom: 1px solid var(--lfcs-borda);
  box-shadow: 0 8px 28px rgba(7, 24, 43, .05);
}

.lf-sites-page .lf-proofbar .row {
  padding: 14px 0;
}

.lf-sites-page .lf-proofbar-item {
  display: flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  text-align: center;
}

.lf-sites-page .lf-proofbar-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  flex: 0 0 30px;
  color: var(--lfcs-texto);
  background: color-mix(in srgb, var(--lfcs-rosa) 10%, #ffffff);
  border-radius: 999px;
  font-size: .84rem;
}

.lf-sites-page .lf-proofbar-item span:last-child {
  color: var(--lfcs-texto);
  font-size: .84rem;
  font-weight: 800;
  line-height: 1.25;
}

/* Resposta direta */

.lf-sites-page .lf-answer-section {
  padding: 28px 0;
  background: var(--lfcs-branco);
}

.lf-sites-page .lf-answer-box {
  padding: 24px;
  background:
    radial-gradient(circle at right top, color-mix(in srgb, var(--lfcs-rosa) 8%, transparent), transparent 38%),
    linear-gradient(135deg, color-mix(in srgb, var(--lfcs-rosa) 6%, #ffffff), #ffffff);
  border: 1px solid var(--lfcs-borda);
  border-radius: 22px;
  box-shadow: 0 16px 42px rgba(7, 24, 43, .06);
}

.lf-sites-page .lf-answer-mini {
  display: grid;
  gap: 8px;
  padding: 22px;
  background: var(--lfcs-branco);
  border: 1px solid var(--lfcs-borda);
  border-radius: 16px;
  box-shadow: 0 14px 34px rgba(7, 24, 43, .07);
}

.lf-sites-page .lf-answer-mini strong {
  color: var(--lfcs-rosa);
  font-size: 1.45rem;
  font-weight: 900;
  line-height: 1;
}

.lf-sites-page .lf-answer-mini span {
  line-height: 1.55;
  font-size: 1.10rem; font-weight: 300;color: #242424;
}

/* Introdução com imagem */

.lf-sites-page .lf-intro-section {
  padding-top: 48px;
  padding-bottom: 42px;
  background:
    radial-gradient(circle at left top, color-mix(in srgb, var(--lfcs-rosa) 6%, transparent), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.lf-sites-page .lf-main-image {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  background: #eef3f8;
  box-shadow: var(--lfcs-sombra-forte);
}

.lf-sites-page .lf-main-image::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, color-mix(in srgb, var(--lfcs-rosa) 14%, transparent), transparent 42%);
  content: "";
}

.lf-sites-page .lf-main-image img {
  display: block;
  width: 100%;
  min-height: 280px;
  max-height: 430px;
  object-fit: cover;
}

.lf-sites-page .lf-intro-actions {
  display: grid;
  gap: 12px;
  margin-top: 22px;
}

/* Botões */

.lf-sites-page .lf-btn {
  display: inline-flex;
  width: 100%;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 13px 20px;
  border: 1px solid transparent;
  border-radius: 12px;
  font-size: .9rem;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.lf-sites-page .lf-btn:hover {
  transform: translateY(-2px);
}

.lf-sites-page .lf-btn-primary {
  color: #ffffff;
  background: var(--lfcs-rosa);
  box-shadow: 0 14px 30px color-mix(in srgb, var(--lfcs-rosa) 25%, transparent);
}

.lf-sites-page .lf-btn-dark {
  color: #ffffff;
  background: var(--lfcs-azul);
  box-shadow: 0 14px 30px rgba(7, 24, 43, .15);
}

.lf-sites-page .lf-btn-white {
  color: var(--lfcs-azul);
  background: #ffffff;
}

.lf-sites-page .lf-btn-outline {
  color: var(--lfcs-azul);
  background: transparent;
  border-color: rgba(16, 32, 51, .18);
}

/* Cards base */

.lf-sites-page .lf-panel,
.lf-sites-page .lf-side-card,
.lf-sites-page .lf-highlight-card,
.lf-sites-page .lf-reviews-box,
.lf-sites-page .lf-price-card,
.lf-sites-page .lf-process-card,
.lf-sites-page .lf-faq-card,
.lf-sites-page .lf-audience-card,
.lf-sites-page .lf-type-card,
.lf-sites-page .lf-compare-card,
.lf-sites-page .lf-scope-card,
.lf-sites-page .lf-ai-card,
.lf-sites-page .lf-budget-card,
.lf-sites-page .lf-sign-card,
.lf-sites-page .lf-author-box {
  background: #ffffff;
  border: 1px solid var(--lfcs-borda);
  border-radius: var(--lfcs-raio);
  box-shadow: var(--lfcs-sombra);
}

.lf-sites-page .lf-panel {
  padding: 26px;
}

/* Cards de conteúdo */

.lf-sites-page .lf-feature-card,
.lf-sites-page .lf-type-card,
.lf-sites-page .lf-audience-card,
.lf-sites-page .lf-scope-card,
.lf-sites-page .lf-ai-card,
.lf-sites-page .lf-budget-card,
.lf-sites-page .lf-sign-card {
  height: 100%;
  padding: 22px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
border: 1px solid var(--lf-azul-escuro); border-radius: 8px;
}

.lf-sites-page .lf-feature-card:hover,
.lf-sites-page .lf-type-card:hover,
.lf-sites-page .lf-audience-card:hover,
.lf-sites-page .lf-scope-card:hover,
.lf-sites-page .lf-ai-card:hover,
.lf-sites-page .lf-budget-card:hover,
.lf-sites-page .lf-sign-card:hover {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--lfcs-rosa) 25%, #ffffff);
  box-shadow: 0 20px 44px rgba(7, 24, 43, .11);
}

.lf-sites-page .lf-feature-card span,
.lf-sites-page .lf-type-card span,
.lf-sites-page .lf-audience-card span,
.lf-sites-page .lf-scope-card span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  margin-bottom: 15px;
  color: var(--lfcs-rosa);
  background: color-mix(in srgb, var(--lfcs-rosa) 10%, #ffffff);
  border-radius: 14px;
  font-size: 1rem;
}

.lf-sites-page .lf-feature-card h3,
.lf-sites-page .lf-side-card h3,
.lf-sites-page .lf-highlight-card h3,
.lf-sites-page .lf-price-card h3,
.lf-sites-page .lf-process-card h3,
.lf-sites-page .lf-faq-card h3,
.lf-sites-page .lf-audience-card h3,
.lf-sites-page .lf-type-card h3,
.lf-sites-page .lf-compare-card h3,
.lf-sites-page .lf-scope-card h3,
.lf-sites-page .lf-ai-card h3,
.lf-sites-page .lf-budget-card h3,
.lf-sites-page .lf-sign-card h3 {
  margin: 0 0 9px;
  color: #242424;
  font-size: 1.02rem;
  font-weight: 900;
  line-height: 1.25;
}

.lf-sites-page .lf-feature-card p,
.lf-sites-page .lf-type-card p,
.lf-sites-page .lf-audience-card p,
.lf-sites-page .lf-scope-card p,
.lf-sites-page .lf-ai-card p,
.lf-sites-page .lf-budget-card p,
.lf-sites-page .lf-sign-card p,
.lf-sites-page .lf-faq-card p {
  margin: 0;
  line-height: 1.6;

  font-size: 1.10rem;
font-weight: 300;
color: #242424;
}

/* Blocos laterais */

.lf-sites-page .lf-side-card,
.lf-sites-page .lf-highlight-card,
.lf-sites-page .lf-compare-card {
  padding: 26px;
}

.lf-sites-page .lf-side-card-accent {
  border-color: color-mix(in srgb, var(--lfcs-rosa) 22%, #ffffff);
}

.lf-sites-page .lf-side-card-accent h3 {
  color: var(--lfcs-rosa);
}

/* Listas */

.lf-sites-page .lf-check-list,
.lf-sites-page .lf-location-list,
.lf-sites-page .lf-negative-list {
  display: grid;
  gap: 10px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
    padding-top: 10px;
}

.lf-sites-page .lf-check-list li,
.lf-sites-page .lf-location-list li,
.lf-sites-page .lf-negative-list li {
  position: relative;
  padding-left: 24px;
  color: #242424;
  font-size: 1.10rem;
  line-height: 1.25;
}

.lf-sites-page .lf-check-list li::before {
  position: absolute;
  left: 0;
  color: var(--lfcs-rosa);
  content: "✓";
  font-weight: 900;
}

.lf-sites-page .lf-location-list li::before {
  position: absolute;
  left: 0;
  color: var(--lfcs-rosa);
  content: "⌖";
  font-weight: 900;
}

.lf-sites-page .lf-negative-list li::before {
  position: absolute;
  left: 0;
  color: #b8c0cc;
  content: "•";
  font-weight: 900;
}

/* Fundos alternados */

.lf-sites-page .lf-types-section,
.lf-sites-page .lf-audience-section,
.lf-sites-page .lf-budget-section,
.lf-sites-page .lf-faq-section {
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.lf-sites-page .lf-needs-section,
.lf-sites-page .lf-local-section,
.lf-sites-page .lf-compare-section,
.lf-sites-page .lf-scope-section,
.lf-sites-page .lf-author-section {
  background: #ffffff;
}

.lf-sites-page .lf-ai-section {
  background:
    radial-gradient(circle at right top, color-mix(in srgb, var(--lfcs-rosa) 7%, transparent), transparent 32%),
    #ffffff;
}

/* Audiência */

.lf-sites-page .lf-audience-card {
  text-align: center;
}

.lf-sites-page .lf-audience-card span {
  margin-right: auto;
  margin-left: auto;
}

/* Destaques */

.lf-sites-page .lf-highlight-card,
.lf-sites-page .lf-compare-card-featured {
  position: relative;
  overflow: hidden;
}

.lf-sites-page .lf-highlight-card::before,
.lf-sites-page .lf-compare-card-featured::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 100%;
  background: var(--lfcs-rosa);
  content: "";
}

.lf-sites-page .lf-compare-card {
  height: 100%;
}

.lf-sites-page .lf-compare-card-featured {
  border-color: color-mix(in srgb, var(--lfcs-rosa) 28%, #ffffff);
}

/* Trustindex */

.lf-sites-page .lf-trustindex-section {
  padding-top: 18px;
  background: #ffffff;
}

.lf-sites-page .lf-reviews-box {
  padding: 28px;
  background:
    radial-gradient(circle at right top, color-mix(in srgb, var(--lfcs-rosa) 8%, transparent), transparent 34%),
    #ffffff;
}

.lf-sites-page .lf-trustindex-widget {
  min-height: 160px;
}

/* Preços */

.lf-sites-page .lf-pricing-section {
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.lf-sites-page .lf-price-card {
  position: relative;
  display: flex;
  height: 100%;
  flex-direction: column;
  padding: 28px;
  text-align: center;
}

.lf-sites-page .lf-price-card span {
  display: block;
  margin-bottom: 4px;
  color: var(--lfcs-texto-suave);
  font-size: .84rem;
}

.lf-sites-page .lf-price-card strong {
  display: block;
  margin-bottom: 5px;
  color: var(--lfcs-texto);
  font-size: clamp(2.1rem, 7vw, 2.9rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.05em;
}

.lf-sites-page .lf-price-card p {
  margin: 0 0 22px;
  color: var(--lfcs-texto-suave);
  font-size: .86rem;
}

.lf-sites-page .lf-price-card .lf-check-list {
  flex: 1;
  text-align: left;
}

.lf-sites-page .lf-price-featured {
  border: 2px solid var(--lfcs-rosa);
  overflow: hidden;
}

.lf-sites-page .lf-price-badge {
  display: block;
  margin: -28px -28px 24px;
  padding: 10px 16px;
  color: #ffffff;
  background: var(--lfcs-rosa);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .1em;
  line-height: 1;
  text-transform: uppercase;
}

.lf-sites-page .lf-price-note {
  margin: 18px 0 0;
  color: var(--lfcs-texto-suave);
  font-size: .82rem;
  text-align: center;
}

/* Sinais de reformulação */

.lf-sites-page .lf-sign-card {
  border-left: 4px solid color-mix(in srgb, var(--lfcs-rosa) 34%, #ffffff);
}

/* Processo */

.lf-sites-page .lf-process-section {
  padding: 54px 0;
  color: #ffffff;
  background:
    radial-gradient(circle at top, rgba(255, 255, 255, .08), transparent 35%),
    linear-gradient(180deg, color-mix(in srgb, var(--lfcs-azul) 78%, #ffffff) 0%, var(--lfcs-azul) 100%);
}

.lf-sites-page .lf-section-head-light h2,
.lf-sites-page .lf-section-head-light p {
  color: #ffffff;
}

.lf-sites-page .lf-process-card {
  height: 100%;
  padding: 22px 18px;
  text-align: center;
  background: rgba(255, 255, 255, .05);
  border-color: rgba(255, 255, 255, .14);
  box-shadow: none;
}

.lf-sites-page .lf-process-card span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  margin: 0 auto 13px;
  color: #ffffff;
  background: var(--lfcs-rosa);
  border-radius: 999px;
  font-size: .84rem;
  font-weight: 900;
}

.lf-sites-page .lf-process-card h3 {
  color: #ffffff;
}

.lf-sites-page .lf-process-card p {
  margin: 0;
  color: rgba(255, 255, 255, .76);
  font-size: .86rem;
  line-height: 1.52;
}

/* Autoridade */

.lf-sites-page .lf-author-box {
  padding: 28px;
}

.lf-sites-page .lf-author-media {
  overflow: hidden;
  border-radius: 18px;
  background: var(--lfcs-fundo);
}

.lf-sites-page .lf-author-media img {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  object-position: center top;
}

.lf-sites-page .lf-author-box .lf-btn {
  max-width: 240px;
}

/* FAQ */

.lf-sites-page .lf-accordion .accordion-item {
  margin-bottom: 12px;
  border: 1px solid var(--lfcs-borda);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(7, 24, 43, .04);
}

.lf-sites-page .lf-accordion .accordion-button {
  min-height: 52px;
  box-shadow: none;
  font-size: .92rem;
  font-weight: 900;
}

.lf-sites-page .lf-accordion .accordion-button:focus {
  border-color: var(--lfcs-borda);
  box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--lfcs-rosa) 12%, transparent);
}

.lf-sites-page .lf-accordion .accordion-body {
        font-size: 1.10rem;
    font-weight: 300;
    color: #242424;
  line-height: 1.65;
}

.lf-sites-page .lf-faq-card {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  padding: 30px;
}

.lf-sites-page .lf-faq-card p {
  margin-bottom: 22px;
}

/* CTA final */

.lf-sites-page .lf-cta-section {
  padding: 10px 0 56px;
  background: #ffffff;
}

.lf-sites-page .lf-cta-box {
  display: grid;
  gap: 20px;
  align-items: center;
  padding: 30px;
  color: #ffffff;
  background:
    radial-gradient(circle at right bottom, rgba(255, 255, 255, .14), transparent 28%),
    linear-gradient(135deg, var(--lfcs-rosa) 0%, color-mix(in srgb, var(--lfcs-rosa) 82%, #000000) 100%);
  border-radius: 22px;
  box-shadow: 0 22px 55px color-mix(in srgb, var(--lfcs-rosa) 27%, transparent);
}

.lf-sites-page .lf-cta-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, .36);
  border-radius: 999px;
  font-size: 1.45rem;
}

.lf-sites-page .lf-cta-box h2,
.lf-sites-page .lf-cta-box p {
  color: #ffffff;
}

.lf-sites-page .lf-cta-box p {
  color: rgba(255, 255, 255, .84);
}

/* Compatibilidade sem color mix */

@supports not (color: color-mix(in srgb, red 10%, white)) {
  .lf-sites-page .lf-proofbar-icon,
  .lf-sites-page .lf-feature-card span,
  .lf-sites-page .lf-type-card span,
  .lf-sites-page .lf-audience-card span,
  .lf-sites-page .lf-scope-card span {
    background: rgba(230, 0, 60, .08);
  }

  .lf-sites-page .lf-btn-primary {
    box-shadow: 0 14px 30px rgba(230, 0, 60, .24);
  }

  .lf-sites-page .lf-process-section {
    background: linear-gradient(180deg, #1f3d5c 0%, var(--lfcs-azul) 100%);
  }

  .lf-sites-page .lf-cta-box {
    background: linear-gradient(135deg, var(--lfcs-rosa) 0%, #c90038 100%);
    box-shadow: 0 22px 55px rgba(230, 0, 60, .26);
  }
}

/* Breakpoints mobile first */

@media (min-width: 576px) {
  .lf-sites-page .lf-intro-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 430px;
  }
}

@media (min-width: 768px) {
  .lf-sites-page .lf-section {
    padding: 62px 0;
  }

  .lf-sites-page .lf-panel,
  .lf-sites-page .lf-reviews-box,
  .lf-sites-page .lf-author-box,
  .lf-sites-page .lf-answer-box {
    padding: 34px;
  }

  .lf-sites-page .lf-cta-box {
    grid-template-columns: auto 1fr;
  }

  .lf-sites-page .lf-cta-box .lf-btn {
    grid-column: 1 / -1;
  }
}

@media (min-width: 992px) {
  .lf-sites-page .lf-section {
    padding: 76px 0;
  }

  .lf-sites-page .lf-intro-section {
    padding-top: 64px;
    padding-bottom: 54px;
  }

  .lf-sites-page .lf-needs-section {
    padding-top: 58px;
  }

  .lf-sites-page .lf-proofbar-item {
    justify-content: center;
  }

  .lf-sites-page .lf-main-image img {
    min-height: 390px;
  }

  .lf-sites-page .lf-price-featured {
    transform: translateY(-10px);
  }

  .lf-sites-page .lf-process-card {
    min-height: 150px;
  }

  .lf-sites-page .lf-cta-box {
    grid-template-columns: auto 1fr 250px;
    padding: 36px 44px;
  }

  .lf-sites-page .lf-cta-box .lf-btn {
    grid-column: auto;
  }
}

@media (min-width: 1200px) {
  .lf-sites-page .container {
    max-width: 1080px;
  }
}

.lf-review-card .lf-review-text {max-width: 31rem; margin: 0 auto; color: #ffffff; font-size: 0.98rem; font-weight: 600; line-height: 1.38;}
.lf-review-card .lf-review-date {margin: 0.15rem 0 0.65rem; color: #ffffff; font-size: 0.82rem; font-weight: 700; line-height: 1.2;}
.headingreviews{font-size: clamp(1.65rem, 5.7vw, 1.84rem)!important;}
.heading2{font-size: clamp(1.65rem, 5.7vw, 2.0rem)!important;}
.lf-ai-section a{
  text-decoration-color: var(--cor-destaque);
  text-decoration-line: underline;
  text-decoration-thickness: 2px;
  color: #242424;
  -webkit-transition: .6s;
  transition: .6s;
}

.table-responsive {
  width: 100%;
  max-width: 100%;
  margin: 1.5rem 0;
  overflow-x: auto;
  overflow-y: hidden;
  border-radius: 16px;
  -webkit-overflow-scrolling: touch;
}

.table-responsive table {
  width: 100%;
  min-width: 760px;
  border-collapse: separate;
  border-spacing: 0;
}

.table-responsive th,
.table-responsive td {
  padding: 1rem 1.1rem;
  border-right: 1px solid rgba(36, 36, 36, 0.14);
  border-bottom: 1px solid rgba(36, 36, 36, 0.14);
  text-align: left;
  vertical-align: top;
  line-height: 1.72;
  font-size: 1.10rem;
  font-weight: 300;
  color: #242424;
}

.table-responsive th:first-child,
.table-responsive td:first-child {
  border-left: 1px solid rgba(36, 36, 36, 0.14);
}

.table-responsive th {
  background: #2f435c;
  border-top: 0;
  font-weight: 700;
  color: #ffffff;
}

.table-responsive th:first-child {
  border-top-left-radius: 16px;
}

.table-responsive th:last-child {
  border-top-right-radius: 16px;
}

.table-responsive td {
  background: #ffffff;
}

.table-responsive td:first-child {
  background: #f4f7f3;
  font-weight: 700;
  color: #242424;
}

.table-responsive tbody tr:hover td {
  background: rgba(47, 67, 92, 0.055);
}

.table-responsive tbody tr:hover td:first-child {
  background: rgba(255, 225, 79, 0.35);
}

@media (max-width: 767px) {
  .table-responsive {
    padding-bottom: 0.35rem;
  }

  .table-responsive table {
    min-width: 720px;
  }

  .table-responsive th,
  .table-responsive td {
    padding: 0.9rem 1rem;
    font-size: 1rem;
  }
}

.accordion-body a{
  color: #242424;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--cor-destaque);
  transition: .6s;
}

/* === Redesign da consultoria de SEO (2026-10-02, F-317) === */
/* Só layout e estilo, escopado em .lf-sites-page.rd (classe posta só no template da consultoria). */

.lf-sites-page.rd {
  --rd-raio: 16px;
  --rd-sombra: 0 6px 22px rgba(7, 24, 43, .06);
  --rd-linha: var(--lfcs-borda);
  --rd-topo: 76px; /* altura da barra de atalhos, usada pelos blocos fixos */
  overflow: clip; /* hidden impediria position: sticky dentro da página */
}

.lf-sites-page.rd section[id] {
  scroll-margin-top: calc(var(--rd-topo) + 12px);
}

/* ---------- Ritmo vertical e largura de leitura ---------- */

.lf-sites-page.rd .lf-section {
  padding: 56px 0;
}

.lf-sites-page.rd .container {
  max-width: 1140px;
}

.lf-sites-page.rd h2 {
  text-wrap: balance;
}

.lf-sites-page.rd .lf-section-head {
  max-width: 760px;
  margin-bottom: 36px;
}

.lf-sites-page.rd .lf-section-head p {
  text-wrap: pretty;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .lf-section {
    padding: 92px 0;
  }

  .lf-sites-page.rd .lf-section-head {
    margin-bottom: 48px;
  }
}

/* ---------- Cards: borda clara, raio maior, sombra leve ---------- */

.lf-sites-page.rd .lf-type-card,
.lf-sites-page.rd .lf-audience-card,
.lf-sites-page.rd .lf-ai-card,
.lf-sites-page.rd .lf-sign-card {
  border: 1px solid var(--rd-linha);
  border-radius: var(--rd-raio);
  box-shadow: var(--rd-sombra);
}

.lf-sites-page.rd .lf-type-card h3,
.lf-sites-page.rd .lf-audience-card h3,
.lf-sites-page.rd .lf-ai-card h3,
.lf-sites-page.rd .lf-sign-card h3 {
  color: var(--lfcs-texto);
  font-size: 1.12rem;
  letter-spacing: -.01em;
}

.lf-sites-page.rd .lf-type-card p,
.lf-sites-page.rd .lf-audience-card p,
.lf-sites-page.rd .lf-ai-card p,
.lf-sites-page.rd .lf-sign-card p {
  font-size: 1.02rem;
}

/* ---------- Barra de atalhos (único componente novo) ---------- */

.lf-sites-page.rd .rd-subnav {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid var(--rd-linha);
  box-shadow: 0 8px 24px rgba(7, 24, 43, .05);
  backdrop-filter: blur(8px);
}

.lf-sites-page.rd .rd-subnav .container {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 60px;
}

.lf-sites-page.rd .rd-subnav ul {
  display: flex;
  flex: 1;
  gap: 2px;
  margin: 0;
  padding: 8px 0;
  list-style: none;
  overflow-x: auto;
  scrollbar-width: none;
}

.lf-sites-page.rd .rd-subnav ul::-webkit-scrollbar {
  display: none;
}

.lf-sites-page.rd .rd-subnav li a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 9px;
  color: var(--lfcs-texto);
  border-radius: 999px;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .04em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.lf-sites-page.rd .rd-subnav li a:hover,
.lf-sites-page.rd .rd-subnav li a:focus-visible {
  color: var(--lfcs-rosa);
  background: color-mix(in srgb, var(--lfcs-rosa) 8%, #ffffff);
}

.lf-sites-page.rd .rd-subnav .lf-btn {
  width: auto;
  min-height: 44px;
  flex: 0 0 auto;
  padding: 12px 16px;
  font-size: .84rem;
}

@media (max-width: 575px) {
  .lf-sites-page.rd .rd-subnav .lf-btn {
    display: none; /* no celular o botão flutuante de WhatsApp já cumpre o papel */
  }
}

/* ---------- Resposta direta ---------- */

.lf-sites-page.rd .rd-answer .lf-answer-mini {
  border-top: 4px solid var(--lfcs-rosa);
}

.lf-sites-page.rd .rd-answer .lf-answer-mini strong {
  font-size: 1.3rem;
  line-height: 1.15;
  text-wrap: balance;
}

.lf-sites-page.rd .rd-answer .rd-cols p {
  margin-bottom: 22px;
  padding-left: 18px;
  border-left: 3px solid color-mix(in srgb, var(--lfcs-rosa) 45%, #ffffff);
}

.lf-sites-page.rd .rd-answer .rd-cols p:last-child {
  margin-bottom: 0;
}

/* Ficha do serviço: rótulo em cima, valor embaixo, uma linha por fato */

.lf-sites-page.rd .rd-ficha {
  margin-top: 16px;
  padding: 22px;
  background: var(--lfcs-branco);
  border: 1px solid var(--lfcs-borda);
  border-radius: 16px;
  box-shadow: 0 14px 34px rgba(7, 24, 43, .07);
}

.lf-sites-page.rd .rd-ficha .lf-eyebrow {
  margin-bottom: 4px;
}

.lf-sites-page.rd .rd-ficha .lf-afa-ficha {
  margin: 0;
  padding: 0;
  list-style: none;
}

.lf-sites-page.rd .rd-ficha .lf-afa-ficha li {
  margin: 0;
  padding: 12px 0;
  color: #242424;
  border-bottom: 1px solid var(--lfcs-borda);
  font-size: 1rem;
  line-height: 1.5;
}

.lf-sites-page.rd .rd-ficha .lf-afa-ficha li:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.lf-sites-page.rd .rd-ficha .lf-afa-ficha li strong {
  display: block;
  margin-bottom: 2px;
  color: var(--lfcs-texto);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-answer .lf-answer-box {
    padding: 48px;
  }

  .lf-sites-page.rd .rd-answer .lf-answer-box > .row {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    column-gap: 56px;
    align-items: start !important;
    margin: 0;
  }

  .lf-sites-page.rd .rd-answer .lf-answer-box > .row > * {
    width: auto;
    max-width: none;
    margin: 0;
    padding: 0;
  }

  .lf-sites-page.rd .rd-answer h2 {
    margin-bottom: 28px;
  }
}

/* ---------- Imagem de abertura: inteira, sem cortar o texto da arte ---------- */

.lf-sites-page.rd .rd-intro {
  padding-bottom: 56px;
}

.lf-sites-page.rd .rd-intro .lf-main-image img {
  width: 100%;
  height: auto;
  min-height: 0;
  max-height: none;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-intro {
    padding-bottom: 92px;
  }
}

/* ---------- Blocos em duas colunas: título fixo à esquerda, lista à direita ---------- */

.lf-sites-page.rd .rd-split .row {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  margin: 0;
}

.lf-sites-page.rd .rd-split .row > * {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-split > .container {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: 64px;
    align-items: start;
  }

  .lf-sites-page.rd .rd-split .lf-section-head {
    position: sticky;
    top: calc(var(--rd-topo) + 24px);
    max-width: none;
    margin: 0 !important;
    text-align: left !important;
  }
}

/* Para quem é indicado: lista em linhas, ícone à esquerda */

.lf-sites-page.rd .rd-audience {
  padding-top: 0;
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-audience .lf-audience-card {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  column-gap: 18px;
  padding: 22px 0;
  text-align: left;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--rd-linha);
  border-radius: 0;
  box-shadow: none;
}

.lf-sites-page.rd .rd-audience .row > *:first-child .lf-audience-card {
  border-top: 1px solid var(--rd-linha);
}

.lf-sites-page.rd .rd-audience .lf-audience-card:hover {
  transform: none;
  box-shadow: none;
}

.lf-sites-page.rd .rd-audience .lf-audience-card span {
  width: 48px;
  height: 48px;
  grid-row: 1 / span 2;
  margin: 0;
}

.lf-sites-page.rd .rd-audience .lf-audience-card h3 {
  align-self: end;
}

/* ---------- Quando vale a pena: seis sinais numerados ---------- */

.lf-sites-page.rd .rd-signs {
  padding-top: 0;
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-signs .row {
  counter-reset: rd-sinal;
}

.lf-sites-page.rd .rd-signs .lf-sign-card {
  counter-increment: rd-sinal;
  padding: 24px;
  border-left: 1px solid var(--rd-linha);
  border-top: 3px solid var(--lfcs-rosa);
}

.lf-sites-page.rd .rd-signs .lf-sign-card::before {
  display: block;
  margin-bottom: 12px;
  color: var(--lfcs-rosa);
  content: counter(rd-sinal, decimal-leading-zero);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  line-height: 1;
}

/* ---------- Diferentes necessidades e formatos: três cards alinhados à esquerda ---------- */

.lf-sites-page.rd .rd-types {
  padding-top: 0;
  background: #ffffff;
}

.lf-sites-page.rd .rd-types .lf-type-card,
.lf-sites-page.rd .rd-format .lf-type-card {
  padding: 28px;
}

.lf-sites-page.rd .rd-types .lf-type-card span,
.lf-sites-page.rd .rd-format .lf-type-card span {
  width: 48px;
  height: 48px;
  margin-bottom: 18px;
}

.lf-sites-page.rd .rd-format {
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-format .row > *:first-child .lf-type-card {
  border: 2px solid var(--lfcs-rosa);
  box-shadow: var(--lfcs-sombra);
}

/* ---------- A consultoria analisa: faixa azul-clara ---------- */

.lf-sites-page.rd .rd-analisa .container > .row {
  --bs-gutter-y: 0;
  margin: 0;
  padding: 28px 12px;
  background: var(--lf-azul-claro);
  border-radius: 24px;
  row-gap: 24px;
}

.lf-sites-page.rd .rd-analisa .lf-highlight-card {
  box-shadow: none;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-analisa .container > .row {
    padding: 52px 36px;
  }
}

/* ---------- SEO local: cinco etapas em 3 + 2, sem colunas estreitas ---------- */

.lf-sites-page.rd .rd-ring {
  padding-top: 0;
}

.lf-sites-page.rd .rd-ring .lf-audience-card {
  padding: 26px 24px;
  text-align: left;
}

.lf-sites-page.rd .rd-ring .lf-audience-card span {
  margin-left: 0;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-ring .row {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 24px;
    margin: 0;
  }

  .lf-sites-page.rd .rd-ring .row > * {
    width: auto;
    max-width: none;
    margin: 0;
    padding: 0;
    grid-column: span 2;
  }

  .lf-sites-page.rd .rd-ring .row > *:nth-child(4),
  .lf-sites-page.rd .rd-ring .row > *:nth-child(5) {
    grid-column: span 3;
  }
}

/* ---------- SEO e IA ---------- */

.lf-sites-page.rd .rd-ai {
  padding-top: 0;
  background: #ffffff;
}

.lf-sites-page.rd .rd-ai .lf-ai-card {
  padding: 22px 22px 22px 26px;
  background: var(--lfcs-fundo);
  border-color: transparent;
  border-left: 4px solid var(--lfcs-rosa);
  box-shadow: none;
}

/* ---------- Processo: linha do tempo sobre o azul ---------- */

.lf-sites-page.rd .lf-process-section {
  padding: 64px 0;
}

.lf-sites-page.rd .rd-timeline .lf-eyebrow {
  color: rgba(255, 255, 255, .82);
}

.lf-sites-page.rd .rd-timeline .lf-process-card {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  column-gap: 16px;
  min-height: 0;
  padding: 0;
  text-align: left;
  background: transparent;
  border: 0;
}

.lf-sites-page.rd .rd-timeline .lf-process-card span {
  width: 44px;
  height: 44px;
  grid-row: 1 / span 2;
  margin: 0;
  font-size: 1rem;
}

.lf-sites-page.rd .rd-timeline .lf-process-card h3 {
  margin-top: 10px;
  font-size: 1.08rem;
}

.lf-sites-page.rd .rd-timeline .lf-process-card p {
  color: rgba(255, 255, 255, .86);
  font-size: .98rem;
  line-height: 1.6;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .lf-process-section {
    padding: 96px 0;
  }

  /* cinco passos em 3 + 2: colunas mais largas, texto em menos linhas */
  .lf-sites-page.rd .rd-timeline .row {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 40px 40px;
    margin: 0;
  }

  .lf-sites-page.rd .rd-timeline .row > * {
    width: auto;
    max-width: none;
    margin: 0;
    padding: 24px 0 0;
    grid-column: span 2;
    border-top: 1px solid rgba(255, 255, 255, .24);
  }

  .lf-sites-page.rd .rd-timeline .row > *:nth-child(4),
  .lf-sites-page.rd .rd-timeline .row > *:nth-child(5) {
    grid-column: span 3;
  }
}

/* ---------- Método Fila Orgânica: versão clara, passos na vertical ---------- */

.lf-sites-page.rd .lf-process-section.rd-method {
  color: var(--lfcs-texto);
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-method .lf-section-head-light h2 {
  color: var(--lfcs-texto);
}

.lf-sites-page.rd .rd-method .lf-section-head-light p {
  color: #242424;
}

.lf-sites-page.rd .rd-method .lf-section-head-light p a {
  color: #242424;
  text-decoration-color: var(--cor-destaque);
  text-decoration-line: underline;
  text-decoration-thickness: 2px;
}

.lf-sites-page.rd .rd-method .lf-process-card {
  position: relative;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  column-gap: 20px;
  min-height: 0;
  padding: 0 0 30px;
  text-align: left;
  background: transparent;
  border: 0;
  border-radius: 0;
}

.lf-sites-page.rd .rd-method .lf-process-card::before {
  position: absolute;
  top: 44px;
  bottom: 0;
  left: 21px;
  width: 2px;
  background: color-mix(in srgb, var(--lfcs-azul) 22%, #ffffff);
  content: "";
}

.lf-sites-page.rd .rd-method .row > *:last-child .lf-process-card {
  padding-bottom: 0;
}

.lf-sites-page.rd .rd-method .row > *:last-child .lf-process-card::before {
  display: none;
}

.lf-sites-page.rd .rd-method .lf-process-card span {
  width: 44px;
  height: 44px;
  grid-row: 1 / span 2;
  margin: 0;
  background: var(--lfcs-azul);
  font-size: 1rem;
}

.lf-sites-page.rd .rd-method .lf-process-card h3 {
  margin-top: 10px;
  color: var(--lfcs-texto);
  font-size: 1.12rem;
}

.lf-sites-page.rd .rd-method .lf-process-card p {
  color: #242424;
  font-size: 1.02rem;
  font-weight: 300;
  line-height: 1.6;
}

/* ---------- Comparativo ---------- */

.lf-sites-page.rd .rd-compare {
  padding-top: 0;
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-compare .lf-compare-card {
  padding: 32px;
  border-radius: var(--rd-raio);
}

.lf-sites-page.rd .rd-compare .lf-compare-card:not(.lf-compare-card-featured) {
  background: #ffffff;
  box-shadow: none;
}

.lf-sites-page.rd .rd-compare .lf-compare-card:not(.lf-compare-card-featured) h3 {
  color: var(--lfcs-texto-suave);
}

.lf-sites-page.rd .rd-compare .lf-negative-list li {
  color: var(--lfcs-texto-suave);
}

.lf-sites-page.rd .rd-compare .lf-negative-list li::before {
  content: "×";
}

.lf-sites-page.rd .rd-compare .lf-compare-card-featured {
  border: 2px solid var(--lfcs-rosa);
  box-shadow: var(--lfcs-sombra-forte);
}

.lf-sites-page.rd .rd-compare .lf-compare-card h3 {
  font-size: 1.25rem;
}

.lf-sites-page.rd .rd-compare .lf-check-list,
.lf-sites-page.rd .rd-compare .lf-negative-list {
  gap: 14px;
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-compare .row {
    align-items: flex-start;
  }

  .lf-sites-page.rd .rd-compare .row > *:first-child {
    width: 42%;
  }

  .lf-sites-page.rd .rd-compare .row > *:last-child {
    width: 58%;
  }

  .lf-sites-page.rd .rd-compare .lf-compare-card {
    height: auto;
  }
}

/* ---------- Especialista ---------- */

.lf-sites-page.rd .rd-author .lf-author-box {
  border-radius: 24px;
}

.lf-sites-page.rd .rd-author .lf-check-list {
  gap: 14px 32px;
}

.lf-sites-page.rd .rd-author .col-lg-12 > p.bodylinkhome {
  padding: 22px 24px;
  background: var(--lf-azul-claro);
  border-radius: var(--rd-raio);
}

.lf-sites-page.rd .rd-author blockquote {
  max-width: none;
  margin: 28px 0;
}

.lf-sites-page.rd .rd-author blockquote p {
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
}

.lf-sites-page.rd .rd-author .lf-check-list a {
  color: #242424;
  text-decoration-color: var(--cor-destaque);
  text-decoration-line: underline;
  text-decoration-thickness: 2px;
}

.lf-sites-page.rd .rd-author .lf-author-box .lf-btn {
  width: auto;
  max-width: none;
  padding-right: 26px;
  padding-left: 26px;
}

@media (min-width: 768px) {
  .lf-sites-page.rd .rd-author .lf-check-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-author .lf-author-box {
    padding: 48px;
  }
}

/* ---------- Investimento ---------- */

.lf-sites-page.rd .rd-pricing .lf-price-card {
  border-radius: 20px;
  box-shadow: var(--rd-sombra);
}

.lf-sites-page.rd .rd-pricing .lf-price-card strong {
  font-size: clamp(1.7rem, 2.6vw, 2.05rem);
  letter-spacing: -.03em;
  line-height: 1.1;
  text-wrap: balance;
}

.lf-sites-page.rd .rd-pricing .lf-price-card h3 {
  font-size: 1.15rem;
}

.lf-sites-page.rd .rd-pricing .lf-price-card p {
  font-size: .95rem;
}

.lf-sites-page.rd .rd-pricing .lf-price-featured {
  box-shadow: var(--lfcs-sombra-forte);
}

.lf-sites-page.rd .rd-pricing .lf-price-featured strong {
  color: var(--lfcs-rosa);
}

/* Entregas e relatório: cada bloco em um painel próprio, em vez de textos soltos */

.lf-sites-page.rd .rd-panel {
  margin-top: 32px;
  padding: 26px 20px;
  background: #ffffff;
  border: 1px solid var(--rd-linha);
  border-radius: 24px;
  box-shadow: var(--rd-sombra);
}

.lf-sites-page.rd .rd-panel > h3 {
  margin: 0 0 12px !important;
  color: var(--lfcs-texto);
  font-size: clamp(1.35rem, 3vw, 1.7rem);
  font-weight: 900;
  letter-spacing: -.03em;
  text-align: left !important;
  text-wrap: balance;
}

.lf-sites-page.rd .rd-panel > p {
  max-width: 860px;
  margin-right: 0 !important;
  margin-left: 0 !important;
  text-align: left !important;
}

.lf-sites-page.rd .rd-panel > p:last-child {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-panel {
    margin-top: 48px;
    padding: 48px;
  }
}

.lf-sites-page.rd .rd-pricing .container > p {
  max-width: 820px;
  margin-right: auto;
  margin-left: auto;
}

/* Tabela: mesma estrutura, cores da paleta e primeira coluna fixa na rolagem */

.lf-sites-page.rd .rd-pricing .table-responsive {
  margin: 28px 0;
  border: 1px solid var(--rd-linha);
  box-shadow: var(--rd-sombra);
}

.lf-sites-page.rd .rd-pricing table caption {
  padding: 12px 18px;
  color: var(--lfcs-texto-suave);
  background: #ffffff;
  font-size: .88rem;
  line-height: 1.45;
  text-align: left;
}

.lf-sites-page.rd .rd-pricing .table-responsive th,
.lf-sites-page.rd .rd-pricing .table-responsive td {
  padding: .95rem 1.1rem;
  border-right: 0;
  border-left: 0;
  border-bottom: 1px solid var(--rd-linha);
  font-size: 1rem;
  line-height: 1.55;
}

.lf-sites-page.rd .rd-pricing .table-responsive thead th {
  background: var(--lfcs-azul);
  font-size: .92rem;
}

.lf-sites-page.rd .rd-pricing .table-responsive tbody th {
  border-radius: 0;
  position: sticky;
  left: 0;
  z-index: 1;
  color: var(--lfcs-texto);
  background: var(--lf-azul-claro);
  font-weight: 700;
}

.lf-sites-page.rd .rd-pricing .table-responsive tbody tr:nth-child(even) td {
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-pricing .table-responsive tbody tr:hover td,
.lf-sites-page.rd .rd-pricing .table-responsive tbody tr:hover td:first-child {
  background: var(--lf-azul-claro);
}

.lf-sites-page.rd .rd-pricing .table-responsive tbody tr:last-child th,
.lf-sites-page.rd .rd-pricing .table-responsive tbody tr:last-child td {
  border-bottom: 0;
}

/* Relatório mensal: a mesma lista ordenada, em seis blocos numerados */

.lf-sites-page.rd .rd-report {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 16px;
  max-width: none;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: rd-bloco;
}

.lf-sites-page.rd .rd-report li {
  position: relative;
  padding: 20px 20px 20px 68px;
  color: #242424;
  background: var(--lfcs-fundo);
  border: 1px solid var(--rd-linha);
  border-radius: var(--rd-raio);
  counter-increment: rd-bloco;
  font-size: 1.02rem;
  line-height: 1.5;
}

.lf-sites-page.rd .rd-report li::before {
  position: absolute;
  top: 18px;
  left: 18px;
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  color: #ffffff;
  background: var(--lfcs-azul);
  border-radius: 999px;
  content: counter(rd-bloco);
  font-weight: 900;
}

/* O que não inclui: nota destacada, sem competir com os preços */

.lf-sites-page.rd .rd-note {
  margin-top: 32px !important;
  padding: 22px 26px;
  background: #ffffff;
  border: 1px dashed color-mix(in srgb, var(--lfcs-azul) 35%, #ffffff);
  border-radius: var(--rd-raio);
}

/* ---------- Perguntas frequentes: acordeão azul do tema, em duas colunas ---------- */

.lf-sites-page.rd .rd-faq {
  background: #ffffff;
}

.lf-sites-page.rd .rd-faq .row > * {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
}

.lf-sites-page.rd .rd-faq .lf-accordion .accordion-button {
  min-height: 64px;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-faq .lf-accordion {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 24px;
    align-items: start;
  }

  .lf-sites-page.rd .rd-faq .lf-accordion .accordion-item {
    margin-bottom: 0;
  }
}

/* Chamada do WhatsApp: faixa abaixo das perguntas, texto à esquerda e botão à direita */

.lf-sites-page.rd .rd-faq .lf-faq-card {
  height: auto;
  margin-top: 16px;
  border-top: 4px solid var(--lfcs-rosa);
}

@media (min-width: 768px) {
  .lf-sites-page.rd .rd-faq .lf-faq-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 40px;
    align-items: center;
    padding: 32px 40px;
  }

  .lf-sites-page.rd .rd-faq .lf-faq-card h3,
  .lf-sites-page.rd .rd-faq .lf-faq-card p {
    grid-column: 1;
  }

  .lf-sites-page.rd .rd-faq .lf-faq-card p {
    margin-bottom: 0;
  }

  .lf-sites-page.rd .rd-faq .lf-faq-card .lf-btn {
    width: auto;
    grid-column: 2;
    grid-row: 1 / span 2;
    padding: 14px 32px;
  }
}

/* ---------- Nichos: acordeão azul do tema, compacto (substitui o <style> embutido no template) ---------- */

.lf-sites-page.rd .rd-niches {
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .servicen-accordion {
  --bs-gutter-y: 12px;
}

.lf-sites-page.rd .servicen-accordion .accordion-item {
  border: 0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(7, 24, 43, .04);
}

.lf-sites-page.rd .servicen-accordion .accordion-button {
  min-height: 64px;
  padding: 14px 44px 14px 18px;
  color: #ffffff;
  background: var(--cor-primaria);
  box-shadow: none;
  font-size: .98rem;
  font-weight: 800;
  line-height: 1.3;
  text-align: left;
}

.lf-sites-page.rd .servicen-accordion .accordion-button:focus-visible {
  box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--lfcs-rosa) 30%, transparent);
}

.lf-sites-page.rd .servicen-accordion .accordion-body {
  color: #242424;
  line-height: 1.6;
}

.lf-sites-page.rd .servicen-accordion .servicen-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: .35rem;
  color: var(--cor-primaria);
  font-size: .95rem;
  font-weight: 700;
  text-decoration: none;
}

.lf-sites-page.rd .servicen-accordion .servicen-more:hover {
  text-decoration: underline;
}

/* ---------- Mesma linguagem nos blocos herdados da Home (avaliações, nichos, mapa) ---------- */

.lf-sites-page.rd .lf-proofbar-icon {
  width: auto;
  min-width: 30px;
  flex: 0 0 auto;
  padding: 0 9px;
  font-weight: 900;
}

.lf-sites-page.rd .tag {
  display: inline-flex;
  padding: 0;
  color: var(--lfcs-rosa);
  background: none;
  border: 0;
  border-radius: 0;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .11em;
  line-height: 1;
  text-transform: uppercase;
}

.lf-sites-page.rd h2.section-title,
.lf-sites-page.rd .contact-map-section h2,
.lf-sites-page.rd .rd-reviews h2 {
  font-weight: 900 !important;
  letter-spacing: -.045em;
}

.lf-sites-page.rd h2.section-title {
  font-size: clamp(1.65rem, 5.7vw, 2.35rem);
  line-height: 1.08;
}

.lf-sites-page.rd .rd-niches .lead {
  font-size: 1.1rem;
  font-weight: 300;
  max-width: 820px;
  margin-right: auto;
  margin-left: auto;
}

.lf-sites-page.rd .contact-map-section h2 {
  font-size: clamp(1.65rem, 5.7vw, 2.35rem);
}

.lf-sites-page.rd .contact-map-section h3 {
  color: var(--lfcs-texto-suave);
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: 0;
}

.lf-sites-page.rd .contact-map-section p {
  max-width: 820px;
  margin-right: auto;
  margin-left: auto;
}

/* ---------- Cabeçalho de seção em duas colunas: título à esquerda, texto à direita ----------
   Para as seções em que o texto de apoio tem mais de duas linhas e, centralizado, virava um bloco. */

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-head-split .lf-section-head,
  .lf-sites-page.rd .rd-niches .row:first-child > * {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    column-gap: 64px;
    align-items: start;
    max-width: none;
    margin-right: 0 !important;
    margin-left: 0 !important;
    text-align: left !important;
  }

  .lf-sites-page.rd .rd-head-split .lf-section-head .lf-eyebrow,
  .lf-sites-page.rd .rd-niches .row:first-child .tag {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }

  .lf-sites-page.rd .rd-head-split .lf-section-head h2,
  .lf-sites-page.rd .rd-niches .row:first-child h2 {
    grid-column: 1;
    grid-row: 2 / span 2;
    margin: 0 !important;
  }

  .lf-sites-page.rd .rd-head-split .lf-section-head p,
  .lf-sites-page.rd .rd-niches .row:first-child p {
    max-width: none;
    grid-column: 2;
    grid-row: 2;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 28px;
    border-left: 1px solid var(--rd-linha);
  }

  .lf-sites-page.rd .rd-head-split .lf-section-head p + p {
    grid-row: 3;
    margin-top: 14px;
  }

  .lf-sites-page.rd .rd-head-split .lf-section-head-light p {
    border-left-color: rgba(255, 255, 255, .22);
  }
}

/* ---------- SEO e IA: cabeçalho em duas colunas e os quatro cards em uma linha ---------- */

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-ai .container > .row {
    display: block;
    margin: 0;
  }

  .lf-sites-page.rd .rd-ai .container > .row > * {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }

  .lf-sites-page.rd .rd-ai .container > .row > *:first-child {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    column-gap: 64px;
    align-items: start;
    margin-bottom: 48px;
  }

  .lf-sites-page.rd .rd-ai .container > .row > *:first-child .lf-eyebrow {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }

  .lf-sites-page.rd .rd-ai .container > .row > *:first-child h2 {
    grid-column: 1;
    grid-row: 2 / span 3;
    margin: 0;
  }

  .lf-sites-page.rd .rd-ai .container > .row > *:first-child p {
    grid-column: 2;
  }

  .lf-sites-page.rd .rd-ai .container > .row > *:first-child p:nth-of-type(1) {
    grid-row: 2;
  }

  .lf-sites-page.rd .rd-ai .container > .row > *:first-child p:nth-of-type(2) {
    grid-row: 3;
  }

  .lf-sites-page.rd .rd-ai .container > .row > *:first-child p:nth-of-type(3) {
    grid-row: 4;
    margin-bottom: 0;
  }

  .lf-sites-page.rd .rd-ai .container > .row > *:last-child .row > * {
    flex: 0 0 25%;
    width: 25%;
  }
}

/* ---------- Textos longos quebrados em peças menores ---------- */

.lf-sites-page.rd .rd-ai .col-lg-6:first-child p:last-of-type {
  padding: 20px 22px;
  background: var(--lf-azul-claro);
  border-radius: var(--rd-raio);
}

.lf-sites-page.rd .rd-author .col-lg-12 > p.bodylinkhome strong {
  color: var(--lfcs-rosa);
  font-weight: 900;
}

.lf-sites-page.rd .rd-panel .table-responsive + p {
  padding-left: 18px;
  border-left: 3px solid color-mix(in srgb, var(--lfcs-rosa) 45%, #ffffff);
}

/* ---------- Movimento reduzido ---------- */

@media (prefers-reduced-motion: reduce) {
  .lf-sites-page.rd * {
    transition: none !important;
  }
}

/* === Redesign da página de GEO (2026-10-02, F-321) === */

/* Seção que abre um bloco novo depois de outra de fundo diferente: recupera o respiro de cima */

.lf-sites-page.rd .lf-section.rd-top {
  padding-top: 56px;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .lf-section.rd-top {
    padding-top: 92px;
  }
}

/* ---------- Tabela SEO, AEO e GEO: mesma tabela, cores da paleta ---------- */

.lf-sites-page.rd .rd-diferenca {
  background: #ffffff;
}

.lf-sites-page.rd .rd-diferenca .table-responsive {
  margin: 8px 0 0;
  border: 1px solid var(--rd-linha);
  box-shadow: var(--rd-sombra);
}

.lf-sites-page.rd .rd-diferenca .table-responsive th,
.lf-sites-page.rd .rd-diferenca .table-responsive td {
  padding: .95rem 1.1rem;
  border-right: 0;
  border-left: 0;
  border-bottom: 1px solid var(--rd-linha);
  font-size: 1rem;
  line-height: 1.55;
}

.lf-sites-page.rd .rd-diferenca .table-responsive thead th {
  background: var(--lfcs-azul);
  font-size: .92rem;
}

.lf-sites-page.rd .rd-diferenca .table-responsive tbody th,
.lf-sites-page.rd .rd-diferenca .table-responsive tbody td:first-child {
  position: sticky;
  left: 0;
  z-index: 1;
  color: var(--lfcs-texto);
  background: var(--lf-azul-claro);
  border-radius: 0;
  font-weight: 700;
}

.lf-sites-page.rd .rd-diferenca .table-responsive tbody tr:nth-child(even) td:not(:first-child) {
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-diferenca .table-responsive tbody tr:hover td {
  background: var(--lf-azul-claro);
}

.lf-sites-page.rd .rd-diferenca .table-responsive tbody tr:last-child th,
.lf-sites-page.rd .rd-diferenca .table-responsive tbody tr:last-child td {
  border-bottom: 0;
}

.lf-sites-page.rd .rd-diferenca table caption {
  padding: 12px 18px;
  color: var(--lfcs-texto-suave);
  background: #ffffff;
  font-size: .88rem;
  text-align: left;
}

/* ---------- Ficha de Entidade para IA: faixa clara com borda rosa, diferente da faixa azul ---------- */

.lf-sites-page.rd .rd-entity .container > .row {
  background: var(--lfcs-fundo);
  border: 1px solid var(--rd-linha);
  border-left: 5px solid var(--lfcs-rosa);
}

/* Parágrafo que fecha a tabela de diferenças */

.lf-sites-page.rd .rd-diferenca .table-responsive + p {
  margin-top: 24px;
  padding-left: 18px;
  border-left: 3px solid color-mix(in srgb, var(--lfcs-rosa) 45%, #ffffff);
}

/* Cápsula longa: o card de preço e a ficha acompanham a leitura dos parágrafos */

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-answer-fixa .lf-answer-box > .row > *:last-child {
    position: sticky;
    top: calc(var(--rd-topo) + 16px);
  }
}

/* === Tabelas no celular (2026-10-02): a primeira coluna fixa ocupava quase metade da tela === */

@media (max-width: 767px) {
  .lf-sites-page.rd .rd-pricing .table-responsive table,
  .lf-sites-page.rd .rd-diferenca .table-responsive table {
    min-width: 620px;
  }

  .lf-sites-page.rd .rd-pricing .table-responsive th:first-child,
  .lf-sites-page.rd .rd-pricing .table-responsive tbody th,
  .lf-sites-page.rd .rd-diferenca .table-responsive th:first-child,
  .lf-sites-page.rd .rd-diferenca .table-responsive tbody th,
  .lf-sites-page.rd .rd-diferenca .table-responsive tbody td:first-child {
    width: 104px;
    min-width: 104px;
    max-width: 104px;
    padding: .7rem .6rem;
    font-size: .82rem;
    line-height: 1.3;
    overflow-wrap: break-word;
    hyphens: auto;
  }

  .lf-sites-page.rd .rd-pricing .table-responsive tbody th,
  .lf-sites-page.rd .rd-diferenca .table-responsive tbody th,
  .lf-sites-page.rd .rd-diferenca .table-responsive tbody td:first-child {
    box-shadow: 1px 0 0 var(--rd-linha);
  }

  .lf-sites-page.rd .rd-pricing .table-responsive td,
  .lf-sites-page.rd .rd-diferenca .table-responsive td {
    padding: .7rem .75rem;
    font-size: .92rem;
  }
}

/* === Redesign da página de criação de sites (2026-10-02, F-325) === */

/* ---------- Cards que só esta página usa: mesma borda, raio e sombra dos demais ---------- */

.lf-sites-page.rd .lf-scope-card,
.lf-sites-page.rd .lf-budget-card,
.lf-sites-page.rd .lf-feature-card {
  border: 1px solid var(--rd-linha);
  border-radius: var(--rd-raio);
  box-shadow: var(--rd-sombra);
}

.lf-sites-page.rd .lf-scope-card h3,
.lf-sites-page.rd .lf-budget-card h3,
.lf-sites-page.rd .lf-feature-card h3 {
  color: var(--lfcs-texto);
  font-size: 1.12rem;
  letter-spacing: -.01em;
}

.lf-sites-page.rd .lf-scope-card p,
.lf-sites-page.rd .lf-budget-card p,
.lf-sites-page.rd .lf-feature-card p {
  font-size: 1.02rem;
}

/* Título de seção marcado como h3.heading2 (tipos e "o que seu site precisa ter"): mesmo equilíbrio dos h2 */

.lf-sites-page.rd h3.heading2 {
  color: var(--lfcs-texto);
  font-size: clamp(1.65rem, 5.7vw, 2.35rem) !important;
  font-weight: 900;
  letter-spacing: -.045em;
  line-height: 1.08;
  text-wrap: balance;
}

/* ---------- Frases de ligação com o blog: nota com filete rosa, em vez de parágrafo solto ---------- */

.lf-sites-page.rd .lf-types-links {
  max-width: 860px;
  margin: 12px 0 0;
  padding: 4px 0 4px 18px;
  text-align: left;
  border-left: 3px solid color-mix(in srgb, var(--lfcs-rosa) 45%, #ffffff);
}

.lf-sites-page.rd .lf-types-links a,
.lf-sites-page.rd .rd-head-split .lf-section-head p a {
  color: #242424;
  text-decoration-color: var(--cor-destaque);
  text-decoration-line: underline;
  text-decoration-thickness: 2px;
}

/* ---------- Construtor ou agência: mesma dupla de cards, em seção branca ---------- */

.lf-sites-page.rd .rd-compare.rd-branco {
  background: #ffffff;
}

.lf-sites-page.rd .rd-compare.rd-branco .lf-compare-card:not(.lf-compare-card-featured) {
  background: var(--lfcs-fundo);
}

/* ---------- O que seu novo site precisa ter: painel sem moldura, lateral fixa ---------- */

.lf-sites-page.rd .rd-needs {
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-needs .lf-panel {
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.lf-sites-page.rd .rd-needs .lf-feature-card {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  column-gap: 16px;
  padding: 24px;
  background: #ffffff;
}

.lf-sites-page.rd .rd-needs .lf-feature-card span {
  width: 48px;
  height: 48px;
  grid-row: 1 / span 2;
  margin: 0;
}

.lf-sites-page.rd .rd-needs .lf-feature-card h3 {
  align-self: center;
  margin-bottom: 6px;
}

.lf-sites-page.rd .rd-needs .lf-feature-card p {
  grid-column: 2;
  margin-bottom: 0;
}

.lf-sites-page.rd .rd-needs .lf-side-card {
  border-radius: var(--rd-raio);
  box-shadow: var(--rd-sombra);
}

.lf-sites-page.rd .rd-needs .lf-side-card-accent {
  border: 1px solid var(--rd-linha);
  border-top: 4px solid var(--lfcs-rosa);
}

.lf-sites-page.rd .rd-needs .lf-side-card:not(.lf-side-card-accent) {
  background: var(--lf-azul-claro);
  border-color: transparent;
  box-shadow: none;
}

.lf-sites-page.rd .rd-needs .lf-side-card:not(.lf-side-card-accent) .lf-location-list {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-needs .container > .row > *:last-child {
    position: sticky;
    top: calc(var(--rd-topo) + 24px);
  }
}

/* ---------- O que você recebe: seis entregas em lista de duas colunas, ícone ao lado ---------- */

.lf-sites-page.rd .rd-scope {
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-scope .lf-scope-card {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  column-gap: 18px;
  padding: 24px 0;
  background: transparent;
  border: 0;
  border-top: 1px solid var(--rd-linha);
  border-radius: 0;
  box-shadow: none;
}

.lf-sites-page.rd .rd-scope .lf-scope-card:hover {
  transform: none;
  box-shadow: none;
}

.lf-sites-page.rd .rd-scope .lf-scope-card span {
  width: 48px;
  height: 48px;
  grid-row: 1 / span 2;
  margin: 0;
}

.lf-sites-page.rd .rd-scope .lf-scope-card h3 {
  align-self: center;
  margin-bottom: 6px;
}

.lf-sites-page.rd .rd-scope .lf-scope-card p {
  grid-column: 2;
  margin-bottom: 0;
}

.lf-sites-page.rd .rd-scope .row {
  --bs-gutter-y: 0;
}

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-scope .row {
    --bs-gutter-x: 64px;
  }

  .lf-sites-page.rd .rd-scope .row > * {
    flex: 0 0 50%;
    width: 50%;
  }
}

/* ---------- Fatores do orçamento: continuação do preço, seis fatores com filete rosa ---------- */

.lf-sites-page.rd .rd-budget {
  padding-top: 0;
  background: #f8fafc; /* a mesma cor em que a seção de preço termina: as duas leem como um bloco só */
}

.lf-sites-page.rd .rd-budget .lf-budget-card {
  padding: 22px 22px 22px 26px;
  background: #ffffff;
  border-color: var(--rd-linha);
  border-left: 4px solid var(--lfcs-rosa);
  box-shadow: none;
}

.lf-sites-page.rd .rd-budget .lf-budget-card p {
  margin-bottom: 0;
}

/* ---------- Preço: nota de prazo alinhada aos cards ---------- */

.lf-sites-page.rd .rd-pricing .lf-price-note.rd-note {
  max-width: none;
  color: #242424;
  font-size: .98rem;
  text-align: center;
}

/* ---------- Quando vale a pena: link do texto de apoio na paleta ---------- */

.lf-sites-page.rd .rd-signs .lf-types-links {
  margin-top: 16px;
}

/* === Redesign da página de Conteúdo para SEO e GEO (2026-10-02, F-330) === */

/* ---------- Cápsula: quatro parágrafos de um lado, preço e ficha do outro, em metades iguais
   (na proporção 7/5 a ficha ficava cerca de 300 px mais alta que o texto) ---------- */

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-answer.rd-meio .lf-answer-box > .row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 48px;
  }
}

/* Seção que continua a anterior, no mesmo fundo: sem o respiro de cima em dobro */

.lf-sites-page.rd .lf-section.rd-cont {
  padding-top: 0;
}

.lf-sites-page.rd .lf-section.rd-fundo {
  background: var(--lfcs-fundo);
}

/* ---------- Texto novo ou reescrita: faixa azul-clara em seção branca, fala do especialista em destaque ---------- */

.lf-sites-page.rd .rd-reescrita {
  background: #ffffff;
}

.lf-sites-page.rd .rd-reescrita .col-lg-7 > p:last-child {
  margin: 24px 0 0;
  padding: 4px 0 4px 18px;
  color: var(--lfcs-texto);
  border-left: 3px solid var(--lfcs-rosa);
  font-size: 1.08rem;
}

.lf-sites-page.rd .rd-analisa .lf-types-links {
  max-width: none;
  margin: 0 0 1rem;
  padding: 0;
  border-left: 0;
}

/* ---------- Três frentes: três cards em seção clara, com o filete rosa no alto ---------- */

.lf-sites-page.rd .rd-frentes {
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-frentes .lf-type-card {
  background: #ffffff;
  border-top: 3px solid var(--lfcs-rosa);
}

/* A tabela das três frentes continua a seção dos cards, no mesmo fundo */

.lf-sites-page.rd .rd-diferenca.rd-cont {
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-diferenca.rd-cont .table-responsive {
  background: #ffffff;
}

/* O que você recebe: fecha o bloco claro, com o painel branco de borda rosa */

.lf-sites-page.rd .rd-entity.rd-cont {
  background: var(--lfcs-fundo);
}

.lf-sites-page.rd .rd-entity.rd-cont .container > .row {
  background: #ffffff;
}

/* ---------- O que o Google e as IAs pedem: tabela de três colunas, primeira mais estreita ---------- */

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-regras .table-responsive tbody th {
    width: 24%;
  }

  .lf-sites-page.rd .rd-regras .table-responsive td {
    width: 38%;
  }
}

/* ---------- Medição: quatro cards em uma linha (a regra de 3 + 2 é para cinco) ---------- */

@media (min-width: 992px) {
  .lf-sites-page.rd .rd-ring.rd-quatro .row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .lf-sites-page.rd .rd-ring.rd-quatro .row > *:nth-child(n) {
    grid-column: span 1;
  }
}

.lf-sites-page.rd .rd-ring.rd-quatro .lf-audience-card {
  background: #ffffff;
}
