/* =============================================================================
   SQAA theme — official design system (every frontend page)
   Sultan Qaboos Air Academy Journal of Interdisciplinary Studies · Arabic (RTL) first.
   Tokens · fonts · base · header (utility bar, masthead, navigation) · drawer · banner ·
   inner pages (side panel, documents) · OJS components · footer · accessibility modes ·
   responsive · print. The homepage adds home.css.
   Light by design: no blur filters, no scroll-driven effects, no WebGL; motion is limited
   to opacity/transform and switched off for "reduce motion".
   ============================================================================= */

/* ---------- Fonts (self-hosted, SIL Open Font License; see assets/fonts/LICENSE-*) ---------- */
@font-face { font-family: "SQAA Sans"; font-weight: 400; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F; src: url("../assets/fonts/ibm-plex-sans-arabic-arabic-400-normal.woff2") format("woff2"); }
@font-face { font-family: "SQAA Sans"; font-weight: 500; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F; src: url("../assets/fonts/ibm-plex-sans-arabic-arabic-500-normal.woff2") format("woff2"); }
@font-face { font-family: "SQAA Sans"; font-weight: 600; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F; src: url("../assets/fonts/ibm-plex-sans-arabic-arabic-600-normal.woff2") format("woff2"); }
@font-face { font-family: "SQAA Sans"; font-weight: 700; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F; src: url("../assets/fonts/ibm-plex-sans-arabic-arabic-700-normal.woff2") format("woff2"); }
@font-face { font-family: "SQAA Sans"; font-weight: 400; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212; src: url("../assets/fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "SQAA Sans"; font-weight: 500; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212; src: url("../assets/fonts/ibm-plex-sans-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "SQAA Sans"; font-weight: 600; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212; src: url("../assets/fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "SQAA Sans"; font-weight: 700; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212; src: url("../assets/fonts/ibm-plex-sans-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "SQAA Naskh"; font-weight: 700; font-display: swap; unicode-range: U+0600-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F; src: url("../assets/fonts/noto-naskh-arabic-arabic-700-normal.woff2") format("woff2"); }
@font-face { font-family: "SQAA Serif"; font-weight: 600; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2190-2199, U+2212; src: url("../assets/fonts/source-serif-4-latin-600-normal.woff2") format("woff2"); }

/* ---------- Tokens ---------- */
:root {
  /* institutional navy, crest blue and gold, and the national colours (the flag line) */
  --navy-950: #061528;
  --navy-900: #0a1f3c;
  --navy-800: #0f2a50;
  --navy-700: #183a69;
  --blue-700: #04558f;
  --blue-600: #0563a8;          /* crest blue: links */
  --gold-600: #9c7531;          /* gold for lines and icons on light backgrounds */
  --gold-500: #c9a052;
  --gold-300: #e6c081;          /* crest gold: on navy */
  --om-red: #c8102e;
  --om-green: #007a3d;
  --ok: #157347;
  --ok-bg: #e5f3eb;
  --wait: #8a5800;
  --wait-bg: #fdf1dc;
  /* surfaces and ink */
  --surface: #ffffff;
  --bg: #ffffff;
  --bg-2: #f4f6f9;
  --bg-3: #e9edf3;
  --ink: #0f1a2b;
  --ink-2: #334155;
  --muted: #5b687a;
  --line: #dfe4eb;
  --line-2: #c3ccd8;
  --heading: #0a1f3c;           /* headings and strong text (navy as text) */
  --on-navy: #ffffff;
  --on-navy-2: rgba(255, 255, 255, .78);
  --on-navy-line: rgba(255, 255, 255, .16);
  --focus: #f2b705;
  /* type */
  --sans: "SQAA Sans", -apple-system, "Segoe UI", Tahoma, Arial, sans-serif;
  --display: "SQAA Serif", Georgia, "Times New Roman", serif;
  --display-w: 600;
  --lh: 1.7;
  /* layout */
  --gutter: clamp(16px, 4vw, 40px);
  --wrap: 1280px;
  --nav-h: 54px;
  --radius: 4px;
  --ease: cubic-bezier(.22, 1, .36, 1);
}
html[dir=rtl] { --display: "SQAA Naskh", "SQAA Serif", "SQAA Sans", serif; --display-w: 700; --lh: 1.9; }

/* ---------- Base ---------- */
html { font-size: 100%; background: var(--navy-950); -webkit-text-size-adjust: 100%; overflow-x: clip; }
body { margin: 0; font: 400 1.0625rem/var(--lh) var(--sans); color: var(--ink); background: var(--bg); -webkit-font-smoothing: antialiased; overflow-x: clip; }
body, body :is(h1, h2, h3, h4, h5, h6, p, li, a, span, button, input, select, textarea, label, dt, dd, legend, td, th, small, b, strong) { font-family: var(--sans); }
body :is(h1, h2) { font-family: var(--display); font-weight: var(--display-w); }
.pkp_structure_main :is(h1, h2) { font-family: var(--display); font-weight: var(--display-w); line-height: 1.45; }
[dir=ltr] .pkp_structure_main :is(h1, h2) { line-height: 1.2; }
.pkp_structure_main :is(h3, h4, h5, h6) { font-family: var(--sans); line-height: 1.5; }
a { color: var(--blue-600); text-decoration: none; }
a:hover { color: var(--heading); }
img { max-width: 100%; height: auto; }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.container { width: 100%; max-width: var(--wrap); margin-inline: auto; padding-inline: var(--gutter); box-sizing: border-box; }
.skip { position: fixed; top: -100px; inset-inline-start: 12px; z-index: 200; padding: 10px 16px; background: var(--focus); color: #000; font-weight: 600; }
.skip:focus { top: 12px; }
/* Screen-reader-only text, hidden in place (the parent theme pushes it 2000px left, which in RTL becomes a scrollable area) */
.pkp_screen_reader, .cmp_skip_to_content a:not(:focus) { position: absolute !important; left: auto !important; right: auto !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; margin: -1px !important; }

/* Icons (Lucide sprite, assets/icons.svg) */
.ico { width: 1.25em; height: 1.25em; flex: none; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; vertical-align: -.25em; }
[dir=rtl] .ico--fwd { transform: scaleX(-1); }

/* Technical drawings (docs/tools/aircraft-drawings.mjs) */
.drawing { display: block; width: 100%; height: auto; overflow: visible; }
.drawing path { fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.drawing__outline { stroke-width: 1.4; }
.drawing__inner { stroke-width: .9; opacity: .72; }
.drawing__centre { stroke-width: .8; stroke-dasharray: 14 4 2 4; opacity: .55; }
.drawing__props { stroke-width: .8; stroke-dasharray: 3 3; opacity: .7; }

/* ---------- OJS page structure (reset the parent theme's frame) ---------- */
.pkp_structure_page { max-width: none; margin: 0; padding: 0; background: var(--bg); box-shadow: none; }
.pkp_structure_content, .pkp_structure_main { box-sizing: border-box; }
.pkp_structure_content::before, .pkp_structure_content::after, .pkp_structure_main::before, .pkp_structure_main::after { display: none !important; }
body.sqaa-home .pkp_structure_content, body.sqaa-home .pkp_structure_main { max-width: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; float: none !important; display: block; }
body.sqaa-inner .pkp_structure_content { max-width: var(--wrap); margin: 0 auto; padding: clamp(32px, 4.5vw, 60px) var(--gutter) clamp(64px, 8vw, 104px); display: block; float: none; width: auto; }
body.sqaa-inner .pkp_structure_content.has_section { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 300px); gap: clamp(32px, 4vw, 64px); align-items: start; }
body.sqaa-inner .pkp_structure_main { width: auto !important; float: none !important; padding: 0 !important; margin: 0 !important; min-width: 0; }
body.sqaa-inner .pkp_structure_sidebar { width: auto; float: none; padding: 0; margin: 32px 0 0; }

/* ---------- Buttons and links ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 0 22px; box-sizing: border-box;
  border: 1px solid transparent; border-radius: var(--radius); font: 600 .9375rem/1.2 var(--sans); text-decoration: none; white-space: nowrap; cursor: pointer;
  transition: background-color .2s, color .2s, border-color .2s, box-shadow .2s;
}
.btn--primary { background: var(--navy-900); color: #fff !important; }
.btn--primary:hover { background: var(--navy-700); }
.btn--gold { background: var(--gold-500); color: var(--navy-950) !important; }
.btn--gold:hover { background: var(--gold-300); }
.btn--line { border-color: rgba(255, 255, 255, .5); color: #fff !important; background: transparent; }
.btn--line:hover { background: rgba(255, 255, 255, .1); border-color: #fff; }
.btn--quiet { border-color: var(--line-2); color: var(--heading) !important; background: var(--surface); }
.btn--quiet:hover { border-color: var(--navy-900); }
.btn--lg { min-height: 52px; padding: 0 26px; font-size: 1rem; }
.btn--block { display: flex; width: 100%; }
.btn .ico { width: 1.15em; height: 1.15em; }
.btn__arrow { transition: transform .25s var(--ease); }
.btn:hover .btn__arrow { transform: translateX(3px); }
[dir=rtl] .btn:hover .btn__arrow { transform: scaleX(-1) translateX(3px); }
.more { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; font-size: .9375rem; color: var(--blue-600); white-space: nowrap; }
.more:hover { color: var(--heading); }
.eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 12px; font: 600 .8125rem/1.5 var(--sans); color: var(--blue-700); }
[dir=ltr] .eyebrow { text-transform: uppercase; letter-spacing: .1em; font-size: .75rem; }
.eyebrow::before { content: ""; flex: none; width: 28px; height: 2px; background: var(--gold-500); }
.eyebrow--gold { color: var(--gold-300); }

/* =============================================================================
   Header
   ============================================================================= */

/* 1. utility bar */
.util { background: var(--navy-950); color: var(--on-navy-2); font-size: .8125rem; }
.util__in { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 40px; }
.util__org { display: flex; align-items: center; gap: 12px; margin: 0; white-space: nowrap; }
.util__org span + span { padding-inline-start: 12px; border-inline-start: 1px solid var(--on-navy-line); }
.util__tools { display: flex; align-items: center; gap: 18px; }
.util__date { white-space: nowrap; }
.util a { color: var(--on-navy-2); }
.util a:hover { color: #fff; }
.util__lang { display: inline-flex; align-items: center; gap: 6px; }
.util__lang .ico { width: 15px; height: 15px; }
/* account links (OJS user menu) */
.user__list { display: flex; align-items: center; gap: 14px; margin: 0; padding: 0; list-style: none; }
.user__list > li { position: relative; display: block; }
.user__list > li > a { display: block; padding: 6px 0; white-space: nowrap; }
.user__list ul { position: absolute !important; top: 100% !important; z-index: 60; min-width: 210px; margin: 0; padding: 6px 0 !important; list-style: none; background: var(--surface); border-top: 3px solid var(--gold-500); box-shadow: 0 18px 40px -14px rgba(6, 21, 40, .45); opacity: 0; visibility: hidden; transition: opacity .2s, visibility 0s .2s; }
[dir=rtl] .user__list ul { left: 0 !important; right: auto !important; }
[dir=ltr] .user__list ul { right: 0 !important; left: auto !important; }
.user__list > li:hover > ul, .user__list > li:focus-within > ul { opacity: 1; visibility: visible; transition: opacity .2s; }
.user__list ul li { display: block; }
.user__list ul a { display: block; padding: 9px 16px; color: var(--ink) !important; font-size: .875rem; }
.user__list ul a:hover { background: var(--bg-2); }
.user__list .task_count { display: inline-grid; place-items: center; min-width: 18px; height: 18px; margin-inline-start: 6px; border-radius: 9px; background: var(--om-red); color: #fff; font-size: .6875rem; }

/* 2. masthead */
.masthead { background: var(--surface); border-bottom: 1px solid var(--line); }
.masthead__in { display: flex; align-items: center; gap: clamp(16px, 2vw, 28px); min-height: 104px; }
.seal { display: flex; align-items: center; gap: 16px; min-width: 0; color: var(--heading); text-decoration: none; }
.seal:hover { color: var(--heading); }
.seal__crest { flex: none; width: 72px; height: 72px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 1px var(--line), 0 0 0 4px #fff, 0 0 0 5px var(--gold-500); }
.seal__text { display: grid; padding-inline-start: 16px; border-inline-start: 1px solid var(--line-2); min-width: 0; }
.seal__name { font-family: var(--display); font-weight: var(--display-w); font-size: 1.4rem; line-height: 1.35; color: var(--heading); }
.seal__sub { font-family: var(--display); font-weight: var(--display-w); font-size: 1.05rem; line-height: 1.45; color: var(--navy-700); }
.seal__meta { margin-top: 4px; font-size: .75rem; line-height: 1.4; color: var(--muted); letter-spacing: .02em; }
.search { position: relative; display: flex; flex: 0 1 300px; margin-inline-start: auto; }
.search input { width: 100%; height: 44px; box-sizing: border-box; padding-inline: 14px 46px; border: 1px solid var(--line-2); border-radius: var(--radius); background: var(--bg-2); font: 400 .9375rem var(--sans); color: var(--ink); -webkit-appearance: none; appearance: none; }
.search input::placeholder { color: var(--muted); }
.search input:focus { outline: none; border-color: var(--blue-600); background: var(--surface); box-shadow: 0 0 0 3px rgba(5, 99, 168, .15); }
.search button { position: absolute; inset-block: 0; inset-inline-end: 0; width: 44px; display: grid; place-items: center; border: 0; background: none; color: var(--navy-700); cursor: pointer; }
.search .ico { width: 19px; height: 19px; }
.masthead__submit { flex: none; }
.masthead__lang, .menu-toggle { display: none; }
.menu-toggle { align-items: center; gap: 8px; height: 42px; padding: 0 14px; border: 1px solid var(--line-2); border-radius: var(--radius); background: var(--surface); color: var(--heading); font: 600 .875rem var(--sans); cursor: pointer; }
.menu-toggle .ico { width: 20px; height: 20px; }
.menu-toggle .ico--close, .drawer-open .menu-toggle .ico--open { display: none; }
.drawer-open .menu-toggle .ico--close { display: block; }
.masthead__lang { padding: 8px 10px; font-weight: 600; font-size: .875rem; color: var(--heading); }

/* 3. navigation bar */
.mainnav { position: sticky; top: 0; z-index: 40; background: var(--navy-900); color: #fff; transition: box-shadow .25s; }
.mainnav.is-stuck { box-shadow: 0 8px 22px -10px rgba(6, 21, 40, .6); }
.mainnav__in { display: flex; align-items: stretch; min-height: var(--nav-h); }
.mainnav__crest { display: flex; align-items: center; width: 0; overflow: hidden; opacity: 0; transition: width .3s var(--ease), opacity .2s, margin .3s var(--ease); }
.mainnav__crest img { width: 32px; height: 32px; border-radius: 50%; background: #fff; }
.mainnav.is-stuck .mainnav__crest { width: 32px; margin-inline-end: 14px; opacity: 1; }
.mainnav__home { display: flex; align-items: center; gap: 8px; padding-inline: 14px; border-block: 3px solid transparent; color: var(--on-navy-2); font-weight: 500; font-size: .9375rem; white-space: nowrap; }
.mainnav__home .ico { width: 18px; height: 18px; }
.mainnav__list { display: flex; align-items: stretch; margin: 0; padding: 0; list-style: none; }
.mainnav__list > li { position: relative; display: flex; }
.mainnav__list > li > a { display: flex; align-items: center; gap: 8px; padding-inline: 14px; border-block: 3px solid transparent; color: var(--on-navy-2); font-weight: 500; font-size: .9375rem; line-height: 1.2; white-space: nowrap; }
.mainnav__home:hover, .mainnav__list > li > a:hover, .mainnav__list > li:focus-within > a, .mainnav__list > li.is-open > a { color: #fff; background: rgba(255, 255, 255, .06); }
.mainnav__home.is-current, .mainnav__list > li.is-current > a { color: #fff; border-bottom-color: var(--gold-500); }
.mainnav__list > li.has-sub > a::after { content: ""; width: 6px; height: 6px; margin-top: -4px; border: solid currentColor; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg); opacity: .7; }
.mainnav__list ul {
  position: absolute !important; top: 100% !important; z-index: 50; width: auto !important; min-width: 250px; margin: 0; padding: 6px 0 !important; list-style: none;
  background: var(--surface); border-top: 3px solid var(--gold-500); border-radius: 0 0 var(--radius) var(--radius); box-shadow: 0 18px 40px -12px rgba(6, 21, 40, .45);
  opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .2s, transform .25s var(--ease), visibility 0s .25s;
}
[dir=ltr] .mainnav__list ul { left: 0 !important; right: auto !important; }
[dir=rtl] .mainnav__list ul { right: 0 !important; left: auto !important; }
.mainnav__list > li:hover > ul, .mainnav__list > li:focus-within > ul, .mainnav__list > li.is-open > ul { opacity: 1; visibility: visible; transform: none; transition: opacity .2s, transform .25s var(--ease); }
.mainnav__list ul li { display: block; }
.mainnav__list ul a { display: block; padding: 10px 18px; border-inline-start: 3px solid transparent; color: var(--ink) !important; font-size: .9375rem; line-height: 1.5; }
.mainnav__list ul a:hover, .mainnav__list ul a.is-current { background: var(--bg-2); border-inline-start-color: var(--gold-500); color: var(--heading) !important; }

/* drawer (phones and tablets) */
.drawer { position: fixed; inset: 0; z-index: 70; overflow-y: auto; background: var(--navy-900); color: #fff; overscroll-behavior: contain; }
.drawer[hidden] { display: none; }
.drawer__in { min-height: 100%; box-sizing: border-box; padding: 20px var(--gutter) 32px; display: flex; flex-direction: column; gap: 22px; }
.search--drawer { flex: none; margin: 0; }
.search--drawer input { background: rgba(255, 255, 255, .08); border-color: var(--on-navy-line); color: #fff; }
.search--drawer input::placeholder { color: var(--on-navy-2); }
.search--drawer button { color: var(--gold-300); }
.drawer__home { display: block; padding: 12px 0; border-bottom: 1px solid var(--on-navy-line); color: #fff; font-weight: 600; font-size: 1.125rem; }
.drawer__list { margin: 0; padding: 0; list-style: none; }
.drawer__list > li { display: block; border-bottom: 1px solid var(--on-navy-line); }
.drawer__list > li > a { display: block; padding: 12px 0; color: #fff; font-weight: 600; font-size: 1.125rem; }
.drawer__list ul { position: static !important; left: auto !important; right: auto !important; width: auto !important; margin: 0 0 12px; padding: 0 !important; list-style: none; background: none; box-shadow: none; border: 0; }
.drawer__list ul li { display: block; }
.drawer__list ul a { display: block; padding: 6px 0; padding-inline-start: 14px; border-inline-start: 2px solid var(--on-navy-line); color: var(--on-navy-2); font-size: .9375rem; }
.drawer__list a.is-current { color: var(--gold-300); }
.drawer__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 20px; margin-top: auto; padding-top: 20px; border-top: 1px solid var(--on-navy-line); }
.drawer__foot .btn { flex: 1 1 100%; }
.drawer__user, .drawer__user ul { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0; padding: 0; list-style: none; position: static !important; background: none; box-shadow: none; }
.drawer__user li { display: block; }
.drawer__foot a { color: #fff; }
body.drawer-open { overflow: hidden; }

/* ---------- Inner pages: banner ---------- */
.banner { position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(70% 140% at 85% 0%, #14396a 0%, transparent 60%), var(--navy-900); color: #fff; }
[dir=rtl] .banner { background: radial-gradient(70% 140% at 15% 0%, #14396a 0%, transparent 60%), var(--navy-900); }
.banner::before { /* drafting grid */
  content: ""; position: absolute; inset: 0; z-index: -2; pointer-events: none;
  background-image: linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px);
  background-size: 28px 28px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 40%); mask-image: linear-gradient(90deg, transparent, #000 40%);
}
[dir=rtl] .banner::before { -webkit-mask-image: linear-gradient(-90deg, transparent, #000 40%); mask-image: linear-gradient(-90deg, transparent, #000 40%); }
.banner::after { content: ""; position: absolute; inset: auto 0 0; height: 3px; background: linear-gradient(90deg, var(--gold-500), rgba(201, 160, 82, 0) 70%); }
[dir=rtl] .banner::after { background: linear-gradient(-90deg, var(--gold-500), rgba(201, 160, 82, 0) 70%); }
.banner__art { position: absolute; z-index: -1; top: 50%; inset-inline-end: max(-60px, calc((100vw - var(--wrap)) / 2 - 80px)); width: min(42vw, 520px); color: var(--gold-300); opacity: .2; transform: translateY(-50%) rotate(-24deg); pointer-events: none; }
[dir=rtl] .banner__art { transform: translateY(-50%) scaleX(-1) rotate(-24deg); }
.banner__in { position: relative; padding-block: clamp(30px, 4vw, 48px) clamp(34px, 4.5vw, 54px); }
.crumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0 0 18px; padding: 0; list-style: none; font-size: .8125rem; color: var(--on-navy-2); }
.crumbs li { display: inline-flex; align-items: center; gap: 10px; }
.crumbs li + li::before { content: ""; width: 5px; height: 5px; border: solid rgba(255, 255, 255, .5); border-width: 1.5px 1.5px 0 0; transform: rotate(45deg); }
[dir=rtl] .crumbs li + li::before { transform: rotate(-135deg); }
.crumbs a { color: var(--on-navy-2); }
.crumbs a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.crumbs [aria-current] span { color: #fff; }
.banner__kicker { margin: 0 0 6px; color: var(--gold-300); font-weight: 600; font-size: .875rem; }
.banner__title { max-width: 26em; margin: 0; color: #fff; font-size: clamp(1.85rem, 1.25rem + 2vw, 2.75rem); line-height: 1.35; }
[dir=ltr] .banner__title { line-height: 1.15; letter-spacing: -.01em; }
.banner--article .banner__in { padding-block: 22px 26px; }

/* the page's own breadcrumbs and title now live in the banner */
body.sqaa-inner .pkp_structure_main > .cmp_breadcrumbs,
body.sqaa-inner .pkp_structure_main > .page > .cmp_breadcrumbs,
body.sqaa-inner .pkp_structure_main > .page > h1,
body.sqaa-inner .pkp_structure_main > .page > .cmp_edit_link + h1 { display: none; }

/* ---------- Inner pages: side panel ---------- */
.side { position: sticky; top: calc(var(--nav-h) + 24px); display: grid; gap: 16px; }
.side__box { padding: 20px 22px; background: var(--surface); border: 1px solid var(--line); }
.side__title { margin: 0 0 12px; font-weight: 700; font-size: .875rem; color: var(--heading); }
.side__nav { border-top: 3px solid var(--navy-900); }
.side__nav ul, .side__toc ol { margin: 0; padding: 0; list-style: none; }
.side__nav a { display: block; padding: 9px 12px; margin-inline: -12px; border-inline-start: 3px solid transparent; color: var(--ink-2); font-size: .9375rem; line-height: 1.5; }
.side__nav a:hover { background: var(--bg-2); color: var(--heading); }
.side__nav a.is-active { border-inline-start-color: var(--gold-500); background: var(--bg-2); color: var(--heading); font-weight: 600; }
.side__toc[hidden] { display: none; }
.side__toc ol { max-height: 46vh; overflow-y: auto; border-inline-start: 1px solid var(--line); }
.side__toc a { display: block; padding: 5px 12px; margin-inline-start: -1px; border-inline-start: 2px solid transparent; color: var(--muted); font-size: .8125rem; line-height: 1.55; }
.side__toc a:hover { color: var(--heading); }
.side__toc a.is-active { border-inline-start-color: var(--blue-600); color: var(--heading); font-weight: 600; }
.side__cta { background: var(--navy-900); border-color: var(--navy-900); color: var(--on-navy-2); font-size: .875rem; }
.side__cta .side__title { color: #fff; font-size: 1rem; }
.side__cta p { margin: 0 0 16px; line-height: 1.7; }
.side__cta-ico { width: 30px; height: 30px; margin-bottom: 10px; color: var(--gold-300); }
.side__help a { display: flex; align-items: center; gap: 10px; font-size: .875rem; word-break: break-all; }

/* ---------- Inner pages: documents and content ---------- */
body.sqaa-inner .pkp_structure_main .page { max-width: 860px; }
body.sqaa-inner .pkp_structure_content:not(.has_section) .pkp_structure_main .page { margin-inline: auto; }
body.sqaa-inner .pkp_structure_main :is(p, li, dd) { color: var(--ink-2); }
body.sqaa-inner .pkp_structure_main h2 { margin: 2em 0 .6em; font-size: clamp(1.4rem, 1.15rem + .8vw, 1.75rem); line-height: 1.45; color: var(--heading); }
[dir=ltr] body.sqaa-inner .pkp_structure_main h2 { line-height: 1.25; }
body.sqaa-inner .pkp_structure_main h3 { margin: 1.5em 0 .4em; font-weight: 600; font-size: 1.125rem; line-height: 1.5; color: var(--ink); }
body.sqaa-inner .pkp_structure_main .page :is(p, li) a, .sqaa-document a { color: var(--blue-600); text-decoration: underline; text-decoration-color: rgba(5, 99, 168, .35); text-underline-offset: 3px; }
body.sqaa-inner .pkp_structure_main .page :is(p, li) a:hover { text-decoration-color: currentColor; }
.pkp_structure_main ul li::marker { color: var(--gold-600); }
.pkp_structure_main ol li::marker { color: var(--navy-700); font-weight: 600; }
.sqaa-document { counter-reset: blk; }
.sqaa-document .content-block { counter-increment: blk; padding-block: 28px 8px; border-top: 1px solid var(--line); scroll-margin-top: calc(var(--nav-h) + 20px); }
.sqaa-document .content-block:first-child { padding-top: 0; border-top: 0; }
.sqaa-document .content-block > h2:first-child { display: flex; align-items: baseline; gap: 14px; margin-top: 0; }
.sqaa-document .content-block > h2:first-child::before { content: counter(blk, decimal-leading-zero); flex: none; font: 600 .8125rem/1 var(--sans); color: var(--gold-600); letter-spacing: .06em; padding: 6px 8px; border: 1px solid var(--line-2); border-radius: 3px; transform: translateY(-.2em); }
.sqaa-document :is(ol, ul) { padding-inline-start: 1.3em; }
.sqaa-document li + li { margin-top: .4em; }
.detail-grid, .stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; margin: 20px 0; }
.detail-grid > article, .stats-grid > article { padding: 18px 20px; background: var(--bg-2); border: 1px solid var(--line); border-inline-start: 3px solid var(--navy-700); }
.detail-grid h3 { margin: 0 0 8px !important; font-size: 1rem !important; color: var(--heading) !important; }
.detail-grid p { margin: 0; font-size: .9375rem; line-height: 1.75; }
.stats-grid strong { display: block; color: var(--muted); font-weight: 500; font-size: .8125rem; }
.stats-grid span { display: block; color: var(--heading); font-weight: 600; margin-top: 2px; }
.member-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; margin-top: 20px; }
.member-card { display: grid; grid-template-columns: 64px 1fr; gap: 0 14px; align-items: center; padding: 14px; background: var(--surface); border: 1px solid var(--line); }
.member-avatar { grid-row: span 3; }
.member-avatar img { display: block; width: 64px; height: 64px; object-fit: cover; border-radius: 50%; filter: grayscale(1); }
.member-card h3 { margin: 0 !important; font-size: .9375rem !important; line-height: 1.45; color: var(--heading) !important; }
.member-card p { margin: 2px 0 0; font-size: .8125rem; line-height: 1.5; }
.member-card .muted, .sqaa-document .muted { color: var(--muted); }
.sqaa-eyebrow { margin: 0 0 6px; font-size: .8125rem; font-weight: 600; color: var(--blue-700); }
.sqaa-submission-kit { margin-bottom: 32px; padding: clamp(20px, 3vw, 32px); background: var(--bg-2); border: 1px solid var(--line); border-top: 4px solid var(--navy-900); }
.sqaa-submission-kit h2 { margin-top: 0 !important; }
.sqaa-kit-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; margin: 20px 0; }
.sqaa-kit-card, .sqaa-download a {
  display: flex; flex-direction: column; justify-content: center; min-height: 64px; box-sizing: border-box; padding: 12px 16px; padding-inline-start: 58px; position: relative;
  background: var(--surface); border: 1px solid var(--line); color: var(--heading) !important; text-decoration: none !important; transition: border-color .2s, box-shadow .2s;
}
.sqaa-kit-card::before, .sqaa-download a::before {
  content: ""; position: absolute; inset-inline-start: 16px; top: 50%; width: 28px; height: 28px; transform: translateY(-50%); background: var(--navy-700);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z'/%3E%3Cpath d='M14 2v4a2 2 0 0 0 2 2h4'/%3E%3Cpath d='M12 18v-6'/%3E%3Cpath d='m9 15 3 3 3-3'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z'/%3E%3Cpath d='M14 2v4a2 2 0 0 0 2 2h4'/%3E%3Cpath d='M12 18v-6'/%3E%3Cpath d='m9 15 3 3 3-3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.sqaa-kit-card:hover, .sqaa-download a:hover { border-color: var(--navy-700); box-shadow: 0 10px 24px -16px rgba(6, 21, 40, .45); }
.sqaa-kit-card strong { display: block; font-weight: 600; font-size: .9375rem; }
.sqaa-kit-card span { display: block; font-size: .75rem; color: var(--muted); letter-spacing: .04em; }
.sqaa-download { margin: 0 0 28px; }
.sqaa-download a { display: inline-flex; font-weight: 600; }
.pkp_structure_main table { width: 100%; border-collapse: collapse; margin: 20px 0; font-size: .9375rem; }
.pkp_structure_main th { background: var(--navy-900); color: #fff; text-align: start; font-weight: 600; padding: 10px 14px; }
.pkp_structure_main td { padding: 10px 14px; border-bottom: 1px solid var(--line); }
.pkp_structure_main tr:nth-child(even) td { background: var(--bg-2); }

/* the journey: each journal page ends with the next one */
.next { margin-top: clamp(40px, 6vw, 72px); max-width: 860px; }
.next a { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2px 20px; padding: 20px 24px; background: var(--bg-2); border: 1px solid var(--line); border-inline-start: 4px solid var(--gold-500); color: var(--heading); text-decoration: none; transition: border-color .2s, background-color .2s; }
.next a:hover { background: var(--surface); border-color: var(--navy-700); border-inline-start-color: var(--gold-500); }
.next__label { font-size: .8125rem; color: var(--muted); }
.next__title { grid-column: 1; font-family: var(--display); font-weight: var(--display-w); font-size: 1.35rem; line-height: 1.4; }
.next__arrow { grid-column: 2; grid-row: 1 / span 2; width: 28px; height: 28px; color: var(--navy-700); }

/* ---------- OJS components ---------- */
.cmp_button, .cmp_form .buttons button, .cmp_form button[type=submit], .pkp_button, .block_make_submission a, .cmp_notification .cmp_button, .page_search .submit button {
  display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 22px; border: 0; border-radius: var(--radius);
  background: var(--navy-900); color: #fff !important; font: 600 .9375rem var(--sans); box-shadow: none; text-shadow: none; cursor: pointer;
}
.cmp_button:hover, .cmp_form button[type=submit]:hover, .block_make_submission a:hover { background: var(--navy-700); }
.cmp_form fieldset { border: 0; padding: 0; margin: 0 0 28px; }
.cmp_form legend { margin-bottom: 14px; padding: 0; font-weight: 700; font-size: 1.05rem; color: var(--heading); }
.cmp_form label { display: block; color: var(--ink-2); font-size: .9375rem; }
.cmp_form .label { display: block; margin-bottom: 6px; color: var(--ink); font-weight: 600; font-size: .875rem; }
.cmp_form .required { color: var(--om-red); }
.cmp_form :is(input[type=text], input[type=email], input[type=password], input[type=url], input[type=tel], input[type=search], select, textarea),
.page_search :is(input[type=text], select) {
  display: block; width: 100%; max-width: none; box-sizing: border-box; min-height: 46px; padding: 10px 14px;
  border: 1px solid var(--line-2); border-radius: var(--radius); background: var(--surface); font: 400 1rem var(--sans); color: var(--ink); box-shadow: none;
}
.cmp_form :is(input, select, textarea):focus { outline: none; border-color: var(--blue-600); box-shadow: 0 0 0 3px rgba(5, 99, 168, .15); }
body.sqaa-inner .pkp_structure_main .cmp_form { display: block; width: auto; max-width: none; box-sizing: border-box; }
.cmp_form .fields > div, .cmp_form .fields > fieldset > div { margin-bottom: 18px; }
.cmp_form .buttons { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; margin-top: 8px; }
.cmp_form .buttons a { font-weight: 600; }
.cmp_form :is(.remember, .optin) label { display: flex; align-items: center; gap: 10px; }
.cmp_notification { margin: 0 0 24px; padding: 16px 20px; background: var(--bg-2); border: 1px solid var(--line); border-inline-start: 4px solid var(--blue-600); color: var(--ink-2); font-size: .9375rem; }
.cmp_notification.warning, .cmp_notification.notice { border-inline-start-color: var(--gold-500); }
.cmp_notification.error { border-inline-start-color: var(--om-red); }
.cmp_edit_link { display: inline-block; margin-inline-start: 10px; font-size: .8125rem; }
/* account pages: one formal card */
body.sqaa-inner .pkp_structure_main :is(.page_login, .page_lost_password, .page_reset_password) { max-width: 520px; margin-inline: auto; }
body.sqaa-inner .pkp_structure_main .page_register { max-width: 760px; margin-inline: auto; }
:is(.page_login, .page_lost_password, .page_reset_password, .page_register) .cmp_form { padding: clamp(22px, 4vw, 40px); background: var(--surface); border: 1px solid var(--line); border-top: 4px solid var(--navy-900); }
/* articles, issues */
.obj_article_summary { position: relative; padding: 18px 0; border-bottom: 1px solid var(--line); }
.obj_article_summary > .title { margin: 0 0 6px; font-size: 1.1rem; line-height: 1.55; }
.obj_article_summary > .title a { color: var(--heading); }
.obj_article_summary > .title a:hover { color: var(--blue-600); }
.obj_article_summary .meta { font-size: .875rem; color: var(--muted); }
.galleys_links { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 0; padding: 0; list-style: none; }
.obj_galley_link { display: inline-flex; align-items: center; gap: 6px; padding: 5px 14px; border: 1px solid var(--navy-900); border-radius: var(--radius); background: transparent; color: var(--heading) !important; font-size: .8125rem; font-weight: 600; }
.obj_galley_link:hover { background: var(--navy-900); color: #fff !important; }
.issues_archive { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 20px; margin: 0; padding: 0; list-style: none; }
.obj_issue_summary { padding: 16px; background: var(--surface); border: 1px solid var(--line); }
.obj_issue_summary .cover img { display: block; width: 100%; height: auto; margin-bottom: 12px; border: 1px solid var(--line); }
.obj_issue_summary .title { display: block; font-weight: 600; color: var(--heading); }
.obj_issue_summary .series { display: block; margin-top: 4px; color: var(--muted); font-size: .875rem; }
.obj_issue_toc .heading { display: grid; grid-template-columns: auto 1fr; gap: 24px; margin-bottom: 28px; }
.obj_issue_toc .sections h2 { padding-bottom: 8px; border-bottom: 2px solid var(--navy-900); font-size: 1.25rem !important; }
.obj_article_details .page_title { font-family: var(--display); font-weight: var(--display-w); font-size: clamp(1.6rem, 1.2rem + 1.4vw, 2.3rem); line-height: 1.4; color: var(--heading); margin: 0 0 12px; }
.obj_article_details .row { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 40px; }
.obj_article_details .entry_details { display: grid; gap: 14px; align-content: start; }
.obj_article_details .entry_details .item { padding: 16px 18px; background: var(--bg-2); border: 1px solid var(--line); }
.obj_article_details .item .label { display: block; margin-bottom: 6px; font-weight: 700; font-size: .8125rem; color: var(--heading); }
.obj_article_details .main_entry .item { margin-bottom: 22px; }
.obj_article_details .authors { list-style: none; padding: 0; }
.page_search .search_input { margin-bottom: 16px; }
.page_search .search_input input { min-height: 52px; font-size: 1.0625rem; }
.page_search .search_advanced { margin: 0 0 20px; padding: 20px 22px; background: var(--bg-2); border: 1px solid var(--line); }
.page_search .search_advanced > legend { float: inline-start; width: 100%; margin-bottom: 14px; padding: 0; font-weight: 700; color: var(--heading); }
.page_search .date_range { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px 28px; clear: both; margin-bottom: 18px; }
.page_search .date_range fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
.page_search .date_range legend { margin-bottom: 6px; padding: 0; font-weight: 600; font-size: .875rem; color: var(--ink); }
.page_search .date_range select { display: inline-block; width: auto; min-width: 84px; margin-inline-end: 6px; margin-bottom: 6px; }
.page_search .author .label { display: block; margin-bottom: 6px; font-weight: 600; font-size: .875rem; }
.page_search .submit { margin-bottom: 28px; }
.page_issue_archive > p, .page_issue > .cmp_notification { padding: 22px 24px; background: var(--bg-2); border: 1px dashed var(--line-2); color: var(--ink-2); }
.cmp_pagination { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 24px; }
.cmp_pagination a, .cmp_pagination .current { padding: 6px 12px; border: 1px solid var(--line); }
.pkp_block { padding: 20px; background: var(--surface); border: 1px solid var(--line); margin-bottom: 16px; }
.pkp_block .title { display: block; margin-bottom: 10px; font-weight: 700; color: var(--heading); }
.obj_announcement_summary { padding: 18px 0; border-bottom: 1px solid var(--line); }
.obj_announcement_summary h2, .obj_announcement_summary h3 { margin: 0 0 6px; font-size: 1.1rem; }
.obj_announcement_summary .date { color: var(--muted); font-size: .8125rem; }

/* =============================================================================
   Footer
   ============================================================================= */
.site-foot { background: var(--navy-950); color: var(--on-navy-2); font-size: .9375rem; }
.site-foot__top { padding-block: clamp(44px, 6vw, 64px) clamp(32px, 4vw, 44px); border-top: 4px solid var(--gold-500); }
.site-foot__grid { display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr)) minmax(0, 1.25fr); gap: 36px 32px; }
.site-foot a { color: var(--on-navy-2); }
.site-foot a:hover { color: #fff; }
.seal--foot { gap: 14px; color: #fff; }
.seal--foot:hover { color: #fff; }
.seal--foot .seal__crest { width: 60px; height: 60px; box-shadow: 0 0 0 3px var(--navy-950), 0 0 0 4px var(--gold-500); }
.seal--foot .seal__text { border-color: var(--on-navy-line); }
.seal--foot .seal__name { color: #fff; font-size: 1.1rem; }
.seal--foot .seal__sub { color: var(--gold-300); font-size: .95rem; }
.site-foot__id > p { margin: 18px 0 0; font-size: .875rem; line-height: 1.8; max-width: 30em; }
.site-foot__motto { display: grid; gap: 2px; margin-top: 18px !important; padding-inline-start: 14px; border-inline-start: 2px solid var(--gold-500); }
.site-foot__motto span { font-family: var(--display); font-weight: var(--display-w); font-size: 1.2rem; line-height: 1.5; color: var(--gold-300); }
.site-foot__motto small { font-size: .75rem; color: rgba(255, 255, 255, .55); }
.site-foot__h { position: relative; margin: 0 0 16px; padding-bottom: 10px; border-bottom: 1px solid var(--on-navy-line); color: #fff; font-weight: 700; font-size: .9375rem; }
.site-foot__h::after { content: ""; position: absolute; inset-inline-start: 0; bottom: -1px; width: 36px; height: 2px; background: var(--gold-500); }
.site-foot ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.site-foot__col li { font-size: .875rem; line-height: 1.6; }
.site-foot__contact li { display: flex; align-items: flex-start; gap: 10px; }
.site-foot__contact .ico { width: 17px; height: 17px; margin-top: .2em; color: var(--gold-300); }
.site-foot__contact a { word-break: break-all; }
.site-foot__bar { background: #040e1c; font-size: .8125rem; color: rgba(255, 255, 255, .6); }
.site-foot__bar-in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 24px; padding-block: 16px; }
.site-foot__bar p { margin: 0; }
.site-foot__custom p { margin: 0; }
.site-foot__custom a { color: rgba(255, 255, 255, .72); }
.site-foot__bar > .container > a { color: rgba(255, 255, 255, .55); }

/* ---------- Entrances (added by site.js; content is visible without JavaScript) ---------- */
html.js .rv { opacity: 0; transform: translateY(14px); transition: opacity .6s var(--ease) var(--rv, 0s), transform .7s var(--ease) var(--rv, 0s); }
html.js .rv.is-in { opacity: 1; transform: none; }

/* =============================================================================
   High contrast (the ◐ button): black, white and yellow, every surface from the tokens
   ============================================================================= */
/* Theme modes are owned by modern.css. */

/* =============================================================================
   Responsive
   ============================================================================= */
@media (max-width: 1279px) {
  .mainnav__home span { display: none; }
  .mainnav__list > li > a { padding-inline: 11px; font-size: .875rem; }
}
@media (max-width: 1099px) {
  .mainnav { display: none; }
  .menu-toggle { display: inline-flex; }
  .util__date { display: none; }
  .masthead .search { flex-basis: 240px; }
  body.sqaa-inner .pkp_structure_content.has_section { display: block; }
  .side { position: static; margin-top: 48px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
  .side__toc { display: none; }
  .site-foot__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .site-foot__id { grid-column: 1 / -1; }
  .obj_article_details .row { grid-template-columns: 1fr; }
}
@media (max-width: 899px) {
  .masthead__submit { display: none; }
}
@media (max-width: 759px) {
  /* the header sticks, only the masthead stays in view */
  .site-head { position: sticky; top: -44px; z-index: 45; }
  .util__in { min-height: 40px; }
  .util__tools .a11y, .util__lang, .util__user { display: none; }
  .util__org { font-size: .75rem; }
  .masthead { box-shadow: 0 6px 16px -12px rgba(6, 21, 40, .5); }
  .masthead__in { min-height: 70px; gap: 10px; }
  .seal { gap: 10px; }
  .seal__crest { width: 46px; height: 46px; box-shadow: 0 0 0 1px var(--line), 0 0 0 3px #fff, 0 0 0 4px var(--gold-500); }
  .seal__text { padding-inline-start: 10px; }
  .seal__name { font-size: 1rem; line-height: 1.35; }
  .seal__sub { font-size: .8125rem; }
  .seal__meta { display: none; }
  .masthead > .container > .search { display: none; }
  .masthead__lang { display: block; margin-inline-start: auto; }
  .menu-toggle { padding: 0 12px; }
  .menu-toggle span { display: none; }
  .banner__art { width: 70vw; opacity: .12; }
  .site-foot__grid { grid-template-columns: 1fr 1fr; }
  .site-foot__contact { grid-column: 1 / -1; }
  .site-foot__bar-in { flex-direction: column; align-items: flex-start; }
  .detail-grid, .stats-grid, .sqaa-kit-grid { grid-template-columns: 1fr; }
}
@media (max-width: 420px) {
  .site-foot__grid { grid-template-columns: 1fr; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  html.js .rv { opacity: 1; transform: none; }
}

/* ---------- Print: the document, not the website ---------- */
@media print {
  .flagline, .util, .masthead .search, .masthead__submit, .menu-toggle, .masthead__lang, .mainnav, .drawer, .banner__art, .side, .next, .site-foot__top, .skip { display: none !important; }
  .banner { background: none !important; color: #000; border-bottom: 2px solid #000; }
  .banner__title, .crumbs a, .crumbs ol, .banner__kicker { color: #000 !important; }
  body.sqaa-inner .pkp_structure_content.has_section { display: block; }
  body { font-size: 11pt; }
  a { color: #000 !important; }
}
