/**
 * GPL UI styles. Loaded only on pages that use the GPL header:
 * country, US state, United States and summary pages (body.gpl-ui).
 * Scoped to .gplui* classes; topic lists keep the site's existing .clist styles.
 */

.gpl-ui {
	--gplui-navy: #0a0a70;
	--gplui-panel-top: #14124f;
	--gplui-magenta: #c2185b;
	--gplui-ink: #1f2330;
	--gplui-muted: #5b6070;
	--gplui-line: #e3e6ee;
	--gplui-soft: #f3f4f8;
	--gplui-chip: #e6e7f3;
	--gplui-radius: 16px;
}

/* Header band (replaces Memberlite's title banner on GPL UI pages) */
.gplui-hero {
	background: var(--gplui-navy);
	color: #fff;
	margin-bottom: 32px;
}
.gplui-hero__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px 32px;
	padding: 22px 0 24px;
}
.gplui-hero__main { min-width: 0; }
.gplui-breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0 0 6px;
	padding: 0;
	font-size: 13px;
	color: rgba(255, 255, 255, .85);
}
.gplui-breadcrumb li { margin: 0; }
.gplui-breadcrumb li + li::before {
	content: "\203A";
	margin: 0 8px;
	color: rgba(255, 255, 255, .6);
}
.gplui-breadcrumb a { color: #fff; text-decoration: none; }
.gplui-breadcrumb a:hover,
.gplui-breadcrumb a:focus-visible { text-decoration: underline; }
.gplui-hero__title {
	margin: 0 0 12px;
	color: #fff;
	font-size: 34px;
	font-weight: 700;
	line-height: 1.15;
}
.gplui-hero__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.gplui-pill {
	margin: 0;
	padding: 3px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .14);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.6;
}
.gplui-switch { margin: 0; min-width: 260px; }
.gplui-switch label {
	display: block;
	margin: 0 0 6px;
	color: rgba(255, 255, 255, .85);
	font-size: 12px;
	font-weight: 400;
}
.gplui-switch__row { display: flex; gap: 8px; }
.gplui-switch select {
	flex: 1;
	width: 100%;
	min-height: 40px;
	margin: 0;
	padding: 6px 10px;
	border: 0;
	border-radius: 6px;
	background-color: #fff;
	color: var(--gplui-navy);
	font-size: 14px;
	font-weight: 600;
}
.gplui-switch__go[hidden] { display: none; }
.gplui-switch__go {
	min-height: 40px;
	padding: 0 14px;
	border: 1px solid rgba(255, 255, 255, .6);
	border-radius: 6px;
	background: transparent;
	color: #fff;
	cursor: pointer;
}
.gplui-hero a:focus-visible,
.gplui-switch select:focus-visible,
.gplui-switch__go:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

/* Layout ---------------------------------------------------------------- */
.gplui.content-area {
	float: none;
	width: 100%;
	padding-bottom: 56px; /* space above the footer */
}
/* United States page: the page content starts with a Memberlite banner that adds
   its own top padding; the GPL header already provides the gap. */
.gpl-ui--us_page .entry-content > .banner:first-child { padding-top: 0; }
.gplui-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 340px);
	gap: 48px;
	align-items: start;
}
.gplui-layout--state { grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: 32px; }
@media (max-width: 1200px) {
	.gplui-layout--state { grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 24px; }
}
.gplui-main { min-width: 0; }
.gplui-aside {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
}
.gplui-aside .gplui-panel { margin: 0; }

/* Cards --------------------------------------------------------------------
 * One card style for every list a page already has:
 * - topic lists (.clist from [country_compliance_children]) on country, state
 *   and summary pages – styled directly;
 * - heading + list groups on the United States page and in the summary sidebar –
 *   wrapped into .gplui-side-card by gpl-ui.js.
 * The card title is the list's own heading.
 */
.gplui-cards {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.gpl-ui .gplui-side-card,
.gpl-ui .clist {
	box-sizing: border-box;
	width: 100%;
	max-width: none !important;
	margin: 0;
	padding: 18px 14px 10px;
	background: #fff;
	border: 1px solid var(--gplui-line);
	border-radius: 12px;
	color: var(--gplui-ink);
	font-size: 14px;
}
.gpl-ui .clist + .clist { margin-top: 20px; }
.gpl-ui .gplui-cards .clist + .clist { margin-top: 0; }
.gplui-side-card__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 0 12px 8px;
}
.gpl-ui .gplui-side-card__title,
.gpl-ui .clist .ctitle {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
	color: var(--gplui-magenta);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.4;
	text-transform: uppercase;
}
.gpl-ui .clist > .ctitle { padding: 0 12px 8px; }
.gplui-side-card__count {
	flex: none;
	padding: 1px 9px;
	border-radius: 999px;
	background: var(--gplui-chip);
	color: var(--gplui-navy);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.7;
	text-transform: none;
}
.gpl-ui .gplui-side-card ul,
.gpl-ui .clist ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.gpl-ui .gplui-side-card li,
.gpl-ui .clist li {
	margin: 0;
	padding: 0;
	list-style: none !important;
}
.gpl-ui .gplui-side-card li::before,
.gpl-ui .clist li::before { content: none; }
.gpl-ui .gplui-side-card li > a,
.gpl-ui .clist li > a,
.gpl-ui .clist li > span {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 8px 12px;
	border-radius: 8px;
	color: var(--gplui-ink);
	font-size: 14px;
	line-height: 1.35;
	text-decoration: none;
}
.gpl-ui .gplui-side-card li > a::after,
.gpl-ui .clist li > a::after {
	content: "";
	flex: none;
	width: 6px;
	height: 6px;
	margin-right: 2px;
	border-top: 1.5px solid #9aa0b2;
	border-right: 1.5px solid #9aa0b2;
	transform: rotate(45deg);
}
/* Topic with no summary (shown as plain text by the shortcode): "No content available" tag */
.gpl-ui .clist li > span { color: #8a8fa0; }
.gpl-ui .clist li > span::after {
	content: "No content available";
	flex: none;
	padding: 0 7px;
	border-radius: 999px;
	background: #f0f1f5;
	color: #8a8fa0;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.8;
}
.gpl-ui .gplui-side-card li > a:hover,
.gpl-ui .gplui-side-card li > a:focus-visible,
.gpl-ui .gplui-side-card li > a.is-current,
.gpl-ui .clist li > a:hover,
.gpl-ui .clist li > a:focus-visible,
.gpl-ui .clist li > a.is-current {
	background: var(--gplui-soft);
	color: var(--gplui-navy);
}
.gpl-ui .gplui-side-card li > a.is-current,
.gpl-ui .clist li > a.is-current { font-weight: 600; }
.gpl-ui .gplui-side-card li > a:focus-visible,
.gpl-ui .clist li > a:focus-visible {
	outline: 2px solid var(--gplui-magenta);
	outline-offset: 1px;
}
.gpl-ui .gplui-side-card > p,
.gpl-ui .gplui-side-card > div { margin: 6px 12px 4px; font-size: 13px; }

/* Summary pages: single.php sidebar */
.gpl-ui--summary .gpl-side .cont { display: flex; flex-direction: column; gap: 20px; }
.gpl-ui--summary .gpl-side .clist { margin: 0; }

/* Country pages: lists left, country image right */
.gplui-layout--country { grid-template-columns: minmax(0, 460px) minmax(0, 1fr); }
.gplui-main--full { grid-column: 1 / -1; }
.gpl-ui .gplui-country-image {
	float: none;
	max-width: none !important;
	text-align: center;
}
.gpl-ui .gplui-country-image img {
	max-width: 100% !important;
	max-height: 520px;
	margin: 0 !important;
}

/* State pages: US Summaries card left, panel right */
.gplui-layout--state .gplui-main { min-width: 0; }

/* Summary content ------------------------------------------------------------
 * Summary pages only (single posts): the article in the main column becomes a
 * white document card. Page structure, header and sidebar are unchanged.
 * Classes gplui-doc__* are added by gpl-ui.js; the text itself is not changed.
 */
.gpl-ui--summary .gpl-main article {
	margin: 0 0 40px;
	padding: 36px 40px 32px;
	background: #fff;
	border: 1px solid var(--gplui-line);
	border-radius: 14px;
}
.gpl-ui--summary .gplui-doc {
	color: var(--gplui-ink);
	font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 16px;
	line-height: 1.75;
}
.gpl-ui--summary .gplui-doc p { margin: 0 0 14px; }
.gpl-ui--summary .gplui-doc a { color: #23238f; }

/* Title block */
.gplui-doc__head {
	margin: 0 0 22px;
	padding: 0 0 18px;
	border-bottom: 1px solid var(--gplui-line);
}
.gpl-ui--summary .gplui-doc__title {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: var(--gplui-navy);
	font-family: inherit;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
}
.gplui-doc__meta {
	margin: 2px 0 0 !important;
	color: var(--gplui-muted);
	font-size: 12.5px;
	line-height: 1.4;
}
.gpl-ui--summary .gplui-doc .gplui-doc__h1 { display: none; }

/* Sections: H3 with a divider line instead of the grey band */
.gpl-ui--summary .gplui-doc h3 {
	margin: 28px 0 10px;
	padding: 26px 0 0;
	background: none;
	border: 0;
	border-top: 1px solid var(--gplui-line);
	color: #1a1d2b;
	font-family: inherit;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.35;
}
.gpl-ui--summary .gplui-doc .wpj-jtoc ~ h3:first-of-type,
.gpl-ui--summary .gplui-doc .cbxwpbkmarkwrap + h3,
.gpl-ui--summary .gplui-doc .gplui-doc__h1 + h3 {
	margin-top: 8px;
	padding-top: 0;
	border-top: 0;
}
.gpl-ui--summary .gplui-doc h3 strong { font-weight: inherit; }
.gpl-ui--summary .gplui-doc hr.wp-block-separator { display: none; } /* the H3 divider replaces it */

/* Numbered points */
.gpl-ui--summary .gplui-doc .gplui-doc__point {
	margin: 18px 0 10px;
	font-weight: 700;
}
.gpl-ui--summary .gplui-doc .gplui-doc__item {
	margin: 0 0 6px;
	padding-left: 22px;
}
.gpl-ui--summary .gplui-doc .gplui-doc__item > strong:first-child,
.gpl-ui--summary .gplui-doc .gplui-doc__item > b:first-child { font-weight: 400; }
.gpl-ui--summary .gplui-doc .gplui-doc__item + p:not(.gplui-doc__item) { margin-top: 14px; }

/* Notes: grey box with an info icon */
.gpl-ui--summary .gplui-doc .gplui-doc__note {
	position: relative;
	margin: 16px 0;
	padding: 12px 16px 12px 42px;
	border-radius: 8px;
	background: var(--gplui-soft);
	color: #3a3f52;
	font-size: 13.5px;
	line-height: 1.6;
}
.gpl-ui--summary .gplui-doc .gplui-doc__note em,
.gpl-ui--summary .gplui-doc .gplui-doc__note i { font-style: normal; }
.gpl-ui--summary .gplui-doc .gplui-doc__note::before {
	content: "i";
	position: absolute;
	left: 15px;
	top: 14px;
	width: 15px;
	height: 15px;
	border: 1.5px solid currentColor;
	border-radius: 50%;
	font-size: 10px;
	font-weight: 700;
	font-style: normal;
	line-height: 13px;
	text-align: center;
}

/* SOURCE citations */
.gpl-ui--summary .gplui-doc .gplui-doc__source {
	position: relative;
	margin: 12px 0 14px;
	padding-left: 64px;
	font-size: 13px;
	line-height: 1.55;
}
.gpl-ui--summary .gplui-doc .gplui-doc__source::before {
	content: "Source";
	position: absolute;
	left: 0;
	top: 2px;
	color: var(--gplui-magenta);
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.gpl-ui--summary .gplui-doc .gplui-doc__source a { text-decoration: underline; text-underline-offset: 2px; }

@media (max-width: 640px) {
	.gpl-ui--summary .gpl-main article { padding: 22px 18px; border-radius: 12px; }
	.gpl-ui--summary .gplui-doc { font-size: 15.5px; }
}
@media print {
	.gpl-ui--summary .gpl-main article { padding: 0; border: 0; }
}

/* Recent News (home page, United States page) -------------------------------
 * Block printed by news.php and swapped in by gpl-ui.js.
 */
.gplui-news {
	margin: 8px 0 48px;
	color: var(--gplui-ink);
	text-align: left;
}
.gplui-news__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 24px;
}
.gplui-news__eyebrow {
	margin: 0 0 2px !important;
	color: var(--gplui-magenta);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.gpl-ui .gplui-news__title {
	margin: 0;
	padding: 0;
	border: 0;
	color: var(--gplui-navy);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
}
.gplui-news__more {
	flex: none;
	padding: 9px 22px;
	border: 1.5px solid var(--gplui-navy);
	border-radius: 999px;
	color: var(--gplui-navy) !important;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
	white-space: nowrap;
}
.gplui-news__more:hover,
.gplui-news__more:focus-visible { background: var(--gplui-navy); color: #fff !important; }
.gplui-news__grid {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 8fr);
	gap: 28px;
	align-items: start;
}

/* Latest card */
.gplui-news__feature {
	display: flex;
	flex-direction: column;
	min-height: 368px;
	padding: 28px;
	border-radius: 18px;
	background: var(--gplui-panel-top);
	color: #fff !important;
	text-decoration: none !important;
	box-shadow: 0 8px 24px rgba(10, 10, 112, .16);
	transition: transform .15s ease, box-shadow .15s ease;
}
.gplui-news__feature:hover,
.gplui-news__feature:focus-visible { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(10, 10, 112, .22); }
.gplui-news__feature-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 16px;
	color: rgba(255, 255, 255, .8);
	font-size: 13px;
}
.gplui-news__badge {
	padding: 3px 11px;
	border-radius: 999px;
	background: var(--gplui-magenta);
	color: #fff;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}
.gpl-ui .gplui-news__feature-title {
	flex: 1;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: #fff;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
}
.gpl-ui .gplui-news__feature-title.is-long { font-size: 21px; line-height: 1.3; }
.gplui-news__feature-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 24px;
	padding-top: 16px;
	border-top: 1px solid rgba(255, 255, 255, .18);
}
.gplui-news__feature-tags { display: flex; flex-wrap: wrap; gap: 4px 12px; }
.gplui-news__feature-tag {
	color: rgba(255, 255, 255, .78);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.gplui-news__read { flex: none; margin-left: auto; font-size: 14px; font-weight: 700; }

/* List */
.gplui-news__list {
	margin: 0;
	padding: 0;
	list-style: none;
}
.gplui-news__list li {
	margin: 0;
	padding: 0;
	list-style: none;
	border-bottom: 1px solid var(--gplui-line);
}
.gplui-news__list li::before { content: none; }
.gplui-news__row {
	display: grid;
	grid-template-columns: 110px minmax(0, 1fr) 24px;
	gap: 12px;
	align-items: center;
	padding: 16px 6px;
	color: var(--gplui-ink) !important;
	text-decoration: none !important;
}
.gplui-news__row:hover,
.gplui-news__row:focus-visible { background: var(--gplui-soft); }
.gplui-news__date { display: flex; flex-direction: column; line-height: 1.3; }
.gplui-news__day { color: var(--gplui-navy); font-size: 14px; font-weight: 700; }
.gplui-news__year { color: var(--gplui-muted); font-size: 12px; }
.gplui-news__body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.gplui-news__row-title {
	color: var(--gplui-navy);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
}
.gplui-news__tags { display: flex; flex-wrap: wrap; gap: 6px; }
.gplui-news__tag {
	padding: 1px 9px;
	border-radius: 999px;
	background: var(--gplui-chip);
	color: var(--gplui-navy);
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1.8;
	text-transform: uppercase;
}
.gplui-news__arrow { color: var(--gplui-navy); font-size: 18px; text-align: right; transition: transform .15s ease, color .15s ease; }
.gplui-news__row:hover .gplui-news__arrow { color: var(--gplui-magenta); transform: translateX(3px); }
.gplui-news a:focus-visible { outline: 2px solid var(--gplui-magenta); outline-offset: 2px; }

/* Legal disclaimer card (home page) */
.gpl-ui .gplui-disc {
	display: grid;
	grid-template-columns: minmax(0, 220px) minmax(0, 1fr);
	gap: 40px;
	margin: 0 0 48px;
	padding: 32px;
	border: 0;
	border-radius: 18px;
	background: #f4f5f8;
	color: #3a3f52;
	text-align: left;
}
.gplui-disc__icon { color: var(--gplui-magenta); }
.gpl-ui .gplui-disc__label {
	margin: 12px 0 6px !important;
	color: var(--gplui-magenta);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.gpl-ui .gplui-disc__title { margin: 0 !important; color: var(--gplui-navy); font-size: 19px; font-weight: 700; line-height: 1.3; }
.gplui-disc__body p { margin: 0 0 14px; font-size: 14px; line-height: 1.75; }
.gpl-ui .gplui-disc__body .gplui-disc__fine {
	margin: 0;
	padding-top: 14px;
	border-top: 1px solid #dfe2ea;
	color: var(--gplui-muted);
	font-size: 12.5px;
	line-height: 1.6;
}

@media (max-width: 900px) {
	.gplui-news__grid { grid-template-columns: minmax(0, 1fr); }
	.gplui-news__feature { min-height: 0; }
	.gpl-ui .gplui-disc { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 24px; }
}
@media (max-width: 560px) {
	.gplui-news__head { flex-direction: column; align-items: flex-start; }
	.gplui-news__row { grid-template-columns: 72px minmax(0, 1fr) 16px; }
	.gpl-ui .gplui-news__feature-title { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) {
	.gplui-news__feature, .gplui-news__arrow { transition: none; }
}

/* Overrides for the site's Additional CSS (Customizer) rules on .gpl-recent-news
 * and .gpl-legal-disclaimer, which still apply on top of the new layout
 * (timeline dots, hover shift, "📰"/"ⓘ LEGAL DISCLAIMER"/"©" labels, borders).
 * Scoped to the new layout only; the Additional CSS itself is not changed. */
.gpl-ui .gpl-recent-news.gplui-news {
	max-width: none;
	margin: 8px 0 48px;
	padding: 0 !important;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
}
.gpl-ui .gpl-recent-news.gplui-news h2 {
	margin: 0;
	padding: 0;
	border: 0;
	font-family: inherit;
}
.gpl-ui .gpl-recent-news.gplui-news h2::before,
.gpl-ui .gpl-recent-news.gplui-news li::before { content: none; display: none; }
.gpl-ui .gpl-recent-news.gplui-news li {
	position: static;
	margin: 0;
	padding: 0;
	border-radius: 0;
	border-bottom: 1px solid var(--gplui-line);
	background: none;
	transform: none;
	transition: none;
}
.gpl-ui .gpl-recent-news.gplui-news li:hover { background: none; transform: none; }
.gpl-ui .gpl-recent-news.gplui-news li:last-of-type { border-bottom: 1px solid var(--gplui-line); }
.gpl-ui .gpl-recent-news.gplui-news li a.gplui-news__row {
	color: var(--gplui-ink);
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	text-decoration: none;
}
.gpl-ui .gpl-recent-news.gplui-news li a.gplui-news__row:hover,
.gpl-ui .gpl-recent-news.gplui-news li a.gplui-news__row:focus-visible {
	background: var(--gplui-soft);
	color: var(--gplui-ink);
	text-decoration: none;
}
.gpl-ui .gpl-recent-news.gplui-news > .gplui-news__head a.gplui-news__more,
.gpl-ui .gpl-recent-news.gplui-news a.gplui-news__more { margin: 0; background: none; transform: none; }
.gpl-ui .gpl-recent-news.gplui-news a.gplui-news__more:hover,
.gpl-ui .gpl-recent-news.gplui-news a.gplui-news__more:focus-visible { background: var(--gplui-navy); }
.gpl-ui .gpl-recent-news.gplui-news a.gplui-news__more::after { content: none; }

.gpl-ui .gpl-legal-disclaimer.gplui-disc {
	max-width: none;
	margin: 0 0 48px;
	padding: 32px;
	border: 0;
	border-left: 0;
	border-radius: 18px;
	background: #f4f5f8;
}
.gpl-ui .gpl-legal-disclaimer.gplui-disc::before { content: none; display: none; }
.gpl-ui .gpl-legal-disclaimer.gplui-disc .gplui-disc__aside p {
	padding: 0;
	border: 0;
	text-align: left;
}
.gpl-ui .gpl-legal-disclaimer.gplui-disc .gplui-disc__aside p::before { content: none; display: none; }
.gpl-ui .gpl-legal-disclaimer.gplui-disc .gplui-disc__label,
.gpl-ui .gpl-legal-disclaimer.gplui-disc .gplui-disc__title { font-weight: 700 !important; }
.gpl-ui .gpl-legal-disclaimer.gplui-disc .gplui-disc__label { font-size: 12px !important; letter-spacing: .1em; }
.gpl-ui .gpl-legal-disclaimer.gplui-disc .gplui-disc__title { color: var(--gplui-navy); font-size: 19px !important; }
.gpl-ui .gpl-legal-disclaimer.gplui-disc .gplui-disc__body p { color: #3a3f52; }
.gpl-ui .gpl-legal-disclaimer.gplui-disc .gplui-disc__body p:last-child { border-top: 1px solid #dfe2ea; }
.gpl-ui .gpl-legal-disclaimer.gplui-disc .gplui-disc__body p:last-child::before { content: none; display: none; }
@media (max-width: 900px) {
	.gpl-ui .gpl-legal-disclaimer.gplui-disc { padding: 24px; margin: 0 0 32px; }
}

/* Newsletter pages (/newsletters/, /usa-newsletters/) -------------------------
 * The page's own Pods list, grouped by year by gpl-ui.js. Pagination kept.
 * Selectors are doubled (.gpl-recent-news.gplui-archive) to win over the
 * site's Additional CSS for .gpl-recent-news (not edited).
 */
.gpl-ui .gpl-recent-news.gplui-archive {
	max-width: 960px;
	margin: 0 auto 48px;
	padding: 0 !important;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	color: var(--gplui-ink);
	text-align: left;
}
.gpl-ui .gplui-archive__count {
	margin: 0 0 16px;
	color: var(--gplui-muted);
	font-size: 13px;
}
.gpl-ui .gplui-archive__year {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr);
	gap: 0;
	align-items: start;
	margin: 0 0 28px;
}
.gpl-ui .gpl-recent-news.gplui-archive .gplui-archive__year-label {
	margin: 0;
	padding: 14px 0 0;
	border: 0;
	align-self: start;
	color: var(--gplui-magenta);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
}
.gpl-ui .gpl-recent-news.gplui-archive .gplui-archive__year-label::before { content: none; display: none; }
.gpl-ui .gplui-archive__list {
	margin: 0;
	padding: 0;
	border-top: 1.5px solid var(--gplui-navy);
	list-style: none;
}
.gpl-ui .gpl-recent-news.gplui-archive li {
	position: static;
	margin: 0;
	padding: 0;
	border-radius: 0;
	border-bottom: 1px solid var(--gplui-line);
	background: none;
	list-style: none;
	transform: none;
	transition: none;
}
.gpl-ui .gpl-recent-news.gplui-archive li::before { content: none; display: none; }
.gpl-ui .gpl-recent-news.gplui-archive li:hover { background: none; transform: none; }
.gpl-ui .gpl-recent-news.gplui-archive li a.gplui-archive__row {
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr) 32px;
	gap: 12px;
	align-items: center;
	padding: 18px 6px;
	color: var(--gplui-ink);
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	text-decoration: none;
}
.gpl-ui .gpl-recent-news.gplui-archive li a.gplui-archive__row:hover,
.gpl-ui .gpl-recent-news.gplui-archive li a.gplui-archive__row:focus-visible {
	background: var(--gplui-soft);
	color: var(--gplui-ink);
	text-decoration: none;
}
.gplui-archive__date { color: var(--gplui-navy); font-size: 14px; font-weight: 700; }
.gplui-archive__body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.gplui-archive__title { color: var(--gplui-navy); font-size: 16px; font-weight: 700; line-height: 1.4; }
.gplui-archive__tags { display: flex; flex-wrap: wrap; gap: 6px; }
.gplui-archive__tag {
	padding: 1px 9px;
	border-radius: 999px;
	background: var(--gplui-chip);
	color: var(--gplui-navy);
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1.8;
	text-transform: uppercase;
}
.gplui-archive__arrow { color: var(--gplui-magenta); font-size: 20px; text-align: right; transition: transform .15s ease; }
.gplui-archive__row:hover .gplui-archive__arrow { transform: translateX(3px); }
.gpl-ui .gplui-archive a:focus-visible { outline: 2px solid var(--gplui-magenta); outline-offset: 2px; }

/* Pods pagination */
.gpl-ui .gplui-archive__pager {
	margin: 8px 0 0 132px;
	padding: 0;
	border: 0;
}
.gpl-ui .gplui-archive__pager .pods-pagination-advanced { display: flex; flex-wrap: wrap; gap: 6px; }
.gpl-ui .gplui-archive__pager a,
.gpl-ui .gplui-archive__pager .pods-pagination-current {
	display: inline-block;
	min-width: 36px;
	padding: 6px 12px;
	border: 1px solid var(--gplui-line);
	border-radius: 8px;
	background: #fff;
	color: var(--gplui-navy) !important;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
	text-decoration: none !important;
	transform: none;
}
.gpl-ui .gplui-archive__pager .pods-pagination-current { border-color: var(--gplui-navy); background: var(--gplui-navy); color: #fff !important; }
.gpl-ui .gplui-archive__pager a:hover,
.gpl-ui .gplui-archive__pager a:focus-visible { border-color: var(--gplui-navy); background: var(--gplui-soft); }
.gpl-ui .gplui-archive__pager a::after { content: none; }

@media (max-width: 700px) {
	.gpl-ui .gplui-archive__year { grid-template-columns: minmax(0, 1fr); }
	.gpl-ui .gpl-recent-news.gplui-archive .gplui-archive__year-label { padding: 0 0 8px; font-size: 24px; }
	.gpl-ui .gpl-recent-news.gplui-archive li a.gplui-archive__row { grid-template-columns: 64px minmax(0, 1fr) 18px; padding: 14px 4px; }
	.gpl-ui .gplui-archive__pager { margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
	.gplui-archive__arrow { transition: none; }
}

/* Panel ----------------------------------------------------------------- */
.gplui-panel {
	overflow: hidden;
	margin: 0 0 32px;
	background: #fff;
	border: 1px solid var(--gplui-line);
	border-radius: var(--gplui-radius);
	box-shadow: 0 6px 24px rgba(10, 10, 112, .08);
	color: var(--gplui-ink);
	font-size: 14px;
	line-height: 1.5;
}
.gplui-panel__top {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px 22px;
	background: var(--gplui-panel-top);
	color: #fff;
}
.gplui-code {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 10px;
	background: var(--gplui-magenta);
	color: #fff;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: .02em;
}
.gplui-panel__id { flex: 1; min-width: 0; }
.gplui-eyebrow {
	margin: 0 0 2px;
	color: rgba(255, 255, 255, .78);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.gplui-panel__name {
	margin: 0;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
}
.gplui-tiles {
	flex: none;
	width: 110px;
	height: auto;
}
.gplui-tiles .is-off { fill: rgba(255, 255, 255, .85); }
.gplui-tiles .is-on { fill: var(--gplui-magenta); }

/* Counts */
.gplui-stats {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin: 0;
	border-bottom: 1px solid var(--gplui-line);
}
.gplui-stat {
	display: flex;
	flex-direction: column-reverse;
	padding: 12px 22px 14px;
}
.gplui-stat + .gplui-stat { border-left: 1px solid var(--gplui-line); }
.gplui-stat dt {
	margin: 0;
	font-size: 12px;
	font-weight: 700;
	color: var(--gplui-ink);
}
.gplui-stat dd {
	margin: 0 0 2px;
	color: var(--gplui-magenta);
	font-size: 22px;
	font-weight: 700;
	line-height: 1.2;
}

/* Groups and bills */
.gplui-panel__body { padding: 6px 22px 8px; }
.gplui-group { margin: 14px 0 16px; }
.gplui-group__title {
	margin: 0 0 10px;
	color: var(--gplui-muted);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.gplui-bill {
	padding: 14px 16px;
	border-radius: 10px;
}
.gplui-bill-wrap--state .gplui-bill { background: var(--gplui-soft); }
.gplui-bill-wrap--federal .gplui-bill { border: 1px solid var(--gplui-line); background: #fff; }
.gplui-bill + .gplui-bill { margin-top: 10px; }
.gplui-bill__head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 10px;
	margin-bottom: 4px;
}
.gplui-bill__no {
	color: #2a5bb7;
	font-size: 14px;
	font-weight: 700;
	text-decoration: underline;
}
.gplui-bill__date {
	margin-left: auto;
	color: var(--gplui-muted);
	font-size: 11px;
	white-space: nowrap;
}
.gplui-status {
	display: inline-block;
	padding: 1px 8px;
	border-radius: 999px;
	background: var(--gplui-chip);
	color: var(--gplui-navy);
	font-size: 9.5px;
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1.8;
	text-transform: uppercase;
}
.gplui-status--passed { background: #e3f3e8; color: #1d6b3a; }
.gplui-status--crossed-over { background: #fff1d6; color: #7a4b00; }
.gplui-status--introduced { background: #e8f1fb; color: #1d4f8a; }
.gplui-bill__cat {
	margin: 0 0 6px;
	color: var(--gplui-muted);
	font-size: 11px;
}
.gplui-bill__sum {
	margin: 0;
	font-size: 12.5px;
	line-height: 1.6;
}
.gplui-bill-wrap--federal .gplui-bill__sum {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	overflow: hidden;
}
.gplui-none {
	margin: 0;
	padding: 12px 16px;
	border-radius: 10px;
	background: var(--gplui-soft);
	color: var(--gplui-muted);
	font-size: 13px;
}

/* View all links */
.gplui-viewall {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 10px;
	padding: 2px 0;
	color: var(--gplui-navy);
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
}
.gplui-viewall span { transition: transform .15s ease; }
.gplui-viewall:hover,
.gplui-viewall:focus-visible { color: var(--gplui-magenta); text-decoration: underline; }
.gplui-viewall:hover span { transform: translateX(3px); }

/* Footer button */
.gplui-panel__foot {
	padding: 16px 22px 20px;
	border-top: 1px solid var(--gplui-line);
}
.gplui-btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	box-sizing: border-box;
	padding: 12px 18px;
	border-radius: 10px;
	background: var(--gplui-magenta);
	color: #fff;
	text-decoration: none;
	box-shadow: 0 2px 8px rgba(194, 24, 91, .25);
	transition: background-color .15s ease, box-shadow .15s ease;
}
.gplui-btn__text {
	display: flex;
	flex-direction: column;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
}
.gplui-btn__sub {
	font-size: 11.5px;
	font-weight: 400;
	opacity: .88;
}
.gplui-btn__icon {
	flex: none;
	transition: transform .15s ease;
}
.gplui-btn:hover,
.gplui-btn:focus-visible {
	background: #a3134b;
	color: #fff;
	box-shadow: 0 4px 14px rgba(194, 24, 91, .32);
}
.gplui-btn:hover .gplui-btn__icon { transform: translateX(3px); }

.gplui-panel a:focus-visible {
	outline: 2px solid var(--gplui-magenta);
	outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
	.gplui-viewall span, .gplui-btn, .gplui-btn__icon { transition: none; }
}

/* Responsive ------------------------------------------------------------ */
@media (max-width: 900px) {
	.gplui-hero__inner { flex-direction: column; align-items: stretch; }
	.gplui-switch { min-width: 0; width: 100%; }
	.gplui-hero__title { font-size: 28px; }
	.gplui-layout,
	.gplui-layout--state {
		grid-template-columns: minmax(0, 1fr);
		gap: 24px;
	}
	.gplui-aside { max-width: 680px; }
}
@media (max-width: 480px) {
	.gplui-panel__top { padding: 16px; gap: 12px; }
	.gplui-tiles { display: none; }
	.gplui-panel__body { padding: 4px 14px 6px; }
	.gplui-stat { padding: 10px 14px 12px; }
	.gplui-bill { padding: 12px; }
	.gplui-bill__date { margin-left: 0; width: 100%; }
	.gplui-panel__foot { padding: 12px 14px 14px; }
}
@media print {
	.gplui-switch { display: none; }
	.gplui-hero { background: none; color: #000; }
	.gplui-aside { display: none; }
	.gplui-hero__title, .gplui-breadcrumb a, .gplui-pill { color: #000; }
	.gplui-panel { box-shadow: none; }
	.gplui-btn { box-shadow: none; }
}
