/**
 * LTC Design Tokens — "Human Momentum"
 *
 * Single source of truth for colour, type scale, spacing, radii, shadow
 * and motion values. No selectors beyond :root live here — every other
 * ltc-*.css file consumes these custom properties.
 *
 * Font loading: Manrope and Source Serif 4 are self-hosted from
 * assets/fonts/ (SIL-OFL, sourced directly from Google's static font
 * host — see assets/css/ltc-base.css and assets/fonts/LICENSE-AND-
 * SOURCE.txt for the full note). No remote font request is made.
 */

:root {
	/*
	 * Colour direction: "Option A — Fresh Editorial", approved at the
	 * Gate 0 colour review after a three-way comparison against the
	 * same hero/explorer/testimonial/CTA compositions (see
	 * docs/ltc-color-comparison.html, now archived). Replaces the
	 * original beige-leaning palette with near-white/pale-aqua
	 * surfaces, a deeper teal-black dark surface, and a restrained
	 * amber reserved for rare serif-emphasis moments only.
	 */

	/* ---- Colour: ink ---- */
	--ltc-ink-950: #06191B;
	--ltc-ink-900: #0B2528;
	--ltc-ink-700: #294245;

	/* ---- Colour: paper ----
	   Light-surface system standardised 2026-08-08 (pre-staging polish
	   pass): the previous Paper 100 / Mist Surface pairing still read as
	   faintly green/muddy at full-section scale even after the Gate 0
	   revision noted below (client feedback, echoing the older
	   production site's cleaner near-white/grey surface character).
	   Paper 50 and Paper 100 are now genuinely neutral (near-equal
	   R/G/B, no colour cast); Stone 100 is a new, slightly stronger
	   neutral for the rare section that needs more separation than
	   Paper 100 alone. Mist Surface is kept only as a small, deliberate
	   cool-teal accent (dropdown hover states, image-placeholder fills)
	   — never a full-section background — per the design direction:
	   dark teal + white + near-white + neutral grey + teal + selective
	   amber, not "dark teal + greenish grey everywhere."
	   Paper 50: cleanest near-white primary page surface.
	   Paper 100: neutral-grey secondary surface (not green-tinted).
	   Stone 100: stronger neutral separator, used only where a section
	   genuinely needs more contrast than Paper 100 provides. */
	--ltc-paper-50: #FBFCFA;
	--ltc-paper-100: #F4F6F5;
	--ltc-stone-100: #EBEFED;
	--ltc-mist-surface: #EEF4F5;
	--ltc-stone-200: #D8E3E1;

	--ltc-white: #FFFFFF;

	/* ---- Colour: teal accent ---- */
	--ltc-teal-500: #00B7BE;
	--ltc-teal-600: #008F96;
	--ltc-teal-700: #006569;
	--ltc-teal-100: #D7F7F5;

	/* ---- Colour: restrained editorial amber ----
	   A single clean warm amber/gold — used selectively, never as a
	   dominant section colour. On dark-teal surfaces it may be used
	   directly as a text colour for short serif-emphasis moments,
	   bullets, fine rules and small emphasis details (see
	   ltc-base.css .ltc-section--dark .ltc-serif-accent) — it reads
	   correctly there. On light/paper surfaces it is a border,
	   underline, icon/detail colour or a very pale tint, paired with
	   dark-teal text — never a light-surface TEXT colour, since at
	   ~1.8:1 against near-white it fails contrast there. A previous
	   revision solved that contrast problem by progressively darkening
	   this token toward brown/ochre (#8A5A12, then #A76000) for
	   light-surface text; both were removed 2026-08-08 as exactly the
	   muddy-brown drift this token must not repeat. Use dark-teal
	   (--ltc-teal-700) for light-surface emphasis text instead. */
	--ltc-amber: #F4B63D;

	/* ---- Colour: utility ---- */
	--ltc-text-muted: #4E6669;
	--ltc-error: #B42318;
	--ltc-success: #157347;

	/* ---- Font families (system fallback stacks — see ltc-base.css) ---- */
	--ltc-font-sans: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	--ltc-font-serif: 'Source Serif 4', Georgia, 'Times New Roman', Times, serif;

	/* ---- Type scale (desktop, clamp-based) ---- */
	--ltc-type-hero: clamp(3.5rem, 6.4vw, 6rem);           /* 56–96px */
	--ltc-type-h1: clamp(3.25rem, 5.4vw, 4.875rem);        /* 52–78px */
	--ltc-type-h2: clamp(2.5rem, 4vw, 3.625rem);           /* 40–58px */
	--ltc-type-h3: clamp(1.75rem, 2.4vw, 2.125rem);        /* 28–34px */
	--ltc-type-h4: 1.375rem;                               /* 22px, up to 24px at larger steps in ltc-responsive.css */
	--ltc-type-body-lg: 1.25rem;                           /* 20px */
	--ltc-type-body: 1.0625rem;                            /* 17px */
	--ltc-type-nav: 0.875rem;                              /* 14px */
	--ltc-type-eyebrow: 0.8125rem;                         /* 13px */

	--ltc-leading-hero: 0.96;
	--ltc-leading-h1: 1;
	--ltc-leading-h2: 1.06;
	--ltc-leading-h3: 1.16;
	--ltc-leading-h4: 1.25;
	--ltc-leading-body-lg: 1.6;
	--ltc-leading-body: 1.65;

	--ltc-tracking-display: -0.045em;
	--ltc-tracking-h2: -0.035em;
	--ltc-tracking-eyebrow: 0.12em;

	--ltc-weight-body: 400;
	--ltc-weight-label: 500;
	--ltc-weight-subhead: 600;
	--ltc-weight-heading: 700;
	--ltc-weight-numeral: 800;

	/* ---- Spacing scale ---- */
	--ltc-space-1: 4px;
	--ltc-space-2: 8px;
	--ltc-space-3: 12px;
	--ltc-space-4: 16px;
	--ltc-space-5: 24px;
	--ltc-space-6: 32px;
	--ltc-space-7: 48px;
	--ltc-space-8: 64px;
	--ltc-space-9: 80px;
	--ltc-space-10: 96px;
	--ltc-space-11: 128px;
	--ltc-space-12: 160px;

	/* Section spacing per breakpoint (consumed directly + overridden in ltc-responsive.css).
	   Desktop reduced again, from 112px to 42px: this token is applied
	   as full padding-block (both top AND bottom) on every section, so
	   two ordinary adjacent sections were combining to 224px of visible
	   gap (112 + 112) — confirmed live between positioning/programmes,
	   facilitators/faq and faq/insights. At 42px, an ordinary light-to-
	   light adjacency lands at ~84px (target ~72-96px), a --tight-to-
	   --tight adjacency (e.g. how-we-work -> delivery, both already at
	   the 0.6x multiplier) lands at ~50px (target ~40-72px for related
	   subsections), and every other pairing stays comfortably under the
	   ~112px major-transition ceiling. Tablet nudged from 96px to 72px
	   for the same reason on narrower desktop-adjacent widths; mobile
	   was already tight and is unchanged. */
	--ltc-section-space: 42px;
	--ltc-section-space-tablet: 72px;
	--ltc-section-space-mobile: 64px;

	/* ---- Layout ---- */
	--ltc-canvas-wide: 1440px;
	--ltc-container-main: 1280px;
	--ltc-text-container: 720px;
	--ltc-article-width: 760px;
	--ltc-grid-gap: 24px;
	--ltc-grid-gap-tablet: 20px;
	--ltc-grid-gap-mobile: 16px;
	--ltc-outer-padding: clamp(40px, 4vw, 64px);
	--ltc-outer-padding-tablet: 32px;
	--ltc-outer-padding-mobile: 20px;

	/* ---- Radii ---- */
	--ltc-radius-card: 18px;
	--ltc-radius-image: 22px;
	--ltc-radius-button: 10px;
	--ltc-radius-pill: 999px;

	/* ---- Elevation ---- */
	--ltc-shadow-elevated: 0 24px 64px rgba(7, 20, 22, 0.09);

	/* ---- Motion ----
	   A restrained shared scale, reused everywhere rather than each
	   section inventing its own numbers. --ltc-duration/--ltc-duration-
	   fast/--ltc-ease already existed (Gate 0) and already sit inside
	   the ranges this system targets, so they are kept as the
	   "standard interaction" and "fast interaction" steps rather than
	   duplicated under new names. */
	--ltc-duration-fast: 200ms;     /* fast interaction: hover/focus microinteractions (160-220ms) */
	--ltc-duration: 550ms;          /* section reveal (500-700ms) */
	--ltc-duration-standard: 280ms; /* standard interaction: dropdown/drawer/accordion (240-320ms) */
	--ltc-duration-image: 750ms;    /* large image reveal (650-850ms) */
	--ltc-ease: cubic-bezier(0.22, 1, 0.36, 1);

	--ltc-stagger-interval: 60ms;   /* per-item delay within a staggered group (45-90ms) */
	--ltc-reveal-distance: 16px;    /* entry translateY for .ltc-reveal (12-24px) */
	--ltc-hover-lift: 4px;          /* hover/focus card lift (max 3-5px) */
	--ltc-image-reveal-scale: 1.03; /* image scale-reveal start value (1.025-1.04 -> 1) */

	/* Dense-grid reveal (Problem Navigation, Capability Explorer cards):
	   the general-purpose 550ms/60ms .ltc-reveal pace left a fully-visible
	   3-row grid taking up to ~790ms to settle, which read as prolonged
	   during ordinary/fast scrolling. Tightened so the last visible row
	   in a 3-row group settles at ~640ms (480ms duration + 2*80ms delay),
	   still inside the 45-90ms stagger-interval band and comfortably
	   inside the ~600-750ms target. */
	--ltc-duration-dense: 480ms;
	--ltc-stagger-interval-dense: 80ms;
}
