/*
 * MHG design tokens.
 * Single source of truth for colours, typography, spacing and other primitives.
 * Reference these custom properties from every other stylesheet — never hard-code.
 */

:root {
	/* Colour palette */
	--mhg-color-teal: #1a5c5c;             /* primary — headers, buttons, accents */
	--mhg-color-teal-dark: #144848;        /* darker teal for hover states */
	--mhg-color-charcoal: #2d2d2d;         /* dark section backgrounds, headings */
	--mhg-color-dark-grey: #444444;        /* secondary body text */
	--mhg-color-white: #ffffff;
	--mhg-color-off-white: #f8f7f4;        /* hero, alternating section backgrounds */
	--mhg-color-gold: #c9a84c;             /* icon borders, subtle premium accents */
	--mhg-color-footer-bg: #1a1a1a;        /* footer background */

	/* Borders and surfaces */
	--mhg-color-border-light: #e8e6e0;     /* light grey for card borders, header underline */
	--mhg-color-white-45: rgba(255, 255, 255, 0.45);
	--mhg-color-white-55: rgba(255, 255, 255, 0.55);
	--mhg-color-white-65: rgba(255, 255, 255, 0.65);
	--mhg-color-white-07: rgba(255, 255, 255, 0.07);

	/* Typography */
	--mhg-font-heading: 'Playfair Display', Georgia, serif;
	--mhg-font-body: 'Inter', Helvetica, Arial, sans-serif;

	/* Type scale */
	--mhg-font-size-eyebrow: 0.72rem;          /* section labels */
	--mhg-font-size-nav: 0.78rem;              /* nav links */
	--mhg-font-size-button: 0.78rem;
	--mhg-font-size-value-label: 0.74rem;      /* value strip labels */
	--mhg-font-size-footer-meta: 0.75rem;      /* copyright line */
	--mhg-font-size-footer-link: 0.85rem;
	--mhg-font-size-why-heading: 0.82rem;      /* why-us block titles */
	--mhg-font-size-card-name: 1rem;
	--mhg-font-size-body: 0.92rem;
	--mhg-font-size-body-lg: 1rem;
	--mhg-font-size-section-heading: 2.3rem;
	--mhg-font-size-page-heading: 3.2rem;
	--mhg-font-size-partnership-heading: 2.4rem;

	/* Line height */
	--mhg-line-height-body: 1.75;
	--mhg-line-height-tight: 1.2;

	/* Letter spacing */
	--mhg-letter-spacing-eyebrow: 0.16em;
	--mhg-letter-spacing-button: 0.04em;
	--mhg-letter-spacing-footer-heading: 0.1em;

	/* Spacing scale */
	--mhg-space-xs: 0.5rem;
	--mhg-space-sm: 1rem;
	--mhg-space-md: 2rem;
	--mhg-space-lg: 4rem;
	--mhg-space-xl: 6rem;
	--mhg-space-section: 8rem;

	/* Radii */
	--mhg-radius-sm: 4px;
	--mhg-radius-md: 8px;
	--mhg-radius-lg: 10px;

	/* Layout */
	--mhg-container-max: 1200px;
	--mhg-header-height: 86px;

	/* Motion */
	--mhg-transition-fast: 0.18s ease;
	--mhg-transition-base: 0.25s ease;
}
