/**
 * NusantaraNetwork Responsive Styles
 * Memastikan tampilan optimal di semua perangkat
 * Update: Header banner selalu tampil di semua ukuran layar
 */

/* ===== TABLET LANDSCAPE (max-width: 1199px) ===== */
@media (max-width: 1199px) {
    .container {
        padding: 0 15px;
    }

    /* Header */
    .main-header .container {
        gap: 20px;
    }

    .header-banner {
        width: 100%;
        max-width: 600px;
    }

    /* Hero section */
    .hero-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .hero-large {
        grid-column: span 2;
    }

    /* Grid berita */
    .grid-2col {
        gap: 20px;
    }

    /* Insight grid */
    .insight-grid-3col {
        gap: 20px;
    }

    /* Single kolom */
    .kolom-layout-3col {
        gap: 30px;
    }
    .kolom-share {
        width: 70px;
    }
    .kolom-sidebar {
        width: 280px;
    }
}

/* ===== TABLET PORTRAIT (max-width: 991px) ===== */
@media (max-width: 991px) {
    /* Header */
    .top-bar .container {
        flex-direction: column;
        gap: 10px;
    }
    .top-bar-left {
        width: 100%;
        justify-content: space-between;
    }
    .top-bar-right {
        width: 100%;
        justify-content: center;
    }

    /* Main header - susun vertikal */
    .main-header .container {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .logo-area {
        text-align: center;
        order: 1;
    }

    .header-actions {
        justify-content: center;
        order: 2;
    }

    /* Banner selalu tampil dan responsif */
    .header-banner {
        display: block;
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 70px;
        margin: 5px 0;
        order: 3;
    }
    .header-banner img {
        width: 100%;
        height: auto;
        max-height: 90px;
        object-fit: contain;
    }

    /* Navigasi desktop disembunyikan, tampilkan mobile toggle */
    .main-navigation .primary-menu {
        display: none;
    }
    .mobile-menu-toggle {
        display: flex;
    }

    /* Hero */
    .hero-grid {
        grid-template-columns: 1fr;
    }
    .hero-large {
        grid-column: auto;
    }
    .hero-large .hero-content h2 {
        font-size: 28px;
    }

    /* Grid berita */
    .grid-2col {
        grid-template-columns: 1fr;
    }

    /* Insight grid */
    .insight-grid-3col {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Global section */
    .global-layout {
        grid-template-columns: 1fr;
    }
    .global-featured-image {
        height: 250px;
    }

    /* Single kolom */
    .kolom-layout-3col {
        flex-direction: column;
    }
    .kolom-share {
        width: 100%;
        margin-bottom: 20px;
    }
    .share-wrapper.sticky {
        position: static;
    }
    .share-wrapper {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
    }
    .share-wrapper h4 {
        width: 100%;
        margin-bottom: 10px;
    }
    .share-wrapper a {
        flex: 1;
        min-width: 80px;
        margin-bottom: 0;
    }
    .kolom-sidebar {
        width: 100%;
        margin-top: 40px;
    }
    .sidebar-wrapper.sticky {
        position: static;
    }

    /* Footer */
    .footer-widgets {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }
}

/* ===== MOBILE LANDSCAPE (max-width: 767px) ===== */
@media (max-width: 767px) {
    /* Header */
    .top-bar-left {
        flex-direction: column;
        align-items: center;
        gap: 5px;
    }
    .breaking-news {
        width: 100%;
        justify-content: center;
    }
    .breaking-ticker {
        max-width: 250px;
    }

    .main-header {
        padding: 10px 0;
    }
    .logo-area .site-title {
        font-size: 20px;
    }
    .custom-logo {
        max-height: 40px;
    }
    .header-actions {
        gap: 5px;
    }

    /* Banner ukuran mobile */
    .header-banner {
        min-height: 60px;
    }
    .header-banner img {
        max-height: 60px;
    }

    /* Hero */
    .hero-slider {
        padding: 20px 0;
    }
    .hero-large .hero-content h2 {
        font-size: 22px;
    }
    .hero-small .hero-content h2 {
        font-size: 16px;
    }
    .hero-category {
        font-size: 10px;
        padding: 2px 8px;
    }

    /* Section headers */
    .section-title {
        font-size: 24px;
    }

    /* Grid artikel */
    .grid-article.featured .article-thumb {
        height: 150px;
    }
    .grid-article.featured .article-content h3 {
        font-size: 20px;
    }

    /* Insight grid */
    .insight-grid-3col {
        grid-template-columns: 1fr;
    }
    .insight-image {
        height: 180px;
    }

    /* Global section */
    .global-featured h3 {
        font-size: 20px;
    }
    .global-list-item a {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }

    /* Opinion quote */
    .opinion-quote {
        padding: 40px 0;
    }
    .quote-content blockquote {
        font-size: 24px;
    }

    /* Newsletter */
    .newsletter-section {
        padding: 40px 0;
    }
    .newsletter-form {
        flex-direction: column;
        gap: 15px;
    }
    .newsletter-form button {
        width: 100%;
    }

    /* Single kolom */
    .kolom-title {
        font-size: 32px;
    }
    .kolom-excerpt {
        font-size: 18px;
    }
    .kolom-author-box {
        flex-direction: column;
        text-align: center;
    }
    .author-avatar {
        margin: 0 auto;
    }
    .post-meta {
        flex-direction: column;
        gap: 5px;
        align-items: center;
    }
    .kolom-content {
        font-size: 16px;
    }
    .kolom-content h2 {
        font-size: 24px;
    }
    .kolom-content h3 {
        font-size: 20px;
    }

    /* Related articles */
    .related-grid {
        grid-template-columns: 1fr;
    }

    /* Author bio */
    .bio-header {
        flex-direction: column;
        text-align: center;
    }
    .bio-avatar {
        margin: 0 auto;
    }
    .bio-social {
        justify-content: center;
    }

    /* Sidebar widgets */
    .authors-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Footer */
    .footer-widgets {
        grid-template-columns: 1fr;
    }
}

/* ===== MOBILE PORTRAIT (max-width: 479px) ===== */
@media (max-width: 479px) {
    /* Top bar */
    .top-bar-left {
        font-size: 12px;
    }
    .breaking-ticker {
        max-width: 180px;
    }

    /* Header */
    .logo-area .site-title {
        font-size: 18px;
    }
    .search-toggle, .mobile-menu-toggle {
        width: 35px;
        height: 35px;
        font-size: 18px;
    }

    /* Banner kecil */
    .header-banner {
        min-height: 50px;
    }
    .header-banner img {
        max-height: 50px;
    }

    /* Hero */
    .hero-large .hero-content h2 {
        font-size: 18px;
    }
    .hero-small .hero-content h2 {
        font-size: 14px;
    }

    /* Grid artikel */
    .grid-article {
        flex-direction: column;
    }
    .article-thumb {
        width: 100%;
        height: 150px;
    }
    .featured .article-thumb {
        height: 180px;
    }

    /* Single kolom share buttons */
    .share-wrapper a {
        min-width: 50px;
        font-size: 11px;
        padding: 8px 5px;
    }

    /* Author grid */
    .authors-grid {
        grid-template-columns: 1fr;
    }

    /* Popular item */
    .popular-item {
        flex-wrap: wrap;
    }
    .popular-number {
        width: 20px;
        height: 20px;
        font-size: 10px;
    }

    /* Mega menu (jika diaktifkan) */
    .mega-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

/* ===== TINY SCREENS (max-width: 360px) ===== */
@media (max-width: 360px) {
    .breaking-ticker {
        max-width: 140px;
    }
    .hero-large .hero-content h2 {
        font-size: 16px;
    }
    .section-title {
        font-size: 20px;
    }
    .view-all {
        font-size: 13px;
    }
    .kolom-title {
        font-size: 28px;
    }
}