/* BEMO Premium v6 | OJS 3.5 Default Theme | public-facing pages only */
:root{--bemo-navy:#052d4b;--bemo-blue:#076caa;--bemo-teal:#0799ab;--bemo-green:#16814b;--bemo-text:#17384d;--bemo-line:#dce9ef}
body{background:#f5f9fb;color:var(--bemo-text);font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;line-height:1.65}
a{color:var(--bemo-blue)}a:hover{color:#087d83}a:focus-visible,button:focus-visible{outline:3px solid #19bfd0;outline-offset:3px}
.pkp_structure_head{background:linear-gradient(120deg,#032b49 0%,#064d74 65%,#075a68 100%);border-top:3px solid var(--bemo-green)}
.pkp_head_wrapper,.pkp_site_name_wrapper{background:transparent}
.pkp_site_name{padding:8px 0 12px!important;margin:0!important}
.pkp_site_name a{display:block;width:100%}
.pkp_site_name img{display:block;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;object-fit:contain;margin:0 auto}
.pkp_site_name .is_text,.pkp_site_name a.is_text{color:#fff!important;font-size:clamp(1.4rem,2.7vw,2.3rem);font-weight:750}
.pkp_navigation_user>li>a{color:#f0f9ff!important}
.pkp_site_nav_menu{background:rgba(1,26,46,.42);border-top:1px solid rgba(255,255,255,.13)}
.pkp_navigation_primary>li>a{color:#fff!important;font-weight:650;padding:13px 17px}
.pkp_navigation_primary>li>a:hover,.pkp_navigation_primary>li>a:focus{background:rgba(255,255,255,.12)}
.pkp_navigation_primary>li>ul{background:#fff;border:1px solid var(--bemo-line);border-radius:10px;box-shadow:0 12px 35px #032d4b26;padding:6px 0}
.pkp_navigation_primary>li>ul a{color:var(--bemo-navy)!important;padding:10px 15px}
.pkp_navigation_primary>li>ul a:hover{background:#edf8fa}
.pkp_navigation_search_wrapper a{color:#fff!important}
.pkp_structure_content{background:transparent;border:0;padding-top:28px;padding-bottom:35px;min-height:0}
.pkp_structure_main{background:#fff;border:1px solid var(--bemo-line);border-radius:16px;padding:26px 30px;box-shadow:0 12px 38px #053f5a0b;min-height:0}
.pkp_structure_main:before,.pkp_structure_main:after{content:none}
.pkp_block{background:#fff;border:1px solid var(--bemo-line);border-radius:12px;padding:18px;margin-bottom:18px}
.page h1,.page h2,.page h3,.obj_article_details h2{color:var(--bemo-navy);line-height:1.3}
.page h1{border-bottom:1px solid var(--bemo-line);padding-bottom:12px}
.page img{max-width:100%;height:auto}
.obj_article_summary,.obj_issue_summary{border-bottom:1px solid var(--bemo-line);padding:18px 0}
.obj_article_summary .title a,.obj_issue_summary .title a{color:var(--bemo-navy);font-weight:700}
.cmp_button,button[type=submit],input[type=submit],.obj_article_details .galleys a{background:var(--bemo-blue);color:#fff!important;border-radius:8px;border:1px solid var(--bemo-blue);font-weight:650}
input[type=text],input[type=email],input[type=password],input[type=search],select,textarea{border:1px solid #cadde5;border-radius:8px;max-width:100%}
.pkp_structure_footer{background:#042b49;border-top:3px solid var(--bemo-teal);color:#e9f6fa}
.pkp_footer_content{padding:22px 0;color:#e9f6fa}.pkp_footer_content a,.pkp_footer_content p{color:#e9f6fa}
.pkp_brand_footer{text-align:right;padding:10px 0 18px;overflow:hidden}.pkp_brand_footer a{display:inline-block;max-width:100%;background:#fff;border-radius:8px;padding:7px 10px;box-sizing:border-box}.pkp_brand_footer img,.pkp_brand_footer a img{display:block;width:95px!important;height:auto!important;max-height:60px!important;object-fit:contain}
/* Homepage: paste accompanying HTML into Additional Content */
.bemo-home{font-size:1rem;color:var(--bemo-text);max-width:100%;line-height:1.6}
.bemo-home *{box-sizing:border-box}.bemo-home h2,.bemo-home h3,.bemo-home p{margin-top:0}
.bemo-home .bemo-hero{position:relative;isolation:isolate;overflow:hidden;min-height:350px;border-radius:16px;border:1px solid #d6e8ee;background:linear-gradient(90deg,#fff 0%,#fff 44%,#eef9fa 60%,#d5f0ed 100%);box-shadow:0 12px 35px #052d4b0c;margin-bottom:18px}
.bemo-home .bemo-hero-art{position:absolute;right:0;top:0;bottom:0;width:52%;background:linear-gradient(90deg,#ffffff 0%,#ffffff22 29%,#ffffff00 48%),radial-gradient(ellipse at 70% 78%,#24a3ac99 0%,transparent 30%),linear-gradient(155deg,#e2f4f2 0%,#7bb8c2 36%,#0c5c7c 68%,#07395f 100%);z-index:-1}
.bemo-home .bemo-hero-art:before{content:'';position:absolute;inset:16% -10% -10% 8%;background:repeating-radial-gradient(ellipse at 65% 105%,transparent 0 24px,#9de2dd55 25px 26px,transparent 27px 48px);transform:rotate(-10deg)}
.bemo-home .bemo-hero-art:after{content:'';position:absolute;right:10%;top:23%;width:32%;aspect-ratio:1;border:1px solid #a8f4dc9c;border-radius:50%;box-shadow:0 0 0 26px #ffffff14,0 0 0 56px #ffffff10}
.bemo-home .bemo-hero-copy{position:relative;z-index:1;padding:34px 32px;max-width:65%}
.bemo-home .bemo-kicker{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#137b72;margin-bottom:13px}
.bemo-home .bemo-hero h2{font-size:clamp(1.55rem,2.7vw,2.55rem);line-height:1.15;letter-spacing:-.035em;color:#053457;margin-bottom:16px}
.bemo-home .bemo-tagline{font-weight:700;color:#0a496e;margin-bottom:13px}
.bemo-home .bemo-hero-copy>p:not(.bemo-kicker):not(.bemo-tagline){color:#34566b;font-size:.95rem;margin-bottom:20px}
.bemo-home .bemo-btn{display:inline-block;background:#08679d;border:1px solid #08679d;color:#fff!important;padding:11px 18px;border-radius:8px;text-decoration:none;font-size:.9rem;font-weight:700;margin:3px 8px 3px 0;transition:transform .15s,background .15s}
.bemo-home .bemo-btn:hover{background:#04476e;transform:translateY(-1px)}.bemo-home .bemo-btn-outline{background:#fff;color:#07527a!important;border-color:#b7d3df}.bemo-home .bemo-btn-outline:hover{background:#eff9fb}
.bemo-home .bemo-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid #e4edf1;border-radius:12px;background:#fff;box-shadow:0 5px 22px #052d4b08;margin-bottom:30px}
.bemo-home .bemo-benefit{padding:16px 15px;display:flex;gap:12px;align-items:center}.bemo-home .bemo-benefit+.bemo-benefit{border-left:1px solid #e2ebef}.bemo-home .bemo-benefit-mark{font-size:1.6rem;color:#17804b;font-weight:800}.bemo-home .bemo-benefit strong{display:block;color:#063a60;font-size:.92rem}.bemo-home .bemo-benefit small{display:block;color:#577184;font-size:.78rem}
.bemo-home .bemo-columns{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(220px,1fr);gap:20px;align-items:start}
.bemo-home .bemo-section-title{font-size:1.45rem;color:#07395f;margin:0 0 8px;letter-spacing:-.02em}.bemo-home .bemo-section-title:after{content:'';display:block;width:45px;height:3px;background:#23a46a;margin-top:9px;border-radius:3px}
.bemo-home .bemo-intro{font-size:.9rem;color:#536e80;margin:12px 0 18px}
.bemo-home .bemo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.bemo-home .bemo-tile{background:linear-gradient(140deg,#f0faff,#fff);border:1px solid #dcebf3;border-radius:12px;padding:18px;min-width:0}
.bemo-home .bemo-tile:nth-child(even){background:linear-gradient(140deg,#f0faf4,#fff);border-color:#deeee4}
.bemo-home .bemo-tile h3{font-size:1rem;line-height:1.35;color:#06385e;margin:0 0 11px}.bemo-home .bemo-tile p{font-size:.87rem;color:#486577;margin:0}
.bemo-home .bemo-number{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#16a3c3,#0767a5);color:#fff;font-size:.75rem;font-weight:800;margin-bottom:12px}.bemo-home .bemo-tile:nth-child(even) .bemo-number{background:linear-gradient(135deg,#5fbc50,#087c50)}
.bemo-home .bemo-note{border-left:4px solid #218b56;background:#eff8f3;padding:15px 18px;margin:16px 0 0;border-radius:0 9px 9px 0;font-size:.88rem}
.bemo-home .bemo-side-panel{border:1px solid #e1ebef;border-radius:12px;background:#fff;padding:19px;margin-bottom:15px}.bemo-home .bemo-side-panel h3{font-size:1.05rem;color:#063a60;margin:0 0 12px}
.bemo-home .bemo-open-access{display:block;background:linear-gradient(110deg,#073a63,#076ca1);color:#fff!important;border-radius:11px;padding:20px;margin-bottom:14px;text-decoration:none}.bemo-home .bemo-open-access strong{display:block;font-size:1.05rem}.bemo-home .bemo-open-access small{color:#e0f3fa}
.bemo-home .bemo-side-links{list-style:none!important;margin:0!important;padding:0!important}.bemo-home .bemo-side-links li{list-style:none!important;border-bottom:1px solid #e8eef2;margin:0!important}.bemo-home .bemo-side-links li:last-child{border:0}.bemo-home .bemo-side-links a{display:block;padding:10px 0;color:#07527a;text-decoration:none;font-size:.88rem}.bemo-home .bemo-side-links a:hover{text-decoration:underline}
.bemo-home .bemo-facts{margin:0}.bemo-home .bemo-facts div{display:grid;grid-template-columns:100px 1fr;gap:10px;margin:0 0 12px;font-size:.82rem}.bemo-home .bemo-facts dt{font-weight:750;color:#06416a}.bemo-home .bemo-facts dd{margin:0;color:#4c6677}
.bemo-home .bemo-footer-note{margin:25px 0 0;color:#657e8e;font-size:.79rem;border-top:1px solid #e6eef1;padding-top:13px}
/* Keep native OJS sidebar visible for Custom Blocks. */
@media(max-width:900px){.bemo-home .bemo-columns{grid-template-columns:1fr}.bemo-home .bemo-hero-copy{max-width:72%}}
@media(max-width:767px){.pkp_site_name{padding:6px 0 8px!important}.pkp_structure_content{padding-top:12px}.pkp_structure_main{padding:17px 14px;border-radius:11px}.pkp_brand_footer{text-align:center}.bemo-home .bemo-hero{min-height:0}.bemo-home .bemo-hero-copy{max-width:100%;padding:25px 20px;background:linear-gradient(90deg,#fffffff5,#ffffffe8)}.bemo-home .bemo-hero-art{width:100%;opacity:.32}.bemo-home .bemo-benefits{grid-template-columns:1fr}.bemo-home .bemo-benefit+.bemo-benefit{border-left:0;border-top:1px solid #e2ebef}.bemo-home .bemo-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.bemo-home .bemo-btn{transition:none}}


/* BEMO OJS 3.5 footer: append to the END of your current journal stylesheet. */
.pkp_structure_footer { background:#052b49; padding:0 !important; border-top:3px solid #078f9d; }
.pkp_structure_footer .pkp_footer_content { padding:0 !important; max-width:none !important; width:100% !important; }
.pkp_structure_footer .pkp_footer_content > p { margin:0; }
.pkp_structure_footer .bemo-footer-custom { width:100%; }
.pkp_structure_footer .pkp_brand_footer { max-width:1180px; margin:0 auto; padding:8px 24px 18px; text-align:right; }
.pkp_structure_footer .pkp_brand_footer img { width:auto !important; max-width:105px !important; max-height:44px !important; object-fit:contain; background:white; border-radius:5px; padding:3px; }
.pkp_structure_footer .pkp_brand_footer a { display:inline-block; }
.pkp_structure_footer .bemo-footer-custom a:hover,
.pkp_structure_footer .bemo-footer-custom a:focus { color:#8fe2ce !important; text-decoration:underline !important; }
@media(max-width:700px) {
 .pkp_structure_footer .bemo-footer-custom { padding:26px 18px 16px !important; }
 .pkp_structure_footer .pkp_brand_footer { padding:8px 18px 18px; text-align:left; }
}


/* BEMO v6.1: native OJS Custom Block sidebar layout */
.bemo-home .bemo-columns{display:block!important;width:100%}
.bemo-home .bemo-main-column{width:100%!important;max-width:none!important;min-width:0}
.bemo-home .bemo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pkp_structure_content:has(.bemo-home) .pkp_structure_sidebar{display:block!important}
.pkp_structure_main:has(.bemo-home){min-width:0}
.pkp_structure_sidebar .pkp_block{background:#fff;border:1px solid #dce9ef;border-radius:12px;box-shadow:0 5px 20px rgba(5,45,75,.06);margin-bottom:18px;padding:18px}
.pkp_structure_sidebar .pkp_block .title{color:#063a60;font-weight:750;font-size:1.08rem}
.bemo-custom-links{list-style:none!important;margin:0!important;padding:0!important}
.bemo-custom-links li{list-style:none!important;margin:0!important;border-bottom:1px solid #e8eef2}
.bemo-custom-links li:last-child{border-bottom:0}
.bemo-custom-links a{display:block;padding:10px 0;color:#07527a;text-decoration:none}
.bemo-custom-links a:hover{color:#087d83;text-decoration:underline}
.bemo-custom-facts{margin:0}
.bemo-custom-facts>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid #e8eef2}
.bemo-custom-facts>div:last-child{border-bottom:0}
.bemo-custom-facts dt{font-weight:700;color:#063a60}
.bemo-custom-facts dd{margin:0;color:#425e70;overflow-wrap:anywhere}
@media(max-width:767px){.bemo-home .bemo-grid{grid-template-columns:1fr}.bemo-custom-facts>div{grid-template-columns:1fr;gap:3px}}


/* BEMO homepage only: full-width hero and custom blocks aligned with Research Focus.
   Append after all existing CSS. Adjust --bemo-sidebar-start if needed. */
@media (min-width: 1100px) {
  /* Grid keeps both columns in the document height, preventing footer overlap. */
  .pkp_structure_content:has(.bemo-home) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    align-items: start !important;
    --bemo-sidebar-start: 615px;
    --bemo-sidebar-gap: 24px;
  }
  .pkp_structure_content:has(.bemo-home) > .pkp_structure_main {
    grid-area: 1 / 1 !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
  .pkp_structure_content:has(.bemo-home) > .pkp_structure_sidebar {
    grid-area: 1 / 1 !important;
    justify-self: end !important;
    align-self: start !important;
    display: block !important;
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    width: calc((100% - 60px) * .30) !important;
    max-width: none !important;
    height: auto !important;
    float: none !important;
    margin: var(--bemo-sidebar-start) 30px 0 0 !important;
    padding: 0 !important;
    z-index: 2;
    box-sizing: border-box !important;
  }
  .bemo-home .bemo-columns {
    display: grid !important;
    grid-template-columns: minmax(0, 2.2fr) minmax(230px, 1fr) !important;
    gap: var(--bemo-sidebar-gap) !important;
    align-items: start !important;
  }
  .bemo-home .bemo-main-column { grid-column: 1 !important; min-width: 0; }
  .bemo-home .bemo-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (min-width: 768px) and (max-width: 1099px) {
  /* Use normal OJS sidebar flow on medium screens for stability. */
  .pkp_structure_content:has(.bemo-home) .pkp_structure_sidebar {display:block!important;position:static!important;}
}
@media (max-width: 767px) {
  .pkp_structure_content:has(.bemo-home) .pkp_structure_sidebar {display:block!important;position:static!important;width:100%!important;}
  .bemo-home .bemo-columns {display:block!important;}
  .bemo-home .bemo-grid {grid-template-columns:1fr!important;}
}


/* ==========================================
   BEMO v6.3 - Sidebar Spacing Fix
   Homepage tetap seperti sebelumnya
   ========================================== */

@media (min-width: 992px) {

  /* Halaman selain homepage */
  body:not(.pkp_page_index) .pkp_structure_sidebar {
    box-sizing: border-box !important;
    padding-left: 24px !important;
  }

  /* Pastikan ukuran sidebar tetap proporsional */
  body:not(.pkp_page_index) .pkp_structure_sidebar .pkp_block {
    width: 100%;
    box-sizing: border-box;
  }

  /* Hindari margin berlebih pada blok */
  body:not(.pkp_page_index) .pkp_structure_sidebar .pkp_block:first-child {
    margin-top: 0 !important;
  }
}


/* BEMO - Mathematical Modelling Hero */

.bemo-home .bemo-hero-art {
  width: 59% !important;
  background-image:
    linear-gradient(
      90deg,
      #fff 0%,
      rgba(255,255,255,.7) 13%,
      rgba(255,255,255,0) 36%
    ),
    url("https://propanoramic.com/public/site/images/fathonisme/ilustrasi-matematika-dan-lingkungan-berkelanjutan.png") !important;

  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.bemo-home .bemo-hero-art::before,
.bemo-home .bemo-hero-art::after {
  display: none !important;
  content: none !important;
}

@media (max-width: 767px) {
  .bemo-home .bemo-hero-art {
    width: 100% !important;
    opacity: .24 !important;
  }
}


/* =========================================
   BEMO v6.5 - Homepage Background Refinement
   ========================================= */

@media (min-width: 1100px) {

  /* Satukan latar area konten dan sidebar */
  .pkp_structure_content:has(.bemo-home) {
    background: #ffffff !important;
    border: 1px solid #dce9ef;
    border-radius: 16px;
    padding-bottom: 35px !important;
    box-sizing: border-box;
  }

  /* Hilangkan batas visual ganda konten utama */
  .pkp_structure_content:has(.bemo-home)
  > .pkp_structure_main {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  /* Sidebar tetap memiliki kartu tersendiri */
  .pkp_structure_content:has(.bemo-home)
  .pkp_structure_sidebar .pkp_block {
    background: #ffffff !important;
  }
}


/* ==========================================
   BEMO - PREMIUM SIDEBAR HEADERS
   ========================================== */

/* Sidebar card */
.pkp_structure_sidebar .pkp_block {
    background: #ffffff !important;
    border: 1px solid #dce9ef !important;
    border-radius: 18px !important;
    overflow: hidden;
    padding: 0 !important;
}

/* Sidebar header */
.pkp_structure_sidebar .pkp_block .title {
    display: block;
    background: linear-gradient(
        110deg,
        #073553 0%,
        #07516a 60%,
        #087e78 100%
    ) !important;
    color: #ffffff !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    line-height: 1.4;
    padding: 18px 24px !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
}

/* Sidebar content */
.pkp_structure_sidebar .pkp_block .content {
    background: #ffffff !important;
    padding: 20px 24px !important;
    margin: 0 !important;
}

/* Links */
.pkp_structure_sidebar .pkp_block a {
    color: #07516a;
    transition: color 0.2s ease;
}

.pkp_structure_sidebar .pkp_block a:hover {
    color: #159878;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .pkp_structure_sidebar .pkp_block .title {
        font-size: 17px !important;
        padding: 15px 18px !important;
    }

    .pkp_structure_sidebar .pkp_block .content {
        padding: 16px 18px !important;
    }
}


/* ==========================================
   BEMO QUICK LINKS - CSS ONLY ICONS
   ========================================== */

.bemo-custom-links ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.bemo-custom-links li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #e3edf1;
}

.bemo-custom-links li:last-child {
    border-bottom: none;
}

.bemo-custom-links li a {
    display: flex !important;
    align-items: center !important;
    gap: 14px;
    padding: 15px 4px !important;
    color: #07516a !important;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.5;
}

/* Icon container */
.bemo-custom-links li a::before {
    content: "\270E";
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: #edf7f5;
    color: #087e78;
    font-family: "Segoe UI Symbol", Arial, sans-serif;
    font-size: 21px;
    line-height: 1;
}

/* Author Guidelines - pencil */
.bemo-custom-links li:nth-child(1) a::before {
    content: "\270E";
}

/* Editorial Masthead - people */
.bemo-custom-links li:nth-child(2) a::before {
    content: "\2659";
}

/* Editorial Team - profile */
.bemo-custom-links li:nth-child(3) a::before {
    content: "\2637";
}

/* About the Journal - book */
.bemo-custom-links li:nth-child(4) a::before {
    content: "\2630";
}

/* Contact - envelope */
.bemo-custom-links li:nth-child(5) a::before {
    content: "\2709";
}

/* Hover */
.bemo-custom-links li a:hover {
    color: #087e78 !important;
    background: #f5faf9;
}

.bemo-custom-links li a:hover::before {
    background: #087e78;
    color: #ffffff;
}

/* Mobile */
@media (max-width: 768px) {
    .bemo-custom-links li a {
        gap: 11px;
        padding: 12px 2px !important;
    }

    .bemo-custom-links li a::before {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
        font-size: 19px;
    }
}


/* ==========================================
   BEMO FOOTER - RESPONSIVE LAYOUT
   ========================================== */

/* Tablet */
@media (max-width: 900px) {

    .bemo-footer-custom .bemo-footer-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
        gap: 24px !important;
    }

    .bemo-footer-custom .bemo-footer-grid > div:last-child {
        grid-column: 1 / -1;
        text-align: left !important;
    }

    .bemo-footer-custom .bemo-footer-grid > div:last-child img {
        margin-left: 0 !important;
    }
}

/* Mobile */
@media (max-width: 600px) {

    .bemo-footer-custom {
        padding: 24px 20px 18px !important;
    }

    .bemo-footer-custom .bemo-footer-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    .bemo-footer-custom .bemo-footer-grid > div:last-child {
        grid-column: auto !important;
    }
}

/* OJS branding area - keep logo visible */
.pkp_structure_footer .pkp_brand_footer {
    padding: 10px 20px !important;
    margin: 0 !important;
    min-height: 0 !important;
}

.pkp_structure_footer .pkp_brand_footer img {
    max-width: 105px !important;
    height: auto !important;
}

/* Remove unnecessary spacing */
.pkp_structure_footer .pkp_footer_content {
    padding: 0 !important;
    margin: 0 !important;
}


/* ============================================================
   BEMO v6.6 - Compact Quick Links Sidebar (integrated update)
   Overrides earlier v6.1 / v6.5 sidebar spacing without
   changing icon glyphs, journal homepage, or footer design.
   ============================================================ */

/* Keep the Quick Links card refined, not oversized. */
.pkp_structure_sidebar .pkp_block:has(.bemo-custom-links) {
    border-radius: 15px !important;
    margin-bottom: 16px !important;
    overflow: hidden !important;
    padding: 0 !important;
}
.pkp_structure_sidebar .pkp_block:has(.bemo-custom-links) .title {
    font-size: 19px !important;
    line-height: 1.3 !important;
    padding: 14px 20px !important;
    margin: 0 !important;
}
.pkp_structure_sidebar .pkp_block:has(.bemo-custom-links) .content {
    padding: 8px 17px 10px !important;
    margin: 0 !important;
}
.pkp_structure_sidebar .bemo-custom-links ul {
    margin: 0 !important;
    padding: 0 !important;
}
.pkp_structure_sidebar .bemo-custom-links li {
    margin: 0 !important;
    padding: 0 !important;
}
.pkp_structure_sidebar .bemo-custom-links li a {
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
    padding: 9px 2px !important;
    min-height: 53px !important;
    box-sizing: border-box !important;
    font-size: 14px !important;
    font-weight: 550 !important;
    line-height: 1.35 !important;
}
.pkp_structure_sidebar .bemo-custom-links li a::before {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 8px !important;
    font-size: 18px !important;
    line-height: 1 !important;
}
/* Also support an HTML icon wrapper, if the block uses one. */
.pkp_structure_sidebar .bemo-custom-links .bemo-link-icon {
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
}
.pkp_structure_sidebar .bemo-custom-links .bemo-link-icon svg {
    width: 18px !important;
    height: 18px !important;
}

/* Desktop homepage: modestly narrow sidebar and give research tiles
   more width, keeping the existing in-flow overlap arrangement. */
@media (min-width: 1100px) {
    .pkp_structure_content:has(.bemo-home) > .pkp_structure_sidebar {
        width: calc((100% - 60px) * .28) !important;
    }
    .bemo-home .bemo-columns {
        grid-template-columns: minmax(0, 2.4fr) minmax(220px, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .pkp_structure_sidebar .pkp_block:has(.bemo-custom-links) .title {
        font-size: 18px !important;
        padding: 13px 17px !important;
    }
    .pkp_structure_sidebar .pkp_block:has(.bemo-custom-links) .content {
        padding: 7px 15px 9px !important;
    }
    .pkp_structure_sidebar .bemo-custom-links li a {
        font-size: 14px !important;
        min-height: 50px !important;
        padding: 8px 2px !important;
    }
    .pkp_structure_sidebar .bemo-custom-links li a::before {
        flex-basis: 32px !important;
        width: 32px !important;
        height: 32px !important;
        font-size: 17px !important;
    }
}


/* BEMO Peer Reviewers - Compact Directory */

.bemo-reviewer-card {
    transition: border-color .2s ease,
                box-shadow .2s ease;
}

.bemo-reviewer-card:hover {
    border-color: #b5dcd4 !important;
    box-shadow: 0 5px 16px rgba(7,53,83,.06);
}

.bemo-reviewer-card a:hover {
    color: #159878 !important;
    text-decoration: underline !important;
}

/* Tablet and mobile */
@media (max-width: 850px) {
    .bemo-reviewer-grid {
        grid-template-columns: 1fr !important;
    }
}


/* =============================================================
   BEMO v6.8 | MOBILE HEADER AND NAVIGATION - CONSERVATIVE FIX
   Based on Compact Sidebar v6.6, not the v6.7 mobile override.
   Keeps OJS default JavaScript navigation show/hide behavior.
   ============================================================= */
@media screen and (max-width: 767px) {
  /* Restore header's natural height and reveal journal branding. */
  .pkp_structure_head,
  .pkp_head_wrapper {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }
  .pkp_site_name_wrapper {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 76px !important;
    box-sizing: border-box !important;
    padding: 9px 12px 9px 66px !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
  }
  .pkp_site_name {
    display: block !important;
    position: static !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: center !important;
  }
  .pkp_site_name a,
  .pkp_site_name a.is_img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .pkp_site_name img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 90px !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto !important;
  }
  /* Native hamburger stays a clickable, visible button. */
  .pkp_site_nav_toggle {
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    left: 10px !important;
    transform: translateY(-50%) !important;
    width: 46px !important;
    height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 100 !important;
    background: rgba(0,31,53,.55) !important;
    border-radius: 8px !important;
  }
  /* Do NOT set display/position/visibility on the OJS menu:
     OJS's own open/closed classes must control it. */
  .pkp_site_nav_menu {
    box-sizing: border-box !important;
    max-width: 100% !important;
    background: #ffffff !important;
    color: #073553 !important;
    border-radius: 0 0 12px 12px !important;
    box-shadow: 0 12px 28px rgba(5,45,75,.12) !important;
  }
  .pkp_navigation_primary,
  .pkp_navigation_user {
    width: 100% !important;
    max-width: 100% !important;
  }
  .pkp_navigation_primary > li > a,
  .pkp_navigation_user > li > a {
    color: #073553 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    padding: 12px 16px !important;
    box-sizing: border-box !important;
    white-space: normal !important;
  }
  /* Dropdown items are indented in the mobile menu, not floating cards. */
  .pkp_navigation_primary > li > ul {
    position: static !important;
    float: none !important;
    transform: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 0 8px !important;
    padding: 3px 0 3px 12px !important;
    border: 0 !important;
    border-left: 3px solid #159878 !important;
    border-radius: 0 8px 8px 0 !important;
    background: #f1f8f8 !important;
    box-shadow: none !important;
  }
  .pkp_navigation_primary > li > ul a {
    display: block !important;
    box-sizing: border-box !important;
    color: #17465a !important;
    font-size: 14px !important;
    padding: 10px 12px !important;
    white-space: normal !important;
  }
  .pkp_navigation_search_wrapper a { color: #073553 !important; }
  .pkp_structure_content,
  .pkp_structure_main,
  .pkp_structure_sidebar { box-sizing: border-box !important; max-width: 100% !important; }
}

/* Narrow desktop viewport / forced desktop mode: do not shrink the
   navigation into an overlaid mobile dropdown at intermediate widths. */
@media screen and (min-width: 768px) and (max-width: 1099px) {
  .pkp_site_name img { height: auto !important; object-fit: contain !important; }
  .pkp_navigation_primary > li > ul { z-index: 30; }
}

/* =============================================================
   BEMO v6.9 - COMPACT QUICK LINKS & CORRECT MENU ICONS
   Scoped to Quick Links custom block only. Keeps v6.8 mobile fix.
   ============================================================= */
.pkp_structure_sidebar .pkp_block:has(.bemo-custom-links) .title {
  font-size:17px !important;
  line-height:1.3 !important;
  padding:12px 17px !important;
}
.pkp_structure_sidebar .pkp_block:has(.bemo-custom-links) .content {
  padding:5px 14px 7px !important;
}
.pkp_structure_sidebar .bemo-custom-links li a {
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  min-height:43px !important;
  padding:6px 1px !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:550 !important;
  overflow-wrap:anywhere;
}
.pkp_structure_sidebar .bemo-custom-links li a::before {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 28px !important;
  width:28px !important;
  height:28px !important;
  border-radius:7px !important;
  font-family:"Segoe UI Symbol","DejaVu Sans",Arial,sans-serif !important;
  font-size:16px !important;
  font-weight:400 !important;
  line-height:1 !important;
}
/* Icon mapping by URL: stable even when links are reordered. */
.pkp_structure_sidebar .bemo-custom-links a[href$="/about"]::before {content:"\2637" !important;} /* About: profile */
.pkp_structure_sidebar .bemo-custom-links a[href*="focus-and-scope"]::before {content:"\2211" !important;} /* Scope: sigma */
.pkp_structure_sidebar .bemo-custom-links a[href*="editorial-team"]::before {content:"\2659" !important;} /* Board */
.pkp_structure_sidebar .bemo-custom-links a[href*="reviewer-team"]::before {content:"\2637" !important;} /* Reviewers */
.pkp_structure_sidebar .bemo-custom-links a[href*="/about/submissions"]::before {content:"\270E" !important;} /* Guidelines */
.pkp_structure_sidebar .bemo-custom-links a[href*="publication-ethics"]::before {content:"\2696" !important;} /* Ethics: scales */
.pkp_structure_sidebar .bemo-custom-links a[href*="authorfees"]::before {content:"$" !important;} /* APC */
.pkp_structure_sidebar .bemo-custom-links a[href*="/indexing"]::before {content:"\2315" !important;} /* Indexing */
.pkp_structure_sidebar .bemo-custom-links a[href*="/about/contact"]::before {content:"\2709" !important;} /* Contact */
@media(max-width:768px) {
  .pkp_structure_sidebar .pkp_block:has(.bemo-custom-links) .title {font-size:16px !important;padding:11px 15px !important;}
  .pkp_structure_sidebar .pkp_block:has(.bemo-custom-links) .content {padding:5px 12px 7px !important;}
  .pkp_structure_sidebar .bemo-custom-links li a {min-height:42px !important;padding:6px 1px !important;font-size:13px !important;gap:9px !important;}
  .pkp_structure_sidebar .bemo-custom-links li a::before {flex-basis:28px !important;width:28px !important;height:28px !important;font-size:16px !important;}
}



/* ==============================================
   BEMO OJS 3.5 - ABOUT THE JOURNAL
   Scoped to the homepage About preview only.
   ============================================== */
.bemo-home .bemo-about-preview {
  width:100%; min-width:0; margin:0 0 30px; color:#17384d;
}
.bemo-home .bemo-about-preview,
.bemo-home .bemo-about-preview *,
.bemo-home .bemo-about-preview *::before,
.bemo-home .bemo-about-preview *::after { box-sizing:border-box; }
.bemo-home .bemo-about-preview .bemo-about-heading { margin:0 0 18px; }
/* Match the existing Research Focus .bemo-section-title exactly. */
.bemo-home .bemo-about-preview .bemo-about-heading h2 {
  font-size:1.45rem !important; line-height:1.3 !important;
  font-weight:700 !important; letter-spacing:-.02em !important;
  color:#07395f !important; margin:0 0 8px !important;
  padding:0 !important; border:0 !important; background:none !important;
}
.bemo-home .bemo-about-preview .bemo-about-heading h2::after {
  content:'' !important; display:block !important; position:static !important;
  width:45px !important; height:3px !important; background:#23a46a !important;
  margin:9px 0 0 !important; border:0 !important; border-radius:3px !important;
}
/* The heading supplies one underline, including when HTML has a line span. */
.bemo-home .bemo-about-preview .bemo-about-heading-line { display:none !important; }
.bemo-home .bemo-about-preview .bemo-about-heading p {
  margin:12px 0 0; font-size:.9rem; line-height:1.6; color:#536e80;
}
.bemo-home .bemo-about-preview .bemo-about-panel {
  display:grid !important; grid-template-columns:minmax(120px,28%) minmax(0,1fr) !important;
  align-items:start !important; gap:22px !important; padding:20px !important;
  background:linear-gradient(140deg,#f0faff,#fff) !important;
  border:1px solid #dcebf3 !important; border-radius:12px !important;
  box-shadow:none !important; min-width:0;
}
.bemo-home .bemo-about-preview .bemo-about-cover { min-width:0; margin:0 !important; width:100%; }
.bemo-home .bemo-about-preview .bemo-about-cover img {
  display:block !important; width:100% !important; max-width:100% !important;
  height:auto !important; object-fit:contain; border:1px solid #dce9ef;
  border-radius:7px; box-shadow:0 4px 14px rgba(5,45,75,.08);
}
.bemo-home .bemo-about-preview .bemo-about-details { min-width:0 !important; }
.bemo-home .bemo-about-preview .bemo-about-eyebrow {
  display:block; margin:0 0 8px; font-size:.68rem; font-weight:750;
  letter-spacing:.08em; color:#16814b;
}
.bemo-home .bemo-about-preview .bemo-about-intro h3 {
  margin:0 0 10px; font-size:1rem !important; line-height:1.35;
  font-weight:700; color:#06385e;
}
.bemo-home .bemo-about-preview .bemo-about-intro p {
  margin:0 0 16px; font-size:.87rem; line-height:1.65; color:#486577;
}
/* Reset OJS definition-list floats, widths and positioning locally.
   Supports both <dl><div><dt>...</dt><dd>...</dd></div></dl>
   and a flat <dl><dt>...</dt><dd>...</dd></dl>. */
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) {
  display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) !important;
  gap:0 !important; width:100% !important; max-width:100% !important;
  margin:0 !important; padding:0 !important; float:none !important;
  background:#fff !important; border:1px solid #deeee4 !important;
  border-radius:9px !important; overflow:hidden;
}
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) > div {
  display:grid !important; grid-column:1 / -1 !important;
  grid-template-columns:subgrid !important; gap:0 !important;
  margin:0 !important; padding:0 !important; width:auto !important;
  min-width:0 !important; border:0 !important; float:none !important;
}
@supports not (grid-template-columns:subgrid) {
  .bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) > div {
    grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) !important;
  }
}
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dt,
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dd {
  display:block !important; position:static !important; float:none !important;
  clear:none !important; inset:auto !important; transform:none !important;
  width:auto !important; min-width:0 !important; max-width:100% !important;
  height:auto !important; margin:0 !important; padding:10px 12px !important;
  font-size:.8rem !important; line-height:1.55 !important;
  white-space:normal !important; overflow-wrap:anywhere !important;
  word-break:normal !important; text-indent:0 !important;
  border:0 !important; border-bottom:1px solid #e4eee9 !important;
}
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dt {
  grid-column:1 !important; color:#07545b !important;
  background:#f0faf4 !important; font-weight:700 !important;
}
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dd {
  grid-column:2 !important; color:#486577 !important;
  background:#fff !important; font-weight:400 !important;
}
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dt::before,
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dt::after,
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dd::before,
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dd::after { content:none !important; }
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) > div:last-child > dt,
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) > div:last-child > dd,
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) > dt:nth-last-child(2),
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) > dd:last-child { border-bottom:0 !important; }
.bemo-home .bemo-about-preview .bemo-about-button {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  max-width:100%; margin:16px 0 0; padding:10px 16px;
  background:#08679d; border:1px solid #08679d; border-radius:8px;
  color:#fff !important; font-size:.85rem; font-weight:700;
  line-height:1.5; text-align:center; text-decoration:none !important;
}
.bemo-home .bemo-about-preview .bemo-about-button:hover { background:#04476e; border-color:#04476e; }
.bemo-home .bemo-about-preview .bemo-about-button:focus-visible { outline:3px solid #19bfd0; outline-offset:3px; }
.bemo-home .bemo-about-preview .bemo-about-button span { font-size:1.1rem; line-height:1; }
@media (max-width:600px) {
  .bemo-home .bemo-about-preview .bemo-about-panel {
    grid-template-columns:minmax(0,1fr) !important; padding:17px !important; gap:20px !important;
  }
  .bemo-home .bemo-about-preview .bemo-about-cover {
    width:70% !important; max-width:220px !important; justify-self:center;
  }
  .bemo-home .bemo-about-preview .bemo-about-button { display:flex; width:100%; }
}
@media (max-width:380px) {
  .bemo-home .bemo-about-preview :is(dl, .bemo-about-facts),
  .bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) > div { grid-template-columns:minmax(0,1fr) !important; }
  .bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dt,
  .bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dd { grid-column:1 !important; }
  .bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dt { border-bottom:0 !important; padding-bottom:4px !important; }
}

/* About refinement: include native definition lists without a facts class. */
.bemo-home .bemo-about-preview .bemo-about-panel {
  grid-template-columns:minmax(140px,26%) minmax(0,1fr) !important;
  gap:26px !important; padding:24px !important;
  background:linear-gradient(135deg,#f2faff 0%,#fff 75%) !important;
}
.bemo-home .bemo-about-preview .bemo-about-cover { max-width:240px !important; }
.bemo-home .bemo-about-preview .bemo-about-intro p { margin-bottom:18px !important; }
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) {
  font-size:.8rem !important; line-height:1.55 !important;
}
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dt {
  text-align:left !important; align-self:stretch !important;
}
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dd {
  text-align:left !important; align-self:stretch !important;
  border-left:1px solid #e4eee9 !important;
}
.bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) :is(dt, dd) > p {
  margin:0 !important; padding:0 !important; font:inherit !important;
}
.bemo-home .bemo-about-preview .bemo-about-button {
  margin-top:18px !important; padding:10px 16px !important; font-size:.85rem !important;
}
@media (max-width:700px) {
  .bemo-home .bemo-about-preview .bemo-about-panel {
    grid-template-columns:minmax(0,1fr) !important; gap:22px !important; padding:18px !important;
  }
  .bemo-home .bemo-about-preview .bemo-about-cover {
    width:65% !important; max-width:200px !important; justify-self:center !important;
  }
}
@media (max-width:380px) {
  .bemo-home .bemo-about-preview :is(dl, .bemo-about-facts) dd {
    border-left:0 !important;
  }
}



/* ==========================================
   BEMO - PROFESSIONAL JOURNAL PROFILE TABLE
   Matches Research Focus and Scope
   ========================================== */

.bemo-home .bemo-about-preview {
  margin-bottom: 32px !important;
}

/* Same heading as Research Focus and Scope */
.bemo-home .bemo-about-heading h2 {
  font-size: 1.45rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  color: #07395f !important;
  margin: 0 0 8px !important;
}

.bemo-home .bemo-about-heading h2::after {
  content: "" !important;
  display: block !important;
  width: 45px !important;
  height: 3px !important;
  margin-top: 9px !important;
  background: #23a46a !important;
  border-radius: 3px !important;
}

.bemo-home .bemo-about-heading p {
  font-size: .9rem !important;
  color: #536e80 !important;
  margin: 12px 0 18px !important;
}

/* Card matches BEMO research tiles */
.bemo-home .bemo-about-panel {
  display: grid !important;
  grid-template-columns:
    minmax(0, 27%) minmax(0, 1fr) !important;
  gap: 22px !important;
  padding: 20px !important;
  align-items: start !important;
  background:
    linear-gradient(140deg,#f0faff,#fff) !important;
  border: 1px solid #dcebf3 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

/* Cover */
.bemo-home .bemo-about-cover {
  width: 100% !important;
  max-width: 240px !important;
  margin: 0 !important;
}

.bemo-home .bemo-about-cover img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  border-radius: 7px !important;
  border: 1px solid #dce9ef !important;
  box-shadow: 0 5px 15px rgba(5,45,75,.09);
}

/* Details */
.bemo-home .bemo-about-details {
  min-width: 0 !important;
}

.bemo-home .bemo-about-eyebrow {
  display: block;
  font-size: .68rem;
  font-weight: 750;
  letter-spacing: .08em;
  color: #16814b;
  margin-bottom: 7px;
}

.bemo-home .bemo-about-intro h3 {
  font-size: 1rem !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  color: #06385e !important;
  margin: 0 0 8px !important;
}

.bemo-home .bemo-about-intro p {
  font-size: .84rem !important;
  line-height: 1.6 !important;
  color: #486577 !important;
  margin: 0 0 16px !important;
}

/* Table container */
.bemo-home .bemo-about-table-wrap {
  width: 100%;
  overflow: hidden;
  border: 1px solid #dce9ef;
  border-radius: 9px;
  background: #fff;
}

/* Override OJS table defaults */
.bemo-home table.bemo-about-table {
  display: table !important;
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  table-layout: fixed !important;
  margin: 0 !important;
  background: #fff !important;
}

.bemo-home .bemo-about-table tbody {
  display: table-row-group !important;
}

.bemo-home .bemo-about-table tr {
  display: table-row !important;
  background: transparent !important;
}

.bemo-home .bemo-about-table th,
.bemo-home .bemo-about-table td {
  display: table-cell !important;
  float: none !important;
  vertical-align: middle !important;
  text-align: left !important;
  padding: 9px 12px !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #e5edf0 !important;
  font-size: .78rem !important;
  line-height: 1.5 !important;
  overflow-wrap: anywhere;
  white-space: normal !important;
}

/* Label column */
.bemo-home .bemo-about-table th {
  width: 43% !important;
  background: #eff8f4 !important;
  color: #07545b !important;
  font-weight: 700 !important;
  border-right: 1px solid #e2eee8 !important;
}

/* Value column */
.bemo-home .bemo-about-table td {
  width: 57% !important;
  background: #fff !important;
  color: #36586b !important;
  font-weight: 400 !important;
}

/* Alternate subtle rows */
.bemo-home .bemo-about-table
tr:nth-child(even) th {
  background: #f4faf7 !important;
}

.bemo-home .bemo-about-table
tr:nth-child(even) td {
  background: #fbfdfd !important;
}

.bemo-home .bemo-about-table
tr:last-child th,
.bemo-home .bemo-about-table
tr:last-child td {
  border-bottom: 0 !important;
}

/* About button */
.bemo-home .bemo-about-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-top: 17px !important;
  padding: 10px 16px !important;
  background: linear-gradient(
    110deg,#073553,#087e78
  ) !important;
  border: 0 !important;
  border-radius: 8px !important;
  color: #fff !important;
  font-size: .82rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.bemo-home .bemo-about-button:hover {
  background: #06466c !important;
  color: #fff !important;
}

/* Tablet */
@media (max-width: 900px) {
  .bemo-home .bemo-about-panel {
    grid-template-columns:
      minmax(0, 28%) minmax(0, 1fr) !important;
    gap: 15px !important;
    padding: 16px !important;
  }
}

/* Mobile */
@media (max-width: 700px) {
  .bemo-home .bemo-about-panel {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 20px !important;
    padding: 17px !important;
  }

  .bemo-home .bemo-about-cover {
    width: 65% !important;
    max-width: 200px !important;
    justify-self: center !important;
  }

  .bemo-home .bemo-about-table th,
  .bemo-home .bemo-about-table td {
    font-size: .77rem !important;
    padding: 9px 10px !important;
  }

  .bemo-home .bemo-about-button {
    display: flex !important;
    width: 100% !important;
  }
}

@media (max-width: 380px) {
  .bemo-home .bemo-about-table th {
    width: 46% !important;
  }

  .bemo-home .bemo-about-table td {
    width: 54% !important;
  }
}



/* ==========================================
   BEMO - MANUAL JOURNAL METRICS
========================================== */

.bemo-home .bemo-journal-metrics {
  margin-top: 20px;
  padding: 15px 12px;
  background: linear-gradient(140deg,#f0faff,#fff);
  border: 1px solid #dcebf3;
  border-radius: 10px;
  width: 100%;
}

.bemo-home .bemo-journal-metrics h4 {
  font-size: 13px;
  font-weight: 750;
  color: #073553;
  margin: 0 0 14px;
  text-align: center;
}

.bemo-home .bemo-metrics-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 5px;
}

.bemo-home .bemo-metric-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  padding: 10px 2px;
  background: #eff8f4;
  border-radius: 7px;
  min-width: 0;
}

.bemo-home .bemo-metric-value {
  color: #087e78;
  font-size: clamp(15px,1.5vw,21px);
  font-weight: 800;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.bemo-home .bemo-metric-label {
  color: #486577;
  font-size: 10px;
  text-align: center;
  line-height: 1.3;
}

.bemo-home .bemo-metrics-update {
  text-align: center;
  font-size: 10px;
  color: #718696;
  margin: 12px 0 0;
}

@media(max-width:700px) {
  .bemo-home .bemo-about-cover {
    max-width: 260px !important;
  }
}


/* ==========================================
   BEMO - PREMIUM VISITOR COUNTER
   OJS 3.5 Sidebar
========================================== */

.bemo-visitor-counter {
  width: 100%;
  max-width: 100%;
  font-family: inherit;
  box-sizing: border-box;
}

/* Intro */
.bemo-counter-intro {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 12px;
  margin-bottom: 15px;
  background: linear-gradient(
    135deg,
    #eff8fb 0%,
    #f0faf4 100%
  );
  border: 1px solid #dcebf3;
  border-radius: 10px;
}

.bemo-counter-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 9px;
  background: #087e78;
  color: #ffffff;
  font-size: 25px;
}

.bemo-counter-description {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.bemo-counter-description strong {
  font-size: 13px;
  font-weight: 700;
  color: #073553;
  line-height: 1.4;
}

.bemo-counter-description span {
  font-size: 11px;
  color: #617c8b;
  line-height: 1.5;
}

/* Counter image */
.bemo-counter-display {
  padding: 12px 8px;
  background: #ffffff;
  border: 1px solid #e2edf1;
  border-radius: 10px;
  text-align: center;
  overflow: hidden;
}

.bemo-counter-display a {
  display: inline-block;
  max-width: 100%;
  text-decoration: none;
}

.bemo-counter-display img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  border: 0;
}

/* Footer */
.bemo-counter-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin-top: 13px;
  padding-top: 11px;
  border-top: 1px solid #e6eef1;
  font-size: 10px;
  color: #718696;
  text-align: center;
}

.bemo-counter-status {
  display: inline-block;
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  background: #159878;
  border-radius: 50%;
}

/* Mobile */
@media (max-width: 767px) {
  .bemo-counter-intro {
    padding: 11px;
  }

  .bemo-counter-display {
    padding: 12px 6px;
  }
}



/* ==========================================
   BEMO - FOOTER JOURNAL IDENTIFIERS
   FINAL HORIZONTAL VERSION
========================================== */

.bemo-footer-custom .bemo-footer-identifiers {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  margin-top: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
}

.bemo-footer-custom .bemo-footer-id {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  flex: 0 1 auto !important;
  min-width: 0 !important;
  gap: 6px !important;
  padding: 9px 10px !important;
  background: rgba(255,255,255,0.055) !important;
  border: 1px solid rgba(133,214,189,0.25) !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
}

.bemo-footer-custom .bemo-footer-id-label {
  min-width: 0 !important;
  color: #85d6bd !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
  white-space: nowrap !important;
}

.bemo-footer-custom .bemo-footer-id-value {
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

/* Tablet and mobile */
@media (max-width: 900px) {
  .bemo-footer-custom .bemo-footer-identifiers {
    flex-wrap: wrap !important;
  }
}

@media (max-width: 600px) {
  .bemo-footer-custom .bemo-footer-identifiers {
    gap: 7px !important;
  }

  .bemo-footer-custom .bemo-footer-id {
    padding: 9px 10px !important;
  }
}



/* ==============================================
   BEMO OJS 3.5
   HEADER & NAVIGATION REFINEMENT
   Desktop Only - Final Override
============================================== */

@media (min-width: 768px) {

  /* 1. COMPACT HEADER */

  .pkp_site_name {
    padding: 0 !important;
    margin: 0 !important;
  }

  .pkp_site_name_wrapper {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .pkp_site_name img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 300px !important;
    object-fit: contain !important;
  }

  /* 2. CONSISTENT NAVIGATION HEIGHT */

  .pkp_site_nav_menu {
    padding: 0 !important;
  }

  .pkp_navigation_primary > li {
    margin: 0 !important;
    padding: 0 !important;
  }

  .pkp_navigation_primary > li > a {
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
    min-height: 52px !important;
    height: 52px !important;
    padding: 0 18px !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    background: transparent !important;
    font-size: 15px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
    transition: background .2s ease,
                border-color .2s ease !important;
  }

  /* Hover and active states: same dimensions */

  .pkp_navigation_primary > li > a:hover,
  .pkp_navigation_primary > li > a:focus,
  .pkp_navigation_primary > li.current > a,
  .pkp_navigation_primary > li > a[aria-current="page"] {
    background: rgba(255,255,255,.08) !important;
    border-bottom-color: #5bd4bd !important;
  }

  /* 3. REFINED ABOUT DROPDOWN */

  .pkp_navigation_primary > li > ul {
    min-width: 230px !important;
    width: max-content !important;
    max-width: 290px !important;
    margin: 0 !important;
    padding: 5px 0 !important;
    background: #ffffff !important;
    border: 1px solid #dce9ef !important;
    border-top: 3px solid #087e78 !important;
    border-radius: 0 0 10px 10px !important;
    box-shadow: 0 10px 24px rgba(5,45,75,.12) !important;
    box-sizing: border-box !important;
  }

  .pkp_navigation_primary > li > ul > li {
    margin: 0 !important;
    padding: 0 !important;
  }

  .pkp_navigation_primary > li > ul > li > a {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 10px 15px !important;
    margin: 0 !important;
    background: #ffffff !important;
    color: #073553 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    border: 0 !important;
    border-radius: 0 !important;
    white-space: normal !important;
  }

  .pkp_navigation_primary > li > ul > li > a:hover,
  .pkp_navigation_primary > li > ul > li > a:focus {
    background: #edf8f7 !important;
    color: #087e78 !important;
  }

  /* 4. REDUCE SPACE ABOVE HOMEPAGE CONTENT */

  body.pkp_page_index .pkp_structure_content {
    padding-top: 8px !important;
  }

  body.pkp_page_index .pkp_structure_main {
    padding-top: 12px !important;
  }

  /* Remove empty homepage header spacing */
  body.pkp_page_index .pkp_structure_main > .page_index_journal > .page-header:empty {
    display: none !important;
  }

}

/* =============================================================
   BEMO v6.10 - Mobile submenu progressive disclosure (CSS only)
   Append after all existing rules. Desktop remains unchanged.
   Note: CSS cannot intercept navigation on parent menu links.
   ============================================================= */
@media screen and (max-width: 767px) {
  /* Hide nested lists until their parent item receives focus. */
  .pkp_site_nav_menu .pkp_navigation_primary > li > ul {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    position: static !important;
    margin: 0 !important;
    padding: 0 0 0 12px !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .pkp_site_nav_menu .pkp_navigation_primary > li:focus-within > ul {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 0 8px !important;
    padding: 3px 0 3px 12px !important;
    border-left: 3px solid #159878 !important;
    background: #f1f8f8 !important;
  }

  .pkp_site_nav_menu .pkp_navigation_primary > li:focus-within > a {
    background: #e9f6f4 !important;
    color: #073553 !important;
  }

  /* Restore BEMO's mobile child-link styling against later desktop rules. */
  .pkp_site_nav_menu .pkp_navigation_primary > li > ul > li > a {
    background: transparent !important;
    color: #17465a !important;
    padding: 10px 12px !important;
    font-size: 14px !important;
    white-space: normal !important;
  }
}
