/* =============================================
   TTNormsPro Font Family
   ============================================= */

/* --- TTNormsPro (Standard) --- */
@font-face {
    font-family: 'TTNormsPro';
    src: url('fonts/TTNormsPro-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsPro';
    src: url('fonts/TTNormsPro-BoldItalic.otf') format('opentype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsPro';
    src: url('fonts/TTNormsPro-Black.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsPro';
    src: url('fonts/TTNormsPro-BlackItalic.otf') format('opentype');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

/* --- TTNormsProCompact (Full Weight Range) --- */
@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-ExtraLight.otf') format('opentype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-ExtraLightItalic.otf') format('opentype');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-LightItalic.otf') format('opentype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-Normal.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-NormalItalic.otf') format('opentype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-Medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-MediumItalic.otf') format('opentype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-DemiBold.otf') format('opentype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-DemiBoldItalic.otf') format('opentype');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-BoldItalic.otf') format('opentype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-ExtraBold.otf') format('opentype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-ExtraBoldItalic.otf') format('opentype');
    font-weight: 800;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-Black.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-BlackItalic.otf') format('opentype');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-ExtraBlack.otf') format('opentype');
    font-weight: 950;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-ExtraBlackItalic.otf') format('opentype');
    font-weight: 950;
    font-style: italic;
    font-display: swap;
}

/* Also register Compact italic (no weight modifier) */
@font-face {
    font-family: 'TTNormsProCompact';
    src: url('fonts/TTNormsProCompact-Italic.otf') format('opentype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

/* =============================================
   Global Styles
   ============================================= */

:root {
    --color-primary: #8324ff;
    --color-primary-hover: #6c1ce0;
    --color-secondary-purple: #a98dce;
    --color-success-lilac: #8BC6A0;
    --color-bg-dark: #180f23;
    --color-card-dark: #2A2A2A;
    --color-surface-dark: #2d1b4e;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'TTNormsProCompact', 'TTNormsPro', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Scrollbar */
.scrollbar-hide::-webkit-scrollbar {
    display: none;
}

.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Glass Effect */
.glass-effect {
    background: rgba(42, 42, 42, 0.6);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* Selection */
::selection {
    background: var(--color-primary);
    color: white;
}