/* JoHESSM — OJS 3.5 corrected stylesheet */
/* Preserve full-width homepage without vertical borders */
body:has(.johessm-home) .pkp_structure_main,
body:has(.johessm-home) .pkp_structure_content,
body:has(.johessm-home) .pkp_structure_page,
body:has(.johessm-home) .page_index_journal,
body:has(.johessm-home) .additional_content,
body:has(.johessm-home) .johessm-home {
  max-width: none !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
body:has(.johessm-home) .pkp_structure_main {
  float: none !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
}
body:has(.johessm-home) .pkp_structure_content {padding:0!important;}
body:has(.johessm-home) .pkp_structure_page {margin:0 auto!important;}
body:has(.johessm-home) .additional_content,
body:has(.johessm-home) .page_index_journal {margin:0!important;padding:0!important;flex:0 0 100%!important;}
body:has(.johessm-home) .johessm-home {font-size:16px!important;zoom:1!important;display:block!important;margin:0!important;padding:0!important;transform:none!important;}
body:has(.johessm-home) .johessm-home h1 {font-size:clamp(34px,4vw,58px)!important;}
body:has(.johessm-home) .johessm-home h2 {font-size:21px!important;}
body:has(.johessm-home) .pkp_structure_page,
body:has(.johessm-home) .pkp_structure_content,
body:has(.johessm-home) .pkp_structure_main {border-left:0!important;border-right:0!important;box-shadow:none!important;}
body:has(.johessm-home) .pkp_structure_main::before,
body:has(.johessm-home) .pkp_structure_main::after {content:none!important;display:none!important;}
/* Five feature panels */
body:has(.johessm-home) .johessm-home > section:first-of-type > div {
  width:100%!important;max-width:1800px!important;display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;
}
/* Three lower content panels */
body:has(.johessm-home) .johessm-home > div:first-of-type {
  width:100%!important;max-width:1800px!important;display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,.95fr)!important;
  gap:22px!important;margin:0 auto!important;padding:28px 2%!important;box-sizing:border-box!important;
}
body:has(.johessm-home) .johessm-home > div:first-of-type > * {min-width:0!important;width:auto!important;max-width:none!important;}
body:has(.johessm-home) .johessm-home > div:first-of-type h2 {font-size:24px!important;line-height:1.35!important;}
body:has(.johessm-home) .johessm-home > div:first-of-type aside > a {font-size:19px!important;line-height:1.45!important;padding:24px 25px!important;}
/* Larger readable features and lower panels */
body:has(.johessm-home) .johessm-home > section:first-of-type strong {
  font-size:19px !important;
}
body:has(.johessm-home) .johessm-home > div:first-of-type {
  max-width:1600px !important;
  grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.8fr) !important;
}
body:has(.johessm-home) .johessm-home > div:first-of-type p {
  font-size:17px !important; line-height:1.6 !important;
}
@media(max-width:900px) {
 body:has(.johessm-home) .johessm-home > section:first-of-type > div {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
 body:has(.johessm-home) .johessm-home > div:first-of-type {grid-template-columns:1fr!important;padding:25px 4%!important;}
}
@media(max-width:480px) {
 body:has(.johessm-home) .johessm-home > section:first-of-type > div {grid-template-columns:1fr!important;}
}

/* Single, non-conflicting desktop header layout */
@media (min-width: 992px) {
 body:has(.johessm-home) .pkp_structure_head {
   position:relative!important; height:auto!important; min-height:0!important;
   overflow:visible!important; background:#fff!important; padding:0!important;
 }
 body:has(.johessm-home) .pkp_head_wrapper {
   position:relative!important; display:flex!important; flex-direction:column!important;
   width:100%!important; max-width:none!important; height:auto!important;
   min-height:0!important; margin:0!important; padding:0!important;
   overflow:visible!important; background:#fff!important;
 }
 /* Logo must precede navigation even when OJS places the menu first in markup */
 body:has(.johessm-home) .pkp_site_name_wrapper {
   order:-20!important; position:relative!important; inset:auto!important;
   float:none!important; display:flex!important; justify-content:center!important;
   align-items:center!important; width:100%!important; max-width:none!important;
   height:auto!important; min-height:170px!important; max-height:none!important;
   margin:0!important; padding:16px 24px!important; overflow:visible!important;
   box-sizing:border-box!important; background:#fff!important;
 }
 body:has(.johessm-home) .pkp_site_name {
   position:static!important; float:none!important; display:flex!important;
   justify-content:center!important; align-items:center!important;
   width:100%!important; max-width:none!important; height:auto!important;
   margin:0!important; padding:0!important; overflow:visible!important;
 }
 body:has(.johessm-home) .pkp_site_name a,
 body:has(.johessm-home) .pkp_site_name a.is_img {
   position:static!important; display:block!important; width:auto!important;
   max-width:100%!important; height:auto!important; max-height:none!important;
   margin:0!important; padding:0!important; overflow:visible!important;
 }
 body:has(.johessm-home) .pkp_site_name img {
   display:block!important; width:auto!important; height:auto!important;
   max-width:min(1300px,94vw)!important; max-height:150px!important;
   object-fit:contain!important; margin:0 auto!important;
 }
 body:has(.johessm-home) .pkp_navigation_primary_row {
   order:20!important; position:relative!important; inset:auto!important;
   transform:none!important; float:none!important; display:flex!important;
   justify-content:center!important; align-items:center!important;
   width:100%!important; max-width:none!important; height:auto!important;
   min-height:60px!important; margin:0!important; padding:0 18px!important;
   box-sizing:border-box!important; background:#061f43!important;
   border-bottom:2px solid #e4b346!important; overflow:visible!important;
 }
 body:has(.johessm-home) .pkp_navigation_primary_wrapper {
   order:20!important; position:static!important; float:none!important;
   display:flex!important; justify-content:center!important; align-items:center!important;
   width:100%!important; max-width:none!important; height:auto!important;
   margin:0!important; padding:0!important; background:#061f43!important;
   overflow:visible!important;
 }
 body:has(.johessm-home) ul.pkp_navigation_primary {
   position:static!important; float:none!important; display:flex!important;
   flex-wrap:wrap!important; justify-content:center!important; align-items:center!important;
   width:auto!important; max-width:100%!important; height:auto!important;
   margin:0!important; padding:0!important; overflow:visible!important;
 }
 body:has(.johessm-home) ul.pkp_navigation_primary > li {
   position:relative!important; float:none!important; display:block!important;
   width:auto!important; height:auto!important; margin:0!important;
 }
 body:has(.johessm-home) ul.pkp_navigation_primary > li > a {
   display:block!important; color:#fff!important; font-size:15px!important;
   font-weight:600!important; line-height:22px!important;
   padding:18px 10px!important; white-space:nowrap!important;
 }
 /* OJS user-menu strip should not separate masthead and primary navigation */
 body:has(.johessm-home) .pkp_navigation_user_wrapper {
   order:-10!important; position:static!important; background:#fff!important;
   width:100%!important; max-width:none!important; min-height:0!important;
   margin:0!important; padding:0!important;
 }
 body:has(.johessm-home) .pkp_structure_page {overflow-x:clip!important;}
}

/* 2026-11-01: full masthead image, with its original wide aspect ratio */
@media (min-width: 992px) {
 body:has(.johessm-home) .pkp_site_name_wrapper {
   min-height:0!important; height:auto!important; max-height:none!important;
   padding:10px 18px!important; overflow:visible!important;
 }
 body:has(.johessm-home) .pkp_site_name,
 body:has(.johessm-home) .pkp_site_name a,
 body:has(.johessm-home) .pkp_site_name a.is_img {
   height:auto!important; max-height:none!important; overflow:visible!important;
 }
 body:has(.johessm-home) .pkp_site_name img {
   width:min(1100px,96vw)!important; max-width:96vw!important;
   height:auto!important; max-height:none!important;
   object-fit:contain!important; object-position:center!important;
 }
 /* Remove secondary user-navigation stripe, not the primary navigation */
 body:has(.johessm-home) .pkp_navigation_user_wrapper {
   display:none!important; height:0!important; min-height:0!important;
   padding:0!important; margin:0!important; border:0!important;
 }
 body:has(.johessm-home) .pkp_navigation_primary_row {
   margin-bottom:0!important; border-top:0!important;
 }
 body:has(.johessm-home) .pkp_structure_head {
   margin-bottom:0!important; border-bottom:0!important;
 }
}
@media (max-width:991px) {
 body:has(.johessm-home) .pkp_site_name img {
   width:100%!important; height:auto!important; max-height:none!important;
   object-fit:contain!important;
 }
}

/* Final masthead width correction: preserve full 1536:133 aspect ratio */
@media (min-width: 992px) {
 body:has(.johessm-home) .pkp_site_name_wrapper,
 body:has(.johessm-home) .pkp_site_name,
 body:has(.johessm-home) .pkp_site_name a.is_img {
   width:100%!important; max-width:none!important;
   height:auto!important; max-height:none!important;
   overflow:visible!important;
 }
 body:has(.johessm-home) .pkp_site_name_wrapper {
   padding:12px 2%!important;
 }
 body:has(.johessm-home) .pkp_site_name img {
   display:block!important;
   width:min(1600px,96vw)!important;
   max-width:96vw!important;
   height:auto!important;
   max-height:none!important;
   object-fit:contain!important;
   margin:0 auto!important;
 }
}


/* Final adjustment — masthead spans 99% of viewport without cropping */
@media (min-width: 992px) {
  body:has(.johessm-home) .pkp_structure_head,
  body:has(.johessm-home) .pkp_head_wrapper,
  body:has(.johessm-home) .pkp_site_name_wrapper,
  body:has(.johessm-home) .pkp_site_name,
  body:has(.johessm-home) .pkp_site_name a,
  body:has(.johessm-home) .pkp_site_name a.is_img {
    max-width: none !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
  body:has(.johessm-home) .pkp_site_name_wrapper {
    padding: 4px 0.5vw !important;
    box-sizing: border-box !important;
  }
  body:has(.johessm-home) .pkp_site_name img {
    display: block !important;
    width: 99vw !important;
    max-width: 99vw !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    margin: 0 auto !important;
  }
}

/* Navigation and feature icons — comparison with approved homepage, 2026-11-01 */
@media (min-width: 992px) {
  body:has(.johessm-home) .pkp_navigation_primary_row { min-height: 66px !important; padding: 0 8px !important; }
  body:has(.johessm-home) ul.pkp_navigation_primary { flex-wrap: nowrap !important; gap: 0 !important; }
  body:has(.johessm-home) ul.pkp_navigation_primary > li > a {
    font-size: 17px !important; font-weight: 700 !important;
    line-height: 24px !important; padding: 19px 10px !important;
  }
  body:has(.johessm-home) .pkp_navigation_primary .dropdown-menu a { font-size: 16px !important; }
}
@media (min-width: 992px) and (max-width: 1450px) {
  body:has(.johessm-home) ul.pkp_navigation_primary > li > a { font-size: 15px !important; padding: 17px 7px !important; }
  body:has(.johessm-home) ul.pkp_navigation_primary { flex-wrap: wrap !important; }
}

/* Actual vector pictograms for the five journal features; no letter badges. */
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div {display:flex!important; flex-direction:column!important; align-items:center!important; justify-content:center!important; gap:9px!important; padding:18px 10px!important;}
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div > div:first-child {font-size:0!important; line-height:0!important; width:62px!important; height:62px!important; display:block!important; margin:0 auto!important; background-color:transparent!important; border:0!important; border-radius:0!important; background-repeat:no-repeat!important; background-position:center!important; background-size:contain!important;}
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div > div:first-child::after {content:none!important;display:none!important;}
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div:nth-child(1) > div:first-child {background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%2309254f%22%20stroke-width%3D%223.5%22%20stroke-linejoin%3D%22round%22%20stroke-linecap%3D%22round%22%3E%3Crect%20x%3D%2213%22%20y%3D%2224%22%20width%3D%2238%22%20height%3D%2233%22%20rx%3D%225%22%2F%3E%3Cpath%20d%3D%22M23%2024v-8a9%209%200%200%201%2018%200v7%22%2F%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2239%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M32%2042v7%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")!important;}
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div:nth-child(2) > div:first-child {background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%2309254f%22%20stroke-width%3D%223.5%22%20stroke-linejoin%3D%22round%22%20stroke-linecap%3D%22round%22%3E%3Cpath%20d%3D%22M32%205%2053%2013v16c0%2015-10%2024-21%2030C21%2053%2011%2044%2011%2029V13Z%22%2F%3E%3Cpath%20d%3D%22m21%2032%208%208%2015-17%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")!important;}
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div:nth-child(3) > div:first-child {background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%2309254f%22%20stroke-width%3D%223.5%22%20stroke-linejoin%3D%22round%22%20stroke-linecap%3D%22round%22%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2218%22%20r%3D%229%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2225%22%20r%3D%227%22%2F%3E%3Ccircle%20cx%3D%2249%22%20cy%3D%2225%22%20r%3D%227%22%2F%3E%3Cpath%20d%3D%22M18%2053V43a14%2014%200%200%201%2028%200v10Z%22%2F%3E%3Cpath%20d%3D%22M6%2051V41a10%2010%200%200%201%209-10M58%2051V41a10%2010%200%200%200-9-10%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")!important;}
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div:nth-child(4) > div:first-child {background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%2309254f%22%20stroke-width%3D%223.5%22%20stroke-linejoin%3D%22round%22%20stroke-linecap%3D%22round%22%3E%3Crect%20x%3D%228%22%20y%3D%2239%22%20width%3D%2210%22%20height%3D%2218%22%2F%3E%3Crect%20x%3D%2226%22%20y%3D%2228%22%20width%3D%2210%22%20height%3D%2229%22%2F%3E%3Crect%20x%3D%2244%22%20y%3D%2216%22%20width%3D%2210%22%20height%3D%2241%22%2F%3E%3Cpath%20d%3D%22m13%2026%2016-12%2011%205%2012-13%22%2F%3E%3Cpath%20d%3D%22M43%206h9v9%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")!important;}
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div:nth-child(5) > div:first-child {background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%2309254f%22%20stroke-width%3D%223.5%22%20stroke-linejoin%3D%22round%22%20stroke-linecap%3D%22round%22%3E%3Cpath%20d%3D%22M32%204%2058%2029%2032%2059%206%2029Z%22%2F%3E%3Cpath%20d%3D%22M6%2029h52M20%2011l-7%2018%2019%2030%2019-30-7-18M13%2029h38%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")!important;}
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div strong {font-size:18px!important;line-height:1.3!important;text-align:center!important;}
@media(max-width:700px){body:has(.johessm-home) .johessm-home > section:first-of-type > div > div > div:first-child{width:48px!important;height:48px!important;}body:has(.johessm-home) .johessm-home > section:first-of-type > div > div strong{font-size:15px!important;}}
body:has(.johessm-home) .johessm-home > div:first-of-type aside > a {font-size:18px!important;line-height:1.5!important;padding:19px 22px!important;}

/* Larger, clearer homepage labels and panel text — 1 November 2026 */
body:has(.johessm-home) .johessm-home > section:first-of-type > div > div strong {
  font-size: 23px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}
body:has(.johessm-home) .johessm-home > div:first-of-type h2 {
  font-size: 28px !important;
  line-height: 1.3 !important;
}
body:has(.johessm-home) .johessm-home > div:first-of-type p,
body:has(.johessm-home) .johessm-home > div:first-of-type article,
body:has(.johessm-home) .johessm-home > div:first-of-type section {
  font-size: 19px !important;
  line-height: 1.6 !important;
}
body:has(.johessm-home) .johessm-home > div:first-of-type aside > a {
  font-size: 21px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}
@media (max-width: 700px) {
  body:has(.johessm-home) .johessm-home > section:first-of-type > div > div strong {font-size: 18px !important;}
  body:has(.johessm-home) .johessm-home > div:first-of-type h2 {font-size: 24px !important;}
}


/* JoHESSM approved-homepage refinements: panels, navigation and footer */
body:has(.johessm-home) .jh-panels {
 display:grid!important;grid-template-columns:1.1fr 1fr .95fr!important;
 max-width:1500px!important;width:100%!important;
 margin:0 auto!important;padding:44px 3%!important;gap:24px!important;align-items:stretch!important;
}
body:has(.johessm-home) .jh-panel {
 background:#fff!important;border:1px solid #dce4ee!important;border-radius:10px!important;
 box-shadow:0 5px 18px rgba(6,29,58,.09)!important;overflow:hidden!important;min-width:0!important;
}
body:has(.johessm-home) .jh-panel>h2 {
 background:#08264e!important;color:#fff!important;border-bottom:4px solid #d8aa47!important;
 font-size:25px!important;line-height:1.3!important;padding:18px 22px!important;margin:0!important;
}
body:has(.johessm-home) .jh-latest>div {padding:26px!important;}
body:has(.johessm-home) .jh-empty-articles {min-height:235px;display:flex;flex-direction:column;justify-content:center;}
body:has(.johessm-home) .jh-article-symbol {font-size:55px;color:#c8a055;line-height:1.1;}
body:has(.johessm-home) .jh-empty-articles h3 {font-size:23px;color:#09284d;margin:15px 0 4px;}
body:has(.johessm-home) .jh-empty-articles p {font-size:18px!important;color:#3e526b;margin:8px 0!important;}
body:has(.johessm-home) .jh-empty-articles .jh-small {font-size:16px!important;color:#67798e;}
body:has(.johessm-home) .jh-link {font-size:18px;color:#0c527f;font-weight:700;text-decoration:none;}
body:has(.johessm-home) .jh-issue>div {padding:24px!important;text-align:center;}
body:has(.johessm-home) .jh-cover {
 position:relative;isolation:isolate;overflow:hidden;min-height:270px;width:min(100%,400px);
 margin:auto;border-radius:9px;background:radial-gradient(circle at 75% 40%,#2c6997 0%,#103e6c 36%,#04162f 75%);
 display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;
 border:3px solid #d6ad54;box-shadow:0 10px 25px #09264b33;
}
body:has(.johessm-home) .jh-cover:before {
 content:"";position:absolute;width:270px;height:270px;border:3px solid #dfba68;
 border-radius:50%;right:-75px;top:-70px;transform:rotate(-28deg);opacity:.75;z-index:-1;
}
body:has(.johessm-home) .jh-cover:after {
 content:"";position:absolute;width:120%;height:90px;left:-10%;bottom:-48px;
 border-top:13px solid #d8ad4f;border-radius:50%;transform:rotate(-10deg);opacity:.85;
}
body:has(.johessm-home) .jh-cover-globe {font-size:95px;line-height:1;color:#d5b56f;text-shadow:0 0 22px #d9bc704d;}
body:has(.johessm-home) .jh-cover-name {font:700 37px Georgia,serif;color:#e5bd70;margin:8px 0;}
body:has(.johessm-home) .jh-cover-caption {font-size:15px;line-height:1.5;color:white;}
body:has(.johessm-home) .jh-issue-description {font-size:17px!important;margin:19px 0!important;}
body:has(.johessm-home) .jh-issue-button {display:inline-block;padding:13px 26px;background:#e2b24f;color:#09213f;
 font-size:17px;font-weight:700;text-decoration:none;border-radius:28px;}
body:has(.johessm-home) .jh-actions {padding-bottom:16px!important;}
body:has(.johessm-home) .jh-actions>a {
 display:flex!important;align-items:center!important;gap:15px!important;
 background:#08264e!important;color:#fff!important;border-left:5px solid #dca83c!important;
 border-radius:7px!important;padding:19px 19px!important;margin:15px 18px!important;
 font-size:20px!important;line-height:1.4!important;text-decoration:none!important;font-weight:700!important;
}
body:has(.johessm-home) .jh-action-icon {width:35px;flex:0 0 35px;text-align:center;font-size:30px;color:#fff;line-height:1;}
body:has(.johessm-home) .jh-action-arrow {margin-left:auto;color:#e6bc66;font-size:30px;}
body:has(.johessm-home) .jh-footer {
 position:relative!important;overflow:hidden!important;isolation:isolate;
 min-height:180px!important;padding:85px 5% 35px!important;
 background:linear-gradient(110deg,#03142e,#103c6b,#04152f)!important;
 color:#fff!important;border-top:0!important;
}
body:has(.johessm-home) .jh-footer-wave {
 position:absolute;top:-82px;left:-5%;width:110%;height:125px;
 border-radius:0 0 50% 50%;background:#fff;border-bottom:12px solid #d5a84b;transform:rotate(-1.5deg);z-index:-1;
}
body:has(.johessm-home) .jh-footer-map {position:absolute;right:14%;top:34px;font-size:140px;opacity:.12;color:#fff;z-index:-1;}
body:has(.johessm-home) .jh-footer>div:last-child {max-width:1500px!important;}
/* Larger menu and gold Home item on the homepage only */
@media(min-width:992px) {
 body:has(.johessm-home) ul.pkp_navigation_primary>li>a {
  font-size:clamp(15px,1.05vw,19px)!important;font-weight:700!important;padding:18px 11px!important;
 }
 body:has(.johessm-home) ul.pkp_navigation_primary>li:first-child>a {
  color:#e6ba61!important;border-bottom:4px solid #e6ba61!important;
 }
}
@media(max-width:1050px) {
 body:has(.johessm-home) .jh-panels {grid-template-columns:1fr 1fr!important;}
 body:has(.johessm-home) .jh-actions {grid-column:1/-1;}
}
@media(max-width:650px) {
 body:has(.johessm-home) .jh-panels {grid-template-columns:1fr!important;padding:24px 4%!important;}
 body:has(.johessm-home) .jh-actions {grid-column:auto;}
 body:has(.johessm-home) .jh-panel>h2 {font-size:22px!important;}
 body:has(.johessm-home) .jh-actions>a {font-size:18px!important;}
}

/* Navigation colour refinement only — original homepage layout preserved */
@media (min-width: 992px) {
  body:has(.johessm-home) ul.pkp_navigation_primary > li > a:hover,
  body:has(.johessm-home) ul.pkp_navigation_primary > li > a:focus,
  body:has(.johessm-home) ul.pkp_navigation_primary > li:hover > a,
  body:has(.johessm-home) ul.pkp_navigation_primary > li:focus-within > a {
    color: #e6ba61 !important;
  }
  body:has(.johessm-home) ul.pkp_navigation_primary > li:first-child > a,
  body:has(.johessm-home) ul.pkp_navigation_primary > li:first-child > a:hover,
  body:has(.johessm-home) ul.pkp_navigation_primary > li:first-child > a:focus {
    color: #e6ba61 !important;
  }
}

/* Dropdown alignment only: keep submenus below their parent menu label. */
@media (min-width: 992px) {
  body:has(.johessm-home) ul.pkp_navigation_primary > li {
    position: relative !important;
  }
  body:has(.johessm-home) ul.pkp_navigation_primary > li > ul,
  body:has(.johessm-home) ul.pkp_navigation_primary > li > .dropdown-menu {
    top: calc(100% - 25px) !important;
    margin-top: 0 !important;
    bottom: auto !important;
  }
  /* Keep the small gap hoverable so the dropdown does not disappear. */
  body:has(.johessm-home) ul.pkp_navigation_primary > li > ul::before,
  body:has(.johessm-home) ul.pkp_navigation_primary > li > .dropdown-menu::before {
    content: "";
    position: absolute;
    height: 0;
    top: 0;
    left: 0;
    right: 0;
  }
}

/* Restore OJS native Register / Login in masthead top-right.
   OJS displays account menu instead when a user is signed in. */
@media (min-width: 992px) {
  body:has(.johessm-home) .pkp_navigation_user_wrapper {
    display: block !important;
    position: absolute !important;
    top: 5px !important;
    right: 18px !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    z-index: 100 !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
  }
  body:has(.johessm-home) .pkp_navigation_user_wrapper a {
    color: #09254f !important;
    font-weight: 700 !important;
  }
}

/* Readable account navigation, preserving OJS authentication and dropdown. */
@media (min-width: 992px) {
  body:has(.johessm-home) .pkp_navigation_user_wrapper .pkp_navigation_user > li > a {
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
    padding: 10px 12px !important;
  }
  /* Visual label only: retain original username and working dropdown. */
  body:has(.johessm-home) .pkp_navigation_user_wrapper .pkp_navigation_user > li.profile > a {
    font-size: 0 !important;
  }
  body:has(.johessm-home) .pkp_navigation_user_wrapper .pkp_navigation_user > li.profile > a::before {
    content: "My Account";
    font-size: 18px !important;
    font-weight: 700 !important;
  }
}
