/**
 * plugins/themes/gjastTheme/styles/gjast.css — version 2.0
 *
 * Global Journal of Advanced Science and Technology — science theme.
 * Loaded after the Default Theme stylesheet.
 *
 * One recurring device: the periodic-table "element tile" (hero subject grid,
 * article type, issue badge, footer mark). Everything around it stays quiet.
 *
 * Palette
 *   ink       #0E2A47  headings, navigation band
 *   ink-deep  #0A1F35  footer
 *   teal      #0B7A6F  links, primary buttons
 *   amber     #D99A1E  small highlights only
 *   paper     #F3F6F8  section backgrounds
 *   line      #D5DEE6  rules and borders
 *
 * Contents
 *   1 Tokens and base       6 Information pages
 *   2 Buttons and tiles     7 Article page
 *   3 Header and menu       8 Issue contents, archive
 *   4 Content layouts       9 Editorial board
 *   5 Homepage             10 Footer, forms, small screens
 */

/* ===================================================================
   1  Tokens and base
   =================================================================== */

:root {
	--gj-ink: #0E2A47;
	--gj-ink-deep: #0A1F35;
	--gj-ink-soft: #4A6075;
	--gj-text: #1C2733;
	--gj-teal: #0B7A6F;
	--gj-teal-dark: #08584F;
	--gj-teal-tint: #E3F2EF;
	--gj-amber: #D99A1E;
	--gj-paper: #F3F6F8;
	--gj-line: #D5DEE6;
	--gj-white: #FFFFFF;

	/* Subject-group tints (tile background / tile border / group rule) */
	--gj-phys-bg: #E4F0F6; --gj-phys-bd: #8DB9CE; --gj-phys: #2E6E8E;
	--gj-life-bg: #E5F2E9; --gj-life-bd: #8FC09E; --gj-life: #2F7A4B;
	--gj-eng-bg:  #FBF1DD; --gj-eng-bd:  #DDB46A; --gj-eng:  #95640C;
	--gj-comp-bg: #ECEAF7; --gj-comp-bd: #A79FD4; --gj-comp: #5A4BA6;

	--gj-sans: "Archivo", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--gj-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
	--gj-wrap: 1160px;
	--gj-gutter: 24px;
	--gj-radius: 6px;
}

html, body {
	background: var(--gj-white);
	color: var(--gj-text);
	font-family: var(--gj-sans);
}

.gj .pkp_structure_page {
	max-width: none;
	width: 100%;
	margin: 0;
	background: var(--gj-white);
	box-shadow: none;
}

.gj a { color: var(--gj-teal); }
.gj a:hover, .gj a:focus { color: var(--gj-teal-dark); }

.gj a:focus-visible,
.gj button:focus-visible,
.gj input:focus-visible,
.gj select:focus-visible,
.gj textarea:focus-visible,
.gj summary:focus-visible {
	outline: 3px solid var(--gj-teal);
	outline-offset: 2px;
}

.gj_wrap {
	max-width: var(--gj-wrap);
	margin: 0 auto;
	padding: 0 var(--gj-gutter);
}

.gj h1, .gj h2, .gj h3, .gj h4, .gj h5, .gj h6 {
	font-family: var(--gj-sans);
	color: var(--gj-ink);
	letter-spacing: -0.005em;
}

/* Reading text: serif, ragged right. The old journal stylesheet justified
   every paragraph, which opens wide gaps in narrow columns. */
.gj :where(.pkp_structure_main) :where(p, li, dd, td) {
	font-family: var(--gj-serif);
	font-size: 1.143rem; /* 16px */
	line-height: 1.7;
}
.gj .pkp_structure_main p,
.gj .pkp_structure_main li,
.gj .obj_article_details .abstract,
.gj .obj_article_details .item > :last-child,
.gj .gj_prose p { text-align: left; }

.gj .gj_prose p { font-family: var(--gj-serif); font-size: 17px; line-height: 1.7; }

/* Interface text stays in the sans face */
.gj .cmp_form, .gj .cmp_form p, .gj .cmp_form li, .gj label,
.gj .cmp_button, .gj button, .gj .pkp_button, .gj input, .gj select, .gj textarea,
.gj .cmp_breadcrumbs, .gj .cmp_breadcrumbs li,
.gj .obj_article_summary, .gj .obj_article_summary p, .gj .obj_article_summary li,
.gj .obj_issue_summary, .gj .obj_issue_summary p,
.gj .pkp_structure_main .gj_steps li,
.gj .gj_facts dd, .gj .gj_facts_card dd, .gj .gj_toc_facts dd,
.gj .gj_chips li, .gj .gj_article_where li,
.gj .gj_infonav li, .gj .gj_author_names li {
	font-family: var(--gj-sans);
}

/* Remove effects from the old journal stylesheet, if it is still attached */
.gj .block_make_submission_link::before { display: none; }
.gj .block_make_submission_link { animation: none; text-shadow: none; }

.gj .pkp_screen_reader { position: absolute !important; }

/* ===================================================================
   2  Buttons, links and element tiles
   =================================================================== */

.gj_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 20px;
	border: 2px solid transparent;
	border-radius: 4px;
	font-family: var(--gj-sans);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
.gj .gj_btn_primary { background: var(--gj-teal); color: var(--gj-white); }
.gj .gj_btn_primary:hover,
.gj .gj_btn_primary:focus { background: var(--gj-teal-dark); color: var(--gj-white); }
.gj .gj_btn_quiet { background: transparent; color: var(--gj-ink); border-color: var(--gj-ink); }
.gj .gj_btn_quiet:hover,
.gj .gj_btn_quiet:focus { background: var(--gj-ink); color: var(--gj-white); }

.gj .gj_link {
	font-family: var(--gj-sans);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

/* Element tile */
.gj_tile {
	position: relative;
	display: inline-grid;
	grid-template-rows: auto 1fr auto;
	flex: none;
	width: 64px;
	height: 68px;
	padding: 5px 6px 4px;
	border-radius: 4px;
	background: var(--gj-ink);
	color: var(--gj-white);
	font-family: var(--gj-sans);
	line-height: 1;
	box-shadow: inset 0 -4px 0 var(--gj-teal);
}
.gj_tile_no { font-size: 9px; font-weight: 600; color: #9FB7C9; }
.gj_tile_sym {
	align-self: center;
	font-size: 30px;
	font-weight: 800;
	font-stretch: 80%;
	letter-spacing: -0.02em;
}
.gj_tile_name { font-size: 9px; font-weight: 700; letter-spacing: 0.06em; color: var(--gj-amber); padding-bottom: 3px; }

/* Default theme buttons */
.gj .cmp_button,
.gj .pkp_button_primary,
.gj .cmp_form .buttons button.submit,
.gj .block_make_submission a {
	background: var(--gj-teal);
	border-color: var(--gj-teal);
	color: var(--gj-white);
	border-radius: 4px;
	box-shadow: none;
	text-shadow: none;
	font-family: var(--gj-sans);
	font-weight: 600;
}
.gj .cmp_button:hover,
.gj .pkp_button_primary:hover,
.gj .cmp_form .buttons button.submit:hover,
.gj .block_make_submission a:hover {
	background: var(--gj-teal-dark);
	color: var(--gj-white);
}

/* Galley links (PDF buttons) everywhere */
.gj .obj_galley_link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 34px;
	padding: 0 12px;
	border: 1.5px solid var(--gj-teal);
	border-radius: 4px;
	background: var(--gj-white);
	color: var(--gj-teal-dark);
	font-family: var(--gj-sans);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
}
.gj .obj_galley_link:before { margin-right: 2px; }
.gj .obj_galley_link:hover,
.gj .obj_galley_link:focus { background: var(--gj-teal); border-color: var(--gj-teal); color: var(--gj-white); }
.gj .obj_galley_link sup {
	top: 0;
	display: inline-flex;
	align-items: center;
	gap: 3px;
	margin-left: 4px;
	padding-left: 8px;
	border-left: 1px solid currentColor;
	font-size: 12px;
	font-weight: 500;
	opacity: .85;
}
.gj .obj_galley_link sup .fa { font-size: 11px; }

/* ===================================================================
   3  Header and menu
   =================================================================== */

.gj .gj_head {
	position: relative;
	background: var(--gj-white);
	border-bottom: 0;
	color: var(--gj-ink);
}

/* Thin strip with journal facts */
.gj_strip {
	display: none;
	background: var(--gj-ink-deep);
	color: #C9D6E1;
}
.gj_strip_inner { display: flex; align-items: center; min-height: 34px; }
.gj .gj_strip_facts {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 20px;
	margin: 0;
	font-family: var(--gj-sans);
	font-size: 12.5px;
	line-height: 1.3;
	color: #C9D6E1;
}
.gj .gj_strip_facts span { display: inline-flex; align-items: center; gap: 7px; }
.gj .gj_strip_facts span::before {
	content: "";
	width: 5px;
	height: 5px;
	border-radius: 1px;
	background: var(--gj-teal);
	transform: rotate(45deg);
}
.gj .gj_strip_facts .gj_strip_issn { color: var(--gj-white); font-weight: 600; }
.gj .gj_strip_facts .gj_strip_issn::before { background: var(--gj-amber); }

.gj .gj_head_wrapper {
	position: static;
	width: auto;
	max-width: none;
	margin: 0;
	padding: 0;
}

.gj .gj_brand_row {
	position: relative;
	display: flex;
	align-items: center;
	gap: 16px;
	width: auto;
	max-width: var(--gj-wrap);
	height: auto;
	min-height: 64px;
	margin: 0 auto;
	padding: 10px 16px 10px 60px;
}

.gj .gj_brand {
	position: static;
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	white-space: normal;
	overflow: visible;
	font-size: inherit;
	background: none;
}
.gj .gj_brand_link {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 0;
	color: var(--gj-ink);
	text-decoration: none;
}
.gj .gj_brand_link:hover, .gj .gj_brand_link:focus { color: var(--gj-ink); }
.gj .gj_emblem { display: block; width: 52px; height: auto; flex: none; }
.gj_brand_text { display: flex; flex-direction: column; min-width: 0; }
.gj .gj_brand_title {
	font-family: var(--gj-sans);
	font-size: 16px;
	font-weight: 800;
	font-stretch: 92%;
	line-height: 1.15;
	letter-spacing: -0.01em;
	color: var(--gj-ink);
	text-wrap: balance;
}
.gj .gj_brand_sub {
	display: none;
	margin-top: 6px;
	font-size: 13px;
	line-height: 1.35;
	color: var(--gj-ink-soft);
}

.gj .gj_head_actions { display: none; }

/* Hamburger (mobile) */
.gj .pkp_site_nav_toggle {
	top: 50%;
	left: 8px;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	box-shadow: none;
	background: transparent;
}
.gj .pkp_site_nav_toggle > span { border-bottom-color: var(--gj-ink); }
.gj .pkp_site_nav_toggle > span:before,
.gj .pkp_site_nav_toggle > span:after { background: var(--gj-ink); }

.gj .pkp_navigation_primary_wrapper,
.gj .pkp_navigation_primary_row { width: auto; }

/* Mobile menu panel */
.gj .gj_nav {
	background: var(--gj-white);
	border-top: 1px solid var(--gj-line);
	box-shadow: 0 12px 24px rgba(14, 42, 71, 0.14);
	padding: 12px 20px 20px;
}
.gj .gj_nav a { color: var(--gj-ink); padding: 7px 0; font-size: 15px; }
.gj .gj_nav ul ul { padding-left: 14px; border-left: 2px solid var(--gj-line); margin: 2px 0 6px; }
.gj .gj_nav ul ul a { color: var(--gj-ink-soft); font-size: 14px; }
.gj .gj_nav a:hover, .gj .gj_nav a:focus { color: var(--gj-teal); }
.gj .pkp_navigation_user_wrapper { border-top: 1px solid var(--gj-line); margin-top: 10px; padding-top: 6px; }

@media (min-width: 600px) {
	.gj .gj_brand_title { font-size: 19px; }
	.gj .gj_emblem { width: 64px; }
}

@media (min-width: 992px) {
	.gj_strip { display: block; }

	.gj .gj_brand_row {
		gap: 32px;
		min-height: 0;
		padding: 22px var(--gj-gutter) 22px;
	}
	.gj .gj_brand_link { gap: 18px; }
	.gj .gj_emblem { width: 84px; }
	.gj .gj_brand_title { font-size: 26px; }
	.gj .gj_brand_sub { display: block; }

	.gj .gj_head_actions {
		display: flex;
		flex: none;
		align-items: center;
		gap: 20px;
	}
	.gj .gj_head_search {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		color: var(--gj-ink);
		font-size: 15px;
		font-weight: 600;
		text-decoration: none;
	}
	.gj .gj_head_search:hover, .gj .gj_head_search:focus { color: var(--gj-teal); }

	/* Navigation band */
	.gj .gj_nav {
		position: static;
		display: block;
		padding: 0;
		border-top: 0;
		box-shadow: none;
		background: var(--gj-ink);
	}
	.gj .pkp_navigation_primary_row {
		max-width: var(--gj-wrap);
		margin: 0 auto;
		padding: 0 var(--gj-gutter);
	}
	.gj .pkp_navigation_primary_wrapper {
		display: flex;
		align-items: stretch;
		width: auto;
		padding: 0;
	}
	.gj .pkp_navigation_primary {
		flex: 1 1 auto;
		max-width: none;
		margin: 0;
		text-align: left;
	}
	.gj .pkp_navigation_primary > li > a {
		margin: 0;
		padding: 15px 14px 13px;
		border-bottom: 3px solid transparent;
		color: var(--gj-white);
		font-family: var(--gj-sans);
		font-size: 15px;
		font-weight: 500;
		text-transform: none;
		letter-spacing: normal;
	}
	.gj .pkp_navigation_primary > li:first-child > a { margin-left: -14px; }
	.gj .pkp_navigation_primary > li > a:hover,
	.gj .pkp_navigation_primary > li > a:focus,
	.gj .pkp_navigation_primary > li:hover > a {
		background: rgba(255, 255, 255, 0.08);
		border-color: var(--gj-amber);
		color: var(--gj-white);
	}
	.gj .pkp_navigation_primary [aria-haspopup]:after { border-top-color: currentColor; }

	/* Dropdowns */
	.gj .pkp_nav_list ul {
		border: 1px solid var(--gj-line);
		border-top: 3px solid var(--gj-teal);
		border-radius: 0 0 6px 6px;
		background: var(--gj-white);
		box-shadow: 0 14px 30px rgba(14, 42, 71, 0.18);
		padding: 6px 0;
		width: 19em;
	}
	.gj .pkp_nav_list ul a {
		padding: 9px 16px;
		border-left: 3px solid transparent;
		color: var(--gj-ink);
		font-size: 14.5px;
	}
	.gj .pkp_nav_list ul a:hover,
	.gj .pkp_nav_list ul a:focus {
		background: var(--gj-paper);
		border-color: var(--gj-teal);
		color: var(--gj-teal-dark);
	}

	/* The search link now lives next to the submit button */
	.gj .pkp_navigation_search_wrapper { display: none; }

	/* Login / user menu sits in the strip */
	.gj .pkp_navigation_user_wrapper {
		position: absolute;
		top: 0;
		right: max(var(--gj-gutter), calc((100% - var(--gj-wrap)) / 2 + var(--gj-gutter)));
		left: auto;
		transform: none;
		margin: 0;
		padding: 0;
		border: 0;
	}
	.gj .pkp_navigation_user > li > a {
		display: inline-flex;
		align-items: center;
		min-height: 34px;
		padding: 0 0 0 18px;
		color: #C9D6E1;
		font-size: 13px;
	}
	.gj .pkp_navigation_user > li > a:hover,
	.gj .pkp_navigation_user > li > a:focus { color: var(--gj-white); background: transparent; }
	.gj .pkp_navigation_user ul a { color: var(--gj-ink); }
	.gj .pkp_navigation_user .task_count { background: var(--gj-amber); color: var(--gj-ink-deep); }
}

/* ===================================================================
   4  Content layouts
   =================================================================== */

.gj .pkp_structure_content {
	width: auto;
	max-width: var(--gj-wrap);
	margin: 0 auto;
	padding: 28px var(--gj-gutter) 72px;
	background: var(--gj-white);
}
.gj .pkp_structure_main {
	float: none;
	width: auto;
	padding: 0;
}
.gj .pkp_structure_main:before,
.gj .pkp_structure_main:after { display: none; }

/* Ordinary pages: one readable column, sidebar beside it if blocks exist */
@media (min-width: 992px) {
	.gj.gj_layout_page .pkp_structure_content { padding-top: 40px; }
	.gj.gj_layout_page .pkp_structure_main,
	.gj.gj_layout_page .pkp_structure_main:first-child:last-child { max-width: 860px; margin: 0 auto; }
	.gj.gj_layout_page .pkp_structure_content.has_sidebar {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 300px;
		gap: 48px;
	}
	.gj.gj_layout_page .has_sidebar .pkp_structure_main { max-width: none; margin: 0; }
	.gj .pkp_structure_sidebar { float: none; width: auto; border-left: 1px solid var(--gj-line); }
}

/* Wide pages: article, issue, archive, board */
@media (min-width: 992px) {
	.gj.gj_layout_wide .pkp_structure_content { padding-top: 32px; }
}

/* Homepage: sections run full width */
.gj.pkp_page_index .pkp_structure_content {
	max-width: none;
	padding: 0;
}

/* Page headings */
.gj .gj_page_h1,
.gj .page > h1,
.gj .page h1.page_title,
.gj .page_static h1 {
	margin: 10px 0 24px;
	font-size: clamp(28px, 3.2vw, 38px);
	line-height: 1.15;
	font-weight: 800;
	font-stretch: 92%;
	letter-spacing: -0.015em;
	color: var(--gj-ink);
	padding: 0;
	border: 0;
	text-wrap: balance;
}
.gj .gj_page_lede {
	max-width: 62ch;
	margin: -8px 0 32px;
	font-family: var(--gj-serif);
	font-size: 18px;
	color: var(--gj-ink-soft);
}

.gj .cmp_breadcrumbs { margin: 0 0 6px; font-size: 13.5px; color: var(--gj-ink-soft); }
.gj .cmp_breadcrumbs ol { margin: 0; padding: 0; }
.gj .cmp_breadcrumbs a { color: var(--gj-ink-soft); text-decoration: none; }
.gj .cmp_breadcrumbs a:hover { color: var(--gj-teal); text-decoration: underline; }
.gj .cmp_breadcrumbs .current { color: var(--gj-ink); }

.gj .pkp_structure_main table { border-collapse: collapse; }
.gj .pkp_structure_main th,
.gj .pkp_structure_main td { border-color: var(--gj-line); }

/* ===================================================================
   5  Homepage
   =================================================================== */

.gj_home { padding: 0; }
.gj_section { padding: 64px 0; }
.gj .gj_h2 { margin: 0 0 16px; font-size: 1.857rem; line-height: 1.2; font-weight: 800; font-stretch: 92%; }
.gj .gj_h3 { margin: 0 0 12px; font-size: 1.286rem; line-height: 1.25; font-weight: 700; }

.gj_section_head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 12px 24px;
	margin-bottom: 28px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--gj-line);
}
.gj .gj_section_head .gj_h2 { margin: 0 0 4px; }
.gj .gj_section_sub { margin: 0; font-family: var(--gj-sans); font-size: 16px; font-weight: 600; color: var(--gj-ink-soft); }

/* Hero */
.gj_hero {
	background: var(--gj-paper);
	border-bottom: 1px solid var(--gj-line);
	padding: 44px 0 52px;
}
.gj_hero_grid { display: grid; grid-template-columns: 1fr; gap: 40px; align-items: center; }
.gj .gj_hero_title {
	margin: 0 0 18px;
	font-size: clamp(30px, 4.6vw, 48px);
	line-height: 1.06;
	font-weight: 800;
	font-stretch: 86%;
	letter-spacing: -0.02em;
	color: var(--gj-ink);
	max-width: 17ch;
}
.gj .gj_hero_lede {
	margin: 0 0 26px;
	font-family: var(--gj-serif);
	font-size: 18px;
	line-height: 1.6;
	color: var(--gj-text);
	max-width: 44ch;
}
.gj_actions { display: flex; flex-wrap: wrap; gap: 12px; }
.gj .gj_hero_note {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 24px 0 0;
	font-family: var(--gj-sans);
	font-size: 14.5px;
	color: var(--gj-ink-soft);
}
.gj_dot { width: 9px; height: 9px; border-radius: 50%; background: var(--gj-amber); flex: none; }

/* Periodic-table subject grid */
.gj_table { display: grid; grid-template-columns: 1fr; gap: 14px; }
.gj_group ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.gj .gj_group li { font-family: var(--gj-sans); }
.gj_el {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 92px;
	padding: 9px 10px 10px;
	border: 1.5px solid var(--gj-bd);
	border-radius: 4px;
	background: var(--gj-bg);
}
.gj_el_sym { font-size: 30px; font-weight: 800; font-stretch: 80%; line-height: 1; color: var(--gj-ink); }
.gj_el_name { margin-top: 8px; font-size: 12.5px; font-weight: 500; line-height: 1.25; color: var(--gj-ink); }
.gj .gj_group_name {
	margin: 8px 0 0;
	padding-top: 6px;
	border-top: 3px solid var(--gj-key);
	font-family: var(--gj-sans);
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--gj-key);
}
.gj_group--phys { --gj-bg: var(--gj-phys-bg); --gj-bd: var(--gj-phys-bd); --gj-key: var(--gj-phys); }
.gj_group--life { --gj-bg: var(--gj-life-bg); --gj-bd: var(--gj-life-bd); --gj-key: var(--gj-life); }
.gj_group--eng  { --gj-bg: var(--gj-eng-bg);  --gj-bd: var(--gj-eng-bd);  --gj-key: var(--gj-eng); }
.gj_group--comp { --gj-bg: var(--gj-comp-bg); --gj-bd: var(--gj-comp-bd); --gj-key: var(--gj-comp); }
.gj .gj_table_note {
	grid-column: 1 / -1;
	margin: 6px 0 0;
	font-family: var(--gj-sans);
	font-size: 14px;
	color: var(--gj-ink-soft);
}

/* The one load moment: tiles settle into place */
@media (prefers-reduced-motion: no-preference) {
	.gj_el { animation: gj-settle .5s cubic-bezier(.2,.7,.2,1) both; }
	.gj_group--phys .gj_el { animation-delay: .05s; }
	.gj_group--life .gj_el { animation-delay: .12s; }
	.gj_group--eng .gj_el  { animation-delay: .19s; }
	.gj_group--comp .gj_el { animation-delay: .26s; }
	.gj_group li:nth-child(2) { animation-duration: .6s; }
	.gj_group li:nth-child(3) { animation-duration: .7s; }
}
@keyframes gj-settle {
	from { opacity: 0; transform: translateY(10px); }
	to { opacity: 1; transform: none; }
}

@media (max-width: 991px) {
	.gj_group { display: flex; flex-direction: column; }
	.gj .gj_group_name { order: -1; margin: 0 0 8px; }
}
@media (min-width: 600px) {
	.gj_table { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 992px) {
	.gj_hero { padding: 64px 0 72px; }
	.gj_hero_grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 56px; }
	.gj_table { grid-template-columns: repeat(4, 1fr); gap: 10px; }
	.gj_group ul { grid-template-columns: 1fr; }
	.gj_el { min-height: 100px; }
	.gj_el_sym { font-size: 34px; }
}

/* Current issue on the homepage */
.gj_issue { background: var(--gj-white); }
.gj_empty {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 28px;
	border: 1.5px dashed #9FB2C1;
	border-radius: 4px;
	background: var(--gj-paper);
}
.gj .gj_empty .gj_h2 { font-size: 1.571rem; margin-bottom: 8px; }
.gj .gj_empty p { margin: 0; max-width: 56ch; }

/* About + details */
.gj_about { background: var(--gj-paper); border-top: 1px solid var(--gj-line); border-bottom: 1px solid var(--gj-line); }
.gj_about_grid { display: grid; grid-template-columns: 1fr; gap: 40px; }
.gj .gj_about_text .gj_prose p { margin: 0 0 16px; max-width: 64ch; }
.gj_facts {
	align-self: start;
	padding: 24px 24px 12px;
	border: 1px solid var(--gj-line);
	border-top: 4px solid var(--gj-teal);
	border-radius: 4px;
	background: var(--gj-white);
}
.gj_facts dl { margin: 0; }
.gj_facts dl > div {
	display: grid;
	grid-template-columns: 112px 1fr;
	gap: 12px;
	padding: 11px 0;
	border-top: 1px solid var(--gj-line);
}
.gj_facts dt { font-family: var(--gj-sans); font-size: 13.5px; font-weight: 500; color: var(--gj-ink-soft); }
.gj .gj_facts dd {
	margin: 0;
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--gj-ink);
	overflow-wrap: anywhere;
}
@media (min-width: 992px) {
	.gj_section { padding: 80px 0; }
	.gj_about_grid { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 72px; }
}

/* Review process (a real sequence, so it is numbered) */
.gj_process_grid { display: grid; grid-template-columns: 1fr; gap: 36px; }
.gj .gj_process_grid > div p { margin: 0 0 14px; max-width: 46ch; }
.gj_steps { counter-reset: gj-step; margin: 0; padding: 0; list-style: none; }
.gj .gj_steps li {
	counter-increment: gj-step;
	position: relative;
	display: grid;
	grid-template-columns: 44px 1fr;
	column-gap: 18px;
	padding: 0 0 22px;
	font-size: 15px;
	line-height: 1.5;
}
.gj_steps li::before {
	content: counter(gj-step);
	grid-row: 1 / span 2;
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border: 1.5px solid var(--gj-ink);
	border-radius: 4px;
	background: var(--gj-white);
	font-family: var(--gj-sans);
	font-size: 17px;
	font-weight: 800;
	color: var(--gj-ink);
	position: relative;
	z-index: 1;
}
.gj_steps li:not(:last-child)::after {
	content: "";
	position: absolute;
	left: 21px;
	top: 44px;
	bottom: 0;
	width: 1.5px;
	background: var(--gj-line);
}
.gj_steps li:last-child::before { background: var(--gj-teal); border-color: var(--gj-teal); color: var(--gj-white); }
.gj_steps strong { display: block; padding-top: 2px; font-size: 16px; color: var(--gj-ink); }
.gj_steps span { color: var(--gj-ink-soft); }
@media (min-width: 992px) {
	.gj_process_grid { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 72px; }
}

/* ===================================================================
   6  Information pages (policies, about, guidelines)
   =================================================================== */

.gj.gj_layout_info .pkp_structure_content {
	display: flex;
	flex-direction: column;
}
.gj.gj_layout_info .pkp_structure_main { order: 1; }
.gj.gj_layout_info .gj_infonav { order: 2; margin-top: 48px; }

.gj_infonav_box {
	padding: 20px;
	border: 1px solid var(--gj-line);
	border-radius: var(--gj-radius);
	background: var(--gj-paper);
}
.gj .gj_infonav_group + .gj_infonav_group { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--gj-line); }
.gj .gj_infonav_title {
	margin: 0 0 8px;
	font-size: 14px;
	font-weight: 700;
	color: var(--gj-ink);
}
.gj .gj_infonav ul { margin: 0; padding: 0; list-style: none; }
.gj .gj_infonav li { margin: 0; font-size: 14.5px; line-height: 1.3; }
.gj .gj_infonav a {
	display: block;
	padding: 6px 10px;
	margin-left: -10px;
	border-left: 3px solid transparent;
	border-radius: 0 4px 4px 0;
	color: var(--gj-ink-soft);
	text-decoration: none;
}
.gj .gj_infonav a:hover,
.gj .gj_infonav a:focus { color: var(--gj-teal-dark); background: var(--gj-white); }
.gj .gj_infonav a.is_active {
	border-left-color: var(--gj-teal);
	background: var(--gj-white);
	color: var(--gj-ink);
	font-weight: 600;
}

@media (min-width: 992px) {
	.gj.gj_layout_info .pkp_structure_content {
		display: grid;
		grid-template-columns: 260px minmax(0, 1fr);
		gap: 56px;
		align-items: start;
		padding-top: 40px;
	}
	.gj.gj_layout_info .gj_infonav {
		order: 0;
		margin: 0;
		position: sticky;
		top: 16px;
		max-height: calc(100vh - 32px);
		overflow-y: auto;
	}
	.gj.gj_layout_info .pkp_structure_main { max-width: 780px; }
}

/* Policy text */
.gj.gj_layout_info .page p,
.gj.gj_layout_info .page li { max-width: 70ch; }
.gj.gj_layout_info .page h2,
.gj.gj_layout_info .page h3,
.gj.gj_layout_info .page h4 {
	margin: 32px 0 10px;
	font-size: 1.3rem;
	line-height: 1.3;
	font-weight: 700;
	color: var(--gj-ink);
}
.gj.gj_layout_info .page h3 { font-size: 1.15rem; }
.gj.gj_layout_info .page ol,
.gj.gj_layout_info .page ul { padding-left: 1.4em; }
.gj.gj_layout_info .page li { margin-bottom: 8px; }
.gj.gj_layout_info .page li::marker { color: var(--gj-teal); font-family: var(--gj-sans); font-weight: 700; }
.gj.gj_layout_info .page strong { color: var(--gj-ink); }
.gj.gj_layout_info .page table {
	width: 100%;
	margin: 16px 0 24px;
	font-family: var(--gj-sans);
	font-size: 15px;
}
.gj.gj_layout_info .page th,
.gj.gj_layout_info .page td { padding: 10px 12px; border: 1px solid var(--gj-line); text-align: left; vertical-align: top; }
.gj.gj_layout_info .page th { background: var(--gj-paper); color: var(--gj-ink); }
.gj.gj_layout_info .page td { font-family: var(--gj-sans); font-size: 15px; }

/* About > Submissions page bits */
.gj .page_submissions .cmp_notification { border-radius: var(--gj-radius); }
.gj .page_submissions .author_guidelines,
.gj .page_submissions .submission_checklist,
.gj .page_submissions .copyright_notice,
.gj .page_submissions .privacy_statement,
.gj .page_submissions .section_policy { margin-top: 32px; }

/* ===================================================================
   7  Article page
   =================================================================== */

.gj .gj_article { margin: 0; }
.gj .gj_article_head {
	padding: 4px 0 28px;
	margin-bottom: 32px;
	border-bottom: 1px solid var(--gj-line);
}
.gj .gj_article_kicker {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 6px 0 18px;
}
.gj .gj_tile--article { width: 58px; height: 62px; }
.gj .gj_tile--article .gj_tile_sym { font-size: 26px; }
.gj .gj_article_where {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.gj .gj_article_where li {
	margin: 0;
	padding: 4px 10px;
	border: 1px solid var(--gj-line);
	border-radius: 999px;
	font-size: 13.5px;
	font-weight: 500;
	line-height: 1.3;
	color: var(--gj-ink-soft);
	background: var(--gj-white);
}
.gj .gj_article_where a { color: inherit; text-decoration: none; }
.gj .gj_article_where a:hover { color: var(--gj-teal); text-decoration: underline; }
.gj .gj_article_where .gj_article_section { background: var(--gj-ink); border-color: var(--gj-ink); color: var(--gj-white); font-weight: 600; }
.gj .gj_article_where .gj_article_oa { border-color: #A9D3CB; background: var(--gj-teal-tint); color: var(--gj-teal-dark); font-weight: 600; }

.gj .obj_article_details .page_title {
	margin: 0 0 18px;
	max-width: 30ch;
	font-size: clamp(26px, 3.4vw, 40px);
	line-height: 1.14;
	font-weight: 800;
	font-stretch: 90%;
	letter-spacing: -0.015em;
	color: var(--gj-ink);
	text-wrap: balance;
}
.gj .obj_article_details .subtitle {
	margin: -8px 0 18px;
	font-size: 1.3rem;
	font-weight: 500;
	color: var(--gj-ink-soft);
}

/* Authors */
.gj .gj_authors { margin: 0; padding: 0; }
.gj .gj_author_names {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 22px;
	margin: 0 0 12px;
	padding: 0;
	list-style: none;
}
.gj .gj_author_names li { margin: 0; font-size: 17px; line-height: 1.5; }
.gj .gj_author_names .name { font-weight: 700; color: var(--gj-ink); }
.gj .gj_aff_ref { margin-left: 2px; font-size: 11px; font-weight: 700; color: var(--gj-teal-dark); }
.gj .gj_corresp { margin-left: 2px; font-weight: 700; color: var(--gj-amber); }
.gj .gj_orcid { margin-left: 8px; font-size: 12.5px; font-weight: 600; text-decoration: none; }
.gj .gj_orcid svg { width: 14px; height: 14px; vertical-align: -2px; }
.gj .gj_affs {
	margin: 0;
	padding: 0 0 0 1.3em;
	color: var(--gj-ink-soft);
}
.gj .gj_affs li {
	margin: 0 0 2px;
	font-family: var(--gj-sans);
	font-size: 14.5px;
	line-height: 1.45;
	max-width: none;
}
.gj .gj_affs li::marker { font-size: 12px; font-weight: 700; color: var(--gj-teal-dark); }
.gj .gj_affs--single { padding-left: 0; list-style: none; }
.gj .gj_corresp_note {
	margin: 8px 0 0;
	font-family: var(--gj-sans);
	font-size: 13px;
	color: var(--gj-ink-soft);
}
.gj .gj_corresp_note span { color: var(--gj-amber); font-weight: 700; }

/* Body: main + aside */
.gj .obj_article_details > .row.gj_article_body,
.gj .gj_article_body {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 40px;
	margin: 0;
}
.gj .gj_article_body .main_entry,
.gj .gj_article_body .entry_details {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
	border: 0;
}
.gj .gj_article_body .main_entry { max-width: 72ch; }

.gj .obj_article_details .item { padding: 0; margin: 0 0 32px; }
.gj .obj_article_details .main_entry .label,
.gj .obj_article_details .entry_details .label {
	display: block;
	margin: 0 0 12px;
	font-family: var(--gj-sans);
	font-size: 1.15rem;
	font-weight: 700;
	color: var(--gj-ink);
	text-transform: none;
	letter-spacing: normal;
}
.gj .obj_article_details .abstract { padding: 0; }
.gj .gj_abstract_text p,
.gj .obj_article_details .abstract p {
	font-family: var(--gj-serif);
	font-size: 17.5px;
	line-height: 1.75;
	color: var(--gj-text);
	text-align: left;
	hyphens: auto;
}
.gj .gj_chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.gj .gj_chips li {
	margin: 0;
	padding: 5px 12px;
	border-radius: 4px;
	background: var(--gj-teal-tint);
	color: var(--gj-teal-dark);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
}
.gj .obj_article_details .references p {
	margin: 0 0 10px;
	padding-left: 1.6em;
	text-indent: -1.6em;
	font-size: 15px;
	line-height: 1.6;
	overflow-wrap: anywhere;
}
.gj .obj_article_details .author_bios .sub_item { margin-bottom: 16px; }

/* Aside cards */
.gj .gj_article_aside > .item {
	margin: 0 0 20px;
	padding: 20px;
	border: 1px solid var(--gj-line);
	border-radius: var(--gj-radius);
	background: var(--gj-white);
}
.gj .gj_article_aside > .item .label { font-size: 15px; margin-bottom: 12px; }

.gj .gj_download { background: var(--gj-paper) !important; border-top: 4px solid var(--gj-teal) !important; }
.gj .gj_download .galleys_links { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.gj .gj_download .obj_galley_link {
	display: flex;
	justify-content: center;
	width: 100%;
	min-height: 50px;
	border-color: var(--gj-teal);
	background: var(--gj-teal);
	color: var(--gj-white);
	font-size: 16px;
}
.gj .gj_download .obj_galley_link:hover,
.gj .gj_download .obj_galley_link:focus { background: var(--gj-teal-dark); border-color: var(--gj-teal-dark); }
.gj .gj_download .obj_galley_link.pdf:before { color: inherit; }

.gj .gj_facts_card dl { margin: 0; }
.gj .gj_facts_card dl > div {
	display: grid;
	grid-template-columns: 104px 1fr;
	gap: 10px;
	padding: 9px 0;
	border-top: 1px solid var(--gj-line);
}
.gj .gj_facts_card dl > div:first-child { border-top: 0; padding-top: 0; }
.gj .gj_facts_card dt { font-size: 13px; font-weight: 500; color: var(--gj-ink-soft); }
.gj .gj_facts_card dd {
	margin: 0;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--gj-ink);
	overflow-wrap: anywhere;
}
.gj .gj_facts_card dd a { color: var(--gj-teal-dark); }

.gj .gj_article_aside .copyright p,
.gj .gj_article_aside .copyright a,
.gj .gj_article_aside .item p {
	font-family: var(--gj-sans);
	font-size: 13.5px;
	line-height: 1.5;
	text-align: left;
}
.gj .gj_article_aside .copyright img { margin: 6px 0; }

.gj .gj_aside_cover { padding: 14px !important; }
.gj .gj_aside_cover a {
	display: grid;
	grid-template-columns: 64px 1fr;
	gap: 14px;
	align-items: center;
	color: var(--gj-ink);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}
.gj .gj_aside_cover img { width: 64px; height: auto; border: 1px solid var(--gj-line); border-radius: 2px; }
.gj .gj_aside_cover a:hover span { color: var(--gj-teal); text-decoration: underline; }

/* How to cite (Citation Style Language plugin) */
.gj .gj_article_aside .item.citation .citation_display,
.gj .gj_article_aside .csl-bib-body,
.gj .gj_article_aside .csl-entry {
	font-family: var(--gj-serif);
	font-size: 14.5px;
	line-height: 1.55;
	text-align: left;
	overflow-wrap: anywhere;
}
.gj .gj_article_aside .citation_formats { margin-top: 12px; }
.gj .gj_article_aside .citation_formats_button {
	width: 100%;
	border: 1px solid var(--gj-line);
	border-radius: 4px;
	background: var(--gj-white);
	color: var(--gj-ink);
	font-size: 13.5px;
	font-weight: 600;
	text-align: left;
}

@media (min-width: 992px) {
	.gj .obj_article_details > .row.gj_article_body,
	.gj .gj_article_body {
		grid-template-columns: minmax(0, 1fr) 320px;
		gap: 64px;
		align-items: start;
	}
	.gj .gj_article_aside { position: sticky; top: 16px; }
}

/* ===================================================================
   8  Issue contents and archive
   =================================================================== */

.gj .gj_toc { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; }
.gj .gj_toc .heading.gj_toc_side {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr);
	gap: 8px 20px;
	align-content: start;
	margin: 0;
}
.gj .gj_toc_cover { grid-row: span 3; float: none; width: auto; max-width: none; margin: 0; }
.gj .gj_toc_cover img {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid var(--gj-line);
	border-radius: 3px;
	box-shadow: 0 10px 24px rgba(14, 42, 71, 0.16);
}
.gj .gj_toc_facts { margin: 0; }
.gj .gj_toc_facts > div {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 7px 0;
	border-bottom: 1px solid var(--gj-line);
}
.gj .gj_toc_facts dt { font-size: 13.5px; color: var(--gj-ink-soft); }
.gj .gj_toc_facts dd { margin: 0; font-size: 14px; font-weight: 700; color: var(--gj-ink); }
.gj .gj_toc .pub_id { font-size: 13.5px; }
.gj .gj_toc .galleys.gj_toc_full {
	margin: 4px 0 0;
	padding: 0;
	border: 0;
	background: none;
}
.gj .gj_toc_label {
	margin: 0 0 8px;
	font-size: 13.5px !important;
	font-weight: 600;
	color: var(--gj-ink-soft);
}
.gj .gj_toc_full .galleys_links { margin: 0; padding: 0; list-style: none; }
.gj .gj_toc_full .obj_galley_link {
	width: 100%;
	justify-content: center;
	min-height: 44px;
	background: var(--gj-teal);
	color: var(--gj-white);
	font-size: 15px;
}
.gj .gj_toc_full .obj_galley_link:hover { background: var(--gj-teal-dark); border-color: var(--gj-teal-dark); }

.gj .gj_toc_desc p {
	margin: 0 0 24px;
	max-width: 70ch;
	font-family: var(--gj-serif);
	font-size: 16.5px;
	line-height: 1.65;
	color: var(--gj-ink-soft);
}
.gj .gj_toc .sections { margin: 0; }
.gj .gj_toc .section { margin: 0 0 24px; padding: 0; }
.gj .gj_toc .section:before,
.gj .gj_toc .section:after { display: none; }
.gj .gj_toc_section {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 4px;
	padding: 0 0 10px;
	border-bottom: 2px solid var(--gj-ink);
	font-size: 1.1rem !important;
	font-weight: 700;
	color: var(--gj-ink);
}
.gj .gj_toc_count {
	display: inline-grid;
	place-items: center;
	min-width: 24px;
	height: 24px;
	padding: 0 6px;
	border-radius: 4px;
	background: var(--gj-ink);
	color: var(--gj-white);
	font-size: 12.5px;
	font-weight: 700;
}
.gj .gj_toc .cmp_article_list { margin: 0; padding: 0; list-style: none; }
.gj .gj_toc .cmp_article_list > li { margin: 0; padding: 0; border-bottom: 1px solid var(--gj-line); }

/* One article in a list */
.gj .gj_art { padding: 18px 0; margin: 0; }
.gj .gj_art .title {
	margin: 0 0 6px;
	font-size: 17.5px;
	line-height: 1.35;
	font-weight: 700;
	text-wrap: pretty;
}
.gj .gj_art .title a { color: var(--gj-ink); text-decoration: none; }
.gj .gj_art .title a:hover,
.gj .gj_art .title a:focus { color: var(--gj-teal-dark); text-decoration: underline; text-underline-offset: 3px; }
.gj .gj_art .meta { margin: 0 0 10px; padding: 0; }
.gj .gj_art .authors { font-size: 14.5px; line-height: 1.45; color: var(--gj-ink-soft); }
.gj .gj_art_foot {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 16px;
	font-size: 13.5px;
	color: var(--gj-ink-soft);
}
.gj .gj_art_foot .galleys_links { display: flex; gap: 8px; margin: 0; padding: 0; list-style: none; }
.gj .gj_art_foot .galleys_links li { margin: 0; }
.gj .gj_art_foot .pages,
.gj .gj_art_foot .published { font-weight: 600; color: var(--gj-ink); }
.gj .gj_views { display: inline-flex; align-items: center; gap: 5px; }

@media (min-width: 768px) {
	.gj .gj_toc { grid-template-columns: 240px minmax(0, 1fr); gap: 48px; align-items: start; }
	.gj .gj_toc .heading.gj_toc_side { grid-template-columns: 1fr; gap: 16px; position: sticky; top: 16px; }
	.gj .gj_toc_cover { grid-row: auto; }
}

/* Archive */
.gj .gj_archive_year {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 8px 0 20px;
	font-size: 1.4rem;
	font-weight: 800;
	color: var(--gj-ink);
}
.gj .gj_archive_year::after { content: ""; flex: 1 1 auto; height: 1px; background: var(--gj-line); }
.gj .gj_archive_grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 28px 24px;
	margin: 0 0 40px;
	padding: 0;
	list-style: none;
}
.gj .gj_archive_grid > li { margin: 0; padding: 0; border: 0; }
.gj .gj_issue_card { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 0; }
.gj .gj_issue_card_cover {
	display: grid;
	place-items: center;
	aspect-ratio: 210 / 297;
	float: none;
	width: 100%;
	max-width: none;
	margin: 0;
	border: 1px solid var(--gj-line);
	border-radius: 3px;
	background: var(--gj-paper);
	overflow: hidden;
}
.gj .gj_issue_card_cover img { width: 100%; height: 100%; object-fit: cover; }
.gj .gj_issue_card_cover .gj_tile { transform: scale(1.4); }
.gj .gj_issue_card:hover .gj_issue_card_cover { box-shadow: 0 10px 24px rgba(14, 42, 71, 0.16); }
.gj .gj_issue_card_title { margin: 0; font-size: 16.5px; line-height: 1.3; font-weight: 700; }
.gj .gj_issue_card_title a { color: var(--gj-ink); text-decoration: none; }
.gj .gj_issue_card_title a:hover { color: var(--gj-teal-dark); text-decoration: underline; }
.gj .gj_issue_card .series { margin: 0; font-size: 14.5px; color: var(--gj-ink-soft); }
.gj .gj_issue_card_date { margin: 0; font-size: 13px !important; color: var(--gj-ink-soft); }

/* ===================================================================
   9  Editorial board
   =================================================================== */

.gj .gj_board { margin-top: 8px; }
.gj .gj_board_section { margin: 0 0 48px; }
.gj .gj_board_section > h2 {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 20px;
	font-size: 1.43rem;
	font-weight: 700;
	color: var(--gj-ink);
}
.gj .gj_board_section > h2::after { content: ""; flex: 1 1 auto; height: 1px; background: var(--gj-line); }
.gj .gj_board_intro { max-width: 70ch; margin: 0 0 32px; color: var(--gj-ink-soft); }
.gj .gj_board_grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.gj .gj_member {
	position: relative;
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0 20px 20px;
	border: 1px solid var(--gj-line);
	border-radius: 8px;
	background: var(--gj-white);
	overflow: hidden;
	font-family: var(--gj-sans);
}
.gj .gj_member:hover { border-color: #9FB2C1; }
.gj .gj_member::before {
	content: "";
	display: block;
	height: 56px;
	margin: 0 -20px;
	background: var(--gj-ink);
	box-shadow: inset 0 -4px 0 var(--gj-teal);
}
.gj .gj_member_photo {
	width: 92px;
	height: 92px;
	margin: -46px 0 12px;
	border: 4px solid var(--gj-white);
	border-radius: 50%;
	object-fit: cover;
	background: var(--gj-paper);
	box-shadow: 0 4px 12px rgba(14, 42, 71, 0.18);
}
.gj .gj_member_name { margin: 0 0 4px; font-size: 17px; font-weight: 700; line-height: 1.25; color: var(--gj-ink); }
.gj .gj_member p {
	margin: 0;
	font-family: var(--gj-sans);
	font-size: 14px;
	line-height: 1.45;
	max-width: none;
	text-align: left;
}
.gj .gj_member_role { color: var(--gj-teal-dark); font-weight: 600; }
.gj .gj_member_dept { color: var(--gj-text); margin-top: 6px !important; }
.gj .gj_member_inst { color: var(--gj-ink-soft); }
.gj .gj_member_country {
	display: inline-block;
	align-self: flex-start;
	margin-top: 10px !important;
	padding: 2px 10px;
	border-radius: 999px;
	background: var(--gj-paper);
	border: 1px solid var(--gj-line);
	font-size: 12.5px !important;
	font-weight: 600;
	color: var(--gj-ink);
}
.gj .gj_member_links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto !important; padding-top: 16px; }
.gj .gj_member_links a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 34px;
	padding: 0 12px;
	border: 1px solid var(--gj-line);
	border-radius: 4px;
	font-size: 13px;
	font-weight: 600;
	color: var(--gj-ink);
	text-decoration: none;
	overflow-wrap: anywhere;
}
.gj .gj_member_links a:hover,
.gj .gj_member_links a:focus { border-color: var(--gj-teal); color: var(--gj-teal-dark); }
.gj .gj_member_links a.gj_profile { background: var(--gj-teal); border-color: var(--gj-teal); color: var(--gj-white); }
.gj .gj_member_links a.gj_profile:hover { background: var(--gj-teal-dark); color: var(--gj-white); }

/* Editor-in-Chief: wide card */
.gj .gj_member--lead {
	display: grid;
	grid-template-columns: auto 1fr;
	column-gap: 24px;
	align-items: center;
	padding: 24px;
	background: var(--gj-paper);
	border-left: 5px solid var(--gj-amber);
}
.gj .gj_member--lead::before { display: none; }
.gj .gj_member--lead .gj_member_photo { grid-row: 1 / span 6; width: 128px; height: 128px; margin: 0; }
.gj .gj_member--lead .gj_member_name { font-size: 22px; }
.gj .gj_member--lead .gj_member_links { margin-top: 0 !important; }

.gj .gj_publisher {
	display: grid;
	gap: 6px;
	padding: 24px;
	border: 1px dashed #9FB2C1;
	border-radius: 8px;
	background: var(--gj-paper);
}
.gj .gj_publisher p { margin: 0; max-width: none; font-family: var(--gj-sans); font-size: 15px; text-align: left; }
.gj .gj_publisher strong { color: var(--gj-ink); font-size: 18px; }

@media (max-width: 599px) {
	.gj .gj_member--lead { grid-template-columns: 1fr; }
	.gj .gj_member--lead .gj_member_photo { grid-row: auto; margin-bottom: 12px; width: 104px; height: 104px; }
}

/* ===================================================================
   10  Footer, forms, small screens
   =================================================================== */

.gj .gj_footer {
	background: var(--gj-ink-deep);
	color: #C5D3DE;
	padding: 56px 0 0;
	border: 0;
}
.gj_footer_grid { display: grid; grid-template-columns: 1fr; gap: 32px; padding-bottom: 40px; }
.gj .gj_footer p,
.gj .gj_footer address,
.gj .gj_footer li {
	font-family: var(--gj-sans);
	font-size: 14px;
	line-height: 1.6;
	font-style: normal;
	color: #C5D3DE;
	text-align: left;
}
.gj .gj_footer_title { margin: 14px 0 6px; font-size: 16px !important; font-weight: 700; color: var(--gj-white) !important; }
.gj .gj_footer_issn { margin-top: 10px; font-weight: 600; color: var(--gj-white) !important; }
.gj .gj_footer h2 { margin: 0 0 12px; font-size: 15px; font-weight: 700; color: var(--gj-white); }
.gj .gj_footer ul { margin: 0; padding: 0; list-style: none; }
.gj .gj_footer li { margin: 0 0 6px; }
.gj .gj_footer address { margin: 0 0 10px; }
.gj .gj_footer a { color: #E6EEF4; text-decoration: none; }
.gj .gj_footer a:hover,
.gj .gj_footer a:focus { color: var(--gj-amber); text-decoration: underline; }
.gj .gj_footer .gj_tile { background: var(--gj-teal); box-shadow: inset 0 -4px 0 var(--gj-amber); width: 52px; height: 56px; }
.gj .gj_footer .gj_tile_sym { font-size: 24px; }
.gj .gj_footer .gj_tile_no { color: #CFE7E3; }
.gj .gj_footer .gj_tile_name { color: var(--gj-white); }
.gj_footer_base { border-top: 1px solid rgba(255, 255, 255, 0.12); padding: 18px 0 24px; }
.gj .gj_footer_base p,
.gj .gj_footer_base .pkp_footer_content,
.gj .gj_footer_base .pkp_footer_content p {
	margin: 0 0 6px;
	padding: 0;
	font-size: 13px;
	color: #A9BBC9;
}
@media (min-width: 768px) {
	.gj_footer_grid { grid-template-columns: 1.4fr 1fr 1fr 1.3fr; gap: 40px; }
}

/* Sidebar blocks (ordinary pages only) */
.gj .pkp_structure_sidebar .pkp_block { padding: 24px 20px; border-bottom: 1px solid var(--gj-line); }
.gj .pkp_block .title { display: block; margin-bottom: 12px; font-family: var(--gj-sans); font-size: 15px; font-weight: 700; color: var(--gj-ink); }
.gj .pkp_block a { color: var(--gj-teal); }

/* Forms (login, register, search, contact) */
.gj .cmp_form input[type="text"],
.gj .cmp_form input[type="email"],
.gj .cmp_form input[type="password"],
.gj .cmp_form input[type="url"],
.gj .cmp_form input[type="tel"],
.gj .cmp_form select,
.gj .cmp_form textarea,
.gj .page_search input[type="text"] {
	border: 1px solid #A9B9C7;
	border-radius: 4px;
	font-size: 15px;
}
.gj .cmp_form input:focus,
.gj .cmp_form select:focus,
.gj .cmp_form textarea:focus { border-color: var(--gj-teal); box-shadow: 0 0 0 3px var(--gj-teal-tint); }
.gj .cmp_notification { border-left-color: var(--gj-amber); background: #FFF8EA; font-family: var(--gj-sans); }

@media (max-width: 599px) {
	:root { --gj-gutter: 16px; }
	.gj_section { padding: 48px 0; }
	.gj_actions .gj_btn { flex: 1 1 100%; }
	.gj_facts dl > div { grid-template-columns: 96px 1fr; }
	.gj .pkp_structure_main p,
	.gj .pkp_structure_main li { font-size: 1.071rem; }
	.gj .gj_abstract_text p,
	.gj .obj_article_details .abstract p { font-size: 16.5px; }
	.gj .gj_article_kicker { align-items: flex-start; }
	.gj .gj_tile--article { width: 50px; height: 54px; }
	.gj .gj_tile--article .gj_tile_sym { font-size: 22px; }
}

@media print {
	.gj_strip, .gj_nav, .gj_head_actions, .gj_infonav, .gj_footer { display: none !important; }
	.gj .gj_article_body { display: block; }
}
