/* ==========================================================================
   GESPENST CUSTOM TYPOGRAPHY SYSTEM - GAA WEBSITE
   ========================================================================== */

/* Thin (100) */
@font-face {
    font-family: 'Gespenst';
    src: url('../fonts/Gespenst/Gespenst-Thin.woff2') format('woff2'),
         url('../fonts/Gespenst/Gespenst-Thin.woff') format('woff'),
         url('../fonts/Gespenst/Gespenst-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

/* UltraLight (200) */
@font-face {
    font-family: 'Gespenst';
    src: url('../fonts/Gespenst/Gespenst-UltraLight.woff2') format('woff2'),
         url('../fonts/Gespenst/Gespenst-UltraLight.woff') format('woff'),
         url('../fonts/Gespenst/Gespenst-UltraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

/* Light (300) */
@font-face {
    font-family: 'Gespenst';
    src: url('../fonts/Gespenst/Gespenst-Light.woff2') format('woff2'),
         url('../fonts/Gespenst/Gespenst-Light.woff') format('woff'),
         url('../fonts/Gespenst/Gespenst-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

/* Regular (400) */
@font-face {
    font-family: 'Gespenst';
    src: url('../fonts/Gespenst/Gespenst-Regular.woff2') format('woff2'),
         url('../fonts/Gespenst/Gespenst-Regular.woff') format('woff'),
         url('../fonts/Gespenst/Gespenst-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* Medium (500) */
@font-face {
    font-family: 'Gespenst';
    src: url('../fonts/Gespenst/Gespenst-Medium.woff2') format('woff2'),
         url('../fonts/Gespenst/Gespenst-Medium.woff') format('woff'),
         url('../fonts/Gespenst/Gespenst-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

/* SemiBold (600) */
@font-face {
    font-family: 'Gespenst';
    src: url('../fonts/Gespenst/Gespenst-SemiBold.woff2') format('woff2'),
         url('../fonts/Gespenst/Gespenst-SemiBold.woff') format('woff'),
         url('../fonts/Gespenst/Gespenst-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

/* Bold (700) */
@font-face {
    font-family: 'Gespenst';
    src: url('../fonts/Gespenst/Gespenst-Bold.woff2') format('woff2'),
         url('../fonts/Gespenst/Gespenst-Bold.woff') format('woff'),
         url('../fonts/Gespenst/Gespenst-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Black (800) */
@font-face {
    font-family: 'Gespenst';
    src: url('../fonts/Gespenst/Gespenst-Black.woff2') format('woff2'),
         url('../fonts/Gespenst/Gespenst-Black.woff') format('woff'),
         url('../fonts/Gespenst/Gespenst-Black.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

/* UltraBlack (900) */
@font-face {
    font-family: 'Gespenst';
    src: url('../fonts/Gespenst/Gespenst-UltraBlack.woff2') format('woff2'),
         url('../fonts/Gespenst/Gespenst-UltraBlack.woff') format('woff'),
         url('../fonts/Gespenst/Gespenst-UltraBlack.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

:root {
    --font-heading: 'Gespenst', sans-serif;
    --font-body: 'Gespenst', sans-serif;
}

body {
    font-family: var(--font-body);
    font-size: 1rem;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.text-ultra-bold {
    font-family: var(--font-heading);
    font-weight: 800;
}
