/* ==========================================================================
   LANDING PAGE — RAMOS MEDICINA DIAGNÓSTICA v2
   Baseado na referência: hero foto+copy, stats strip, banner CTA, steps, diferenciais
   ========================================================================== */

/* ── RESET / BASE ────────────────────────────────────────────────────────── */
* { box-sizing: border-box; margin: 0; padding: 0; }

/* ── STICKY HEADER (glassmorphism leve) ─────────────────────────────────── */
.lp-header {
  position: sticky;
  top: 0;
  z-index: 500;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--color-neutral-100);
  box-shadow: var(--shadow-sm);
  height: 70px;
}

.lp-header-inner {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.lp-logo {
  height: 40px;
  width: auto;
}

.lp-nav {
  display: none;
  gap: var(--spacing-xl);
  list-style: none;
}

@media (min-width: 900px) {
  .lp-nav { display: flex; }
}

.lp-nav a {
  font-family: var(--font-family-display);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-700);
  transition: color var(--transition-fast);
}

.lp-nav a:hover { color: var(--color-blue-600); }

/* ── HERO — foto esquerda, copy direita ─────────────────────────────────── */
.lp-hero {
  background: #ffffff;
  overflow: hidden;
}

.lp-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  min-height: 540px;
}

@media (min-width: 900px) {
  .lp-hero-grid {
    grid-template-columns: 1fr 1fr;
    min-height: 620px;
  }
}

/* foto ocupa todo o espaço do lado esquerdo */
.lp-hero-photo {
  position: relative;
  overflow: hidden;
  min-height: 320px;
}

.lp-hero-photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

/* overlay gradient para legibilidade */
.lp-hero-photo::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 60%, rgba(255,255,255,0.15) 100%);
  pointer-events: none;
}

/* eyebrow tag acima da foto */
.lp-hero-tag {
  position: absolute;
  top: var(--spacing-lg);
  left: var(--spacing-lg);
  z-index: 10;
  font-family: var(--font-family-display);
  font-size: 10px;
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
  color: var(--color-blue-700);
  background: rgba(255,255,255,0.9);
  padding: 6px 14px;
  border-radius: var(--radius-full);
  border: 1px solid var(--color-blue-100);
  backdrop-filter: blur(8px);
}

/* copy / form lado direito */
.lp-hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--spacing-3xl) var(--spacing-xl);
  background: #ffffff;
}

@media (min-width: 900px) {
  .lp-hero-copy {
    padding: var(--spacing-3xl) var(--spacing-xxl);
  }
}

.lp-hero-eyebrow {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
  color: var(--color-orange-600);
  margin-bottom: var(--spacing-sm);
}

.lp-hero-headline {
  font-family: var(--font-family-display);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-extrabold);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tighter);
  color: var(--color-neutral-900);
  margin-bottom: var(--spacing-md);
}

.lp-hero-headline .hl {
  color: var(--color-blue-600);
  position: relative;
}

.lp-hero-headline .hl::after {
  content: '';
  position: absolute;
  bottom: 2px;
  left: 0;
  width: 100%;
  height: 7px;
  background: rgba(182, 102, 38, 0.18);
  z-index: -1;
  border-radius: var(--radius-sm);
}

@media (min-width: 576px) {
  .lp-hero-headline { font-size: var(--font-size-4xl); }
}

.lp-hero-sub {
  font-size: var(--font-size-md);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--spacing-xl);
  max-width: 460px;
}

/* ── FORM INLINE ─────────────────────────────────────────────────────────── */
.lp-inline-form {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  max-width: 440px;
}

.lp-fi-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-sm);
}

.lp-fi-input {
  width: 100%;
  font-size: var(--font-size-sm);
  padding: 0.8125rem 1rem;
  border: 1.5px solid var(--color-neutral-200);
  border-radius: var(--radius-md);
  background: #fff;
  outline: none;
  transition: all var(--transition-normal);
  color: var(--color-neutral-900);
  box-shadow: var(--shadow-sm);
  font-family: var(--font-family-sans);
}

.lp-fi-input:focus {
  border-color: var(--color-blue-400);
  box-shadow: 0 0 0 4px rgba(62, 83, 147, 0.10);
}

.lp-fi-input::placeholder { color: var(--color-neutral-400); }

.lp-wa-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: fit-content;
  background: linear-gradient(135deg, #25D366 0%, #1abe5b 100%);
  color: #ffffff;
  font-family: var(--font-family-display);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  padding: 0.9375rem 1.5rem;
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  text-decoration: none;
  transition: all var(--transition-normal);
  box-shadow: 0 8px 20px -6px rgba(37,211,102,0.45);
  letter-spacing: 0.01em;
}

.lp-wa-btn:hover {
  transform: translateY(-2px) scale(1.01);
  box-shadow: 0 14px 28px -6px rgba(37,211,102,0.55);
  filter: brightness(1.04);
}

.lp-wa-btn:active { transform: translateY(0) scale(1); }

.lp-fi-microcopy {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: var(--font-size-xs);
  color: var(--color-neutral-400);
}

/* WhatsApp SVG icon */
.icon-wa {
  display: inline-block;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

/* ── STATS STRIP ─────────────────────────────────────────────────────────── */
.lp-stats-strip {
  background: var(--color-neutral-50);
  border-top: 1px solid var(--color-neutral-100);
  border-bottom: 1px solid var(--color-neutral-100);
  padding: var(--spacing-xl) 0;
  overflow: hidden;
}

.lp-stats-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--spacing-xl) var(--spacing-3xl);
}

.lp-stat-item {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.lp-stat-num {
  font-family: var(--font-family-display);
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-blue-600);
  line-height: 1;
  letter-spacing: var(--letter-spacing-tighter);
}

.lp-stat-label {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-500);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
}

.lp-stat-desc {
  font-size: 11px;
  color: var(--color-neutral-400);
  max-width: 130px;
  line-height: 1.4;
}

.lp-stat-divider {
  width: 1px;
  height: 60px;
  background: var(--color-neutral-200);
}

@media (max-width: 640px) {
  .lp-stat-divider { display: none; }
}

/* ── BANNER AZUL (dark full-width) ──────────────────────────────────────── */
.lp-banner {
  background: linear-gradient(135deg, var(--color-blue-700) 0%, var(--color-blue-900) 100%);
  color: #ffffff;
  padding: var(--spacing-4xl) 0;
  position: relative;
  overflow: hidden;
}

/* decorative radial glow */
.lp-banner::before {
  content: '';
  position: absolute;
  top: -80px;
  right: 10%;
  width: 480px;
  height: 480px;
  border-radius: var(--radius-full);
  background: radial-gradient(circle, rgba(182,102,38,0.18) 0%, transparent 70%);
  pointer-events: none;
}

.lp-banner-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-xxl);
  align-items: center;
}

@media (min-width: 900px) {
  .lp-banner-grid { grid-template-columns: 1fr 1fr; }
}

.lp-banner-eyebrow {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
  color: var(--color-orange-400);
  margin-bottom: var(--spacing-sm);
}

.lp-banner-h2 {
  font-family: var(--font-family-display);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-extrabold);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tighter);
  margin-bottom: var(--spacing-md);
}

@media (min-width: 576px) {
  .lp-banner-h2 { font-size: var(--font-size-4xl); }
}

.lp-banner-desc {
  font-size: var(--font-size-md);
  color: rgba(255,255,255,0.75);
  line-height: var(--line-height-relaxed);
}

/* row de stats dentro do banner */
.lp-banner-stats {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-xl);
  margin-top: var(--spacing-xl);
  padding-top: var(--spacing-lg);
  border-top: 1px solid rgba(255,255,255,0.12);
}

.lp-banner-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.lp-banner-stat-num {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xxl);
  font-weight: var(--font-weight-extrabold);
  color: #ffffff;
  line-height: 1;
}

.lp-banner-stat-label {
  font-size: var(--font-size-xs);
  color: rgba(255,255,255,0.6);
  font-weight: var(--font-weight-medium);
}

/* right side: vision/mission/motto cards */
.lp-vmc-grid {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.lp-vmc-card {
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: var(--radius-lg);
  padding: var(--spacing-lg);
  backdrop-filter: blur(8px);
  transition: background var(--transition-normal), transform var(--transition-normal);
  display: flex;
  gap: var(--spacing-md);
  align-items: flex-start;
}

.lp-vmc-card:hover {
  background: rgba(255,255,255,0.13);
  transform: translateX(4px);
}

.lp-vmc-icon {
  width: 44px;
  height: 44px;
  border-radius: var(--radius-md);
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.15);
  color: var(--color-orange-300);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all var(--transition-normal);
}

.lp-vmc-card:hover .lp-vmc-icon {
  background: var(--color-orange-600);
  color: #ffffff;
  border-color: var(--color-orange-500);
}

.lp-vmc-title {
  font-family: var(--font-family-display);
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-bold);
  color: #ffffff;
  margin-bottom: 4px;
}

.lp-vmc-desc {
  font-size: var(--font-size-sm);
  color: rgba(255,255,255,0.65);
  line-height: var(--line-height-relaxed);
}

/* ── PORQUE ESCOLHER (left copy + right steps) ──────────────────────────── */
.lp-porque {
  background: #ffffff;
  padding: var(--spacing-4xl) 0;
  border-top: 1px solid var(--color-neutral-100);
}

.lp-porque-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-3xl);
  align-items: center;
}

@media (min-width: 900px) {
  .lp-porque-grid { grid-template-columns: 1fr 1fr; }
}

.lp-section-eyebrow {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
  color: var(--color-orange-600);
  display: block;
  margin-bottom: var(--spacing-xs);
}

.lp-section-h2 {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xxl);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-neutral-900);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tight);
  margin-bottom: var(--spacing-md);
}

@media (min-width: 576px) {
  .lp-section-h2 { font-size: var(--font-size-3xl); }
}

.lp-section-desc {
  font-size: var(--font-size-md);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--spacing-xl);
}

/* checklist */
.lp-checklist {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-xl);
}

.lp-checklist li {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  font-family: var(--font-family-display);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-800);
}

.lp-check-icon {
  width: 22px;
  height: 22px;
  border-radius: var(--radius-full);
  background: var(--color-blue-50);
  color: var(--color-blue-600);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border: 1px solid rgba(62,83,147,0.12);
}

/* steps (right side) */
.lp-steps {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.lp-step {
  display: flex;
  gap: var(--spacing-md);
  position: relative;
  padding-bottom: var(--spacing-xl);
}

.lp-step:last-child { padding-bottom: 0; }

/* vertical connector line */
.lp-step-left {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
}

.lp-step-num {
  width: 44px;
  height: 44px;
  border-radius: var(--radius-full);
  background: var(--gradient-primary);
  color: #ffffff;
  font-family: var(--font-family-display);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-extrabold);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--shadow-blue-glow);
  flex-shrink: 0;
  position: relative;
  z-index: 2;
}

.lp-step-line {
  width: 2px;
  flex: 1;
  background: linear-gradient(to bottom, var(--color-blue-200), transparent);
  margin-top: var(--spacing-xs);
}

.lp-step:last-child .lp-step-line { display: none; }

.lp-step-content {
  background: var(--color-neutral-50);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--spacing-lg);
  flex: 1;
  transition: all var(--transition-normal);
}

.lp-step-content:hover {
  border-color: var(--color-blue-200);
  background: #ffffff;
  box-shadow: var(--shadow-md);
  transform: translateX(4px);
}

.lp-step-title {
  font-family: var(--font-family-display);
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-bold);
  color: var(--color-neutral-900);
  margin-bottom: 4px;
}

.lp-step-desc {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
}

/* ── UNIDADES ──────────────────────────────────────────────────────────── */
.lp-unidades {
  background: var(--color-neutral-50);
  padding: var(--spacing-4xl) 0;
  border-top: 1px solid var(--color-neutral-100);
}

.lp-unidades-header {
  text-align: center;
  max-width: 520px;
  margin: 0 auto var(--spacing-xxl);
}

.lp-unidades-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-lg);
}

@media (min-width: 640px) {
  .lp-unidades-grid { grid-template-columns: repeat(3, 1fr); }
}

.lp-unit-hours-block {
  background: var(--color-neutral-50);
  border-radius: var(--radius-md);
  padding: var(--spacing-sm) var(--spacing-md);
  font-size: var(--font-size-xs);
  color: var(--color-neutral-600);
  line-height: var(--line-height-relaxed);
  border: 1px solid var(--color-neutral-100);
}

.lp-unit-hours-block strong {
  display: block;
  font-family: var(--font-family-display);
  font-weight: var(--font-weight-bold);
  color: var(--color-neutral-800);
  margin-bottom: 2px;
}

/* ── TESTIMONIAL CARDS ───────────────────────────────────────────────────── */
.lp-testimonials {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.lp-testimonial-card {
  background: var(--color-neutral-50);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--spacing-lg);
  transition: all var(--transition-normal);
  position: relative;
}

.lp-testimonial-card:hover {
  border-color: var(--color-blue-200);
  background: #ffffff;
  box-shadow: var(--shadow-md);
  transform: translateX(4px);
}

.lp-testimonial-quote {
  color: var(--color-blue-200);
  font-size: 1.25rem;
  margin-bottom: var(--spacing-sm);
  line-height: 1;
}

.lp-testimonial-text {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--spacing-md);
  font-style: italic;
}

.lp-testimonial-author {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  padding-top: var(--spacing-sm);
  border-top: 1px solid var(--color-border);
}

.lp-testimonial-avatar {
  width: 40px;
  height: 40px;
  border-radius: var(--radius-full);
  background: var(--gradient-primary);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-family-display);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-extrabold);
  flex-shrink: 0;
}

.lp-testimonial-name {
  font-family: var(--font-family-display);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  color: var(--color-neutral-900);
  line-height: 1.2;
}

.lp-testimonial-context {
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
}

/* ── CTA FORM FINAL ──────────────────────────────────────────────────────── */
.lp-cta-final {
  background: linear-gradient(160deg, var(--color-blue-700) 0%, var(--color-blue-900) 60%, #0f172a 100%);
  padding: var(--spacing-4xl) 0;
  position: relative;
  overflow: hidden;
}

.lp-cta-final::before {
  content: '';
  position: absolute;
  top: -100px;
  right: -80px;
  width: 500px;
  height: 500px;
  border-radius: var(--radius-full);
  background: radial-gradient(circle, rgba(182,102,38,0.2) 0%, transparent 65%);
  pointer-events: none;
}

.lp-cta-final::after {
  content: '';
  position: absolute;
  bottom: -60px;
  left: -40px;
  width: 320px;
  height: 320px;
  border-radius: var(--radius-full);
  background: radial-gradient(circle, rgba(62,83,147,0.35) 0%, transparent 65%);
  pointer-events: none;
}

.lp-cta-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-xxl);
  align-items: center;
  position: relative;
  z-index: 10;
}

@media (min-width: 900px) {
  .lp-cta-grid { grid-template-columns: 1fr 1fr; }
}

.lp-cta-copy-eyebrow {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
  color: var(--color-orange-400);
  margin-bottom: var(--spacing-sm);
}

.lp-cta-copy-h2 {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xxl);
  font-weight: var(--font-weight-extrabold);
  color: #ffffff;
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tight);
  margin-bottom: var(--spacing-md);
}

@media (min-width: 576px) {
  .lp-cta-copy-h2 { font-size: var(--font-size-3xl); }
}

.lp-cta-copy-desc {
  font-size: var(--font-size-md);
  color: rgba(255,255,255,0.75);
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--spacing-xl);
}

/* pills de benefício */
.lp-cta-pills {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-sm);
}

.lp-cta-pill {
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: var(--radius-full);
  padding: 8px 14px;
  font-family: var(--font-family-display);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: rgba(255,255,255,0.9);
}

.lp-cta-pill i { color: var(--color-orange-400); }

/* form card branco */
.lp-cta-form-card {
  background: rgba(255,255,255,0.97);
  border-radius: var(--radius-xxl);
  padding: var(--spacing-xl);
  box-shadow: 0 32px 64px -16px rgba(0,0,0,0.35);
  border: 1px solid rgba(255,255,255,0.5);
  position: relative;
  overflow: hidden;
}

.lp-cta-form-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(135deg, var(--color-orange-500) 0%, var(--color-orange-600) 100%);
}

.lp-cta-form-eyebrow {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
  color: var(--color-orange-600);
  margin-bottom: var(--spacing-xs);
}

.lp-cta-form-title {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-neutral-900);
  line-height: var(--line-height-snug);
  margin-bottom: var(--spacing-sm);
  letter-spacing: var(--letter-spacing-tight);
}

.lp-cta-form-sub {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--spacing-lg);
}

.lp-form-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: var(--spacing-md);
}

.lp-form-label {
  font-family: var(--font-family-display);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  color: var(--color-neutral-700);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-wide);
}

/* ── FOOTER ──────────────────────────────────────────────────────────────── */
.lp-footer {
  background: var(--color-neutral-900);
  color: var(--color-neutral-400);
  padding: var(--spacing-xl) 0;
  border-top: 3px solid var(--color-orange-600);
}

.lp-footer-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--spacing-md);
}

.lp-footer-legal {
  font-size: var(--font-size-xs);
  color: var(--color-neutral-500);
  text-align: center;
}

/* ── NOSSOS EXAMES ──────────────────────────────────────────────────────── */
.lp-exames {
  padding: var(--spacing-4xl) 0;
  background: #ffffff;
}

.lp-exames-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-lg);
  margin-top: var(--spacing-xxl);
}

@media (min-width: 640px) {
  .lp-exames-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 900px) {
  .lp-exames-grid { grid-template-columns: repeat(3, 1fr); }
}

.lp-exame-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
  margin-top: var(--spacing-md);
}

.lp-exame-list li {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  padding-left: var(--spacing-md);
  position: relative;
  line-height: var(--line-height-relaxed);
}

.lp-exame-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  border-radius: var(--radius-full);
  background: var(--color-blue-200);
}

.lp-exame-cta-row {
  margin-top: var(--spacing-xxl);
  padding-top: var(--spacing-xl);
  border-top: 1px solid var(--color-neutral-100);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-md);
}

.lp-exame-cta-text {
  font-size: var(--font-size-md);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
  text-align: center;
  max-width: 500px;
}

/* ── STICKY MOBILE CTA ───────────────────────────────────────────────────── */
.lp-sticky {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(255,255,255,0.97);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-top: 1px solid var(--color-border);
  padding: var(--spacing-sm) var(--spacing-md);
  display: flex;
  z-index: 300;
  box-shadow: 0 -8px 24px rgba(15,23,42,0.08);
  transition: transform var(--transition-normal);
}

@media (min-width: 768px) {
  .lp-sticky { display: none; }
}

.lp-sticky .lp-wa-btn {
  flex: 1;
  font-size: var(--font-size-sm);
  padding: 0.875rem 1rem;
}

/* ── ANIMATIONS ──────────────────────────────────────────────────────────── */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(28px); }
  to   { opacity: 1; transform: translateY(0); }
}

.anim-hero { animation: fadeInUp 0.65s cubic-bezier(0.22,1,0.36,1) both; }
.anim-d1   { animation-delay: 0.05s; }
.anim-d2   { animation-delay: 0.18s; }
.anim-d3   { animation-delay: 0.30s; }
.anim-d4   { animation-delay: 0.42s; }
.anim-d5   { animation-delay: 0.54s; }

.reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.55s cubic-bezier(0.22,1,0.36,1), transform 0.55s cubic-bezier(0.22,1,0.36,1);
}

.reveal.visible { opacity: 1; transform: translateY(0); }

/* ── COMO FUNCIONA ────────────────────────────────────────────────────── */
.lp-como-funciona {
  padding: var(--spacing-xxl) 0;
  background: var(--color-neutral-50);
}

.lp-como-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--spacing-md);
}

.lp-como-card {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-sm);
  background: #fff;
  border-radius: var(--radius-lg);
  padding: var(--spacing-md);
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--color-neutral-100);
  transition: box-shadow 0.25s;
}

.lp-como-card:hover {
  box-shadow: var(--shadow-md);
}

.lp-como-num {
  font-size: var(--font-size-lg);
  font-weight: 800;
  color: var(--color-blue-600);
  line-height: 1;
  min-width: 36px;
  font-variant-numeric: tabular-nums;
}

.lp-como-body { flex: 1; }

.lp-como-title {
  font-size: var(--font-size-sm);
  font-weight: 700;
  color: var(--color-text-primary);
  margin-bottom: 0.25rem;
}

.lp-como-desc {
  font-size: var(--font-size-xs);
  color: var(--color-text-secondary);
  line-height: var(--line-height-relaxed);
  margin-bottom: 0.4rem;
}

.lp-como-tag {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--color-blue-600);
  background: var(--color-blue-50);
  padding: 0.15rem 0.5rem;
  border-radius: var(--radius-full);
}

@media (max-width: 767px) {
  .lp-como-grid { grid-template-columns: 1fr; }
  .lp-hero .lp-wa-btn { width: 100%; }
}
