/* ==========================================================================
   Hardware Accelerated Preloading Engine Screen & Shimmers
   ========================================================================== */
.loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--bg-primary);
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
}
.loader-content {
    text-align: center;
    width: 250px;
}
.loader-logo {
    font-size: 1.8rem;
    letter-spacing: 4px;
    margin-bottom: 1.5rem;
    animation: goldPulse 2s infinite ease-in-out;
}
.loader-bar {
    width: 100%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.05);
    position: relative;
    overflow: hidden;
}
.loader-bar span {
    position: absolute;
    display: block;
    width: 0;
    height: 100%;
    background-color: var(--luxury-gold);
    animation: loadingProcess 2.5s cubic-bezier(0.65, 0.05, 0.36, 1) forwards;
}

@keyframes goldPulse {
    0%, 100% { color: var(--white); opacity: 0.8; }
    50% { color: var(--luxury-gold); opacity: 1; }
}
@keyframes loadingProcess {
    0% { width: 0; left: 0; }
    50% { width: 70%; }
    100% { width: 100%; }
}

/* Scroll Progress Line Indicator */
.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--luxury-gold), var(--accent-gold));
    width: 0;
    z-index: 10000;
    transition: width 0.1s linear;
}

/* ==========================================================================
   CSS Native Premium Keyframes Base Animations
   ========================================================================== */
.gold-shimmer-text {
    background: linear-gradient(90deg, #fff 0%, var(--luxury-gold) 50%, #fff 100%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: textShimmer 4s linear infinite;
}

@keyframes textShimmer {
    0% { background-position: 0% center; }
    100% { background-position: 200% center; }
}

/* Structural CSS Fade Fallbacks */
.fade-in-up {
    opacity: 0;
    transform: translateY(25px);
}
.fade-in-up-delayed {
    opacity: 0;
    transform: translateY(25px);
}

.border-gold-bottom {
    border-bottom: 1px solid rgba(200, 160, 70, 0.3) !important;
}