﻿/**
 * PNAS-inspired journal chrome for ecpPnas theme (v1.3.17).
 * Full-width layout (no OJS sidebar). Accent from --ecp-pnas-header / --ecp-pnas-accent.
 * Fonts: headings Montserrat, body Open Sans (Google Fonts, 400–800 + italic).
 * Root 1rem = 16px (set on html; default theme used 14px).
 * Content container max-width: 1288px. Header fixed full-width at 80% opacity.
 *
 * Header is desktop-first under body.ecp-pnas-theme header.ecp-pnas-head.
 * Prefer specificity over !important; only rare compiled-default fights keep it.
 */

/* —— Tokens —— */
a {
	color: #0b54d1;
	text-decoration: none;
	background-image: linear-gradient(currentColor, currentColor);
	background-position: 0 100%;
	background-repeat: no-repeat;
	background-size: 0 1px;
	transition: background-size 0.32s ease, color 0.15s ease;
}
a:hover,
a:focus-visible {
	color: #0b54d1;
	text-decoration: none;
	background-size: 100% 1px;
}

/* Chrome / media / buttons: no running underline */
body.ecp-pnas-theme header.ecp-pnas-head a,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_nav_list > li > ul a,
body.ecp-pnas-theme .pkp_skip_to_content,
body.ecp-pnas-theme .ecp-pnas-btn,
body.ecp-pnas-theme .ecp-pnas-slider a,
body.ecp-pnas-theme .ecp-pnas-announcements-link,
body.ecp-pnas-theme .ecp-pnas-recent-issue-link,
body.ecp-pnas-theme .ecp-pnas-current-issue-cover,
body.ecp-pnas-theme a.ecp-pnas-submit-cta-link,
body.ecp-pnas-theme .ecp-pnas-footer .ecp-footer-logo a,
body.ecp-pnas-theme a.ecp-pnas-card-action,
body.ecp-pnas-theme a.ecp-pnas-card-view,
body.ecp-pnas-theme .ecp-pnas-issue-hero-nav-link,
body.ecp-pnas-theme a.ecp-pnas-issue-rail-link,
body.ecp-pnas-theme a.ecp-pnas-issue-rail-archive,
body.ecp-pnas-theme .ecp-pnas-issue-rail-cover,
body.ecp-pnas-theme .ecp-pnas-article-rail-cover,
body.ecp-pnas-theme .ecp-pnas-article-rail-cover a,
body.ecp-pnas-theme .ecp-pnas-article .galleys_links a,
body.ecp-pnas-theme .ecp-pnas-article .supplementary_galleys_links a,
body.ecp-pnas-theme .ecp-pnas-article a.obj_galley_link,
body.ecp-pnas-theme a.ecp-pnas-article-galley {
	background-image: none;
	background-size: auto;
}

@media (prefers-reduced-motion: reduce) {
	a {
		transition: color 0.15s ease;
	}
}
/* Root rem base: default theme sets html { font-size: 14px } (@rem).
 * rem always resolves against <html>, not body — so body { font-size: 16px }
 * alone does NOT make 1rem = 16px. Override html when this theme is loaded. */
html {
	font-size: 16px;
}

body.ecp-pnas-theme {
	--ecp-pnas-container: 1200px;
	--ecp-pnas-font-base: "Open Sans", "Noto Sans", "Helvetica Neue", Arial, sans-serif;
	--ecp-pnas-font-heading: "Montserrat", "Open Sans", "Noto Sans", Arial, sans-serif;
	font-family: var(--ecp-pnas-font-base);
	font-size: 1rem; /* = 16px via html root above */
	line-height: 1.55;
	font-weight: 400;
	font-synthesis: none;
	color: #1a1a1a;
	background: #fff;
}

body.ecp-pnas-theme h1,
body.ecp-pnas-theme h2,
body.ecp-pnas-theme h3,
body.ecp-pnas-theme h4,
body.ecp-pnas-theme h5,
body.ecp-pnas-theme h6 {
	font-family: var(--ecp-pnas-font-heading);
	font-weight: 600;
	line-height: 1.25;
}

body.ecp-pnas-theme .pkp_structure_page {
	background: #fff;
}

/* Full-width main column; kill sidebar / float scaffold */
body.ecp-pnas-theme .pkp_structure_content,
body.ecp-pnas-theme .pkp_structure_content.pkp_structure_full {
	max-width: none;
	width: 100%;
	display: block;
	float: none;
	margin: 0;
	padding: 0;
}

body.ecp-pnas-theme .pkp_structure_main,
body.ecp-pnas-theme .pkp_structure_main:first-child:last-child {
	float: none;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: #fff;
	border: 0;
}

body.ecp-pnas-theme .pkp_structure_main:before,
body.ecp-pnas-theme .pkp_structure_main:after {
	content: none;
	display: none;
}

body.ecp-pnas-theme .pkp_structure_sidebar,
body.ecp-pnas-theme .pkp_structure_sidebar.left {
	display: none;
	width: 0;
	height: 0;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

/* Constrained content column (1288px on wide screens) */
.ecp-pnas-inner {
	max-width: var(--ecp-pnas-container);
	margin-left: auto;
	margin-right: auto;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	box-sizing: border-box;
	width: 100%;
}

@media (min-width: 1320px) {
	.ecp-pnas-inner {
		padding-left: 0;
		padding-right: 0;
	}
}



.ecp-pnas-home .ecp-pnas-slider-strip-inner {
	background-image: none;
}
body.ecp-pnas-theme header.ecp-pnas-head {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	width: 100%;
	z-index: 1001;
	background-color: var(--ecp-pnas-header, #003366);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	box-shadow: none;
	min-height: 0;
	transition:
		background-color 0.22s ease,
		box-shadow 0.22s ease,
		border-color 0.22s ease;
	border: none;
}

body.ecp-pnas-fixed-header header.ecp-pnas-head {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	background-color: rgb(0 26 76 / 80%);
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
}

/* Scrolled: white sticky bar, black text */
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled {
	background-color: #001a4c;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	border-bottom-color: #e6e6e6;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_site_name img,
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_site_name a.is_img img {
    max-height: 54px;
}
/*body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_site_name a.is_text,
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled ul.pkp_navigation_primary > li > a,
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled ul.pkp_navigation_user > li > a,
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled a.pkp_search,
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .ecp-pnas-lang-item {
	color: #111;
}

body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled ul.pkp_navigation_primary > li > a:hover,
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled ul.pkp_navigation_primary > li > a:focus {
	border-color: var(--ecp-pnas-accent, #003366);
	color: #111;
}

body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .ecp-pnas-lang-item.is-current {
	border-bottom-color: var(--ecp-pnas-accent, #003366);
	color: #111;
}

body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_site_nav_toggle > span {
	border-bottom-color: #111;
}

body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_site_nav_toggle > span:before,
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_site_nav_toggle > span:after {
	background: #111;
}

body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_site_nav_menu.ecp-pnas-site-nav.pkp_site_nav_menu--isOpen {
	background: #fff;
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
}*/

/* Full-width bar: logo | menu (flexible) | tools — sized by content, not equal 1fr wings */
body.ecp-pnas-theme header.ecp-pnas-head .pkp_head_wrapper.ecp-pnas-head-bar,
body.ecp-pnas-theme.has_site_logo header.ecp-pnas-head .pkp_head_wrapper.ecp-pnas-head-bar {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: stretch;
	column-gap: 1rem;
	max-width: none;
	width: 100%;
	margin: 0;
	padding: 0 1.25rem;
	box-sizing: border-box;
	min-height: 3.5rem;
	position: relative;
	overflow: visible;
}

/* Logo: content-sized, left; kill absolute / full-width / tall default */
body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name_wrapper.ecp-pnas-head-logo {
	grid-column: 1;
	justify-self: start;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 0.45rem;
	position: relative;
	z-index: 2;
	height: auto;
	width: auto;
	max-width: none;
	min-height: 0;
	margin: 0;
	padding: 0.4rem 0;
	align-self: center;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name {
	position: static;
	display: block;
	width: auto;
	max-width: none;
	left: auto;
	right: auto;
	margin: 0;
	padding: 0;
	background: transparent;
	overflow: visible;
	font-size: inherit;
	white-space: nowrap;
	text-overflow: clip;
	text-align: left;
	line-height: 1;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name > a {
	padding: 0;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name a.is_img {
	display: inline-block;
	margin: 0;
	padding: 0;
	max-width: none;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name img,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name a.is_img img {
	display: block;
	width: auto;
	height: auto;
	max-width: min(280px, 38vw);
	object-fit: contain;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_nav_toggle {
	display: none;
}

/* Primary nav: fills middle column, items flow from left (after logo) */
body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_nav_menu.ecp-pnas-site-nav,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_nav_menu.ecp-pnas-site-nav.pkp_site_nav_menu--isOpen {
	display: flex;
	grid-column: 2;
	justify-self: stretch;
	position: static;
	top: auto;
	left: auto;
	right: auto;
	width: auto;
	max-width: none;
	flex: none;
	min-width: 0;
	background: transparent;
	padding: 0;
	z-index: auto;
	align-self: stretch;
	height: 100%;
}

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-primary {
	min-width: 0;
	overflow: visible;
	height: 100%;
	display: flex;
	align-items: stretch;
	width: 100%;
    justify-content: center;
}

/* Primary: one horizontal row (nowrap), start after logo */
body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_nav_list.pkp_navigation_primary,
body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary.ecp-pnas-primary-ul,
body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: flex-start;
	float: none;
	width: auto;
	max-width: none;
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: left;
	gap: 0.15rem 1rem;
	height: 100%;
}

body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li {
	display: flex;
	align-items: stretch;
	align-self: stretch;
	float: none;
	width: auto;
	flex: 0 0 auto;
	position: relative;
}

body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > a {
	display: flex;
	align-items: center;
	margin: 0 1rem;
	padding: 0.85rem 0;
	border-bottom: 2px solid transparent;
	white-space: nowrap;
	font-size: 1rem;
	text-transform: uppercase;
	box-sizing: border-box;
}

body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > a:hover,
body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > a:focus {
	border-color: #0b54d1;
	background: transparent;
	color: #fff;
	outline: 0;
	text-decoration: none;
}

/* Dropdowns: flush under trigger (override default Popper translate gap) */
body.ecp-pnas-theme header.ecp-pnas-head {
	overflow: visible;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_nav_list > li > ul,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_primary > li > ul,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user > li > ul,
body.ecp-pnas-theme header.ecp-pnas-head .dropdown-menu {
	position: absolute;
	top: 100%;
	bottom: auto;
	left: 0;
	right: auto;
	z-index: 1100;
	display: none;
	float: none;
	width: max-content;
	min-width: 14rem;
	max-width: min(22rem, calc(100vw - 1.5rem));
	margin: 0;
	padding: 0.35rem 0;
	transform: none !important;
	will-change: auto;
	background: #fff;
	border: 1px solid #e6e6e6;
	border-radius: 2px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
	list-style: none;
	text-align: left;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user > li > ul,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user .dropdown-menu {
	left: auto !important;
	right: 0 !important;
	min-width: 16rem;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_primary > li:hover > ul,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_primary > li:focus-within > ul,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_primary [data-toggle="dropdown"]:hover + .dropdown-menu,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_primary [data-toggle="dropdown"]:focus + .dropdown-menu,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_primary .dropdown-menu:hover,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_primary .dropdown-menu.show {
	display: block;
	top: 100% !important;
	bottom: auto !important;
	left: 0 !important;
	right: auto !important;
	transform: none !important;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_nav_list > li:hover > ul,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_nav_list > li:focus-within > ul {
	display: block;
	top: 100% !important;
	bottom: auto !important;
	left: 0 !important;
	right: auto !important;
	transform: none !important;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user > li:hover > ul,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user > li:focus-within > ul,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user [data-toggle="dropdown"]:hover + .dropdown-menu,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user [data-toggle="dropdown"]:focus + .dropdown-menu,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user .dropdown-menu:hover,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user .dropdown-menu.show {
	display: block;
	top: 100% !important;
	bottom: auto !important;
	left: auto !important;
	right: 0 !important;
	transform: none !important;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_nav_list > li > ul > li,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user > li > ul > li {
	display: block;
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
	position: static;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user > li > ul a {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0.65rem 1.15rem;
	border: 0;
	border-radius: 0;
	color: #111;
	background: transparent;
	font-size: 0.92rem;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
	white-space: nowrap;
	line-height: 1.35;
	text-align: left;
	overflow: visible;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_nav_list > li > ul a,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_primary > li > ul a {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0.65rem 1rem;
	border: 0;
	border-radius: 0;
	color: #111;
	background: transparent;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.35;
	text-align: left;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_nav_list > li > ul a:hover,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_nav_list > li > ul a:focus,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user > li > ul a:hover,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user > li > ul a:focus {
	background: #f3f3f3;
	color: #0b54d1;
	border: 0;
	outline: 0;
}

body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_nav_list > li > ul a,
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_navigation_user > li > ul a {
	color: #111;
}

/* Tools: language + search + user — right */
body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-tools--mobile {
	display: none;
}

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-mobile-icon {
	align-items: center;
	justify-content: center;
	width: 2.35rem;
	height: 2.35rem;
	padding: 0;
	border: 0;
	border-radius: 2px;
	background: transparent;
	color: #fff;
	font-size: 1rem;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
}

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-mobile-icon:hover,
body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-mobile-icon:focus-visible {
	color: #fff;
	background: rgb(255 255 255 / 12%);
	outline: 0;
}

/*body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .ecp-pnas-mobile-icon {
	color: #111;
}

body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .ecp-pnas-mobile-icon:hover,
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .ecp-pnas-mobile-icon:focus-visible {
	background: rgb(0 0 0 / 6%);
}*/

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-lang-select {
	appearance: none;
	-webkit-appearance: none;
	max-width: 4.5rem;
	height: 2.1rem;
	padding: 0 1.6rem 0 0.45rem;
	border: 1px solid rgb(255 255 255 / 45%);
	border-radius: 2px;
	background-color: transparent;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23ffffff' d='M1 1l4 4 4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.45rem center;
	background-size: 0.55rem auto;
	color: #fff;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
}

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-lang-select option {
	color: #111;
	background-color: #fff;
}

/*body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .ecp-pnas-lang-select {
	border-color: rgb(0 0 0 / 18%);
	color: #111;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23111111' d='M1 1l4 4 4-4'/%3E%3C/svg%3E");
}*/

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-mobile-auth {
	display: none;
	align-items: center;
	gap: 0.1rem;
}

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-lang-mobile {
	display: none;
	align-items: center;
}

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-tools {
	grid-column: 3;
	justify-self: end;
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.65rem 0.9rem;
	flex: 0 0 auto;
	margin: 0;
	z-index: 2;
	align-self: stretch;
	overflow: visible;
}

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-lang {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.35rem 0.5rem;
}

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-lang-item {
	color: #fff;
    font-family: var(--ecp-pnas-font-base);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-decoration: none;
    opacity: 0.85;
    padding: 0.25rem 0.75rem;
    border-bottom: 2px solid transparent;
}

body.ecp-pnas-theme header.ecp-pnas-head a.ecp-pnas-lang-item:hover,
body.ecp-pnas-theme header.ecp-pnas-head a.ecp-pnas-lang-item:focus {
	opacity: 1;
}

body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-lang-item.is-current {
	opacity: 1;
	border-color: #0b54d1;
}
.profile > a {
	border: 1px solid rgb(254, 254, 254, 50%);
	padding: 0.6rem 1rem;
	display: flex;
	align-items: center;
	height: 100%;
	box-sizing: border-box;
}
.profile > a:hover {
	background-color: #0b54d1;
	border-color: #0b54d1;
	color: #fff;
}
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .profile > a {
	border-color: #0b54d1;
}
body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .profile > a:hover {
	color: #fff;
}
/* Kill absolute centered user nav from default desktop */
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user_wrapper,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user_wrapper.ecp-pnas-user-wrap {
	position: static;
	top: auto;
	left: auto;
	right: auto;
	transform: none;
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
	border: 0;
	text-align: right;
	z-index: auto;
	overflow: visible;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_search_wrapper,
body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_search_wrapper.ecp-pnas-search-wrap {
	margin: 0;
	padding: 0;
	border: 0;
}

body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_user > li {
	position: relative;
	align-self: stretch;
	display: flex;
	align-items: stretch;
}

body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_user,
body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_user.ecp-pnas-user-ul {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: flex-end;
	gap: 0.35rem 0.75rem;
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
	float: none;
	width: auto;
	text-align: right;
	font-size: 0.78rem;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name a.is_text,
body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > a,
body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_user > li > a,
body.ecp-pnas-theme header.ecp-pnas-head a.pkp_search {
	color: #fff;
	font-family: var(--ecp-pnas-font-base);
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.03em;
	line-height: 1.2;
	text-decoration: none;
}

body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name a.is_text {
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

/*
 * Smaller / zoomed viewports only (FHD @ 100% ≈ 1920px stays on base styles above).
 * FHD @ 125% ≈ 1536 CSS px → tighten here.
 */
@media (min-width: 992px) and (max-width: 1679px) {
	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary {
		gap: 0.05rem 0.3rem;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > a {
		margin: 0 0.6rem;
		font-size: 0.85rem;
		letter-spacing: 0.02em;
		padding: 0.75rem 0;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-tools {
		gap: 0.4rem 0.55rem;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-lang {
		gap: 0.25rem 0.35rem;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-lang-item {
		font-size: 0.85rem;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_user {
		gap: 0.25rem 0.45rem;
		font-size: 0.72rem;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_user > li > a {
		font-size: 0.78rem;
	}
}

@media (min-width: 992px) and (max-width: 1399px) {
	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary {
		gap: 0 0.15rem;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > a {
		margin: 0;
		font-size: 0.74rem;
		letter-spacing: 0.01em;
		padding: 0.7rem 0;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-tools {
		gap: 0.3rem 0.4rem;
	}
}

/* Mobile ≤991px: compact icon bar + full-width nav panel */
@media (max-width: 991px) {
	body.ecp-pnas-theme header.ecp-pnas-head .pkp_head_wrapper.ecp-pnas-head-bar,
	body.ecp-pnas-theme.has_site_logo header.ecp-pnas-head .pkp_head_wrapper.ecp-pnas-head-bar {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr) auto;
		grid-template-rows: auto auto;
		align-items: center;
		column-gap: 0.5rem;
		row-gap: 0;
		padding: 0.35rem 0.65rem 0.35rem 0.5rem;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_nav_toggle {
		display: block;
		position: relative;
		left: auto;
		top: auto;
		transform: none;
		flex: 0 0 auto;
		width: 2.5rem;
		height: 2.5rem;
		margin: 0;
		padding: 0;
		box-shadow: none;
		border: 0;
		background: transparent;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_nav_toggle:focus {
		outline: 2px solid rgb(255 255 255 / 55%);
		outline-offset: 2px;
		box-shadow: none;
	}

	body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_site_nav_toggle:focus {
		outline-color: rgb(0 0 0 / 35%);
	}

	body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name_wrapper.ecp-pnas-head-logo {
		grid-column: 1 / 3;
		grid-row: 1;
		display: flex;
		align-items: center;
		gap: 0.35rem;
		min-height: 2.5rem;
		padding-left: 0;
		min-width: 0;
		overflow: hidden;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name {
		flex: 1 1 auto;
		min-width: 0;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name img,
	body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_name a.is_img img {
		max-height: 42px;
		max-width: min(200px, 52vw);
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-tools {
		grid-column: 3;
		grid-row: 1;
		margin-left: 0;
		gap: 0.15rem 0.25rem;
		flex-wrap: nowrap;
		position: relative;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-tools--desktop {
		display: none !important;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-tools--mobile {
		display: inline-flex;
		align-items: center;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-tools--mobile.ecp-pnas-mobile-icon,
	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-mobile-auth .ecp-pnas-mobile-icon {
		display: inline-flex;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-mobile-auth {
		display: inline-flex;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user_wrapper.ecp-pnas-user-wrap {
		display: none;
		position: absolute;
		top: calc(100% + 0.15rem);
		right: 0;
		left: auto;
		width: max-content;
		min-width: 14rem;
		max-width: calc(100vw - 1rem);
		margin: 0;
		padding: 0.35rem 0;
		background: #fff;
		border: 1px solid #e6e6e6;
		border-radius: 2px;
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
		z-index: 1205;
		text-align: left;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .pkp_navigation_user_wrapper.ecp-pnas-user-wrap.is-mobile-open {
		display: block;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-user-wrap .profile > a {
		display: none;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-user-wrap ul.pkp_navigation_user {
		display: block;
		width: 100%;
		margin: 0;
		padding: 0;
		text-align: left;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-user-wrap ul.pkp_navigation_user > li {
		display: block;
		width: 100%;
		float: none;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-user-wrap ul.pkp_navigation_user > li > ul {
		position: static !important;
		display: block !important;
		width: 100%;
		min-width: 0;
		max-width: none;
		margin: 0;
		padding: 0;
		background: transparent;
		border: 0;
		box-shadow: none;
		transform: none !important;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-user-wrap ul.pkp_navigation_user > li > a {
		display: none;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-user-wrap ul.pkp_navigation_user > li > ul a {
		display: block;
		padding: 0.65rem 1rem;
		color: #111;
		white-space: nowrap;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_nav_menu.ecp-pnas-site-nav,
	body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_nav_menu.ecp-pnas-site-nav.pkp_site_nav_menu--isOpen {
		grid-column: 1 / -1;
		grid-row: 2;
		display: none !important;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		bottom: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		max-height: calc(100vh - 4rem);
		overflow-x: hidden;
		overflow-y: auto;
		flex: none;
		align-self: stretch;
		justify-self: stretch;
		z-index: 9999;
		background: color-mix(in srgb, var(--ecp-pnas-header, #003366) 95%, #000);
		padding: 0.65rem 0.85rem 0.85rem;
		box-sizing: border-box;
		margin: 0.35rem 0 0;
	}

	body.ecp-pnas-theme header.ecp-pnas-head .pkp_site_nav_menu.ecp-pnas-site-nav.pkp_site_nav_menu--isOpen {
		display: block !important;
	}

	body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled .pkp_site_nav_menu.ecp-pnas-site-nav.pkp_site_nav_menu--isOpen {
		background: #fff;
		box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
	}

	body.ecp-pnas-theme header.ecp-pnas-head .ecp-pnas-head-primary {
		display: block !important;
		width: 100% !important;
		height: auto !important;
		min-width: 0;
		overflow: visible;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_nav_list.pkp_navigation_primary,
	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary.ecp-pnas-primary-ul,
	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		gap: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
		text-align: left !important;
		float: none !important;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li {
		display: block !important;
		position: static !important;
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		flex: none !important;
		align-self: stretch !important;
		border-bottom: 1px solid rgb(255 255 255 / 12%);
	}

	body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled ul.pkp_navigation_primary > li {
		border-bottom-color: #ebebeb;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li:last-child {
		border-bottom: 0;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > a {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box;
		font-size: 0.95rem;
		font-weight: 700;
		text-transform: none;
		white-space: normal !important;
		word-break: break-word;
		padding: 0.7rem 0 !important;
		margin: 0 !important;
		height: auto !important;
		border-bottom: 0 !important;
		text-align: left !important;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > ul,
	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li:hover > ul,
	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li:focus-within > ul,
	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary .dropdown-menu,
	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary .dropdown-menu.show {
		position: static !important;
		top: auto !important;
		bottom: auto !important;
		left: auto !important;
		right: auto !important;
		inset: auto !important;
		transform: none !important;
		display: block !important;
		float: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 0 0.55rem 0.85rem !important;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
		list-style: none !important;
		text-align: left !important;
		z-index: auto !important;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > ul > li {
		display: block !important;
		position: static !important;
		width: 100% !important;
		float: none !important;
	}

	body.ecp-pnas-theme header.ecp-pnas-head ul.pkp_navigation_primary > li > ul a {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box;
		color: rgb(255 255 255 / 88%) !important;
		font-size: 0.88rem;
		font-weight: 600;
		white-space: normal !important;
		word-break: break-word;
		padding: 0.35rem 0 !important;
		margin: 0 !important;
		text-align: left !important;
	}

	body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled ul.pkp_navigation_primary > li > a,
	body.ecp-pnas-theme header.ecp-pnas-head.is-scrolled ul.pkp_navigation_primary > li > ul a {
		color: #111 !important;
	}
}

.page_index_journal.ecp-pnas-home {
	padding: 0;
	margin: 0;
}

/* —— Slider —— */
.ecp-pnas-slider {
	margin: 0;
	padding: 0;
	border: 0;
	background: #0a1f33;
	color: #fff;
	width: 100%;
	touch-action: pan-y;
	user-select: none;
	position: relative;
}

.ecp-pnas-slider-viewport {
	position: relative;
	overflow: hidden;
	height: var(--ecp-pnas-slider-height, clamp(22rem, 52vw, 42rem));
	cursor: grab;
	touch-action: pan-y;
}

.ecp-pnas-slider.is-dragging .ecp-pnas-slider-viewport {
	cursor: grabbing;
}

.ecp-pnas-slider-track {
	position: relative;
	height: 100%;
}

/* Stacked slides: image fades, caption scrolls */
.ecp-pnas-slider-slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 0;
}

.ecp-pnas-slider-slide.is-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	z-index: 2;
}

.ecp-pnas-slider-slide.is-leaving {
	opacity: 1;
	visibility: visible;
	pointer-events: none;
	z-index: 1;
}

.ecp-pnas-slider-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background: #001a33;
	opacity: 0;
	transition: opacity var(--ecp-pnas-slider-transition, 0.75s) ease;
	will-change: opacity;
}

/* Stretch link covers image + caption so title/subtitle clicks navigate. */
.ecp-pnas-slider-media-link {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: block;
	cursor: pointer;
	text-indent: -9999px;
	overflow: hidden;
}

.ecp-pnas-slider-slide.is-active .ecp-pnas-slider-image {
	opacity: 1;
}

.ecp-pnas-slider-slide.is-leaving .ecp-pnas-slider-image {
	opacity: 0;
	transition-duration: 0.55s;
}

.ecp-pnas-slider-caption {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 2.5rem 1.5rem 4rem;
	background: linear-gradient(
		180deg,
		rgba(0, 20, 40, 0.15) 0%,
		rgba(0, 20, 40, 0.35) 45%,
		rgba(0, 20, 40, 0.55) 100%
	);
	text-align: center;
	pointer-events: none;
	overflow: hidden;
}

.ecp-pnas-slider-caption a,
.ecp-pnas-slider-caption span,
.ecp-pnas-slider-caption-inner {
	pointer-events: none;
	color: #fff;
	text-decoration: none;
	max-width: min(42rem, 92vw);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.55rem;
	opacity: 0;
	transform: translateX(3.5rem);
	transition:
		transform var(--ecp-pnas-slider-transition, 0.7s) cubic-bezier(0.22, 1, 0.36, 1),
		opacity var(--ecp-pnas-slider-transition, 0.7s) ease;
	will-change: transform, opacity;
	text-align: center;
}

.ecp-pnas-slider-title {
	display: block;
	width: 100%;
	font-family: var(--ecp-pnas-font-heading);
	font-size: clamp(1.35rem, 3.1vw, 2rem);
	font-weight: 700;
	line-height: 1.25;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.55);
}

.ecp-pnas-slider-subtitle {
	display: block;
	width: 100%;
	max-width: 36rem;
	margin: 0;
	color: #ffffffcb;
	font-family: var(--ecp-pnas-font-base);
	font-size: clamp(1rem, 2vw, 1.2rem);
	font-weight: 400;
	line-height: 1.45;
	opacity: 1;
	text-shadow: 0 1px 12px rgba(0, 0, 0, 0.55);
}


/* Legacy caption HTML without title/subtitle classes */
.ecp-pnas-slider-caption-inner > p,
.ecp-pnas-slider-caption-inner > a {
	font-family: var(--ecp-pnas-font-heading);
	font-size: clamp(1.5rem, 3.4vw, 2.75rem);
	font-weight: 700;
	line-height: 1.2;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.55);
	margin: 0;
}

.ecp-pnas-slider-caption-inner p {
	margin: 0;
}

.ecp-pnas-slider-caption-inner a {
	color: inherit;
	text-decoration: underline;
	pointer-events: none;
}

/* Prep enter offset without transitioning across the screen */
.ecp-pnas-slider-slide.is-from-left:not(.is-active) .ecp-pnas-slider-caption a,
.ecp-pnas-slider-slide.is-from-left:not(.is-active) .ecp-pnas-slider-caption span,
.ecp-pnas-slider-slide.is-from-left:not(.is-active) .ecp-pnas-slider-caption-inner {
	opacity: 0;
	transform: translateX(-3.5rem);
	transition: none;
}

.ecp-pnas-slider-slide.is-from-right:not(.is-active) .ecp-pnas-slider-caption a,
.ecp-pnas-slider-slide.is-from-right:not(.is-active) .ecp-pnas-slider-caption span,
.ecp-pnas-slider-slide.is-from-right:not(.is-active) .ecp-pnas-slider-caption-inner {
	opacity: 0;
	transform: translateX(3.5rem);
	transition: none;
}

/* Active: scroll into place (from-left → rightward, from-right → leftward) */
.ecp-pnas-slider-slide.is-active .ecp-pnas-slider-caption a,
.ecp-pnas-slider-slide.is-active .ecp-pnas-slider-caption span,
.ecp-pnas-slider-slide.is-active .ecp-pnas-slider-caption-inner {
	opacity: 1;
	transform: translateX(0);
}

/* Exit scroll directions while leaving */
.ecp-pnas-slider-slide.is-leaving.is-exit-left .ecp-pnas-slider-caption a,
.ecp-pnas-slider-slide.is-leaving.is-exit-left .ecp-pnas-slider-caption span,
.ecp-pnas-slider-slide.is-leaving.is-exit-left .ecp-pnas-slider-caption-inner {
	opacity: 0;
	transform: translateX(-3.5rem);
}

.ecp-pnas-slider-slide.is-leaving.is-exit-right .ecp-pnas-slider-caption a,
.ecp-pnas-slider-slide.is-leaving.is-exit-right .ecp-pnas-slider-caption span,
.ecp-pnas-slider-slide.is-leaving.is-exit-right .ecp-pnas-slider-caption-inner {
	opacity: 0;
	transform: translateX(3.5rem);
}

.ecp-pnas-slider-dots {
	position: absolute;
	left: 1.1rem;
	bottom: 19rem;
	z-index: 4;
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	align-items: center;
}

@media (max-width: 599px) {
	.ecp-pnas-slider-dots {
		left: 50%;
		bottom: 0.85rem;
		flex-direction: row;
		transform: translateX(-50%);
	}
}

.ecp-pnas-slider-dot {
	width: 0.65rem;
	height: 0.65rem;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.4);
	cursor: pointer;
}

.ecp-pnas-slider-dot.is-active,
.ecp-pnas-slider-dot[aria-current="true"] {
	background: #fff;
}

.ecp-pnas-slider-strip {
	background-color: rgb(0 26 76 / 60%);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
	padding: 1rem 0;
	position: absolute;
    bottom: 0;
    width: 100%;
    z-index: 1000;
}

.ecp-pnas-slider-strip-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.75rem 1.25rem;
}

.ecp-pnas-slider-strip-menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.75rem 1.25rem;
	list-style: none;
	margin: 0 !important;
	padding: 0;
}

.ecp-pnas-slider-strip-item {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ecp-pnas-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	font-family: var(--ecp-pnas-font-base);
	font-weight: 600;
	font-size: 0.85rem;
	line-height: 1.5;
	letter-spacing: 0.04em;
	text-decoration: none;
	padding: 0.55rem 1.15rem;
	border-radius: 2px;
	border: 1px solid transparent;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.ecp-pnas-slider-strip .ecp-pnas-btn {
	border-color: rgb(255 255 255 / 50%);
	color:#fff;
	text-transform: uppercase;
}
.ecp-pnas-slider-strip .ecp-pnas-btn--primary {
	background: #0b54d1;
	border-color: #0b54d1;
}

/* First top-level: outline; 2nd+: primary fill (former issue / submit strip look). */
.ecp-pnas-slider-strip-menu > .ecp-pnas-slider-strip-item:not(:first-child) > .ecp-pnas-btn {
	background: #0b54d1;
	border-color: #0b54d1;
}

.ecp-pnas-slider-strip-menu > .ecp-pnas-slider-strip-item:not(:first-child) > .ecp-pnas-btn:hover,
.ecp-pnas-slider-strip-menu > .ecp-pnas-slider-strip-item:not(:first-child) > .ecp-pnas-btn:focus {
	background: #084abb;
	text-decoration: none;
}

/* Strip button icons (former book / upload) — CSS only, Font Awesome from default theme */
.ecp-pnas-slider-strip-menu > .ecp-pnas-slider-strip-item:first-child > .ecp-pnas-btn .ecp-pnas-action-link__label::after,
.ecp-pnas-slider-strip-menu > .ecp-pnas-slider-strip-item:nth-child(2) > .ecp-pnas-btn .ecp-pnas-action-link__label::after {
	font-family: FontAwesome;
	font-size: 0.92em;
	font-weight: 400;
	font-style: normal;
	line-height: 1;
	margin-left: 0.45rem;
	display: inline-block;
	speak: never;
	transition: transform 0.2s ease;
}

.ecp-pnas-slider-strip-menu > .ecp-pnas-slider-strip-item:first-child > .ecp-pnas-btn .ecp-pnas-action-link__label::after {
	content: "\f02d"; /* fa-book */
}

.ecp-pnas-slider-strip-menu > .ecp-pnas-slider-strip-item:nth-child(2) > .ecp-pnas-btn .ecp-pnas-action-link__label::after {
	content: "\f093"; /* fa-upload */
}

.ecp-pnas-slider-strip-menu > .ecp-pnas-slider-strip-item:first-child > .ecp-pnas-btn:hover .ecp-pnas-action-link__label::after,
.ecp-pnas-slider-strip-menu > .ecp-pnas-slider-strip-item:nth-child(2) > .ecp-pnas-btn:hover .ecp-pnas-action-link__label::after {
	transform: translateX(2px);
}

.ecp-pnas-slider-strip-caret {
	display: none !important;
	display: inline-block;
	width: 0.4rem;
	height: 0.4rem;
	margin-left: 0.15rem;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translateY(-1px);
	flex-shrink: 0;
}

.ecp-pnas-slider-strip-submenu {
	position: absolute;
	left: 50%;
	bottom: 100%;
	transform: translateX(-50%);
	min-width: 12rem;
	max-width: min(20rem, 90vw);
	margin: 0 !important;
	padding: 0.35rem 0;
	list-style: none;
	background: #fff;
	border: 1px solid rgba(0, 26, 76, 0.12);
	border-radius: 2px;
	box-shadow: 0 8px 24px rgba(0, 26, 76, 0.22);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 1100;
	transition: opacity 0.15s ease, visibility 0.15s ease;
}

.ecp-pnas-slider-strip-submenu > li {
	margin: 0;
	padding: 0;
}

.ecp-pnas-slider-strip-submenu-link {
	display: block;
	padding: 0.55rem 1rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.85rem;
	font-weight: 600;
	line-height: 1.35;
	color: #001a4c;
	text-decoration: none;
	text-transform: none;
	letter-spacing: 0.01em;
	white-space: normal;
}

.ecp-pnas-slider-strip-submenu-link:hover,
.ecp-pnas-slider-strip-submenu-link:focus {
	background: rgba(11, 84, 209, 0.08);
	color: #084abb;
	text-decoration: none;
	outline: none;
}

.ecp-pnas-slider-strip-item.has-submenu:hover > .ecp-pnas-slider-strip-submenu,
.ecp-pnas-slider-strip-item.has-submenu:focus-within > .ecp-pnas-slider-strip-submenu,
.ecp-pnas-slider-strip-item.has-submenu.is-open > .ecp-pnas-slider-strip-submenu {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.ecp-pnas-slider-strip-item.has-submenu.is-open > .ecp-pnas-slider-strip-trigger,
.ecp-pnas-slider-strip-item.has-submenu:hover > .ecp-pnas-slider-strip-trigger,
.ecp-pnas-slider-strip-item.has-submenu:focus-within > .ecp-pnas-slider-strip-trigger {
	border-color: #fff;
}

@media (max-width: 767px) {
	.ecp-pnas-slider-strip-menu {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
		max-width: 22rem;
		margin-left: auto;
		margin-right: auto;
	}

	.ecp-pnas-slider-strip-item > .ecp-pnas-btn {
		width: 100%;
		box-sizing: border-box;
	}

	.ecp-pnas-slider-strip-submenu {
		left: 0;
		right: 0;
		transform: none;
		min-width: 0;
		max-width: none;
		width: 100%;
	}

	/* Touch: open via .is-open only (avoid sticky hover on tap). */
	.ecp-pnas-slider-strip-item.has-submenu:hover > .ecp-pnas-slider-strip-submenu {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}

	.ecp-pnas-slider-strip-item.has-submenu.is-open > .ecp-pnas-slider-strip-submenu,
	.ecp-pnas-slider-strip-item.has-submenu:focus-within > .ecp-pnas-slider-strip-submenu {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
}

.ecp-pnas-btn--primary:hover {
	background: #084abb;
	text-decoration: none;
}

/* —— Current issue —— */
.ecp-pnas-current-issue {
	margin: 0;
	padding: 2.75rem 0 3rem;
	border: 0;
	background: #fff;
}

.ecp-pnas-current-issue-header {
	position: relative;
	text-align: center;
	margin-bottom: 4rem;
	padding-bottom: 3.5rem;
}

.ecp-pnas-current-issue-header::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -2px;
	height: 16px;
	pointer-events: none;
	background: radial-gradient(
		ellipse at 50% 0%,
		rgba(0, 0, 0, 0.22) 0%,
		rgba(0, 0, 0, 0.1) 38%,
		transparent 72%
	);
	box-shadow: 0 8px 10px -10px rgba(0, 0, 0, 0.35);
}

.ecp-pnas-current-issue-header > h2 {
	font-size: clamp(1.75rem, 2.5vw, 2.15rem);
	font-weight: 700;
	color: #111;
	margin: 0 0 0.45rem;
	padding: 0;
	border: 0;
}

.ecp-pnas-current-issue-id {
	margin: 0 !important;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #111;
}

.ecp-pnas-current-issue-id a {
	color: inherit;
	text-decoration: none;
}

.ecp-pnas-current-issue-id a:hover {
	color: var(--ecp-pnas-accent, #003366);
}

.ecp-pnas-current-issue-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem 5.5rem;
}

.ecp-pnas-current-issue-cover {
	position: relative;
}

.ecp-pnas-current-issue-cover img {
	display: block;
	width: 100%;
	position: relative;
	z-index: 1;
	transform: translate(1rem, -1rem);
	transition: transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.ecp-pnas-current-issue-cover::after {
	content: "";
	position: absolute;
	z-index: 0;
	inset: 0;
	background: #0b54d1;
	transform: translate(-0.5rem, 0.5rem);
	transition: transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
	pointer-events: none;
}

.ecp-pnas-current-issue-cover:hover img {
	transform: translate(0, 0);
}

.ecp-pnas-current-issue-cover:hover::after {
	transform: translate(0, 0);
}

@media (min-width: 800px) {
	.ecp-pnas-current-issue-grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr);
		align-items: start;
	}
}

.ecp-pnas-current-issue-featured h3 {
	margin-top: 0;
}

/* —— About: light gray band, 3-col desktop —— */
body.ecp-pnas-theme .ecp-pnas-home > .homepage_about.ecp-pnas-about,
body.ecp-pnas-theme .ecp-pnas-about {
	margin: 0;
	padding: 4rem 0;
	border: 0;
	background: #f3f3f3;
	width: 100%;
}

.ecp-pnas-about .ecp-pnas-section-head {
	margin-bottom: 1.75rem;
}
.ecp-pnas-about .ecp-pnas-section-head h2 {
	font-size: 1rem;
    text-transform: uppercase;
    font-weight: 700;
	margin-top: 0;
}
.ecp-pnas-about .ecp-pnas-section-head h2:before {
	display: none;
}
.ecp-pnas-about-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem 3rem;
	align-items: start;
	margin-top: 3.5rem
}

@media (min-width: 900px) {
	.ecp-pnas-about-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: start;
	}
}

.ecp-pnas-about-col {
	min-width: 0;
}

.ecp-pnas-about-copy {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	min-height: 100%;
}

.ecp-pnas-about-headline {
	position: relative;
	margin: 0;
	padding: 0.5rem 0.35rem 0.5rem 0;
	border: 0;
	font-family: var(--ecp-pnas-font-heading);
	font-size: clamp(1.35rem, 2.2vw, 1.85rem);
	font-weight: 600;
	line-height: 1.28;
	color: #666;
	z-index: 0;
}
.ecp-pnas-about-headline p {
	line-height: 1.5;
}

.ecp-pnas-about-headline::after {
	content: "";
    position: absolute;
    z-index: -1;
    top: -12%;
    width: 9.5rem;
    max-width: 90%;
    height: 9.5rem;
    background: hsla(0, 0%, 80%, .3);
    right: 0;
}

.ecp-pnas-about-headline-text {
	position: relative;
	z-index: 1;
}

.ecp-pnas-about-headline-text p {
	margin: 0;
}

.ecp-pnas-about-body {
	display: block;
	width: 100%;
	margin: 0;
	font-family: var(--ecp-pnas-font-base);
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.7;
	color: #666;
}

.ecp-pnas-about-body p {
	line-height: 1.8;
}

.ecp-pnas-about-body p:last-child {
	margin-bottom: 0;
}

.ecp-pnas-about-more {
	display: flex;
	justify-content: flex-end;
	width: 100%;
	box-sizing: border-box;
	margin: 1.25rem 0 0;
	padding-top: 0.15rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: right;
}

.ecp-pnas-about-more a {
	color: var(--ecp-pnas-accent, #003366);
	text-decoration: none;
}

.ecp-pnas-about-aside {
	position: relative;
	min-height: 12rem;
}

.ecp-pnas-about-col3 {
	position: relative;
	z-index: 1;
	font-family: var(--ecp-pnas-font-base);
	font-size: 1.02rem;
	line-height: 1.7;
	color: #4a4a4a;
}

.ecp-pnas-about-col3 p {
	margin: 0 0 0.85rem;
}

.ecp-pnas-about-col3 p:last-child {
	margin-bottom: 0;
}

.ecp-pnas-about-graphic {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}

.ecp-pnas-about-orb {
	position: absolute;
	right: 18%;
	top: 22%;
	width: 8.5rem;
	height: 8.5rem;
	border-radius: 46% 54% 48% 52%;
	background: radial-gradient(circle at 35% 30%, #ececec 0%, #d4d4d4 55%, #bcbcbc 100%);
	opacity: 0.9;
}

.ecp-pnas-about-ring {
	position: absolute;
	right: 8%;
	top: 8%;
	width: 12rem;
	height: 12rem;
	border-radius: 48% 52% 45% 55%;
	border: 1px solid #c8c8c8;
	opacity: 0.95;
}

.ecp-pnas-about-cell {
	position: absolute;
	right: 28%;
	top: 28%;
	width: 5.2rem;
	height: 5.2rem;
	border-radius: 42% 58% 50% 50%;
	border: 1px solid #c0c0c0;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.4);
	opacity: 0.85;
}

.ecp-pnas-about-nucleus {
	position: absolute;
	right: 36%;
	top: 40%;
	width: 1.35rem;
	height: 1.35rem;
	border-radius: 50%;
	background: #cfcfcf;
	box-shadow: 0 0 0 4px rgba(200, 200, 200, 0.35);
}

.ecp-pnas-about-line {
	position: absolute;
	right: 22%;
	bottom: 18%;
	width: 7rem;
	height: 1px;
	background: #0b54d1;
	opacity: 0.7;
	transform: rotate(-18deg);
}

/* —— Shared section heading with accent bar —— */
.ecp-pnas-section-head {
	margin: 0 0 3rem;
}

.ecp-pnas-section-head > h2{
	color: #0b0b0b;
    position: relative;
    z-index: 1;
	font-size: 2rem;
	margin-top: 0;
}
.ecp-pnas-section-head > h2:before {
		content: "";
		position: absolute;
		z-index: -1;
		left: -20px;
		bottom: 0;
		width: 104px;
		width: 6.5rem;
		max-width: 90%;
		height: 20px;
		height: 1.25rem;
		background-color: rgba(11, 84, 209, .2);
}

.ecp-pnas-section-head > h2 a {
	color: inherit;
	text-decoration: none;
}

.ecp-pnas-section-archive {
	padding: 2.5rem 0 3rem;
}

/* Clear the fixed header so Home → title crumbs are not covered. */
body.ecp-pnas-theme:not(.pkp_page_index) .pkp_structure_main > .page.ecp-pnas-section-archive {
	padding: 5.75rem 1.25rem 3rem;
}

.ecp-pnas-section-archive .cmp_breadcrumbs {
	display: block;
	margin: 0 0 1.25rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.8rem;
	color: #666;
}

.ecp-pnas-section-archive .cmp_breadcrumbs ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ecp-pnas-section-archive .cmp_breadcrumbs a {
	color: #555;
	text-decoration: none;
}

.ecp-pnas-section-archive .cmp_breadcrumbs .current {
	color: #888;
}

.ecp-pnas-section-archive .ecp-pnas-section-head > h1 {
	font-family: var(--ecp-pnas-font-heading);
	font-size: 1.5rem;
	letter-spacing: 0.04em;
	text-transform: none;
}

.ecp-pnas-view-all {
	display: flex;
	justify-content: flex-end;
	width: 100%;
	box-sizing: border-box;
	margin: 1.1rem 0 0;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-align: right;
}

.ecp-pnas-view-all a {
	color: #0b54d1;	
	text-decoration: none;
}

.ecp-pnas-view-all a:hover {
}

/* Action links/buttons with Font Awesome icons */
.ecp-pnas-action-link {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
}

.ecp-pnas-action-link .fa {
	font-size: 0.92em;
	line-height: 1;
	flex-shrink: 0;
	transition: transform 0.2s ease;
}

.ecp-pnas-action-link:hover .fa {
	transform: translateX(2px);
}

.ecp-pnas-about-more a,
.ecp-pnas-view-all a,
.ecp-pnas-recent-issues-more a {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
}

.ecp-pnas-card-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 0.65rem;
	margin-bottom: 0.3rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.8rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #666;
}
.ecp-pnas-card-section {
    color: #666;
}
.ecp-pnas-card-title {
	font-family: var(--ecp-pnas-font-heading);
	font-size: 1.1rem;
	line-height: 1.35;
}

.ecp-pnas-card-title a {
	color: #111;
	font-weight: 700;
	text-decoration: none;
}

.ecp-pnas-card-title a:hover {
	color: #0b54d1;
}

.ecp-pnas-card-authors {
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.85rem;
	color: #666;
	margin-top: 0.3rem;
}

.ecp-pnas-card-section {
	text-decoration: none;
}

a.ecp-pnas-card-section:hover {
}

.ecp-pnas-card-snippet {
	margin: 0.5rem 0 0 !important;
	font-family: var(--ecp-pnas-font-base);
	line-height: 1.5;
	color: #333;
}

.ecp-pnas-card-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.75rem;
}

a.ecp-pnas-card-action,
a.ecp-pnas-card-view {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.15rem;
	height: 2.15rem;
	padding: 0;
	box-sizing: border-box;
	color: var(--ecp-pnas-accent, #003366);
	text-decoration: none;
	border: 1px solid color-mix(in srgb, var(--ecp-pnas-accent, #003366) 35%, #fff);
	background: #fff;
	font-size: 0.95rem;
	line-height: 1;
}

a.ecp-pnas-card-action:hover,
a.ecp-pnas-card-action:focus-visible,
a.ecp-pnas-card-view:hover,
a.ecp-pnas-card-view:focus-visible {
	color: #fff;
	background: var(--ecp-pnas-accent, #003366);
	border-color: var(--ecp-pnas-accent, #003366);
	outline: 0;
}

a.ecp-pnas-card-action.restricted {
	opacity: 0.55;
}

.ecp-pnas-card-galleys {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.ecp-pnas-card-meta .fa {
	margin-right: 0.3em;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
}

.ecp-pnas-empty {
	font-family: var(--ecp-pnas-font-base);
	color: #666;
	font-style: italic;
}

/* —— Dual sections band —— */
.ecp-pnas-dual {
	margin: 0;
	padding: 3.5rem 0;
	background: #fff;
	border: 0;
}

.ecp-pnas-dual-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem 2.75rem;
	align-items: start;
}

@media (min-width: 960px) {
	.ecp-pnas-dual-grid {
		grid-template-columns: minmax(0, 1.85fr) minmax(0, 1fr);
	}
}

.ecp-pnas-card-grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem 1.75rem;
}

@media (min-width: 700px) {
	.ecp-pnas-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.ecp-pnas-card-grid > .ecp-pnas-card,
.ecp-pnas-card-list > .ecp-pnas-card {
	margin: 0 0 3rem;
}

.ecp-pnas-card-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
}

/* —— Main + rail —— */
.ecp-pnas-main-rail {
	margin: 0;
	padding: 3.5rem 0;
	background: #fff;
	border: 0;
}

.ecp-pnas-main-rail-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.25rem 2.5rem;
	align-items: start;
}

@media (min-width: 960px) {
	.ecp-pnas-main-rail-grid {
		grid-template-columns: minmax(0, 1.85fr) minmax(0, 1fr);
	}
}

.ecp-pnas-rail {
	display: flex;
	flex-direction: column;
	gap: 2.75rem;
}

.ecp-pnas-rail-most-read {
	border-left: 1px solid #ebebeb;
	padding-left: 1.4rem;
}

.ecp-pnas-updates {
	position: relative;
	background: #111;
	color: #fff;
	padding: 1.35rem 1.15rem 1.15rem;
	min-height: 18rem;
	display: flex;
	flex-direction: column;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.06),
		0 12px 0 -4px #e3e3e3,
		0 20px 0 -8px #f0f0f0;
}

.ecp-pnas-updates-head {
	margin: 0 0 1rem;
	padding: 0 0 0.65rem;
	border-bottom: 2px solid #0b54d1;
	text-align: center;
}

.ecp-pnas-updates-head > h3 {
	margin: 0;
	padding: 0;
	border: 0;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #fff;
}

.ecp-pnas-updates-stage {
	position: relative;
	display: flex;
	align-items: stretch;
	flex: 1 1 auto;
	min-height: 8.5rem;
	touch-action: pan-y;
}

.ecp-pnas-updates-viewport {
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 0.15rem;
}

.ecp-pnas-updates-slide {
	width: 100%;
	margin: 0;
}

.ecp-pnas-updates-slide[hidden] {
	display: none !important;
}

.ecp-pnas-updates-slide-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 8.5rem;
	padding: 0.5rem 0.35rem 0.25rem;
	gap: 0.85rem;
}

.ecp-pnas-updates-prev,
.ecp-pnas-updates-next {
	flex: 0 0 auto;
	align-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fff;
	font-size: 1.15rem;
	line-height: 1;
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.15s ease, visibility 0.15s ease, color 0.15s ease;
}

.ecp-pnas-updates:hover .ecp-pnas-updates-prev,
.ecp-pnas-updates:hover .ecp-pnas-updates-next,
.ecp-pnas-updates:focus-within .ecp-pnas-updates-prev,
.ecp-pnas-updates:focus-within .ecp-pnas-updates-next {
	opacity: 0.92;
	visibility: visible;
}

.ecp-pnas-updates-prev:hover,
.ecp-pnas-updates-next:hover,
.ecp-pnas-updates-prev:focus-visible,
.ecp-pnas-updates-next:focus-visible {
	opacity: 1;
	color: #0b54d1;
}

.ecp-pnas-updates-title {
	display: block;
	font-family: var(--ecp-pnas-font-heading);
	font-size: clamp(1.05rem, 1.8vw, 1.35rem);
	font-weight: 700;
	line-height: 1.35;
	color: #fff;
	text-decoration: none;
	max-width: 18rem;
}

a.ecp-pnas-updates-title:hover {
	color: #0b54d1;
}

.ecp-pnas-updates-date {
	margin: 0;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: rgba(255, 255, 255, 0.88);
}

.ecp-pnas-updates-dots {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.85rem;
	padding-top: 0.15rem;
}

.ecp-pnas-updates-dot {
	width: 0.42rem;
	height: 0.42rem;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.45);
	cursor: pointer;
	transition: transform 0.15s ease, background 0.15s ease;
}

.ecp-pnas-updates-dot.is-active {
	width: 0.52rem;
	height: 0.52rem;
	background: #0b54d1;
}

/* —— Announcements: PNAS mosaic (1 large + 2 stacked), 16:9 tiles —— */
body.ecp-pnas-theme .ecp-pnas-announcements {
	margin: 0;
	padding: 3.5rem 0;
	border: 0;
	background: #111;
	width: 100%;
	color: #fff;
}

.ecp-pnas-announcements .ecp-pnas-section-head > h2 {
	color: #fff;
}

.ecp-pnas-announcements .ecp-pnas-section-head > h2::before {
	background-color: rgba(255, 255, 255, 0.22);
}

.ecp-pnas-announcements .ecp-pnas-section-head > h2 a {
	color: inherit;
}

.ecp-pnas-rail .ecp-pnas-section-head {
	margin-bottom: 1.15rem;
}

.ecp-pnas-announcements-grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem 3rem;
}

@media (min-width: 760px) {
	.ecp-pnas-announcements-grid {
		grid-template-columns: 2fr 1fr;
		grid-template-rows: auto auto;
		align-items: stretch;
	}

	/* Featured left = height of 2 right tiles + row gap (2rem) */
	.ecp-pnas-announcements--count-3 .ecp-pnas-announcements-item:first-child {
		grid-row: 1 / span 2;
		align-self: stretch;
		display: flex;
		min-height: 0;
	}

	.ecp-pnas-announcements--count-3 .ecp-pnas-announcements-item:first-child .ecp-pnas-announcements-link {
		display: flex;
		flex: 1 1 auto;
		width: 100%;
		height: 100%;
		min-height: 0;
	}

	.ecp-pnas-announcements--count-3 .ecp-pnas-announcements-item:first-child .ecp-pnas-announcements-media {
		aspect-ratio: auto;
		flex: 1 1 auto;
		width: 100%;
		height: 100%;
		min-height: 0;
	}

	.ecp-pnas-announcements--count-2 .ecp-pnas-announcements-grid {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto;
	}

	.ecp-pnas-announcements--count-1 .ecp-pnas-announcements-grid {
		grid-template-columns: 1fr;
		max-width: 42rem;
	}

	.ecp-pnas-announcements--count-4 .ecp-pnas-announcements-grid,
	.ecp-pnas-announcements--count-5 .ecp-pnas-announcements-grid,
	.ecp-pnas-announcements--count-6 .ecp-pnas-announcements-grid {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: auto;
	}

	.ecp-pnas-announcements--count-4 .ecp-pnas-announcements-item:first-child,
	.ecp-pnas-announcements--count-5 .ecp-pnas-announcements-item:first-child,
	.ecp-pnas-announcements--count-6 .ecp-pnas-announcements-item:first-child {
		grid-row: auto;
	}
}

.ecp-pnas-announcements-item {
	margin: 0;
	min-width: 0;
}

.ecp-pnas-announcements-link {
	position: relative;
	display: block;
	text-decoration: none;
	color: #fff;
	background: #1a1a1a;
	overflow: hidden;
	cursor: pointer;
}

.ecp-pnas-announcements-link[aria-disabled="true"] {
	cursor: default;
	pointer-events: none;
}

.ecp-pnas-announcements-link:hover .ecp-pnas-announcements-image,
.ecp-pnas-announcements-link:focus-visible .ecp-pnas-announcements-image {
	transform: scale(1.04);
}

.ecp-pnas-announcements-link:focus-visible {
	outline: 2px solid #0b54d1;
	outline-offset: 3px;
}

.ecp-pnas-announcements-media {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #2a2a2a;
}

.ecp-pnas-announcements-image,
.ecp-pnas-announcements-placeholder {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.28s ease;
}

.ecp-pnas-announcements-placeholder {
	background: linear-gradient(160deg, #2a2a2a, #151515);
}

.ecp-pnas-announcements-media::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 58%;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.4) 55%, transparent 100%);
	pointer-events: none;
	z-index: 0;
}

.ecp-pnas-announcements-overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem 1.1rem 1.15rem;
    pointer-events: none;
    flex-direction: column;
}

.ecp-pnas-announcements-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.94);
	color: #111;
	font-size: 0.95rem;
	line-height: 1;
}

.ecp-pnas-announcements-title {
	font-family: var(--ecp-pnas-font-heading);
	font-size: clamp(0.95rem, 1.6vw, 1.12rem);
	font-weight: 700;
	line-height: 1.35;
	color: #fff;
}

.ecp-pnas-announcements--count-3 .ecp-pnas-announcements-item:first-child .ecp-pnas-announcements-title {
	font-size: clamp(1.05rem, 2vw, 1.35rem);
}

.ecp-pnas-announcements-view-all {
	margin: 1.35rem 0 0;
	padding: 0;
	text-align: right;
}

.ecp-pnas-announcements-view-all a {
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #fff;
	text-decoration: none;
}

.ecp-pnas-announcements-view-all a:hover {
}

.ecp-pnas-announcements-view-all .fa {
	color: #fff;
}

/* —— Recent issues carousel —— */
body.ecp-pnas-theme .ecp-pnas-recent-issues {
	margin: 0;
	padding: 2.75rem 0;
	border: 0;
	background: #fff;
	width: 100%;
	position: relative;
}
body.ecp-pnas-theme .ecp-pnas-recent-issues:before{
    position: absolute;
    content: "";
    background: #f8f8f8;
    top: 0;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 100%;
    max-width: 100rem;
}

.ecp-pnas-recent-issues .ecp-pnas-inner {
	position: relative;
	z-index: 1;
}

.ecp-pnas-recent-issues-viewport {
	overflow: hidden;
	width: 100%;
	touch-action: pan-y;
	cursor: grab;
	user-select: none;
}

.ecp-pnas-recent-issues-viewport:active {
	cursor: grabbing;
}

body.ecp-pnas-theme ul.ecp-pnas-recent-issues-track {
	list-style: none;
	margin: 0;
	padding: 0.35rem 0 0.75rem;
	display: flex;
	flex-wrap: nowrap;
	gap: 1.25rem;
	width: 100%;
	transition: transform 0.4s ease;
	will-change: transform;
}

.ecp-pnas-recent-issue {
	flex: 0 0 calc((100% - 0.75rem) / 2);
	--shadow-x: 0px;
	--shadow-y: 0px;
	box-shadow: var(--shadow-x) var(--shadow-y) 18px rgba(0, 0, 0, 0.16);
	transition: box-shadow 0.2s ease;
	background: #fff;
}

@media (max-width: 899px) {
	body.ecp-pnas-theme ul.ecp-pnas-recent-issues-track {
		gap: 0.75rem;
	}
}

@media (min-width: 900px) {
	.ecp-pnas-recent-issue {
		flex-basis: calc((100% - 3.75rem) / 4);
	}
}

.ecp-pnas-recent-issue-link {
	position: relative;
	display: block;
	text-decoration: none;
	color: inherit;
	overflow: hidden;
}

.ecp-pnas-recent-issue-cover,
.ecp-pnas-recent-issue-placeholder {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	background: #e0ddd4;
	-webkit-user-drag: none;
	user-select: none;
	pointer-events: none;
	border: 0;
}

.ecp-pnas-recent-issue-overlay {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.75rem;
	background: rgba(0, 0, 0, 0.62);
	color: #fff;
	opacity: 0;
	transition: opacity 0.22s ease;
	text-align: center;
	pointer-events: none;
}

.ecp-pnas-recent-issue-link:hover .ecp-pnas-recent-issue-overlay,
.ecp-pnas-recent-issue-link:focus-visible .ecp-pnas-recent-issue-overlay {
	opacity: 1;
}

.ecp-pnas-recent-issue-meta {
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.82rem;
	line-height: 1.35;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ecp-pnas-recent-issues-controls {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin: 1.1rem 0 0;
}

.ecp-pnas-recent-issues-progress {
	flex: 1;
	position: relative;
	height: 3px;
	background: #d8d8d8;
	overflow: hidden;
}

.ecp-pnas-recent-issues-progress-thumb {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 50%;
	background: #111;
	transform: translateX(0);
	transition: transform 0.35s ease, width 0.35s ease;
}

.ecp-pnas-recent-issues-nav {
	display: flex;
	gap: 0.35rem;
}

.ecp-pnas-recent-issues-prev,
.ecp-pnas-recent-issues-next {
	width: 2.15rem;
	height: 2.15rem;
	padding: 0;
	border: 1px solid #ccc;
	background: #fff;
	color: #111;
	font-size: 1.35rem;
	line-height: 1;
	cursor: pointer;
}

.ecp-pnas-recent-issues-prev:hover,
.ecp-pnas-recent-issues-next:hover {
	border-color: #111;
}

.ecp-pnas-recent-issues-prev:disabled,
.ecp-pnas-recent-issues-next:disabled {
	opacity: 0.35;
	cursor: default;
}

.ecp-pnas-recent-issues-more {
	margin: 1.35rem 0 0;
	text-align: center;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.ecp-pnas-recent-issues-more a {
	color: var(--ecp-pnas-accent, #003366);
	text-decoration: none;
}

.ecp-pnas-recent-issues-more a:hover {
}

/* —— Submit CTA: dark band + white card —— */
body.ecp-pnas-theme .ecp-pnas-submit-cta {
	margin: 0;
	padding: 4rem 0 4.25rem;
	border: 0;
	width: 100%;
}

.ecp-pnas-submit-cta .ecp-pnas-inner {
	background-color: rgb(0 26 76 / 60%);
    background-image: url("../images/homepageImage_vi.jpg");
	backdrop-filter: blur(3px);
	padding: 2rem;
}
.ecp-pnas-submit-cta-inner {
	padding: 2.75rem 2.25rem 2.85rem;
	text-align: center;
	background: #fff;
	margin: 0 auto;
}

.ecp-pnas-submit-cta-inner .ecp-pnas-section-head {
	margin: 0 0 1.15rem;
	text-align: center;
}

.ecp-pnas-submit-cta-inner .ecp-pnas-section-head > h2 {
	display: inline-block;
	margin: 0;
}
.ecp-pnas-submit-cta-inner .ecp-pnas-section-head > h2:before {display: none;}
.ecp-pnas-submit-cta-text {
	font-family: var(--ecp-pnas-font-base);
	font-size: 1.05rem;
	font-style: italic;
	color: #6b6b6b;
	max-width: 46rem;
	margin: 0 auto 1.5rem !important;
	line-height: 1.6;
	text-align: center;
}

.ecp-pnas-submit-cta-text p {
	margin: 0 0 0.75rem;
}

.ecp-pnas-submit-cta-text p:last-child {
	margin-bottom: 0;
}

.ecp-pnas-submit-cta-action {
	margin: 0;
}

a.ecp-pnas-submit-cta-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #fff;
	text-decoration: none;
	background: var(--ecp-pnas-accent, #003366);
	border: 0;
	border-radius: 0;
	padding: 0.9rem 1.85rem;
	line-height: 1;
	transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
	box-shadow: 0 2px 8px rgb(0 51 102 / 22%);
}

a.ecp-pnas-submit-cta-link .fa {
	font-size: 1rem;
}

a.ecp-pnas-submit-cta-link:hover {
	color: #fff;
	background: color-mix(in srgb, var(--ecp-pnas-accent, #003366) 82%, #000);
	box-shadow: 0 4px 14px rgb(0 51 102 / 28%);
	transform: translateY(-1px);
}

a.ecp-pnas-submit-cta-link:hover .fa {
	transform: translateX(3px);
}

/* —— Footer: 3 columns + copyright (ojsecp-compatible) —— */
.pkp_structure_footer_wrapper.ecp-pnas-footer {
	background: #001a4c;
	color: #ccc;
	border-top: 0;
	margin-top: 0;
	width: 100%;
}

.pkp_structure_footer_wrapper.ecp-pnas-footer .pkp_structure_footer {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	padding: 1.75rem 1.25rem 1.25rem;
	max-width: var(--ecp-pnas-container);
	margin: 0 auto;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.875rem;
	text-align: left;
	box-sizing: border-box;
}

.ecp-pnas-footer .ecp-footer-main {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.5rem 2rem;
	width: 100%;
	box-sizing: border-box;
}

.ecp-pnas-footer .ecp-footer-main__content {
	flex: 1 1 auto;
	min-width: 0;
	text-align: left;
}

.ecp-pnas-footer .ecp-footer-main:not(.ecp-footer-main--with-logo) .ecp-footer-main__content {
	flex: 1 1 100%;
	max-width: 100%;
}

.ecp-pnas-footer .ecp-footer-main--with-logo .ecp-footer-main__content {
	flex: 1 1 0;
	max-width: calc(100% - 12rem);
}

.ecp-pnas-footer .ecp-footer-main__logo,
.ecp-pnas-footer .ecp-footer-main .pkp_brand_footer {
	flex: 0 0 auto;
	align-self: flex-start;
	margin-left: auto;
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	padding: 1.5rem 0 0.5rem;
	border-top: none;
	float: none;
	clear: none;
	width: auto;
	max-width: 11rem;
	opacity: 1;
}

.ecp-pnas-footer .ecp-footer-main__logo img,
.ecp-pnas-footer .ecp-footer-main .pkp_brand_footer img {
	display: block;
	max-height: 160px;
	max-width: 100%;
	width: auto;
	height: auto;
}

.ecp-pnas-footer .pkp_footer_content {
	width: 100%;
	color: rgb(204 204 204 / 78%);
	font-size: 0.9rem;
	padding: 1.5rem 0;
	line-height: 1.65;
}

.ecp-pnas-footer .ecp-footer-cols {
	width: 100%;
	max-width: 100%;
	display: grid;
	gap: 2rem;
	padding: 1.5rem 0 0.5rem;
	text-align: left;
	box-sizing: border-box;
}

.ecp-pnas-footer .ecp-footer-cols--1 {
	grid-template-columns: minmax(0, 1fr);
}

.ecp-pnas-footer .ecp-footer-cols--2 {
	grid-template-columns: 1fr 1fr;
}

.ecp-pnas-footer .ecp-footer-cols--3 {
	grid-template-columns: repeat(3, 1fr);
}

.ecp-pnas-footer .ecp-footer-col {
	width: 100%;
	min-width: 0;
	color: rgb(204 204 204 / 78%);
	font-size: 0.9rem;
	line-height: 1.65;
	text-align: left;
	overflow: hidden;
}

.ecp-pnas-footer .ecp-footer-col p,
.ecp-pnas-footer .pkp_footer_content p {
	margin: 0.3rem 0;
}

.ecp-pnas-footer .ecp-footer-col h3,
.ecp-pnas-footer .ecp-footer-col h4,
.ecp-pnas-footer .ecp-footer-col strong,
.ecp-pnas-footer .ecp-footer-col b,
.ecp-pnas-footer .pkp_footer_content strong,
.ecp-pnas-footer .pkp_footer_content b {
	color: rgb(204 204 204 / 95%);
}

.ecp-pnas-footer .ecp-footer-col ul,
.ecp-pnas-footer .pkp_footer_content ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.ecp-pnas-footer .ecp-footer-col li {
	padding: 0.15rem 0;
}

.ecp-pnas-footer a {
	color: #eee;
	text-decoration: none;
}

.ecp-pnas-footer a:hover {
	color: #fff;
}

.ecp-pnas-footer .pkp_footer_copyright {
	width: 100%;
	text-align: center;
	color: rgb(204 204 204 / 35%);
	font-size: 0.8rem;
	padding: 0.6rem 0 0.8rem;
	border-top: 1px solid rgb(255 255 255 / 12%);
	margin-top: 0.5rem;
}

.ecp-pnas-footer .pkp_footer_copyright a {
	color: rgb(204 204 204 / 35%);
}

.ecp-pnas-footer .pkp_footer_copyright a:hover {
	color: rgb(204 204 204 / 55%);
}

@media (max-width: 767px) {
	.pkp_structure_footer_wrapper.ecp-pnas-footer .pkp_structure_footer {
		padding: 1.5rem 1.25rem 1.25rem;
	}

	.ecp-pnas-footer .ecp-footer-main {
		flex-direction: column;
		flex-wrap: wrap;
		align-items: stretch;
		gap: 1rem;
	}

	.ecp-pnas-footer .ecp-footer-main--with-logo .ecp-footer-main__content {
		max-width: 100%;
		flex: 1 1 100%;
	}

	.ecp-pnas-footer .ecp-footer-main__logo,
	.ecp-pnas-footer .ecp-footer-main .pkp_brand_footer {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		justify-content: flex-end;
		padding-top: 1rem;
		border-top: 1px solid rgb(255 255 255 / 12%);
	}

	.ecp-pnas-footer .ecp-footer-cols--2,
	.ecp-pnas-footer .ecp-footer-cols--3 {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}
}

/* Non-homepage pages: keep readable column */
body.ecp-pnas-theme:not(.pkp_page_index) .pkp_structure_main > .page {
	max-width: var(--ecp-pnas-container);
	margin-left: auto;
	margin-right: auto;
	padding: 1.5rem 1.25rem 2.5rem;
	box-sizing: border-box;
}

/* Issue TOC is full-bleed; inner columns use .ecp-pnas-inner */
body.ecp-pnas-theme:not(.pkp_page_index) .pkp_structure_main > .page.page_issue.ecp-pnas-issue {
	max-width: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

/* Article detail: full-bleed page; content constrained by .ecp-pnas-inner */
body.ecp-pnas-theme:not(.pkp_page_index) .pkp_structure_main > .page.page_article.ecp-pnas-article {
	max-width: none;
	width: 100%;
	margin: 0;
	padding: 1.5rem 0 2.5rem;
}

/* —— PNAS article detail (public article view) —— */

.ecp-pnas-article .cmp_breadcrumbs {
	margin: 0 0 1.35rem;
	padding: 0;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.82rem;
	line-height: 1.45;
	color: #666;
}

.ecp-pnas-article .cmp_breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	gap: 0.15rem 0.35rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ecp-pnas-article .cmp_breadcrumbs a {
	color: #555;
}

.ecp-pnas-article .cmp_breadcrumbs .current {
	color: #222;
	font-weight: 600;
}

.ecp-pnas-article .obj_article_details > .page_title {
	margin: 0 0 0.85rem;
	font-family: var(--ecp-pnas-font-heading);
	font-size: clamp(1.45rem, 2.4vw, 1.95rem);
	font-weight: 700;
	line-height: 1.28;
	letter-spacing: -0.01em;
	color: #111;
	text-wrap: balance;
}

.ecp-pnas-article .obj_article_details > .subtitle {
	margin: 0 0 1.35rem;
	font-family: var(--ecp-pnas-font-heading);
	font-size: clamp(1.05rem, 1.5vw, 1.2rem);
	font-weight: 500;
	line-height: 1.4;
	color: #555;
}

/* Kill default-theme float / border scaffold on article body */
.ecp-pnas-article .obj_article_details > .row.ecp-pnas-article-body-grid,
.ecp-pnas-article .ecp-pnas-article-body-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.25rem;
	align-items: start;
	margin: 1.25rem 0 0;
	padding: 0;
	border: 0;
	float: none;
	width: auto;
}

@media (min-width: 992px) {
	.ecp-pnas-article .obj_article_details > .row.ecp-pnas-article-body-grid,
	.ecp-pnas-article .ecp-pnas-article-body-grid {
		grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
		gap: 2.75rem 3rem;
		margin-top: 1.75rem;
	}
}

.ecp-pnas-article .main_entry,
.ecp-pnas-article .entry_details {
	min-width: 0;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.ecp-pnas-article-rail {
	display: flex;
	flex-direction: column;
	gap: 0;
}

@media (min-width: 992px) {
	.ecp-pnas-article-rail {
		position: sticky;
		top: 1rem;
		align-self: start;
	}
}

/* Cover: match issue rail (gray panel + overlapping shadowed cover) */
.entry_details.ecp-pnas-article-rail .cover_image{
	background: #f0f0f0;
}
.ecp-pnas-article-rail-panel {
	padding: 0 1.15rem 1.5rem;
	text-align: center;
	overflow: visible;
	margin-top: 3.5rem;
}

.ecp-pnas-article-rail-panel:not(:has(.ecp-pnas-article-rail-cover)) {
	padding-top: 1.35rem;
	margin-top: 0;
}

.ecp-pnas-article-rail-cover {
	max-width: 19rem;
	width: 100%;
	margin: -3rem auto 1.15rem;
	position: relative;
	z-index: 1;
}

.ecp-pnas-article-rail-cover a {
	display: block;
}

.ecp-pnas-article-rail-cover img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	object-position: center top;
	background: #e8e6e0;
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22);
}

.ecp-pnas-article .cover_image {
	margin: 0;
	padding: 0;
	border: 0;
}

.ecp-pnas-article .main_entry .item {
	margin: 0 0 1.5rem;
	padding: 0;
	border: 0;
}

.ecp-pnas-article .main_entry .item > .label,
.ecp-pnas-article .entry_details .item > .label,
.ecp-pnas-article .entry_details .sub_item > .label {
	margin: 0 0 0.45rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #1a1a1a;
}

.ecp-pnas-article .main_entry .item.keywords > .label,
.ecp-pnas-article .main_entry .item.doi > .label {
	display: block;
	margin-bottom: 0.55rem;
}

.ecp-pnas-article-keywords {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.ecp-pnas-article-keywords > li {
	margin: 0;
	padding: 0.28rem 0.65rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.82rem;
	line-height: 1.35;
	color: #333;
	background: color-mix(in srgb, var(--ecp-pnas-header, #003366) 7%, #fff);
	border: 1px solid color-mix(in srgb, var(--ecp-pnas-header, #003366) 16%, #fff);
}

.ecp-pnas-article .main_entry .authors {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem 1.75rem;
	margin-bottom: 1rem;
}

.ecp-pnas-article .main_entry .authors > li {
	margin: 0;
	font-size: 1rem;
	line-height: 1.4;
	min-width: 10rem;
}

.ecp-pnas-article .main_entry .authors .name {
	display: block;
	font-family: var(--ecp-pnas-font-heading);
	font-weight: 600;
	font-size: 1.02rem;
	color: #1a1a1a;
}

.ecp-pnas-article .main_entry .authors .affiliation,
.ecp-pnas-article .main_entry .authors .userGroup {
	display: block;
	margin-top: 0.12rem;
	font-size: 0.82rem;
	font-weight: 400;
	color: #777;
}

.ecp-pnas-article .main_entry .abstract > .label {
	padding-bottom: 0.55rem;
	margin-bottom: 1rem;
	border-bottom: 2px solid #1a1a1a;
	color: #1a1a1a;
	font-size: 1rem;
}

.ecp-pnas-article .main_entry .abstract {
	font-size: 1.02rem;
	line-height: 1.7;
	color: #2a2a2a;
}

.ecp-pnas-article .main_entry .abstract p {
	margin: 0 0 0.9rem;
}

.ecp-pnas-article .main_entry .abstract p:last-child {
	margin-bottom: 0;
}

/* Rail meta stack under cover */
.ecp-pnas-article .entry_details > .item:not(.cover_image) {
	margin: 0;
	padding: 1rem 0 0;
	border-top: 0;
	border-bottom: 1px solid #e6e6e6;
}

.ecp-pnas-article .entry_details > .item:not(.cover_image):last-child {
	border-bottom: 0;
}

.ecp-pnas-article .entry_details .item.cover_image {
	border: 0;
	padding: 0;
	margin: 3rem 0 0.35rem;
}

.ecp-pnas-article .entry_details .item.galleys {
	padding: 1rem 0 1.05rem;
	border-bottom: 1px solid #e6e6e6;
}

.ecp-pnas-article .entry_details .galleys_links,
.ecp-pnas-article .entry_details .supplementary_galleys_links,
.ecp-pnas-article-galley-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.ecp-pnas-article-galley-pair {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin: 0;
	width: 100%;
}

a.ecp-pnas-article-galley {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	width: 100%;
	box-sizing: border-box;
	padding: 0.8rem 1rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
	line-height: 1;
	transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, color 0.15s ease;
}

a.ecp-pnas-article-galley--view,
a.ecp-pnas-article-galley--pdf {
	color: #fff;
	background: var(--ecp-pnas-header, #003366);
	border: 1px solid var(--ecp-pnas-header, #003366);
	box-shadow: 0 2px 8px rgb(0 51 102 / 18%);
}

a.ecp-pnas-article-galley--download {
	color: var(--ecp-pnas-header, #003366);
	background: #fff;
	border: 1px solid var(--ecp-pnas-header, #003366);
}

a.ecp-pnas-article-galley .fa {
	font-size: 1rem;
}

a.ecp-pnas-article-galley--view:hover,
a.ecp-pnas-article-galley--view:focus-visible,
a.ecp-pnas-article-galley--pdf:hover,
a.ecp-pnas-article-galley--pdf:focus-visible {
	color: #fff;
	background: color-mix(in srgb, var(--ecp-pnas-header, #003366) 82%, #000);
	border-color: color-mix(in srgb, var(--ecp-pnas-header, #003366) 82%, #000);
	box-shadow: 0 4px 14px rgb(0 51 102 / 24%);
	transform: translateY(-1px);
	outline: 0;
}

a.ecp-pnas-article-galley--download:hover,
a.ecp-pnas-article-galley--download:focus-visible {
	color: #fff;
	background: var(--ecp-pnas-header, #003366);
	outline: 0;
	transform: translateY(-1px);
}

.ecp-pnas-article .main_entry .downloads_chart {
	margin-top: 1.75rem;
	padding-top: 1.35rem;
	border-top: 1px solid #e6e6e6;
}

.ecp-pnas-article .main_entry .downloads_chart > .label {
	margin-bottom: 0.85rem;
}

.ecp-pnas-article .main_entry .downloads_chart .usageStatsGraph {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	min-height: 12rem;
}

.ecp-pnas-article .main_entry .downloads_chart .usageStatsUnavailable {
	margin-top: 0.65rem;
	font-size: 0.9rem;
	color: #666;
}

.ecp-pnas-article .entry_details .sub_item {
	margin: 0 0 0.85rem;
}

.ecp-pnas-article .entry_details .sub_item:last-child {
	margin-bottom: 0;
}

.ecp-pnas-article .entry_details .item.published,
.ecp-pnas-article .entry_details .item.issue {
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.ecp-pnas-article .entry_details .value {
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.95rem;
	line-height: 1.45;
	color: #222;
}

.ecp-pnas-article .entry_details .galleys_links,
.ecp-pnas-article .entry_details .supplementary_galleys_links {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 0.5rem;
}

.ecp-pnas-article .entry_details .galleys_links > li,
.ecp-pnas-article .entry_details .supplementary_galleys_links > li {
	margin: 0;
	width: 100%;
}

@media (max-width: 991px) {
	.ecp-pnas-article-rail {
		order: -1;
	}

	.ecp-pnas-article .obj_article_details > .row.ecp-pnas-article-body-grid,
	.ecp-pnas-article .ecp-pnas-article-body-grid {
		display: flex;
		flex-direction: column;
	}

	.ecp-pnas-article-rail-panel {
		margin-top: 2.5rem;
	}

	.ecp-pnas-article-rail-cover {
		max-width: 14rem;
		margin-top: -2.5rem;
	}

	.ecp-pnas-article .main_entry .authors > li {
		min-width: 8.5rem;
	}
}

/* Related articles (below article body, above recommend plugins / footer) */
.ecp-pnas-article .ecp-pnas-related-articles {
	margin: 2.75rem 0 0;
	padding: 2rem 0 0.5rem;
	border-top: 1px solid #e0e0e0;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow-x: hidden;
}

.ecp-pnas-article .ecp-pnas-related-articles .ecp-pnas-section-head {
	margin: 0 0 1.25rem;
}

.ecp-pnas-article .ecp-pnas-related-articles .ecp-pnas-section-head > h2 {
	font-family: var(--ecp-pnas-font-heading);
	font-size: clamp(1.15rem, 1.8vw, 1.45rem);
	letter-spacing: 0.02em;
	text-transform: none;
	border-bottom: 2px solid #1a1a1a;
	padding-bottom: 0.45rem;
}

.ecp-pnas-article .ecp-pnas-related-articles .ecp-pnas-section-head > h2:before {
	display: none;
}

.ecp-pnas-article .ecp-pnas-related-articles .ecp-pnas-card-list > .ecp-pnas-card {
	margin: 0;
	padding: 1.25rem 0;
	border-top: 1px solid #e0e0e0;
}

.ecp-pnas-article .ecp-pnas-related-articles .ecp-pnas-card-list > .ecp-pnas-card:first-child {
	border-top: 0;
	padding-top: 0.15rem;
}

.ecp-pnas-article .ecp-pnas-related-articles .ecp-pnas-card-title {
	font-size: 1.18rem;
}

.ecp-pnas-article .ecp-pnas-related-articles .ecp-pnas-card-title a {
	color: var(--ecp-pnas-accent, #003366);
}

.ecp-pnas-article .ecp-pnas-related-articles .ecp-pnas-card-title a:hover,
.ecp-pnas-article .ecp-pnas-related-articles .ecp-pnas-card-title a:focus-visible {
	color: var(--ecp-pnas-header, #003366);
}

/* —— PNAS issue TOC (public issue view) —— */

/*
 * Hero: issue cover as full-bleed background under the site header,
 * white centered card overlapping into body (PNAS Current Issue).
 */
.ecp-pnas-issue-hero {
	position: relative;
	padding: 5rem 0 0;
	background: transparent;
	/* clip scaled/full-bleed bg so it cannot create page-level horizontal scroll */
	overflow-x: clip;
	overflow-y: visible;
	min-height: 12rem;
}

.ecp-pnas-issue-hero-bg {
	position: absolute;
	inset: 0;
	background-color: transparent;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	filter: saturate(0.92);
	height: 80%;
}

.ecp-pnas-issue-hero--has-cover .ecp-pnas-issue-hero-bg {
	background-size: cover;
}

.ecp-pnas-issue-hero-inner {
	position: relative;
	z-index: 1;
}

.ecp-pnas-issue-hero-card {
	margin: 0 auto -2.75rem;
	padding: 2rem 2.25rem 4rem;
	text-align: center;
	background: #fff;
	position: relative;
	z-index: 2;
	margin-bottom: 2rem;
}

.ecp-pnas-issue-hero-card::after {
	content: "";
	position: absolute;
	left: 5%;
	right: 0;
	bottom: -2px;
	height: 16px;
	pointer-events: none;
	background: radial-gradient(
		ellipse at 50% 0%,
		rgba(0, 0, 0, 0.22) 0%,
		rgba(0, 0, 0, 0.1) 38%,
		transparent 72%
	);
	box-shadow: 0 8px 10px -10px rgba(0, 0, 0, 0.35);
	width: 90%;
}

h1.ecp-pnas-issue-hero-title {
	margin: 0 0 0.5rem !important;
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: clamp(2rem, 3.6vw, 2.75rem);
	font-weight: 700;
	line-height: 1.12;
	color: #111;
	font-size: 2.1rem;
}

.ecp-pnas-issue-hero-meta {
	font-family: var(--ecp-pnas-font-base);
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin-top: 0.75rem !important;
}

.ecp-pnas-issue-hero-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 0.25rem 0.55rem;
}

.ecp-pnas-issue-hero-nav-sep {
	color: #ccc;
	font-size: 1rem;
	font-weight: 300;
	user-select: none;
}

.ecp-pnas-issue-hero-nav-link {
	font-family: var(--ecp-pnas-font-base);
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #0b0b0b;
	text-decoration: none;
	white-space: nowrap;
}

.ecp-pnas-issue-hero-nav-link:hover,
.ecp-pnas-issue-hero-nav-link:focus-visible {
	color: var(--ecp-pnas-accent, #003366);
}

.ecp-pnas-issue-hero-nav-link span {
	margin: 0 0.12rem;
	font-weight: 400;
}

/* 2-column body: TOC main + cover rail (no left section nav) */
.ecp-pnas-issue-body {
	padding: 3.75rem 0 3rem;
	background: #fff;
}

.ecp-pnas-issue-body-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.25rem;
	align-items: start;
}

@media (min-width: 992px) {
	.ecp-pnas-issue-body-grid {
		grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
		gap: 2.5rem 2.75rem;
	}
}

.ecp-pnas-issue-main {
	min-width: 0;
}

.ecp-pnas-issue-toc .cmp_notification {
	margin: 0 0 1.5rem;
}

/* Section blocks */
.ecp-pnas-toc-section {
	margin: 0 0 2.75rem;
}

.ecp-pnas-toc-section:last-child {
	margin-bottom: 0;
}

.ecp-pnas-toc-section--lead {
	background: rgba(28,117,188,.0509803922);
	padding: 1.35rem 1.35rem 0.5rem;
}

.ecp-pnas-toc-section-head {
	margin: 0 0 1rem;
}

.ecp-pnas-toc-section--lead .ecp-pnas-toc-section-head {
	margin: -1.35rem -1.35rem 1.25rem;
	padding: 0.85rem 1.35rem;
	background: #0c5cdc;
}

.ecp-pnas-toc-section-head > h2 {
	margin: 0;
	font-family: var(--ecp-pnas-font-heading);
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #1a1a1a;
}

.ecp-pnas-toc-section--lead .ecp-pnas-toc-section-head > h2 {
	color: #fff;
	font-size: 1rem;
}

.ecp-pnas-toc-section:not(.ecp-pnas-toc-section--lead) .ecp-pnas-toc-section-head > h2 {
	font-size: clamp(1.15rem, 1.8vw, 1.45rem);
	letter-spacing: 0.02em;
	text-transform: none;
	border-bottom: 2px solid #1a1a1a;
	padding-bottom: 0.45rem;
}

.ecp-pnas-toc-articles {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ecp-pnas-toc-articles > .ecp-pnas-card {
	margin: 0;
	padding: 1.25rem 0;
	border-top: 1px solid #e0e0e0;
}

.ecp-pnas-toc-section--lead .ecp-pnas-toc-articles > .ecp-pnas-card {
	border-top-color: color-mix(in srgb, var(--ecp-pnas-header, #003366) 22%, #fff);
}

.ecp-pnas-toc-articles > .ecp-pnas-card:first-child {
	border-top: 0;
	padding-top: 0.15rem;
}

.ecp-pnas-toc-articles .ecp-pnas-card-title {
	font-size: 1.18rem;
}

.ecp-pnas-toc-articles .ecp-pnas-card-title a {
	color: var(--ecp-pnas-accent, #003366);
}

.ecp-pnas-toc-articles .ecp-pnas-card-title a:hover,
.ecp-pnas-toc-articles .ecp-pnas-card-title a:focus-visible {
	color: color-mix(in srgb, var(--ecp-pnas-accent, #003366) 72%, #000);
}

.ecp-pnas-toc-articles .ecp-pnas-card-authors {
	font-style: italic;
}

.ecp-pnas-toc-articles .ecp-pnas-card-actions a.ecp-pnas-card-action {
	width: 2.15rem;
	height: 2.15rem;
}

/* legacy TOC selectors kept for safety if any residual markup */
.ecp-pnas-toc-article-item {
	margin: 0;
	padding: 0;
}

/* Right rail: PNAS cover panel + homepage submit CTA (compact) */
.ecp-pnas-issue-rail {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
}

@media (min-width: 992px) {
	.ecp-pnas-issue-rail {
		position: sticky;
		top: 1rem;
		align-self: start;
	}
}

.ecp-pnas-issue-rail-panel {
	background: #f0f0f0;
	padding: 0 1.15rem 1.5rem;
	text-align: center;
	overflow: visible;
	margin-top: 4rem;
}

.ecp-pnas-issue-rail-cover {
	max-width: 19rem;
	margin: -3.75rem auto 1.25rem;
	position: relative;
	z-index: 1;
}

.ecp-pnas-issue-rail-cover img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	background: #e8e6e0;
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22);
}

.ecp-pnas-issue-rail-meta {
	margin: 0 0 0.85rem;
	padding: 0 0.25rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #444;
}

/* When there is no cover, restore top padding on the panel */
.ecp-pnas-issue-rail-panel:not(:has(.ecp-pnas-issue-rail-cover)) {
	padding-top: 1.35rem;
}

.ecp-pnas-issue-rail-links {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.15rem;
	margin: 0 0 1.15rem;
}

a.ecp-pnas-issue-rail-link {
	display: block;
	width: 100%;
	padding: 0.55rem 0.5rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	color: #222;
	background: transparent;
	border: 0;
}

a.ecp-pnas-issue-rail-link:hover,
a.ecp-pnas-issue-rail-link:focus-visible {
	color: var(--ecp-pnas-accent, #003366);
	outline: 0;
}

a.ecp-pnas-issue-rail-archive {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	width: 100%;
	box-sizing: border-box;
	padding: 0.75rem 1rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	color: #222;
	background: #e8e8e8;
	border: 1px solid #333;
}

a.ecp-pnas-issue-rail-archive:hover,
a.ecp-pnas-issue-rail-archive:focus-visible {
	color: #fff;
	background: var(--ecp-pnas-header, #003366);
	border-color: var(--ecp-pnas-header, #003366);
	outline: 0;
}

a.ecp-pnas-issue-rail-archive .fa {
	font-size: 0.85rem;
}

/* Compact homepage submit CTA inside issue rail */
.ecp-pnas-issue-rail .ecp-pnas-submit-cta {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

.ecp-pnas-issue-rail .ecp-pnas-submit-cta .ecp-pnas-inner {
	max-width: none;
	width: 100%;
	padding: 0.85rem;
	box-sizing: border-box;
	background-color: rgb(0 26 76 / 60%);
	background-image: url("../images/homepageImage_vi.jpg");
	background-size: cover;
	background-position: center;
	backdrop-filter: blur(3px);
}

.ecp-pnas-issue-rail .ecp-pnas-submit-cta-inner {
	padding: 1.5rem 1.15rem 1.6rem;
	max-width: none;
}

.ecp-pnas-issue-rail .ecp-pnas-submit-cta-inner .ecp-pnas-section-head {
	margin: 0 0 0.85rem;
}

.ecp-pnas-issue-rail .ecp-pnas-submit-cta-inner .ecp-pnas-section-head > h2 {
	font-size: 1.5rem;
}

.ecp-pnas-issue-rail .ecp-pnas-submit-cta-text {
	margin: 0 auto 1.15rem !important;
	max-width: none;
}

.ecp-pnas-issue-rail a.ecp-pnas-submit-cta-link {
	padding: 0.75rem 1.25rem;
}

@media (max-width: 991px) {
	.ecp-pnas-issue-hero {
		padding: 2rem 0 3.5rem;
	}

	.ecp-pnas-issue-hero-card {
		margin-bottom: -2rem;
		padding: 1.5rem 1.25rem 1.25rem;
	}

	.ecp-pnas-issue-body {
		padding-top: 3rem;
	}

	.ecp-pnas-issue-rail {
		order: -1;
	}

	.ecp-pnas-issue-rail-cover {
		max-width: 11rem;
		margin-top: -1.5rem;
	}
}

/* —— PNAS announcement detail —— */

body.ecp-pnas-theme:not(.pkp_page_index) .pkp_structure_main > .page.page_announcement.ecp-pnas-announcement-detail {
	max-width: none;
	width: 100%;
	margin: 0;
	padding: 1.5rem 0 3rem;
	box-sizing: border-box;
}

.ecp-pnas-announcement-detail .cmp_breadcrumbs {
	margin: 0 0 1.5rem;
	padding: 0;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.82rem;
	line-height: 1.45;
	color: #666;
}

.ecp-pnas-announcement-detail .cmp_breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	gap: 0.15rem 0.35rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ecp-pnas-announcement-detail .cmp_breadcrumbs a {
	color: #555;
	text-decoration: none;
}

.ecp-pnas-announcement-detail .cmp_breadcrumbs a:hover {
	color: var(--ecp-pnas-accent, #003366);
}

.ecp-pnas-announcement-detail .cmp_breadcrumbs .current {
	color: #222;
	font-weight: 600;
}

.ecp-pnas-announcement-full {
	max-width: 46rem;
	margin: 0 auto;
}

.ecp-pnas-announcement-detail > .ecp-pnas-inner > .cmp_breadcrumbs {
	max-width: 46rem;
	margin-left: auto;
	margin-right: auto;
}

.ecp-pnas-announcement-full-header {
	margin: 0 0 1.75rem;
	padding-bottom: 1.35rem;
	border-bottom: 1px solid #e4e7ec;
}

.ecp-pnas-announcement-full-title {
	margin: 0 0 0.85rem;
	font-family: var(--ecp-pnas-font-heading);
	font-size: clamp(1.55rem, 2.6vw, 2.05rem);
	font-weight: 700;
	line-height: 1.28;
	letter-spacing: -0.015em;
	color: #111;
	text-wrap: balance;
}

.ecp-pnas-announcement-full-date {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	margin: 0;
	padding: 0.35rem 0.7rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1.2;
	color: #555;
	background: #f3f5f8;
	border-radius: 2px;
}

.ecp-pnas-announcement-full-date .fa {
	color: var(--ecp-pnas-accent, #003366);
	opacity: 0.75;
	font-size: 0.9em;
}

.ecp-pnas-announcement-full-media {
	margin: 0 0 1.75rem;
	padding: 0;
	overflow: hidden;
	background: #eef1f5;
	aspect-ratio: 16 / 9;
}

.ecp-pnas-announcement-full-media img,
.ecp-pnas-announcement-full .obj_announcement_full_image {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	margin: 0;
	object-fit: cover;
	object-position: center;
}

.ecp-pnas-announcement-full-body,
.ecp-pnas-announcement-full-body p,
.ecp-pnas-announcement-full-body li,
.ecp-pnas-announcement-full-body td {
	margin: 0;
	font-family: var(--ecp-pnas-font-base);
	font-size: 1.05rem;
	line-height: 1.7;
	color: #222;
}

.ecp-pnas-announcement-full-body > *:first-child {
	margin-top: 0;
}

.ecp-pnas-announcement-full-body > *:last-child {
	margin-bottom: 0;
}

.ecp-pnas-announcement-full-body p {
	margin: 0 0 1.1rem;
}

.ecp-pnas-announcement-full-body a {
	color: var(--ecp-pnas-accent, #003366);
}

.ecp-pnas-announcement-full-body img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 1.25rem 0;
}

.ecp-pnas-announcement-full-body h2,
.ecp-pnas-announcement-full-body h3,
.ecp-pnas-announcement-full-body h4 {
	font-family: var(--ecp-pnas-font-heading);
	font-weight: 700;
	line-height: 1.3;
	color: #111;
	margin: 1.6rem 0 0.65rem;
}

.ecp-pnas-announcement-full-body ul,
.ecp-pnas-announcement-full-body ol {
	margin: 0 0 1.1rem;
	padding-left: 1.35rem;
}

.ecp-pnas-announcement-full-body li {
	margin: 0.25rem 0;
}

.ecp-pnas-announcement-back {
	margin: 2.25rem auto 0;
	padding-top: 1.35rem;
	border-top: 1px solid #e4e7ec;
	max-width: 46rem;
}

.ecp-pnas-announcement-back .ecp-pnas-action-link {
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.88rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--ecp-pnas-accent, #003366);
	text-decoration: none;
}

.ecp-pnas-announcement-back .ecp-pnas-action-link:hover {
	color: #002244;
}

.ecp-pnas-announcement-back .ecp-pnas-action-link:hover .fa {
	transform: translateX(-3px);
}

@media (max-width: 767px) {
	.ecp-pnas-announcement-full-title {
		font-size: 1.4rem;
	}

	.ecp-pnas-announcement-full-body {
		font-size: 1rem;
	}
}


/* ==========================================================================
   Login / Register / Lost password (card layout, ojsecp-inspired, PNAS tokens)
   ========================================================================== */

body.ecp-pnas-theme .page_login,
body.ecp-pnas-theme .page_lost_password {
	/* ~1/2 of register card (720px) on desktop */
	max-width: 480px !important;
	margin: 0 auto 2.5rem;
	padding: 0 1rem;
	box-sizing: border-box;
}

body.ecp-pnas-theme .page_register {
	max-width: 720px;
	margin: 0 auto 2.5rem;
	padding: 0 1rem;
	box-sizing: border-box;
}

@media (max-width: 767px) {
	body.ecp-pnas-theme .page_login,
	body.ecp-pnas-theme .page_lost_password {
		max-width: 480px; /* readable on phone; still narrower than register */
	}
}

body.ecp-pnas-theme .page_login .form_box,
body.ecp-pnas-theme .page_register .form_box,
body.ecp-pnas-theme .page_lost_password .form_box {
	background: #fff;
	border: 1px solid color-mix(in srgb, var(--ecp-pnas-header, #003366) 14%, #e5e7eb);
	border-radius: 6px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
	overflow: hidden;
	margin-bottom: 1.5rem;
}

body.ecp-pnas-theme .page_login .form_box > h1,
body.ecp-pnas-theme .page_register .form_box > h1,
body.ecp-pnas-theme .page_lost_password .form_box > h1 {
	font-family: var(--ecp-pnas-font-heading);
	font-size: 1.35rem;
	font-weight: 700;
	color: #1a1a1a;
	margin: 0;
	padding: 1.1rem 1.25rem 0.95rem;
	border-bottom: 2px solid var(--ecp-pnas-accent, #003366);
}

body.ecp-pnas-theme .page_login .form_box_body,
body.ecp-pnas-theme .page_register .form_box_body,
body.ecp-pnas-theme .page_lost_password .form_box_body {
	padding: 1.25rem;
}

body.ecp-pnas-theme .page_login .required_notice,
body.ecp-pnas-theme .page_register .required_notice,
body.ecp-pnas-theme .page_lost_password .required_notice,
body.ecp-pnas-theme .page_login .login_message {
	font-size: 0.875rem;
	color: #5b6472;
	margin: 0 0 1.1rem;
	line-height: 1.5;
}

body.ecp-pnas-theme .page_login .pkp_form_error,
body.ecp-pnas-theme .page_register .pkp_form_error,
body.ecp-pnas-theme .page_lost_password .pkp_form_error,
body.ecp-pnas-theme .page_login .cmp_form_errors,
body.ecp-pnas-theme .page_register .cmp_form_errors,
body.ecp-pnas-theme .page_register .pkp_form_errors {
	background: #fff5f5;
	border: 1px solid #fca5a5;
	border-left: 3px solid #dc2626;
	border-radius: 4px;
	padding: 0.7rem 1rem;
	color: #b91c1c;
	font-size: 0.875rem;
	margin-bottom: 1.1rem;
}

body.ecp-pnas-theme .page_login .cmp_form,
body.ecp-pnas-theme .page_register .cmp_form,
body.ecp-pnas-theme .page_lost_password .cmp_form {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

/* Override default theme `.page_login .login { max-width: 17em }` */
body.ecp-pnas-theme .page_login form.login,
body.ecp-pnas-theme .page_login .cmp_form.login,
body.ecp-pnas-theme .page_login .login {
	max-width: none !important;
	width: 100% !important;
	box-sizing: border-box;
}

body.ecp-pnas-theme .page_login .form_box_body,
body.ecp-pnas-theme .page_lost_password .form_box_body {
	width: 100%;
	box-sizing: border-box;
}

body.ecp-pnas-theme .page_login .cmp_form fieldset.fields,
body.ecp-pnas-theme .page_login .cmp_form .username,
body.ecp-pnas-theme .page_login .cmp_form .password,
body.ecp-pnas-theme .page_login .cmp_form .remember,
body.ecp-pnas-theme .page_login .cmp_form .ecp-aa-password-wrap {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

body.ecp-pnas-theme .page_login .cmp_form fieldset,
body.ecp-pnas-theme .page_register .cmp_form fieldset,
body.ecp-pnas-theme .page_lost_password .cmp_form fieldset {
	border: none;
	border-top: 1px solid #e8eaee;
	padding: 1.15rem 0 0;
	margin: 1rem 0 0;
}

body.ecp-pnas-theme .page_login .cmp_form fieldset:first-of-type,
body.ecp-pnas-theme .page_register .cmp_form fieldset:first-of-type,
body.ecp-pnas-theme .page_lost_password .cmp_form fieldset:first-of-type {
	border-top: none;
	margin-top: 0;
	padding-top: 0;
}

body.ecp-pnas-theme .page_login .cmp_form fieldset.fields,
body.ecp-pnas-theme .page_lost_password .cmp_form > .fields,
body.ecp-pnas-theme .page_login .cmp_form .fields,
body.ecp-pnas-theme .page_register .cmp_form .fields,
body.ecp-pnas-theme .page_lost_password .cmp_form .fields {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	width: 100%;
	box-sizing: border-box;
}

body.ecp-pnas-theme .page_login .cmp_form .fields > div,
body.ecp-pnas-theme .page_register .cmp_form .fields > div,
body.ecp-pnas-theme .page_lost_password .cmp_form .fields > div {
	padding-bottom: 0;
	box-sizing: border-box;
}

body.ecp-pnas-theme .page_login .cmp_form legend:not(.pkp_screen_reader),
body.ecp-pnas-theme .page_register .cmp_form legend:not(.pkp_screen_reader),
body.ecp-pnas-theme .page_lost_password .cmp_form legend:not(.pkp_screen_reader) {
	display: block;
	float: none;
	width: 100%;
	font-family: var(--ecp-pnas-font-heading);
	font-size: 0.72rem;
	font-weight: 700;
	color: var(--ecp-pnas-accent, #003366);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin: 0 0 0.85rem;
	padding: 0;
}

body.ecp-pnas-theme .page_login .cmp_form label,
body.ecp-pnas-theme .page_register .cmp_form label,
body.ecp-pnas-theme .page_lost_password .cmp_form label {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	width: 100%;
	box-sizing: border-box;
	cursor: pointer;
}

body.ecp-pnas-theme .page_login .cmp_form span.label,
body.ecp-pnas-theme .page_register .cmp_form span.label,
body.ecp-pnas-theme .page_lost_password .cmp_form span.label {
	font-size: 0.84rem;
	font-weight: 600;
	color: #3d4654;
}

body.ecp-pnas-theme .page_login .cmp_form .required,
body.ecp-pnas-theme .page_register .cmp_form .required,
body.ecp-pnas-theme .page_lost_password .cmp_form .required {
	color: #dc2626;
}

/* Text fields — one rule for all text-like inputs; exclude checkbox/submit/hidden */
body.ecp-pnas-theme :is(.page_login, .page_register, .page_lost_password) .cmp_form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]):not([type="file"]):not([type="image"]):not([type="reset"]),
body.ecp-pnas-theme :is(.page_login, .page_register, .page_lost_password) .cmp_form select,
body.ecp-pnas-theme :is(.page_login, .page_register, .page_lost_password) .cmp_form textarea {
	width: 100%;
	max-width: 100%;
	height: 44px;
	padding: 0 1rem;
	border: 1.5px solid #d0d5dd;
	border-radius: 4px;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.95rem;
	color: #1a1a1a;
	background: #f8f9fb;
	box-sizing: border-box;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

body.ecp-pnas-theme .page_register .cmp_form textarea {
	height: auto;
	min-height: 6rem;
	padding: 0.75rem 1rem;
}

body.ecp-pnas-theme :is(.page_login, .page_register, .page_lost_password) .cmp_form :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]), select, textarea):focus {
	border-color: var(--ecp-pnas-accent, #003366);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--ecp-pnas-accent, #003366) 16%, transparent);
	outline: none;
	background: #fff;
}

body.ecp-pnas-theme .page_login .cmp_form .forgot_password,
body.ecp-pnas-theme .page_login .cmp_form .password > label > a {
	align-self: flex-end;
	font-size: 0.8rem;
	font-weight: 500;
	color: var(--ecp-pnas-accent, #003366);
	text-decoration: none;
	background-image: none;
}

body.ecp-pnas-theme .page_login .cmp_form .forgot_password:hover,
body.ecp-pnas-theme .page_login .cmp_form .password > label > a:hover {
	text-decoration: underline;
}

body.ecp-pnas-theme .page_login .cmp_form .checkbox > label,
body.ecp-pnas-theme .page_login .cmp_form .optin label,
body.ecp-pnas-theme .page_register .cmp_form .checkbox > label,
body.ecp-pnas-theme .page_register .cmp_form .optin label {
	flex-direction: row;
	align-items: flex-start;
	gap: 0.5rem;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.5;
}

body.ecp-pnas-theme .page_login .cmp_form .checkbox input[type="checkbox"],
body.ecp-pnas-theme .page_register .cmp_form .optin input[type="checkbox"],
body.ecp-pnas-theme .page_login .cmp_form .optin input[type="checkbox"] {
	width: auto;
	height: auto;
	flex-shrink: 0;
	margin-top: 3px;
	accent-color: var(--ecp-pnas-accent, #003366);
}

body.ecp-pnas-theme .page_login .cmp_form .buttons,
body.ecp-pnas-theme .page_register .cmp_form .buttons,
body.ecp-pnas-theme .page_lost_password .cmp_form .buttons {
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
	float: none !important;
	clear: both;
	width: auto;
	max-width: none;
	box-sizing: border-box;
	margin: 1.25rem -1.25rem -1.25rem;
	padding: 1rem 1.25rem !important;
	border-top: 1px solid #e8eaee;
	background: color-mix(in srgb, var(--ecp-pnas-header, #003366) 4%, #f8f9fb);
}

body.ecp-pnas-theme .page_login .cmp_form .buttons::before,
body.ecp-pnas-theme .page_login .cmp_form .buttons::after,
body.ecp-pnas-theme .page_register .cmp_form .buttons::before,
body.ecp-pnas-theme .page_register .cmp_form .buttons::after,
body.ecp-pnas-theme .page_lost_password .cmp_form .buttons::before,
body.ecp-pnas-theme .page_lost_password .cmp_form .buttons::after {
	content: none !important;
	display: none !important;
}

body.ecp-pnas-theme .page_login .cmp_form .buttons button,
body.ecp-pnas-theme .page_login .cmp_form .buttons a,
body.ecp-pnas-theme .page_login .cmp_form .buttons .submit,
body.ecp-pnas-theme .page_login .cmp_form .buttons .register,
body.ecp-pnas-theme .page_lost_password .cmp_form .buttons button,
body.ecp-pnas-theme .page_lost_password .cmp_form .buttons a {
	float: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.ecp-pnas-theme .page_login .cmp_form button.submit,
body.ecp-pnas-theme .page_register .cmp_form button.submit,
body.ecp-pnas-theme .page_lost_password .cmp_form button.submit,
body.ecp-pnas-theme .page_login .cmp_form input[type="submit"],
body.ecp-pnas-theme .page_register .cmp_form input[type="submit"],
body.ecp-pnas-theme .page_lost_password .cmp_form input[type="submit"] {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	float: none;
	margin: 0;
	background: var(--ecp-pnas-accent, #003366);
	color: #fff;
	border: none;
	border-radius: 4px;
	padding: 0.65rem 1.55rem;
	font-family: var(--ecp-pnas-font-base);
	font-size: 0.92rem;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.18s ease, box-shadow 0.18s ease;
}

body.ecp-pnas-theme .page_login .cmp_form button.submit::before,
body.ecp-pnas-theme .page_register .cmp_form button.submit::before,
body.ecp-pnas-theme .page_lost_password .cmp_form button.submit::before {
	font-family: FontAwesome;
	font-size: 0.85rem;
	font-weight: 400;
}

body.ecp-pnas-theme .page_login .cmp_form button.submit::before { content: "\f090"; }
body.ecp-pnas-theme .page_register .cmp_form button.submit::before { content: "\f234"; }
body.ecp-pnas-theme .page_lost_password .cmp_form button.submit::before { content: "\f003"; }

body.ecp-pnas-theme .page_login .cmp_form button.submit:hover,
body.ecp-pnas-theme .page_register .cmp_form button.submit:hover,
body.ecp-pnas-theme .page_lost_password .cmp_form button.submit:hover {
	background: color-mix(in srgb, var(--ecp-pnas-accent, #003366) 82%, #000);
	box-shadow: 0 2px 8px color-mix(in srgb, var(--ecp-pnas-accent, #003366) 28%, transparent);
}

body.ecp-pnas-theme .page_login .cmp_form a.register,
body.ecp-pnas-theme .page_register .cmp_form a.login,
body.ecp-pnas-theme .page_lost_password .cmp_form a.register {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	float: none;
	margin: 0;
	color: var(--ecp-pnas-accent, #003366);
	font-size: 0.875rem;
	font-weight: 500;
	text-decoration: none;
	background-image: none;
}

body.ecp-pnas-theme .page_login .cmp_form a.register::before,
body.ecp-pnas-theme .page_register .cmp_form a.login::before,
body.ecp-pnas-theme .page_lost_password .cmp_form a.register::before {
	font-family: FontAwesome;
	font-size: 0.8rem;
}

body.ecp-pnas-theme .page_login .cmp_form a.register::before,
body.ecp-pnas-theme .page_lost_password .cmp_form a.register::before { content: "\f234"; }
body.ecp-pnas-theme .page_register .cmp_form a.login::before { content: "\f090"; }

body.ecp-pnas-theme .page_login .cmp_form a.register:hover,
body.ecp-pnas-theme .page_register .cmp_form a.login:hover,
body.ecp-pnas-theme .page_lost_password .cmp_form a.register:hover {
	text-decoration: underline;
}

/* Register: 2-column identity / login fields on tablet+ */
@media (min-width: 768px) {
	body.ecp-pnas-theme .page_register .cmp_form fieldset.identity .fields,
	body.ecp-pnas-theme .page_register .cmp_form fieldset.login .fields {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0 0;
	}

	body.ecp-pnas-theme .page_register .cmp_form fieldset.identity .fields > div,
	body.ecp-pnas-theme .page_register .cmp_form fieldset.login .fields > div {
		padding-bottom: 1rem;
		padding-right: 0.75rem;
	}

	body.ecp-pnas-theme .page_register .cmp_form fieldset.identity .fields > div:nth-child(even),
	body.ecp-pnas-theme .page_register .cmp_form fieldset.login .fields > div:nth-child(even) {
		padding-right: 0;
		padding-left: 0.75rem;
	}
}

@media (max-width: 767px) {
	body.ecp-pnas-theme .page_register .cmp_form fieldset.identity .fields,
	body.ecp-pnas-theme .page_register .cmp_form fieldset.login .fields {
		display: flex;
		flex-direction: column;
		gap: 0.85rem;
	}

	body.ecp-pnas-theme .page_register .cmp_form fieldset.identity .fields > div,
	body.ecp-pnas-theme .page_register .cmp_form fieldset.login .fields > div {
		padding-right: 0;
		padding-left: 0;
	}
}

/* ecpAccountAdvanced combobox / password toggle align with PNAS auth inputs */
body.ecp-pnas-theme .page_login .ecp-aa-combobox-input,
body.ecp-pnas-theme .page_register .ecp-aa-combobox-input,
body.ecp-pnas-theme .page_login .ecp-aa-password-wrap input,
body.ecp-pnas-theme .page_register .ecp-aa-password-wrap input {
	height: 44px;
	background: #f8f9fb;
	border: 1.5px solid #d0d5dd;
	border-radius: 4px;
}

body.ecp-pnas-theme .page_login .ecp-aa-combobox-input:focus,
body.ecp-pnas-theme .page_register .ecp-aa-combobox-input:focus,
body.ecp-pnas-theme .page_login .ecp-aa-password-wrap input:focus,
body.ecp-pnas-theme .page_register .ecp-aa-password-wrap input:focus {
	border-color: var(--ecp-pnas-accent, #003366);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--ecp-pnas-accent, #003366) 16%, transparent);
	background: #fff;
}

body.ecp-pnas-theme .page_register .identity .ecp-aa-combobox-list > li {
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
}
