/* Humza Quran Academy - Professional Lightweight UI */
:root{--qg:#0b5d4b;--qgd:#064638;--qgl:#edf7f3;--gold:#c9a227;--ink:#12241f;--muted:#68756f;--line:#e5ebe7;--paper:#fff;--soft:#f7faf8;--shadow:0 10px 30px rgba(18,36,31,.07);--shadow2:0 16px 38px rgba(18,36,31,.11);--r:16px}
html,body{width:100%;max-width:none;overflow-x:hidden}.site,.site-content,#page,.humza-main{width:100%;max-width:none;margin:0;padding:0}.humza-container{width:100%;max-width:1440px;margin-inline:auto;padding-inline:clamp(20px,4vw,64px)}
.humza-section{padding-block:clamp(64px,7vw,96px)}
/* Header */
.humza-header{width:100%;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:relative;z-index:50}.humza-header__container{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}.humza-header__branding{display:flex;align-items:center;min-width:180px}.humza-header__branding img{max-height:48px;width:auto}.humza-header__navigation{display:flex;align-items:center;justify-content:center;flex:1}.humza-header__actions{display:flex;align-items:center;gap:12px}.humza-header a{transition:.2s ease}.humza-header a:hover{color:var(--qg)}
/* Buttons */
.humza-button,.humza-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:12px 21px;border-radius:999px;border:1px solid transparent;font-weight:700;font-size:14px;line-height:1;transition:.2s ease}.humza-button:hover,.humza-btn:hover{transform:translateY(-1px)}.humza-button--primary,.humza-btn--primary{background:var(--qg);color:#fff!important;box-shadow:0 7px 18px rgba(11,93,75,.16)}.humza-button--primary:hover,.humza-btn--primary:hover{background:var(--qgd)}.humza-button--light,.humza-btn--white{background:#fff;color:var(--qg)!important}.humza-button--outline,.humza-btn--outline{background:#fff;color:var(--qg)!important;border-color:var(--qg)}.humza-button--text{padding-inline:4px;color:var(--qg)!important;background:none}.humza-button--large{padding-inline:26px;min-height:52px}
/* Hero landscape */
.humza-hero{background:linear-gradient(135deg,#f8fbf9 0%,#fff 62%);min-height:calc(100vh - 78px);display:flex;align-items:center}.humza-hero__container{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr);gap:clamp(45px,6vw,100px);align-items:center;padding-block:70px}.humza-hero__title{font-size:clamp(42px,5.2vw,72px);line-height:1.08;color:var(--ink);margin:12px 0 20px;font-weight:700;letter-spacing:-1.5px}.humza-hero__description{font-size:18px;line-height:1.75;color:var(--muted);max-width:650px}.humza-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.humza-hero__visual{position:relative;width:100%;min-width:0}.humza-hero__image-frame{display:block;width:100%;box-sizing:border-box;background:#fff;border:1px solid var(--line);border-radius:24px;padding:10px;box-shadow:var(--shadow2)}.humza-hero__image-wrapper{display:block;width:100%;height:clamp(360px,33vw,560px);overflow:hidden}.humza-hero__image{display:block;width:100%!important;height:100%!important;max-width:none!important;aspect-ratio:auto!important;object-fit:cover;border-radius:17px}.humza-hero__badge{position:absolute;right:-16px;bottom:25px;background:#fff;border:1px solid var(--line);padding:14px 17px;border-radius:14px;box-shadow:var(--shadow)}
/* headings */
.humza-section-eyebrow,.humza-section-heading__eyebrow{color:var(--gold);font-size:12px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase}.humza-section-heading__title,.humza-section-heading h2,.humza-courses__title,.humza-teachers__title,.humza-about__title{color:var(--ink);line-height:1.16}.humza-section-heading{margin-bottom:44px}.humza-section-heading__description,.humza-courses__description,.humza-teachers__description{color:var(--muted)}
/* About */
.humza-about__grid{display:grid;grid-template-columns:minmax(380px,.9fr) minmax(0,1.1fr);gap:clamp(45px,7vw,100px);align-items:center}.humza-about__image-frame{padding:9px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.humza-about__image{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:15px}.humza-about__title{font-size:clamp(34px,4vw,52px);margin:12px 0 18px}.humza-about__lead{font-size:19px;color:var(--ink)}.humza-about__features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:28px 0}.humza-about__feature{padding:15px;background:var(--soft);border:1px solid var(--line);border-radius:12px}
/* Courses landscape grid */
.humza-courses{background:var(--soft)}.humza-courses__header,.humza-teachers__header{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}.humza-courses__title,.humza-teachers__title{font-size:clamp(34px,4vw,50px);margin:10px 0 12px}.humza-courses__heading{max-width:850px}.humza-courses__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.humza-course-card,.humza-teacher-card,.humza-review-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:0 5px 18px rgba(18,36,31,.045);transition:.22s ease}.humza-course-card:hover,.humza-teacher-card:hover,.humza-review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow2)}.humza-course-card__image-wrapper,.humza-teacher-card__image-wrapper{position:relative;overflow:hidden}.humza-course-card__image,.humza-teacher-card__image{width:100%;aspect-ratio:16/10;object-fit:cover}.humza-course-card__content,.humza-teacher-card__content{padding:20px}.humza-course-card__label,.humza-teacher-card__role{font-size:11px;color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:1px}.humza-course-card__title,.humza-teacher-card__name{font-size:20px;color:var(--ink);margin:7px 0 9px;line-height:1.3}.humza-course-card__description,.humza-teacher-card__description{font-size:14px;color:var(--muted);line-height:1.65}.humza-course-card__link,.humza-teacher-card__link{display:inline-flex;margin-top:10px;color:var(--qg);font-weight:700;font-size:14px}.humza-course-card__number,.humza-teacher-card__number{position:absolute;top:12px;left:12px;background:#fff;color:var(--qg);border-radius:9px;padding:6px 9px;font-size:11px;font-weight:800;box-shadow:0 3px 10px rgba(0,0,0,.08)}
/* Teachers */
.humza-teachers__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.humza-teacher-card__image{aspect-ratio:1/1}.humza-teacher-card{text-align:left}
/* Reviews */
.humza-reviews{background:#f7faf8}.humza-reviews__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.humza-review-card{padding:25px}.humza-review-card__text{margin:16px 0 22px;color:var(--muted);font-size:15px;line-height:1.7}.humza-review-card__course{display:block;color:var(--qg);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.7px}.humza-review-card__student-info{display:flex;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--line);font-size:14px}.humza-review-card__student-info strong{color:var(--ink)}.humza-review-card__rating{white-space:nowrap;letter-spacing:2px;color:#c9cfca}.humza-review-card__rating .is-active{color:var(--gold)}.humza-review-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:0 auto 30px}.humza-review-filter{padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.humza-review-filter:hover,.humza-review-filter.is-active{background:var(--qg);border-color:var(--qg);color:#fff}.humza-reviews__empty{padding:24px;text-align:center;color:var(--muted)}
/* Free trial / CTA */
.humza-free-trial__wrapper,.humza-cta__wrapper{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.75fr);gap:45px;align-items:center;background:var(--qg);color:#fff;border-radius:24px;padding:clamp(30px,5vw,60px)}.humza-free-trial__title,.humza-cta__title{font-size:clamp(34px,4vw,52px);line-height:1.15}.humza-free-trial__description,.humza-cta__description{color:rgba(255,255,255,.78)}.humza-free-trial__form-wrapper{background:#fff;color:var(--ink);border-radius:18px;padding:25px}.humza-form-field input,.humza-form-field textarea,.humza-form-field select{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 13px;background:#fff}.humza-form-submit{margin-top:10px}
/* Contact */
.humza-contact__layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.humza-contact-card{display:flex;align-items:center;gap:15px;padding:17px;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;background:#fff}.humza-contact__form-wrapper{border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--shadow)}
/* FAQ */
.humza-faq__accordion{max-width:900px;margin:auto}.humza-faq-item{border-bottom:1px solid var(--line);padding:4px 0}.humza-faq-item__question{width:100%;display:flex;justify-content:space-between;gap:20px;padding:20px 0;background:none;border:0;color:var(--ink);font-weight:700;text-align:left}.humza-faq-item__answer{color:var(--muted)}
/* Footer: horizontal landscape */
.humza-footer{background:#0c2720;color:#fff;padding-top:58px}.humza-footer .humza-container{max-width:1440px}.humza-footer__main{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.15fr;gap:45px;align-items:start}.humza-footer__brand{max-width:380px}.humza-footer__logo img{max-height:48px;width:auto}.humza-footer__description{color:rgba(255,255,255,.68);font-size:14px;line-height:1.7;margin-top:17px}.humza-footer__title{font-size:16px;margin:3px 0 17px;color:#fff}.humza-footer__links li,.humza-footer__contact li{margin-bottom:10px}.humza-footer__links a,.humza-footer__contact a,.humza-footer__contact span{color:rgba(255,255,255,.7);font-size:14px}.humza-footer__links a:hover,.humza-footer__contact a:hover{color:#fff}.humza-footer__bottom{margin-top:45px;padding:20px 0;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:rgba(255,255,255,.58);font-size:13px}
/* books */
.humza-books-page .humza-books-grid,.humza-books-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.humza-book-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
@media(max-width:1100px){.humza-courses__grid,.humza-teachers__grid{grid-template-columns:repeat(2,1fr)}.humza-books-page .humza-books-grid,.humza-books-grid{grid-template-columns:repeat(2,1fr)}.humza-footer__main{grid-template-columns:1.4fr 1fr 1fr}.humza-footer__brand{grid-column:1/-1;max-width:650px}}
@media(max-width:820px){.humza-hero__container,.humza-about__grid,.humza-free-trial__wrapper,.humza-cta__wrapper,.humza-contact__layout{grid-template-columns:1fr}.humza-hero{min-height:auto}.humza-hero__visual{max-width:720px;margin:auto}.humza-reviews__grid{grid-template-columns:1fr}.humza-header__navigation{display:flex}.humza-header__container{min-height:68px}.humza-footer__main{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.humza-courses__grid,.humza-teachers__grid,.humza-books-page .humza-books-grid,.humza-books-grid{grid-template-columns:1fr}.humza-courses__header,.humza-teachers__header{display:block}.humza-about__features{grid-template-columns:1fr}.humza-hero__title{font-size:40px}.humza-footer__main{grid-template-columns:1fr}.humza-footer__bottom{display:block}.humza-footer__bottom>*{margin-bottom:8px}}

/* Humza Quran lightweight luxury card system */
:root{--qg:#0b5d4b;--qgd:#074b3d;--qgold:#c9a227;--qline:rgba(11,93,75,.30);--qshadow:0 8px 26px rgba(7,75,61,.08);--qease:180ms ease}
.humza-container{width:100%;max-width:1400px;padding-left:32px;padding-right:32px;box-sizing:border-box}
.humza-course-card,.humza-teacher-card,.humza-review-card,.humza-card{border:1.5px solid var(--qline)!important;box-shadow:var(--qshadow);transition:transform var(--qease),box-shadow var(--qease),border-color var(--qease)}
.humza-course-card:hover,.humza-teacher-card:hover,.humza-review-card:hover,.humza-card:hover{transform:translateY(-4px);border-color:var(--qg)!important;box-shadow:0 12px 30px rgba(7,75,61,.13)}
.humza-button,.humza-btn,.humza-course-card__link,.humza-teacher-card__link{border:1.5px solid var(--qg)!important;transition:transform var(--qease),background var(--qease),box-shadow var(--qease)!important}
.humza-button--primary,.humza-btn--primary{background:var(--qg)!important;color:#fff!important}.humza-button--primary:hover,.humza-btn--primary:hover{background:var(--qgd)!important;transform:translateY(-2px)}
.humza-course-card__image-wrapper,.humza-teacher-card__image-wrapper{height:270px!important;overflow:hidden!important;background:#f4f7f5;padding:8px;box-sizing:border-box;border-radius:14px 14px 0 0}
.humza-course-card__image,.humza-teacher-card__image{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:9px;display:block}
.humza-teachers__grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important}.humza-courses__grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important}.humza-reviews__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important}.humza-footer__main{grid-template-columns:1.25fr 1fr 1fr 1.2fr!important;gap:40px!important}
@media(max-width:1100px){.humza-teachers__grid,.humza-courses__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.humza-reviews__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.humza-footer__main{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:700px){.humza-container{padding-left:18px;padding-right:18px}.humza-teachers__grid,.humza-courses__grid,.humza-reviews__grid,.humza-footer__main{grid-template-columns:1fr!important}.humza-course-card__image-wrapper,.humza-teacher-card__image-wrapper{height:250px!important}}

/* Mobile navigation safety and overlay. */
.humza-mobile-overlay {
    position: fixed;
    inset: 0;
    z-index: 998;
    background: rgba(12, 30, 24, 0.18);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}

.humza-mobile-overlay.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

@media (max-width: 991px) {
    .humza-header {
        z-index: 1000;
    }

    .humza-header__navigation {
        position: relative;
        z-index: 1001;
    }

    .humza-navigation.is-open {
        z-index: 1002;
    }

    body.humza-menu-open {
        overflow: hidden;
    }
}
