@font-face {
    font-family: "Nunito Nicolas";
    src: url("../fonts/Nunito-VariableFont_wght.woff2") format("woff2");
    font-style: normal;
    font-weight: 200 1000;
    font-display: swap;
}

/*
 * Local-only fallbacks; Arial and Roboto need separate metrics (never share src).
 * Calculated with fontTools from this Nunito WOFF2, Arial Regular/Bold (macOS)
 * and googlefonts/roboto-2 src/hinted/Roboto-{Regular,Bold}.ttf.
 * Corpus: all esc_html_e strings in pages/home/home.php, joined with spaces.
 * S = sum(Nunito hmtx advances / UPEM) / sum(fallback advances / UPEM).
 * size-adjust = S * 100%; vertical overrides = Nunito metric / UPEM / S * 100%.
 * Nunito hhea = OS/2 typo: ascent 1011, descent 353, line gap 0; UPEM 1000.
 * Instantiate Nunito at 400/650/700/750; use local Regular at 400, Bold otherwise.
 * Each range approximates its other weights. Advances exclude shaping/kerning;
 * individual words, installed font versions and line breaks can still differ.
 * Unavailable local faces fall through the stack; unsupported descriptors are ignored.
 */
@font-face {
    font-family: "Nunito Nicolas Arial Fallback";
    src: local("Arial"), local("ArialMT");
    font-style: normal;
    font-weight: 200 599;
    size-adjust: 100.20835%;
    ascent-override: 100.88979%;
    descent-override: 35.22660%;
    line-gap-override: 0%;
}

@font-face {
    font-family: "Nunito Nicolas Arial Fallback";
    src: local("Arial Bold"), local("Arial-BoldMT");
    font-style: normal;
    font-weight: 600 699;
    size-adjust: 96.45535%;
    ascent-override: 104.81534%;
    descent-override: 36.59724%;
    line-gap-override: 0%;
}

@font-face {
    font-family: "Nunito Nicolas Arial Fallback";
    src: local("Arial Bold"), local("Arial-BoldMT");
    font-style: normal;
    font-weight: 700 749;
    size-adjust: 97.49823%;
    ascent-override: 103.69419%;
    descent-override: 36.20579%;
    line-gap-override: 0%;
}

@font-face {
    font-family: "Nunito Nicolas Arial Fallback";
    src: local("Arial Bold"), local("Arial-BoldMT");
    font-style: normal;
    font-weight: 750 1000;
    size-adjust: 98.59987%;
    ascent-override: 102.53564%;
    descent-override: 35.80127%;
    line-gap-override: 0%;
}

@font-face {
    font-family: "Nunito Nicolas Roboto Fallback";
    src: local("Roboto"), local("Roboto Regular"), local("Roboto-Regular");
    font-style: normal;
    font-weight: 200 599;
    size-adjust: 100.91266%;
    ascent-override: 100.18564%;
    descent-override: 34.98074%;
    line-gap-override: 0%;
}

@font-face {
    font-family: "Nunito Nicolas Roboto Fallback";
    src: local("Roboto Bold"), local("Roboto-Bold");
    font-style: normal;
    font-weight: 600 699;
    size-adjust: 102.00911%;
    ascent-override: 99.10879%;
    descent-override: 34.60475%;
    line-gap-override: 0%;
}

@font-face {
    font-family: "Nunito Nicolas Roboto Fallback";
    src: local("Roboto Bold"), local("Roboto-Bold");
    font-style: normal;
    font-weight: 700 749;
    size-adjust: 103.11204%;
    ascent-override: 98.04869%;
    descent-override: 34.23461%;
    line-gap-override: 0%;
}

@font-face {
    font-family: "Nunito Nicolas Roboto Fallback";
    src: local("Roboto Bold"), local("Roboto-Bold");
    font-style: normal;
    font-weight: 750 1000;
    size-adjust: 104.27710%;
    ascent-override: 96.95321%;
    descent-override: 33.85211%;
    line-gap-override: 0%;
}

:root {
    --nicolas-accent: #db4302;
    --nicolas-accent-dark: #a93000;
    --nicolas-heading-accent-gradient: linear-gradient(110deg, var(--nicolas-accent) 0%, var(--nicolas-accent-dark) 100%);
    --nicolas-ink: #262626;
    --nicolas-muted: #5b5b5b;
    --nicolas-background: #fff;
    --nicolas-surface: #f8f5f2;
    --nicolas-border: #e5ddd7;
    --nicolas-white: #fff;
    --nicolas-content-width: 1260px;
    --nicolas-section-space: 5rem;
    --nicolas-space-xs: .5rem;
    --nicolas-space-sm: .75rem;
    --nicolas-space-md: 1rem;
    --nicolas-space-lg: 1.5rem;
    --nicolas-space-xl: 2rem;
    --nicolas-space-2xl: 3rem;
    --nicolas-radius-control: .5rem;
    --nicolas-radius-button: var(--nicolas-radius-control);
    --nicolas-radius-card: 1rem;
    --nicolas-radius-panel: 1.125rem;
    --nicolas-radius-pill: 100rem;
    --nicolas-font-body: "Nunito Nicolas", "Nunito Nicolas Arial Fallback", "Nunito Nicolas Roboto Fallback", Nunito, sans-serif;
    --nicolas-font-heading: "Nunito Nicolas", "Nunito Nicolas Arial Fallback", "Nunito Nicolas Roboto Fallback", Nunito, sans-serif;
    --nicolas-type-body: clamp(1rem, .95rem + .3vw, 1.125rem);
    --nicolas-type-compact: 1rem;
    --nicolas-type-secondary: .9rem;
    --nicolas-type-note: .85rem;
    --nicolas-type-label: .8rem;
    --nicolas-type-lead: clamp(1.1rem, 1.7vw, 1.3rem);
    --nicolas-type-section: clamp(2rem, 3.5vw, 3.4rem);
    --nicolas-type-subheading: 1.25rem;
    --nicolas-type-item-heading: 1.35rem;
    --nicolas-hero-top-extra: clamp(1rem, 2vw, 1.5rem);
    --nicolas-weight-heading: 650;
    --nicolas-weight-strong: 700;
    --nicolas-weight-accent: 750;
    --nicolas-tracking-heading: -.035em;
    /* Legacy heading sizes remain unchanged outside the four redesigned pages. */
    --nicolas-font-size-h1: clamp(2.4rem, 1.6rem + 2vw, 3.4rem);
    --nicolas-font-size-h2: clamp(2rem, 1.3rem + 1.6vw, 2.6rem);
    --nicolas-font-size-h3: clamp(1.6rem, 1.1rem + 1.2vw, 2.1rem);
}

@media (max-width: 48rem) {
    :root { --nicolas-section-space: 3.5rem; }
}
