/* =====================================================================
   mobile-responsive.css
   Override responsif untuk tampilan HP/tablet kecil (beranda + header).
   Dimuat PALING AKHIR (setelah header.css, hero.css, program.css, dst)
   supaya menang atas aturan default tiap section.
   ===================================================================== */

html, body { max-width: 100%; overflow-x: hidden; }
img, svg, video { max-width: 100%; }

/* ---------------------------------------------------------------
   TABLET & HP  (<= 768px)
   --------------------------------------------------------------- */
@media (max-width: 768px) {

    /* ---------- HEADER: semua ikon harus muat, tidak terpotong ---------- */
    .gc-header-container {
        flex-wrap: nowrap !important;
        gap: 8px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        min-width: 0;
    }
    .gc-logo {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        gap: 8px !important;
    }
    .gc-logo-img { height: 34px !important; width: auto !important; flex: 0 0 auto; }
    .gc-logo-text {
        font-size: 14px !important;
        line-height: 1.2;
        min-width: 0;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .gc-nav-burger {
        flex: 0 0 auto !important;
        width: 38px !important;
        height: 38px !important;
        margin: 0 !important;
    }
    .gc-header-actions {
        flex: 0 0 auto !important;
        gap: 6px !important;
        margin-left: 0 !important;
    }
    .gc-notif-bell,
    .gc-dashboard-icon-btn {
        width: 36px !important;
        height: 36px !important;
        flex: 0 0 auto;
    }
    .gc-notif-bell svg,
    .gc-dashboard-icon-btn svg { width: 18px !important; height: 18px !important; }
    .gc-logout-btn,
    .gc-login-link {
        padding: 8px 12px !important;
        font-size: 12px !important;
        white-space: nowrap;
    }
    /* panel notifikasi tidak boleh keluar layar */
    .gc-notif-panel {
        width: min(340px, calc(100vw - 24px)) !important;
        max-width: calc(100vw - 24px) !important;
    }

    /* ---------- HERO ---------- */
    .gc-hero { padding-top: 24px !important; padding-bottom: 32px !important; }
    .gc-hero-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 24px !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    .gc-hero-text { max-width: 100% !important; text-align: center; }
    .gc-hero-kecil { font-size: 12px !important; padding: 6px 12px !important; }
    .gc-hero-title {
        font-size: clamp(24px, 7vw, 32px) !important;
        line-height: 1.2 !important;
        margin: 14px 0 10px !important;
    }
    .gc-hero-desc {
        font-size: 14px !important;
        line-height: 1.65 !important;
        margin-bottom: 18px !important;
    }
    .gc-hero-actions {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center;
        gap: 10px !important;
    }
    .gc-btn { padding: 11px 18px !important; font-size: 13px !important; }

    .gc-hero-visual { width: 100% !important; max-width: 420px; margin: 0 auto; }
    .gc-hero-visual-frame {
        width: 100% !important;
        aspect-ratio: 16 / 10 !important;
        max-height: 230px !important;
        height: auto !important;
        overflow: hidden;
    }
    .gc-hero-visual-frame img,
    .gc-hero-visual-frame svg {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
    }
    /* chip "Akreditasi" & jumlah mahasiswa: kecil, di DALAM frame (tidak menutupi foto) */
    .gc-hero-chip {
        padding: 7px 10px !important;
        gap: 8px !important;
        border-radius: 12px !important;
        max-width: 60% !important;
    }
    .gc-hero-chip-right { top: 8px !important; right: 8px !important; bottom: auto !important; left: auto !important; }
    .gc-hero-chip-left  { bottom: 8px !important; left: 8px !important; top: auto !important; right: auto !important; }
    .gc-hero-chip-text b    { font-size: 12px !important; }
    .gc-hero-chip-text span { font-size: 10px !important; }
    .gc-hero-chip > i { font-size: 14px !important; }
    .gc-hero-avatars span { width: 22px !important; height: 22px !important; }
    .gc-hero-avatars svg  { width: 11px !important; height: 11px !important; }

    /* ---------- JUDUL TIAP SECTION ---------- */
    .gc-section-heading { margin-bottom: 20px !important; padding: 0 4px; }
    .gc-section-heading h2 { font-size: clamp(20px, 5.6vw, 26px) !important; line-height: 1.25 !important; }
    .gc-section-heading p  { font-size: 13.5px !important; line-height: 1.6 !important; }

    .gc-about, .gc-program, .gc-digital, .gc-berita, .gc-stats, .gc-mitra, .banner-slider, .gc-cta {
        padding-top: 36px !important;
        padding-bottom: 36px !important;
    }
    .gc-about-container, .gc-program-container, .gc-digital-container, .gc-berita-container,
    .gc-stats-container, .gc-mitra-container, .banner-slider-container, .gc-cta-container,
    .gc-ann-container, .gc-footer-container {
        padding-left: 16px !important;
        padding-right: 16px !important;
        box-sizing: border-box;
        max-width: 100%;
    }

    /* ---------- PENGUMUMAN ---------- */
    .gc-ann-bar { gap: 8px !important; padding: 8px 10px !important; }
    .gc-ann-title { font-size: 13px !important; }
    .gc-ann-item { font-size: 12.5px !important; }

    /* ---------- ABOUT ---------- */
    .gc-about-container { display: flex !important; flex-direction: column !important; gap: 22px !important; }
    .gc-about-media { width: 100% !important; max-width: 100% !important; gap: 10px !important; }
    .gc-about-media-main { max-height: 240px; overflow: hidden; }
    .gc-about-media-main img,
    .gc-about-media-sub img { width: 100%; height: 100%; object-fit: cover; }
    .gc-about-media-sub { max-height: 120px; overflow: hidden; }
    .gc-about-badge-card { padding: 10px 12px !important; border-radius: 12px !important; }
    .gc-about-badge-card b { font-size: 13px !important; }
    .gc-about-badge-card span { font-size: 11px !important; }
    .gc-about-text h2 { font-size: clamp(20px, 5.6vw, 26px) !important; line-height: 1.25 !important; }
    .gc-about-text p, .gc-about-checklist li { font-size: 13.5px !important; line-height: 1.6 !important; }

    /* ---------- SLIDER SOROTAN ---------- */
    .slider-wrapper { border-radius: 14px !important; }
    .slide img { height: 200px !important; width: 100%; object-fit: cover; }
    .slide-caption { padding: 10px 12px !important; }
    .slide-caption h3 { font-size: 14px !important; }
    .slide-caption p  { font-size: 12px !important; }
    .slider-arrow { width: 30px !important; height: 30px !important; font-size: 12px !important; }

    /* ---------- KARTU PROGRAM: ringkas, gambar kecil di kiri ---------- */
    .gc-program-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; }
    .gc-program-card {
        display: flex !important;
        flex-direction: row !important;
        align-items: stretch;
        min-height: 0 !important;
        border-radius: 14px !important;
        overflow: hidden;
    }
    .gc-program-img {
        flex: 0 0 34% !important;
        width: 34% !important;
        height: auto !important;
        min-height: 120px;
        aspect-ratio: auto !important;
    }
    .gc-program-img img { width: 100% !important; height: 100% !important; object-fit: cover; }
    .gc-program-body { padding: 12px 14px !important; min-width: 0; }
    .gc-program-label { font-size: 10.5px !important; }
    .gc-program-body h3 { font-size: 15px !important; line-height: 1.3 !important; margin: 4px 0 !important; }
    .gc-program-body p {
        font-size: 12.5px !important;
        line-height: 1.5 !important;
        margin: 0 0 8px !important;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    .gc-program-link { font-size: 12.5px !important; }

    /* ---------- KARTU FITUR DIGITAL: ikon kiri, teks kanan ---------- */
    body .gc-digital-grid { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 12px !important; }
    .gc-digital-card {
        display: grid !important;
        grid-template-columns: 44px 1fr;
        column-gap: 12px;
        align-items: start;
        padding: 14px !important;
        border-radius: 14px !important;
        min-height: 0 !important;
    }
    .gc-digital-icon { grid-row: 1 / span 2; width: 44px !important; height: 44px !important; margin: 0 !important; }
    .gc-digital-card h3 { font-size: 15px !important; margin: 0 0 4px !important; }
    .gc-digital-card p  { font-size: 12.5px !important; line-height: 1.5 !important; margin: 0 !important; }
    .gc-digital-card h3, .gc-digital-card p { min-width: 0; overflow: visible !important; overflow-wrap: anywhere; -webkit-line-clamp: unset !important; max-height: none !important; }
    .gc-digital-card { overflow: visible !important; }

    /* ---------- KARTU BERITA: thumbnail kiri ---------- */
    .gc-berita-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; }
    .gc-berita-card {
        display: flex !important;
        flex-direction: row !important;
        border-radius: 14px !important;
        overflow: hidden;
        min-height: 0 !important;
    }
    .gc-berita-img {
        flex: 0 0 34% !important;
        width: 34% !important;
        height: auto !important;
        min-height: 100px;
        aspect-ratio: auto !important;
    }
    .gc-berita-img img { width: 100% !important; height: 100% !important; object-fit: cover; }
    .gc-berita-body { padding: 10px 12px !important; min-width: 0; }
    .gc-berita-body h3 {
        font-size: 14px !important;
        line-height: 1.35 !important;
        margin: 0 0 4px !important;
        display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    }
    .gc-berita-body p {
        font-size: 12px !important;
        line-height: 1.5 !important;
        margin: 0 !important;
        display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
    }

    /* ---------- STATISTIK: 2 x 2, kartu kecil ---------- */
    .gc-stats-container { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
    .gc-stats-card { padding: 14px 10px !important; border-radius: 14px !important; min-height: 0 !important; }
    .gc-stats-icon { width: 36px !important; height: 36px !important; }
    .gc-stats-icon svg { width: 18px !important; height: 18px !important; }
    .gc-stats-card b { font-size: 22px !important; }
    .gc-stats-label { font-size: 11.5px !important; }

    /* ---------- CTA ---------- */
    .gc-cta-container { padding: 28px 18px !important; border-radius: 16px !important; }
    .gc-cta h2 { font-size: clamp(20px, 5.6vw, 26px) !important; line-height: 1.25 !important; }
    .gc-cta p  { font-size: 13.5px !important; line-height: 1.6 !important; }
    .gc-cta-btn { padding: 11px 22px !important; font-size: 13px !important; }

    /* ---------- FOOTER ---------- */
    .gc-footer-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 20px 16px !important; }
    .gc-footer-about { grid-column: 1 / -1; }
    .gc-footer-bottom { flex-direction: column !important; gap: 8px !important; text-align: center; }
    .gc-footer-bottom-links { flex-wrap: wrap; justify-content: center; }
}

/* ---------------------------------------------------------------
   HP KECIL (<= 400px)
   --------------------------------------------------------------- */
@media (max-width: 400px) {
    .gc-logo-text { font-size: 12.5px !important; }
    .gc-logo-img { height: 30px !important; }
    .gc-logout-btn, .gc-login-link { padding: 7px 10px !important; font-size: 11.5px !important; }
    .gc-program-img, .gc-berita-img { flex-basis: 30% !important; width: 30% !important; }
    .gc-footer-grid { grid-template-columns: 1fr !important; }
}


/* =====================================================================
   HALAMAN LAIN (Profile, Akademik, Layanan, Kontak, Berita, Pendaftaran,
   Footer). Semua halaman ini sudah ikut memuat file ini lewat header,
   kecuali yang tidak memakai header (footer/*, contact) -- dimuat manual.
   ===================================================================== */
@media (max-width: 768px) {

    /* ---------- HERO HALAMAN (page-hero) ---------- */
    .gc-page-hero { padding: 28px 0 24px !important; }
    .gc-page-hero-container { padding-left: 16px !important; padding-right: 16px !important; }
    .gc-hero-crumbs { font-size: 12px !important; flex-wrap: wrap; row-gap: 2px; }
    .gc-page-hero-row { gap: 12px !important; align-items: center; }
    .gc-hero-icon { width: 44px !important; height: 44px !important; font-size: 18px !important; flex: 0 0 auto; }
    .gc-page-hero .gc-hero-title { font-size: clamp(20px, 6vw, 26px) !important; line-height: 1.25 !important; margin: 4px 0 !important; text-align: left; }
    .gc-page-hero .gc-hero-desc { font-size: 13px !important; line-height: 1.55 !important; text-align: left; }
    .gc-hero-eyebrow { font-size: 11px !important; }

    /* ---------- WADAH HALAMAN UMUM ---------- */
    .container, .main-container, .history-main, .senat-main, .struktur-main, .beasiswa-main,
    .prodi-container, .kontak-page .container, .layanan-page .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }
    .content-block, .intro-block, .info-block, .history-narrative, .senat-intro, .senat-wewenang,
    .np-custom-content {
        padding: 16px !important;
        border-radius: 14px !important;
    }
    .content-block h2, .info-block h2, .section-subtitle, .section-subtitle-dark { font-size: 18px !important; }
    .content-block p, .content-block li, .history-narrative p, .np-custom-content p { font-size: 14px !important; line-height: 1.65 !important; }
    .gc-rich img, .np-custom-content img, .content-block img { max-width: 100% !important; height: auto !important; }
    .gc-rich table, .np-custom-content table { display: block; overflow-x: auto; max-width: 100%; }
    .m-t-40 { margin-top: 24px !important; }
    .m-t-30 { margin-top: 20px !important; }

    /* ---------- LAYANAN (kartu layanan) ---------- */
    .layanan-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; }
    .layanan-card {
        display: grid !important;
        grid-template-columns: 48px 1fr;
        column-gap: 12px;
        padding: 14px !important;
        min-height: 0 !important;
        border-radius: 14px !important;
        text-align: left !important;
    }
    .layanan-icon { width: 48px !important; height: 48px !important; margin: 0 !important; grid-row: 1 / span 3; font-size: 20px !important; }
    .layanan-card h3 { font-size: 15px !important; margin: 0 0 4px !important; }
    .layanan-card p  { font-size: 12.5px !important; line-height: 1.5 !important; margin: 0 0 8px !important; }
    .btn-layanan { padding: 8px 14px !important; font-size: 12.5px !important; justify-self: start; }
    .layanan-section-title { font-size: 18px !important; }

    /* ---------- KONTAK ---------- */
    .kontak-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 16px !important; }
    .kontak-form-wrap, .kontak-info { padding: 16px !important; border-radius: 14px !important; }
    .kontak-info-item { gap: 12px !important; }
    .kontak-info-icon { width: 38px !important; height: 38px !important; flex: 0 0 auto; }
    .kontak-info-text { font-size: 13px !important; min-width: 0; word-break: break-word; }
    .kontak-map, .kontak-map iframe { height: 220px !important; width: 100% !important; border-radius: 12px; }
    .kontak-submit-btn, .button-primary { width: 100%; }
    /* contact.blade.php (versi lama) */
    .contact-intro { text-align: left; }
    .contact-visual-img { max-height: 200px; object-fit: cover; }

    /* ---------- AKADEMIK / PRODI ---------- */
    .fakultas-grid, .prodi-grid, .list-columns { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; }
    .fakultas-card, .prodi-card, .prodi-box, .wide-card { padding: 14px !important; border-radius: 14px !important; min-height: 0 !important; }
    .prodi-icon { width: 40px !important; height: 40px !important; font-size: 16px !important; }
    .prodi-card h3, .fakultas-card h3 { font-size: 15px !important; }
    .prodi-card p, .fakultas-card p { font-size: 12.5px !important; line-height: 1.5 !important; }
    .section-head { margin-bottom: 16px !important; }
    .section-head h2 { font-size: clamp(19px, 5.4vw, 24px) !important; }
    .section-sub, .section-eyebrow { font-size: 12.5px !important; }
    .cta-banner { padding: 20px 16px !important; flex-direction: column !important; text-align: center; gap: 12px !important; }

    /* ---------- PIMPINAN ---------- */
    .wr-grid, .dekan-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
    .rektor-card { flex-direction: column !important; text-align: center; padding: 16px !important; gap: 12px !important; }
    .rektor-photo { width: 120px !important; height: 120px !important; margin: 0 auto; }
    .wr-card, .dekan-card { padding: 12px 8px !important; border-radius: 14px !important; }
    .wr-photo, .dekan-photo { width: 80px !important; height: 80px !important; margin: 0 auto 8px !important; }
    .wr-role, .dekan-role, .rektor-label, .wr-label { font-size: 11px !important; }
    .wr-card h3, .dekan-card h3, .wr-card b, .dekan-card b { font-size: 13px !important; }
    .pimpinan-table-wrapper { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .pimpinan-table { min-width: 460px; font-size: 12.5px !important; }
    /* modal pejabat */
    .pejabat-modal { width: calc(100vw - 24px) !important; max-width: 100% !important; max-height: 88vh; overflow-y: auto; }
    .pejabat-modal-photo { width: 96px !important; height: 96px !important; }
    .pejabat-modal-table { display: block; overflow-x: auto; }

    /* ---------- PROFILE: logo, hymne, struktur, sejarah ---------- */
    .logo-showcase-grid, .filosofi-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; }
    .logo-showcase-card { padding: 16px !important; }
    .logo-showcase-card img { max-height: 160px; width: auto; max-width: 100%; }
    .filosofi-card { padding: 14px !important; }
    .download-buttons { display: flex !important; flex-direction: column !important; gap: 8px !important; }
    .btn-download { width: 100%; justify-content: center; text-align: center; }
    .hymne-player-card { padding: 14px !important; }
    .hymne-audio, .hymne-audio audio { width: 100% !important; }
    .lirik-card { padding: 14px !important; }
    .lirik-bait { font-size: 14px !important; line-height: 1.7 !important; }
    .struktur-main { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .struktur-main img { max-width: none; min-width: 640px; }

    /* ---------- BEASISWA ---------- */
    .beasiswa-grid-full, .poster-gallery-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; }
    .scholarship-item { padding: 14px !important; border-radius: 14px !important; }
    .scholarship-poster { max-height: 220px; overflow: hidden; border-radius: 12px; }
    .scholarship-poster img { width: 100%; height: 100%; object-fit: cover; }
    .beasiswa-aksi-group { flex-direction: column !important; gap: 8px !important; }
    .beasiswa-aksi-group > *, .beasiswa-cta-btn, .btn-unduh-poster, .btn-link-sumber { width: 100%; justify-content: center; text-align: center; }
    .badge-deadline, .badge-kuota, .badge { font-size: 11px !important; }

    /* ---------- BERITA (index & detail) ---------- */
    .gc-berita-index, .gc-berita-detail { padding-top: 20px !important; padding-bottom: 28px !important; }
    .gc-berita-detail-container { padding-left: 16px !important; padding-right: 16px !important; max-width: 100% !important; }
    .gc-berita-detail-img img { width: 100%; max-height: 220px; object-fit: cover; border-radius: 12px; }
    .gc-berita-detail-meta { flex-wrap: wrap; gap: 6px 10px !important; font-size: 12px !important; }
    .gc-berita-detail-body { font-size: 14.5px !important; line-height: 1.75 !important; }
    .gc-berita-detail-share { flex-wrap: wrap; gap: 8px !important; }
    .gc-share-btn { padding: 8px 12px !important; font-size: 12px !important; }
    .gc-berita-lainnya-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 10px !important; }
    .gc-berita-lainnya-card { display: flex !important; flex-direction: row !important; border-radius: 12px !important; overflow: hidden; }
    .gc-berita-lainnya-img { flex: 0 0 34% !important; width: 34% !important; height: auto !important; min-height: 90px; }
    .gc-berita-lainnya-img img { width: 100%; height: 100%; object-fit: cover; }
    .gc-berita-lainnya-body { padding: 10px 12px !important; min-width: 0; }
    .gc-berita-pager { flex-wrap: wrap; justify-content: center; gap: 6px !important; }

    /* ---------- LAYANAN-DETAIL (SIAKAD, E-Library, Ajukan Dokumen) ---------- */
    .detail-page, .elibrary-detail-page, .narrow-detail-page { padding: 16px !important; }
    .detail-hero { padding: 18px 16px !important; border-radius: 14px !important; }
    .detail-grid, .detail-form-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; }
    .detail-box, .detail-mini-card { padding: 14px !important; border-radius: 14px !important; }
    .form-field-full { grid-column: auto !important; }
    .search-form-inline { flex-direction: column !important; gap: 8px !important; }
    .search-form-inline > * { width: 100% !important; }
    .btn-detail-submit { width: 100%; }
    .detail-box table, .paket-list { display: block; overflow-x: auto; max-width: 100%; }

    /* ---------- PENDAFTARAN (wizard 4 langkah) ---------- */
    .wizard-container { padding: 16px 12px !important; max-width: 100% !important; box-sizing: border-box; }
    .wizard-header h1, .wizard-header h2 { font-size: 20px !important; }
    .wizard-header p { font-size: 13px !important; }
    .stepper { gap: 0 !important; padding: 0 !important; justify-content: space-between; }
    .step-circle { width: 30px !important; height: 30px !important; font-size: 13px !important; }
    .step-label { font-size: 10px !important; text-align: center; max-width: 64px; line-height: 1.2; }
    .step-line { min-width: 10px !important; margin-left: 2px !important; margin-right: 2px !important; }
    .form-card { padding: 18px 14px !important; border-radius: 14px !important; }
    .form-title { font-size: 17px !important; }
    .form-row { display: flex !important; flex-direction: column !important; gap: 0 !important; }
    .form-row > .half, .form-row > .quarter, .form-row > .full, .form-row > .form-group { width: 100% !important; flex: 1 1 auto !important; max-width: 100% !important; }
    .form-group input, .form-group select, .form-group textarea { font-size: 16px !important; } /* cegah auto-zoom iOS */
    .prodi-level-grid, .prodi-grid, .upload-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 10px !important; }
    .form-actions { display: flex !important; flex-direction: column-reverse !important; gap: 8px !important; }
    .form-actions .btn, .form-actions button, .form-actions a { width: 100% !important; text-align: center; justify-content: center; }
    .upload-info, .upload-name { min-width: 0; word-break: break-word; }

    /* ---------- FOOTER PAGES: FAQ, Kalender, Karir, Kerja Sama, Bantuan, PMB, Brosur, Legal ---------- */
    .gc-faq, .gc-calendar, .gc-karir, .gc-karir-detail, .gc-kerjasama, .gc-help, .gc-pmb, .gc-brosur,
    .gc-legal, .gc-bantuan-detail {
        padding-top: 24px !important;
        padding-bottom: 32px !important;
    }
    .gc-faq-container, .gc-calendar-container, .gc-karir-container, .gc-karir-detail-container,
    .gc-kerjasama-container, .gc-help-container, .gc-pmb-container, .gc-brosur-container,
    .gc-legal-container, .gc-bantuan-detail-container {
        padding-left: 16px !important;
        padding-right: 16px !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }
    .gc-page-title { font-size: clamp(20px, 6vw, 26px) !important; line-height: 1.25 !important; }
    .gc-faq-tabs, .gc-calendar-tabs { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto; gap: 8px !important; padding-bottom: 6px; -webkit-overflow-scrolling: touch; }
    .gc-faq-tab, .gc-calendar-tab { flex: 0 0 auto; padding: 8px 14px !important; font-size: 12.5px !important; white-space: nowrap; }
    .gc-faq-question { font-size: 14px !important; padding: 12px 14px !important; }
    .gc-faq-answer { font-size: 13.5px !important; padding: 0 14px 12px !important; }
    .gc-calendar-bar { flex-direction: column !important; align-items: stretch !important; gap: 8px !important; }
    .gc-timeline-card { padding: 12px 14px !important; border-radius: 14px !important; }
    .gc-timeline-date { font-size: 12px !important; }
    .gc-timeline-title, .gc-timeline-event { font-size: 13.5px !important; }

    .gc-karir-item { flex-direction: column !important; align-items: flex-start !important; gap: 10px !important; padding: 14px !important; }
    .gc-karir-item .gc-karir-btn, .gc-karir-detail-btn, .gc-karir-cta-btn, .gc-karir-btn { width: 100%; text-align: center; justify-content: center; }
    .gc-karir-why { display: grid !important; grid-template-columns: 1fr !important; gap: 10px !important; }
    .gc-karir-detail-header { padding: 16px !important; }

    .gc-help-grid, .gc-brosur-grid, .gc-kerjasama-grid, .gc-pmb-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; }
    .gc-help-card, .gc-brosur-card, .gc-kerjasama-card, .gc-pmb-box { padding: 14px !important; border-radius: 14px !important; min-height: 0 !important; }
    .gc-help-search { width: 100% !important; }
    .gc-help-cta, .gc-pmb-cta, .gc-karir-cta, .gc-karir-detail-cta { padding: 18px 14px !important; flex-direction: column !important; text-align: center; gap: 10px !important; }
    .gc-help-cta-btn, .gc-pmb-btn-gold, .gc-pmb-btn-outline, .gc-kerjasama-submit-btn { width: 100%; text-align: center; justify-content: center; }
    .gc-pmb-cta-actions { flex-direction: column !important; width: 100%; gap: 8px !important; }
    .gc-pmb-step, .gc-kerjasama-step { gap: 10px !important; }
    .gc-pmb-step-number, .gc-kerjasama-step-number { width: 32px !important; height: 32px !important; flex: 0 0 auto; font-size: 13px !important; }
    .gc-kerjasama-form-row { display: flex !important; flex-direction: column !important; gap: 0 !important; }
    .gc-kerjasama-form input, .gc-kerjasama-form select, .gc-kerjasama-form textarea { font-size: 16px !important; width: 100% !important; box-sizing: border-box; }
    .gc-kerjasama-cek-status-item { flex-direction: column !important; align-items: flex-start !important; gap: 6px !important; }
    .gc-help-modal { width: calc(100vw - 24px) !important; max-width: 100% !important; max-height: 86vh; overflow-y: auto; }
    .gc-brosur-cover { max-height: 180px; overflow: hidden; }
    .gc-brosur-cover img { width: 100%; height: 100%; object-fit: cover; }
    .gc-legal-content, .gc-bantuan-detail-content { font-size: 14px !important; line-height: 1.7 !important; }
    .gc-karir-breadcrumb, .gc-bantuan-breadcrumb { font-size: 12px !important; flex-wrap: wrap; }
}
