/* Fight Medicine custom stylesheet (Default theme, Lora / Open Sans). Revised 2026-10-20 after the phone and tablet audit. */

/* ---------- header (all widths) ---------- */
.pkp_structure_head { background-color: #ECF0F4; border-bottom: 0; }
.pkp_structure_head .pkp_navigation_user_wrapper { background: transparent; }
.pkp_navigation_primary_row { background-color: #12324F; }
.pkp_navigation_primary_row .pkp_navigation_primary > li > a, .pkp_navigation_primary_row .pkp_search a, .pkp_navigation_primary_row .pkp_search .pkp_search_prompt { color: #FFFFFF; text-transform: uppercase; font-weight: 600; letter-spacing: 0.06em; }
.pkp_navigation_primary_row .pkp_navigation_primary > li > a:hover, .pkp_navigation_primary_row .pkp_navigation_primary > li > a:focus { background: #0C2238; }
.pkp_navigation_primary_row .submenu { background: #12324F; }
.pkp_navigation_primary_row .submenu a { color: #FFFFFF; text-transform: none; letter-spacing: 0; }
.pkp_navigation_primary_row .submenu a:hover, .pkp_navigation_primary_row .submenu a:focus { background: #0C2238; }

/* ---------- typography (pixel sizes; the theme root is 14px) ---------- */
body, .pkp_structure_main, .pkp_structure_main .page { font-size: 16px; line-height: 1.6; color: #2B3036; }
.pkp_structure_main { border-left: 0; border-right: 0; }
h1, h2, h3, .page h2, .obj_issue_toc .section h2 { color: #12324F; }
.page h1 { font-size: 1.9rem; margin: 0 0 1rem; }
.page h3 { font-size: 1.15rem; margin-top: 1.5rem; margin-bottom: 0.5rem; }
.page p, .page li { max-width: 46rem; }
.cmp_breadcrumbs ol, .cmp_breadcrumbs .current h1 { font-size: 14px; }
.page_contact .address, .page_contact .phone, .page_contact .email, .page_masthead .user_listing .affiliation, .page_masthead .user_listing .date_start { font-size: 15px; }
.pkp_structure_footer_wrapper { background: #ECF0F4; }
.pkp_structure_footer_wrapper, .pkp_structure_footer_wrapper .pkp_footer_content { font-size: 14px; }
.homepage_about h2, .additional_content h2 { font-size: 1.3rem; }
.homepage_about, .additional_content { border-bottom: 0; padding-bottom: 0.5rem; }
.pkp_structure_main .homepage_about, .pkp_structure_main .additional_content { padding-top: 1rem; }
.additional_content h3 { margin-top: 1.5rem; font-size: 1.15rem; }
/* static pages (Crossref, Corrections, Publisher) use an h2 as their page title */
.pkp_page_pages .page > h2:first-child, .pkp_op_view .page > h2:first-child { font-size: 1.9rem; line-height: 1.2; margin: 0 0 1.25rem; }

/* ---------- sidebar ---------- */
.pkp_structure_sidebar { padding-top: 1.25rem; }
.pkp_block .title { font-family: inherit; font-size: 15px; color: #12324F; text-transform: uppercase; letter-spacing: 0.06em; }
.pkp_block ul.fm-quick { list-style: none; margin: 0; padding: 0; }
.pkp_block ul.fm-quick li { margin: 0; padding: 0; border-bottom: 1px solid #E3E8ED; }
.pkp_block ul.fm-quick a { display: block; padding: 0.65rem 0; font-size: 15px; color: #12324F; text-decoration: none; }
.pkp_block ul.fm-quick a:hover { text-decoration: underline; }
.fm-submit { margin: 0 0 1.5rem; }
.fm-button { display: block; text-align: center; background: #12324F; color: #fff !important; padding: 0.8rem 1rem; font-size: 16px; text-decoration: none !important; font-weight: 600; letter-spacing: 0.03em; }
.fm-button:hover { background: #0C2238; }
/* Crossref brand: official logos on white, clear space, minimum sizes */
.fm-crossref { background: #fff; padding: 0.75rem 0 0; }
.fm-crossref img { display: block; width: 150px; height: auto; margin: 0.5rem 0 0.75rem; }
.fm-crossref p { font-size: 15px; line-height: 1.5; color: #2B3036; margin: 0 0 1.25rem; }
.fm-crossref p:first-child { font-size: 16px; margin-bottom: 0.75rem; }
.fm-crossref-row { background: #fff; display: flex; flex-wrap: wrap; gap: 2rem; align-items: center; padding: 1rem 0 1.5rem; max-width: none !important; }
.fm-crossref-row img { width: 200px; height: auto; margin: 0.5rem; }
.fm-cm-logo { background: #fff; padding: 0.5rem 0 1rem; } .fm-cm-logo img { width: 200px; height: auto; }

/* ---------- desktop (992px and up): full-width masthead, column geometry ---------- */
@media (min-width: 992px) {
  .pkp_structure_head .pkp_head_wrapper { padding: 0; max-width: 100%; }
  .pkp_structure_head .pkp_site_name_wrapper { padding: 1.4rem 0 1.1rem; background-image: url("/public/journals/1/headerBackground.png?v=7"); background-size: cover; background-position: center; }
  .pkp_structure_head .pkp_site_name { margin: 0; }
  .pkp_structure_head .pkp_site_name .is_img { display: block; }
  .pkp_structure_head .pkp_site_name .is_img img { max-height: none !important; height: auto; width: 100%; max-width: 100%; display: block; }
  .pkp_structure_head .pkp_navigation_user a { color: #12324F; font-weight: 600; }
  .pkp_navigation_primary_row .pkp_navigation_primary > li > a, .pkp_navigation_primary_row .pkp_search a, .pkp_navigation_primary_row .pkp_search .pkp_search_prompt { font-size: 0.82rem; }
  .pkp_navigation_primary_row .pkp_navigation_primary > li { margin-right: 1.75rem; }
  .pkp_navigation_primary_row .pkp_navigation_primary > li > a { padding: 0 0.75rem; line-height: 3rem; }
  .pkp_navigation_primary_row .pkp_navigation_primary { padding-left: 0.25rem; }
  .pkp_structure_content { padding-top: 1.25rem; }
  .pkp_structure_main { padding: 0 2.143rem 3rem; }
  .pkp_structure_content.has_sidebar .pkp_structure_main { float: left; }
  .page p, .page li { max-width: none; }
}
@media (min-width: 1200px) {
  .pkp_structure_content.has_sidebar .pkp_structure_main { width: 860px; }
  .pkp_structure_sidebar { width: 300px; }
}

/* ---------- phones and tablets (up to 991px) ---------- */
@media (max-width: 991px) {
  /* compact nameplate: wordmark only (the publisher credit is in the footer) */
  /* navy bar, white wordmark across the full width beside the menu button */
  .pkp_structure_head { background-color: #12324F; border-bottom: 0; }
  .pkp_structure_head .pkp_site_name_wrapper { background-image: none; background-color: #12324F; height: 80px; position: relative; }
  .pkp_structure_head .pkp_site_nav_toggle { width: 52px; height: 80px; }
  .pkp_structure_head .pkp_site_nav_toggle span, .pkp_structure_head .pkp_site_nav_toggle span::before, .pkp_structure_head .pkp_site_nav_toggle span::after, .pkp_structure_head .pkp_site_nav_toggle > span > span { background-color: #FFFFFF; }
  .pkp_structure_head .pkp_site_nav_toggle > span { background: none; }
  .pkp_structure_head .pkp_site_name { position: absolute; left: 56px; right: 14px; top: 0; height: 80px; margin: 0; }
  .pkp_structure_head .pkp_site_name .is_img { display: block; height: 80px; width: 100%; background: url("/public/journals/1/nameplate-mobile-white.png?v=2") left center / contain no-repeat; }
  .pkp_structure_head .pkp_site_name .is_img img { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  /* opened menu: white text, 17px, full-row tap targets, separators between groups */
  .pkp_site_nav_menu { padding: 0.5rem 0 1rem; }
  .pkp_site_nav_menu a, .pkp_site_nav_menu .pkp_navigation_user a, .pkp_site_nav_menu .pkp_search a, .pkp_site_nav_menu .pkp_search .pkp_search_prompt { color: #FFFFFF !important; }
  .pkp_site_nav_menu .pkp_navigation_user { border-top: 1px solid rgba(255,255,255,0.3); margin-top: 0.5rem; padding-top: 0.5rem; }
  .pkp_site_nav_menu .pkp_search { display: block; width: 100%; border-top: 1px solid rgba(255,255,255,0.3); margin-top: 0.5rem; padding-top: 0.5rem; }
  .pkp_site_nav_menu .pkp_search a { font-size: 17px; min-height: 48px; padding: 0.7rem 1rem; }
  .pkp_navigation_primary_row .pkp_navigation_primary > li { margin-right: 0; }
  .pkp_navigation_primary_row .pkp_navigation_primary > li > a { font-size: 17px; letter-spacing: 0.05em; line-height: 3rem; padding: 0 1rem; }
  .pkp_site_nav_menu .pkp_navigation_primary ul a, .pkp_site_nav_menu .pkp_navigation_user a, .pkp_site_nav_menu .pkp_search a { display: block; width: 100%; padding: 0.7rem 1rem; min-height: 48px; font-size: 17px; line-height: 1.6; }
  .pkp_site_nav_menu ul ul { padding-left: 1rem; }
  /* columns: body text, sidebar blocks and buttons share one 20px gutter */
  .pkp_structure_main { padding-left: 10px; padding-right: 10px; }
  .pkp_structure_sidebar .pkp_block { padding-left: 10px; padding-right: 10px; }
  /* forms: 16px inputs (no Safari zoom), 44px fields and buttons, full width */
  .cmp_form input[type="text"], .cmp_form input[type="email"], .cmp_form input[type="password"], .cmp_form input[type="url"], .cmp_form input[type="tel"], .cmp_form input[type="search"], .cmp_form select, .cmp_form textarea { font-size: 16px; height: 44px; line-height: 44px; max-width: none; width: 100%; }
  .cmp_form textarea { height: 8em; line-height: 1.5; }
  .cmp_form input[type="checkbox"], .cmp_form input[type="radio"] { width: 20px; height: 20px; }
  .cmp_form .buttons button, .cmp_form .buttons a, .cmp_button, .page_search .submit button { font-size: 16px; min-height: 44px; line-height: 44px; padding: 0 1.25em; }
  .cmp_form .buttons a { display: inline-block; }
  .pkp_structure_sidebar { padding-top: 0.5rem; }
  .pkp_page_pages .page { padding-top: 0.5rem; }
}
/* tablets: two sidebar columns under the main column */
@media (min-width: 600px) and (max-width: 991px) {
  .pkp_structure_sidebar { display: grid; grid-template-columns: 1fr 1fr; column-gap: 2rem; }
  .pkp_structure_sidebar #customblock-submitblock { grid-column: 1 / -1; }
  .fm-submit .fm-button { max-width: 24rem; margin: 0 auto; }
}
