/* Style for page headings */
.page-header h1,
.pkp_site_name, 
.pkp_structure_head h1 {
    background-color: #1588F4;   /* SMU blue */
    color: #ffffff;              /* white text for contrast */
    padding: 10px 15px;          /* spacing around text */
    border-radius: 4px;          /* optional rounded corners */
    font-weight: bold;
}

/* Center the whole carousel block */
#homepageCarousel {
 /* position: relative;
  width: 100vw;
  max-width: 1250px;
  margin: 0 auto;
  height: 500px;
  overflow: hidden;
  display: inline-grid;           /* enable flexbox */
  align-items: center;     /* vertical centering */
  justify-content: center; /* horizontal centering */
}

#homepageCarousel .item img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;     /* show full image without cropping */
}



@media (min-width: 1250px) {
    .col-md-8 {
        width: 100%;
    }
}

.navbar, .header_view {
    background-image: -webkit-linear-gradient(#4b7791, #2fa4e7 60%, #1d9ce5);
    background-image: -o-linear-gradient(#54b4eb, #2fa4e7 60%, #1d9ce5);
    background-image: linear-gradient(#2e576f, #2fa4e7 60%, #1d9ce5);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff54b4eb', endColorstr='#ff1d9ce5', GradientType=0);
    background-repeat: no-repeat;
    border-bottom: 1px solid #178acc;
    filter: none;
    -webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
    box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
}
.pkp_page_index .journal-description, .pkp_page_index .additional_content {
    margin-top: 2em;
    margin-bottom: 2em;
    font-size: 15px;
}

.site-footer {
  background-color: #f8f8f8;
  padding: 30px 0;
  border-top: 1px solid #ddd;
  font-size: 0.95em;
  color: #333;
}

.site-footer h4 {
  margin-bottom: 10px;
  font-weight: bold;
}

.site-footer p {
  line-height: 1.6;
}

.site-footer a {
  color: #006400; /* institutional green */
  text-decoration: none;
}

.site-footer a:hover {
  text-decoration: underline;
  }
  
  @media (min-width: 1250px) {
    .col-md-8 {
        width: 100%;
    }
}
.pkp_page_index .journal-description, .pkp_page_index .additional_content {
    margin-top: 2em;
    margin-bottom: 2em;
    font-size: 16px;
    text-align: justify;
}

.carousel-inner img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  height: auto;
}

.navbar,
.header_view {
  background-image: linear-gradient(#2e576f, #2fa4e7 60%, #1d9ce5);
  background-repeat: no-repeat;
  border-bottom: 1px solid #178acc;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);

  position: fixed;
  top: 0;
  left: 0;
  width: 100%;        /* expand full width */
  z-index: 1050;      /* keep above other elements */
}

/* Push content down so header doesn't overlap */
body {
  padding-top: 120px; /* adjust to match header height */
}
/* Unified Full-width Footer */
.site-footer,
.pkp_structure_footer {
  position: relative;
  left: 0;
  right: 0;
  width: 100vw;                          /* span viewport */
  margin-left: calc(-50vw + 50%);        /* cancel parent centering */
  background-image: linear-gradient(#2e576f, #2fa4e7 60%, #1d9ce5);
  background-repeat: no-repeat;
  border-top: 1px solid #178acc;
  border-bottom: 1px solid #178acc;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
  color: #fff;
  padding: 0px 0;                       /* consistent vertical spacing */
  margin-top: 40px;                      /* space above footer */
  text-align: left;
  box-sizing: border-box;
}

/* Constrain inner content */
.site-footer .container {
  max-width: 1200px;                     /* typical Bootstrap/OJS width */
  margin: 0 auto;
  padding: 0 20px;
}

/* Row and column spacing */
.site-footer .row {
  margin: 0;
  width: 100%;
}
.site-footer .row > div {
  margin-bottom: 20px;                   /* spacing between columns */
}
.site-footer .col-md-6 {
  padding: 20px;
}

/* Footer sections */
.site-footer .footer-top {
  padding: 5px 50px;
}
.site-footer .footer-top .row {
  align-items: flex-start;
}
.site-footer .footer-top h4 {
  margin: 10px 0 15px;
  color: #ffffff !important;
}
.site-footer .footer-top p {
  margin-bottom: 0;
}

.site-footer .footer-divider {
  border-top: 1px solid #178acc;
  margin: 0 20px;
}

.site-footer .footer-bottom {
  padding: 15px 20px;
  font-size: 0.9em;
  background: #25485c;                   /* slightly darker for contrast */
}

/* Typography */
.site-footer h4 {
  margin-bottom: 15px;
}
.site-footer p {
  margin-bottom: 0;
}
.site-footer a {
  color: #fff;
  text-decoration: underline;
}

/* Mobile-first tweaks */
@media (max-width: 767px) {
  .site-footer .row {
    display: block;                      /* stack columns */
  }
  .site-footer .row > div {
    margin-bottom: 20px;
  }
  .site-footer h4 {
    margin-top: 10px;
  }
}
/* Force footer links to white */
.site-footer a,
.site-footer a:visited {
  color: #ffffff !important;
  text-decoration: none;   /* optional: remove underline */
}

.site-footer a:hover,
.site-footer a:focus {
  color: #ffffff !important;
  text-decoration: underline; /* optional: show underline on hover */
}
.article-view { margin-top: 20px; }
.article-content { padding-right: 30px; }
.article-sidebar { background: #f9f9f9; padding: 15px; border-left: 1px solid #ddd; }

/* Ensure the page takes full height */
html, body {
  height: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
}

/* Main content grows to fill space */
#pkp_content_main, 
.pkp_structure_content {
  flex: 1; /* pushes footer down */
}

/* Footer styling */
.pkp_structure_footer {
  margin-top: auto; /* keeps footer at bottom */
  background-color: #002147; /* SMU branding example */
  color: #fff;
  text-align: center;
  padding: 15px;
  font-size: 14px;
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .pkp_structure_footer {
    font-size: 16px;
    padding: 20px;
  }
}
