/*
PRIME CREST PUBLISHERS — SITE MASTER THEME
Publisher homepage build v1
OJS 3.4 / Default Theme
------------------------------------------------------------
Applies to the main publisher/site homepage.
Does not alter journal-specific uploaded stylesheets.
*/

:root {
  --pc-navy: #103f60;
  --pc-deep: #082b45;
  --pc-gold: #c89a4b;
  --pc-gold-soft: #ead6ad;
  --pc-text: #243443;
  --pc-muted: #64748b;
  --pc-border: #dce5eb;
  --pc-soft: #f6f8fa;
  --pc-white: #ffffff;
}

html { scroll-behavior: smooth; }

body {
  background: #fff !important;
  color: var(--pc-text);
  line-height: 1.6;
}

.pkp_structure_page {
  background: #fff !important;
  max-width: none !important;
}

/* =========================================================
   HEADER / PUBLISHER BANNER
   ========================================================= */

.pkp_structure_head {
  background: var(--pc-deep) !important;
  border: 0 !important;
}

.pkp_navigation_user_wrapper {
  background: var(--pc-deep) !important;
  min-height: 30px;
}

/* Remove the old tall empty OJS masthead */
.pkp_site_name_wrapper {
  background: var(--pc-deep) !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

.pkp_site_name {
  width: min(100% - 32px, 1500px) !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  line-height: 0 !important;
}

.pkp_site_name > a,
.pkp_site_name .is_img {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Show the complete 2048×760 banner at a useful desktop size */
.pkp_site_name img,
.pkp_site_name .is_img img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  max-height: 560px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}

/* Text fallback */
.pkp_site_name .is_text {
  display: block !important;
  color: #fff !important;
  font-size: 2rem !important;
  font-weight: 700;
  line-height: 1.2 !important;
  padding: 32px 20px !important;
  text-align: center;
}

/* =========================================================
   PRIMARY NAVIGATION
   ========================================================= */

.pkp_navigation_primary_wrapper {
  background: var(--pc-deep) !important;
  border-top: 1px solid rgba(200,154,75,.45) !important;
  border-bottom: 0 !important;
  box-shadow: 0 3px 12px rgba(2,24,43,.13);
}

.pkp_navigation_primary {
  max-width: 1400px !important;
  margin: 0 auto !important;
  padding: 0 10px !important;
}

.pkp_navigation_primary > li > a {
  color: #fff !important;
  font-size: .94rem !important;
  font-weight: 650 !important;
  padding: 14px 17px !important;
  white-space: nowrap;
}

.pkp_navigation_primary > li > a:hover,
.pkp_navigation_primary > li > a:focus {
  color: #fff !important;
  background: rgba(255,255,255,.08) !important;
}

.pkp_navigation_primary ul {
  background: #fff !important;
  border: 1px solid var(--pc-border) !important;
  box-shadow: 0 14px 32px rgba(15,23,42,.14) !important;
}

.pkp_navigation_primary ul a {
  color: var(--pc-text) !important;
}

.pkp_navigation_search_wrapper {
  background: transparent !important;
}

.pkp_navigation_search_wrapper a {
  color: #fff !important;
}

/* =========================================================
   MAIN SITE WIDTH
   ========================================================= */

.pkp_structure_content {
  width: min(100% - 40px, 1380px) !important;
  max-width: 1380px !important;
  margin: 0 auto !important;
  padding-top: 36px !important;
}

.pkp_structure_main {
  width: 100% !important;
  max-width: none !important;
  padding: 0 0 55px !important;
}

.pkp_structure_sidebar {
  padding-top: 0 !important;
}

/* =========================================================
   SITE CONTACT / INTRO AREA
   ========================================================= */

.page_index_site .about_site,
.page_index_site .additional_content,
.pkp_page_index .additional_content {
  font-size: 1rem;
  color: var(--pc-text);
}

.page_index_site h2,
.page_index_site h3,
.page h2,
.page h3 {
  color: var(--pc-deep) !important;
  line-height: 1.25;
}

.page_index_site a,
.pkp_structure_content a {
  color: #0c557c;
}

.page_index_site a:hover,
.pkp_structure_content a:hover {
  color: #083a57;
}

/* =========================================================
   JOURNAL DIRECTORY
   OJS site index journal list
   ========================================================= */

.page_index_site .journals,
.journals {
  margin-top: 26px !important;
}

.page_index_site .journals > h2,
.journals > h2 {
  font-size: 1.7rem !important;
  margin: 0 0 24px !important;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--pc-gold-soft);
}

.page_index_site .journals > ul,
.journals > ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px !important;
}

.page_index_site .journals > ul > li,
.journals > ul > li {
  position: relative;
  margin: 0 !important;
  padding: 24px !important;
  border: 1px solid var(--pc-border) !important;
  border-top: 4px solid var(--pc-gold) !important;
  border-radius: 10px;
  background: #fff !important;
  box-shadow: 0 8px 26px rgba(15,23,42,.065);
  overflow: hidden;
}

/* Journal thumbnail/cover */
.page_index_site .journals .thumb,
.journals .thumb {
  float: left !important;
  width: 150px !important;
  margin: 0 24px 16px 0 !important;
}

.page_index_site .journals .thumb img,
.journals .thumb img {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-width: 150px !important;
  border-radius: 3px;
  box-shadow: 0 7px 18px rgba(15,23,42,.12);
}

/* Journal title */
.page_index_site .journals h3,
.journals h3 {
  margin: 0 0 10px !important;
  color: var(--pc-deep) !important;
  font-size: 1.12rem !important;
  line-height: 1.3 !important;
  font-weight: 750 !important;
}

.page_index_site .journals h3 a,
.journals h3 a {
  color: var(--pc-deep) !important;
  text-decoration: none !important;
}

.page_index_site .journals h3 a:hover,
.journals h3 a:hover {
  color: #0c628d !important;
}

/* Journal description */
.page_index_site .journals .description,
.journals .description {
  color: #3e4d5c !important;
  font-size: .94rem !important;
  line-height: 1.65 !important;
}

.page_index_site .journals .description p,
.journals .description p {
  margin: 0 0 12px !important;
}

/* Avoid excessively narrow paragraphs beside cover */
.page_index_site .journals .body,
.journals .body {
  min-width: 0;
}

/* Journal links */
.page_index_site .journals .links,
.journals .links {
  clear: both;
  padding-top: 12px !important;
  margin-top: 8px !important;
}

.page_index_site .journals .links li,
.journals .links li {
  display: inline-block;
  margin: 0 8px 7px 0 !important;
}

.page_index_site .journals .links a,
.journals .links a {
  display: inline-block;
  padding: 8px 13px !important;
  border: 1px solid #c7d4dc;
  border-radius: 5px;
  background: #fff;
  color: var(--pc-deep) !important;
  font-weight: 650;
  text-decoration: none !important;
}

.page_index_site .journals .links a:hover,
.journals .links a:hover {
  background: var(--pc-deep);
  border-color: var(--pc-deep);
  color: #fff !important;
}

/* =========================================================
   FOOTER
   ========================================================= */

.pkp_structure_footer_wrapper {
  background: var(--pc-deep) !important;
  border-top: 4px solid var(--pc-gold) !important;
}

.pkp_structure_footer {
  max-width: 1380px !important;
  margin: 0 auto !important;
  color: rgba(255,255,255,.88) !important;
}

.pkp_structure_footer a {
  color: #fff !important;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1100px) {
  .page_index_site .journals > ul,
  .journals > ul {
    grid-template-columns: 1fr !important;
  }

  .pkp_navigation_primary > li > a {
    padding-left: 12px !important;
    padding-right: 12px !important;
    font-size: .89rem !important;
  }
}

@media (max-width: 767px) {
  .pkp_site_name {
    width: 100% !important;
  }

  .pkp_site_name img,
  .pkp_site_name .is_img img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .pkp_structure_content {
    width: calc(100% - 28px) !important;
    padding-top: 24px !important;
  }

  .page_index_site .journals > ul > li,
  .journals > ul > li {
    padding: 18px !important;
  }

  .page_index_site .journals .thumb,
  .journals .thumb {
    float: none !important;
    width: 100% !important;
    margin: 0 0 18px !important;
    text-align: center;
  }

  .page_index_site .journals .thumb img,
  .journals .thumb img {
    width: auto !important;
    max-width: 180px !important;
    margin: 0 auto !important;
  }
}


/* =========================================================
   V1.1 — FULL-WIDTH PUBLISHER BANNER ONLY
   Keeps V1 navigation/content/cards unchanged.
   ========================================================= */

.pkp_site_name {
  width: min(calc(100% - 40px), 1450px) !important;
  max-width: 1450px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 !important;
}

.pkp_site_name > a,
.pkp_site_name .is_img {
  display: block !important;
  width: 100% !important;
  max-width: 1450px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.pkp_site_name img,
.pkp_site_name .is_img img {
  display: block !important;
  width: 100% !important;
  max-width: 1450px !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}

@media (max-width: 767px) {
  .pkp_site_name,
  .pkp_site_name > a,
  .pkp_site_name .is_img,
  .pkp_site_name img,
  .pkp_site_name .is_img img {
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* =========================================================
   V1.2 — IJBII-STYLE HEADER POSITIONING
   Keep full banner width, but add safe top breathing room
   so the artwork/title is never clipped by the OJS user bar.
   ========================================================= */

.pkp_structure_head {
  overflow: visible !important;
}

.pkp_site_name_wrapper {
  padding-top: 38px !important;
  overflow: visible !important;
}

.pkp_site_name {
  position: relative !important;
  top: 0 !important;
  overflow: visible !important;
}

.pkp_site_name > a,
.pkp_site_name .is_img {
  overflow: visible !important;
}

.pkp_site_name img,
.pkp_site_name .is_img img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* Keep the live navigation directly beneath the artwork */
.pkp_navigation_primary_wrapper {
  margin-top: 0 !important;
}

/* Desktop: enough clearance from admin/user controls */
@media (min-width: 768px) {
  .pkp_site_name_wrapper {
    padding-top: 42px !important;
  }
}

/* Mobile: smaller clearance */
@media (max-width: 767px) {
  .pkp_site_name_wrapper {
    padding-top: 18px !important;
  }
}

/* ===== PRIME CREST HOMEPAGE CONTENT — V1.3 ===== */
.page_index_site .pkp_structure_main{padding-top:42px!important}
.page_index_site .about_site{position:relative;max-width:1320px!important;margin:0 auto 38px!important;padding:38px 42px 34px!important;background:linear-gradient(135deg,rgba(247,250,252,.98),#fff)!important;border:1px solid #d9e3e9!important;border-left:6px solid #c89a4b!important;border-radius:12px!important;box-shadow:0 10px 30px rgba(8,43,69,.07)!important;color:#405064!important;overflow:hidden}
.page_index_site .about_site:after{content:"";position:absolute;right:-55px;top:-55px;width:180px;height:180px;border-radius:50%;background:rgba(200,154,75,.055);pointer-events:none}
.page_index_site .about_site p{max-width:1180px!important;margin:0 0 16px!important;font-size:1.02rem!important;line-height:1.78!important;color:#46566a!important}
.page_index_site .about_site p:first-child{margin:0 0 18px!important;color:#0b3d5b!important;font-family:Georgia,"Times New Roman",serif!important;font-size:2rem!important;line-height:1.2!important;font-weight:700!important}
.page_index_site .about_site p:last-child{margin-top:22px!important;margin-bottom:0!important;color:#a87727!important;font-size:1.08rem!important;font-weight:700!important;letter-spacing:.035em!important}
.page_index_site .journals{max-width:1320px!important;margin:0 auto!important;padding-top:4px!important}
.page_index_site .journals:before{content:"Explore Our Journals";display:block;margin:0 0 24px!important;color:#0b3d5b!important;font-family:Georgia,"Times New Roman",serif!important;font-size:2rem!important;line-height:1.2!important;font-weight:700!important}
.page_index_site .journals>ul{margin-top:0!important;gap:26px!important}
.page_index_site .journals>ul>li{padding:26px!important;border:1px solid #d8e2e8!important;border-top:4px solid #c89a4b!important;border-radius:12px!important;background:#fff!important;box-shadow:0 8px 24px rgba(8,43,69,.065)!important;transition:transform .18s ease,box-shadow .18s ease!important}
.page_index_site .journals>ul>li:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(8,43,69,.10)!important}
.page_index_site .journals .thumb{width:145px!important;margin:0 24px 18px 0!important}
.page_index_site .journals .thumb img{max-width:145px!important;border:1px solid #e1e7eb;box-shadow:0 7px 18px rgba(15,23,42,.10)!important}
.page_index_site .journals h3{color:#0b3d5b!important;font-size:1.16rem!important;line-height:1.35!important}
.page_index_site .journals .description{color:#46566a!important;font-size:.95rem!important;line-height:1.67!important}
.page_index_site .journals .description strong{color:#243746!important}
.page_index_site .journals .links a{padding:9px 14px!important;border:1px solid #0b3d5b!important;border-radius:5px!important;color:#0b3d5b!important;font-weight:700!important;background:#fff!important}
.page_index_site .journals .links a:hover,.page_index_site .journals .links a:focus{color:#fff!important;background:#0b3d5b!important}
@media(max-width:1100px){.page_index_site .about_site,.page_index_site .journals{max-width:100%!important}}
@media(max-width:767px){.page_index_site .pkp_structure_main{padding-top:24px!important}.page_index_site .about_site{padding:26px 22px 24px!important;border-left-width:4px!important}.page_index_site .about_site p:first-child,.page_index_site .journals:before{font-size:1.55rem!important}.page_index_site .journals .thumb{width:100%!important;margin:0 0 18px!important}.page_index_site .journals .thumb img{max-width:170px!important}}


/* =========================================================
   V1.4 — HOMEPAGE TYPOGRAPHY REFINEMENT
   Keeps approved banner, navigation and journal grid intact.
   ========================================================= */

/* Tighter, more confident publisher welcome panel */
.page_index_site .about_site {
  padding: 30px 38px 27px !important;
  margin-bottom: 34px !important;
}

/* Welcome heading */
.page_index_site .about_site p:first-child {
  margin: 0 0 15px !important;
  color: #0b3d5b !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 2.25rem !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
}

/* Main publisher copy */
.page_index_site .about_site p:not(:first-child):not(:last-child) {
  margin: 0 0 13px !important;
  max-width: 1160px !important;
  color: #46566a !important;
  font-size: 1.08rem !important;
  line-height: 1.68 !important;
}

/* Closing brand statement */
.page_index_site .about_site p:last-child {
  margin: 19px 0 0 !important;
  color: #a87727 !important;
  font-size: 1.16rem !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  letter-spacing: .045em !important;
}

/* Stronger journal-directory introduction */
.page_index_site .journals::before {
  margin-bottom: 5px !important;
  font-size: 2.15rem !important;
}

/* Subtitle placed visually beneath Explore Our Journals */
.page_index_site .journals > ul::before {
  content: "Five distinct journals. One commitment to rigorous, accessible and responsible scholarly publishing.";
  display: block !important;
  grid-column: 1 / -1 !important;
  margin: -6px 0 -4px !important;
  color: #667789 !important;
  font-size: 1.02rem !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}

/* Hide the earlier generated trailing subtitle so it does not duplicate */
.page_index_site .journals::after {
  content: none !important;
  display: none !important;
}

@media (max-width: 767px) {
  .page_index_site .about_site {
    padding: 24px 21px 22px !important;
  }

  .page_index_site .about_site p:first-child {
    font-size: 1.65rem !important;
  }

  .page_index_site .about_site p:not(:first-child):not(:last-child) {
    font-size: 1rem !important;
  }

  .page_index_site .about_site p:last-child {
    font-size: 1.05rem !important;
  }

  .page_index_site .journals::before {
    font-size: 1.65rem !important;
  }
}
