/* Shared variables from your other pages to ensure exact color matching */
:root {
    --primary-background: #000000;
    --primary-headings: #D4DADC;
    --primary-paragraphs: #A6ABAE;
    --primary-details: #7E8284;
    --button-background: #D4DADC;
    --button-text: #323130;
    --button-background-hover: #A6ABAE;
    --button-text-hover: #000000;
    --accent-background: #3E4041;
}

body {
    background-color: var(--primary-background);
    color: var(--primary-paragraphs);
    font-family: Helvetica, Arial, sans-serif;
    font-weight: 300;
    overflow: hidden; /* Strictly prevents any scrolling */
    margin: 0;
    padding: 0;
}

/* Shared Typography Classes */
.font-heading { font-family: Helvetica, Arial, sans-serif; }
.font-body    { font-family: Helvetica, Arial, sans-serif; }
.text-primary-heading   { color: var(--primary-headings); }
.text-primary-paragraph { color: var(--primary-paragraphs); }

/* --- Animations --- */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to   { opacity: 1; transform: translateY(0); }
}
.fade-in {
    animation: fadeIn 1.5s ease-out forwards;
    opacity: 0;
}

@keyframes cinematicReveal {
    0% {
        opacity: 0;
        letter-spacing: 0.1em;
        filter: blur(12px);
    }
    100% {
        opacity: 0.9;           /* Slightly reduced opacity to soften the harsh white */
        letter-spacing: 0.4em;  /* Wide, premium tracking */
        filter: blur(0.6px);    /* A persistent, tiny blur to make the text easy on the eyes */
    }
}
.cinematic-text {
    animation: cinematicReveal 3s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
    will-change: opacity, filter, letter-spacing;
}

/* --- Image Slider --- */
.bg-slider {
    position: absolute;
    inset: 0;
    width: 100vw;
    height: 100vh;
    object-fit: cover;
    opacity: 0;
    /* Faster transform (6s) and wider starting scale (1.08) */
    transition: opacity 2s ease-in-out, transform 6s ease-out;
    transform: scale(1.08);
}
.bg-slider.active {
    opacity: 1;
    transform: scale(1); /* Smoothly zooms out to true size */
}

/* Nav Link Styling (No underline, just smooth color fade) */
.nav-link {
    transition: color 0.4s ease;
}