
/*
===================================================
  RECAP SECTION STYLES (FINAL & CORRECT VERSION)
===================================================
*/

.recap {
    padding: 30px 0;
    overflow: hidden;
}

.recap-pagination{
    gap: 18px;
    display: flex;
    justify-content: center;
}

.recap-pagination-mobile{
    gap: 18px;
    display: flex;
    justify-content: center;
}

/* Container utama slider perlu posisi relatif */
.recap-slider-desktop {
    position: relative;
    display: none;
}

.recap-slider-mobile {
    position: relative;
    display: flex;
}

/* Atur layout per slide (Mobile First) */
.recap .swiper-slide {
    display: flex;
    flex-direction: column;
}

.recap-image {
    width: 100%;
    margin-bottom: 20px;
   padding: 20px;

}
.recap-image img {
    width: 100%;
    /*width: 332px;*/
    height: 187px;
    display: block;
    object-fit: cover;
}

.recap-content {
    text-align: left;
    /* Beri padding bawah untuk memberi ruang bagi navigasi absolut */
    padding-bottom: 50px; 
    padding-left: 20px;
    padding-right: 20px;
}

/* ... (Gaya untuk .recap-label, h2, .recap-description tetap sama) ... */
.recap-label { 
    font-weight: 500; 
    margin-bottom: 10px; 
    font-size: 14px;
}
.recap-content h2 { font-size: 24px; font-weight: 500; margin-bottom: 15px; }


.recap-description { 
    line-height: 1.3; 
    margin-bottom: 25px; 
    font-size: 18px;
    font-weight: 400;
}

.read-more-btn {
    display: inline-block;
    padding: 15px 30px;
    border: 1px solid var(--text-dark);
    font-weight: 500;
    width: 100%;
    text-align: center;
    font-size: 18px;
}

/* === KUNCI UTAMA: POSITIONING NAVIGASI === */
.recap-nav {
    position: absolute;
    bottom: 5%; /* Letakkan di bagian paling bawah konten */
    left: 50%; /* Pusatkan secara horizontal */
    transform: translateX(-50%); /* Koreksi pemusatan horizontal */
    /*width: 100%;*/
    z-index: 10;
    gap:30px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Gaya untuk dots (lingkaran dengan border) */
.recap-pagination .swiper-pagination-bullet {
    width: 16px;
    height: 16px;
    margin: 0 6px;
    border-radius: 50%;
    border: 1.5px solid var(--text-dark);
    background-color: transparent;
    opacity: 1;
}

.recap-pagination .swiper-pagination-bullet-active {
    background-color: var(--text-dark);
}

.recap-pagination-mobile .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    margin: 0 6px;
    border-radius: 50%;
    border: 1.5px solid var(--text-dark);
    background-color: transparent;
    opacity: 1;
}

.recap-pagination-mobile .swiper-pagination-bullet-active {
    background-color: var(--text-dark);
}

.recap-nav button {
    /*font-size: 1.5rem;*/
    color: var(--text-dark);
    background: none; border: none; cursor: pointer;
    /*margin: 0 10px;*/
}

/*
====================================
  PENYESUAIAN UNTUK DESKTOP
====================================
*/
@media (min-width: 1024px) {
    .recap-image img {
        width: 100%;
        height: 100%;
        display: block;
        max-height: 520px;
        object-fit: cover;
    }

    .recap-slider-desktop {
        position: relative;
        display: flex;
    }

    .recap-slider-mobile {
        position: relative;
        display: none !important;
    }

    .recap {
        padding: 30px 0;
    }
    
    .recap .swiper-slide {
        flex-direction: row;
       /* gap: 30px;*/
        align-items: center;
    }

    .recap-content {
        flex: 1;
        margin-bottom: 0;
        padding-bottom: 0; /* Hapus padding bawah di desktop */
        padding: 20px;
        padding-bottom: 100px;
    }

    .recap-image {
        flex: 1;
        margin-bottom: 0;
        padding-bottom: 0; /* Hapus padding bawah di desktop */
        padding-top: 20px;
         padding-right: 0px;
          padding-bottom: 20px;
          padding-left: 0px;
        /*border-top: 1px solid black;
        border-bottom: 1px solid black;
        border-left: 1px solid black;*/
    }

    .recap-content {
        text-align: left;
        position: relative; /* Buat konten menjadi parent relatif */
    }
    .recap-content h2 { 
        font-size: 24px; 
        margin-bottom: 30px;
    }

    /* Pindahkan navigasi ke bawah konten teks di desktop */
    .recap-nav {
        /* Hapus positioning horizontal absolut */
        position: absolute; 
        transform: none;
        width: 100%;
        /* Posisikan rata kiri, di bawah alur dokumen normal */
        justify-content: flex-start;
        /*margin-top: 25px;*/ /* Jarak dari tombol READ MORE */
        /*width: auto;*/
        left: 20px;
        top: 77%;
        max-width: 420px;
    }

    .recap-description { 
        line-height: 1.5; 
        margin-bottom: 80px; 
        font-size: 18px;
        font-weight: 400;
    }
}