/*
 * Vella Access public typography.
 * Loaded only on guest-facing pages (not Vella Intelligence).
 * Self-hosted Bodoni Moda + Source Sans 3 — no Google Fonts request.
 */

@font-face {
    font-family: "Bodoni Moda";
    font-style: normal;
    font-weight: 500 700;
    font-display: swap;
    src: url("../fonts/bodoni-moda-latin-ext-normal.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Bodoni Moda";
    font-style: normal;
    font-weight: 500 700;
    font-display: swap;
    src: url("../fonts/bodoni-moda-latin-normal.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Bodoni Moda";
    font-style: italic;
    font-weight: 500 700;
    font-display: swap;
    src: url("../fonts/bodoni-moda-latin-ext-italic.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Bodoni Moda";
    font-style: italic;
    font-weight: 500 700;
    font-display: swap;
    src: url("../fonts/bodoni-moda-latin-italic.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Source Sans 3";
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url("../fonts/source-sans-3-latin-ext-normal.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Source Sans 3";
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url("../fonts/source-sans-3-latin-normal.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Source Sans 3";
    font-style: italic;
    font-weight: 400 700;
    font-display: swap;
    src: url("../fonts/source-sans-3-latin-ext-italic.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Source Sans 3";
    font-style: italic;
    font-weight: 400 700;
    font-display: swap;
    src: url("../fonts/source-sans-3-latin-italic.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --font-display: "Bodoni Moda", Georgia, "Times New Roman", serif;
    --font-body: "Source Sans 3", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

    --fs-xs: 11px;
    --fs-sm: 13px;
    --fs-md: 15px;
    --fs-lg: 17px;
    --fs-xl: 21px;
    --fs-2xl: 28px;
    --lh-tight: 1.12;
    --lh-display: 1.08;
    --lh-body: 1.65;
    --weight-regular: 400;
    --weight-medium: 500;
    --weight-semibold: 600;
    --weight-label: 600;
    --tracking-body: 0;
    --tracking-eyebrow: 0.16em;
    --tracking-btn: 0.04em;
}

body {
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: var(--weight-regular);
    line-height: var(--lh-body);
    letter-spacing: var(--tracking-body);
    font-kerning: normal;
    font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
}

h1,
h2,
h3 {
    font-family: var(--font-display);
    font-optical-sizing: auto;
    font-weight: var(--weight-semibold);
    line-height: var(--lh-display);
    text-wrap: balance;
}

.eyebrow {
    color: var(--gold);
    font-family: var(--font-body);
    font-size: var(--fs-xs);
    font-weight: var(--weight-label);
    letter-spacing: var(--tracking-eyebrow);
    text-transform: uppercase;
}

.btn {
    font-family: var(--font-body);
    font-weight: var(--weight-label);
    letter-spacing: var(--tracking-btn);
}

.price {
    font-weight: var(--weight-label);
    font-variant-numeric: tabular-nums;
}
