/* ============================================================ */
/* MAISON FORGE · SITE-WIDE TYPOGRAPHY PASS                      */
/* Loaded LAST on every page — single source of type truth.     */
/* Paragraph font: Poppins. One paragraph size, one title size. */
/* ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&display=swap');

:root {
  --font-body: 'Poppins', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  --type-paragraph: clamp(14px, 1.15vw, 19.4px);  /* universal paragraph size, Poppins Light */
  --type-title: clamp(52px, 7.3vw, 114px);        /* ref: "Who are our Luminaries?" */
}

body {
  font-family: 'Poppins', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* The logo is NEVER re-typeset — logotype text always uses the actual
   brand face (Helvetica bold), exactly as in mf-logo.png. */
.word-mark, .mf-logotype, .nav-wordmark, footer .wordmark, .mc-wordmark {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

/* ── One universal paragraph size, in Poppins Light ───────── */
p:not(.hero-tagline):not(.hpq-line):not(.lum-brief),
.body-text, .intro-text, .page-sub, .qa-answer, .qa-answer p,
.tp-bio, .p-bio, .group-intro, .profile-body,
.lum-card-summary, .lum-card-tagline,
.tier-tagline, .tier-desc, .one-day-body p, .close-body,
.sus-qa-answer, .note-text, .vb-answer {
  font-family: 'Poppins', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
  font-size: clamp(14px, 1.15vw, 19.4px) !important;
  font-weight: 300 !important;
}

/* ── Buttons carry no outlines anywhere on the site ────────── */
.cta-button, .tier-cta, .board-cta-btn, .sus-cta-btn,
.gs-cta-btn, .cat-cta-primary, .menu-commission-btn, .tier-card .cta-button {
  border: none !important;
}
.menu-commission-btn { background: rgba(201,168,76,0.16); }

/* ── One universal section-title size — large and dramatic ── */
h1.display-xl, h1.page-headline, h1.headline-style,
h2.headline, .team-title, .diff-title {
  font-size: clamp(34px, 7.3vw, 114px) !important;
  line-height: 1.05;
}

/* ── Mobile: display serifs read small need looser tracking and taller leading ── */
@media (max-width: 768px) {
  h1.display-xl, h1.page-headline, h1.headline-style,
  h2.headline, .team-title, .diff-title {
    letter-spacing: 0.015em;
    line-height: 1.12;
  }
  /* touch targets: tracked-caps links get a real tap area */
  .read-more, .cta-secondary, .lum-profile-link, .board-link {
    display: inline-block; padding: 12px 4px; margin: -6px 0;
  }
}

/* ── Scroll fade-ins retired site-wide: content is always visible ── */
.reveal, .lum-item, .pricing-card, .cta-inline-wrap {
  opacity: 1 !important;
  transform: none !important;
  transition-property: background, color, border-color !important;
}
