/* ===================================================================
   TuxCorp — base: fonts, design tokens, reset, accessibility helpers
   Palette from logoTuxCorp.jpg:  navy #0c315a · gold #e4b450 · white
   =================================================================== */

/* Self-hosted Inter (variable). Only Latin + Cyrillic are needed for BG/EN. */
@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("/assets/fonts/inter-cyrillic-wght-normal.woff2") format("woff2");
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("/assets/fonts/inter-latin-wght-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;
}

:root {
    --navy:        #0c315a;
    --navy-soft:   #1a4d7a;
    --navy-dark:   #061a32;
    --gold:        #e4b450;
    --gold-dark:   #c89938;
    --gold-soft:   #f3d27a;
    --white:       #ffffff;
    --cream:       #fbf8f1;
    --surface:    #f5f7fb;
    --surface-2:  #eef2f8;
    --border:     #d8dee8;
    --ink:         #14213a;
    --ink-soft:    #4a5468;
    --ink-mute:   #6b7689;
    --error:       #c0392b;
    --ok:          #1f8a4c;

    --nav-h: 72px;
    --transition: all .35s cubic-bezier(.25,.46,.45,.94);
    --shadow-sm: 0 2px 8px rgba(12,49,90,.06);
    --shadow:    0 6px 24px rgba(12,49,90,.10);
    --shadow-lg: 0 12px 40px rgba(12,49,90,.16);
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html {
    scroll-behavior: smooth;
    scroll-padding-top: var(--nav-h);
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body {
    font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    background: var(--white);
    color: var(--ink);
    line-height: 1.6;
    padding-top: var(--nav-h);
    overflow-x: hidden;
    overflow-x: clip;
}

img, video { max-width: 100%; display: block; }

.sr-only {
    position: absolute !important;
    width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden;
    clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.skip-link {
    position: absolute; top: -120px; left: 0;
    background: var(--gold); color: var(--navy);
    padding: .5rem 1rem; z-index: 3000;
    text-decoration: none; font-weight: 700;
}
.skip-link:focus { top: 0; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 2px; }

