/* --- ISWFPC Design Tokens (Extreme Precision) --- */
:root {
    --iswfpc-green: #1B5E20;
    --iswfpc-light-green: #2E7D32;
    --unri-gold: #D4AF37;
    --unri-blue: #0D47A1;
    --gray-reference: #f9fafb;
}

body {
    font-family: 'Inter', sans-serif;
    background-color: var(--gray-reference);
    color: #374151; /* gray-700 */
}

h1, h2, h3, h4, h5, h6, .font-heading {
    font-family: 'Outfit', sans-serif;
}

.text-iswfpc-green { color: var(--iswfpc-green) !important; }
.bg-iswfpc-green { background-color: var(--iswfpc-green) !important; }
.text-unri-gold { color: var(--unri-gold) !important; }
.bg-unri-gold { background-color: var(--unri-gold) !important; }



.glass-nav {
    background: rgba(27, 94, 32, 0.95);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border-bottom: 1px solid rgba(212, 175, 55, 0.2);
}

/* Rounding Scale */
.rounded-xl { border-radius: 0.75rem !important; }
.rounded-2xl { border-radius: 1rem !important; }
.rounded-3xl { border-radius: 1.5rem !important; }
.rounded-4xl { border-radius: 2.5rem !important; }

.shadow-3xl {
    box-shadow: 0 35px 60px -15px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.fw-black { font-weight: 900 !important; }
.fw-extrabold { font-weight: 800 !important; }

/* Animations */
@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-20px); }
}
.animate-float { animation: float 6s ease-in-out infinite; }

@keyframes bounce-slow {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}
.animate-bounce-slow { animation: bounce-slow 4s ease-in-out infinite; }

/* Navbar Buttons & Links */
.nav-link-custom {
    color: white !important;
    font-weight: 700 !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    padding: 0.5rem 0 !important;
}
.nav-link-custom:hover, .nav-link-custom.active {
    color: var(--unri-gold) !important;
}

.btn-nav-gold {
    background-color: var(--unri-gold) !important;
    color: var(--iswfpc-green) !important;
    font-weight: 800 !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    padding: 12px 24px !important;
    border-radius: 0.75rem !important;
    transition: all 0.3s;
    border: none;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}
.btn-nav-gold:hover {
    background-color: white !important;
    transform: translateY(-2px);
}

/* Section Specifics */
.hero-pill {
    background: white;
    border: 1px solid rgba(0, 0, 0, 0.05);
    padding: 10px 20px;
    border-radius: 9999px;
    display: inline-flex;
    align-items: center;
    font-size: 11px;
    font-weight: 800;
    color: var(--iswfpc-green);
    letter-spacing: 0.1em;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.card-melayu {
    transition: all 0.3s ease;
    border-radius: 2.5rem;
}
.card-melayu:hover {
    transform: translateY(-5px);
    box-shadow: 0 25px 30px -10px rgba(0, 0, 0, 0.1);
}