/* ========================================= */
/* 1. THE WRAPPER (Base Layer)               */
/* ========================================= */
.site-footer {
    display: block;
    width: 100%;
    /* DEEP BLACK BASE */
    background-color: #020101;
    position: relative;
    z-index: 1;
}

/* ========================================= */
/* 2. THE CONTAINER                          */
/* ========================================= */
.footer-container {
    position: relative;
    width: 100%;
    min-height: 100vh;
    box-sizing: border-box;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;

    /* Transparent so we see the pseudo-element below */
    background-color: transparent;

    /* CLIP: Essential for the blur effect */
    overflow: hidden;

    padding: 150px 30px 40px 30px;
    z-index: 2;
}

/* ========================================= */
/* 3. THE "BART" ATMOSPHERE (Updated)        */
/* ========================================= */
.footer-container::before {
    content: "";
    position: absolute;

    /* Center and Oversize to hide blur edges */
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 150%;
    height: 150%;

    z-index: -1;
    pointer-events: none;

    /* REFINED GRADIENT STACK (Top to Bottom Layering) */
    background:
        /* LAYER 1 (Top): The "Black Hue" Roof
           A strong linear gradient from top to bottom. 
           This forces the top half to be deep black, fading out 
           so the red only starts appearing from the middle down. 
        */
        linear-gradient(180deg, #020101 20%, rgba(2, 1, 1, 0) 60%),

        /* LAYER 2 (Middle): The "Hot Core" 
           An elliptical glow positioned low-center (85% down).
           This gives that intense hotspot directly behind the button.
        */
        radial-gradient(ellipse 60% 50% at 50% 85%, rgba(255, 0, 40, 0.6) 0%, rgba(255, 0, 40, 0) 70%),

        /* LAYER 3 (Bottom): The "4th Quadrant" Spread 
           This is a wider, softer circle that fills the bottom corners 
           without creating hard linear lines.
        */
        radial-gradient(circle at 50% 100%, rgba(100, 0, 20, 0.8) 0%, rgba(5, 2, 3, 0) 80%),

        /* LAYER 4 (Base): Deep Ambient Fill */
        linear-gradient(to bottom, transparent 50%, rgba(40, 0, 10, 0.4) 100%);

    /* HEAVY BLUR to soup it all together */
    filter: blur(100px);

    /* Optional: Subtle breathing effect */
    animation: glowPulse 10s ease-in-out infinite alternate;
}

/* ========================================= */
/* 4. CONTENT STYLING                        */
/* ========================================= */
.footer-content {
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 1000px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

/* TYPOGRAPHY */
.footer-heading {
    margin-bottom: 60px;
    line-height: 1.1;
    pointer-events: none;
}

.footer-text-main {
    font-family: var(--font-main);
    font-weight: 900;
    font-size: clamp(3.5rem, 8vw, 7rem);
    color: #ffffff;
    text-shadow: 0 10px 30px rgba(0, 0, 0, 0.8);
    /* Stronger shadow for contrast */
    display: inline-block;
}

.footer-text-serif {
    font-family: var(--font-serif);
    font-style: italic;
    font-weight: 300;
    font-size: clamp(2.5rem, 6vw, 5rem);
    color: #ffdce2;
    opacity: 0.9;
    display: block;
}

/* BUTTON (Updated Shadow to match new glow) */
.footer-btn-holla {
    display: inline-block;
    background-color: #FF0028;
    color: #000000;
    padding: 22px 55px;
    font-family: var(--font-main);
    font-size: 1.1rem;
    font-weight: 600;
    border-radius: 50px;
    text-decoration: none;

    /* Matches the Hot Core color */
    box-shadow: 0 0 50px 10px rgba(255, 0, 40, 0.5);
    transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}

.footer-btn-holla:hover {
    background-color: #ffffff;
    color: #ff0028;
    box-shadow: 0 0 80px 20px rgba(255, 0, 40, 0.7);
    transform: translateY(-2px);
}

/* ========================================= */
/* 5. BOTTOM ROW                             */
/* ========================================= */
.footer-bottom {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-top: 40px;

    font-family: var(--font-main);
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.4);
    /* Lower opacity for subtle look */
}

.footer-links,
.footer-credits {
    flex: 1;
}

.footer-credits {
    text-align: right;
}

.footer-credits a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s;
}

.footer-credits a:hover {
    color: #fff;
}

.footer-socials {
    flex: 2;
    display: flex;
    justify-content: center;
    gap: 15px;
}

.footer-social-link {
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.9rem;
    opacity: 0.8;
    transition: opacity 0.2s;
}

.footer-social-link:hover {
    opacity: 1;
}

.footer-separator {
    color: var(--brand-accent);
    font-weight: bold;
    opacity: 0.5;
}

/* TOP LINK */
.footer-top-link {
    background: none;
    border: none;
    color: #fff;
    font-family: var(--font-main);
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
    padding: 0;
    font-size: 1rem;
    opacity: 0.5;
    transition: opacity 0.2s;
}

.footer-top-link:hover {
    opacity: 1;
}

/* ANIMATION */
@keyframes glowPulse {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0.9;
    }

    100% {
        transform: translate(-50%, -50%) scale(1.02);
        opacity: 1;
    }
}

/* MOBILE */
@media (max-width: 900px) {
    .footer-container {
        padding: 80px 20px 40px 20px;
    }

    .footer-bottom {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }

    .footer-credits {
        text-align: center;
    }

    .footer-socials {
        flex-wrap: wrap;
    }
}