/* =========================================================
   Sanskarshala — Typography (Pulp Display, from the FONT folder)
   Loaded last on every page so all pages share one type scale:
     titles     → Bold 700
     headings   → SemiBold 600
     subtitles  → Medium 500
     body text  → Regular 400, relaxed line height
   ========================================================= */

/* ---- page titles (h1) ---- */
.hero__title,
.story__text,
.cta__title {
  font-weight: 700;
  letter-spacing: -0.025em;
}

/* ---- section titles (h2) ---- */
.section-title,
.menu-card__title {
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.1;
}

/* ---- card / item headings (h3) ---- */
h3,
.mv-card__text p,
.foundation-sec__close,
.more__big,
.quote blockquote p {
  font-weight: 600;
  letter-spacing: -0.015em;
}

/* ---- accent words: same font and weight as their heading, set apart by colour ---- */
.accent,
.accent-serif {
  font-weight: inherit;
  font-style: normal;
  font-variation-settings: normal;
  letter-spacing: inherit;
}

/* Pulp Display has no italic: emphasise with colour and weight instead of a fake slant */
em,
.story-sec__lead em {
  font-style: normal;
  font-weight: 600;
}

/* ---- subtitles, eyebrows and lead lines ---- */
.eyebrow,
.about-hero__eyebrow,
.mv-card__title,
.story__lead-title {
  font-weight: 600;
  letter-spacing: 0.14em;
}

.prog-hero__sub,
.story__sub,
.cta__sub,
.story-sec__text .story-sec__lead,
.story-sec__text .story-sec__close,
.story__lead p {
  font-weight: 500;
}

/* ---- body copy ---- */
p {
  font-weight: 400;
}

.story-sec__text p,
.prog-head__text,
.more__text,
.why-sec__text p,
.foundation-sec__intro,
.kit__item p,
.delivery__item p,
.story-card blockquote p,
.badge p,
.step p,
.timeline__item p,
.f-pillar p {
  line-height: 1.7;
}

/* ---- buttons and navigation stay crisp ---- */
.btn-enroll,
.btn-ghost,
.btn-dark,
.subnav__list a {
  font-weight: 600;
}
