/* =========================================================
   HOME EXTRA V11
   - Jaringan layanan
   - Carousel Berita / Pengumuman
   ========================================================= */

.home-presence-panel{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:42px;
    align-items:center;
    padding:38px 42px;
    border:1px solid var(--line);
    border-radius:22px;
    background:
        radial-gradient(circle at 88% 16%, rgba(28,181,219,.10), transparent 28%),
        linear-gradient(135deg,#ffffff 0%,#f7faff 100%);
    overflow:hidden;
}

.home-presence-copy .eyebrow{
    color:var(--royal);
    margin-bottom:12px;
}

.home-presence-copy h2{
    font-size:clamp(1.45rem,2.2vw,1.95rem);
    max-width:18ch;
}

.home-presence-copy p{
    margin-top:12px;
    max-width:52ch;
    color:var(--ink-soft);
    font-size:.9rem;
    line-height:1.65;
}

.home-presence-link{
    display:inline-flex;
    margin-top:20px;
}

.home-presence-stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}

.home-presence-stat{
    min-height:148px;
    padding:20px 18px;
    border:1px solid #dbe4f4;
    border-radius:18px;
    background:rgba(255,255,255,.88);
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
}

.home-presence-icon{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    margin-bottom:auto;
    border-radius:12px;
    background:#edf4ff;
    color:var(--royal);
    font-size:.88rem;
}

.home-presence-stat strong{
    display:block;
    margin-top:18px;
    color:var(--royal);
    font-family:'Sora',sans-serif;
    font-size:1.75rem;
    line-height:1;
}

.home-presence-stat > span:last-child{
    margin-top:7px;
    color:var(--ink-soft);
    font-size:.78rem;
    font-weight:600;
}

/* =========================================================
   CAROUSEL INFORMASI TERBARU
   ========================================================= */

.latest-carousel{
    position:relative;
    padding:0 42px;
}

.latest-carousel-viewport{
    overflow-x:auto;
    overflow-y:hidden;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -ms-overflow-style:none;
    cursor:grab;
}

.latest-carousel-viewport::-webkit-scrollbar{
    display:none;
}

.latest-carousel-viewport.is-dragging{
    cursor:grabbing;
    scroll-behavior:auto;
    user-select:none;
}

.latest-carousel-track{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 32px) / 3);
    gap:16px;
    padding:2px 2px 10px;
}

.latest-carousel-card{
    scroll-snap-align:start;
    min-width:0;
    height:100%;
}

.latest-carousel-card .news-photo{
    height:150px;
}

.latest-carousel-card .news-body{
    padding:17px;
}

.latest-carousel-card .news-body h3{
    font-size:.94rem;
}

.latest-carousel-card .news-body p{
    font-size:.8rem;
    line-height:1.55;
}

.latest-carousel-arrow{
    position:absolute;
    top:50%;
    z-index:4;
    width:34px;
    height:34px;
    transform:translateY(-50%);
    display:grid;
    place-items:center;
    border:1px solid #cfdaf0;
    border-radius:50%;
    background:#fff;
    color:var(--royal);
    box-shadow:0 8px 20px rgba(28,50,92,.10);
    cursor:pointer;
    transition:background .2s ease,color .2s ease,border-color .2s ease,opacity .2s ease;
}

.latest-carousel-arrow:hover{
    background:var(--royal);
    border-color:var(--royal);
    color:#fff;
}

.latest-carousel-arrow:disabled{
    opacity:.32;
    cursor:default;
}

.latest-carousel-prev{left:0}
.latest-carousel-next{right:0}

/* Sedikit ruang agar tab terasa seperti blok konten yang utuh. */
.latest-tabs-content{
    min-height:310px;
}

@media(max-width:1100px){
    .home-presence-panel{
        grid-template-columns:1fr;
        gap:26px;
    }

    .home-presence-copy h2{
        max-width:28ch;
    }

    .latest-carousel-track{
        grid-auto-columns:calc((100% - 16px) / 2);
    }
}

@media(max-width:760px){
    .home-presence-panel{
        padding:28px 22px;
        border-radius:18px;
    }

    .home-presence-stats{
        grid-template-columns:1fr;
    }

    .home-presence-stat{
        min-height:112px;
    }

    .latest-carousel{
        padding:0;
    }

    .latest-carousel-track{
        grid-auto-columns:86%;
        gap:14px;
    }

    .latest-carousel-arrow{
        display:none;
    }

    .latest-carousel-card .news-photo{
        height:165px;
    }

    .latest-tabs-content{
        min-height:0;
    }
}

@media(prefers-reduced-motion:reduce){
    .latest-carousel-viewport{
        scroll-behavior:auto;
    }
}
