/* ============================================================
   IJPMRI — Custom OJS Stylesheet  v2.0
   International Journal of Progressive
   Multidisciplinary Research and Innovation
   Target: OJS 3.x Default Theme (PKP)
   Style: Modern · Clean · Minimal · Sleek · Academic
   ============================================================ */

/* ── Google Fonts ── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&display=swap');

/* ── Design Tokens ── */
:root {
  --c-dark:        #081520;
  --c-navy:        #0b1e31;
  --c-navy2:       #0d2645;
  --c-teal-dk:     #0a6b6a;
  --c-teal:        #0d8c8a;
  --c-teal-lt:     #12b5b2;
  --c-green:       #22c76a;
  --c-accent:      #14d4ac;
  --c-gold:        #e8b84b;

  --c-bg:          #f7f9fb;
  --c-surface:     #ffffff;
  --c-border:      #e2e8f0;
  --c-border-lt:   #edf2f7;

  --c-text:        #0f2236;
  --c-text-2:      #3d5a70;
  --c-text-3:      #7a94a8;

  --grad-brand:    linear-gradient(120deg, var(--c-teal-dk) 0%, var(--c-teal) 45%, var(--c-green) 100%);
  --grad-header:   linear-gradient(160deg, #061018 0%, #0b1e31 55%, #0c2f2e 100%);
  --grad-subtle:   linear-gradient(135deg, #f0f9f9 0%, #f7fafa 100%);

  --font-serif:    'Playfair Display', Georgia, 'Times New Roman', serif;
  --font-sans:     'IBM Plex Sans', system-ui, -apple-system, sans-serif;

  --r-sm:  6px;
  --r-md:  10px;
  --r-lg:  16px;
  --r-xl:  24px;

  --sh-xs: 0 1px 3px rgba(8,21,32,.07);
  --sh-sm: 0 2px 10px rgba(8,21,32,.09);
  --sh-md: 0 6px 24px rgba(8,21,32,.12);
  --sh-lg: 0 16px 48px rgba(8,21,32,.16);

  --ease:  cubic-bezier(.4,0,.2,1);
  --dur:   0.2s;
}

/* ============================================================
   GLOBAL BASE
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: var(--font-sans) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: var(--c-text) !important;
  background: var(--c-bg) !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-serif) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  color: var(--c-text) !important;
}

p { color: var(--c-text-2) !important; line-height: 1.8 !important; }

a {
  color: var(--c-teal) !important;
  text-decoration: none !important;
  transition: color var(--dur) var(--ease) !important;
}
a:hover { color: var(--c-teal-lt) !important; text-decoration: none !important; }

img { max-width: 100%; height: auto; }

/* ============================================================
   TOP USER BAR
   ============================================================ */
.pkp_navigation_user,
#navigationUser,
header .pkp_navigation_user {
  background: var(--c-dark) !important;
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
  padding: 0 !important;
}

.pkp_navigation_user li a,
#navigationUser li a {
  font-family: var(--font-sans) !important;
  font-size: .72rem !important;
  font-weight: 500 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.6) !important;
  padding: 8px 16px !important;
  display: inline-block !important;
  transition: color var(--dur) var(--ease) !important;
}
.pkp_navigation_user li a:hover,
#navigationUser li a:hover {
  color: var(--c-accent) !important;
  background: transparent !important;
}

/* ============================================================
   HEADER / LOGO BAND
   ============================================================ */
.pkp_structure_head,
header.pkp_structure_head,
.navbar-default {
  background: var(--grad-header) !important;
  border-bottom: none !important;
  box-shadow: 0 4px 32px rgba(0,0,0,.4) !important;
}

.pkp_site_name,
#headerLogo,
.navbar-header {
  padding: 16px 0 !important;
}

.pkp_site_name a,
#headerLogo a {
  font-family: var(--font-serif) !important;
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  letter-spacing: -.01em !important;
}

.pkp_site_name img,
#headerLogo img,
.navbar-brand img {
  max-height: 64px !important;
  width: auto !important;
  display: inline-block !important;
}

/* ============================================================
   PRIMARY NAVIGATION
   ============================================================ */
.pkp_navigation_primary,
#navigationPrimary,
.navbar-default .navbar-nav {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.pkp_navigation_primary > ul > li > a,
#navigationPrimary > ul > li > a,
.navbar-default .navbar-nav > li > a {
  font-family: var(--font-sans) !important;
  font-size: .78rem !important;
  font-weight: 500 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.78) !important;
  padding: 18px 15px !important;
  position: relative !important;
  transition: color var(--dur) var(--ease) !important;
  background: transparent !important;
  border: none !important;
}

.pkp_navigation_primary > ul > li > a::after,
#navigationPrimary > ul > li > a::after,
.navbar-default .navbar-nav > li > a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) scaleX(0) !important;
  width: 80% !important;
  height: 2px !important;
  background: var(--grad-brand) !important;
  transition: transform var(--dur) var(--ease) !important;
  border-radius: 2px !important;
}

.pkp_navigation_primary > ul > li > a:hover,
#navigationPrimary > ul > li > a:hover,
.navbar-default .navbar-nav > li > a:hover,
.pkp_navigation_primary > ul > li.current > a,
#navigationPrimary > ul > li.current > a {
  color: #fff !important;
  background: transparent !important;
}

.pkp_navigation_primary > ul > li > a:hover::after,
.pkp_navigation_primary > ul > li.current > a::after,
#navigationPrimary > ul > li > a:hover::after {
  transform: translateX(-50%) scaleX(1) !important;
}

/* Dropdowns */
.pkp_navigation_primary .pkp_dropdown,
#navigationPrimary .pkp_dropdown,
.navbar-default .dropdown-menu {
  background: var(--c-navy) !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  border-top: 2px solid var(--c-teal) !important;
  border-radius: 0 0 var(--r-md) var(--r-md) !important;
  box-shadow: var(--sh-lg) !important;
  padding: 8px 6px !important;
  min-width: 220px !important;
  margin-top: 0 !important;
}

.pkp_navigation_primary .pkp_dropdown a,
#navigationPrimary .pkp_dropdown a,
.navbar-default .dropdown-menu > li > a {
  font-size: .82rem !important;
  color: rgba(255,255,255,.72) !important;
  padding: 9px 14px !important;
  border-radius: var(--r-sm) !important;
  display: block !important;
  transition: all var(--dur) var(--ease) !important;
}

.pkp_navigation_primary .pkp_dropdown a:hover,
.navbar-default .dropdown-menu > li > a:hover {
  background: rgba(20,212,172,.13) !important;
  color: var(--c-accent) !important;
  padding-left: 20px !important;
}

/* ============================================================
   PAGE STRUCTURE
   ============================================================ */
.pkp_structure_content,
#pkp_content_main {
  background: var(--c-bg) !important;
}

.pkp_structure_main,
.pkp_main,
main.pkp_structure_main {
  background: var(--c-bg) !important;
  padding: 40px 32px !important;
}

/* Main content card */
.pkp_structure_main > .page,
.pkp_page_editorial_policies .page,
.pkp_page_index .page {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-border) !important;
  border-radius: var(--r-lg) !important;
  box-shadow: var(--sh-sm) !important;
  padding: 40px 48px !important;
}

.pkp_structure_main h1,
.pkp_structure_main .page_title,
.page h1 {
  font-family: var(--font-serif) !important;
  font-size: 1.9rem !important;
  font-weight: 700 !important;
  color: var(--c-text) !important;
  margin-bottom: 28px !important;
  padding-bottom: 18px !important;
  border-bottom: 2px solid var(--c-border-lt) !important;
  position: relative !important;
}

.pkp_structure_main h1::after,
.pkp_structure_main .page_title::after {
  content: '' !important;
  position: absolute !important;
  bottom: -2px !important;
  left: 0 !important;
  width: 52px !important;
  height: 2px !important;
  background: var(--grad-brand) !important;
  border-radius: 2px !important;
}

.pkp_structure_main h2 {
  font-size: 1.25rem !important;
  margin: 28px 0 12px !important;
}

.pkp_structure_main h3 {
  font-size: 1.05rem !important;
  font-family: var(--font-sans) !important;
  font-weight: 600 !important;
  color: var(--c-text-2) !important;
  margin: 20px 0 8px !important;
}

.pkp_structure_main p { margin-bottom: 1em !important; }

/* Breadcrumb */
.pkp_navigation_breadcrumbs,
.breadcrumb,
nav[aria-label] ol {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0 6px !important;
  list-style: none !important;
  padding: 0 !important;
  margin-bottom: 24px !important;
  background: transparent !important;
  border: none !important;
  font-size: .8rem !important;
}
.pkp_navigation_breadcrumbs a,
.breadcrumb a { color: var(--c-teal) !important; font-weight: 500 !important; }
.pkp_navigation_breadcrumbs li::after,
.breadcrumb li::after { content: '›' !important; margin-left: 6px !important; color: var(--c-text-3) !important; }
.pkp_navigation_breadcrumbs li:last-child::after,
.breadcrumb li:last-child::after { content: '' !important; }

/* ============================================================
   SIDEBAR
   ============================================================ */
.pkp_structure_sidebar,
aside.pkp_structure_sidebar {
  background: var(--c-bg) !important;
  padding: 40px 12px 40px 8px !important;
}

.pkp_block,
.block {
  background: var(--c-surface) !important;
  border: 1px solid var(--c-border) !important;
  border-radius: var(--r-lg) !important;
  box-shadow: var(--sh-xs) !important;
  padding: 20px 20px !important;
  margin-bottom: 18px !important;
  overflow: hidden !important;
  transition: box-shadow var(--dur) var(--ease) !important;
}
.pkp_block:hover { box-shadow: var(--sh-sm) !important; }

.pkp_block h2,
.pkp_block .title,
.block h2,
.block .pkp_block_title {
  font-family: var(--font-sans) !important;
  font-size: .68rem !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: var(--c-text-3) !important;
  margin-bottom: 14px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid var(--c-border-lt) !important;
}

.pkp_block ul, .block ul { list-style: none !important; padding: 0 !important; }
.pkp_block ul li, .block ul li { border-bottom: 1px solid var(--c-border-lt) !important; }
.pkp_block ul li:last-child, .block ul li:last-child { border-bottom: none !important; }
.pkp_block ul li a, .block ul li a {
  display: block !important;
  padding: 7px 0 !important;
  font-size: .87rem !important;
  color: var(--c-text-2) !important;
  transition: color var(--dur) var(--ease), padding-left var(--dur) var(--ease) !important;
}
.pkp_block ul li a:hover, .block ul li a:hover {
  color: var(--c-teal) !important;
  padding-left: 5px !important;
}

.pkp_block p, .block p {
  font-size: .85rem !important;
  color: var(--c-text-2) !important;
  line-height: 1.65 !important;
  margin-bottom: .6em !important;
}
.pkp_block strong, .block strong {
  font-weight: 600 !important;
  color: var(--c-text) !important;
}

/* CTA button in sidebar */
.pkp_block .cmp_button,
.pkp_block a.cmp_button,
.pkp_block .pkp_button_primary {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  background: var(--grad-brand) !important;
  color: #fff !important;
  font-family: var(--font-sans) !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  padding: 11px 18px !important;
  border-radius: 100px !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(13,140,138,.28) !important;
  transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease) !important;
  cursor: pointer !important;
}
.pkp_block a.cmp_button:hover,
.pkp_block .pkp_button_primary:hover {
  opacity: .87 !important;
  transform: translateY(-2px) !important;
  color: #fff !important;
}

/* Social & partner images in sidebar */
.pkp_block a img {
  border-radius: var(--r-sm) !important;
  transition: transform var(--dur) var(--ease), opacity var(--dur) var(--ease) !important;
}
.pkp_block a:hover img {
  transform: scale(1.04) !important;
  opacity: .88 !important;
}

/* ============================================================
   ARTICLE LISTING
   ============================================================ */
.obj_issue_summary {
  border: 1px solid var(--c-border) !important;
  border-radius: var(--r-lg) !important;
  padding: 26px 30px !important;
  margin-bottom: 16px !important;
  background: var(--c-surface) !important;
  box-shadow: var(--sh-xs) !important;
  transition: box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease) !important;
}
.obj_issue_summary:hover {
  box-shadow: var(--sh-md) !important;
  transform: translateY(-2px) !important;
}
.obj_issue_summary .title a {
  font-family: var(--font-serif) !important;
  font-size: 1.1rem !important;
  color: var(--c-text) !important;
  font-weight: 700 !important;
}
.obj_issue_summary .title a:hover { color: var(--c-teal) !important; }

.obj_article_summary {
  padding: 18px 0 !important;
  border-bottom: 1px solid var(--c-border-lt) !important;
}
.obj_article_summary:last-child { border-bottom: none !important; }
.obj_article_summary .title a {
  font-family: var(--font-serif) !important;
  font-size: 1rem !important;
  color: var(--c-text) !important;
  font-weight: 600 !important;
}
.obj_article_summary .title a:hover { color: var(--c-teal) !important; }
.obj_article_summary .authors {
  font-size: .82rem !important;
  color: var(--c-text-3) !important;
  margin: 3px 0 !important;
}

/* ============================================================
   ARTICLE DETAIL
   ============================================================ */
.obj_article_details h1,
.pkp_page_article h1 {
  font-family: var(--font-serif) !important;
  font-size: 1.85rem !important;
  line-height: 1.35 !important;
  color: var(--c-text) !important;
  margin-bottom: 18px !important;
}

.obj_article_details .abstract h2 {
  font-family: var(--font-sans) !important;
  font-size: .7rem !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: var(--c-teal) !important;
  margin-bottom: 10px !important;
}

.obj_article_details .abstract p {
  border-left: 3px solid var(--c-teal-lt) !important;
  background: var(--grad-subtle) !important;
  border-radius: 0 var(--r-sm) var(--r-sm) 0 !important;
  padding: 18px 18px 18px 22px !important;
  font-size: .97rem !important;
  color: var(--c-text-2) !important;
  line-height: 1.85 !important;
}

.obj_galley_link a,
.pkp_page_article .galleys a,
.obj_article_details .galleys_links a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  background: var(--grad-brand) !important;
  color: #fff !important;
  font-family: var(--font-sans) !important;
  font-size: .8rem !important;
  font-weight: 600 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  padding: 9px 22px !important;
  border-radius: 100px !important;
  border: none !important;
  box-shadow: 0 4px 14px rgba(13,140,138,.25) !important;
  margin: 4px 6px 4px 0 !important;
  transition: all var(--dur) var(--ease) !important;
}
.obj_galley_link a:hover { opacity: .87 !important; transform: translateY(-1px) !important; color: #fff !important; }

.obj_article_details .keywords a {
  display: inline-block !important;
  background: var(--c-bg) !important;
  border: 1px solid var(--c-border) !important;
  border-radius: 100px !important;
  font-size: .76rem !important;
  padding: 4px 12px !important;
  color: var(--c-teal-dk) !important;
  margin: 3px 3px 3px 0 !important;
  transition: all var(--dur) var(--ease) !important;
  font-weight: 500 !important;
}
.obj_article_details .keywords a:hover {
  background: var(--c-teal) !important;
  color: #fff !important;
  border-color: var(--c-teal) !important;
}

/* ============================================================
   GLOBAL BUTTONS
   ============================================================ */
.pkp_button_primary,
.btn-primary,
input[type="submit"],
button[type="submit"] {
  background: var(--grad-brand) !important;
  color: #fff !important;
  font-family: var(--font-sans) !important;
  font-size: .85rem !important;
  font-weight: 600 !important;
  letter-spacing: .05em !important;
  padding: 10px 24px !important;
  border-radius: 100px !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(13,140,138,.25) !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  transition: all var(--dur) var(--ease) !important;
}
.pkp_button_primary:hover, .btn-primary:hover,
input[type="submit"]:hover, button[type="submit"]:hover {
  opacity: .87 !important;
  transform: translateY(-1px) !important;
  color: #fff !important;
}

.pkp_button, .btn-default {
  background: transparent !important;
  color: var(--c-teal) !important;
  font-family: var(--font-sans) !important;
  font-size: .85rem !important;
  font-weight: 500 !important;
  padding: 9px 22px !important;
  border-radius: 100px !important;
  border: 1.5px solid var(--c-teal) !important;
  cursor: pointer !important;
  transition: all var(--dur) var(--ease) !important;
}
.pkp_button:hover, .btn-default:hover {
  background: var(--c-teal) !important;
  color: #fff !important;
}

/* ============================================================
   FORMS
   ============================================================ */
label {
  font-size: .82rem !important;
  font-weight: 600 !important;
  color: var(--c-text-2) !important;
  display: block !important;
  margin-bottom: 5px !important;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="url"],
textarea,
select {
  font-family: var(--font-sans) !important;
  font-size: .9rem !important;
  color: var(--c-text) !important;
  background: var(--c-surface) !important;
  border: 1.5px solid var(--c-border) !important;
  border-radius: var(--r-md) !important;
  padding: 10px 14px !important;
  width: 100% !important;
  transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease) !important;
  outline: none !important;
  -webkit-appearance: none !important;
}
input:focus, textarea:focus, select:focus {
  border-color: var(--c-teal) !important;
  box-shadow: 0 0 0 3px rgba(13,140,138,.12) !important;
}

/* ============================================================
   TABLES
   ============================================================ */
table {
  width: 100% !important;
  border-collapse: collapse !important;
  font-size: .88rem !important;
  background: var(--c-surface) !important;
  border-radius: var(--r-md) !important;
  overflow: hidden !important;
}
th {
  background: var(--c-bg) !important;
  color: var(--c-text-3) !important;
  font-family: var(--font-sans) !important;
  font-size: .72rem !important;
  font-weight: 600 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
  padding: 12px 18px !important;
  border-bottom: 2px solid var(--c-border) !important;
  text-align: left !important;
}
td {
  padding: 12px 18px !important;
  border-bottom: 1px solid var(--c-border-lt) !important;
  color: var(--c-text-2) !important;
  vertical-align: middle !important;
}
tr:last-child td { border-bottom: none !important; }
tr:hover td { background: var(--c-bg) !important; }

/* ============================================================
   PAGINATION
   ============================================================ */
.pkp_pages, .pagination, ul.pagination {
  display: flex !important;
  list-style: none !important;
  gap: 5px !important;
  padding: 0 !important;
  margin: 40px 0 !important;
  justify-content: center !important;
}
.pkp_pages a, .pagination a, .pagination span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 36px !important;
  height: 36px !important;
  padding: 0 10px !important;
  border-radius: var(--r-sm) !important;
  border: 1.5px solid var(--c-border) !important;
  font-size: .85rem !important;
  font-weight: 500 !important;
  color: var(--c-text-2) !important;
  background: var(--c-surface) !important;
  transition: all var(--dur) var(--ease) !important;
}
.pkp_pages a:hover, .pagination a:hover {
  border-color: var(--c-teal) !important;
  color: var(--c-teal) !important;
}
.pkp_pages .current a, .pagination .active a, .pagination .active span {
  background: var(--grad-brand) !important;
  border-color: transparent !important;
  color: #fff !important;
}

/* ============================================================
   ALERTS
   ============================================================ */
.pkp_notification, .alert {
  border-radius: var(--r-md) !important;
  border: none !important;
  padding: 14px 18px !important;
  font-size: .88rem !important;
  margin-bottom: 16px !important;
}
.alert-success, .pkp_notification.notifySuccess {
  background: rgba(34,199,106,.1) !important;
  color: #1a6e40 !important;
  border-left: 3px solid var(--c-green) !important;
}
.alert-info, .pkp_notification.notifyInfo {
  background: rgba(13,140,138,.08) !important;
  color: var(--c-teal-dk) !important;
  border-left: 3px solid var(--c-teal) !important;
}
.alert-warning {
  background: rgba(232,184,75,.1) !important;
  color: #856018 !important;
  border-left: 3px solid var(--c-gold) !important;
}
.alert-danger {
  background: rgba(220,53,69,.08) !important;
  color: #8a1a26 !important;
  border-left: 3px solid #dc3545 !important;
}

/* ============================================================
   ANNOUNCEMENTS
   ============================================================ */
.obj_announcement_summary {
  border: 1px solid var(--c-border) !important;
  border-left: 3px solid var(--c-teal-lt) !important;
  border-radius: 0 var(--r-md) var(--r-md) 0 !important;
  padding: 18px 22px !important;
  margin-bottom: 14px !important;
  background: var(--c-surface) !important;
  box-shadow: var(--sh-xs) !important;
  transition: box-shadow var(--dur) var(--ease) !important;
}
.obj_announcement_summary:hover { box-shadow: var(--sh-sm) !important; }
.obj_announcement_summary .title a {
  font-family: var(--font-serif) !important;
  font-size: 1rem !important;
  color: var(--c-text) !important;
}
.obj_announcement_summary .date {
  font-size: .75rem !important;
  color: var(--c-text-3) !important;
  text-transform: uppercase !important;
  letter-spacing: .07em !important;
}

/* ============================================================
   FOOTER
   ============================================================ */
.pkp_structure_footer,
footer.pkp_structure_footer,
#pkp_content_footer {
  background: var(--c-dark) !important;
  border-top: none !important;
  padding: 56px 32px 36px !important;
  color: rgba(255,255,255,.45) !important;
}

.pkp_structure_footer::before {
  content: '' !important;
  display: block !important;
  width: 48px !important;
  height: 3px !important;
  background: var(--grad-brand) !important;
  margin: 0 auto 40px !important;
  border-radius: 3px !important;
}

.pkp_structure_footer p,
.pkp_structure_footer .pkp_footer_content {
  font-size: .8rem !important;
  text-align: center !important;
  line-height: 1.9 !important;
  color: rgba(255,255,255,.45) !important;
}

.pkp_structure_footer a {
  color: rgba(255,255,255,.55) !important;
  transition: color var(--dur) var(--ease) !important;
}
.pkp_structure_footer a:hover { color: var(--c-accent) !important; }

.pkp_structure_footer img {
  filter: brightness(.8) !important;
  transition: filter var(--dur) var(--ease) !important;
  max-height: 36px !important;
  width: auto !important;
}
.pkp_structure_footer img:hover { filter: brightness(1) !important; }

.pkp_structure_footer .pkp_brand_footer {
  border-top: 1px solid rgba(255,255,255,.07) !important;
  margin-top: 28px !important;
  padding-top: 20px !important;
  text-align: center !important;
}
.pkp_structure_footer .pkp_brand_footer img {
  opacity: .35 !important;
  max-height: 28px !important;
}

/* ============================================================
   FOCUS (accessibility)
   ============================================================ */
:focus-visible {
  outline: 2px solid var(--c-teal-lt) !important;
  outline-offset: 3px !important;
  border-radius: 3px !important;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 992px) {
  .pkp_structure_main > .page { padding: 28px !important; }
  .pkp_structure_sidebar { padding: 20px 10px !important; }
}

@media (max-width: 768px) {
  .pkp_structure_main, .pkp_main { padding: 20px 14px !important; }
  .pkp_structure_main > .page { padding: 22px 16px !important; border-radius: var(--r-md) !important; }
  .pkp_structure_main h1, .pkp_structure_main .page_title { font-size: 1.4rem !important; }
  .navbar-default .navbar-nav > li > a { padding: 13px 10px !important; font-size: .72rem !important; }
  #headerLogo img, .navbar-brand img { max-height: 50px !important; }
}

/* ── End of IJPMRI Custom Stylesheet v2.0 ── */
