/* ==========================================================
   MDTU NURUL ISLAM — PREMIUM EMERALD LUXURY
   ========================================================== */

:root{
    --mdtu-950:#012d20;
    --mdtu-900:#045c3d;
    --mdtu-800:#067b52;
    --mdtu-700:#08a66b;
    --mdtu-600:#0bc981;
    --mdtu-500:#20e69a;
    --mdtu-300:#8dffd0;
    --mdtu-100:#e8fff5;
    --mdtu-gold:#d7bb72;
    --mdtu-gold-light:#f1dfad;
    --mdtu-ink:#102d25;
    --mdtu-text:#53665f;
    --mdtu-border:rgba(7,93,66,.11);
    --mdtu-shadow:0 18px 55px rgba(4,54,39,.10);
    --mdtu-shadow-lg:0 28px 80px rgba(3,44,32,.16);
}

.mdtu-hero,.mdtu-about,.curriculum-section,.class-section,.method-section,
.graduate-section,.feature-section,.activity-section,.teacher-section,
.faq-section,.mdtu-cta{
    position:relative;
    isolation:isolate;
}

.mdtu-hero{
    min-height:510px;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:
        linear-gradient(110deg,rgba(1,45,32,.96),rgba(4,92,61,.84) 55%,rgba(6,123,82,.55)),
        url("../images/mdtu/hero.jpg") center/cover no-repeat;
    box-shadow:inset 0 -1px 0 rgba(141,255,208,.40);
}
.mdtu-overlay{
    position:absolute;
    inset:0;
    z-index:-1;
    background:
        radial-gradient(circle at 78% 25%,rgba(32,230,154,.31),transparent 23%),
        radial-gradient(circle at 20% 100%,rgba(215,187,114,.12),transparent 30%);
}
.mdtu-hero::after{
    content:"";
    position:absolute;
    right:-160px;
    top:-220px;
    width:540px;
    height:540px;
    border:1px solid rgba(141,255,208,.18);
    border-radius:50%;
    box-shadow:0 0 0 42px rgba(141,255,208,.025),0 0 0 84px rgba(141,255,208,.015);
    pointer-events:none;
}
.mdtu-hero-content{
    max-width:790px;
    padding:78px 0;
    animation:mdtuIn .75s ease both;
}
.hero-badge,.section-subtitle{
    display:inline-flex;
    align-items:center;
    gap:9px;
    font-size:10px;
    font-weight:900;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.hero-badge{
    padding:9px 14px;
    color:#d9ffed!important;
    border:1px solid rgba(174,244,216,.32);
    border-radius:999px;
    background:rgba(255,255,255,.07);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.17),0 0 22px rgba(32,230,154,.12);
    backdrop-filter:blur(10px);
}
.hero-badge::before{
    content:"";
    width:6px;
    height:6px;
    border-radius:50%;
    background:#8dffd0;
    box-shadow:0 0 8px #8dffd0,0 0 18px rgba(32,230,154,.75);
}
.mdtu-hero h1{
    margin:18px 0 5px;
    color:#fff!important;
    font-family:"Playfair Display",Georgia,serif!important;
    font-size:clamp(48px,7vw,82px)!important;
    line-height:.98!important;
    letter-spacing:-.04em;
    text-shadow:0 12px 35px rgba(0,0,0,.22),0 0 28px rgba(32,230,154,.10);
}
.mdtu-hero h3{
    margin:0 0 17px;
    color:#9dffd3!important;
    font-family:"Playfair Display",Georgia,serif;
    font-size:clamp(20px,3vw,31px);
    font-weight:600;
}
.mdtu-hero p{
    max-width:700px;
    margin:0;
    color:rgba(255,255,255,.80)!important;
    font-size:14px;
    line-height:1.9;
}
.hero-info{
    display:flex;
    flex-wrap:wrap;
    width:max-content;
    max-width:100%;
    margin-top:30px;
    border:1px solid rgba(141,255,208,.16);
    border-radius:16px;
    background:rgba(255,255,255,.06);
    backdrop-filter:blur(12px);
    box-shadow:0 15px 35px rgba(0,0,0,.10);
}
.hero-info>div{
    min-width:150px;
    padding:13px 18px;
    color:rgba(255,255,255,.72);
    font-size:10px;
    border-right:1px solid rgba(141,255,208,.13);
}
.hero-info>div:last-child{border-right:0}
.hero-info strong{
    display:block;
    margin-bottom:4px;
    color:#8dffd0;
    font-size:9px;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.hero-button{
    display:flex;
    flex-wrap:wrap;
    gap:11px;
    margin-top:27px;
}
.hero-button .btn,.mdtu-cta .btn{
    padding:12px 21px;
    border-radius:11px;
    font-size:11px;
    font-weight:800;
    transition:.25s ease;
}
.hero-button .btn-warning,.mdtu-cta .btn-warning{
    color:#17382c!important;
    border:1px solid var(--mdtu-gold-light)!important;
    background:linear-gradient(135deg,#f3e3b5,#d5b96f)!important;
    box-shadow:0 10px 28px rgba(0,0,0,.15),0 0 18px rgba(215,187,114,.10);
}
.hero-button .btn-outline-light,.mdtu-cta .btn-outline-light{
    color:#fff!important;
    border-color:rgba(255,255,255,.42)!important;
    background:rgba(255,255,255,.05);
}
.hero-button .btn:hover,.mdtu-cta .btn:hover{transform:translateY(-3px)}

.mdtu-about,.graduate-section{
    padding:105px 0;
    background:#fff;
}
.mdtu-about::before,.graduate-section::before{
    content:"";
    position:absolute;
    width:280px;
    height:280px;
    right:-140px;
    top:30px;
    border:1px solid rgba(32,230,154,.07);
    border-radius:50%;
}
.mdtu-about img,.graduate-section img{
    width:100%;
    min-height:350px;
    object-fit:cover;
    border-radius:28px!important;
    border:7px solid #fff;
    outline:1px solid rgba(32,230,154,.16);
    box-shadow:var(--mdtu-shadow-lg);
}
.section-subtitle{
    color:var(--mdtu-700)!important;
    text-shadow:0 0 16px rgba(32,230,154,.15);
}
.section-subtitle::before{
    content:"";
    width:24px;
    height:2px;
    border-radius:20px;
    background:linear-gradient(90deg,var(--mdtu-500),var(--mdtu-gold));
    box-shadow:0 0 10px rgba(32,230,154,.3);
}
.section-title{
    margin-top:12px!important;
    color:var(--mdtu-ink)!important;
    font-family:"Playfair Display",Georgia,serif!important;
    font-size:clamp(31px,4vw,48px)!important;
    line-height:1.15!important;
    letter-spacing:-.025em;
}
.section-title::after{
    content:"";
    display:block;
    width:48px;
    height:3px;
    margin-top:16px;
    border-radius:20px;
    background:linear-gradient(90deg,var(--mdtu-500),var(--mdtu-gold));
    box-shadow:0 0 8px rgba(32,230,154,.4);
}
.mdtu-about p,.section-description{
    color:var(--mdtu-text);
    font-size:13px;
    line-height:1.95;
}
.curriculum-section,.class-section,.method-section,.feature-section,.activity-section,
.teacher-section,.faq-section{
    padding:105px 0;
}
.curriculum-section,.class-section,.feature-section,.faq-section{background:#f7faf8}
.method-section,.activity-section,.teacher-section{background:#fff}

.curriculum-card,.method-card,.feature-card,.activity-card,.teacher-card,.class-card{
    height:100%;
    border:1px solid var(--mdtu-border);
    border-radius:22px;
    background:#fff;
    box-shadow:0 9px 30px rgba(3,65,47,.055);
    transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
.curriculum-card,.method-card,.feature-card,.activity-card{padding:29px}
.curriculum-card:hover,.method-card:hover,.feature-card:hover,.activity-card:hover,.teacher-card:hover,.class-card:hover{
    transform:translateY(-7px);
    border-color:rgba(32,230,154,.30);
    box-shadow:var(--mdtu-shadow);
}
.curriculum-card{
    position:relative;
    overflow:hidden;
}
.curriculum-card::after{
    content:"";
    position:absolute;
    width:120px;height:120px;
    right:-55px;bottom:-55px;
    border-radius:50%;
    background:rgba(32,230,154,.055);
}
.curriculum-icon,.method-card>i,.feature-card>i,.activity-card>i{
    display:flex;
    align-items:center;
    justify-content:center;
    width:55px;height:55px;
    margin-bottom:20px;
    color:#d9ffed;
    font-size:20px;
    border-radius:16px;
    background:linear-gradient(145deg,var(--mdtu-600),var(--mdtu-900));
    box-shadow:0 12px 27px rgba(5,114,78,.20),0 0 24px rgba(32,230,154,.13);
}
.curriculum-card h3,.method-card h4,.feature-card h4,.activity-card h4,.teacher-card h4{
    color:var(--mdtu-ink);
    font-family:"Playfair Display",Georgia,serif;
}
.curriculum-card h3{font-size:23px;margin:0 0 15px}
.curriculum-card ul{
    margin:0;padding:0;list-style:none;
}
.curriculum-card li{
    position:relative;
    padding:9px 0 9px 22px;
    color:var(--mdtu-text);
    font-size:12px;
    border-bottom:1px solid rgba(7,93,66,.07);
}
.curriculum-card li:last-child{border-bottom:0}
.curriculum-card li::before{
    content:"";
    position:absolute;
    left:0;top:15px;
    width:7px;height:7px;
    border-radius:50%;
    background:var(--mdtu-500);
    box-shadow:0 0 9px rgba(32,230,154,.55);
}
.class-card{
    padding:22px 10px;
    text-align:center;
}
.class-number{
    display:flex;
    align-items:center;
    justify-content:center;
    width:58px;height:58px;
    margin:0 auto 15px;
    color:#fff;
    font-family:"Playfair Display",Georgia,serif;
    font-size:24px;
    border-radius:50%;
    background:linear-gradient(145deg,var(--mdtu-500),var(--mdtu-900));
    box-shadow:0 10px 25px rgba(5,114,78,.20),0 0 20px rgba(32,230,154,.12);
}
.class-card h5{
    margin:0;
    color:var(--mdtu-ink);
    font-size:12px;
    font-weight:800;
}
.method-card{text-align:center}
.method-card>i,.feature-card>i,.activity-card>i{margin:0 auto 20px}
.method-card h4,.feature-card h4,.activity-card h4{font-size:20px;margin:0 0 10px}
.method-card p,.feature-card p,.activity-card p{
    margin:0;color:var(--mdtu-text);font-size:12px;line-height:1.8;
}
.graduate-list{
    list-style:none;padding:0;margin:25px 0 0;
}
.graduate-list li{
    position:relative;
    padding:12px 15px 12px 35px;
    color:var(--mdtu-text);
    font-size:12px;
    border-bottom:1px solid rgba(7,93,66,.07);
}
.graduate-list li::before{
    content:"✓";
    position:absolute;
    left:0;top:10px;
    display:flex;align-items:center;justify-content:center;
    width:21px;height:21px;
    color:#fff;font-size:10px;font-weight:900;
    border-radius:50%;
    background:var(--mdtu-600);
    box-shadow:0 0 12px rgba(32,230,154,.25);
}
.feature-card,.activity-card{text-align:center}
.feature-card>i,.activity-card>i{
    width:58px;height:58px;font-size:22px;
}
.teacher-card{
    overflow:hidden;
    text-align:center;
    padding-bottom:22px;
}
.teacher-card img{
    width:100%;
    height:250px;
    object-fit:cover;
    background:linear-gradient(145deg,#fff,#d8fff0);
}
.teacher-card h4{font-size:19px;margin:18px 10px 4px}
.teacher-card p{margin:0;color:var(--mdtu-700);font-size:11px;font-weight:800}
.faq-section .accordion{max-width:850px;margin:auto}
.faq-section .accordion-item{
    margin-bottom:12px;
    overflow:hidden;
    border:1px solid var(--mdtu-border)!important;
    border-radius:15px!important;
    background:#fff;
    box-shadow:0 7px 22px rgba(3,65,47,.045);
}
.faq-section .accordion-button{
    padding:19px 22px;
    color:var(--mdtu-ink);
    font-size:12px;
    font-weight:800;
    background:#fff;
    box-shadow:none!important;
}
.faq-section .accordion-button:not(.collapsed){
    color:var(--mdtu-700);
    background:var(--mdtu-100);
}
.faq-section .accordion-body{
    color:var(--mdtu-text);
    font-size:12px;
    line-height:1.8;
}
.mdtu-cta{
    padding:0 0 105px;
    background:#fff;
}
.mdtu-cta .cta-box{
    position:relative;
    overflow:hidden;
    padding:75px clamp(25px,7vw,90px);
    text-align:center;
    border:1px solid rgba(141,255,208,.30);
    border-radius:34px;
    background:
        radial-gradient(circle at 50% 0%,rgba(141,255,208,.18),transparent 35%),
        linear-gradient(135deg,var(--mdtu-950),var(--mdtu-800));
    box-shadow:var(--mdtu-shadow-lg),0 0 35px rgba(32,230,154,.08);
}
.mdtu-cta .cta-box::before{
    content:"";
    position:absolute;
    inset:18px;
    border:1px solid rgba(211,255,237,.10);
    border-radius:25px;
    pointer-events:none;
}
.mdtu-cta .cta-box>span{
    color:#9decc9;
    font-size:9px;
    font-weight:900;
    letter-spacing:.2em;
}
.mdtu-cta h2{
    position:relative;
    max-width:800px;
    margin:15px auto 12px;
    color:#fff;
    font-family:"Playfair Display",Georgia,serif;
    font-size:clamp(32px,5vw,56px);
    line-height:1.15;
}
.mdtu-cta p{
    max-width:680px;
    margin:auto;
    color:rgba(255,255,255,.70);
    font-size:12px;
    line-height:1.85;
}
.mdtu-cta .cta-button{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:11px;
    margin-top:28px;
}
@keyframes mdtuIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:991.98px){
    .mdtu-hero{min-height:450px}
    .mdtu-hero-content{padding:65px 0}
    .mdtu-about,.graduate-section,.curriculum-section,.class-section,.method-section,
    .feature-section,.activity-section,.teacher-section,.faq-section{padding:78px 0}
    .mdtu-about img,.graduate-section img{min-height:300px}
}
@media(max-width:767.98px){
    .mdtu-hero{min-height:520px;background-position:60% center}
    .mdtu-hero-content{padding:55px 0}
    .mdtu-hero h1{font-size:46px!important}
    .mdtu-hero h3{font-size:22px}
    .mdtu-hero p{font-size:12px}
    .hero-info{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}
    .hero-info>div{min-width:0;padding:12px 8px;text-align:center;font-size:9px}
    .hero-info strong{font-size:8px}
    .hero-button .btn{width:100%}
    .section-title{font-size:31px!important}
    .mdtu-about,.graduate-section,.curriculum-section,.class-section,.method-section,
    .feature-section,.activity-section,.teacher-section,.faq-section{padding:65px 0}
    .mdtu-about img,.graduate-section img{min-height:240px}
    .curriculum-card,.method-card,.feature-card,.activity-card{padding:25px}
    .teacher-card img{height:230px}
    .mdtu-cta{padding:0 12px 70px}
    .mdtu-cta .cta-box{padding:52px 20px;border-radius:25px}
    .mdtu-cta .cta-box::before{inset:10px;border-radius:19px}
    .mdtu-cta h2{font-size:31px}
    .mdtu-cta .cta-button{flex-direction:column;align-items:center}
    .mdtu-cta .btn{width:min(100%,260px)}
}
@media(prefers-reduced-motion:reduce){
    *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}