/**
 * JCC Theme — "Modern" layout
 * Loaded after jcc.css and jcc-academic.css when
 * Appearance > Theme > JCC layout = Modern.
 *
 * A card-based landing page: hero banner, article cards, information
 * cards, rounded buttons and soft shadows — in the JCC navy/gold palette.
 */

:root {
  --jcc-card-shadow: 0 2px 10px rgba(6,16,31,.08);
  --jcc-card-shadow-hover: 0 10px 28px rgba(6,16,31,.16);
  --jcc-radius: 10px;
}

/* ---------- Page canvas ---------- */
html, body { background: #F2F5F9; }
.pkp_structure_content { background: transparent; }
@media (min-width: 992px) {
  .pkp_structure_main {
    background: #fff;
    border-radius: var(--jcc-radius);
    box-shadow: var(--jcc-card-shadow);
    padding: 2.5rem 2.5rem 3rem !important;
    margin-bottom: 2rem;
  }
}

/* ---------- Hero: homepage image as a banner ---------- */
.page_index_journal .homepage_image {
  position: relative;
  margin-left: -2.5rem !important;
  margin-right: -2.5rem !important;
  margin-top: -2.5rem !important;
  margin-bottom: 2rem !important;
  overflow: hidden;
  border-radius: var(--jcc-radius) var(--jcc-radius) 0 0;
}
.page_index_journal .homepage_image img { width: 100%; height: auto; }
@media (max-width: 991px) {
  .page_index_journal .homepage_image { margin: 0 0 1.5rem !important; border-radius: var(--jcc-radius); }
}

/* ---------- Section headings ---------- */
.page_index_journal > section > h2,
.page_index_journal .current_issue > h2 {
  font-family: var(--jcc-serif);
  font-size: 1.5rem;
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 1.2rem !important;
}
.page_index_journal > section > h2::after,
.page_index_journal .current_issue > h2::after {
  position: static !important;
  display: block;
  margin-top: .55rem;
  width: 64px;
  height: 4px;
  border-radius: 2px;
  background: var(--jcc-gold);
}

/* ---------- Current issue card ---------- */
.obj_issue_toc .heading {
  background: #fff;
  border: 1px solid #E4E9F0;
  border-radius: var(--jcc-radius);
  box-shadow: var(--jcc-card-shadow);
  padding: 1.5rem;
  margin-bottom: 2rem;
}
.obj_issue_toc .heading .cover img { border-radius: 6px; }

/* ---------- Article cards ---------- */
@media (min-width: 992px) {
  .cmp_article_list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
}
.cmp_article_list > li {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #E4E9F0;
  border-top: 3px solid var(--jcc-navy);
  border-radius: var(--jcc-radius);
  box-shadow: var(--jcc-card-shadow);
  padding: 1.15rem 1.25rem 1.25rem !important;
  margin: 0 0 1.25rem !important;
  transition: box-shadow .2s, transform .2s, border-color .2s;
}
@media (min-width: 992px) { .cmp_article_list > li { margin-bottom: 0 !important; } }
.cmp_article_list > li:hover { box-shadow: var(--jcc-card-shadow-hover); transform: translateY(-2px); border-top-color: var(--jcc-gold); }
.obj_article_summary { display: flex; flex-direction: column; height: 100%; }
.obj_article_summary > .title { font-size: 1.1rem !important; line-height: 1.4; }
.obj_article_summary .meta { margin-top: auto; }
.obj_article_summary .galleys_links { margin-top: .8rem; }
.obj_galley_link { background: var(--jcc-navy); border-color: var(--jcc-navy); color: var(--jcc-ivory) !important; }
.obj_galley_link:hover, .obj_galley_link:focus { background: var(--jcc-gold); border-color: var(--jcc-gold); color: var(--jcc-navy) !important; }

/* ---------- Issue summaries (Archives) ---------- */
.obj_issue_summary {
  background: #fff;
  border: 1px solid #E4E9F0;
  border-radius: var(--jcc-radius);
  box-shadow: var(--jcc-card-shadow);
  padding: 1.25rem;
  margin-bottom: 1.25rem;
}

/* ---------- Sidebar widgets as cards ---------- */
.pkp_structure_sidebar .pkp_block {
  background: #fff;
  border: 1px solid #E4E9F0;
  border-radius: var(--jcc-radius);
  box-shadow: var(--jcc-card-shadow);
  padding: 1.1rem 1.25rem 1.25rem !important;
  margin-bottom: 1.25rem;
}
.pkp_structure_sidebar .pkp_block .title:not(.pkp_screen_reader),
.jcc-widget__title,
.jcc-menu__title {
  border-top: 0 !important;
  border-bottom: 1px solid #E4E9F0 !important;
  padding: 0 0 .6rem !important;
  margin-bottom: .8rem !important;
}
.jcc-widget--cta { background: transparent; padding: 0; border-top: 0; }
.jcc-btn { border-radius: 999px; }
.jcc-menu a { border-left: 0 !important; border-radius: 6px; padding-left: .6rem !important; }
.jcc-menu li { border-bottom: 0 !important; }
.jcc-menu a:hover, .jcc-menu a:focus { background: #EEF2F8 !important; }

/* Facts strip picks up the card look too */
.jcc-facts { border: 0; background: transparent; gap: 1rem; }
.jcc-facts > div { border: 1px solid #E4E9F0; border-radius: var(--jcc-radius); box-shadow: var(--jcc-card-shadow); }

/* Card components get the modern shadow + lift */
.jcc-card, .jcc-people--cards li, .jcc-logos a { box-shadow: var(--jcc-card-shadow); }
.jcc-card:hover, .jcc-card:focus { box-shadow: var(--jcc-card-shadow-hover); transform: translateY(-2px); }
