
/* ================= PREMIUM BODY BACKGROUND ================= */
body{
    font-family:"Segoe UI",Roboto,Arial,sans-serif;
    min-height:100vh;
    background:
      radial-gradient(circle at top left, rgba(30,136,229,.12), transparent 45%),
      radial-gradient(circle at bottom right, rgba(11,125,62,.15), transparent 45%),
      linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
    color:#333;
}

/* ================= NAVBAR ================= */
#mainNavbar{
    position:sticky;
    top:0;
    z-index:1000;
    background:linear-gradient(90deg,#0b7d3e,#1e88e5);
    padding:10px 0; /* 🔑 jarak atas bawah */
    transition:.3s;
}

#mainNavbar.scrolled{
    box-shadow:0 10px 30px rgba(0,0,0,.25);
}

/* 🔑 JARAK ANTAR MENU */
.navbar-nav{
    gap:10px;
}

/* 🔑 MENU KOTAK TRANSPARAN */
.navbar .nav-link{
    color:#fff !important;
    font-weight:600;
    padding:8px 16px;
    border-radius:12px;

    background:rgba(255,255,255,.15);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);

    transition:.3s;
}

/* hover */
.navbar .nav-link:hover{
    background:rgba(255,255,255,.28);
    transform:translateY(-2px);
}

/* aktif */
.navbar .nav-link.active{
    background:#fff;
    color:#0b7d3e !important;
    font-weight:700;
    box-shadow:0 6px 16px rgba(0,0,0,.2);
}

/* ================= DROPDOWN ================= */
.dropdown-menu{
    border:none;
    border-radius:14px;
    padding:8px;
    margin-top:10px;
    box-shadow:0 14px 40px rgba(0,0,0,.2);
}

.dropdown-item{
    padding:10px 16px;
    border-radius:10px;
    margin-bottom:4px;
}

.dropdown-item:hover{
    background:linear-gradient(90deg,#0b7d3e,#1e88e5);
    color:#fff;
}

.dropdown-item.active{
    background:#0b7d3e;
    color:#fff;
    font-weight:600;
}


/* ================= HERO ================= */
.hero-carousel{
    height:420px;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 18px 40px rgba(0,0,0,.15);
}
.hero-carousel img{
    width:100%;
    height:420px;
    object-fit:cover;
}
@media(max-width:768px){
    .hero-carousel,.hero-carousel img{height:260px;}
}

/* ================= MODULE CARD (EQUAL HEIGHT) ================= */
.module-card{
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 10px 28px rgba(0,0,0,.1);
    transition:.35s;
    position:relative;

    /* 🔑 KUNCI HEIGHT SAMA */
    display:flex;
    flex-direction:column;
    height:100%;
}

.module-card::before{
    content:"";
    position:absolute;
    top:0;left:0;
    height:5px;width:100%;
    background:var(--grad);
}

.module-card:hover{
    transform:translateY(-10px);
    box-shadow:0 18px 45px rgba(0,0,0,.18);
}

.module-card img.cover{
    width:100%;
    height:180px;
    object-fit:cover;
    flex-shrink:0;
}

/* 🔑 BODY FLEX */
.module-body{
    padding:18px;
    display:flex;
    flex-direction:column;
    flex:1;
}

.module-title{
    font-weight:700;
    background-image:var(--grad);
    background-size:200% 200%;
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.module-title::after{
    content:"";
    width:48px;height:4px;
    background:inherit;
    display:block;
    margin-top:6px;
    border-radius:4px;
}

/* teks bawah selalu di bawah */
.module-body p{
    margin-top:auto;
}


/* ================= MOBILE ================= */
@media(max-width:576px){
    .module-card img.cover{height:130px;}
    .module-body{padding:14px;}
    .module-title{font-size:.95rem;}
}

/* ================= GRADIENT PER MODUL ================= */
.grad-profile{--grad:linear-gradient(135deg,#0b7d3e,#43a047);}
.grad-fikih{--grad:linear-gradient(135deg,#00796b,#26a69a);}
.grad-rs{--grad:linear-gradient(135deg,#1565c0,#42a5f5);}
.grad-artikel{--grad:linear-gradient(135deg,#3949ab,#7e57c2);}
.grad-lazismu{--grad:linear-gradient(135deg,#ef6c00,#ffb74d);}
.grad-event{--grad:linear-gradient(135deg,#6a1b9a,#ec407a);}

/* ================= FOOTER ================= */
footer{
    background:linear-gradient(90deg,#0b7d3e,#1e88e5);
    color:#fff;
    padding:32px 0;
    margin-top:50px;
}

/* ================= NEWS CARD ================= */
.news-card{
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 10px 28px rgba(0,0,0,.1);
    transition:.35s;
    display:flex;
    flex-direction:column;
    height:100%;
}

.news-card:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 45px rgba(0,0,0,.18);
}

.news-thumb{
    height:170px;
    width:100%;
    object-fit:cover;
}

.news-body{
    padding:18px;
    display:flex;
    flex-direction:column;
    flex:1;
}

.news-badge{
    display:inline-block;
    background:linear-gradient(135deg,#0b7d3e,#1e88e5);
    color:#fff;
    font-size:.7rem;
    font-weight:600;
    padding:4px 10px;
    border-radius:20px;
    margin-bottom:8px;
}

.news-title{
    font-weight:700;
    font-size:1rem;
    line-height:1.35;
    margin-bottom:8px;
}

.news-meta{
    font-size:.75rem;
    color:#777;
    margin-top:auto;
}

/* ================= RS & KLINIK SHOWCASE ================= */
.rs-card{
    background:#fff;
    border-radius:20px;
    box-shadow:0 14px 40px rgba(0,0,0,.15);
    overflow:hidden;
}

.rs-slider img{
    height:320px;
    object-fit:cover;
    width:100%;
}

.rs-info{
    padding:18px;
}

.rs-info h4{
    font-weight:800;
    margin-bottom:6px;
}

.rs-info p{
    font-size:.9rem;
    color:#666;
}

/* ===== LIST THUMBNAIL ===== */
.rs-list{
    border-left:1px solid #eee;
    max-height:380px;
    overflow-y:auto;
}

.rs-item{
    display:flex;
    gap:12px;
    padding:12px;
    cursor:pointer;
    transition:.3s;
}

.rs-item:hover{
    background:#f4f6f9;
}

.rs-item.active{
    background:linear-gradient(90deg,#0b7d3e,#1e88e5);
    color:#fff;
}

.rs-thumb{
    width:64px;
    height:48px;
    object-fit:cover;
    border-radius:8px;
}

.rs-item h6{
    font-size:.9rem;
    margin:0;
    font-weight:700;
}

.rs-item small{
    font-size:.7rem;
    opacity:.85;
}

/* ===== MOBILE ===== */
@media(max-width:768px){
    .rs-list{
        border-left:none;
        border-top:1px solid #eee;
        max-height:none;
    }
    .rs-slider img{
        height:220px;
    }
}

/* ================= EDUKASI KESEHATAN ================= */
.edukasi-card{
    background:#fff;
    border-radius:18px;
    padding:18px;
    box-shadow:0 12px 32px rgba(0,0,0,.12);
    height:100%;
    transition:.35s;
}

.edukasi-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 45px rgba(0,0,0,.18);
}

.edukasi-slider img{
    height:200px;
    width:100%;
    object-fit:cover;
    border-radius:12px;
}

.edukasi-title{
    font-weight:700;
    margin-top:12px;
}

.edukasi-desc{
    font-size:.85rem;
    color:#666;
}

/* mobile */
@media(max-width:576px){
    .edukasi-slider img{
        height:220px;
    }
}

/* ================= FIKIH & IBADAH ================= */
.fikih-card{
    background:#fff;
    border-radius:20px;
    box-shadow:0 14px 40px rgba(0,0,0,.15);
    overflow:hidden;
}

.fikih-media iframe,
.fikih-media img{
    width:100%;
    height:400px;
    object-fit:cover;
    border-bottom:1px solid #eee;
}

.fikih-body{
    padding:20px;
}

.fikih-body h4{
    font-weight:800;
    margin-bottom:6px;
}

.fikih-body p{
    font-size:.9rem;
    color:#666;
}
.fikih-list{
    height:100%;
    border-right:1px solid #eee;
}

.fikih-item{
    padding:16px 18px;
}

/* mobile: list pindah ke atas */
@media(max-width:768px){
    .fikih-list{
        border-right:none;
        border-bottom:1px solid #eee;
    }
}


/* ===== LIST ===== */
.fikih-list{
    border-top:1px solid #eee;
}

.fikih-item{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 20px;
    cursor:pointer;
    transition:.3s;
}

.fikih-item:hover{
    background:#f4f6f9;
}

.fikih-item.active{
    background:linear-gradient(90deg,#00796b,#26a69a);
    color:#fff;
}

.fikih-icon{
    width:36px;
    height:36px;
    border-radius:50%;
    background:#e0f2f1;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    color:#00796b;
}

.fikih-item.active .fikih-icon{
    background:#fff;
    color:#00796b;
}

/* mobile */
@media(max-width:768px){
    .fikih-media iframe,
    .fikih-media img{
        height:220px;
    }
}

/* ================= LAZISMU CARD ================= */
.lazismu-card{
    background:#fff;
    border-radius:22px;
    box-shadow:0 16px 45px rgba(0,0,0,.15);
    overflow:hidden;
}

.lazismu-img{
    height:100%;
    min-height:260px;
    width:100%;
    object-fit:cover;
}

.lazismu-body{
    padding:22px;
}

.lazismu-body h4{
    font-weight:800;
    margin-bottom:6px;
}

.lazismu-body p{
    font-size:.9rem;
    color:#666;
}

/* ===== DONASI BOX ===== */
.lazismu-donate{
    background:linear-gradient(135deg,#ef6c00,#ffb74d);
    color:#fff;
    padding:22px;
    height:100%;
}

.lazismu-donate h5{
    font-weight:800;
    margin-bottom:12px;
}

.qris-img{
    width:100%;
    max-width:160px;
    border-radius:12px;
    background:#fff;
    padding:10px;
    margin-bottom:12px;
}

/* ===== BUTTON ===== */
.btn-wa{
    background:#25D366;
    color:#fff;
    font-weight:600;
    border-radius:10px;
    margin-bottom:10px;
}

.btn-wa:hover{
    background:#1ebc59;
    color:#fff;
}

.hotline{
    font-weight:700;
    font-size:1.05rem;
}

/* mobile */
@media(max-width:768px){
    .lazismu-img{
        min-height:200px;
    }
}

