/* ==========================================================
   ELOHIMU COLLEGE TANZANIA - CUSTOM STYLES
   ========================================================== */
html { scroll-behavior: smooth; }
body { font-family: 'Poppins', sans-serif; }
h1, h2, h3, h4, .font-serif-heading { font-family: 'Merriweather', serif; }

/* Soft glowing hero pattern - "holy light" feel */
.hero-glow {
    position: relative;
    overflow: hidden;
}
.hero-glow::before {
    content: "";
    position: absolute;
    inset: -20%;
    background:
        radial-gradient(circle at 20% 20%, rgba(251,191,36,0.25), transparent 40%),
        radial-gradient(circle at 80% 30%, rgba(255,255,255,0.15), transparent 35%),
        radial-gradient(circle at 50% 90%, rgba(251,191,36,0.15), transparent 40%);
    animation: floatGlow 12s ease-in-out infinite alternate;
    pointer-events: none;
}
@keyframes floatGlow {
    0%   { transform: translateY(0) scale(1); }
    100% { transform: translateY(-20px) scale(1.05); }
}

/* Cross watermark */
.cross-watermark {
    position: absolute;
    right: -40px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 300px;
    opacity: 0.05;
    color: #fff;
    pointer-events: none;
    line-height: 1;
}

/* Soft shining button */
.btn-glow {
    position: relative;
    overflow: hidden;
}
.btn-glow::after {
    content: "";
    position: absolute;
    top: 0; left: -75%;
    width: 50%; height: 100%;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.5), transparent);
    transform: skewX(-20deg);
    transition: left 0.6s ease;
}
.btn-glow:hover::after { left: 125%; }

/* Card hover lift */
.hover-lift { transition: transform .3s ease, box-shadow .3s ease; }
.hover-lift:hover { transform: translateY(-6px); box-shadow: 0 20px 40px -10px rgba(30,58,138,0.25); }

/* Fade-in-up (fallback for AOS) */
.fade-up { animation: fadeUp .8s ease both; }
@keyframes fadeUp {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Verse ribbon */
.verse-ribbon {
    background: repeating-linear-gradient(45deg, rgba(251,191,36,0.08), rgba(251,191,36,0.08) 10px, transparent 10px, transparent 20px);
}

/* Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #eef2ff; }
::-webkit-scrollbar-thumb { background: #1e3a8a; border-radius: 8px; }

/* Loader dot pulse used on submit buttons */
.dot-pulse { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: currentColor; animation: pulse 1s infinite ease-in-out; }
@keyframes pulse { 0%,100% { opacity: .3; } 50% { opacity: 1; } }

/* Gallery lightbox */
#lightbox { backdrop-filter: blur(6px); }

/* Mobile nav open state */
#navLinks.open { display: flex !important; flex-direction: column; }

/* Admin panel */
.admin-sidebar a.active { background: rgba(251,191,36,0.15); color: #fbbf24; border-left: 3px solid #fbbf24; }
