/* =========================================================
   ADNI ISLAMIC SCHOOL — ZAKAT COLLABORATION
   Uses ADNI global brand variables from global.css
========================================================= */
:root{--adni-primary:var(--primary,#273480);--adni-secondary:var(--secondary,#c5a253);--zakat-blue:#273480;--zakat-blue-light:#3b4ea3;--zakat-gold:#c5a253;--zakat-gold-light:#d4af37;--zakat-ink:#172554;--zakat-muted:#64748b;--zakat-soft:#f2f5fc;--zakat-border:#e3e8f3}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body.zakat-page{font-family:'Plus Jakarta Sans',sans-serif;color:#263247;background:#fff;overflow-x:hidden}
.zakat-page #mainNav{background:rgba(255,255,255,.97);box-shadow:0 3px 22px rgba(22,37,84,.08);padding:.55rem 0;backdrop-filter:blur(12px)}
.zakat-page #mainNav .nav-link,.zakat-page #mainNav.navbar:not(.scrolled) .nav-link{color:var(--adni-primary)!important}
.zakat-page #mainNav .navbar-toggler,.zakat-page #mainNav.navbar:not(.scrolled) .navbar-toggler{color:var(--adni-primary)!important}
.zakat-page #mainNav .navbar-logo{height:54px}
.zakat-page #mainNav .nav-link.active{color:var(--adni-primary)!important}
.zakat-page #mainNav .nav-link.active:after{width:100%;left:0;background:var(--adni-secondary)}
.zakat-hero{position:relative;isolation:isolate;overflow:hidden;padding:100px 0 112px;background:linear-gradient(115deg,#f8faff 0%,#fff 48%,#edf2ff 100%)}
.zakat-hero:before{content:"";position:absolute;z-index:-1;width:520px;height:520px;right:-130px;top:-260px;border:1px solid rgba(39,52,128,.12);border-radius:50%;box-shadow:0 0 0 42px rgba(39,52,128,.035),0 0 0 84px rgba(39,52,128,.025)}
.zakat-hero-pattern{position:absolute;z-index:-1;left:-90px;bottom:-180px;width:380px;height:380px;opacity:.18;background-image:radial-gradient(var(--zakat-blue) 1px,transparent 1px);background-size:18px 18px;mask-image:linear-gradient(135deg,#000,transparent 75%)}
.zakat-eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--adni-secondary);font-size:.72rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.zakat-eyebrow span{width:28px;height:2px;background:var(--adni-secondary)}
.zakat-hero h1{max-width:680px;margin:20px 0 22px;color:var(--zakat-ink);font-size:clamp(2.65rem,5.4vw,4.65rem);font-weight:800;line-height:1.08;letter-spacing:-.055em}
.zakat-hero h1 em{display:block;color:var(--zakat-blue-light);font-style:normal}
.zakat-hero-lead{max-width:560px;color:#53617a;font-size:1.08rem;line-height:1.85}
.btn-adni-primary,.btn-adni-outline,.btn-adni-gold,.btn-cta-outline{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:13px 22px;font-weight:700;text-decoration:none;transition:.25s ease}
.btn-adni-primary{background:var(--adni-primary);border:1px solid var(--adni-primary);color:#fff;box-shadow:0 10px 24px rgba(39,52,128,.18)}
.btn-adni-primary:hover{background:#1c286b;border-color:#1c286b;color:#fff;transform:translateY(-2px)}
.btn-adni-outline{border:1px solid var(--adni-primary);color:var(--adni-primary);background:#fff}
.btn-adni-outline:hover{background:var(--adni-primary);color:#fff}
.hero-trust{display:flex;align-items:center;gap:9px;color:#586782;font-size:.82rem;font-weight:600}.hero-trust i{color:var(--adni-secondary);font-size:1.1rem}
.hero-visual{position:relative;display:grid;place-items:center;min-height:370px}
.hero-visual:before{content:"";position:absolute;width:310px;height:310px;border-radius:50%;background:linear-gradient(145deg,#dfe7ff,#f8faff);border:1px solid #d8e0f7}
.hero-visual-ring{position:absolute;width:365px;height:365px;border:1px solid rgba(39,52,128,.18);border-radius:50%}
.hero-visual-card{position:relative;z-index:1;width:min(390px,90%);min-height:260px;padding:38px 35px;border-radius:20px;background:linear-gradient(145deg,#273480,#14235f);color:#fff;box-shadow:0 24px 60px rgba(22,37,84,.24);display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.hero-visual-card:after{content:"";position:absolute;width:230px;height:230px;right:-90px;top:-100px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 24px rgba(255,255,255,.035),0 0 0 48px rgba(255,255,255,.025)}
.hero-visual-icon{width:52px;height:52px;display:grid;place-items:center;margin-bottom:23px;border-radius:14px;background:var(--adni-secondary);color:#fff;font-size:1.55rem}
.hero-visual-card>span{font-size:.65rem;letter-spacing:.18em;color:#e7cb87;font-weight:800}.hero-visual-card strong{font-size:1.55rem;line-height:1.35;margin:12px 0 20px}.hero-visual-line{height:2px;width:52px;background:var(--adni-secondary);margin-bottom:14px}.hero-visual-card small{color:#dce4ff;font-size:.72rem}
.hero-floating-badge{position:absolute;z-index:2;right:2%;bottom:20px;display:flex;align-items:center;gap:10px;padding:13px 17px;border-radius:13px;background:#fff;color:var(--zakat-blue);box-shadow:0 12px 34px rgba(22,37,84,.15)}.hero-floating-badge>i{font-size:1.65rem;color:var(--adni-secondary)}.hero-floating-badge span{font-size:.67rem;line-height:1.4;letter-spacing:.06em}.hero-floating-badge b{font-size:1rem}
.hero-bottom-wave{position:absolute;bottom:-1px;left:0;width:100%;height:26px;background:#fff;clip-path:polygon(0 100%,0 65%,12% 82%,25% 45%,40% 76%,55% 38%,70% 72%,85% 40%,100% 68%,100% 100%)}
.section-space{padding:92px 0}.section-tint{background:#f5f7fc}.section-title{margin:14px 0 20px;color:var(--zakat-ink);font-size:clamp(1.9rem,3.4vw,2.8rem);font-weight:800;line-height:1.18;letter-spacing:-.035em}.section-title span{color:var(--zakat-blue-light)}.section-copy{max-width:720px;color:var(--zakat-muted);font-size:.96rem;line-height:1.85}.section-heading{max-width:820px;margin:0 auto}.section-heading .section-title{margin-left:auto;margin-right:auto}
.appointment-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.appointment-facts>div{padding:18px;border:1px solid #e1e7f4;border-radius:12px;background:#f7f9ff;display:flex;flex-direction:column;gap:6px}.appointment-facts i{color:var(--adni-primary);font-size:1.25rem;margin-bottom:5px}.appointment-facts span{color:#75819a;font-size:.72rem;font-weight:700}.appointment-facts strong{color:var(--zakat-ink);font-size:.87rem}
.certificate-button{width:100%;padding:0;border:0;background:transparent;text-align:center}.certificate-button img{display:block;width:100%;max-height:490px;object-fit:contain;padding:10px;background:#fff;border:1px solid #e1e7f0;border-radius:13px;box-shadow:0 16px 45px rgba(22,37,84,.12);transition:.25s ease}.certificate-button:hover img{transform:translateY(-4px);box-shadow:0 22px 50px rgba(22,37,84,.18)}.certificate-button>span{display:inline-block;margin-top:15px;color:#68758d;font-size:.78rem}.certificate-button>span i{color:var(--adni-primary);margin-right:5px}.certificate-modal-content{border:0;border-radius:14px;overflow:hidden}.certificate-modal-content .modal-body{padding:12px;background:#f4f6fb}.certificate-modal-content img{display:block;width:100%;height:auto}
.zakat-type-card{height:100%;min-height:158px;padding:25px 13px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid #e4e9f5;border-radius:15px;background:#fff;box-shadow:0 7px 24px rgba(39,52,128,.045);transition:.25s ease}.zakat-type-card:hover{transform:translateY(-5px);border-color:#b9c5ec;box-shadow:0 15px 30px rgba(39,52,128,.1)}.zakat-type-card i{margin-bottom:13px;color:var(--adni-primary);font-size:2rem}.zakat-type-card h3{margin:0;color:var(--zakat-ink);font-size:.91rem;font-weight:800}.zakat-type-card small{margin-top:4px;color:#7b879b;font-size:.7rem}
.receipt-panel{display:flex;align-items:center;gap:25px;padding:27px 32px;border:1px solid #dfe6f6;border-radius:15px;background:linear-gradient(110deg,#eaf0ff,#fff)}.receipt-icon{position:relative;flex:0 0 75px;height:75px;display:grid;place-items:center;color:var(--adni-primary);font-size:2.7rem}.receipt-icon .bi-check-circle-fill{position:absolute;right:0;bottom:2px;font-size:1.2rem;color:#1c8a62;background:#fff;border-radius:50%}.receipt-panel h3{margin:0 0 7px;color:var(--zakat-ink);font-size:1.2rem;font-weight:800}.receipt-panel p{margin:0;color:#596780;font-size:.88rem;line-height:1.7}
.impact-art{position:relative;min-height:390px;display:grid;place-items:center;overflow:hidden;border-radius:20px;background:linear-gradient(145deg,#172866,#3154a8)}.impact-art:before,.impact-art:after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(255,255,255,.16);border-radius:50%}.impact-art:after{width:430px;height:430px}.impact-art-pattern{position:absolute;inset:0;opacity:.14;background-image:linear-gradient(45deg,transparent 47%,#fff 48%,#fff 50%,transparent 51%),linear-gradient(-45deg,transparent 47%,#fff 48%,#fff 50%,transparent 51%);background-size:42px 42px}.impact-art-content{position:relative;z-index:1;padding:35px;color:#fff;text-align:center}.impact-art-content i{display:block;margin-bottom:20px;color:#e0c17a;font-size:3.6rem}.impact-art-content span{display:block;color:#e5cc8f;font-size:.68rem;font-weight:800;letter-spacing:.18em}.impact-art-content strong{display:block;margin:13px 0;font-size:1.8rem;line-height:1.3}.impact-art-content small{color:#d8e2ff;letter-spacing:.12em;text-transform:uppercase;font-size:.68rem}
.impact-list{list-style:none;padding:0;margin:22px 0}.impact-list li{display:flex;gap:11px;align-items:flex-start;margin:12px 0;color:#45536d;font-size:.9rem}.impact-list i{color:var(--adni-secondary);font-size:1rem;margin-top:2px}.compliance-note{display:flex;gap:12px;padding:15px 17px;border-radius:10px;background:#edf2ff;color:#53617b;font-size:.77rem;line-height:1.65}.compliance-note i{color:var(--adni-primary);font-size:1.1rem}
.bank-card{display:flex;align-items:flex-start;gap:24px;padding:30px;border:1px solid #e1e6f0;border-radius:15px;background:#fff;box-shadow:0 8px 28px rgba(39,52,128,.055)}.bank-brand{flex:0 0 125px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:17px 10px;border-radius:12px;background:#ffdf00;color:#151515;text-align:center;font-size:1.1rem;line-height:1.1}.bank-brand b{font-size:.9rem}.maybank-mark{font-size:2rem}.bank-details{flex:1;min-width:0}.bank-label{display:block;color:#8791a4;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.bank-details>strong{display:block;color:var(--zakat-ink);font-size:1.05rem}.account-number-row{display:flex;align-items:center;gap:12px;margin-top:7px}.account-number-row>strong{color:var(--zakat-ink);font-size:clamp(1.45rem,3vw,2.15rem);font-weight:800;letter-spacing:.015em;white-space:nowrap}.copy-account{flex:0 0 42px;width:42px;height:42px;border:0;border-radius:9px;background:var(--adni-primary);color:#fff;font-size:1.1rem}.copy-account:hover{background:#1b2768}.copy-feedback{display:block;min-height:18px;margin-top:4px;color:#16815c;font-size:.75rem}.account-name-note{margin:7px 0 0;color:#8993a5;font-size:.72rem;line-height:1.5}.payment-instructions{padding:29px;border:1px solid #eadfbe;border-radius:15px;background:#fffaf0}.payment-instructions h3{margin:0 0 18px;color:#9a742b;font-size:1rem;font-weight:800}.payment-instructions h3 i{margin-right:8px}.payment-instructions ol{padding-left:20px;margin:0}.payment-instructions li{padding-left:5px;margin-bottom:13px;color:#596477;font-size:.82rem;line-height:1.65}.payment-help{display:inline-flex;align-items:center;gap:8px;margin-top:5px;color:var(--adni-primary);font-size:.82rem;font-weight:800;text-decoration:none}.payment-help:hover{color:var(--adni-secondary)}
.zakat-cta{position:relative;overflow:hidden;padding:78px 0;background:linear-gradient(110deg,#17265f 0%,#273480 62%,#1d3c82 100%);color:#fff}.zakat-cta:after{content:"";position:absolute;right:-120px;top:-250px;width:550px;height:550px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 90px rgba(255,255,255,.025)}.zakat-cta .container{z-index:1}.zakat-cta .section-kicker{color:#e3c77f}.zakat-cta h2{max-width:700px;margin:14px 0;color:#fff;font-size:clamp(2.2rem,4vw,3.4rem);font-weight:800;letter-spacing:-.04em}.zakat-cta h2 span{color:#e3c77f}.zakat-cta p{max-width:650px;color:#dbe3ff;line-height:1.8}.btn-adni-gold{background:var(--adni-secondary);border:1px solid var(--adni-secondary);color:#fff}.btn-adni-gold:hover{background:#b38f42;color:#fff;transform:translateY(-2px)}.btn-cta-outline{border:1px solid rgba(255,255,255,.65);color:#fff}.btn-cta-outline:hover{background:#fff;color:var(--adni-primary)}.cta-seal{width:180px;height:180px;margin-left:auto;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#e5cc8f;outline:1px solid rgba(255,255,255,.18);outline-offset:9px}.cta-seal i{font-size:2.7rem}.cta-seal span{margin-top:5px;font-size:1.5rem;font-weight:800;letter-spacing:.1em}.cta-seal small{font-size:.6rem;letter-spacing:.2em}
.zakat-page .footer-section{background:#202d70}
@media(max-width:991.98px){.zakat-page #mainNav .navbar-logo{height:46px}.zakat-hero{padding:75px 0 85px}.hero-visual{min-height:330px}.hero-visual-ring{width:320px;height:320px}.section-space{padding:72px 0}}
@media(max-width:575.98px){.zakat-hero{padding:58px 0 68px}.zakat-hero h1{font-size:2.55rem}.hero-visual{min-height:300px}.hero-visual-card{min-height:230px;padding:28px}.hero-visual-ring{width:285px;height:285px}.hero-floating-badge{right:0;bottom:0}.appointment-facts{grid-template-columns:1fr}.section-space{padding:60px 0}.receipt-panel{align-items:flex-start;gap:15px;padding:21px}.receipt-icon{flex-basis:52px;height:52px;font-size:2.2rem}.bank-card{flex-direction:column;padding:22px}.bank-brand{flex-direction:row;justify-content:center;width:100%;flex-basis:auto}.bank-details{width:100%}.account-number-row>strong{font-size:1.55rem}.payment-instructions{padding:23px}.impact-art{min-height:310px}.zakat-cta{padding:60px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.zakat-page *{transition:none!important;animation:none!important}}

/* Fix CTA button hover visibility */
.btn-adni-primary,
.btn-adni-primary:hover,
.btn-adni-primary:focus,
.btn-adni-primary:active {
    background-color: #273480 !important;
    color: #ffffff !important;
    border-color: #273480 !important;
    opacity: 1 !important;
}

/* Fix Zakat navigation links */
.zakat-site-header .nav-link {
    color: #273480 !important;
}

.zakat-site-header .nav-link:hover,
.zakat-site-header .nav-link:focus {
    color: #c5a253 !important;
}

/* Keep Pay Zakat menu button visible */
.zakat-site-header .zakat-nav-cta,
.zakat-site-header .zakat-nav-cta:hover {
    background-color: #273480 !important;
    color: #ffffff !important;
}

/* Keep Contact ADNI button visible */
.zakat-hero .btn-adni-outline {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    display: inline-flex !important;
}

/* Prevent AOS from hiding the hero CTA */
.zakat-hero .btn-adni-outline[data-aos] {
    opacity: 1 !important;
    visibility: visible !important;
}