/* =============================================================
   Meridian Theme — Responsive Breakpoints
   OJS 3.3.0.7 Compatible — Novelty-Inspired
   ============================================================= */

/* ── Small Desktop / Large Tablet (max-width: 1024px) ── */
@media (max-width: 1024px) {
    :root{
        --gutter: var(--space-6);
    }

    .pkp_structure_content{
        padding:0 var(--gutter);
    }

    .pkp_footer_wrapper{
        grid-template-columns:1fr 1fr;
        gap:var(--space-8);
    }
}

/* ── Tablet Portrait (max-width: 768px) ── */
@media (max-width: 768px) {
    :root{
        --gutter: var(--space-5);
    }

    .pkp_head_wrapper{
        min-height:64px;
        padding:var(--space-3) var(--gutter);
    }

    .pkp_site_nav_toggle{
        display:flex;
        align-items:center;
        justify-content:center;
        order:-1;
        width:36px;
        height:36px;
        padding:var(--space-1);
    }

    .pkp_site_name a.is_text{
        font-size:var(--text-base);
    }

    .pkp_site_nav_menu{
        display:none;
        position:absolute;
        top:100%;
        left:0;
        right:0;
        background:var(--white);
        border-bottom:1px solid var(--color-border);
        box-shadow:var(--shadow-lg);
        padding:var(--space-4) var(--gutter);
        flex-direction:column;
        align-items:stretch;
        gap:var(--space-3);
        z-index:200;
    }

    .pkp_site_nav_menu.open{
        display:flex;
    }

    .pkp_navigation_primary{
        flex-direction:column;
        align-items:stretch;
        gap:0;
        width:100%;
    }

    .pkp_navigation_primary > li > a{
        padding:var(--space-3) var(--space-4);
        border-bottom:1px solid var(--color-border);
    }

    .pkp_navigation_primary > li:last-child > a{
        border-bottom:none;
    }

    .pkp_navigation_primary ul{
        position:static;
        box-shadow:none;
        border:none;
        border-radius:0;
        padding-left:var(--space-4);
        display:none;
        animation:none;
    }

    .pkp_navigation_primary li:hover > ul,
    .pkp_navigation_primary li.open > ul{
        display:block;
    }

    .pkp_navigation_primary ul li a{
        padding:var(--space-2) var(--space-4);
    }

    .pkp_navigation_user_wrapper{
        border-left:none;
        padding-left:0;
        margin-left:0;
        padding-top:var(--space-2);
        border-top:1px solid var(--color-border);
        width:100%;
    }

    .pkp_navigation_user{
        flex-wrap:wrap;
        gap:var(--space-1);
        width:100%;
    }

    .pkp_search_desktop input[type="text"],
    .pkp_search_desktop input[name="query"]{
        width:100%;
    }

    .pkp_structure_content{
        flex-direction:column;
    }

    .pkp_structure_main{
        width:100%;
        max-width:100% !important;
    }

    .pkp_structure_sidebar{
        width:100%;
        position:static;
    }

    .meridian-hero{
        padding:60px 0;
    }

    .hero-content{
        grid-template-columns:1fr;
        gap:var(--space-8);
        padding:0 var(--gutter);
    }

    .hero-text h1{
        font-size:var(--text-3xl);
    }

    .hero-text p{
        font-size:var(--text-base);
    }

    .current-issue-card{
        flex-direction:column;
        margin:-40px auto 40px;
        padding:var(--space-6);
    }

    .issue-cover img{
        width:160px;
    }

    .journal-content{
        grid-template-columns:1fr;
        padding:0 var(--gutter) var(--space-12);
    }

    .pkp_footer_wrapper{
        grid-template-columns:1fr;
        gap:var(--space-8);
    }

    .pkp_footer_content{
        padding:var(--space-8) 0;
    }

    .pkp_footer_wrapper{
        padding:var(--space-8) 0;
    }

    h1{ font-size:var(--text-3xl); }
    h2{ font-size:var(--text-2xl); }
    h3{ font-size:var(--text-xl); }

    .pkp_breadcrumbs{
        padding:var(--space-3) 0;
    }

    .issues_archive{
        grid-template-columns:repeat(auto-fill, minmax(160px, 1fr));
    }

    .page_article{
        padding:0;
    }

    .page_article h1{
        font-size:var(--text-2xl);
    }

    .article_galley_link{
        width:100%;
        justify-content:center;
    }

    .pkp_form{
        padding:var(--space-4);
    }

    .search_form{
        flex-direction:column;
        gap:var(--space-2);
    }

    .issues_archive{
        grid-template-columns:repeat(auto-fill, minmax(140px, 1fr));
    }
}

/* ── Phone (max-width: 480px) ── */
@media (max-width: 480px) {
    :root{
        --gutter: var(--space-4);
    }

    .meridian-hero{
        padding:40px 0;
    }

    .hero-text h1{
        font-size:var(--text-2xl);
    }

    .current-issue-card{
        padding:var(--space-4);
    }

    .issue-cover img{
        width:120px;
    }

    .issues_archive{
        grid-template-columns:1fr;
    }

    .article_summary{
        padding:var(--space-4);
    }

    .pkp_block{
        padding:var(--space-4);
    }

    .card,
    .sidebar-card{
        padding:var(--space-4);
    }

    .page_article h1{
        font-size:var(--text-xl);
    }
}