/*==========================================================
 JGES FOOTER
==========================================================*/

/* ==========================================
   FULL WIDTH FOOTER
========================================== */

.pkp_structure_footer_wrapper{
    width:100%;
    max-width:100%;
    margin:0;
    padding:0;
    background:#071d36;
    border:0;
}

.pkp_structure_footer{
    width:100%;
    max-width:100%;
    margin:0;
    padding:0;
    background:#071d36;
}

.ijtl-footer-content{
    width:100%;
    max-width:100%;
    margin:0;
    padding:70px 60px 25px;
    background:linear-gradient(135deg,#071d36,#103b63);
}

.ijtl-footer-content::before{
    content:"";
    position:absolute;
    inset:0;
    background:
    radial-gradient(circle at top right,
    rgba(63,169,245,.08),
    transparent 45%),
    radial-gradient(circle at bottom left,
    rgba(214,166,74,.08),
    transparent 45%);
    pointer-events:none;
}

.ijtl-footer-inner{
    position:relative;
    z-index:2;
    max-width:1350px;
    margin:auto;
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1.3fr;
    gap:55px;
}

.ijtl-footer-col{
    min-width:0;
}

/*==================================================
 Brand
==================================================*/

.ijtl-footer-brand{
    padding-right:20px;
}

.ijtl-footer-logo{
    margin-bottom:20px;
}

.ijtl-footer-eyebrow{
    display:block;
    color:#7ec8ff;
    font-size:13px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-bottom:8px;
}

.ijtl-footer-title{
    display:block;
    font-family:Georgia,"Times New Roman",serif;
    font-size:28px;
    line-height:1.35;
    font-weight:700;
    color:#ffffff;
}

.ijtl-footer-tagline{
    margin:22px 0 0;
    color:#bfd3e5;
    line-height:1.8;
    font-size:15px;
}

.ijtl-footer-social{
    list-style:none;
    padding:0;
    margin:25px 0 0;
}

/*==================================================
 Headings
==================================================*/

.ijtl-footer-heading{
    color:#ffffff;
    font-size:18px;
    font-weight:700;
    margin:0 0 22px;
    padding-bottom:14px;
    position:relative;
}

.ijtl-footer-heading:after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:48px;
    height:3px;
    background:#d6a64a;
    border-radius:20px;
}

/*==================================================
 Lists
==================================================*/

.ijtl-footer-list{
    list-style:none;
    margin:0;
    padding:0;
}

.ijtl-footer-list li{
    margin-bottom:14px;
}

.ijtl-footer-list a{
    color:#dbeaf5;
    text-decoration:none;
    transition:.3s;
    display:inline-block;
    font-size:15px;
}

.ijtl-footer-list a:hover{
    color:#7ec8ff;
    transform:translateX(6px);
}

/*==================================================
 Contact
==================================================*/

.ijtl-footer-contact-list{
    list-style:none;
    padding:0;
    margin:0;
}

.ijtl-footer-contact-list li{
    margin-bottom:15px;
    color:#dbeaf5;
    line-height:1.8;
    font-size:15px;
}

.ijtl-footer-contact-list a{
    color:#7ec8ff;
    text-decoration:none;
}

.ijtl-footer-contact-list a:hover{
    color:#d6a64a;
}

/*==================================================
 Bottom
==================================================*/

.ijtl-footer-bottom{
    position:relative;
    z-index:2;
    max-width:1350px;
    margin:55px auto 0;
    padding-top:24px;
    border-top:1px solid rgba(255,255,255,.10);

    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:18px;
}

.ijtl-footer-copyright{
    color:#bfd3e5;
    font-size:14px;
}

.ijtl-footer-issn{
    color:#9db9cf;
    font-size:14px;
}

/*==================================================
 Hover Effects
==================================================*/

.ijtl-footer-col{
    transition:.35s;
}

.ijtl-footer-col:hover{
    transform:translateY(-4px);
}

/*==================================================
 Tablet
==================================================*/

@media(max-width:1100px){

.ijtl-footer-inner{
    grid-template-columns:1fr 1fr;
    gap:40px;
}

}

/*==================================================
 Mobile
==================================================*/

@media(max-width:768px){

.ijtl-footer-content{
    padding:55px 22px 25px;
}

.ijtl-footer-inner{
    grid-template-columns:1fr;
    gap:35px;
}

.ijtl-footer-title{
    font-size:24px;
}

.ijtl-footer-bottom{
    margin-top:40px;
    flex-direction:column;
    text-align:center;
}

}

@media(max-width:480px){

.ijtl-footer-content{
    padding:45px 18px 22px;
}

.ijtl-footer-title{
    font-size:21px;
}

.ijtl-footer-heading{
    font-size:17px;
}

.ijtl-footer-list a,
.ijtl-footer-contact-list li{
    font-size:14px;
}

}


/*==========================================
JGES SIDEBAR
==========================================*/

.pkp_structure_sidebar.left{
    padding:0 18px;
}

/* Card */

.pkp_structure_sidebar .pkp_block{
    background:#fff;
    border:1px solid #e6edf5;
    border-radius:12px;
    margin-bottom:22px;
    overflow:hidden;
    box-shadow:0 6px 20px rgba(0,0,0,.05);
}

/* Heading */

.pkp_structure_sidebar .pkp_block .title{
    margin:0;
    padding:18px 20px;
    font-size:20px;
    font-family:Georgia,"Times New Roman",serif;
    font-weight:700;
    color:#0b2845;
    border-bottom:2px solid #edf3f9;
    position:relative;
}

.pkp_structure_sidebar .pkp_block .title:after{
    content:"";
    position:absolute;
    bottom:-2px;
    width:60px;
    height:3px;
    background:#2d7dd2;
    left:2px;
}

/* Content */

.pkp_structure_sidebar .pkp_block .content{
    padding:18px;
}

/* Lists */

.pkp_structure_sidebar ul{
    margin:0;
    padding:0;
    list-style:none;
}

.pkp_structure_sidebar li+li{
    margin-top:6px;
}

/* Links */

.pkp_structure_sidebar a{
    display:block;
    padding:10px 14px;
    color:#44586b;
    text-decoration:none;
    border-radius:8px;
    transition:.25s;
    font-size:14.5px;
}

.pkp_structure_sidebar a:hover{
    background:#f4f8fc;
    color:#0d4f78;
    padding-left:18px;
}

/* Feed Block */

.pkp_structure_sidebar .block_web_feed a{
    display:flex;
    justify-content:center;
    align-items:center;
    background:#fafcff;
    border:1px solid #e6edf5;
    padding:14px;
}

.pkp_structure_sidebar .block_web_feed a:hover{
    background:#f2f8fd;
}

.pkp_structure_sidebar .block_web_feed img{
    max-width:85px;
    height:auto;
}

/* Paragraph */

.pkp_structure_sidebar p{
    color:#5d6d7d;
    line-height:1.7;
}

/* Buttons */

.pkp_structure_sidebar button,
.pkp_structure_sidebar input[type=submit]{
    width:100%;
    border:none;
    border-radius:8px;
    padding:12px;
    background:#0d4f78;
    color:#fff;
    cursor:pointer;
    transition:.3s;
}

.pkp_structure_sidebar button:hover,
.pkp_structure_sidebar input[type=submit]:hover{
    background:#08395a;
}

/* Responsive */

@media(max-width:991px){

.pkp_structure_sidebar.left{
    padding:0;
    margin-top:20px;
}

}



/* ============================================================
   JGES CONTENT Home
   ============================================================ */

.jges-story,
.jges-story *{
    box-sizing:border-box;
}

.jges-story{
    background:#ffffff;
    color:#0b2845;
    font-family:Arial, Helvetica, sans-serif;
}

.jges-layout{
    max-width:1400px;
    margin:0 auto;
    padding:50px 32px 70px;
    display:grid;
    grid-template-columns:190px 1fr;
    gap:64px;
    align-items:start;
}

/* ============ STICKY INDEX RAIL ============ */

.jges-index{
    position:sticky;
    top:24px;
    padding-right:8px;
    border-right:1px solid #dce8f2;
}

.jges-coord{
    display:block;
    font-size:11px;
    font-weight:700;
    letter-spacing:2.5px;
    color:#7dd3fc;
    margin-bottom:18px;
}

.jges-index h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:26px;
    line-height:1.3;
    font-weight:700;
    color:#0b2845;
    margin:0 0 14px;
}

.jges-index-sub{
    font-size:13.5px;
    line-height:1.6;
    color:#2c4a68;
    margin:0 0 30px;
}

.jges-index-nav{
    display:flex;
    flex-direction:column;
}

.jges-index-nav a{
    display:flex;
    align-items:baseline;
    gap:10px;
    font-size:13.5px;
    font-weight:600;
    color:#2c4a68;
    text-decoration:none;
    padding:10px 0;
    border-top:1px solid #eef4f9;
    transition:color .15s ease, padding-left .15s ease;
}

.jges-index-nav a:first-child{
    border-top:none;
}

.jges-index-nav a span{
    font-family:Georgia,"Times New Roman",serif;
    font-size:12px;
    color:#7dd3fc;
    flex-shrink:0;
}

.jges-index-nav a:hover{
    color:#0b2845;
    padding-left:6px;
}

/* ============ MAIN CONTENT (dense) ============ */

.jges-main{
    min-width:0;
}

.jges-sec{
    padding:26px 0;
    border-bottom:1px solid #eef4f9;
}

.jges-sec:first-child{
    padding-top:0;
}

.jges-sec:last-child{
    border-bottom:none;
}

.jges-sec h2{
    font-family:Georgia,"Times New Roman",serif;
    font-size:21px;
    line-height:1.3;
    color:#0b2845;
    margin:0 0 12px;
}

.jges-sec p{
    font-size:14.5px;
    line-height:1.8;
    color:#2c4a68;
    margin:0 0 12px;
    /* dense multi-column body text fills the width instead of a
       single narrow line-length like the previous timeline design */
    column-count:2;
    column-gap:36px;
}

.jges-sec p:last-child{
    margin-bottom:0;
}

/* topics — dense multi-column list instead of a single stacked column */
.jges-topics{
    list-style:none;
    margin:16px 0 0;
    padding:0;
    column-count:2;
    column-gap:32px;
}

.jges-topics li{
    position:relative;
    padding:8px 0 8px 20px;
    font-size:13.5px;
    font-weight:600;
    color:#0b2845;
    border-bottom:1px solid #eef4f9;
    break-inside:avoid;
}

.jges-topics li::before{
    content:"\2192";
    position:absolute;
    left:0;
    color:#7dd3fc;
    font-weight:700;
}

.jges-cta{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:4px;
    font-size:14.5px;
    font-weight:700;
    color:#0b2845;
    text-decoration:none;
    padding-bottom:3px;
    border-bottom:2px solid #7dd3fc;
}

.jges-cta:hover{
    border-bottom-color:#0b2845;
}

/* ---------- closing ---------- */

.jges-sec-close{
    text-align:center;
    padding-top:40px;
}

.jges-close-words{
    font-family:Georgia,"Times New Roman",serif;
    font-size:24px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 20px;
}

.jges-close-words span{
    display:inline-block;
    margin:0 10px;
}

.jges-close-words span:not(:last-child)::after{
    content:"";
    display:inline-block;
    width:5px;
    height:5px;
    border-radius:50%;
    background:#7dd3fc;
    margin-left:20px;
    vertical-align:middle;
}

.jges-sec-close p:not(.jges-close-words){
    column-count:1;
    max-width:640px;
    margin:0 auto;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:1100px){
    .jges-layout{
        grid-template-columns:240px 1fr;
        gap:44px;
    }
}

@media (max-width:860px){
    .jges-layout{
        grid-template-columns:1fr;
        padding:36px 20px 50px;
    }

    .jges-index{
        position:static;
        border-right:none;
        border-bottom:1px solid #dce8f2;
        padding:0 0 26px;
        margin-bottom:26px;
    }

    .jges-index-nav{
        flex-direction:row;
        flex-wrap:wrap;
        gap:4px 18px;
    }

    .jges-index-nav a{
        border-top:none;
        padding:4px 0;
    }

    .jges-sec p,
    .jges-topics{
        column-count:1;
    }
}

@media (max-width:600px){
    .jges-index h1{
        font-size:21px;
    }

    .jges-sec h2{
        font-size:18px;
    }

    .jges-close-words{
        font-size:19px;
    }

    .jges-close-words span{
        margin:0 5px 8px;
    }
}


/* ============================================================
   JGES ABOUT PAGE — oversized watermark numerals per section.
   Scoped to .jges-about. Add to your universal CSS file.
   ONLY THREE COLORS: white #ffffff, navy #0b2845, cyan #7dd3fc
   (used at reduced opacity for the watermark numerals — same
   color family, not a new color). No boxed/filled backgrounds.
   ============================================================ */

.jges-about,
.jges-about *{
    box-sizing:border-box;
}

.jges-about{
    background:#ffffff;
    color:#0b2845;
    font-family:Arial, Helvetica, sans-serif;
    max-width:900px;
    margin:0 auto;
    padding:20px 32px 70px;
}

/* ============ INTRO ============ */

.jges-about-intro{
    padding-bottom:44px;
    margin-bottom:44px;
    border-bottom:1px solid #dce8f2;
}

.jges-about-eyebrow{
    display:block;
    font-size:12px;
    font-weight:700;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin-bottom:16px;
}

.jges-about-intro h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:30px;
    line-height:1.35;
    font-weight:700;
    color:#0b2845;
    margin:0 0 26px;
}

.jges-about-intro p{
    font-size:15.5px;
    line-height:1.85;
    color:#2c4a68;
    margin:0 0 18px;
}

.jges-about-intro p:last-child{
    margin-bottom:0;
}

/* ============ NUMBERED SECTIONS ============ */

.jges-about-sec{
    position:relative;
    padding:36px 0;
}

.jges-about-sec + .jges-about-sec{
    border-top:1px solid #dce8f2;
}

.jges-about-num{
    position:absolute;
    top:20px;
    right:0;
    font-family:Georgia,"Times New Roman",serif;
    font-size:130px;
    font-weight:700;
    line-height:1;
    color:rgba(11,40,69,.06);
    z-index:0;
    pointer-events:none;
    user-select:none;
}

.jges-about-sec-content{
    position:relative;
    z-index:1;
    max-width:620px;
}

.jges-about-sec h2{
    font-family:Georgia,"Times New Roman",serif;
    font-size:23px;
    color:#0b2845;
    margin:0 0 18px;
    padding-bottom:14px;
    border-bottom:2px solid #7dd3fc;
    display:inline-block;
}

.jges-about-sec p{
    font-size:15px;
    line-height:1.85;
    color:#2c4a68;
    margin:0 0 18px;
}

.jges-about-sec p:last-child{
    margin-bottom:0;
}

/* ---------- flowing topic strip (not a bulleted list, not chips) ---------- */

.jges-about-topics{
    line-height:2.4;
    font-size:14.5px;
}

.jges-about-topics span{
    font-weight:600;
    color:#0b2845;
}

.jges-about-topics span:not(:last-child)::after{
    content:"";
    display:inline-block;
    width:5px;
    height:5px;
    background:#7dd3fc;
    transform:rotate(45deg);
    margin:0 14px;
    vertical-align:middle;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:767px){
    .jges-about{
        padding:16px 20px 50px;
    }

    .jges-about-intro{
        padding-bottom:32px;
        margin-bottom:32px;
    }

    .jges-about-intro h1{
        font-size:23px;
        margin-bottom:20px;
    }

    .jges-about-num{
        font-size:70px;
        top:8px;
    }

    .jges-about-sec{
        padding:26px 0;
    }

    .jges-about-sec h2{
        font-size:19px;
    }

    .jges-about-sec-content{
        max-width:100%;
    }

    .jges-about-topics{
        line-height:2.1;
    }

    .jges-about-topics span:not(:last-child)::after{
        margin:0 10px;
    }
}

/* ============================================================
   JGES PEER REVIEW PROCESS — 
   ============================================================ */

.jges-review,
.jges-review *{
    box-sizing:border-box;
}

.jges-review{
    background:#ffffff;
    color:#0b2845;
    font-family:Arial, Helvetica, sans-serif;
    max-width:820px;
    margin:0 auto;
    padding:20px 32px 80px;
}

/* ============ INTRO ============ */

.jges-review-eyebrow{
    display:block;
    font-size:12px;
    font-weight:700;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin-bottom:16px;
}

.jges-review-intro h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:30px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 20px;
}

.jges-review-intro p{
    font-size:15.5px;
    line-height:1.85;
    color:#2c4a68;
    margin:0;
}

/* ============ STEPPER ============ */

.jges-stepper{
    display:flex;
    justify-content:space-between;
    margin:48px 0 60px;
    padding-top:2px;
    position:relative;
}

.jges-stepper::before{
    content:"";
    position:absolute;
    top:15px;
    left:15px;
    right:15px;
    height:1px;
    background:#dce8f2;
    z-index:0;
}

.jges-stepper a{
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
    font-size:11.5px;
    font-weight:700;
    color:#2c4a68;
    text-decoration:none;
    text-align:center;
    width:19%;
}

.jges-stepper-dot{
    width:30px;
    height:30px;
    border-radius:50%;
    background:#ffffff;
    border:1.5px solid #7dd3fc;
    color:#0b2845;
    font-family:Georgia,"Times New Roman",serif;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:13px;
    transition:background .2s ease, color .2s ease;
}

.jges-stepper a:hover .jges-stepper-dot{
    background:#0b2845;
    border-color:#0b2845;
    color:#7dd3fc;
}

/* ============ STEPS ============ */

.jges-step{
    position:relative;
    display:flex;
    gap:26px;
    padding:0 0 46px;
    margin-left:15px;
    border-left:1px solid #dce8f2;
}

.jges-step-last{
    padding-bottom:4px;
    border-left-color:transparent;
}

.jges-step-num{
    flex-shrink:0;
    width:52px;
    height:52px;
    margin-left:-27px;
    border-radius:50%;
    background:#ffffff;
    border:2px solid #0b2845;
    color:#0b2845;
    font-family:Georgia,"Times New Roman",serif;
    font-size:16px;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
}

.jges-step-body{
    flex:1;
    min-width:0;
    padding-top:10px;
}

.jges-step h2{
    font-family:Georgia,"Times New Roman",serif;
    font-size:21px;
    color:#0b2845;
    margin:0 0 14px;
}

.jges-step p{
    font-size:14.5px;
    line-height:1.8;
    color:#2c4a68;
    margin:0 0 14px;
}

.jges-step p:last-child{
    margin-bottom:0;
}

.jges-step-note{
    font-style:italic;
    color:#0b2845 !important;
    padding-left:14px;
    border-left:2px solid #7dd3fc;
}

/* ---------- checklist — square tick marks (distinct from the
   arrow/diamond styles used on the other two pages) ---------- */

.jges-checklist{
    list-style:none;
    margin:0 0 16px;
    padding:0;
}

.jges-checklist li{
    position:relative;
    padding:8px 0 8px 24px;
    font-size:14px;
    font-weight:600;
    color:#0b2845;
}

.jges-checklist li::before{
    content:"";
    position:absolute;
    left:0;
    top:14px;
    width:8px;
    height:8px;
    border:1.5px solid #7dd3fc;
}

/* ---------- editorial decision outcomes ---------- */

.jges-outcomes{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px 28px;
    margin-top:20px;
}

.jges-outcome{
    padding-top:12px;
    border-top:2px solid #0b2845;
}

.jges-outcome-label{
    display:block;
    font-family:Georgia,"Times New Roman",serif;
    font-size:15.5px;
    font-weight:700;
    color:#0b2845;
    margin-bottom:6px;
}

.jges-outcome p{
    font-size:13.5px;
    line-height:1.65;
    margin:0;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:700px){

    .jges-review{
        padding:16px 20px 60px;
    }

    .jges-review-intro h1{
        font-size:23px;
    }

    .jges-stepper{
        display:none;
    }

    .jges-step{
        gap:16px;
        margin-left:10px;
        padding-bottom:34px;
    }

    .jges-step-num{
        width:40px;
        height:40px;
        margin-left:-21px;
        font-size:13px;
    }

    .jges-step-body{
        padding-top:4px;
    }

    .jges-step h2{
        font-size:18px;
    }

    .jges-outcomes{
        grid-template-columns:1fr;
        gap:16px;
    }
}

/* ============================================================
   JGES PRIVACY STATEMENT — ledger/document-style layout.
   Scoped to .jges-privacy. Add to your universal CSS file.
   ONLY THREE COLORS: white #ffffff, navy #0b2845, cyan #7dd3fc.
   No boxed/filled backgrounds anywhere.
   ============================================================ */

.jges-privacy,
.jges-privacy *{
    box-sizing:border-box;
}

.jges-privacy{
    background:#ffffff;
    color:#0b2845;
    font-family:Arial, Helvetica, sans-serif;
    max-width:900px;
    margin:0 auto;
    padding:20px 32px 70px;
}

/* ============ HEAD ============ */

.jges-privacy-head{
    padding-bottom:36px;
    margin-bottom:10px;
    border-top:3px double #0b2845;
    border-bottom:1px solid #dce8f2;
    padding-top:26px;
}

.jges-privacy-eyebrow{
    display:block;
    font-size:12px;
    font-weight:700;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin-bottom:16px;
}

.jges-privacy-head h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:29px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 20px;
}

.jges-privacy-head p{
    font-size:15px;
    line-height:1.8;
    color:#2c4a68;
    margin:0;
    max-width:680px;
}

/* ============ LEDGER ============ */

.jges-privacy-ledger{
    display:flex;
    flex-direction:column;
}

.jges-privacy-row{
    display:grid;
    grid-template-columns:200px 1fr;
    gap:30px;
    padding:32px 0;
    border-bottom:1px solid #dce8f2;
}

.jges-privacy-label{
    font-family:Georgia,"Times New Roman",serif;
    font-size:16.5px;
    font-weight:700;
    color:#0b2845;
    line-height:1.4;
    padding-top:2px;
}

.jges-privacy-content p{
    font-size:14.5px;
    line-height:1.8;
    color:#2c4a68;
    margin:0 0 14px;
}

.jges-privacy-content p:last-child{
    margin-bottom:0;
}

/* ---------- dash-marker list (distinct from arrow/diamond/square
   styles used on the other JGES pages) ---------- */

.jges-dashlist{
    list-style:none;
    margin:0 0 14px;
    padding:0;
}

.jges-dashlist li{
    position:relative;
    padding:6px 0 6px 20px;
    font-size:14px;
    color:#0b2845;
    font-weight:600;
}

.jges-dashlist li::before{
    content:"\2014";
    position:absolute;
    left:0;
    color:#7dd3fc;
    font-weight:700;
}

/* ============ CONSENT LINE ============ */

.jges-privacy-consent{
    margin-top:36px;
    padding-top:26px;
    border-top:3px double #0b2845;
    font-size:14px;
    font-style:italic;
    line-height:1.75;
    color:#2c4a68;
    text-align:center;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:700px){

    .jges-privacy{
        padding:16px 20px 50px;
    }

    .jges-privacy-head{
        padding-top:20px;
        padding-bottom:26px;
    }

    .jges-privacy-head h1{
        font-size:22px;
    }

    .jges-privacy-row{
        grid-template-columns:1fr;
        gap:12px;
        padding:24px 0;
    }

    .jges-privacy-label{
        font-size:15px;
        padding-top:0;
    }

    .jges-privacy-content p{
        font-size:14px;
    }
}

/* ============================================================
   JGES SUBMISSION GUIDELINES — 
   ============================================================ */

.jges-guide,
.jges-guide *{
    box-sizing:border-box;
}

.jges-guide{
    background:#ffffff;
    color:#0b2845;
    font-family:Arial, Helvetica, sans-serif;
    max-width:820px;
    margin:0 auto;
    padding:20px 32px 80px;
}

/* ============ HEAD ============ */

.jges-guide-head{
    padding-bottom:36px;
    margin-bottom:8px;
    border-bottom:1px solid #dce8f2;
}

.jges-guide-eyebrow{
    display:block;
    font-size:12px;
    font-weight:700;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin-bottom:16px;
}

.pkp_structure_main .page h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:30px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 20px;
}

.jges-guide-head p{
    font-size:15.5px;
    line-height:1.85;
    color:#2c4a68;
    margin:0;
}

/* ============ SECTIONS ============ */

.jges-guide-sec{
    padding:30px 0;
    border-bottom:1px solid #dce8f2;
}

.jges-guide-sec-last{
    border-bottom:none;
}

.jges-guide-sec h2{
    display:flex;
    align-items:baseline;
    gap:10px;
    font-family:Georgia,"Times New Roman",serif;
    font-size:20px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 14px;
}

.jges-guide-no{
    font-family:"Courier New", monospace;
    font-size:15px;
    font-weight:700;
    color:#7dd3fc;
    flex-shrink:0;
}

.jges-guide-sec p{
    font-size:14.5px;
    line-height:1.8;
    color:#2c4a68;
    margin:0 0 14px;
}

.jges-guide-sec p:last-child{
    margin-bottom:0;
}

/* ---------- manuscript-type bracket tags ---------- */

.jges-tagrow{
    display:flex;
    flex-wrap:wrap;
    gap:10px 12px;
    margin-top:16px;
}

.jges-tagrow span{
    font-family:"Courier New", monospace;
    font-size:12.5px;
    font-weight:700;
    color:#0b2845;
    white-space:nowrap;
}

.jges-tagrow span::before{
    content:"[ ";
    color:#7dd3fc;
}

.jges-tagrow span::after{
    content:" ]";
    color:#7dd3fc;
}

/* ---------- numbered manual list (Manuscript Preparation /
   pre-submission checklist) — plain numerals, two columns,
   distinct from the arrow/diamond/square/dash styles used on
   the other JGES pages ---------- */

.jges-numlist{
    list-style:none;
    counter-reset:jges-num;
    margin:16px 0 0;
    padding:0;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 32px;
}

.jges-numlist li{
    counter-increment:jges-num;
    position:relative;
    padding:9px 0 9px 30px;
    font-size:13.5px;
    font-weight:600;
    color:#0b2845;
    border-top:1px solid #eef4f9;
}

.jges-numlist li::before{
    content:counter(jges-num, decimal-leading-zero);
    position:absolute;
    left:0;
    top:9px;
    font-family:"Courier New", monospace;
    font-size:12px;
    font-weight:700;
    color:#7dd3fc;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:700px){

    .jges-guide{
        padding:16px 20px 60px;
    }

    .jges-guide-head{
        padding-bottom:26px;
    }

    .pkp_structure_main .page h1{
        font-size:22px;
    }

    .jges-guide-sec{
        padding:24px 0;
    }

    .jges-guide-sec h2{
        font-size:17px;
    }

    .jges-numlist{
        grid-template-columns:1fr;
    }

    .jges-tagrow span{
        font-size:11.5px;
    }
}


/* ============================================================
   JGES ARTICLE PROCESSING CHARGE — fee showcase + Q&A layout.
   Scoped to .jges-apc. Add to your universal CSS file.
   ONLY THREE COLORS: white #ffffff, navy #0b2845, cyan #7dd3fc.
   No boxed/filled backgrounds anywhere.
   ============================================================ */

.jges-apc,
.jges-apc *{
    box-sizing:border-box;
}

.jges-apc{
    background:#ffffff;
    color:#0b2845;
    font-family:Arial, Helvetica, sans-serif;
    max-width:760px;
    margin:0 auto;
    padding:20px 32px 80px;
}

/* ============ HEAD ============ */

.jges-apc-eyebrow{
    display:block;
    font-size:12px;
    font-weight:700;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin-bottom:16px;
}

.jges-apc-head h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:29px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 20px;
}

.jges-apc-head p{
    font-size:15px;
    line-height:1.85;
    color:#2c4a68;
    margin:0;
}

/* ============ FEE SHOWCASE ============ */

.jges-apc-fee{
    text-align:center;
    margin:54px 0 26px;
    padding:40px 0;
    border-top:1px solid #0b2845;
    border-bottom:1px solid #0b2845;
}

.jges-apc-fee-amount{
    display:block;
    font-family:Georgia,"Times New Roman",serif;
    font-size:56px;
    font-weight:700;
    color:#0b2845;
    line-height:1;
}

.jges-apc-fee-label{
    display:block;
    margin-top:14px;
    font-size:12.5px;
    font-weight:700;
    letter-spacing:1.2px;
    text-transform:uppercase;
    color:#7dd3fc;
}

.jges-apc-note{
    font-size:14.5px;
    line-height:1.8;
    color:#2c4a68;
    text-align:center;
    max-width:600px;
    margin:0 auto 60px;
}

/* ============ Q&A SECTIONS ============ */

.jges-apc-qa{
    padding:28px 0;
    border-bottom:1px solid #dce8f2;
}

.jges-apc-qa h2{
    display:flex;
    align-items:baseline;
    gap:10px;
    font-family:Georgia,"Times New Roman",serif;
    font-size:19px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 14px;
}

.jges-apc-q{
    color:#7dd3fc;
    font-style:italic;
}

.jges-apc-qa p{
    font-size:14.5px;
    line-height:1.8;
    color:#2c4a68;
    margin:0 0 14px;
}

.jges-apc-qa p:last-child{
    margin-bottom:0;
}

/* ---------- "what's covered" list — plus-sign markers (sixth
   distinct bullet style across the JGES pages) ---------- */

.jges-apc-covers{
    list-style:none;
    margin:16px 0 0;
    padding:0;
    columns:2;
    column-gap:28px;
}

.jges-apc-covers li{
    position:relative;
    padding:7px 0 7px 22px;
    font-size:13.5px;
    font-weight:600;
    color:#0b2845;
    break-inside:avoid;
}

.jges-apc-covers li::before{
    content:"+";
    position:absolute;
    left:0;
    color:#7dd3fc;
    font-weight:700;
    font-size:15px;
}

/* ============ CLOSING ============ */

.jges-apc-closing{
    margin-top:40px;
    padding-top:28px;
    border-top:1px solid #dce8f2;
    font-size:14px;
    font-style:italic;
    line-height:1.8;
    color:#2c4a68;
    text-align:center;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:700px){

    .jges-apc{
        padding:16px 20px 60px;
    }

    .jges-apc-head h1{
        font-size:22px;
    }

    .jges-apc-fee{
        margin:38px 0 22px;
        padding:30px 0;
    }

    .jges-apc-fee-amount{
        font-size:38px;
    }

    .jges-apc-note{
        margin-bottom:44px;
    }

    .jges-apc-qa h2{
        font-size:16.5px;
    }

    .jges-apc-covers{
        columns:1;
    }
}


/* ============================================================
   JGES CONTACT PAGE — 
   ============================================================ */

.contact_section,
.contact_section *{
    box-sizing:border-box;
}

/* kill OJS core's own clearfix — not needed once this is a grid,
   and it was fighting with the layout below */
.page_contact .contact_section::before,
.page_contact .contact_section::after{
    content:none !important;
    display:none !important;
}

.contact_section{
    max-width:900px !important;
    margin:0 auto !important;
    padding:20px 32px 70px !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:40px !important;
    align-items:stretch !important;
    font-family:Arial, Helvetica, sans-serif;
}

/* reset whatever float/width core theme CSS put on these —
   that's what was breaking the alignment */
.contact_section .contact{
    float:none !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding-top:22px !important;
    border-top:2px solid #0b2845;
    display:flex !important;
    flex-direction:column !important;
}

.contact_section .contact.support{
    border-top-color:#7dd3fc;
}

.contact_section .contact h2{
    font-family:Georgia,"Times New Roman",serif;
    font-size:20px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 18px;
}

.contact_section .contact .name{
    font-size:15px;
    font-weight:600;
    color:#0b2845;
    margin-bottom:10px;
}

.contact_section .contact .email{
    margin-top:auto;
    padding-top:14px;
    font-size:14px;
}

.contact_section .contact .email a{
    color:#2c4a68;
    text-decoration:none;
    border-bottom:1px solid #7dd3fc;
    padding-bottom:1px;
    transition:color .2s ease, border-color .2s ease;
}

.contact_section .contact .email a:hover{
    color:#0b2845;
    border-color:#0b2845;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:700px){
    .contact_section{
        grid-template-columns:1fr;
        gap:34px;
        padding:16px 20px 50px;
    }

    .contact_section .contact h2{
        font-size:18px;
    }
}

/* ============================================================
   JGES CURRENT ISSUE / ARTICLE LIST — On home page
   ============================================================ */

.current_issue,
.current_issue *{
    box-sizing:border-box;
}

.current_issue{
    max-width:900px;
    margin:0 auto;
    padding:20px 32px 70px;
    font-family:Arial, Helvetica, sans-serif;
    color:#0b2845;
}

.current_issue > h2{
    font-family:Georgia,"Times New Roman",serif;
    font-size:13px;
    font-weight:700;
    letter-spacing:1.8px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin:0 0 12px;
}

.current_issue_title{
    font-family:Georgia,"Times New Roman",serif;
    font-size:24px;
    font-weight:700;
    color:#0b2845;
    margin-bottom:34px;
    padding-bottom:22px;
    border-bottom:1px solid #dce8f2;
}

/* ---------- issue heading (cover + description + published) ---------- */

.obj_issue_toc .heading{
    display:flex;
    gap:32px;
    align-items:flex-start;
    margin-bottom:50px;
}

.obj_issue_toc .cover{
    flex-shrink:0;
    width:180px;
}

.obj_issue_toc .cover img{
    display:block;
    width:100%;
    height:auto;
    border:1px solid #dce8f2;
}

.obj_issue_toc .description{
    flex:1;
    padding-top:4px;
}

.obj_issue_toc .description p{
    font-size:15px;
    line-height:1.75;
    color:#2c4a68;
    margin:0 0 20px;
}

.obj_issue_toc .published{
    font-size:13.5px;
    padding-top:14px;
    border-top:1px solid #dce8f2;
    display:inline-block;
}

.obj_issue_toc .published .label{
    font-weight:700;
    color:#0b2845;
    margin-right:6px;
}

.obj_issue_toc .published .value{
    color:#2c4a68;
}

/* ---------- articles section ---------- */

.obj_issue_toc .section > h3{
    font-family:Georgia,"Times New Roman",serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.5px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin:0 0 6px;
    padding-bottom:14px;
    border-bottom:1px solid #dce8f2;
}

.cmp_article_list.articles{
    list-style:none;
    margin:0;
    padding:0;
}

.cmp_article_list.articles > li{
    border-bottom:1px solid #dce8f2;
}

.cmp_article_list.articles > li:last-child{
    border-bottom:none;
}

.obj_article_summary{
    padding:20px 0;
}

.obj_article_summary .title{
    margin:0 0 8px;
    font-size:17px;
}

.obj_article_summary .title a{
    font-family:Georgia,"Times New Roman",serif;
    color:#0b2845;
    text-decoration:none;
    font-weight:700;
}

.obj_article_summary .title a:hover{
    color:#7dd3fc;
}

.obj_article_summary .meta{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

.obj_article_summary .authors{
    font-size:13.5px;
    color:#2c4a68;
}

.obj_article_summary .galleys_links{
    list-style:none;
    margin:14px 0 0;
    padding:0;
    display:flex;
    gap:16px;
    flex-wrap:wrap;
}

.obj_article_summary .galleys_links li a{
    font-size:12.5px;
    font-weight:700;
    color:#0b2845;
    text-decoration:none;
    border-bottom:1px solid #7dd3fc;
    padding-bottom:2px;
}

.obj_article_summary .galleys_links li a:hover{
    color:#7dd3fc;
}

/* ---------- view all issues ---------- */

.current_issue > .read_more{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-top:36px;
    font-size:14.5px;
    font-weight:700;
    color:#0b2845;
    text-decoration:none;
    padding-bottom:3px;
    border-bottom:2px solid #7dd3fc;
}

.current_issue > .read_more:hover{
    border-bottom-color:#0b2845;
}

.current_issue > .read_more::after{
    content:"\2192";
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:700px){
    .current_issue{
        padding:16px 20px 50px;
    }

    .current_issue_title{
        font-size:19px;
        margin-bottom:26px;
        padding-bottom:18px;
    }

    .obj_issue_toc .heading{
        flex-direction:column;
        gap:20px;
        margin-bottom:38px;
    }

    .obj_issue_toc .cover{
        width:140px;
    }

    .obj_article_summary .title{
        font-size:16px;
    }
}


/* ============================================================
   JGES ISSUE PAGE (single issue view) — 
   ============================================================ */

.page_issue,
.page_issue *{
    box-sizing:border-box;
}

.page_issue{
    max-width:900px;
    margin:0 auto;
    padding:20px 32px 70px;
    font-family:Arial, Helvetica, sans-serif;
    color:#0b2845;
}

/* ---------- breadcrumbs ---------- */

.page_issue .cmp_breadcrumbs{
    margin-bottom:26px;
}

.page_issue .cmp_breadcrumbs ol{
    list-style:none;
    display:flex;
    flex-wrap:wrap;
    margin:0;
    padding:0;
    font-size:12.5px;
}

.page_issue .cmp_breadcrumbs li{
    display:flex;
    align-items:center;
    gap:8px;
}

.page_issue .cmp_breadcrumbs a{
    color:#2c4a68;
    text-decoration:none;
}

.page_issue .cmp_breadcrumbs a:hover{
    color:#7dd3fc;
}

.page_issue .cmp_breadcrumbs .separator{
    color:#dce8f2;
}

.page_issue .cmp_breadcrumbs li.current span{
    color:#0b2845;
    font-weight:700;
}

/* ---------- page title ---------- */

.page_issue > h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:27px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 34px;
    padding-bottom:22px;
    border-bottom:1px solid #dce8f2;
}

/* ---------- issue heading (cover + description + published) ---------- */

.page_issue .obj_issue_toc .heading{
    display:flex;
    gap:32px;
    align-items:flex-start;
    margin-bottom:50px;
}

.page_issue .obj_issue_toc .cover{
    flex-shrink:0;
    width:180px;
}

.page_issue .obj_issue_toc .cover img{
    display:block;
    width:100%;
    height:auto;
    border:1px solid #dce8f2;
}

.page_issue .obj_issue_toc .description{
    flex:1;
    padding-top:4px;
}

.page_issue .obj_issue_toc .description p{
    font-size:15px;
    line-height:1.75;
    color:#2c4a68;
    margin:0 0 20px;
}

.page_issue .obj_issue_toc .published{
    font-size:13.5px;
    padding-top:14px;
    border-top:1px solid #dce8f2;
    display:inline-block;
}

.page_issue .obj_issue_toc .published .label{
    font-weight:700;
    color:#0b2845;
    margin-right:6px;
}

.page_issue .obj_issue_toc .published .value{
    color:#2c4a68;
}

/* ---------- articles section ---------- */

.page_issue .obj_issue_toc .section > h2{
    font-family:Georgia,"Times New Roman",serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.5px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin:0 0 6px;
    padding-bottom:14px;
    border-bottom:1px solid #dce8f2;
}

.page_issue .cmp_article_list.articles{
    list-style:none;
    margin:0;
    padding:0;
}

.page_issue .cmp_article_list.articles > li{
    border-bottom:1px solid #dce8f2;
}

.page_issue .cmp_article_list.articles > li:last-child{
    border-bottom:none;
}

.page_issue .obj_article_summary{
    padding:20px 0;
}

.page_issue .obj_article_summary .title{
    margin:0 0 8px;
    font-size:17px;
}

.page_issue .obj_article_summary .title a{
    font-family:Georgia,"Times New Roman",serif;
    color:#0b2845;
    text-decoration:none;
    font-weight:700;
}

.page_issue .obj_article_summary .title a:hover{
    color:#7dd3fc;
}

.page_issue .obj_article_summary .meta{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

.page_issue .obj_article_summary .authors{
    font-size:13.5px;
    color:#2c4a68;
}

.page_issue .obj_article_summary .galleys_links{
    list-style:none;
    margin:14px 0 0;
    padding:0;
    display:flex;
    gap:16px;
    flex-wrap:wrap;
}

.page_issue .obj_article_summary .galleys_links li a{
    font-size:12.5px;
    font-weight:700;
    color:#0b2845;
    text-decoration:none;
    border-bottom:1px solid #7dd3fc;
    padding-bottom:2px;
}

.page_issue .obj_article_summary .galleys_links li a:hover{
    color:#7dd3fc;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:700px){
    .page_issue{
        padding:16px 20px 50px;
    }

    .page_issue > h1{
        font-size:20px;
        margin-bottom:26px;
        padding-bottom:18px;
    }

    .page_issue .obj_issue_toc .heading{
        flex-direction:column;
        gap:20px;
        margin-bottom:38px;
    }

    .page_issue .obj_issue_toc .cover{
        width:140px;
    }

    .page_issue .obj_article_summary .title{
        font-size:16px;
    }
}


/* ============================================================
   JGES ARCHIVES PAGE — 
   ============================================================ */

.issues_list,
.issues_list *{
    box-sizing:border-box;
}

/* grid wrapper OJS renders around the repeated issue items */
.issues_list{
    max-width:1100px;
    margin:0 auto;
    padding:20px 32px 70px;
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:44px 36px;
    font-family:Arial, Helvetica, sans-serif;
}

/* ---------- individual issue ---------- */

.obj_issue_summary{
    /* display:flex; */
    flex-direction:column;
}

.obj_issue_summary .cover{
    display:block;
    margin-bottom:18px;
    border:1px solid #dce8f2;
}

.obj_issue_summary .cover img{
    display:block;
    width:100%;
    height:auto;
}

.obj_issue_summary h2{
    margin:0 0 10px;
}

.obj_issue_summary h2 .title{
    font-family:Georgia,"Times New Roman",serif;
    font-size:17px;
    font-weight:700;
    color:#0b2845;
    text-decoration:none;
    line-height:1.35;
    display:block;
}

.obj_issue_summary h2 .title:hover{
    color:#7dd3fc;
}

.obj_issue_summary .series{
    font-size:12px;
    font-weight:700;
    letter-spacing:.6px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin-top:6px;
}

.obj_issue_summary .description{
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid #dce8f2;
}

.obj_issue_summary .description p{
    font-size:13.5px;
    line-height:1.7;
    color:#2c4a68;
    margin:0;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:991px){
    .issues_list{
        grid-template-columns:repeat(2, 1fr);
        gap:36px 28px;
        padding:16px 24px 50px;
    }
}

@media (max-width:600px){
    .issues_list{
        grid-template-columns:1fr;
        gap:32px;
        padding:16px 20px 44px;
    }

    .obj_issue_summary h2 .title{
        font-size:16px;
    }
}


/* ============================================================
   JGES LOGIN PAGE — targets OJS's real .page_login / .cmp_form
   markup. Add to your universal CSS file.
   ONLY THREE COLORS: white #ffffff, navy #0b2845, cyan #7dd3fc.
   ============================================================ */

.page_login,
.page_login *{
    box-sizing:border-box;
}

.page_login{
    max-width:440px;
    margin:0 auto;
    padding:20px 24px 90px;
    font-family:Arial, Helvetica, sans-serif;
    color:#0b2845;
}

/* ---------- breadcrumbs ---------- */

.page_login .cmp_breadcrumbs{
    margin-bottom:26px;
}

.page_login .cmp_breadcrumbs ol{
    list-style:none;
    display:flex;
    flex-wrap:wrap;
    margin:0;
    padding:0;
    font-size:12.5px;
}

.page_login .cmp_breadcrumbs li{
    display:flex;
    align-items:center;
    gap:8px;
}

.page_login .cmp_breadcrumbs a{
    color:#2c4a68;
    text-decoration:none;
}

.page_login .cmp_breadcrumbs a:hover{
    color:#7dd3fc;
}

.page_login .cmp_breadcrumbs .separator{
    color:#dce8f2;
}

.page_login .cmp_breadcrumbs li.current span{
    color:#0b2845;
    font-weight:700;
}

/* ---------- heading ---------- */

.page_login > h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:28px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 14px;
}

.page_login > p{
    font-size:12.5px;
    color:#2c4a68;
    margin:0 0 36px;
}

.page_login .required{
    color:#7dd3fc;
    font-style:normal;
    text-decoration:none;
}

/* ---------- form fields ---------- */

.page_login .cmp_form .fields{
    border:none;
    margin:0;
    padding:0;
}

.page_login .username,
.page_login .password{
    margin-bottom:26px;
}

.page_login .fields label{
    display:block;
}

.page_login .fields .label{
    display:block;
    font-size:12.5px;
    font-weight:700;
    letter-spacing:.4px;
    text-transform:uppercase;
    color:#0b2845;
    margin-bottom:10px;
}

.page_login .fields .label .required{
    color:#7dd3fc;
    margin-left:2px;
}

.page_login .fields input[type="text"],
.page_login .fields input[type="password"],
.page_login .fields input[type="email"]{
    width:100%;
    padding:12px 2px;
    font-size:15px;
    color:#0b2845;
    background:transparent;
    border:none;
    border-bottom:1.5px solid #dce8f2;
    border-radius:0;
    outline:none;
    transition:border-color .2s ease;
}

.page_login .fields input[type="text"]:focus,
.page_login .fields input[type="password"]:focus,
.page_login .fields input[type="email"]:focus{
    border-bottom-color:#7dd3fc;
}

.page_login .password label{
    position:relative;
}

.page_login .password > label > a{
    display:inline-block;
    margin-top:10px;
    font-size:12.5px;
    font-weight:600;
    color:#2c4a68;
    text-decoration:none;
    border-bottom:1px solid #7dd3fc;
    padding-bottom:1px;
}

.page_login .password > label > a:hover{
    color:#0b2845;
    border-color:#0b2845;
}

/* ---------- checkbox ---------- */

.page_login .remember{
    display:flex;
    align-items:center;
}

.page_login .remember label{
    display:flex;
    align-items:center;
    gap:10px;
    cursor:pointer;
}

.page_login .remember input[type="checkbox"]{
    width:16px;
    height:16px;
    accent-color:#0b2845;
    cursor:pointer;
}

.page_login .remember .label{
    font-size:13.5px;
    color:#2c4a68;
}

/* ---------- buttons ---------- */

.page_login .buttons{
    display:flex;
    align-items:center;
    gap:24px;
}

.page_login .buttons .submit{
    background:#0b2845;
    color:#ffffff;
    border:none;
    padding:13px 34px;
    font-size:14px;
    font-weight:700;
    letter-spacing:.4px;
    text-transform:uppercase;
    cursor:pointer;
    transition:background .2s ease;
}

.page_login .buttons .submit:hover{
    background:#123a63;
}

.page_login .buttons .register{
    font-size:13.5px;
    font-weight:700;
    color:#0b2845;
    text-decoration:none;
    border-bottom:1px solid #7dd3fc;
    padding-bottom:2px;
}

.page_login .buttons .register:hover{
    color:#7dd3fc;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:480px){
    .page_login{
        padding:16px 18px 70px;
    }

    .page_login > h1{
        font-size:22px;
    }

    .page_login .buttons{
        flex-direction:column;
        align-items:flex-start;
        gap:16px;
    }

    .page_login .buttons .submit{
        width:100%;
        text-align:center;
    }
}


/* ============================================================
   JGES REGISTER PAGE — 
   ============================================================ */

.page_register,
.page_register *{
    box-sizing:border-box;
}

.page_register{
    max-width:640px;
    margin:0 auto;
    padding:20px 24px 90px;
    font-family:Arial, Helvetica, sans-serif;
    color:#0b2845;
}

/* ---------- breadcrumbs ---------- */

.page_register .cmp_breadcrumbs{
    margin-bottom:26px;
}

.page_register .cmp_breadcrumbs ol{
    list-style:none;
    display:flex;
    flex-wrap:wrap;
    margin:0;
    padding:0;
    font-size:12.5px;
}

.page_register .cmp_breadcrumbs li{
    display:flex;
    align-items:center;
    gap:8px;
}

.page_register .cmp_breadcrumbs a{
    color:#2c4a68;
    text-decoration:none;
}

.page_register .cmp_breadcrumbs a:hover{
    color:#7dd3fc;
}

.page_register .cmp_breadcrumbs .separator{
    color:#dce8f2;
}

.page_register .cmp_breadcrumbs li.current span{
    color:#0b2845;
    font-weight:700;
}

/* ---------- heading ---------- */

.page_register > h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:28px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 14px;
}

.page_register > p{
    font-size:12.5px;
    color:#2c4a68;
    margin:0 0 36px;
}

.page_register .required{
    color:#7dd3fc;
    font-style:normal;
    text-decoration:none;
}

/* ---------- fieldsets ---------- */

.page_register fieldset{
    border:none;
    margin:0 0 44px;
    padding:0;
}

.page_register fieldset > legend{
    font-family:Georgia,"Times New Roman",serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.6px;
    text-transform:uppercase;
    color:#7dd3fc;
    margin-bottom:20px;
    padding-bottom:12px;
    border-bottom:1px solid #dce8f2;
    width:100%;
}

/* two-up field grid where it makes sense (identity fieldset) */
.page_register .identity .fields{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 24px;
}

.page_register .identity .affiliation,
.page_register .identity .country{
    grid-column:span 1;
}

/* ---------- field rows ---------- */

.page_register .fields > div{
    margin-bottom:24px;
}

.page_register .fields label{
    display:block;
}

.page_register .fields .label{
    display:block;
    font-size:12.5px;
    font-weight:700;
    letter-spacing:.4px;
    text-transform:uppercase;
    color:#0b2845;
    margin-bottom:10px;
}

.page_register .fields .label .required{
    color:#7dd3fc;
    margin-left:2px;
}

.page_register .fields input[type="text"],
.page_register .fields input[type="email"],
.page_register .fields input[type="password"],
.page_register .fields select{
    width:100%;
    padding:12px 2px;
    font-size:15px;
    color:#0b2845;
    background:transparent;
    border:none;
    border-bottom:1.5px solid #dce8f2;
    border-radius:0;
    outline:none;
    -webkit-appearance:none;
    appearance:none;
    transition:border-color .2s ease;
}

.page_register .fields select{
    background-image:linear-gradient(45deg, transparent 50%, #0b2845 50%),
                      linear-gradient(135deg, #0b2845 50%, transparent 50%);
    background-position:calc(100% - 10px) center, calc(100% - 4px) center;
    background-size:6px 6px, 6px 6px;
    background-repeat:no-repeat;
    padding-right:22px;
}

.page_register .fields input:focus,
.page_register .fields select:focus{
    border-bottom-color:#7dd3fc;
}

/* ---------- consent / reviewer checkboxes ---------- */

.page_register .consent,
.page_register .reviewer{
    margin-bottom:36px;
}

.page_register .optin{
    margin-bottom:16px;
}

.page_register .optin label{
    display:flex;
    align-items:flex-start;
    gap:10px;
    font-size:13.5px;
    line-height:1.6;
    color:#2c4a68;
    cursor:pointer;
}

.page_register .optin input[type="checkbox"]{
    width:16px;
    height:16px;
    margin-top:3px;
    flex-shrink:0;
    accent-color:#0b2845;
    cursor:pointer;
}

.page_register .optin a{
    color:#0b2845;
    text-decoration:none;
    border-bottom:1px solid #7dd3fc;
    padding-bottom:1px;
}

.page_register .optin a:hover{
    color:#7dd3fc;
}

.page_register .reviewer_interests{
    margin-top:16px;
    padding-left:26px;
}

.page_register .reviewer_interests .label{
    display:block;
    font-size:12.5px;
    font-weight:700;
    text-transform:uppercase;
    color:#0b2845;
    margin-bottom:8px;
}

.page_register .reviewer_interests input[type="text"]{
    width:100%;
    padding:10px 2px;
    font-size:14px;
    color:#0b2845;
    background:transparent;
    border:none;
    border-bottom:1.5px solid #dce8f2;
    outline:none;
    transition:border-color .2s ease;
}

.page_register .reviewer_interests input[type="text"]:focus{
    border-bottom-color:#7dd3fc;
}

/* ---------- buttons ---------- */

.page_register .buttons{
    display:flex;
    align-items:center;
    gap:24px;
    margin-top:12px;
}

.page_register .buttons .submit{
    background:#0b2845;
    color:#ffffff;
    border:none;
    padding:13px 34px;
    font-size:14px;
    font-weight:700;
    letter-spacing:.4px;
    text-transform:uppercase;
    cursor:pointer;
    transition:background .2s ease;
}

.page_register .buttons .submit:hover{
    background:#123a63;
}

.page_register .buttons .login{
    font-size:13.5px;
    font-weight:700;
    color:#0b2845;
    text-decoration:none;
    border-bottom:1px solid #7dd3fc;
    padding-bottom:2px;
}

.page_register .buttons .login:hover{
    color:#7dd3fc;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:600px){
    .page_register{
        padding:16px 18px 70px;
    }

    .page_register > h1{
        font-size:22px;
    }

    .page_register .identity .fields{
        grid-template-columns:1fr;
    }

    .page_register .buttons{
        flex-direction:column;
        align-items:flex-start;
        gap:16px;
    }

    .page_register .buttons .submit{
        width:100%;
        text-align:center;
    }
}

/* ============================================================
   JGES SEARCH PAGE — 
   ============================================================ */

.page_search,
.page_search *{
    box-sizing:border-box;
}

.page_search{
    max-width:820px;
    margin:0 auto;
    padding:20px 24px 80px;
    font-family:Arial, Helvetica, sans-serif;
    color:#0b2845;
}

.page_search .pkp_screen_reader{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
}

/* ---------- breadcrumbs ---------- */

.page_search .cmp_breadcrumbs{
    margin-bottom:26px;
}

.page_search .cmp_breadcrumbs ol{
    list-style:none;
    display:flex;
    flex-wrap:wrap;
    margin:0;
    padding:0;
    font-size:12.5px;
}

.page_search .cmp_breadcrumbs li{
    display:flex;
    align-items:center;
    gap:8px;
}

.page_search .cmp_breadcrumbs a{
    color:#2c4a68;
    text-decoration:none;
}

.page_search .cmp_breadcrumbs a:hover{
    color:#7dd3fc;
}

.page_search .cmp_breadcrumbs .separator{
    color:#dce8f2;
}

.page_search .cmp_breadcrumbs li.current span{
    color:#0b2845;
    font-weight:700;
}

/* ---------- heading ---------- */

.page_search > h1{
    font-family:Georgia,"Times New Roman",serif;
    font-size:29px;
    font-weight:700;
    color:#0b2845;
    margin:0 0 34px;
    padding-bottom:22px;
    border-bottom:1px solid #dce8f2;
}

/* ---------- main search input (underline style) ---------- */

.page_search .search_input{
    margin-bottom:36px;
}

.page_search .search_input input.query{
    width:100%;
    padding:14px 2px;
    font-size:19px;
    color:#0b2845;
    background:transparent;
    border:none;
    border-bottom:2px solid #dce8f2;
    border-radius:0;
    outline:none;
    transition:border-color .2s ease;
}

.page_search .search_input input.query::placeholder{
    color:#9fb3c8;
}

.page_search .search_input input.query:focus{
    border-bottom-color:#7dd3fc;
}

/* ---------- advanced filters ---------- */

.page_search .search_advanced{
    border:none;
    margin:0;
    padding:0;
}

.page_search .search_advanced > legend{
    font-family:Georgia,"Times New Roman",serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    color:#7dd3fc;
    padding:0;
    margin-bottom:26px;
    width:100%;
    border-bottom:1px solid #dce8f2;
    padding-bottom:14px;
}

.page_search .date_range{
    display:flex !important;
    gap:40px;
    margin-bottom:30px;
    flex-wrap:wrap;
}

.page_search .date_range .from,
.page_search .date_range .to{
    flex:1;
    min-width:220px;
}

.page_search .date_range fieldset{
    border:none !important;
    margin:0 !important;
    padding:0 !important;
}

.page_search .date_range fieldset > legend{
    font-size:12.5px;
    font-weight:700;
    letter-spacing:.4px;
    text-transform:uppercase;
    color:#0b2845;
    margin-bottom:12px !important;
    padding:0 !important;
    width:100%;
}

.page_search .date_range label{
    display:none !important;
}

/* flex row for Year / Month / Day — !important guards against
   the theme forcing display:block/width:100% on selects */
.page_search .date_range fieldset{
    display:flex !important;
    gap:10px;
}

.page_search .date_range select{
    display:block !important;
    flex:1 1 0;
    min-width:0;
    width:auto !important;
    padding:9px 4px !important;
    margin:0 !important;
    font-size:13px;
    color:#0b2845;
    background:transparent !important;
    border:none !important;
    border-bottom:1.5px solid #dce8f2 !important;
    border-radius:0 !important;
    outline:none;
    -webkit-appearance:none;
    appearance:none;
    background-image:linear-gradient(45deg, transparent 50%, #0b2845 50%),
                      linear-gradient(135deg, #0b2845 50%, transparent 50%) !important;
    background-position:calc(100% - 8px) center, calc(100% - 3px) center !important;
    background-size:5px 5px, 5px 5px !important;
    background-repeat:no-repeat !important;
    padding-right:18px !important;
}

.page_search .date_range select:focus{
    border-bottom-color:#7dd3fc !important;
}

/* ---------- author field ---------- */

.page_search .author{
    margin-bottom:8px;
}

.page_search .author .label{
    display:block;
    font-size:12.5px;
    font-weight:700;
    letter-spacing:.4px;
    text-transform:uppercase;
    color:#0b2845;
    margin-bottom:12px;
}

.page_search .author input[type="text"]{
    width:100%;
    padding:12px 2px;
    font-size:15px;
    color:#0b2845;
    background:transparent;
    border:none;
    border-bottom:1.5px solid #dce8f2;
    outline:none;
    transition:border-color .2s ease;
}

.page_search .author input[type="text"]:focus{
    border-bottom-color:#7dd3fc;
}

/* ---------- submit ---------- */

.page_search .submit{
    margin-top:34px;
}

.page_search .submit button.submit{
    position:relative;
    background:#0b2845 !important;
    color:#ffffff !important;
    border:none !important;
    padding:13px 36px !important;
    font-size:13.5px;
    font-weight:700;
    letter-spacing:.4px;
    text-transform:uppercase;
    border-radius:0 !important;
    cursor:pointer;
    transition:background .2s ease;
    overflow:hidden;
}

.page_search .submit button.submit:hover{
    background:#123a63 !important;
}

/* neutralize any icon/pseudo-element OJS core injects into the button */
.page_search .submit button.submit::before,
.page_search .submit button.submit::after{
    display:none !important;
    content:none !important;
}

.page_search .submit button.submit svg,
.page_search .submit button.submit img,
.page_search .submit button.submit i,
.page_search .submit button.submit .pkp_button_icon,
.page_search .submit button.submit .icon{
    display:none !important;
}

/* ---------- results ---------- */

.page_search .search_results{
    list-style:none;
    margin:44px 0 0;
    padding:0;
}

.page_search .search_results li{
    padding:22px 0;
    border-bottom:1px solid #dce8f2;
}

.page_search .search_results li:last-child{
    border-bottom:none;
}

/* no-results notice */

.page_search .cmp_notification{
    display:block;
    text-align:center;
    padding:34px 24px;
    margin-top:44px;
    border:1px dashed #dce8f2;
    color:#2c4a68;
    font-size:14.5px;
    font-weight:600;
}

/* ===========================================================
   RESPONSIVE
   =========================================================== */

@media (max-width:700px){
    .page_search{
        padding:16px 18px 60px;
    }

    .page_search > h1{
        font-size:22px;
        margin-bottom:26px;
    }

    .page_search .search_input input.query{
        font-size:16px;
    }

    .page_search .date_range{
        flex-direction:column;
        gap:26px;
    }

    .page_search .submit button.submit{
        width:100%;
    }
}