/*
 * Site-wide typography rules (client spec, 2026-07-19).
 *
 * - Body copy: Montserrat
 * - H1-H3: Ariata Display (unchanged) - falls back to Georgia/serif since
 *   Ariata Display is a licensed display font not loaded in this prototype.
 * - H4-H6: Montserrat, semibold, stepped down in size (h4 > h5 > h6) so
 *   they still read as a heading tier below H1-H3. H6 gets a small-caps
 *   style uppercase treatment since it's typically the smallest/deepest
 *   heading level (eyebrow-style labels); H4/H5 keep natural case since
 *   existing H4 usage on the site is full-sentence itinerary titles.
 *
 * This file is linked from every page's <head>, right after the Tailwind
 * CDN script tag. Individual pages may still carry their own local
 * ".section-title" rule for Ariata Display - that's harmless duplication,
 * not a conflict, since the rule is identical.
 */

/*
 * !important is required here: every page's <body> tag carries Tailwind's
 * "font-sans" utility class (class selector, specificity 0,1,0), which
 * otherwise beats this plain element selector (specificity 0,0,1) and
 * silently wins the cascade regardless of stylesheet order.
 */
body {
  font-family: "Montserrat", ui-sans-serif, system-ui, -apple-system, sans-serif !important;
}

h1,
h2,
h3,
.section-title {
  font-family: "Ariata Display", Georgia, serif;
}

/*
 * Card titles (trip finder cards, Related Trips cards) are marked up as
 * h2/h3 for semantic structure, but read as compact sans-serif labels
 * rather than editorial headings - keep these on Montserrat, overriding
 * the h1-h3 rule above. Class selector beats element selector, so no
 * !important needed here.
 */
.wa-card-title,
.hero-eyebrow,
.nav-tile-title {
  font-family: "Montserrat", ui-sans-serif, system-ui, -apple-system, sans-serif;
}

h4,
h5,
h6 {
  font-family: "Montserrat", ui-sans-serif, system-ui, -apple-system, sans-serif;
  font-weight: 600;
}

h4 {
  font-size: 1.125rem; /* text-lg */
  line-height: 1.4;
}

h5 {
  font-size: 1rem; /* text-base */
  line-height: 1.4;
}

h6 {
  font-size: 0.875rem; /* text-sm */
  line-height: 1.4;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
