/* =====================================================
 GLOBAL TYPOGRAPHY (ELSEVIER / SPRINGER STYLE)
===================================================== */

body {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1rem;
    line-height: 1.65;
    color: #222;
}

h1, .page_title {
    font-size: 1.75rem;
    line-height: 1.3;
    font-weight: 600;
}

h2 {
    font-size: 1.45rem;
    line-height: 1.35;
    font-weight: 600;
}

h3 {
    font-size: 1.25rem;
    line-height: 1.4;
    font-weight: 600;
}

h4 {
    font-size: 1.1rem;
    line-height: 1.45;
    font-weight: 600;
}

p, ul, ol {
    font-size: 1rem;
    line-height: 1.65;
}

/* =====================================================
 ARTICLE & ABSTRACT STYLING
===================================================== */

.obj_article_details p,
.obj_article_summary p {
    line-height: 1.7;
    margin-bottom: 1.05rem;
}

.obj_article_details .abstract {
    font-size: 0.98rem;
    line-height: 1.65;
    background: #fafafa;
    padding: 12px 15px;
    border-left: 3px solid #2a7db8;
}

/* =====================================================
 ARCHIVE PAGE CONSISTENCY
===================================================== */

.obj_issue_toc,
.obj_issue_summary,
.obj_issue_toc p,
.obj_issue_summary p {
    font-size: 1rem;
    line-height: 1.6;
}

.obj_issue_summary h2,
.obj_issue_summary h3 {
    font-size: 1.25rem;
    line-height: 1.4;
}

/* =====================================================
 SIDEBAR GAP FIX
===================================================== */

html body .pkp_structure_sidebar .pkp_block {
    padding-top: 0.6rem !important;
    padding-bottom: 0.6rem !important;
}

/* =====================================================
 REMOVE OJS LOGO / ATTRIBUTION
===================================================== */

.pkp_brand,
.pkp_brand_footer,
.pkp-attribution,
footer img[src*="ojs"],
footer img[alt*="OJS"] {
    display: none !important;
}

/* =====================================================
 FOOTER – CLEAN, ALIGNED, BALANCED
===================================================== */

.pkp_structure_footerWrapper {
    max-width: 1140px !important;
    margin: 0 auto !important;
    padding: 20px 15px !important;
}

.pkp_footer_content {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
}

.ijmcr-footer-left {
    width: 70%;
    font-size: 14px;
    line-height: 1.55;
}

.ijmcr-footer-right {
    width: 30%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 28px;
    row-gap: 6px;
    text-align: left;
}

.ijmcr-footer-right a {
    font-size: 14px;
    line-height: 1.55;
    white-space: nowrap;
    text-decoration: none;
}

.ijmcr-footer-right a:hover {
    text-decoration: underline;
}

/* =====================================================
 MOBILE FOOTER
===================================================== */

@media (max-width: 768px) {
    .pkp_footer_content {
        flex-direction: column;
        gap: 15px;
    }

    .ijmcr-footer-left,
    .ijmcr-footer-right {
        width: 100%;
    }

    .ijmcr-footer-right {
        grid-template-columns: 1fr;
    }
}

/* =========================================
 FIX: ONE LINK PER LINE IN FOOTER RIGHT
========================================= */

.ijmcr-footer-right {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 28px;
    row-gap: 8px;
}

.ijmcr-footer-right a {
    display: block !important;
    width: 100%;
    line-height: 1.55;
    white-space: nowrap;
}


/* =====================================================
 HEADER FIX – LOGO + JOURNAL NAME (Desktop & Mobile)
===================================================== */

/* Wrapper alignment */
.pkp_site_name_wrapper {
    display: flex !important;
    align-items: center !important;
    gap: 18px !important;
}

/* Desktop Journal Name */
.pkp_site_name a {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    white-space: normal !important;
    display: block !important;
}

/* Logo */
.pkp_site_name img {
    max-height: 85px !important;
    width: auto !important;
}

/* =====================================================
 MOBILE FIX
===================================================== */
@media (max-width: 768px) {

    /* Stack vertically */
    .pkp_site_name_wrapper {
        flex-direction: column !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 10px !important;
    }

    .pkp_site_name img {
        max-height: 70px !important;
        margin-bottom: 5px !important;
    }

    /* Journal title wrapping properly */
    .pkp_site_name a {
        font-size: 1.3rem !important;
        line-height: 1.35 !important;
        white-space: normal !important;
        max-width: 95% !important;
        text-align: center !important;
    }
}
