    :root {
        --brand-navy: #022e47;
        --brand-orange: #f68f1d;
        --brand-pink: #ea3b60;
        --footer-bg: var(--brand-navy);
        --font-display: 'Bakbak One', cursive;
        --font-body: 'Work Sans', sans-serif;
    }

    .text-gradient {
        background: linear-gradient(135deg, var(--brand-orange) 0%, var(--brand-orange) 65%, var(--brand-pink) 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
    }

    .footer-horizon {
        background: var(--footer-bg); 
        color: white; 
        padding-top: 80px; padding-bottom: 40px; 
        margin-top: 100px; 
        position: relative; 
        overflow: hidden;
    }

    .footer-horizon::before {
        content: ""; 
        position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; 
        background-image: url('https://i.postimg.cc/265Np6RW/bg-3.png');
        background-repeat: repeat; 
        background-size: 150px; 
        opacity: 0.50;
        mix-blend-mode: overlay; 
        pointer-events: none;
    }

    .footer-horizon .container { position: relative; z-index: 2; }
    .footer-horizon .text-white-50 { color: rgba(255,255,255,0.5) !important; }
    
    .footer-horizon h2,
    .footer-horizon h5 { 
        color: #fff; 
        font-family: var(--font-display); 
        letter-spacing: 2px; 
        font-weight: 400 !important;
    }

    .contact-clean-list { display: flex; flex-direction: column; gap: 0; }
    .contact-row {
        display: flex; align-items: center; text-decoration: none;
        padding: 16px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        transition: all 0.3s ease;
    }
    .contact-row:first-child { border-top: 1px solid rgba(255, 255, 255, 0.1); }

    .c-icon-minimal {
        font-size: 1.2rem; color: var(--brand-orange); width: 30px;
        display: flex; justify-content: center; margin-right: 15px; transition: 0.3s;
    }

    .c-label-minimal { 
        font-family: var(--font-display); 
        font-size: 0.65rem; 
        text-transform: uppercase; 
        color: rgba(255, 255, 255, 0.4); 
        letter-spacing: 1px; 
        display: block; 
    }
    .c-value-minimal { 
        font-family: var(--font-body); 
        font-size: 0.95rem; 
        color: rgba(255, 255, 255, 0.85); 
        font-weight: 500; 
        transition: 0.3s; 
        word-break: break-all; 
    }

    .contact-row:hover { border-bottom-color: var(--brand-pink); padding-left: 10px; }
    .contact-row:hover .c-value-minimal { color: white; text-shadow: 0 0 10px rgba(246, 143, 29, 0.5); }
    .contact-row:hover .c-icon-minimal { transform: scale(1.2); color: var(--brand-pink); }

    .social-pill {
        display: inline-flex; background: rgba(255,255,255,0.05);
        border-radius: 50px; padding: 5px; border: 1px solid rgba(255,255,255,0.1);
        flex-wrap: wrap; justify-content: center;
    }

    .social-icon-h {
        width: 40px; height: 40px; display: flex; align-items: center; justify-content: center;
        color: white; border-radius: 50%; transition: 0.3s; text-decoration: none; margin: 0 2px;
    }
    .social-icon-h:hover { background: var(--brand-orange); color: white; transform: rotate(15deg); }

    /* --- 6. FOOTER NAVIGATION --- */
    .footer-nav-grid {
        display: flex; flex-wrap: wrap; gap: 15px 30px; margin: 50px 0;
        justify-content: center; border-top: 1px solid rgba(255,255,255,0.1);
        border-bottom: 1px solid rgba(255,255,255,0.1); padding: 30px 0;
    }
    .footer-nav-link {
        color: rgba(255,255,255,0.6); text-decoration: none; text-transform: uppercase;
        font-size: 0.85rem; letter-spacing: 1px; transition: 0.3s; font-weight: 500;
    }
    .footer-nav-link:hover { color: var(--brand-orange); letter-spacing: 1.5px; }

    .location-card-wide {
        background: rgba(255,255,255,0.03); border-radius: 4px;
        border: 1px solid rgba(255,255,255,0.05); padding: 5px; display: flex; flex-wrap: wrap;
    }
    .loc-info { padding: 30px; flex: 1; min-width: 280px; }
    .loc-map-frame { flex: 1; min-width: 280px; border-radius: 4px; overflow: hidden; height: 250px; }

    .footer-bottom{
        border-top:1px solid rgba(255,255,255,.1);
        padding:30px 0 30px;
        margin-top:60px;
        background:rgba(0,0,0,.12);
        backdrop-filter:blur(10px);
        align-items: center !important;
    }

    @media (max-width: 991px) {
        .contact-clean-list { margin-top: 40px; }
        .location-card-wide { flex-direction: column; }
        .loc-map-frame { height: 200px; width: 100%; }
    }

    html {
    scroll-behavior: smooth;
}

#contactForm {
    scroll-margin-top: 100px;
}