/* =====================================
   PROGRAM
===================================== */

.program{

    background:#f8f9fa;

}

.program-box{

    padding:45px 30px;

}


/* =====================================
   WHY
===================================== */

.why{

    background:#fff;

}

.why-box{

    padding:40px 30px;

}


/* =====================================
   VALUE
===================================== */

.value-card{

    padding:35px 30px;

}


/* =====================================
   PROFILE HERO
===================================== */

.page-hero{

    position:relative;

    min-height:480px;

    padding:55px 0 90px;

    display:flex;

    align-items:center;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.97) 0%,
            rgba(255,255,255,.92) 25%,
            rgba(255, 255, 255, 0.438) 45%,
            rgba(255, 255, 255, 0) 70%,
            rgba(255,255,255,0) 100%
        ),
        url("../images/Bakau GPT1.png");

    background-size:cover;

    background-position:center;

    overflow:hidden;
}


.page-hero .container{

    position:relative;

    z-index:2;
}


/* BREADCRUMB */

.page-hero .breadcrumb-custom{

    margin-bottom:18px;

}


/* LABEL */

.page-hero-label{

    display:inline-block;

    color:var(--primary);

    font-size:.85rem;

    font-weight:700;

    letter-spacing:2px;

    margin-bottom:5px;
}


/* JUDUL */

.page-hero h1{

    font-size:3.2rem;

    line-height:1.15;

    font-weight:700;

    color:#20252a;

    margin:10px 0 25px;

    max-width:700px;
}


/* GARIS HIJAU */

.page-hero h1::after{

    content:"";

    display:block;

    width:60px;

    height:3px;

    background:var(--primary);

    margin-top:25px;
}


/* DESKRIPSI */

.page-hero p{

    font-size:1.05rem;

    line-height:1.8;

    color:#20252a;

    max-width:700px;

    margin:0;
}

/* =====================================
   ABOUT INTRO
===================================== */

.about-intro{

    position:relative;

    background:#fff;

    padding:100px 0 110px;

    overflow:hidden;
}


/* CONTAINER */

.about-intro .container{

    position:relative;

    z-index:3;
}


/* INNER */

.about-intro-inner{

    display:grid;

    grid-template-columns:36% 64%;

    align-items:center;

    min-height:420px;

}


/* =====================================
   JUDUL KIRI
===================================== */

.about-intro-title{

    padding-left:40px;

    padding-right:50px;
}


.about-intro-label{

    display:inline-block;

    color:var(--primary);

    font-size:.85rem;

    font-weight:700;

    letter-spacing:2px;

    margin-bottom:15px;
}


.about-intro-title h2{

    margin:0;

    font-size:3.2rem;

    line-height:1.15;

    font-weight:700;

    color:#20252a;
}


.about-intro-title h2 span{

    color:var(--primary);
}


/* GARIS BAWAH JUDUL */

.about-intro-title h2::after{

    content:"";

    display:block;

    width:48px;

    height:3px;

    background:var(--primary);

    margin-top:25px;
}


/* =====================================
   TIMELINE
===================================== */

.about-timeline{

    position:relative;

    padding-left:70px;

}


/* GARIS VERTIKAL */

.about-timeline::before{

    content:"";

    position:absolute;

    left:0;

    top:25px;

    bottom:25px;

    width:1px;

    border-left:2px dashed #d7e2db;
}


/* ITEM */

.about-timeline-item{

    position:relative;

    display:grid;

    grid-template-columns:80px 1fr;

    gap:30px;

    align-items:center;

    margin-bottom:35px;
}


.about-timeline-item:last-child{

    margin-bottom:0;
}


/* =====================================
   ICON
===================================== */

.about-timeline-icon{

    width:72px;

    height:72px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#edf4ef;

    border-radius:50%;

    color:#17663b;

    font-size:27px;

    position:relative;

    z-index:2;
}


/* TITIK PADA GARIS */

.about-timeline-icon::before{

    content:"";

    position:absolute;

    left:-76px;

    width:10px;

    height:10px;

    border-radius:50%;

    background:#269653;

    border:3px solid #fff;

    box-shadow:0 0 0 1px #d7e2db;
}


/* =====================================
   TEKS
===================================== */

.about-timeline-text{

    max-width:650px;
}


.about-timeline-text p{

    margin:0;

    color:#20252a;

    font-size:1.05rem;

    line-height:1.8;
}


/* =====================================
   ORNAMEN DAUN
===================================== */

.about-leaf{

    position:absolute;

    pointer-events:none;

    opacity:.12;
}


.about-leaf-left{

    left:-70px;

    bottom:-40px;

    width:230px;

    height:300px;

    background:
        radial-gradient(
            ellipse at center,
            #17663b 0%,
            transparent 70%
        );

    transform:rotate(-25deg);

}


.about-leaf-right{

    right:-100px;

    top:50px;

    width:300px;

    height:350px;

    background:
        radial-gradient(
            ellipse at center,
            #17663b 0%,
            transparent 70%
        );

    transform:rotate(25deg);
}


/* =====================================
   PEMBATAS HERO
===================================== */

.about-divider{

    position:absolute;

    left:0;

    bottom:-1px;

    width:100%;

    height:65px;

    background:#fff;

    border-top:2px solid var(--primary);

    border-radius:50% 50% 0 0 / 35px 35px 0 0;

    z-index:4;
}


/* ICON DI TENGAH */

.about-divider-icon{

    position:absolute;

    left:50%;

    top:-32px;

    transform:translateX(-50%);

    width:64px;

    height:64px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#fff;

    border-radius:50%;

    border:1px solid #e4ebe6;

    color:var(--primary);

    font-size:27px;

    box-shadow:0 3px 15px rgba(0,0,0,.05);
}
/* =====================================
   HISTORY
===================================== */

.history-section{

    padding:90px 0;

    background:#f7f9f8;

}


.section-heading{

    max-width:700px;

    margin-bottom:60px;

    padding-left:40px;

}


.section-heading > span{

    display:inline-block;

    color:var(--primary);

    font-size:.85rem;

    font-weight:700;

    letter-spacing:2px;

    margin-bottom:5px;

}


.section-heading h2{

    font-size:3.2rem;

    line-height:1.15;

    font-weight:700;

    color:#20252a;

    margin:10px 0 15px;

}


.section-heading p{

    color:#666;

    font-size:1.05rem;

    line-height:1.8;

}


/* TIMELINE */

.history-timeline{

    position:relative;

    width:100%;
    max-width:none;

}


.history-timeline::before{

    content:"";

    position:absolute;

    left:95px;

    top:0;

    bottom:0;

    width:2px;

    background:#dce8e1;

}


.history-item{

    position:relative;

    display:grid;

    grid-template-columns:80px 30px 1fr;

    gap: 15px;

    margin-bottom:50px;

}

.history-year{

    padding-top:3px;

    color:var(--primary);

    font-weight:700;

    font-size:.9rem;

    text-align:right;

}

.history-dot{

    position:relative;

    width:14px;

    height:14px;

    margin-top:5px;

    margin-left:13px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px #eaf4ee;

}

.history-item:hover .history-dot {
    background: #176b35;
    box-shadow: 0 0 0 7px #eaf4ee;
}

.history-content{

    background:#fff;

    padding:25px 30px;

    border-radius:12px;

    border:1px solid #e5eae7;

    box-shadow:0 5px 20px rgba(0,0,0,.04);

     transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.history-content:hover{

    transform:translateY(-8px);

    box-shadow:
        0 15px 35px rgba(0,0,0,.10);
}


.history-content h3{

    margin:0 0 10px;

    font-size:1.3rem;

    color:#222;

}


.history-content p{

    margin:0;

    color:#555;

    line-height:1.8;

}


/* =====================================
   QUOTE
===================================== */

.history-quote{

    margin-top:30px;

    padding:40px 50px;

    border-left:4px solid var(--primary);

    background:#fff;

    color:var(--primary);

    font-style:italic;

    font-size:1.35rem;

    line-height:1.8;

    text-align:center;

}



.page-content{

    max-width:1000px;

    margin:auto;

}

.page-content p{

    line-height:2;

    text-align:justify;

    color:var(--text);

}



/* =====================================
    VISI - MISI
===================================== */

.about-section{

    padding:70px 0;

    background:#f7f9f8;

}


/* CARD */

.info-card{

    background:#fff;

    border-radius:16px;

    padding:35px 40px;

    margin-bottom:30px;

    border:1px solid #e5eae7;

    box-shadow:0 8px 25px rgba(0,0,0,.06);

}


/* JUDUL CARD */

.card-title{

    display:flex;

    align-items:center;

    gap:14px;

    margin-bottom:25px;

    padding-bottom:15px;

    border-bottom:2px solid #eef2ef;

}

.card-title h2{

    margin:0;

    font-size:30px;

    font-weight:600;

    color:#17663b;

}

.card-icon{

    width:48px;

    height:48px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#eaf4ee;

    border-radius:12px;

    font-size:23px;

}


/* ISI */

.card-content{

    color:#333;

    font-size:16px;

    line-height:1.8;

}

.card-content p{

    margin-bottom:18px;

    text-align:justify;

}

.card-content p:last-child{

    margin-bottom:0;

}


/* KUTIPAN */

.quote{

    margin-top:25px;

    padding:18px 22px;

    background:#f3f8f5;

    border-left:4px solid #17663b;

    border-radius:8px;

    color:#17663b;

    font-style:italic;

}


/* VISI & MISI */

.vision-mission{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:30px;

}

.vision-mission .info-card{

    margin-bottom:0;

}

.visi-card,
.misi-card{

    border-top:4px solid #17663b;

}


/* LIST MISI */

.misi-card ul{

    margin:0;

    padding-left:25px;

}

.misi-card li{

    margin-bottom:13px;

    padding-left:5px;

}

.misi-card li:last-child{

    margin-bottom:0;

}

/* =====================================
   NILAI-NILAI
===================================== */

.value-section{
    padding:90px 0 100px;
}

/* ==========================================================
   IQAAMAH HIGHLIGHT
========================================================== */

.iqaamah-title {
    color: #E04B5A;
    font-weight: 1000;
}

.iqaamah-letter {
    color: #E04B5A;
    font-weight: 1000;
}
/* ==========================================================
   RAUDHATUL ATHFAL
   KHUSUS HALAMAN RA
========================================================== */


/* ==========================================================
   HERO RA
========================================================== */

.ra-page-hero{

    padding:120px 0 110px;

    background:
        linear-gradient(
            to right,
            rgba(255,255,255,.96),
            rgba(255, 255, 255, 0.559),
            rgba(255, 255, 255, 0.125)
        ),
        url("../images/Bakau GPT1.png");

    background-size:cover;
    background-position:center;

}


.ra-page-hero .breadcrumb-custom{

    display:flex;
    align-items:center;
    gap:8px;

    margin-bottom:45px;

    font-size:1rem;

}


.ra-page-hero .breadcrumb-custom a{

    color:var(--primary);

    text-decoration:none;

}


.ra-page-hero .breadcrumb-custom a:hover{

    text-decoration:underline;

}


.page-hero-label,
.ra-section-label{

    display:block;

    margin-bottom:14px;

    color:var(--primary);

    font-size:.78rem;

    font-weight:700;

    letter-spacing:2.5px;

    text-transform:uppercase;

}


.ra-page-hero h1{

    max-width:850px;

    margin:0 0 25px;

    color:#202522;

    font-size:4rem;

    line-height:1.12;

    font-weight:700;

}


.ra-page-hero p{

    max-width:760px;

    margin:0;

    color:#333;

    font-size:1.35rem;

    line-height:1.8;

}



/* ==========================================================
   INTRO RA
========================================================== */

.ra-intro{

    padding:100px 0;

    background:#fff;

}


.ra-intro-inner{

    display:grid;

    grid-template-columns:38% 62%;

    align-items:start;

}


.ra-intro-title{

    padding-right:60px;

}


.ra-intro-title h2{

    margin:0;

    color:#222;

    font-size:3rem;

    line-height:1.2;

    font-weight:700;

}


.ra-intro-title h2 span{

    color:var(--primary);

}


.ra-intro-content{

    max-width:850px;

}


.ra-intro-content > p{

    margin:0 0 18px;

    color:#555;

    font-size:1.2rem;

    line-height:1.9;

}


.ra-intro-content strong{

    color:#333;

}


.ra-highlight-card{

    display:flex;

    align-items:flex-start;

    gap:16px;

    height:100%;

    padding:22px;

    background:#f8faf9;

    border:1px solid #e7eee9;

    border-radius:15px;

    transition:.3s;

}


.ra-highlight-card:hover{

    transform:translateY(-5px);

    box-shadow:0 12px 30px rgba(0,0,0,.07);

}


.ra-highlight-icon{

    width:48px;

    height:48px;

    flex:0 0 48px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:13px;

    background:#eaf4ee;

    color:var(--primary);

    font-size:1.3rem;

}


.ra-highlight-card h4{

    margin:2px 0 6px;

    font-size:1.05rem;

    font-weight:700;

}


.ra-highlight-card p{

    margin:0;

    color:#666;

    font-size:.95rem;

    line-height:1.6;

}



/* ==========================================================
   TARGET PEMBELAJARAN
========================================================== */

.ra-target-section{

    padding:100px 0;

}


.ra-target-section h2,
.ra-schedule-section h2,
.ra-method-section h2,
.ra-registration-section h2,
.ra-facility-section h2{

    margin:0 0 15px;

    color:#222;

    font-size:2.8rem;

    line-height:1.2;

    font-weight:700;

}


.ra-target-section h2 span,
.ra-method-section h2 span,
.ra-registration-section h2 span,
.ra-facility-section h2 span{

    color:var(--primary);

}


.ra-target-section .section-subtitle,
.ra-schedule-section .section-subtitle,
.ra-method-section .section-subtitle,
.ra-facility-section .section-subtitle{

    max-width:760px;

    margin:0 auto;

    color:#666;

    font-size:1.1rem;

    line-height:1.8;

}


.ra-target-card{

    position:relative;

    height:100%;

    padding:35px 30px;

    background:#fff;

    border:1px solid #e6ece8;

    border-radius:18px;

    box-shadow:0 8px 25px rgba(0,0,0,.05);

    transition:.3s;

}


.ra-target-card:hover{

    transform:translateY(-7px);

    box-shadow:0 16px 35px rgba(0,0,0,.09);

}


.ra-card-number{

    position:absolute;

    top:20px;

    right:25px;

    color:#dce8e1;

    font-size:1rem;

    font-weight:700;

}


.ra-card-icon{

    width:65px;

    height:65px;

    margin-bottom:22px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:16px;

    background:#eaf4ee;

    color:var(--primary);

    font-size:1.7rem;

}


.ra-target-card h4{

    margin-bottom:12px;

    font-size:1.3rem;

    font-weight:700;

}


.ra-target-card p{

    margin:0;

    color:#666;

    font-size:1rem;

    line-height:1.8;

}



/* ==========================================================
   JADWAL BELAJAR
========================================================== */

.ra-schedule-section{

    padding:100px 0;

    background:#fff;

}


.ra-schedule-info{

    display:flex;

    align-items:center;

    gap:20px;

    height:100%;

    padding:25px 30px;

    background:#f7faf8;

    border:1px solid #e5ece8;

    border-radius:16px;

}


.ra-schedule-icon{

    width:58px;

    height:58px;

    flex:0 0 58px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:15px;

    background:var(--primary);

    color:#fff;

    font-size:1.5rem;

}


.ra-schedule-info span{

    display:block;

    margin-bottom:4px;

    color:#777;

    font-size:.72rem;

    font-weight:700;

    letter-spacing:1.5px;

}


.ra-schedule-info strong{

    color:#222;

    font-size:1.25rem;

}


.ra-daily-list{

    max-width:1000px;

    margin:20px auto 0;

}


.ra-daily-item{

    display:grid;

    grid-template-columns:55px 1fr;

    gap:20px;

    padding:25px 0;

    border-bottom:1px solid #e6ebe8;

}


.ra-daily-item:last-child{

    border-bottom:0;

}


.ra-daily-item > span{

    display:flex;

    align-items:center;

    justify-content:center;

    width:42px;

    height:42px;

    border-radius:50%;

    background:#eaf4ee;

    color:var(--primary);

    font-size:.85rem;

    font-weight:700;

}


.ra-daily-item h4{

    margin:0 0 7px;

    color:#222;

    font-size:1.15rem;

    font-weight:700;

}


.ra-daily-item p{

    margin:0;

    color:#666;

    font-size:1rem;

    line-height:1.7;

}



/* ==========================================================
   METODE PEMBELAJARAN
========================================================== */

.ra-method-section{

    padding:100px 0;

}


.ra-method-card{

    height:100%;

    padding:30px 22px;

    text-align:center;

    background:#fff;

    border:1px solid #e5ebe7;

    border-radius:18px;

    box-shadow:0 7px 22px rgba(0,0,0,.045);

    transition:.3s;

}


.ra-method-card:hover{

    transform:translateY(-7px);

    box-shadow:0 15px 30px rgba(0,0,0,.08);

}


.ra-method-icon{

    width:65px;

    height:65px;

    margin:0 auto 18px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:#eaf4ee;

    color:var(--primary);

    font-size:1.6rem;

}


.ra-method-card > span{

    display:block;

    margin-bottom:8px;

    color:#a4b2aa;

    font-size:.75rem;

    font-weight:700;

}


.ra-method-card h4{

    margin:0;

    color:#222;

    font-size:1.05rem;

    line-height:1.4;

    font-weight:700;

}



/* ==========================================================
   PENDAFTARAN
========================================================== */

.ra-registration-section{

    padding:100px 0;

    background:#fff;

}


.ra-registration-section > .container > .row{

    align-items:center;

}


.ra-registration-section h2{

    font-size:3rem;

}


.ra-registration-section > .container > .row > .col-lg-5 > p{

    max-width:520px;

    color:#666;

    font-size:1.1rem;

    line-height:1.8;

}


.ra-age-box{

    display:inline-flex;

    flex-direction:column;

    margin-top:20px;

    padding:20px 25px;

    border-left:4px solid var(--primary);

    background:#f7faf8;

}


.ra-age-box span{

    margin-bottom:5px;

    color:#777;

    font-size:.72rem;

    font-weight:700;

    letter-spacing:1.5px;

}


.ra-age-box strong{

    color:var(--primary);

    font-size:1.5rem;

}


.ra-requirements{

    padding:10px 0;

}


.ra-requirement-item{

    display:flex;

    align-items:center;

    gap:20px;

    padding:19px 0;

    border-bottom:1px solid #e6ebe8;

}


.ra-requirement-item:first-child{

    border-top:1px solid #e6ebe8;

}


.ra-requirement-item > span{

    display:flex;

    align-items:center;

    justify-content:center;

    width:38px;

    height:38px;

    flex:0 0 38px;

    border-radius:50%;

    background:#eaf4ee;

    color:var(--primary);

    font-size:.78rem;

    font-weight:700;

}


.ra-requirement-item p{

    margin:0;

    color:#444;

    font-size:1rem;

    line-height:1.6;

}



/* ==========================================================
   FASILITAS
========================================================== */

.ra-facility-section{

    padding:100px 0;

}


.ra-facility-card{

    height:100%;

    padding:35px 28px;

    text-align:center;

    background:#fff;

    border:1px solid #e5ebe7;

    border-radius:18px;

    box-shadow:0 8px 25px rgba(0,0,0,.05);

    transition:.3s;

}


.ra-facility-card:hover{

    transform:translateY(-7px);

    box-shadow:0 16px 35px rgba(0,0,0,.09);

}


.ra-facility-icon{

    width:70px;

    height:70px;

    margin:0 auto 20px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:16px;

    background:#eaf4ee;

    color:var(--primary);

    font-size:1.7rem;

}


.ra-facility-card h4{

    margin-bottom:10px;

    color:#222;

    font-size:1.2rem;

    font-weight:700;

}


.ra-facility-card p{

    margin:0;

    color:#666;

    font-size:1rem;

    line-height:1.75;

}



/* ==========================================================
   PENUTUP
========================================================== */

.ra-closing-section{

    padding:110px 0;

    background:

        linear-gradient(
            135deg,
            #17663b,
            #198754
        );

    color:#fff;

    text-align:center;

}


.ra-closing-content{

    max-width:850px;

    margin:auto;

}


.ra-closing-section .ra-section-label{

    color:#FFD45A;

}


.ra-closing-section h2{

    margin:0 0 25px;

    color:#fff;

    font-size:3.2rem;

    line-height:1.2;

    font-weight:700;

}


.ra-closing-section p{

    margin:0 auto;

    color:rgba(255,255,255,.92);

    font-size:1.1rem;

    line-height:1.9;

}

/* ==========================================================
   PAGE PROGRAM
   RTQ AL IMAM ADZ DZAHABIY
========================================================== */


/* ==========================================================
   DETAIL PROGRAM
========================================================== */

.program-detail-section{

    padding:90px 0 100px;

    background:#f7f9f8;

}


.program-detail-card{

    display:flex;

    gap:25px;

    height:100%;

    padding:35px;

    background:#fff;

    border:1px solid #e5ebe7;

    border-radius:20px;

    box-shadow:0 8px 25px rgba(0,0,0,.06);

    transition:.3s;

}


.program-detail-card:hover{

    transform:translateY(-7px);

    box-shadow:0 16px 35px rgba(0,0,0,.10);

}
========================================================== */

/* ==========================================================
   ICON PROGRAM
========================================================== */

.program-detail-icon{

    width:70px;

    height:70px;

    flex:0 0 70px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:16px;

    background:#eaf4ee;

    color:var(--primary);

    font-size:1.8rem;

}


/* ==========================================================
   ISI PROGRAM
========================================================== */

.program-detail-content{

    flex:1;

}


.program-level{

    display:block;

    margin-bottom:8px;

    color:var(--primary);

    font-size:.75rem;

    font-weight:700;

    letter-spacing:1.5px;

}


.program-detail-content h3{

    margin:0 0 5px;

    color:#222;

    font-size:1.7rem;

    font-weight:700;

}


.program-detail-content h5{

    margin-bottom:15px;

    color:#666;

    font-size:1rem;

    font-weight:500;

}


.program-detail-content p{

    margin-bottom:18px;

    color:#666;

    font-size:1rem;

    line-height:1.8;

}


/* ==========================================================
   LIST PROGRAM
========================================================== */

.program-detail-content ul{

    margin:0 0 22px;

    padding:0;

    list-style:none;

}


.program-detail-content li{

    display:flex;

    align-items:flex-start;

    gap:10px;

    margin-bottom:10px;

    color:#555;

    line-height:1.6;

}


.program-detail-content li i{

    margin-top:4px;

    color:var(--primary);

}


/* ==========================================================
   JENJANG PENDIDIKAN
========================================================== */

.program-path{

    padding:90px 0;

    background:#fff;

}


.program-path h2{

    margin-bottom:15px;

    color:#222;

    font-size:2.8rem;

    font-weight:700;

}


.program-path > .container > .text-center > p{

    color:#666;

    font-size:1.1rem;

    line-height:1.8;

}


/* ==========================================================
   PATH CARD
========================================================== */

.path-card{

    height:100%;

    padding:35px 25px;

    text-align:center;

    background:#fff;

    border:1px solid #e5ebe7;

    border-radius:18px;

    box-shadow:0 7px 22px rgba(0,0,0,.05);

    transition:.3s;

}


.path-card:hover{

    transform:translateY(-7px);

    box-shadow:0 15px 30px rgba(0,0,0,.09);

}


.path-card > span{

    display:block;

    margin-bottom:15px;

    color:#b0beb6;

    font-size:.8rem;

    font-weight:700;

    letter-spacing:1px;

}


.path-card > i{

    display:block;

    margin-bottom:18px;

    color:var(--primary);

    font-size:2.2rem;

}


.path-card h4{

    margin-bottom:8px;

    color:#222;

    font-size:1.25rem;

    font-weight:700;

}


.path-card p{

    margin:0;

    color:#666;

    line-height:1.7;

}


/* ==========================================================
   CTA PROGRAM
========================================================== */

.program-cta{

    padding:90px 0;

    background:
        linear-gradient(
            135deg,
            #17663b,
            #198754
        );

    color:#fff;

    text-align:center;

}


.program-cta h2{

    margin-bottom:15px;

    color:#fff;

    font-size:2.6rem;

    font-weight:700;

}


.program-cta p{

    max-width:750px;

    margin:0 auto 25px;

    color:rgba(255,255,255,.92);

    font-size:1.1rem;

    line-height:1.8;

}


.program-cta .btn{

    border-radius:30px;

    padding:12px 30px;

    font-weight:600;

}

/* =====================================
   JADWAL TAKLIM - BERANDA 
===================================== */

.taklim-section{

    padding:90px 0;

    background:#f7f9f8;

}

.taklim-section h2{

    margin-bottom:15px;

    color:#222;

    font-size:2.8rem;

    line-height:1.2;

    font-weight:700;

}

.taklim-section .section-subtitle {

    width: 100%;

    margin: 0 auto;

    color: #666;

    font-size: 1.1rem;

    line-height: 1.8;

    text-align: center;

}

.taklim-section .section-subtitle strong{

    color:var(--primary);

}


/* =====================================
   KARTU TAKLIM - BERANDA
===================================== */

.taklim-card {

    width: 100%;

    max-width: none;

    margin: 0;

    padding: 36px;

    background: #ffffff;

    border: 1px solid #e1e8e4;

    border-radius: 20px;

    box-shadow: 0 10px 30px rgba(0,0,0,.05);

}

.taklim-card:hover{

    transform:translateY(-6px);

    box-shadow:0 15px 32px rgba(0,0,0,.09);

}

.taklim-list {

    width: 100%;

    max-width: none;

}

/* =====================================
   HARI - BERANDA
===================================== */

.taklim-day{

    display:block;

    margin-bottom:15px;

    color:var(--primary);

    font-size:.85rem;

    font-weight:700;

    letter-spacing:1.5px;

    text-transform:uppercase;

}


/* =====================================
   ICON - BERANDA
===================================== */

.taklim-icon{

    width:50px;

    height:50px;

    margin-bottom:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:13px;

    background:#eaf4ee;

    color:var(--primary);

    font-size:1.3rem;

}


/* =====================================
   JUDUL KITAB - BERANDA
===================================== */

.taklim-card h4{

    margin:0 0 12px;

    color:#222;

    font-size:1.2rem;

    line-height:1.4;

    font-weight:700;

}


/* =====================================
   PEMATERI - BERANDA
===================================== */

.taklim-card p{

    margin:0;

    color:#666;

    font-size:.95rem;

    line-height:1.7;

}

.taklim-card p strong{

    color:#333;

}


/* =====================================
   WAKTU - BERANDA
===================================== */

.taklim-time{

    margin-top:18px !important;

    padding-top:13px;

    border-top:1px solid #e6ebe8;

    color:var(--primary) !important;

    font-size:.9rem !important;

    font-weight:600;

}


/* =====================================
   SABTU - BERANDA - JADWAL TAKLIM PAGE
===================================== */

.taklim-saturday{

    max-width:calc(33.333% - 16px);

    margin:24px auto 0;

}


/* =====================================
   TOMBOL - BERANDA - JADWAL TAKLIM PAGE
===================================== */

.taklim-more{

    margin-top:45px;

}

.taklim-more .btn{

    padding:11px 25px;

    border-radius:30px;

    font-weight:600;

}

/* ==========================================================
   PAGE JADWAL TAKLIM - JADWAL TAKLIM PAGE
========================================================== */

.taklim-page-section{

    padding:90px 0 110px;

    background:#f7f9f8;

}


.taklim-page-section h2{

    margin:0 0 15px;

    color:#222;

    font-size:2.8rem;

    line-height:1.2;

    font-weight:700;

}


.taklim-page-section .section-subtitle{

    max-width:760px;

    margin:0 auto;

    color:#666;

    font-size:1.1rem;

    line-height:1.8;

    text-align:center;

}


.taklim-page-section .section-subtitle strong{

    color:var(--primary);

}


/* ==========================================================
   PEMISAH HARI - JADWAL TAKLIM PAGE
========================================================== */

.taklim-day-section{

    margin-bottom:70px;

}


.taklim-day-section:last-child{

    margin-bottom:0;

}


.taklim-day-heading{

    display:flex;

    align-items:center;

    gap:18px;

    margin-bottom:25px;

}


.taklim-day-heading::after{

    content:"";

    flex:1;

    height:1px;

    background:#dce6e0;

}


.taklim-day-heading span{

    color:var(--primary);

    font-size:.9rem;

    font-weight:700;

    letter-spacing:2px;

}


/* ==========================================================
   CARD DETAIL - JADWAL TAKLIM PAGE
========================================================== */

.taklim-detail-card{

    display:flex;

    align-items:flex-start;

    gap:25px;

    height:100%;

    padding:30px;

    background:#fff;

    border:1px solid #e5ebe7;

    border-radius:18px;

    box-shadow:0 7px 22px rgba(0,0,0,.05);

    transition:
        transform .3s ease,
        box-shadow .3s ease;

}


.taklim-detail-card:hover{

    transform:translateY(-6px);

    box-shadow:0 15px 32px rgba(0,0,0,.09);

}


/* ==========================================================
   ICON - JADWAL TAKLIM PAGE
========================================================== */

.taklim-detail-icon{

    width:58px;

    height:58px;

    flex:0 0 58px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:15px;

    background:#eaf4ee;

    color:var(--primary);

    font-size:1.5rem;

}


/* ==========================================================
   CONTENT - JADWAL TAKLIM PAGE
========================================================== */

.taklim-detail-content{

    flex:1;

    min-width:0;

}


.taklim-detail-content h3{

    margin:0 0 16px;

    color:#222;

    font-size:1.35rem;

    line-height:1.4;

    font-weight:700;

}


.taklim-detail-content p{

    margin:0 0 14px;

    color:#666;

    font-size:1rem;

    line-height:1.75;

}


.taklim-detail-content p strong{

    color:#333;

}


/* ==========================================================
   WAKTU - JADWAL TAKLIM PAGE
========================================================== */

.taklim-detail-time{

    display:inline-flex;

    align-items:center;

    gap:8px;

    margin-top:5px;

    padding:9px 14px;

    background:#eaf4ee;

    border-radius:8px;

    color:var(--primary);

    font-size:.9rem;

    font-weight:600;

}


/* ==========================================================
   LINK LOKASI & LIVE STREAMING
========================================================== */

.taklim-links {

    display: flex;

    flex-wrap: wrap;

    align-items: center;

    gap: 10px;

    margin-top: 20px;

}


.taklim-live {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 7px;

    margin: 0;

    padding: 9px 14px;

    border: 1px solid #dce8e1;

    border-radius: 8px;

    background: #f7faf8;

    color: var(--primary);

    font-size: .88rem;

    font-weight: 600;

    line-height: 1.2;

    text-decoration: none;

    white-space: nowrap;

    transition:
        background .25s ease,
        border-color .25s ease,
        transform .25s ease;

}


.taklim-live:hover {

    background: #eaf4ee;

    border-color: #c9ddd1;

    color: var(--primary);

    text-decoration: none;

    transform: translateY(-2px);

}


.taklim-live i {

    font-size: 1rem;

}


/* ==========================================================
   MOBILE - JADWAL TAKLIM PAGE
========================================================== */

@media (max-width:767.98px){

    .taklim-page-section{

        padding:60px 20px 75px;

    }


    .taklim-page-section h2{

        font-size:2.2rem;

    }


    .taklim-page-section .section-subtitle{

        font-size:1rem;

    }


    .taklim-day-section{

        margin-bottom:50px;

    }


    .taklim-day-heading{

        gap:12px;

        margin-bottom:20px;

    }


    .taklim-day-heading span{

        font-size:.8rem;

        letter-spacing:1.5px;

    }


    .taklim-detail-card{

        display:block;

        padding:24px 20px;

        border-radius:15px;

    }


    .taklim-detail-icon{

        width:50px;

        height:50px;

        margin-bottom:18px;

        font-size:1.3rem;

    }


    .taklim-detail-content h3{

        font-size:1.2rem;

    }


    .taklim-detail-content p{

        font-size:.95rem;

        line-height:1.7;

    }

}
