@font-face {
    font-family: 'Fraunces';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('/assets/fonts/fraunces-latin-ext.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: 'Fraunces';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('/assets/fonts/fraunces-latin.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: 'Inter';
    font-style: normal;
    font-weight: 300 800;
    font-display: swap;
    src: url('/assets/fonts/inter-latin-ext.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: 'Inter';
    font-style: normal;
    font-weight: 300 800;
    font-display: swap;
    src: url('/assets/fonts/inter-latin.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;
}

/* ==========================================================================
   Alfa design tokens

   Brand colours were extracted from the logo and are unchanged. Everything
   else — the type scale, the spacing scale, the warm neutrals — is new:
   sizes used to be ad-hoc clamp() values written inline throughout app.css.

   Fonts are self-hosted, not loaded from Google. public/.htaccess sets
   `font-src 'self' data:` and `style-src 'self'`, which blocks both the
   Google stylesheet and fonts.gstatic.com outright. Both the latin and
   latin-ext subsets ship: Croatian č ć đ š ž live in latin-ext, German
   ä ö ü ß in latin, so dropping either would silently fall back mid-word.
   ========================================================================== */

:root {
    /* --- Brand (unchanged) --- */
    --alfa-red:        #C8102E;
    --alfa-red-dark:   #A50D26;
    --alfa-red-soft:   #F4D6DC;
    --alfa-gray:       #86888A;
    --alfa-gray-dark:  #6F6F6F;
    --alfa-ink:        #2C2C2C;
    --alfa-ink-soft:   #4A4A4A;
    --alfa-surface:    #FFFFFF;
    --alfa-surface-2:  #F6F6F7;
    --alfa-line:       #E5E5E7;

    /* Warm neutrals. Swapping the cold #F6F6F7 section tint for a bone tone
       does more for the dana.at / braga.it feel than any single other change. */
    --alfa-bone:       #F7F5F2;
    --alfa-bone-2:     #EFEBE6;
    --alfa-ink-900:    #1A1A1A;

    /* --- Typeface --- */
    --font-sans:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --font-display: 'Fraunces', Georgia, 'Times New Roman', serif;

    /* --- Type scale: fluid, ~1.20 at 320px rising to ~1.25 at 1440px --- */
    --step--2: clamp(0.694rem, 0.68rem + 0.07vw, 0.72rem);
    --step--1: clamp(0.833rem, 0.80rem + 0.16vw, 0.90rem);
    --step-0:  clamp(1rem,     0.96rem + 0.20vw, 1.125rem);
    --step-1:  clamp(1.2rem,   1.13rem + 0.35vw, 1.406rem);
    --step-2:  clamp(1.44rem,  1.32rem + 0.60vw, 1.758rem);
    --step-3:  clamp(1.728rem, 1.53rem + 0.99vw, 2.197rem);
    --step-4:  clamp(2.074rem, 1.76rem + 1.57vw, 2.747rem);
    --step-5:  clamp(2.488rem, 2.01rem + 2.39vw, 3.433rem);
    --step-6:  clamp(2.986rem, 2.27rem + 3.58vw, 4.292rem);

    --lh-tight: 1.08;
    --lh-snug:  1.25;
    --lh-body:  1.65;
    --track-tight:  -0.02em;
    --track-normal: 0;
    --track-wide:   0.14em;
    --measure: 68ch;

    /* --- Spacing, 4px base --- */
    --space-3xs: 0.25rem;
    --space-2xs: 0.5rem;
    --space-xs:  0.75rem;
    --space-s:   1rem;
    --space-m:   1.5rem;
    --space-l:   2rem;
    --space-xl:  3rem;
    --space-2xl: 4rem;
    --space-3xl: 6rem;
    --space-4xl: 8rem;

    --section-y: clamp(3.5rem, 7vw, 7.5rem);
    --gutter:    clamp(1.25rem, 4vw, 3rem);

    /* --- Shape, shadow, motion --- */
    --radius-sm: 6px;
    --radius:    12px;
    --radius-lg: 20px;

    --shadow-sm: 0 1px 2px rgba(44,44,44,.06), 0 1px 1px rgba(44,44,44,.04);
    --shadow:    0 8px 24px rgba(44,44,44,.08), 0 2px 6px rgba(44,44,44,.05);
    --shadow-lg: 0 24px 60px rgba(44,44,44,.12);

    --ease:      cubic-bezier(.2,.7,.2,1);
    --dur-fast:  150ms;
    --dur:       300ms;
    --dur-slow:  600ms;
}

/* Bootstrap colour overrides via CSS variables */
:root {
    --bs-primary: var(--alfa-red);
    --bs-primary-rgb: 200, 16, 46;
    --bs-link-color: var(--alfa-ink);
    --bs-link-hover-color: var(--alfa-red);
    --bs-body-color: var(--alfa-ink);
    --bs-body-bg: var(--alfa-surface);
    --bs-border-color: var(--alfa-line);
    --bs-body-font-family: var(--font-sans);
}
