@font-face {
    font-family: Inter;
    src: url("../font/Inter/Inter-VariableFont_opsz,wght.subset.woff2") format("woff2");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}

@font-face {
    font-family: InterItalic;
    src: url("../font/Inter/Inter-Italic-VariableFont_opsz,wght.subset.woff2") format("woff2");
    font-style: italic;
    font-weight: 100 900;
    font-display: swap;
}

:root {
    --font-family-base: Inter, sans-serif;
    --font-family-accent: InterItalic, serif;
    --font-size-root: 17px;
    --line-height-base: 1.55;
    --line-height-tight: 1.15;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-strong: 700;

    --container-max: 1280px;
    --container-pad: clamp(0.625rem, 2vw, 0.95rem);
    --header-top-pad: 0.75rem;
    --section-gap: clamp(0.75rem, 1.4vw, 0.95rem);

    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;
    --space-7: 2rem;
    --space-8: 2.5rem;

    --surface-pad: clamp(0.75rem, 1.3vw, 0.95rem);
    --surface-pad-mobile: 0.625rem;
    --card-pad: clamp(0.75rem, 1.15vw, 0.9rem);
    --card-gap: 0.625rem;
    --button-min-h: 2.625rem;
    --button-pad-y: 0.55rem;
    --button-pad-x: 0.85rem;
    --card-grid-min: 13.5rem;
    --quote-grid-min: 12.5rem;
    --link-grid-min: 11rem;
    --media-grid-min: 9.5rem;
    --media-strip-min: 10rem;
    --media-strip-hero-min: 8.75rem;
    --media-card-min-h: 11.5rem;
    --table-cell-pad-y: 0.7rem;
    --table-cell-pad-x: 0.85rem;
    --form-pad: clamp(0.75rem, 1.3vw, 0.95rem);
    --input-pad-y: 0.75rem;
    --input-pad-x: 0.85rem;
    --textarea-min-h: 7rem;
    --textarea-min-h-compact: 4.75rem;

    --radius-surface: 1rem;
    --radius-inner: 0.75rem;
    --radius-tight: 0.5rem;
    --radius-micro: 0.25rem;
    --radius-1: var(--radius-micro);
    --radius-2: var(--radius-tight);
    --radius-3: var(--radius-inner);
    --radius-4: var(--radius-surface);
    --radius-round: 999px;

    --color-bg: #ffffff;
    --color-surface: #ffffff;
    --color-surface-alt: #f5f8fb;
    --color-surface-muted: #eef3f8;
    --color-text: #0d1117;
    --color-text-muted: #6a7380;
    --color-border: #d8e0e8;
    --color-border-strong: #b7c4d2;
    --color-accent: #175a93;
    --color-accent-strong: #0e3b66;
    --color-accent-soft: #dce9f6;
    --color-accent-soft-strong: #b7d0ea;
    --color-focus: #2f74ab;
    --color-success: #20684d;

    --shadow-soft: 0 14px 26px rgba(13, 24, 40, 0.06);
    --shadow-card: 0 10px 22px rgba(13, 24, 40, 0.05);
    --shadow-strong: 0 18px 42px rgba(10, 27, 46, 0.12);
}

@media (min-width: 1440px) {
    :root {
        --font-size-root: 18px;
    }
}
