/**
 * Scoped typography + spacing for Week 1 (page) and Week 3 (join) prelaunch templates.
 * Matches default Oliv home: Inter / --ff-body for UI, Lora italic for emphasis, Oliv gold #ad974f.
 */
.oliv-prelaunch-page {
  --font-primary: var(--ff-body, "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif);
  --font-serif: "Lora", Georgia, "Times New Roman", serif;
}

/* —— Hero: Inter title + Lora italic emphasis (oliv-hero pattern) —— */
.oliv-prelaunch-page .plw1-hero,
.oliv-prelaunch-page .plw3-hero {
  min-height: max(420px, calc(70vh - 100px));
  min-height: max(420px, calc(70dvh - 100px));
}

.oliv-prelaunch-page .plw1-hero__content {
  padding: 76px 24px 48px;
  gap: 22px;
}

.oliv-prelaunch-page .plw3-hero__content {
  padding: 76px 24px 56px;
  gap: 22px;
}

.oliv-prelaunch-page .plw1-hero__eyebrow,
.oliv-prelaunch-page .plw3-hero__badge {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.28em;
}

.oliv-prelaunch-page .plw1-hero__heading {
  font-family: var(--ff-body, "Inter", sans-serif);
  font-weight: 700;
  font-size: clamp(32px, 5vw, 64px);
  line-height: 1.04;
  letter-spacing: -0.02em;
  font-style: normal;
}

.oliv-prelaunch-page .plw1-hero__heading em {
  font-family: "Lora", Georgia, serif;
  font-style: italic;
  font-weight: 400;
  color: #ad974f;
}

.oliv-prelaunch-page .plw3-hero__heading.font-serif,
.oliv-prelaunch-page .plw3-hero__heading {
  font-family: var(--ff-body, "Inter", sans-serif);
  font-weight: 700;
  font-size: clamp(32px, 5vw, 64px);
  line-height: 1.04;
  letter-spacing: -0.02em;
  font-style: normal;
}

.oliv-prelaunch-page .plw3-hero__heading em {
  font-family: "Lora", Georgia, serif;
  font-style: italic;
  font-weight: 400;
  color: #ad974f;
}

.oliv-prelaunch-page .plw1-hero__subtitle,
.oliv-prelaunch-page .plw3-hero__subtitle {
  font-size: clamp(13px, 1.35vw, 18px);
  line-height: 1.55;
}

.oliv-prelaunch-page .plw3-hero__countdown-number.font-serif {
  font-family: var(--ff-body, "Inter", sans-serif);
  font-weight: 600;
}

/* —— W1 section titles → Inter (oliv section h2) —— */
.oliv-prelaunch-page .plw1-founders__heading {
  font-family: var(--ff-heading, var(--ff-body), "Inter", sans-serif);
  font-weight: 700;
  font-size: clamp(26px, 3.5vw, 48px);
  line-height: 1.08;
  font-style: normal;
}

.oliv-prelaunch-page .plw1-cta__heading,
.oliv-prelaunch-page .plw1-cta-link__heading {
  font-family: var(--ff-heading, var(--ff-body), "Inter", sans-serif);
  font-weight: 700;
  font-size: clamp(26px, 3.5vw, 48px);
  line-height: 1.08;
  font-style: normal;
}

.oliv-prelaunch-page .plw1-video__eyebrow,
.oliv-prelaunch-page .plw1-founders__eyebrow {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.28em;
}

.oliv-prelaunch-page .plw1-video__heading {
  font-size: clamp(22px, 3vw, 40px);
  line-height: 1.15;
}

.oliv-prelaunch-page .plw1-video__subheading {
  font-size: clamp(13px, 1.35vw, 18px);
  line-height: 1.55;
}

/* Gold accents → brand token */
.oliv-prelaunch-page .plw1-stats__card {
  --plw1-stats-accent: #ad974f;
}

.oliv-prelaunch-page .plw1-founders__card {
  --plw1-founders-accent: #ad974f;
}

/* —— W3 interior sections —— */
.oliv-prelaunch-page .plw3-offer__eyebrow,
.oliv-prelaunch-page .plw3-test__eyebrow,
.oliv-prelaunch-page .plw3-team__eyebrow,
.oliv-prelaunch-page .plw3-faq__eyebrow,
.oliv-prelaunch-page .plw3-fcta__eyebrow {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.28em;
}

.oliv-prelaunch-page .plw3-offer__heading.font-serif,
.oliv-prelaunch-page .plw3-test__heading.font-serif,
.oliv-prelaunch-page .plw3-team__heading.font-serif,
.oliv-prelaunch-page .plw3-faq__heading.font-serif,
.oliv-prelaunch-page .plw3-fcta__heading.font-serif {
  font-family: var(--ff-heading, var(--ff-body), "Inter", sans-serif);
  font-weight: 700;
  font-size: clamp(26px, 3.5vw, 42px);
  line-height: 1.08;
  letter-spacing: -0.02em;
  font-style: normal;
}

.oliv-prelaunch-page .plw3-fcta__heading em {
  font-family: "Lora", Georgia, serif;
  font-style: italic;
  font-weight: 400;
  color: #ad974f;
}

.oliv-prelaunch-page .plw3-offer__card-title.font-serif {
  font-family: var(--ff-heading, var(--ff-body), "Inter", sans-serif);
  font-weight: 600;
  font-style: normal;
}

.oliv-prelaunch-page .plw3-team__name.font-serif {
  font-family: var(--ff-heading, var(--ff-body), "Inter", sans-serif);
  font-weight: 600;
  font-style: normal;
}

.oliv-prelaunch-page .plw3-offer,
.oliv-prelaunch-page .plw3-test,
.oliv-prelaunch-page .plw3-team {
  padding-top: 72px;
  padding-bottom: 72px;
}

@media (min-width: 768px) {
  .oliv-prelaunch-page .plw3-offer,
  .oliv-prelaunch-page .plw3-test,
  .oliv-prelaunch-page .plw3-team {
    padding-top: 88px;
    padding-bottom: 88px;
  }
}

.oliv-prelaunch-page .plw3-faq {
  padding-top: 72px;
  padding-bottom: 72px;
}

@media (min-width: 768px) {
  .oliv-prelaunch-page .plw3-faq {
    padding-top: 88px;
    padding-bottom: 88px;
  }
}

.oliv-prelaunch-page .plw3-fcta {
  padding-top: 88px;
  padding-bottom: 88px;
}

.oliv-prelaunch-page .plw3-offer__inner,
.oliv-prelaunch-page .plw3-test__inner,
.oliv-prelaunch-page .plw3-team__inner,
.oliv-prelaunch-page .plw3-faq__inner,
.oliv-prelaunch-page .plw3-cred__inner {
  padding-left: 24px;
  padding-right: 24px;
}

.oliv-prelaunch-page .plw3-offer__card-desc,
.oliv-prelaunch-page .plw3-test__quote,
.oliv-prelaunch-page .plw3-team__bio,
.oliv-prelaunch-page .plw3-faq__answer-text,
.oliv-prelaunch-page .plw3-fcta__subtitle {
  font-size: clamp(13px, 1.35vw, 18px);
  line-height: 1.55;
}
