/**
 * INATGI journal interface alignment layer
 * OJS 3.4 / themeSix
 * Loaded after theme and per-journal styles from header.tpl.
 * Brand system: black, red, white, and neutral gray.
 */

:root {
  --inatgi-red: #b11226;
  --inatgi-red-dark: #8f0d1d;
  --inatgi-black: #171717;
  --inatgi-black-soft: #252525;
  --inatgi-text: #2f2f2f;
  --inatgi-muted: #6b6b6b;
  --inatgi-line: #dddddd;
  --inatgi-surface: #ffffff;
  --inatgi-bg: #f5f5f5;
  --inatgi-soft: #fafafa;
  --inatgi-shadow: 0 8px 24px rgba(0, 0, 0, 0.07);
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--inatgi-bg) !important;
  background-image: none !important;
  color: var(--inatgi-text) !important;
  font-family: Arial, Helvetica, "Nimbus Sans L", sans-serif !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

body,
button,
input,
select,
textarea {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* ---------- Publisher utility bar ---------- */
.topHeader {
  height: 42px !important;
  padding: 0 !important;
  background: var(--inatgi-black) !important;
  border-bottom: 3px solid var(--inatgi-red) !important;
  box-shadow: none !important;
}

.topHeader .container {
  max-width: 1180px !important;
}

.topSocial li a,
#social-icons .menu > li > a {
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.20) !important;
  font-weight: 600 !important;
}

.topSocial li a:hover,
.topSocial li a:focus,
#social-icons .menu > li:hover > a,
#social-icons .menu > li > a:hover,
#social-icons .menu > li > a:focus {
  color: #ffffff !important;
  background: var(--inatgi-red) !important;
}

.newDropDown ul {
  background: var(--inatgi-black) !important;
  border-top: 3px solid var(--inatgi-red) !important;
  box-shadow: var(--inatgi-shadow) !important;
}

.newDropDown ul:before {
  border-bottom-color: var(--inatgi-red) !important;
}

.newDropDown ul li a {
  color: #ffffff !important;
}

.newDropDown ul li:hover a,
.newDropDown ul li a:hover,
.newDropDown ul li a:focus {
  color: #ffffff !important;
  background: var(--inatgi-red) !important;
}

/* ---------- Journal identity / logo area ---------- */
#headerNavigationContainer {
  margin-bottom: 0 !important;
  background: transparent !important;
}

.mainNavigation {
  margin-top: 42px !important;
  padding: 0 !important;
  background: #ffffff !important;
  border: 0 !important;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.05) !important;
}

.mainNavigation .container {
  min-height: 116px !important;
  display: flex !important;
  align-items: center !important;
  max-width: 1180px !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

.mainNavigation .navbar-header {
  width: 100% !important;
}

.mainNavigation .site-name {
  margin: 0 !important;
}

.mainNavigation .navbar-brand,
.mainNavigation .navbar-brand-logo {
  float: left !important;
  display: inline-flex !important;
  align-items: center !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 76px !important;
  margin: 0 !important;
  padding: 8px 0 !important;
  color: var(--inatgi-black) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-indent: 0 !important;
  background: none !important;
}

.mainNavigation .navbar-brand img,
.mainNavigation .navbar-brand-logo img,
.navbar-brand > img {
  width: auto !important;
  max-width: min(760px, 100%) !important;
  max-height: 100px !important;
  object-fit: contain !important;
}

/* ---------- Primary navigation ---------- */
#nav-menu {
  padding: 0 !important;
  background: #ffffff !important;
  border-top: 1px solid #ededed !important;
  border-bottom: 3px solid var(--inatgi-red) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important;
}

#nav-menu > .container,
#nav-menu .container {
  max-width: 1180px !important;
}

#main-navigation {
  width: 100% !important;
  margin: 0 !important;
}

#main-navigation > li {
  margin-right: 30px !important;
}

#main-navigation > li > a:not(.show-search) {
  padding: 17px 0 14px !important;
  color: var(--inatgi-black) !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 3px solid transparent !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

#main-navigation > li > a:not(.show-search):hover,
#main-navigation > li > a:not(.show-search):focus,
#main-navigation > li > a:not(.show-search).active {
  color: var(--inatgi-red) !important;
  border-bottom-color: var(--inatgi-red) !important;
}

#main-navigation > li > a:not(.show-search).active:after {
  display: none !important;
}

#main-navigation .dropdown-menu {
  margin-top: 0 !important;
  padding: 8px 0 !important;
  background: #ffffff !important;
  border: 1px solid var(--inatgi-line) !important;
  border-top: 3px solid var(--inatgi-red) !important;
  border-radius: 0 0 4px 4px !important;
  box-shadow: var(--inatgi-shadow) !important;
}

#main-navigation .dropdown-menu > li > a {
  padding: 10px 18px !important;
  color: var(--inatgi-black) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  text-transform: none !important;
}

#main-navigation .dropdown-menu > li > a:hover,
#main-navigation .dropdown-menu > li > a:focus {
  color: #ffffff !important;
  background: var(--inatgi-red) !important;
}

.searchCntNav .show-search i {
  color: var(--inatgi-black) !important;
  background: #f1f1f1 !important;
}

#seachCheckFlag:checked + .searchCntNav .show-search,
#seachCheckFlag:checked + .searchCntNav .show-search i {
  color: #ffffff !important;
  background: var(--inatgi-red) !important;
}

.searchCntNav form input {
  color: var(--inatgi-black) !important;
  background: #f2f2f2 !important;
  border: 1px solid var(--inatgi-line) !important;
}

/* ---------- Main content frame ---------- */
#mainContainer {
  max-width: 1180px !important;
  margin: 30px auto 52px !important;
  padding: 0 15px !important;
}

.pkp_structure_main,
#sidebar {
  box-sizing: border-box !important;
  background: var(--inatgi-surface) !important;
  border: 1px solid #e2e2e2 !important;
  border-radius: 6px !important;
  box-shadow: var(--inatgi-shadow) !important;
}

.pkp_structure_main {
  padding: 34px 38px 42px !important;
  border-right: 1px solid #e2e2e2 !important;
}

#sidebar {
  padding: 26px 24px 30px !important;
}

.pkp_structure_main.col-md-12 {
  width: 100% !important;
}

main p,
main li,
main td,
main th,
#sidebar p,
#sidebar li {
  color: var(--inatgi-text) !important;
}

main a,
#sidebar a,
.pkp_structure_main a {
  color: var(--inatgi-red-dark) !important;
  transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease !important;
}

main a:hover,
main a:focus,
#sidebar a:hover,
#sidebar a:focus,
.pkp_structure_main a:hover,
.pkp_structure_main a:focus {
  color: var(--inatgi-black) !important;
  text-decoration: none !important;
}

main h1,
main h2,
main h3,
main h4,
main h5,
main h6,
.pkp_structure_main h1,
.pkp_structure_main h2,
.pkp_structure_main h3,
.pkp_structure_main h4,
#sidebar h2,
#sidebar h3,
#sidebar h4 {
  color: var(--inatgi-black) !important;
}

main h1,
main h2,
.pkp_structure_main h1,
.pkp_structure_main h2,
.page-header,
.page-header h1,
.page-header h2 {
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: -0.01em !important;
}

.page-header,
div.page-header {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  margin: 0 0 26px !important;
  padding: 0 0 15px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--inatgi-line) !important;
}

.page-header:after,
div.page-header:after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -1px !important;
  width: 78px !important;
  height: 3px !important;
  background: var(--inatgi-red) !important;
}

.page-header h1,
.page-header h2,
h1.page-header,
h2.page-header {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--inatgi-black) !important;
  font-size: clamp(26px, 2.5vw, 38px) !important;
  line-height: 1.25 !important;
}

.breadcrumb {
  margin-bottom: 24px !important;
  padding: 8px 0 12px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--inatgi-line) !important;
}

.breadcrumb a {
  color: var(--inatgi-red-dark) !important;
}

/* ---------- Journal homepage ---------- */
.homepage-image img,
.issue-toc .thumbnail img,
.issue-summary .media-left img {
  border: 1px solid #d5d5d5 !important;
  border-radius: 3px !important;
  box-shadow: 0 7px 18px rgba(0, 0, 0, 0.12) !important;
}

.journal-description,
.additional_content,
.about_site {
  color: var(--inatgi-text) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

.current_issue_title {
  margin: 24px 0 18px !important;
  padding: 11px 15px !important;
  color: #ffffff !important;
  background: var(--inatgi-black) !important;
  border-left: 5px solid var(--inatgi-red) !important;
  border-radius: 0 4px 4px 0 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
}

.issue-toc {
  margin-top: 18px !important;
}

.issue-toc .heading,
.issue-toc .description,
.current_issue {
  color: var(--inatgi-text) !important;
}

.obj_article_summary,
.article-summary,
.announcement-summary,
.issue-summary {
  margin: 0 !important;
  padding: 20px 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #e5e5e5 !important;
}

.obj_article_summary:last-child,
.article-summary:last-child {
  border-bottom: 0 !important;
}

.obj_article_summary .title,
.article-summary .media-heading {
  margin: 0 0 8px !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
}

.obj_article_summary .title a,
.article-summary .media-heading a,
.media-heading a {
  color: var(--inatgi-black) !important;
}

.obj_article_summary .title a:hover,
.article-summary .media-heading a:hover,
.media-heading a:hover {
  color: var(--inatgi-red) !important;
}

.obj_article_summary .authors,
.obj_article_summary .published,
.obj_article_summary .pages,
.article-summary .authors {
  color: var(--inatgi-muted) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

/* ---------- Article page ---------- */
.pkp_page_article .page-header,
.pkp_page_article h2.page-header {
  color: var(--inatgi-black) !important;
  font-size: clamp(27px, 2.4vw, 38px) !important;
  line-height: 1.3 !important;
  text-transform: none !important;
}

.pkp_page_article .article-main,
.pkp_page_article .article-details,
.pkp_page_article .abstract,
.pkp_page_article .keywords {
  color: var(--inatgi-text) !important;
}

.pkp_page_article .article-sidebar {
  padding-right: 24px !important;
}

.pkp_page_article .article-sidebar .list-group,
.pkp_page_article .article-sidebar .item,
.pkp_page_article .article-sidebar section {
  border-color: var(--inatgi-line) !important;
}

.pkp_page_article .abstract h2,
.pkp_page_article .keywords h2,
.pkp_page_article .references h2,
.pkp_page_article .article-details h2,
.pkp_page_article .article-details h3 {
  margin-top: 28px !important;
  padding-bottom: 9px !important;
  color: var(--inatgi-black) !important;
  border-bottom: 1px solid var(--inatgi-line) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
}

.pkp_page_article .authors,
.pkp_page_article .author_bios,
.pkp_page_article .doi,
.pkp_page_article .published {
  color: var(--inatgi-muted) !important;
}

/* ---------- Sidebar ---------- */
#sidebar .pkp_block,
#sidebar .block {
  margin: 0 0 24px !important;
  padding: 0 0 22px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--inatgi-line) !important;
}

#sidebar .pkp_block:last-child,
#sidebar .block:last-child {
  border-bottom: 0 !important;
}

.blockTitle,
#sidebar .block h3,
#sidebar .title,
#sidebar h2.title,
.pkp_block h2.title {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  margin: 0 0 15px !important;
  padding: 0 0 10px !important;
  color: var(--inatgi-black) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.45 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.blockTitle:after,
#sidebar .block h3:after,
#sidebar .title:after,
#sidebar h2.title:after,
.pkp_block h2.title:after {
  width: 54px !important;
  height: 3px !important;
  background: var(--inatgi-red) !important;
}

#sidebar .block ul,
#sidebar .pkp_block ul {
  margin: 0 !important;
  padding: 0 !important;
}

#sidebar .block ul li,
#sidebar .pkp_block ul li {
  padding: 9px 0 !important;
  border-bottom: 1px solid #eeeeee !important;
}

#sidebar .block ul li:last-child,
#sidebar .pkp_block ul li:last-child {
  border-bottom: 0 !important;
}

/* ---------- Buttons, tabs, and forms ---------- */
.btn,
.button,
.action,
.block_make_submission_link,
.galley-link,
a.file,
.page_submissions .alert-info a {
  border-radius: 3px !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight: 700 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

.btn-primary,
.btn-default,
.btn-primary:visited,
.btn-default:visited,
.block_make_submission_link,
.galley-link,
.galley-link.pdf,
.download .btn,
.page_submissions .alert-info a {
  color: #ffffff !important;
  background: var(--inatgi-red) !important;
  border-color: var(--inatgi-red) !important;
}

.btn-primary:hover,
.btn-default:hover,
.btn-primary:focus,
.btn-default:focus,
.block_make_submission_link:hover,
.block_make_submission_link:focus,
.galley-link:hover,
.galley-link:focus,
.download .btn:hover,
.download .btn:focus,
.page_submissions .alert-info a:hover,
.page_submissions .alert-info a:focus {
  color: #ffffff !important;
  background: var(--inatgi-black) !important;
  border-color: var(--inatgi-black) !important;
}

.nav-pills > li > a,
.nav-tabs > li > a,
.cmp_pagination a {
  color: var(--inatgi-black) !important;
  border-radius: 3px !important;
}

.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.cmp_pagination .current {
  color: #ffffff !important;
  background: var(--inatgi-red) !important;
  border-color: var(--inatgi-red) !important;
}

.form-control,
input,
select,
textarea {
  color: var(--inatgi-black) !important;
  background: #ffffff !important;
  border-color: #cfcfcf !important;
  border-radius: 3px !important;
  box-shadow: none !important;
}

.form-control:focus,
input:focus,
select:focus,
textarea:focus {
  border-color: var(--inatgi-red) !important;
  box-shadow: 0 0 0 2px rgba(177, 18, 38, 0.10) !important;
  outline: none !important;
}

.alert-info,
.page_submissions .alert-info {
  color: var(--inatgi-text) !important;
  background: #fafafa !important;
  border: 1px solid var(--inatgi-line) !important;
  border-left: 5px solid var(--inatgi-red) !important;
}

/* ---------- Infrastructure strip and footer ---------- */
.inatgi-official-icons-strip,
.footerSupports {
  background: #ffffff !important;
  border-top-color: var(--inatgi-line) !important;
  border-bottom-color: var(--inatgi-line) !important;
}

.inatgi-official-icons-strip .official-icons-title {
  color: var(--inatgi-black) !important;
}

.inatgi-official-icons-strip .official-icon-card {
  border-color: var(--inatgi-line) !important;
  border-radius: 4px !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.04) !important;
}

.inatgi-official-icons-strip .official-icon-card:hover,
.inatgi-official-icons-strip .official-icon-card:focus {
  border-color: var(--inatgi-red) !important;
  box-shadow: 0 7px 18px rgba(177, 18, 38, 0.10) !important;
}

#footer,
footer.footer,
footer {
  color: #d5d5d5 !important;
  background: linear-gradient(135deg, #111111 0%, #1b1b1b 70%, #3b0a11 100%) !important;
  border-top: 5px solid var(--inatgi-red) !important;
}

#footer p,
#footer li,
footer p,
footer li {
  color: #d5d5d5 !important;
}

#footer a,
footer a {
  color: #f2f2f2 !important;
}

#footer a:hover,
#footer a:focus,
footer a:hover,
footer a:focus {
  color: #ff6b78 !important;
  text-decoration: none !important;
}

.footer-widget h4 {
  color: #ffffff !important;
  font-size: 15px !important;
  letter-spacing: 0.04em !important;
}

.footer-widget h4 .head-line {
  height: 3px !important;
  background: var(--inatgi-red) !important;
}

.social-widget ul:not(.social-icons) li {
  border-bottom-color: rgba(255, 255, 255, 0.10) !important;
}

.social-widget ul.social-icons li a span {
  color: #ffffff !important;
  background: #2b2b2b !important;
}

.social-widget ul.social-icons li a:hover span {
  background: var(--inatgi-red) !important;
}

.copyright-section {
  border-top-color: rgba(255, 255, 255, 0.14) !important;
}

.back-to-top i {
  background: var(--inatgi-red) !important;
}

/* ---------- Desktop two-column balance ---------- */
@media (min-width: 992px) {
  #mainContainer {
    display: flex !important;
    align-items: flex-start !important;
    gap: 24px !important;
  }

  #mainContainer > .pkp_structure_main.col-md-9 {
    float: none !important;
    width: calc(75% - 12px) !important;
  }

  #mainContainer > #sidebar.col-md-3 {
    float: none !important;
    width: calc(25% - 12px) !important;
  }

  #mainContainer > .pkp_structure_main.col-md-12 {
    float: none !important;
    width: 100% !important;
  }
}

/* ---------- Tablet and mobile ---------- */
@media (max-width: 991px) {
  .topHeader {
    height: 42px !important;
  }

  .mainNavigation {
    margin-top: 42px !important;
  }

  .mainNavigation .container {
    min-height: 88px !important;
    display: block !important;
    padding: 12px 18px !important;
  }

  .mainNavigation .navbar-brand,
  .mainNavigation .navbar-brand-logo {
    float: none !important;
    min-height: 60px !important;
  }

  .mainNavigation .navbar-brand img,
  .mainNavigation .navbar-brand-logo img {
    max-height: 76px !important;
  }

  #nav-menu {
    background: var(--inatgi-black) !important;
    border-bottom-color: var(--inatgi-red) !important;
  }

  #main-navigation > li {
    margin: 0 !important;
  }

  #main-navigation > li > a:not(.show-search) {
    padding: 12px 17px !important;
    color: #ffffff !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  }

  #main-navigation > li > a:not(.show-search):hover,
  #main-navigation > li > a:not(.show-search):focus,
  #main-navigation > li > a:not(.show-search).active {
    color: #ffffff !important;
    background: var(--inatgi-red) !important;
  }

  #main-navigation .dropdown-menu {
    position: static !important;
    float: none !important;
    width: 100% !important;
    background: #242424 !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  #main-navigation .dropdown-menu > li > a {
    color: #ffffff !important;
  }

  #mainContainer {
    display: block !important;
    margin-top: 20px !important;
    padding: 0 14px !important;
  }

  .pkp_structure_main,
  #sidebar {
    width: 100% !important;
    float: none !important;
    margin: 0 0 22px !important;
  }

  .pkp_structure_main {
    padding: 26px 24px 32px !important;
  }
}

@media (max-width: 600px) {
  body {
    font-size: 14px !important;
  }

  .topSocial {
    display: none !important;
  }

  #social-icons {
    width: 100% !important;
  }

  #social-icons .menu > li > a {
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: 12px !important;
  }

  .mainNavigation .navbar-brand,
  .mainNavigation .navbar-brand-logo {
    font-size: 22px !important;
  }

  .mainNavigation .navbar-brand img,
  .mainNavigation .navbar-brand-logo img {
    max-height: 64px !important;
  }

  .pkp_structure_main {
    padding: 22px 18px 28px !important;
  }

  #sidebar {
    padding: 22px 18px 26px !important;
  }

  .page-header h1,
  .page-header h2,
  h1.page-header,
  h2.page-header,
  .pkp_page_article .page-header {
    font-size: 26px !important;
  }

  .obj_article_summary .title,
  .article-summary .media-heading {
    font-size: 18px !important;
  }
}

/* ==========================================================
 * INATGI 2026-07-19: remove duplicated journal-logo banner
 * The redesigned journal homepage already presents the journal
 * identity and cover. Keep only the publisher utility bar and
 * the primary journal navigation.
 * ========================================================== */
#headerNavigationContainer .mainNavigation {
  display: none !important;
}

/* The utility bar is fixed, so reserve its height before nav. */
#nav-menu {
  margin-top: 42px !important;
}

/* Remove residual empty header space after the banner is hidden. */
#headerNavigationContainer {
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
}

@media (max-width: 991px) {
  #nav-menu {
    margin-top: 42px !important;
  }
}

@media (max-width: 600px) {
  #nav-menu {
    margin-top: 42px !important;
  }
}

/* ==========================================================
   INATGI GLOBAL BUTTON CONTRAST FIX
   Fixes red text inherited from global main-content link rules
   across all journals and all OJS frontend pages.
   ========================================================== */

/* ---------- Shared button structure ---------- */

main a.inatgi-btn,
.pkp_structure_main a.inatgi-btn,
main a.read_more,
.pkp_structure_main a.read_more,
main a.read-more,
.pkp_structure_main a.read-more,
main a.btn,
.pkp_structure_main a.btn,
main a.button,
.pkp_structure_main a.button,
main a.action,
.pkp_structure_main a.action,
main a.block_make_submission_link,
.pkp_structure_main a.block_make_submission_link,
main a.galley-link,
.pkp_structure_main a.galley-link,
main a.file,
.pkp_structure_main a.file {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    cursor: pointer !important;
    transition:
        color 0.18s ease,
        background-color 0.18s ease,
        border-color 0.18s ease,
        box-shadow 0.18s ease !important;
}


/* ---------- Black INATGI buttons ---------- */

main a.inatgi-btn-dark,
main a.inatgi-btn-dark:link,
main a.inatgi-btn-dark:visited,
main a.inatgi-btn-dark:hover,
main a.inatgi-btn-dark:focus,
main a.inatgi-btn-dark:active,
.pkp_structure_main a.inatgi-btn-dark,
.pkp_structure_main a.inatgi-btn-dark:link,
.pkp_structure_main a.inatgi-btn-dark:visited,
.pkp_structure_main a.inatgi-btn-dark:hover,
.pkp_structure_main a.inatgi-btn-dark:focus,
.pkp_structure_main a.inatgi-btn-dark:active {
    color: #ffffff !important;
}

main a.inatgi-btn-dark,
main a.inatgi-btn-dark:link,
main a.inatgi-btn-dark:visited,
.pkp_structure_main a.inatgi-btn-dark,
.pkp_structure_main a.inatgi-btn-dark:link,
.pkp_structure_main a.inatgi-btn-dark:visited {
    background: #181818 !important;
    border-color: #181818 !important;
}

main a.inatgi-btn-dark:hover,
main a.inatgi-btn-dark:focus,
main a.inatgi-btn-dark:active,
.pkp_structure_main a.inatgi-btn-dark:hover,
.pkp_structure_main a.inatgi-btn-dark:focus,
.pkp_structure_main a.inatgi-btn-dark:active {
    background: #333333 !important;
    border-color: #333333 !important;
    color: #ffffff !important;
}


/* ---------- Red INATGI primary buttons ---------- */

main a.inatgi-btn-primary,
main a.inatgi-btn-primary:link,
main a.inatgi-btn-primary:visited,
main a.inatgi-btn-primary:hover,
main a.inatgi-btn-primary:focus,
main a.inatgi-btn-primary:active,
.pkp_structure_main a.inatgi-btn-primary,
.pkp_structure_main a.inatgi-btn-primary:link,
.pkp_structure_main a.inatgi-btn-primary:visited,
.pkp_structure_main a.inatgi-btn-primary:hover,
.pkp_structure_main a.inatgi-btn-primary:focus,
.pkp_structure_main a.inatgi-btn-primary:active {
    color: #ffffff !important;
}

main a.inatgi-btn-primary,
main a.inatgi-btn-primary:link,
main a.inatgi-btn-primary:visited,
.pkp_structure_main a.inatgi-btn-primary,
.pkp_structure_main a.inatgi-btn-primary:link,
.pkp_structure_main a.inatgi-btn-primary:visited {
    background: #b11226 !important;
    border-color: #b11226 !important;
}

main a.inatgi-btn-primary:hover,
main a.inatgi-btn-primary:focus,
main a.inatgi-btn-primary:active,
.pkp_structure_main a.inatgi-btn-primary:hover,
.pkp_structure_main a.inatgi-btn-primary:focus,
.pkp_structure_main a.inatgi-btn-primary:active {
    background: #8f0d24 !important;
    border-color: #8f0d24 !important;
    color: #ffffff !important;
}


/* ---------- White outline buttons ---------- */

main a.inatgi-btn-outline,
main a.inatgi-btn-outline:link,
main a.inatgi-btn-outline:visited,
.pkp_structure_main a.inatgi-btn-outline,
.pkp_structure_main a.inatgi-btn-outline:link,
.pkp_structure_main a.inatgi-btn-outline:visited {
    color: #181818 !important;
    background: #ffffff !important;
    border-color: #a9a9a9 !important;
}

main a.inatgi-btn-outline:hover,
main a.inatgi-btn-outline:focus,
main a.inatgi-btn-outline:active,
.pkp_structure_main a.inatgi-btn-outline:hover,
.pkp_structure_main a.inatgi-btn-outline:focus,
.pkp_structure_main a.inatgi-btn-outline:active {
    color: #8f0d24 !important;
    background: #fff7f8 !important;
    border-color: #b11226 !important;
}


/* ---------- OJS Read more buttons ---------- */

main a.read_more,
main a.read_more:link,
main a.read_more:visited,
main a.read-more,
main a.read-more:link,
main a.read-more:visited,
.pkp_structure_main a.read_more,
.pkp_structure_main a.read_more:link,
.pkp_structure_main a.read_more:visited,
.pkp_structure_main a.read-more,
.pkp_structure_main a.read-more:link,
.pkp_structure_main a.read-more:visited,
.current_issue a.read_more,
.current_issue a.read_more:link,
.current_issue a.read_more:visited {
    min-height: 38px !important;
    padding: 9px 17px !important;
    border: 1px solid #b11226 !important;
    border-radius: 3px !important;
    background: #b11226 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

main a.read_more:hover,
main a.read_more:focus,
main a.read_more:active,
main a.read-more:hover,
main a.read-more:focus,
main a.read-more:active,
.pkp_structure_main a.read_more:hover,
.pkp_structure_main a.read_more:focus,
.pkp_structure_main a.read_more:active,
.pkp_structure_main a.read-more:hover,
.pkp_structure_main a.read-more:focus,
.pkp_structure_main a.read-more:active,
.current_issue a.read_more:hover,
.current_issue a.read_more:focus,
.current_issue a.read_more:active {
    border-color: #181818 !important;
    background: #181818 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}


/* ---------- Standard Bootstrap/OJS solid buttons ---------- */

main a.btn-primary,
main a.btn-primary:link,
main a.btn-primary:visited,
main a.btn-default,
main a.btn-default:link,
main a.btn-default:visited,
.pkp_structure_main a.btn-primary,
.pkp_structure_main a.btn-primary:link,
.pkp_structure_main a.btn-primary:visited,
.pkp_structure_main a.btn-default,
.pkp_structure_main a.btn-default:link,
.pkp_structure_main a.btn-default:visited,
main a.block_make_submission_link,
main a.block_make_submission_link:visited,
.pkp_structure_main a.block_make_submission_link,
.pkp_structure_main a.block_make_submission_link:visited,
main a.galley-link,
main a.galley-link:visited,
.pkp_structure_main a.galley-link,
.pkp_structure_main a.galley-link:visited,
main .page_submissions .alert-info a,
main .page_submissions .alert-info a:visited,
.pkp_structure_main .page_submissions .alert-info a,
.pkp_structure_main .page_submissions .alert-info a:visited {
    background: #b11226 !important;
    border-color: #b11226 !important;
    color: #ffffff !important;
}

main a.btn-primary:hover,
main a.btn-primary:focus,
main a.btn-primary:active,
main a.btn-default:hover,
main a.btn-default:focus,
main a.btn-default:active,
.pkp_structure_main a.btn-primary:hover,
.pkp_structure_main a.btn-primary:focus,
.pkp_structure_main a.btn-primary:active,
.pkp_structure_main a.btn-default:hover,
.pkp_structure_main a.btn-default:focus,
.pkp_structure_main a.btn-default:active,
main a.block_make_submission_link:hover,
main a.block_make_submission_link:focus,
main a.block_make_submission_link:active,
.pkp_structure_main a.block_make_submission_link:hover,
.pkp_structure_main a.block_make_submission_link:focus,
.pkp_structure_main a.block_make_submission_link:active,
main a.galley-link:hover,
main a.galley-link:focus,
main a.galley-link:active,
.pkp_structure_main a.galley-link:hover,
.pkp_structure_main a.galley-link:focus,
.pkp_structure_main a.galley-link:active,
main .page_submissions .alert-info a:hover,
main .page_submissions .alert-info a:focus,
main .page_submissions .alert-info a:active,
.pkp_structure_main .page_submissions .alert-info a:hover,
.pkp_structure_main .page_submissions .alert-info a:focus,
.pkp_structure_main .page_submissions .alert-info a:active {
    background: #181818 !important;
    border-color: #181818 !important;
    color: #ffffff !important;
}


/* ---------- Generic OJS actions ---------- */

main a.button,
main a.button:link,
main a.button:visited,
main a.action,
main a.action:link,
main a.action:visited,
main a.file,
main a.file:link,
main a.file:visited,
.pkp_structure_main a.button,
.pkp_structure_main a.button:link,
.pkp_structure_main a.button:visited,
.pkp_structure_main a.action,
.pkp_structure_main a.action:link,
.pkp_structure_main a.action:visited,
.pkp_structure_main a.file,
.pkp_structure_main a.file:link,
.pkp_structure_main a.file:visited {
    background: #b11226 !important;
    border-color: #b11226 !important;
    color: #ffffff !important;
}

main a.button:hover,
main a.button:focus,
main a.button:active,
main a.action:hover,
main a.action:focus,
main a.action:active,
main a.file:hover,
main a.file:focus,
main a.file:active,
.pkp_structure_main a.button:hover,
.pkp_structure_main a.button:focus,
.pkp_structure_main a.button:active,
.pkp_structure_main a.action:hover,
.pkp_structure_main a.action:focus,
.pkp_structure_main a.action:active,
.pkp_structure_main a.file:hover,
.pkp_structure_main a.file:focus,
.pkp_structure_main a.file:active {
    background: #181818 !important;
    border-color: #181818 !important;
    color: #ffffff !important;
}


/* ---------- Accessibility focus state ---------- */

main a.inatgi-btn:focus-visible,
main a.read_more:focus-visible,
main a.read-more:focus-visible,
main a.btn:focus-visible,
main a.button:focus-visible,
main a.action:focus-visible,
main a.galley-link:focus-visible,
main a.block_make_submission_link:focus-visible,
.pkp_structure_main a.inatgi-btn:focus-visible,
.pkp_structure_main a.read_more:focus-visible,
.pkp_structure_main a.read-more:focus-visible,
.pkp_structure_main a.btn:focus-visible,
.pkp_structure_main a.button:focus-visible,
.pkp_structure_main a.action:focus-visible,
.pkp_structure_main a.galley-link:focus-visible,
.pkp_structure_main a.block_make_submission_link:focus-visible {
    outline: 3px solid rgba(177, 18, 38, 0.32) !important;
    outline-offset: 3px !important;
}

/* ==========================================================
   INATGI JOURNAL SUBPAGE FULL-WIDTH LAYOUT
   Applies to Archives, Current Issue, About, Submissions,
   Contact, Search, Catalog, Article and other journal subpages.
   The journal homepage already has its own layout rules.
   ========================================================== */

/* ---------- Expand the main frame on journal subpages ---------- */

body:not(.pkp_page_index) #mainContainer {
    box-sizing: border-box !important;
    display: block !important;
    width: 94% !important;
    max-width: 1480px !important;
    margin: 30px auto 52px !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
}


/* ---------- Remove the obsolete 75% Bootstrap main-column width ---------- */

body:not(.pkp_page_index)
#mainContainer > .pkp_structure_main.col-md-9,

body:not(.pkp_page_index)
#mainContainer > .pkp_structure_main.col-md-12,

body:not(.pkp_page_index)
#mainContainer > .pkp_structure_main {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-right: 0 !important;
}


/* ---------- Hide the empty OJS sidebar column ---------- */
/* The user has disabled all sidebar blocks in the journal settings. */

body:not(.pkp_page_index)
#mainContainer > .pkp_structure_sidebar,

body:not(.pkp_page_index)
#mainContainer > #sidebar {
    display: none !important;
    float: none !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}


/* ---------- Allow common OJS subpage wrappers to use all available space ---------- */

body:not(.pkp_page_index) .page_issue_archive,
body:not(.pkp_page_index) .page_issue,
body:not(.pkp_page_index) .page_about,
body:not(.pkp_page_index) .page_contact,
body:not(.pkp_page_index) .page_submissions,
body:not(.pkp_page_index) .page_search,
body:not(.pkp_page_index) .page_catalog_category,
body:not(.pkp_page_index) .page_user,
body:not(.pkp_page_index) .page_article,
body:not(.pkp_page_index) .page_login,
body:not(.pkp_page_index) .page_register {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* ---------- Archives page ---------- */

body.pkp_page_issue.pkp_op_archive
#mainContainer > .pkp_structure_main {
    width: 100% !important;
    max-width: none !important;
}

body.pkp_page_issue.pkp_op_archive
.page_issue_archive {
    width: 100% !important;
    max-width: none !important;
}

body.pkp_page_issue.pkp_op_archive
.page_issue_archive .issues_archive,

body.pkp_page_issue.pkp_op_archive
.page_issue_archive .cmp_breadcrumbs,

body.pkp_page_issue.pkp_op_archive
.page_issue_archive .page-header {
    width: 100% !important;
    max-width: none !important;
}


/* ---------- Issue pages ---------- */

body.pkp_page_issue
#mainContainer > .pkp_structure_main {
    width: 100% !important;
    max-width: none !important;
}

body.pkp_page_issue
.issue-toc,

body.pkp_page_issue
.obj_issue_toc,

body.pkp_page_issue
.current_issue {
    width: 100% !important;
    max-width: none !important;
}


/* ---------- About, policies and submission pages ---------- */

body.pkp_page_about
#mainContainer > .pkp_structure_main,

body.pkp_page_submissions
#mainContainer > .pkp_structure_main,

body.pkp_page_information
#mainContainer > .pkp_structure_main {
    width: 100% !important;
    max-width: none !important;
}


/* ---------- Search and catalog pages ---------- */

body.pkp_page_search
#mainContainer > .pkp_structure_main,

body.pkp_page_catalog
#mainContainer > .pkp_structure_main {
    width: 100% !important;
    max-width: none !important;
}


/* ---------- Article pages ---------- */
/*
   The outer page becomes full width.
   The article's own internal main/sidebar columns remain functional.
*/

body.pkp_page_article
#mainContainer > .pkp_structure_main {
    width: 100% !important;
    max-width: none !important;
}

body.pkp_page_article
.page_article {
    width: 100% !important;
    max-width: none !important;
}


/* ---------- Large desktop ---------- */

@media (min-width: 1500px) {

    body:not(.pkp_page_index) #mainContainer {
        width: calc(100% - 80px) !important;
        max-width: 1520px !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

}


/* ---------- Standard desktop and tablet ---------- */

@media (max-width: 1199px) {

    body:not(.pkp_page_index) #mainContainer {
        width: 96% !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    body:not(.pkp_page_index)
    #mainContainer > .pkp_structure_main {
        padding: 30px 30px 38px !important;
    }

}


/* ---------- Mobile ---------- */

@media (max-width: 767px) {

    body:not(.pkp_page_index) #mainContainer {
        width: 100% !important;
        margin-top: 18px !important;
        margin-bottom: 32px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body:not(.pkp_page_index)
    #mainContainer > .pkp_structure_main {
        padding: 24px 18px 30px !important;
        border-radius: 4px !important;
    }

}
