/* ==========================================================================
   IJRBS ACADEMIC JOURNAL THEME (custom-ijrbs.css)
   Target: Open Journal Systems (OJS 3.x) Frontend
   Scholarly Deep Teal & Plum Purple Color Palette & Bottom-Sweep Banner Layout
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. GOOGLE FONTS & BRAND COLOR PALETTE TOKENS
   -------------------------------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,600&display=swap');

:root {
	/* Scholarly Brand Palette */
	--primary: #085041;
	/* Deep Teal - Headers & Navigation */
	--secondary: #534AB7;
	/* Plum Purple - Links & Tags */
	--accent: #D85A30;
	/* Coral - CTAs & Badges */
	--light: #E5E1D8;
	/* Light Warm Accent */
	--background: #F1EFE8;
	/* Warm Off-White Page Background */
	--white: #FFFFFF;
	/* Pure White Card & Article Surfaces */
	--text: #2C2C2A;
	/* Charcoal Text */
	--muted: #656560;
	/* Muted Charcoal */
	--border: #D8D4C9;
	/* Warm Subtle Border */
	--hover: #053A2F;
	/* Dark Deep Teal Hover */

	/* Token Aliases */
	--env-primary: var(--primary);
	--env-primary-dark: #053A2F;
	--env-secondary: var(--secondary);
	--env-accent: var(--accent);
	--env-complementary: var(--secondary);
	--env-light-green: var(--light);
	--env-bg-main: var(--background);
	--env-bg-surface: var(--white);
	--env-text-dark: var(--text);
	--env-text-body: var(--text);
	--env-text-muted: var(--muted);
	--env-text-light: var(--white);
	--env-highlight: var(--accent);
	--env-border: var(--border);
	--env-border-accent: #C8C3B4;

	/* Typography Tokens */
	--font-heading: 'Outfit', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--font-body: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

	/* Aesthetics */
	--shadow-sm: 0 2px 6px rgba(8, 80, 65, 0.05);
	--shadow-md: 0 6px 18px rgba(8, 80, 65, 0.09);
	--shadow-lg: 0 12px 32px rgba(8, 80, 65, 0.14);
	--radius-sm: 6px;
	--radius-md: 10px;
	--radius-lg: 16px;
	--radius-pill: 50px;
	--transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

/* --------------------------------------------------------------------------
   2. SITE BASE & TYPOGRAPHY RESET
   -------------------------------------------------------------------------- */
html,
body {
	font-family: var(--font-body) !important;
	background-color: var(--background) !important;
	color: var(--text) !important;
	line-height: 1.65 !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6,
.page_title {
	font-family: var(--font-heading) !important;
	color: var(--primary) !important;
	font-weight: 700;
	letter-spacing: -0.015em;
}

a {
	color: var(--secondary);
	text-decoration: none;
	transition: var(--transition);
}

a:hover,
a:focus {
	color: var(--primary);
	text-decoration: none;
}

/* --------------------------------------------------------------------------
   3. HEADER & NAVIGATION LAYOUT (.pkp_structure_head)
   -------------------------------------------------------------------------- */

/* Header Outer Container */
.pkp_structure_head {
	background: var(--white) !important;
	border-bottom: 1px solid var(--border) !important;
	box-shadow: 0 4px 16px rgba(8, 80, 65, 0.06) !important;
	position: relative !important;
	z-index: 1000 !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* Header Inner Wrapper */
.pkp_head_wrapper {
	max-width: 1380px !important;
	margin: 0 auto !important;
	padding: 0.85rem 1.5rem !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 1rem !important;
	box-sizing: border-box !important;
	width: 100% !important;
	min-height: 90px !important;
}

/* --------------------------------------------------------------------------
   BRANDING & LOGO + CURVED BANNER (.pkp_site_name_wrapper)
   -------------------------------------------------------------------------- */
.pkp_site_name_wrapper {
	display: flex !important;
	align-items: center !important;
	gap: 1rem !important;
	flex: 0 1 auto !important;
	max-width: 42% !important;
}

.pkp_site_name {
	padding: 0 !important;
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
}

/* Image Logo (When uploaded in OJS Settings) */
.pkp_site_name .is_img {
	display: inline-flex !important;
	align-items: center !important;
	gap: 1rem !important;
	text-decoration: none !important;
}

.pkp_site_name .is_img img {
	max-height: 75px !important;
	width: auto !important;
	object-fit: contain !important;
	flex-shrink: 0 !important;
	transition: var(--transition) !important;
}

/* Text Title Banner (Deep Teal Background with Bottom Sweep Curve) */
.pkp_site_name .is_text {
	background: var(--primary) !important;
	color: #FFFFFF !important;
	font-family: var(--font-heading) !important;
	font-size: 1.2rem !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
	letter-spacing: -0.01em !important;
	padding: 0.75rem 2rem 0.75rem 1.25rem !important;
	border-radius: 0 0 90px 0 !important;
	box-shadow: 0 4px 14px rgba(8, 80, 65, 0.18) !important;
	display: inline-flex !important;
	align-items: center !important;
	text-decoration: none !important;
}

/* .pkp_site_name .is_text::before {
	content: '' !important;
	display: inline-block !important;
	width: 34px !important;
	height: 34px !important;
	margin-right: 0.75rem !important;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" fill="none"><path d="M50 15C32 15 18 28 18 46C18 56 23 64 30 70V82H70V70C77 64 82 56 82 46C82 28 68 15 50 15Z" fill="%23D85A30" opacity="0.25"/><path d="M50 15C32 15 18 28 18 46C18 56 23 64 30 70V82H70V70C77 64 82 56 82 46C82 28 68 15 50 15Z" stroke="%23FFFFFF" stroke-width="5" stroke-linecap="round" stroke-linejoin="round"/><path d="M38 35C38 35 44 28 52 28C60 28 62 35 62 35" stroke="%23FFFFFF" stroke-width="5" stroke-linecap="round"/><circle cx="38" cy="52" r="5" fill="%23FFFFFF"/><circle cx="62" cy="52" r="5" fill="%23D85A30"/><circle cx="50" cy="40" r="4" fill="%23534AB7"/></svg>') no-repeat center center / contain !important;
	flex-shrink: 0 !important;
} */

.pkp_site_name .is_img::after {
	content: "International Journal for\A Research in Behavioral Science" !important;
	white-space: pre-wrap !important;
	background: var(--primary) !important;
	color: #FFFFFF !important;
	font-family: var(--font-heading) !important;
	font-size: 1.15rem !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.01em !important;
	padding: 0.65rem 1.85rem 0.65rem 1.1rem !important;
	border-radius: 0 0 90px 0 !important;
	box-shadow: 0 4px 14px rgba(8, 80, 65, 0.18) !important;
	display: inline-block !important;
	max-width: 270px !important;
}

/* --------------------------------------------------------------------------
   DESKTOP NAVIGATION (min-width: 992px)
   -------------------------------------------------------------------------- */
@media (min-width: 992px) {
	.pkp_site_nav_toggle {
		display: none !important;
	}

	nav.pkp_site_nav_menu {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-end !important;
		justify-content: center !important;
		flex: 1 1 auto !important;
		max-width: 60% !important;
		gap: 0.5rem !important;
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
	}
}

/* TOP USER NAVIGATION (Row 1) */
.pkp_navigation_user_wrapper {
	order: 1 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	width: 100% !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	position: relative !important;
}

.pkp_navigation_user_wrapper::before {
	display: none !important;
	content: none !important;
}

.pkp_navigation_user {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 0.5rem !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	flex-wrap: nowrap !important;
}

.pkp_navigation_user>li {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
}

.pkp_navigation_user>li>a {
	color: var(--primary) !important;
	background: var(--background) !important;
	border: 1px solid var(--border) !important;
	font-size: 0.775rem !important;
	font-weight: 600 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.35rem !important;
	padding: 0.2rem 0.65rem !important;
	border-radius: var(--radius-pill) !important;
	transition: var(--transition) !important;
	text-decoration: none !important;
	white-space: nowrap !important;
}

.pkp_navigation_user>li>a:hover,
.pkp_navigation_user>li>a:focus {
	color: var(--white) !important;
	background: var(--primary) !important;
	border-color: var(--primary) !important;
}

/* User Notification Task Badge (Coral Accent) */
.pkp_navigation_user .task_count {
	background: var(--accent) !important;
	color: var(--white) !important;
	font-weight: 700 !important;
	font-size: 0.725rem !important;
	padding: 0.1rem 0.45rem !important;
	border-radius: 50px !important;
	margin-left: 0.35rem !important;
	display: inline-block !important;
}

/* USER NAVIGATION DROPDOWN DISCLOSURE */
.pkp_navigation_user ul,
.pkp_navigation_user .pkp_nav_list ul {
	display: none;
	position: absolute !important;
	top: 100% !important;
	right: 0 !important;
	left: auto !important;
	background: var(--white) !important;
	border: 1px solid var(--border) !important;
	border-radius: var(--radius-md) !important;
	box-shadow: 0 10px 25px rgba(8, 80, 65, 0.15) !important;
	padding: 0.5rem 0 !important;
	min-width: 190px !important;
	z-index: 1050 !important;
	margin-top: 4px !important;
}

.pkp_navigation_user>li:hover>ul,
.pkp_navigation_user>li.is_open>ul,
.pkp_navigation_user>li:focus-within>ul {
	display: block !important;
}

.pkp_navigation_user ul a,
.pkp_navigation_user .pkp_nav_list ul a {
	color: var(--text) !important;
	font-size: 0.85rem !important;
	font-weight: 600 !important;
	padding: 0.55rem 1.15rem !important;
	display: block !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	transition: var(--transition) !important;
}

.pkp_navigation_user ul a:hover {
	background: var(--background) !important;
	color: var(--secondary) !important;
}

/* PRIMARY SITE NAVIGATION (Row 2) */
.pkp_navigation_primary_row {
	order: 2 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	width: 100% !important;
	background: transparent !important;
}

.pkp_navigation_primary_wrapper {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 1rem !important;
	background: transparent !important;
	flex-wrap: nowrap !important;
}

.pkp_navigation_primary {
	display: flex !important;
	align-items: center !important;
	gap: 1rem !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	flex-wrap: nowrap !important;
	justify-content: flex-end !important;
}

.pkp_navigation_primary>li {
	position: relative !important;
	margin: 0 !important;
}

.pkp_navigation_primary>li>a {
	color: var(--primary) !important;
	font-family: var(--font-heading) !important;
	font-size: 0.8rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.025em !important;
	padding: 0.25rem 0 !important;
	border-bottom: 2.5px solid transparent !important;
	background: transparent !important;
	transition: var(--transition) !important;
	display: inline-block !important;
	white-space: nowrap !important;
}

.pkp_navigation_primary>li>a:hover,
.pkp_navigation_primary>li.is_current>a,
.pkp_navigation_primary>li.active>a,
.pkp_navigation_primary>li>a[aria-current="page"] {
	color: var(--primary) !important;
	border-bottom-color: var(--primary) !important;
	background: transparent !important;
}

/* Dropdown Arrow Indicator */
.pkp_navigation_primary>li.has-submenu>a::after,
.pkp_navigation_primary>li:has(ul)>a::after {
	content: "\f107";
	font-family: "FontAwesome";
	font-size: 0.75rem;
	margin-left: 0.3rem;
	color: var(--muted);
}

/* Primary Dropdown Menus */
.pkp_nav_list ul,
.pkp_navigation_primary ul {
	display: none;
	position: absolute !important;
	top: 100% !important;
	left: 0 !important;
	background: var(--white) !important;
	border: 1px solid var(--border) !important;
	border-radius: var(--radius-md) !important;
	box-shadow: 0 10px 25px rgba(8, 80, 65, 0.12) !important;
	padding: 0.5rem 0 !important;
	min-width: 200px !important;
	z-index: 1050 !important;
	overflow: hidden;
}

.pkp_navigation_primary>li:hover>ul,
.pkp_navigation_primary>li.is_open>ul,
.pkp_navigation_primary>li:focus-within>ul {
	display: block !important;
}

.pkp_nav_list ul a,
.pkp_navigation_primary ul a {
	color: var(--text) !important;
	font-size: 0.875rem !important;
	font-weight: 600 !important;
	text-transform: none !important;
	padding: 0.6rem 1.25rem !important;
	border-left: none !important;
	display: block !important;
	transition: var(--transition) !important;
}

.pkp_nav_list ul a:hover,
.pkp_navigation_primary ul a:hover {
	background: var(--background) !important;
	color: var(--secondary) !important;
}

/* SEARCH CAPSULE BOX */
.pkp_navigation_search_wrapper {
	display: flex !important;
	align-items: center !important;
}

.pkp_navigation_search_wrapper a.pkp_search {
	background: var(--background) !important;
	color: var(--muted) !important;
	border: 1px solid var(--border) !important;
	border-radius: var(--radius-pill) !important;
	padding: 0.35rem 0.85rem !important;
	font-size: 0.8rem !important;
	font-weight: 500 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.4rem !important;
	text-decoration: none !important;
	transition: var(--transition) !important;
	white-space: nowrap !important;
}

.pkp_navigation_search_wrapper a.pkp_search:hover {
	background: var(--white) !important;
	border-color: var(--secondary) !important;
	color: var(--text) !important;
	box-shadow: 0 0 0 3px rgba(83, 74, 183, 0.12) !important;
}

.pkp_navigation_search_wrapper input[type="search"],
.pkp_navigation_search_wrapper input[type="text"] {
	background: var(--background) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="%23656560" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>') no-repeat 10px center !important;
	border: 1px solid var(--border) !important;
	border-radius: var(--radius-pill) !important;
	padding: 0.35rem 0.75rem 0.35rem 2rem !important;
	font-size: 0.8rem !important;
	color: var(--text) !important;
	outline: none !important;
	transition: var(--transition) !important;
	width: 120px;
}

.pkp_navigation_search_wrapper input:focus {
	background-color: var(--white) !important;
	border-color: var(--secondary) !important;
	box-shadow: 0 0 0 3px rgba(83, 74, 183, 0.15) !important;
	width: 150px;
}

/* Submit Paper Button CTA (Coral Accent) */
.submit_paper_cta {
	background: linear-gradient(135deg, var(--accent) 0%, #B8431B 100%) !important;
	color: var(--white) !important;
	font-size: 0.825rem !important;
	font-weight: 600 !important;
	padding: 0.45rem 1rem !important;
	border-radius: var(--radius-pill) !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.5rem !important;
	text-decoration: none !important;
	box-shadow: 0 2px 8px rgba(216, 90, 48, 0.25) !important;
	transition: var(--transition) !important;
}

.submit_paper_cta:hover {
	background: linear-gradient(135deg, #B8431B 0%, var(--hover) 100%) !important;
	color: var(--white) !important;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(216, 90, 48, 0.35) !important;
}

/* --------------------------------------------------------------------------
   4. LAYOUT SCAFFOLDING & CONTAINERS
   -------------------------------------------------------------------------- */
.pkp_structure_content {
	padding-top: 2.5rem !important;
	padding-bottom: 4rem !important;
	max-width: 1280px;
	margin: 0 auto;
}

/* Main Content Card Area */
.pkp_structure_main {
	background: var(--white);
	border-radius: var(--radius-lg);
	border: 1px solid var(--border);
	box-shadow: var(--shadow-sm);
	padding: 2.5rem !important;
	margin-bottom: 2rem;
}

.pkp_structure_main::before,
.pkp_structure_main::after {
	display: none !important;
}

/* Sidebar Column */
.pkp_structure_sidebar {
	padding-left: 1.5rem;
}

.pkp_structure_main:first-child:last-child {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}

/* --------------------------------------------------------------------------
   5. BREADCRUMBS & PAGE HEADINGS
   -------------------------------------------------------------------------- */
.cmp_breadcrumbs {
	margin-bottom: 1.75rem !important;
}

.cmp_breadcrumbs ol {
	background: var(--white) !important;
	padding: 0.6rem 1.25rem !important;
	border-radius: var(--radius-md) !important;
	border: 1px solid var(--border) !important;
}

.cmp_breadcrumbs a {
	color: var(--secondary) !important;
	font-weight: 600;
	font-size: 0.875rem;
}

.cmp_breadcrumbs a:hover {
	color: var(--primary) !important;
}

.cmp_breadcrumbs .separator {
	color: var(--muted) !important;
	margin: 0 0.5rem;
}

.cmp_breadcrumbs .current {
	color: var(--muted) !important;
	font-weight: 600;
	font-size: 0.875rem;
}

.page_title {
	font-size: 2.1rem !important;
	line-height: 1.3 !important;
	margin-top: 0 !important;
	margin-bottom: 1.75rem !important;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--light);
	position: relative;
}

.page_title::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 70px;
	height: 3px;
	background: var(--accent);
	border-radius: 2px;
}

/* --------------------------------------------------------------------------
   6. HOMEPAGE & JOURNAL SUMMARY
   -------------------------------------------------------------------------- */
.page_index_journal .journal_summary,
.homepage_about {
	background: var(--white);
	border: 1px solid var(--border);
	padding: 1.75rem 2rem !important;
	border-radius: var(--radius-md);
	margin-bottom: 2.5rem !important;
	box-shadow: var(--shadow-sm);
}

.homepage_about h2,
.current_issue h2,
.additional_content h2 {
	font-size: 1.5rem !important;
	color: var(--primary) !important;
	margin-bottom: 1.25rem !important;
	display: flex;
	align-items: center;
}

.homepage_about h2::before,
.current_issue h2::before,
.additional_content h2::before {
	content: '❖';
	color: var(--accent);
	font-size: 1.1rem;
	margin-right: 0.6rem;
}

/* Current Issue Section */
.current_issue {
	background: var(--white);
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	padding: 2rem !important;
	margin-bottom: 2.5rem !important;
	box-shadow: var(--shadow-md);
}

.current_issue_cover {
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-md);
	transition: var(--transition);
}

.current_issue_cover:hover {
	transform: translateY(-4px);
	box-shadow: var(--shadow-lg);
}

.current_issue_cover img {
	border-radius: var(--radius-md);
	display: block;
	width: 100%;
}

.current_issue_title {
	color: var(--primary) !important;
	font-size: 1.4rem !important;
	font-weight: 700;
	margin-bottom: 0.5rem;
}

/* --------------------------------------------------------------------------
   7. TABLE OF CONTENTS & ARTICLE LIST (.obj_article_summary)
   -------------------------------------------------------------------------- */
.obj_issue_toc .section {
	margin-bottom: 2.5rem;
}

.obj_issue_toc .section .title {
	font-size: 1.35rem !important;
	color: var(--primary) !important;
	padding-bottom: 0.5rem;
	border-bottom: 2px solid var(--light);
	margin-bottom: 1.5rem !important;
	text-transform: capitalize;
}

.cmp_article_list>li {
	margin-bottom: 1.75rem !important;
	padding-bottom: 1.75rem;
	border-bottom: 1px dashed var(--border) !important;
}

.cmp_article_list>li:last-child {
	border-bottom: none !important;
}

/* Article Summary Card */
.obj_article_summary {
	background: var(--white);
	border: 1px solid var(--border);
	border-radius: var(--radius-md);
	padding: 1.5rem !important;
	transition: var(--transition);
	position: relative;
}

.obj_article_summary:hover {
	border-color: var(--secondary);
	box-shadow: var(--shadow-md);
	transform: translateY(-2px);
}

.obj_article_summary>.title {
	font-size: 1.2rem !important;
	line-height: 1.45 !important;
	margin-bottom: 0.5rem !important;
}

.obj_article_summary>.title a {
	color: var(--primary) !important;
	font-family: var(--font-heading) !important;
	font-weight: 700;
}

.obj_article_summary>.title a:hover {
	color: var(--secondary) !important;
}

.obj_article_summary .subtitle {
	color: var(--muted) !important;
	font-size: 0.95rem;
	font-style: italic;
	margin-bottom: 0.5rem;
}

.obj_article_summary .authors {
	color: var(--text) !important;
	font-size: 0.925rem !important;
	font-weight: 600;
	margin-bottom: 0.75rem;
}

.obj_article_summary .pages,
.obj_article_summary .published {
	display: inline-block;
	background: var(--background);
	color: var(--secondary) !important;
	font-size: 0.8rem !important;
	font-weight: 600;
	padding: 0.2rem 0.65rem;
	border-radius: var(--radius-pill);
	border: 1px solid var(--border);
	margin-right: 0.5rem;
}

/* Galleys / Download Action Buttons */
.galley_link,
.obj_article_summary .galley_link {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%) !important;
	color: var(--white) !important;
	font-family: var(--font-body) !important;
	font-size: 0.85rem !important;
	font-weight: 600 !important;
	padding: 0.45rem 1.1rem !important;
	border-radius: var(--radius-sm) !important;
	border: none !important;
	box-shadow: 0 2px 6px rgba(8, 80, 65, 0.2);
	transition: var(--transition) !important;
	text-decoration: none !important;
}

.galley_link:hover,
.obj_article_summary .galley_link:hover {
	background: linear-gradient(135deg, var(--secondary) 0%, var(--accent) 100%) !important;
	color: var(--white) !important;
	box-shadow: 0 4px 12px rgba(216, 90, 48, 0.3);
	transform: translateY(-1px);
}

.galley_link.pdf::before {
	content: '📄 ';
	margin-right: 0.3rem;
}

/* --------------------------------------------------------------------------
   8. ARTICLE DETAIL PAGE (.obj_article_details)
   -------------------------------------------------------------------------- */
.obj_article_details {
	margin-top: 0.5rem;
}

.obj_article_details>.page_title {
	font-size: 2.25rem !important;
	line-height: 1.3 !important;
	color: var(--primary) !important;
}

.obj_article_details>.subtitle {
	font-size: 1.2rem !important;
	color: var(--muted) !important;
	margin-top: 0.5rem;
	font-style: italic;
}

.obj_article_details .row {
	margin-top: 2rem !important;
	border: none !important;
}

/* Author Section */
.obj_article_details .authors {
	background: var(--background);
	border: 1px solid var(--border);
	border-radius: var(--radius-md);
	padding: 1.25rem 1.5rem !important;
	margin-bottom: 2rem;
}

.obj_article_details .authors li {
	margin-bottom: 0.75rem;
}

.obj_article_details .authors li:last-child {
	margin-bottom: 0;
}

.obj_article_details .authors .name {
	font-size: 1.05rem !important;
	color: var(--primary) !important;
	font-weight: 700;
}

.obj_article_details .authors .affiliation {
	color: var(--muted) !important;
	font-size: 0.875rem;
}

/* Abstract Box */
.obj_article_details .item.abstract {
	background: var(--white);
	border: 1px solid var(--border);
	border-radius: var(--radius-md);
	padding: 1.75rem !important;
	margin-bottom: 2rem;
	box-shadow: var(--shadow-sm);
}

.obj_article_details .item.abstract .label {
	font-size: 1.25rem !important;
	color: var(--primary) !important;
	font-family: var(--font-heading) !important;
	margin-bottom: 1rem !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.obj_article_details .item.abstract p {
	font-size: 1.025rem;
	line-height: 1.75;
	color: var(--text);
}

/* DOI & Metadata Cards */
.obj_article_details .item.doi {
	background: var(--background);
	border: 1px solid var(--border);
	border-radius: var(--radius-sm);
	padding: 0.75rem 1.25rem !important;
	margin-bottom: 1.75rem;
	display: inline-block;
	width: 100%;
}

.obj_article_details .item.doi .label {
	color: var(--primary) !important;
	font-weight: 700;
	margin-right: 0.5rem;
}

.obj_article_details .item.doi .value a {
	color: var(--secondary) !important;
	font-weight: 600;
	word-break: break-all;
}

/* Keywords Tags (Plum Purple Accent) */
.obj_article_details .item.keywords {
	margin-bottom: 1.75rem;
}

.obj_article_details .item.keywords .label {
	font-size: 1rem !important;
	color: var(--primary) !important;
	margin-right: 0.75rem;
}

.obj_article_details .item.keywords .value {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-top: 0.5rem;
}

.obj_article_details .item.keywords .value span {
	background: var(--background);
	color: var(--secondary);
	font-size: 0.825rem;
	font-weight: 600;
	padding: 0.25rem 0.75rem;
	border-radius: var(--radius-pill);
	border: 1px solid var(--border);
}

/* Article Sidebar Details */
.obj_article_details .entry_details {
	background: var(--white);
	border: 1px solid var(--border) !important;
	border-radius: var(--radius-md) !important;
	padding: 0 !important;
	margin-top: 0 !important;
}

.obj_article_details .entry_details .item {
	padding: 1.25rem 1.5rem !important;
	border-bottom: 1px solid var(--border) !important;
}

.obj_article_details .entry_details .item:last-child {
	border-bottom: none !important;
}

.obj_article_details .entry_details .item .label {
	color: var(--primary) !important;
	font-family: var(--font-body) !important;
	font-size: 0.85rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 0.5rem !important;
}

/* Citation Box */
.citation_display {
	background: var(--white);
	border-radius: var(--radius-sm);
	padding: 1rem;
	border: 1px solid var(--border);
}

.citation_formats_button {
	background: var(--background) !important;
	border: 1px solid var(--border) !important;
	border-radius: var(--radius-sm) !important;
	color: var(--primary) !important;
	font-weight: 600 !important;
	padding: 0.5rem 1rem !important;
}

/* --------------------------------------------------------------------------
   9. SIDEBAR BLOCKS (.pkp_structure_sidebar, .pkp_block)
   -------------------------------------------------------------------------- */
.pkp_block {
	background: var(--white) !important;
	border: 1px solid var(--border) !important;
	border-radius: var(--radius-md) !important;
	padding: 1.5rem !important;
	margin-bottom: 1.75rem !important;
	box-shadow: var(--shadow-sm) !important;
	transition: var(--transition);
}

.pkp_block:hover {
	border-color: var(--border);
	box-shadow: var(--shadow-md);
}

.pkp_block .title,
.pkp_block h2 {
	font-family: var(--font-heading) !important;
	font-size: 1.15rem !important;
	color: var(--primary) !important;
	border-bottom: 2px solid var(--light);
	padding-bottom: 0.5rem !important;
	margin-top: 0 !important;
	margin-bottom: 1rem !important;
	font-weight: 700;
}

.pkp_block .content ul li {
	padding: 0.4rem 0 !important;
	border-bottom: 1px solid var(--background);
}

.pkp_block .content ul li:last-child {
	border-bottom: none;
}

.pkp_block a {
	color: var(--secondary);
	font-weight: 500;
}

.pkp_block a:hover {
	color: var(--primary);
}

/* Make a Submission Button Block */
.block_make_submission a {
	display: block !important;
	text-align: center !important;
	background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%) !important;
	color: var(--white) !important;
	font-family: var(--font-body) !important;
	font-size: 0.95rem !important;
	font-weight: 700 !important;
	padding: 0.85rem 1.25rem !important;
	border-radius: var(--radius-md) !important;
	box-shadow: 0 4px 12px rgba(8, 80, 65, 0.2) !important;
	border: none !important;
	transition: var(--transition) !important;
	text-decoration: none !important;
}

.block_make_submission a:hover {
	background: linear-gradient(135deg, var(--secondary) 0%, var(--accent) 100%) !important;
	color: var(--white) !important;
	box-shadow: 0 6px 18px rgba(216, 90, 48, 0.3) !important;
	transform: translateY(-2px);
}

/* --------------------------------------------------------------------------
   10. ISSUE ARCHIVE PAGE
   -------------------------------------------------------------------------- */
.page_issue_archive .issues_archive {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 1.75rem;
	list-style: none;
	padding-left: 0;
}

.obj_issue_summary {
	background: var(--white);
	border: 1px solid var(--border);
	border-radius: var(--radius-md);
	padding: 1.25rem !important;
	box-shadow: var(--shadow-sm);
	transition: var(--transition);
}

.obj_issue_summary:hover {
	border-color: var(--secondary);
	box-shadow: var(--shadow-md);
	transform: translateY(-3px);
}

.obj_issue_summary .cover img {
	border-radius: var(--radius-sm);
	box-shadow: var(--shadow-sm);
}

.obj_issue_summary .title {
	font-size: 1.15rem !important;
	color: var(--primary) !important;
	font-weight: 700;
	margin-top: 0.75rem;
}

/* --------------------------------------------------------------------------
   11. BUTTONS, FORMS & INPUTS
   -------------------------------------------------------------------------- */
.cmp_button,
.btn-primary,
button[type="submit"] {
	background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%) !important;
	color: var(--white) !important;
	font-family: var(--font-body) !important;
	font-weight: 600 !important;
	border-radius: var(--radius-sm) !important;
	border: none !important;
	padding: 0.65rem 1.4rem !important;
	box-shadow: 0 2px 6px rgba(8, 80, 65, 0.2) !important;
	transition: var(--transition) !important;
	cursor: pointer;
}

.cmp_button:hover,
.btn-primary:hover,
button[type="submit"]:hover {
	background: linear-gradient(135deg, var(--secondary) 0%, var(--accent) 100%) !important;
	box-shadow: 0 4px 14px rgba(216, 90, 48, 0.3) !important;
	color: var(--white) !important;
}

.cmp_button_wire {
	background: transparent !important;
	border: 2px solid var(--primary) !important;
	color: var(--primary) !important;
	font-weight: 600 !important;
	border-radius: var(--radius-sm) !important;
	padding: 0.55rem 1.25rem !important;
	transition: var(--transition) !important;
}

.cmp_button_wire:hover {
	background: var(--primary) !important;
	color: var(--white) !important;
}

/* Form Inputs */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
select,
textarea {
	background: var(--white) !important;
	border: 1px solid var(--border) !important;
	border-radius: var(--radius-sm) !important;
	padding: 0.65rem 0.85rem !important;
	font-family: var(--font-body) !important;
	font-size: 0.95rem !important;
	color: var(--text) !important;
	transition: var(--transition) !important;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.03);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
select:focus,
textarea:focus {
	border-color: var(--secondary) !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(83, 74, 183, 0.18) !important;
}

/* --------------------------------------------------------------------------
   12. FOOTER (.pkp_structure_footer_wrapper)
   -------------------------------------------------------------------------- */
.pkp_structure_footer_wrapper {
	background: var(--primary) !important;
	color: rgba(255, 255, 255, 0.88) !important;
	border-top: 4px solid var(--accent) !important;
	margin-top: 3rem;
}

.pkp_structure_footer {
	padding-top: 2.5rem !important;
	padding-bottom: 2.5rem !important;
}

.pkp_footer_content {
	color: rgba(255, 255, 255, 0.88) !important;
	font-size: 0.925rem !important;
	line-height: 1.7 !important;
}

.pkp_footer_content a {
	color: var(--light) !important;
	font-weight: 500;
}

.pkp_footer_content a:hover {
	color: var(--white) !important;
	text-decoration: underline;
}

.pkp_brand_footer a {
	opacity: 0.85;
	transition: var(--transition);
}

.pkp_brand_footer a:hover {
	opacity: 1;
	transform: scale(1.03);
}


.pkp_brand_footer {
	display: none !important;
}

/* --------------------------------------------------------------------------
   13. RESPONSIVE MEDIA QUERIES (FULL MOBILE & TABLET FIXES)
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
	.pkp_head_wrapper {
		flex-direction: column !important;
		align-items: center !important;
		text-align: center !important;
		padding: 0.75rem 1rem !important;
		gap: 0.85rem !important;
		min-height: auto !important;
	}

	.pkp_site_name_wrapper {
		max-width: 100% !important;
		width: 100% !important;
		justify-content: center !important;
		text-align: center !important;
	}

	.pkp_site_name {
		justify-content: center !important;
	}

	.pkp_site_name .is_text,
	.pkp_site_name .is_img::after {
		font-size: 18px !important;
		line-height: 1.25 !important;
		padding: 0.6rem 1.25rem !important;
		border-radius: 0 0 45px 0 !important;
		max-width: 100% !important;
		text-align: center !important;
		word-break: break-word !important;
	}

	.pkp_site_name .is_img {
		flex-wrap: wrap !important;
		justify-content: center !important;
		max-width: 100% !important;
	}

	.pkp_site_name .is_img img {
		max-height: 55px !important;
	}

	/* CENTERED Mobile Navigation Toggle Button */
	/* .pkp_site_nav_toggle {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		margin: 0.5rem auto 0 auto !important;
		background: var(--background) !important;
		border: 1px solid var(--border) !important;
		border-radius: var(--radius-sm) !important;
		padding: 0.45rem 1rem !important;
		color: var(--primary) !important;
		font-family: var(--font-heading) !important;
		font-weight: 700 !important;
		font-size: 0.85rem !important;
		cursor: pointer !important;
		box-shadow: none !important;
	} */

	/* LEFT-ALIGNED Mobile Navigation Toggle Button */
	.pkp_site_nav_toggle {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		margin: 0px auto 0px -33px !important;
		/* Left aligned */
		background: #000000 !important;
		border: 1px solid var(--border) !important;
		border-radius: var(--radius-sm) !important;
		padding: 0.45rem 1rem !important;
		color: var(--primary) !important;
		font-family: var(--font-heading) !important;
		font-weight: 700 !important;
		font-size: 0.85rem !important;
		cursor: pointer !important;
		box-shadow: none !important;
	}

	.pkp_site_nav_toggle::before {
		content: "\f0c9";
		font-family: "FontAwesome";
		margin-right: 0.45rem;
		font-size: 0.9rem;
	}

	/* Mobile Menu: COLLAPSED / HIDDEN BY DEFAULT */
	nav.pkp_site_nav_menu {
		display: none;
		width: 100% !important;
		max-width: 100% !important;
		flex-direction: column !important;
		align-items: center !important;
		text-align: center !important;
		background: var(--white) !important;
		border: 1px solid var(--border) !important;
		border-radius: var(--radius-md) !important;
		padding: 1rem !important;
		margin-top: 0.5rem !important;
		box-shadow: var(--shadow-lg) !important;
		gap: 1rem !important;
	}

	/* Mobile Menu: SHOW ONLY WHEN TOGGLED OPEN BY JS */
	nav.pkp_site_nav_menu.pkp_site_nav_menu--isOpen,
	nav.pkp_site_nav_menu.is_open,
	nav.pkp_site_nav_menu.in,
	body.navIsOpen nav.pkp_site_nav_menu {
		display: flex !important;
	}

	.pkp_navigation_user_wrapper {
		justify-content: center !important;
		width: 100% !important;
	}

	.pkp_navigation_user {
		justify-content: center !important;
		flex-wrap: wrap !important;
		width: 100% !important;
	}

	.pkp_navigation_primary_row {
		width: 100% !important;
	}

	.pkp_navigation_primary_wrapper {
		flex-direction: column !important;
		align-items: center !important;
		width: 100% !important;
		gap: 0.75rem !important;
	}

	.pkp_navigation_primary {
		flex-direction: column !important;
		align-items: center !important;
		width: 100% !important;
		gap: 0.5rem !important;
	}

	.pkp_navigation_primary>li {
		width: 100% !important;
		border-bottom: 1px solid var(--border) !important;
		padding-bottom: 0.35rem !important;
		text-align: center !important;
	}

	.pkp_navigation_primary>li>a {
		width: 100% !important;
		display: block !important;
		white-space: normal !important;
		text-align: center !important;
	}

	.pkp_navigation_search_wrapper {
		width: 100% !important;
		justify-content: center !important;
	}

	.pkp_navigation_search_wrapper input {
		width: 100% !important;
	}

	.pkp_structure_sidebar {
		width: 100% !important;
		float: none !important;
		padding-left: 0 !important;
		margin-top: 2rem;
	}

	.pkp_structure_main {
		width: 100% !important;
		float: none !important;
		padding: 1.5rem !important;
	}

	.page_title {
		font-size: 1.75rem !important;
	}

	.obj_article_details>.page_title {
		font-size: 1.85rem !important;
	}
}

@media (max-width: 600px) {

	.pkp_site_name .is_text,
	.pkp_site_name .is_img::after {
		font-size: 11px !important;
		padding: 0.5rem 1rem !important;
		border-radius: 0 0 35px 0 !important;
	}

	.pkp_site_name .is_img img {
		max-height: 45px !important;
	}

	.obj_article_summary {
		padding: 1rem !important;
	}

	.galley_link {
		width: 100%;
		text-align: center;
	}
}