/*
Theme Name: Roosevelt Theme
Theme URI: https://example.com/
Author: Roosevelt Team
Author URI: https://example.com/
Description: A modern, accessible, Gutenberg-first WordPress theme
designed for hybrid and headless implementations.
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 8.2
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: roosevelt-theme
Tags: accessibility-ready, block-styles, custom-logo, featured-images,
translation-ready
*/

:root {
	--roosevelt-color-background: #fff;
	--roosevelt-color-foreground: #141414;
	--roosevelt-color-muted: #5a5a5f;
	--roosevelt-color-primary: #92004d;
	--roosevelt-color-primary-dark: #92004d;
	--roosevelt-color-surface: #f5f5f5;
	--roosevelt-color-border: #e5e5e5;
	--roosevelt-content-width: 45rem;
	--roosevelt-wide-width: 75rem;
	--roosevelt-spacing: clamp(1rem, 2vw, 2rem);
	--roosevelt-radius: 0.25rem;
	--roosevelt-focus-ring: 0 0 0 3px #fff, 0 0 0 6px #92004d;
	--roosevelt-brand: #92004d;
	--roosevelt-brand-dark: #92004d;
	--roosevelt-yellow: #fedc00;
	--roosevelt-ink: #141414;
	--roosevelt-muted-ink: #5a5a5f;
	--roosevelt-home-inner: min(calc(100% - 6.25rem), var(--roosevelt-wide-width));
	--roosevelt-home-gray: #f1f2f3;
	--roosevelt-home-shadow: 0 1.2rem 2.4rem rgba(20, 20, 20, 0.13);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	scroll-padding-block-start: calc(7.5rem + var(--roosevelt-admin-bar-offset, 0px));
	scroll-padding-block-end: 6rem;
}

@media (prefers-reduced-motion: reduce) {

	* {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}

	html {
		scroll-behavior: auto;
	}

	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

body {
	margin: 0;
	background: var(--roosevelt-color-background);
	color: var(--roosevelt-color-foreground);
	font-family: var(--roosevelt-font-family, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
	font-size: 1rem;
	line-height: 1.6;
}

@media all {

	.roosevelt-loader {
		position: fixed;
		inset: 0;
		z-index: 10000;
		display: grid;
		place-items: center;
		background: var(--roosevelt-color-background);
		opacity: 1;
		visibility: visible;
		transition: opacity 220ms ease, visibility 0s linear 220ms;
	}
}

@media all {

	html.roosevelt-loading body > :not(.roosevelt-loader) {
		visibility: hidden;
	}
}

@media all {

	.roosevelt-loader__mark {
		position: relative;
		display: grid;
		width: 9rem;
		height: 9rem;
		place-items: center;
	}

	.roosevelt-loader__ring {
		position: absolute;
		inset: 0;
		border: 3px solid var(--roosevelt-color-border);
		border-top-color: var(--roosevelt-brand);
		border-right-color: var(--roosevelt-yellow);
		border-radius: 50%;
		animation: roosevelt-loader-spin 1s linear infinite;
	}

	.roosevelt-loader__logo {
		position: relative;
		z-index: 1;
		display: block;
		width: 7.25rem;
		height: auto;
		animation: roosevelt-loader-pulse 1s ease-in-out infinite;
	}

	.roosevelt-loader.is-hidden {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}
}

@keyframes roosevelt-loader-spin {

	to {
		transform: rotate(360deg);
	}
}

@keyframes roosevelt-loader-pulse {

	0%,
	100% {
		opacity: 0.78;
		transform: scale(0.96);
	}

	50% {
		opacity: 1;
		transform: scale(1);
	}
}

@media all {

	html:not(.js) .roosevelt-loader {
		display: none;
	}
}

a {
	color: var(--roosevelt-color-primary);
}

a:hover,
a:focus {
	color: var(--roosevelt-color-primary-dark);
}

input,
textarea,
select {
	max-width: 100%;
	border: 1px solid var(--roosevelt-color-border);
	border-radius: var(--roosevelt-radius);
	padding: 0.625rem 0.75rem;
	font: inherit;
}

button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
	border: 0;
	border-radius: var(--roosevelt-radius);
	background: var(--roosevelt-color-primary);
	color: #fff;
	cursor: pointer;
	padding: 0.625rem 1rem;
	font: inherit;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
	outline: 0;
	box-shadow: var(--roosevelt-focus-ring);
}

iframe:focus-visible {
	outline: 0;
	box-shadow: var(--roosevelt-focus-ring);
}

:where(a, button, input, textarea, select, [tabindex]):focus-visible {
	scroll-margin-block: 7.5rem 6rem;
	scroll-margin-inline: 4rem;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

.site {
	display: flex;
	width: 100%;
	max-width: none;
	min-height: 100vh;
	flex-direction: column;
	margin-inline: 0;
}

.site-main {
	flex: 1;
	padding-block: clamp(2rem, 5vw, 5rem);
}

.site-header,
.site-footer {
	border-block: 1px solid var(--roosevelt-color-border);
	background: var(--roosevelt-color-surface);
}

.site-header__inner,
.site-footer__inner {
	width: min(calc(100% - 2rem), var(--roosevelt-wide-width));
	margin-inline: auto;
	padding-block: 1rem;
}

.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
}

.site-branding {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.site-title {
	margin: 0;
	font-size: 1.25rem;
	line-height: 1.2;
}

.site-title a {
	color: inherit;
	text-decoration: none;
}

.site-description {
	margin: 0.25rem 0 0;
	color: var(--roosevelt-color-muted);
	font-size: 0.875rem;
}

.custom-logo-link {
	display: block;
}

.custom-logo {
	max-height: 4rem;
	width: auto;
}

.primary-navigation .menu {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.primary-navigation a {
	text-decoration-thickness: 0.1em;
	text-underline-offset: 0.2em;
}

.entry-container,
.page-container {
	width: min(calc(100% - 2rem), var(--roosevelt-content-width));
	margin-inline: auto;
}

.alignwide {
	width: min(calc(100% - 2rem), var(--roosevelt-wide-width));
	margin-inline: auto;
}

.alignfull {
	width: 100%;
}

.entry {
	margin-block: 0 4rem;
}

.entry-header {
	margin-block-end: 1.5rem;
}

.entry-title {
	margin-block: 0 0.5rem;
	font-size: clamp(2rem, 5vw, 3.5rem);
	line-height: 1.1;
}

.entry-title a {
	color: inherit;
	text-decoration: none;
}

.entry-meta,
.entry-footer {
	color: var(--roosevelt-color-muted);
	font-size: 0.9375rem;
}

.entry-meta a,
.entry-footer a {
	color: inherit;
}

.entry-content > * {
	margin-block-start: 1.5rem;
	margin-block-end: 0;
}

.entry-content > :first-child {
	margin-block-start: 0;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	line-height: 1.05;
}

.post-thumbnail {
	display: block;
	margin-block-end: 1.5rem;
}

.post-thumbnail img {
	border-radius: var(--roosevelt-radius);
}

.navigation {
	margin-block-start: 2rem;
}

.navigation .nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 1rem;
}

.comment-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.comment-list .comment {
	margin-block: 1.5rem;
	padding: 1rem;
	border: 1px solid var(--roosevelt-color-border);
	border-radius: var(--roosevelt-radius);
}

.comment-meta {
	color: var(--roosevelt-color-muted);
	font-size: 0.875rem;
}

.comment-content a {
	overflow-wrap: break-word;
}

.comment-respond {
	margin-block-start: 2rem;
}

button:hover,
button:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
	background: #92004d;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	z-index: 100000;
	top: 0.5rem;
	left: 0.5rem;
	display: block;
	width: auto;
	height: auto;
	clip: auto !important;
	background: #fff;
	color: var(--roosevelt-color-foreground);
	padding: 0.75rem 1rem;
	box-shadow: var(--roosevelt-focus-ring);
}

/* Roosevelt landing page system. */
/* stylelint-disable no-descending-specificity */

@media all {

	.page-container--home,
	.page-container--roosevelt {
		width: 100%;
		margin: 0;
	}

	.home .site-main,
	.page-container--home .entry,
	.page-container--home .entry-content,
	.page-container--roosevelt .entry,
	.page-container--roosevelt .entry-content {
		padding-block: 0;
		margin: 0;
	}

	.page-container:has(.roosevelt-institutional-page) {
		width: 100%;
		margin: 0;
	}

	.page-container:has(.roosevelt-institutional-page) .entry,
	.page-container:has(.roosevelt-institutional-page) .entry-content {
		padding-block: 0;
		margin: 0;
	}
}

/* Full-bleed Roosevelt pages own the vertical rhythm below the header. */
.site-main:has(.page-container--roosevelt) {
	padding-block: 0;
}

@media all {

	.site-main:has(.roosevelt-institutional-page) {
		padding-block: 0;
	}
}

@media all {

	.site-main:has(.roosevelt-news-article-page) {
		padding-block: 0;
	}
}

@media all {

	.site-main:has(.roosevelt-agenda-page),
	.site-main:has(.roosevelt-agenda-event) {
		padding-block: 0;
	}
}

.page-container--home .entry-content > *,
.page-container--roosevelt .entry-content > * {
	margin-block: 0;
}

.page-container--home .post-thumbnail,
.page-container--home .entry-header,
.page-container--roosevelt .post-thumbnail,
.page-container--roosevelt .entry-header {
	display: none;
}

@media all {

	.roosevelt-home,
	.roosevelt-home *,
	.roosevelt-news-page,
	.roosevelt-news-page *,
	.roosevelt-career-page,
	.roosevelt-career-page * {
		font-family: var(--roosevelt-font-family, Montserrat, "Avenir Next", "Segoe UI", sans-serif);
	}

	.roosevelt-home {
		color: var(--roosevelt-ink);
		width: 100%;
		max-width: none;
		margin-inline: 0;
		overflow: hidden;
	}

	.roosevelt-home__inner {
		width: var(--roosevelt-home-inner);
		margin-inline: auto;
	}
}

@media all {

	.roosevelt-header {
		position: sticky;
		top: var(--roosevelt-admin-bar-offset, 0px);
		z-index: 1000;
		border: 0;
		background: #fff;
		transition: box-shadow 180ms ease;
	}
}

body.admin-bar {
	--roosevelt-admin-bar-offset: 32px;
}

@media (max-width: 782px) {

	body.admin-bar {
		--roosevelt-admin-bar-offset: 46px;
	}
}

@media all {

	.roosevelt-header__topbar {
		min-height: 2rem;
		background: var(--roosevelt-brand-dark);
		color: #fff;
	}

	.roosevelt-header__topbar-links {
		display: flex;
		align-items: stretch;
		width: 100%;
		min-height: 2rem;
		margin: 0;
		padding: 0 3.1rem;
		overflow-x: auto;
		list-style: none;
		scrollbar-width: none;
	}

	.roosevelt-header__inner {
		display: flex;
		align-items: stretch;
		justify-content: space-between;
		min-height: 5.2rem;
		padding-left: 3.1rem;
		transition: min-height 180ms ease;
	}

	.roosevelt-header__brand {
		display: flex;
		align-items: center;
		min-width: 15rem;
		padding-bottom: 6px;
	}

	.roosevelt-header__actions {
		display: flex;
		align-items: stretch;
		gap: 1.8rem;
	}

	.roosevelt-header__search,
	.roosevelt-header__language,
	.roosevelt-header__admission,
	.roosevelt-header__menu-toggle {
		display: flex;
		align-items: center;
		justify-content: center;
		border: 0;
		border-radius: 0;
		color: var(--roosevelt-ink);
		font-size: 0.75rem;
		font-weight: 700;
		line-height: 1;
		text-decoration: none;
		text-transform: uppercase;
	}

	.roosevelt-header__search {
		gap: 0.45rem;
	}

	.roosevelt-header__language {
		display: flex;
		align-items: center;
		gap: 0.1rem;
		white-space: nowrap;
	}

	.roosevelt-header__admission {
		min-width: 10.1rem;
		padding-inline: 1.5rem;
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-header__menu-toggle {
		gap: 0.8rem;
		min-width: 9.2rem;
		padding-inline: 1.5rem;
		background: var(--roosevelt-yellow);
	}

	.roosevelt-header__hamburger {
		display: grid;
		gap: 0.18rem;
		width: 1.2rem;
	}

	.roosevelt-header__topbar-links::-webkit-scrollbar {
		display: none;
	}

	.roosevelt-header__topbar-links li {
		display: flex;
		flex: 0 0 auto;
		align-items: stretch;
	}

	.roosevelt-header__topbar-links a {
		display: flex;
		align-items: center;
		min-height: 2rem;
		padding: 0 0.85rem;
		color: inherit;
		font-size: 0.66rem;
		font-weight: 600;
		line-height: 1;
		text-decoration: none;
		transition: color 160ms ease, background-color 160ms ease;
	}

	.roosevelt-header__brand img {
		width: 10.6rem;
		height: auto;
		transition: width 180ms ease;
	}

	.roosevelt-header__language button {
		display: inline-flex;
		min-width: 2.5rem;
		min-height: 2.5rem;
		flex: 0 0 auto;
		align-items: center;
		justify-content: center;
		padding: 0;
		border: 0;
		background: transparent;
		color: inherit;
		cursor: pointer;
		font: inherit;
		font-weight: 800;
	}

	.roosevelt-header__hamburger i {
		display: block;
		height: 0.12rem;
		background: currentcolor;
		transform-origin: center;
		transition: transform 180ms ease, opacity 180ms ease;
	}

	.roosevelt-header__topbar-links li + li {
		border-left: 1px solid rgba(255, 255, 255, 0.24);
	}

	.roosevelt-header.is-scrolled {
		box-shadow: 0 0.35rem 1rem rgba(20, 20, 20, 0.16);
	}

	.roosevelt-header__admission + .roosevelt-header__menu-toggle {
		margin-left: -1.8rem;
	}

	.roosevelt-header__search:hover,
	.roosevelt-header__search:focus,
	.roosevelt-header__admission:hover,
	.roosevelt-header__admission:focus {
		color: inherit;
	}

	.roosevelt-header__admission:hover,
	.roosevelt-header__admission:focus {
		background: var(--roosevelt-brand-dark);
		color: #fff;
	}

	.roosevelt-header__menu-toggle:hover,
	.roosevelt-header__menu-toggle:focus {
		background: #fedc00;
		color: var(--roosevelt-ink);
	}

	.roosevelt-header__topbar-links a:hover,
	.roosevelt-header__topbar-links a:focus-visible {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-header__topbar-links a:focus-visible {
		outline: 2px solid var(--roosevelt-yellow);
		outline-offset: -3px;
	}

	.roosevelt-header__language button:hover,
	.roosevelt-header__language button:focus-visible,
	.roosevelt-header__language button.is-active {
		color: var(--roosevelt-brand);
	}

	.roosevelt-header__language button:focus-visible {
		outline: 2px solid currentcolor;
		outline-offset: 3px;
	}

	.roosevelt-header__topbar-links li:first-child a {
		padding-left: 0;
	}

	.roosevelt-header.is-scrolled .roosevelt-header__inner {
		min-height: 4.35rem;
	}

	.roosevelt-header.is-scrolled .roosevelt-header__brand img {
		width: 9.4rem;
	}
}

/* Expanded navigation keeps WordPress menu hierarchy intact. */
@media all {

	.roosevelt-header__menu {
		position: absolute;
		inset: 100% 0 auto;
		z-index: 5;
		max-height: calc(100dvh - 104px);
		overflow-y: auto;
		padding: 2.5rem 3.1rem;
		border-top: 1px solid #eee;
		background: #fff;
		box-shadow: 0 24px 48px #07142126;
		animation: roosevelt-hero-copy-in 350ms ease both;
	}
}

@media all {

	.roosevelt-mega__inner {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 19rem;
		gap: 3rem;
		max-width: 1400px;
		margin: auto;
	}

	.roosevelt-mega__eyebrow {
		margin: 0 0 1.5rem;
		color: var(--roosevelt-brand);
		font-size: 0.68rem;
		font-weight: 800;
	}

	.roosevelt-mega__links {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: start;
		gap: 1rem 2rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-mega__links li {
		position: relative;
		min-width: 0;
		list-style: none;
	}

	.roosevelt-mega__links > li:has(ul) {
		grid-row: span 4;
	}
}

@media all {

	.roosevelt-header__menu a {
		display: block;
		padding: 0.6rem 0;
		color: var(--roosevelt-ink);
		font-size: 0.9rem;
		font-weight: 700;
		line-height: 1.4;
		text-decoration: none;
	}

	.roosevelt-header__menu a:hover {
		color: var(--roosevelt-brand);
	}
}

@media all {

	.roosevelt-mega__links li:has(> button) > a {
		padding-right: 2.5rem;
	}
}

@media all {

	.roosevelt-header__menu ul ul a {
		font-size: 0.78rem;
		font-weight: 450;
		color: #55515a;
	}

	.roosevelt-header__menu .sub-menu,
	.roosevelt-header__menu .roosevelt-header__sub-menu {
		margin: 0;
		padding: 0.4rem 0 0.4rem 0.8rem;
		border-left: 2px solid #eee;
	}
}

@media all {

	.roosevelt-mega__expand {
		position: absolute;
		top: 0.2rem;
		right: 0;
		width: 2.25rem;
		height: 2.25rem;
		padding: 0;
		border: 0;
		border-radius: 50%;
		background: #f6f3f5;
		color: var(--roosevelt-brand);
		cursor: pointer;
		font-size: 1.25rem;
	}

	.roosevelt-mega__notice {
		align-self: start;
		padding: 1.75rem;
		border-top: 4px solid var(--roosevelt-yellow);
		background: #f8f4f6;
	}

	.roosevelt-mega__notice h2 {
		margin: 0 0 1rem;
		font-size: 1.55rem;
		line-height: 1.15;
	}
}

@media all {

	:where(.roosevelt-header__menu.has-mega-navigation) .roosevelt-mega__notice h2 {
		color: var(--roosevelt-color-background);
	}
}

@media all {

	.roosevelt-mega__carousel-viewport {
		position: relative;
		aspect-ratio: 1.55;
		border-radius: 0.75rem;
		background: #e8e4e6;
		overflow: hidden;
	}

	.roosevelt-mega__notice > .roosevelt-mega__eyebrow {
		margin-bottom: 1rem;
	}
}

@media all {

	.roosevelt-header__menu .roosevelt-mega__slide {
		position: absolute;
		inset: 0;
		display: block;
		width: 100%;
		height: 100%;
		padding: 0;
		border-radius: 0.75rem;
		line-height: 0;
		overflow: hidden;
	}
}

@media all {

	.roosevelt-mega__carousel-controls {
		display: none;
		align-items: center;
		justify-content: space-between;
		gap: 0.8rem;
		padding-top: 0.75rem;
	}

	.roosevelt-mega__carousel-arrow {
		display: grid;
		width: 2rem;
		height: 2rem;
		flex: 0 0 2rem;
		place-items: center;
		padding: 0;
		border: 1px solid #e5e5e5;
		border-radius: 50%;
		background: #fff;
		color: var(--roosevelt-brand);
		cursor: pointer;
		font-size: 0.9rem;
		transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
	}

	.roosevelt-mega__carousel-dots {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 0.4rem;
	}

	.roosevelt-mega__carousel-dot {
		display: grid;
		width: 1.5rem;
		height: 1.5rem;
		flex: 0 0 1.5rem;
		place-items: center;
		padding: 0;
		border: 0;
		border-radius: 999px;
		background: transparent;
		cursor: pointer;
	}

	.roosevelt-mega__slide img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 280ms ease;
	}

	.roosevelt-mega__carousel-dot::before {
		width: 0.5rem;
		height: 0.5rem;
		border-radius: inherit;
		background: #cfc5ca;
		content: "";
		transition: width 160ms ease, background-color 160ms ease;
	}

	.roosevelt-mega__slide:focus-visible {
		outline: 3px solid var(--roosevelt-brand);
		outline-offset: -3px;
	}

	.roosevelt-mega__carousel-arrow:hover,
	.roosevelt-mega__carousel-arrow:focus {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-mega__carousel-arrow:focus-visible,
	.roosevelt-mega__carousel-dot:focus-visible {
		outline: 3px solid var(--roosevelt-brand);
		outline-offset: 3px;
		box-shadow: 0 0 0 2px #fff, 0 0 0 5px var(--roosevelt-brand);
	}

	.roosevelt-mega__carousel-dot:hover,
	.roosevelt-mega__carousel-dot:focus {
		background: transparent;
	}

	.roosevelt-mega__slide:hover img,
	.roosevelt-mega__slide:focus-visible img {
		transform: scale(1.035);
	}

	.roosevelt-mega__carousel-dot.is-active::before {
		width: 1.2rem;
		background: var(--roosevelt-brand);
	}

	.roosevelt-mega__carousel-dot:hover::before,
	.roosevelt-mega__carousel-dot:focus-visible::before {
		background: var(--roosevelt-brand);
	}

	html.js .roosevelt-mega__slide {
		display: none;
	}

	.roosevelt-mega__carousel.is-ready .roosevelt-mega__carousel-controls {
		display: flex;
	}

	html.js .roosevelt-mega__slide.is-active {
		display: block;
	}

	html:not(.js) .roosevelt-mega__slide + .roosevelt-mega__slide {
		margin-top: 0.75rem;
	}
}

@media all {

	html:not(.js) .roosevelt-header__menu .roosevelt-mega__slide {
		position: relative;
		inset: auto;
		height: auto;
		aspect-ratio: 1.55;
	}
}

@media all {

	.roosevelt-search-modal {
		width: min(55rem, calc(100% - 2rem));
		max-width: 55rem;
		height: auto;
		max-height: min(42rem, calc(100dvh - 2rem));
		margin: auto;
		padding: 0;
		border: 0;
		border-radius: 1.35rem;
		background: transparent;
		color: var(--roosevelt-ink);
		overflow: visible;
	}

	.roosevelt-search-modal:not([open]) {
		display: none;
	}
}

@media all {

	body.roosevelt-search-modal-open {
		overflow: hidden;
	}
}

@media all {

	.roosevelt-search-modal__panel {
		position: relative;
		display: flex;
		max-height: inherit;
		min-height: min(26rem, calc(100dvh - 2rem));
		flex-direction: column;
		justify-content: center;
		padding: clamp(2.25rem, 5.5vw, 4rem);
		border: 1px solid rgba(255, 255, 255, 0.76);
		border-radius: inherit;
		background: var(--roosevelt-color-background);
		box-shadow: 0 2rem 6rem rgba(7, 13, 20, 0.36);
		overflow-y: auto;
		overscroll-behavior: contain;
		scrollbar-color: var(--roosevelt-brand) transparent;
		scrollbar-width: thin;
	}

	.roosevelt-search-modal__close {
		position: absolute;
		top: 1.15rem;
		right: 1.15rem;
		display: grid;
		width: 2.6rem;
		height: 2.6rem;
		place-items: center;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 50%;
		background: var(--roosevelt-color-background);
		color: var(--roosevelt-ink);
		cursor: pointer;
		font-size: 1.45rem;
		line-height: 1;
		transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
	}

	.roosevelt-search-modal__heading {
		max-width: 43rem;
		margin-bottom: 1.75rem;
	}

	.roosevelt-search-modal__eyebrow {
		display: flex;
		align-items: center;
		gap: 0.55rem;
		margin: 0 0 0.8rem;
		color: var(--roosevelt-brand);
		font-size: 0.7rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-search-modal__title {
		max-width: 39rem;
		margin: 0;
		font-size: clamp(2rem, 5vw, 3.35rem);
		font-weight: 750;
		line-height: 1.02;
	}

	.roosevelt-search-modal__intro {
		max-width: 39rem;
		margin: 0.85rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: clamp(0.95rem, 1.7vw, 1.08rem);
		line-height: 1.55;
	}

	.roosevelt-search-modal__form {
		display: grid;
		gap: 0.6rem;
		width: 100%;
	}

	.roosevelt-search-modal__label,
	.roosevelt-search-page__form-label {
		color: var(--roosevelt-ink);
		font-size: 0.75rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-search-modal__field {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr) auto;
		align-items: center;
		gap: 0.75rem;
		min-height: 4.35rem;
		padding: 0.35rem;
		border: 1px solid #d9dfe6;
		border-radius: 0.75rem;
		background: #fff;
		transition: border-color 180ms ease, box-shadow 180ms ease;
	}

	.roosevelt-search-modal__icon,
	.roosevelt-search-page__icon {
		display: grid;
		width: 2.6rem;
		height: 2.6rem;
		place-items: center;
		color: var(--roosevelt-brand);
	}

	.roosevelt-search-modal::backdrop {
		background: rgba(20, 8, 16, 0.72);
		backdrop-filter: blur(0.45rem);
	}

	.roosevelt-search-modal__panel::before {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 0.35rem;
		border-radius: inherit;
		background: linear-gradient(90deg, var(--roosevelt-brand) 0 74%, var(--roosevelt-yellow) 74% 100%);
		content: "";
	}

	.roosevelt-search-modal__panel::-webkit-scrollbar {
		width: 0.45rem;
	}

	.roosevelt-search-modal__panel::-webkit-scrollbar-thumb {
		border-radius: 999px;
		background: var(--roosevelt-brand);
	}

	.roosevelt-search-modal__eyebrow::before {
		width: 1.45rem;
		height: 2px;
		background: var(--roosevelt-yellow);
		content: "";
	}

	.roosevelt-search-modal__icon svg,
	.roosevelt-search-page__icon svg {
		width: 1.35rem;
		height: 1.35rem;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.8;
	}

	.roosevelt-search-modal__field input,
	.roosevelt-search-page__field input {
		min-width: 0;
		width: 100%;
		min-height: 3.45rem;
		padding: 0.75rem 0.25rem;
		border: 0;
		border-radius: 0;
		background: transparent;
		color: var(--roosevelt-ink);
		font: inherit;
		font-size: 1rem;
		outline: 0;
	}

	.roosevelt-search-modal__close:hover,
	.roosevelt-search-modal__close:focus-visible {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
		transform: rotate(90deg);
	}

	.roosevelt-search-modal__field:focus-within {
		border-color: var(--roosevelt-brand);
		box-shadow: 0 0 0 4px rgba(146, 0, 77, 0.11);
	}

	.roosevelt-search-modal__field input:focus,
	.roosevelt-search-page__field input:focus {
		box-shadow: none;
	}
}

@media all {

	.roosevelt-search-submit {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.7rem;
		min-height: 3.5rem;
		padding: 0.8rem 1.35rem;
		border: 1px solid var(--roosevelt-brand);
		border-radius: 0.55rem;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 0.88rem;
		font-weight: 750;
		white-space: nowrap;
		transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.roosevelt-search-submit:hover,
	.roosevelt-search-submit:focus-visible {
		border-color: var(--roosevelt-brand-dark);
		background: var(--roosevelt-brand-dark);
		color: #fff;
		transform: translateY(-1px);
	}

	.roosevelt-search-submit:focus-visible {
		outline: 3px solid var(--roosevelt-brand);
		outline-offset: 3px;
	}
}

@media all {

	.roosevelt-search-modal__popular {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 0.65rem 1rem;
		margin-top: 1.2rem;
	}

	.roosevelt-search-modal__popular-label {
		color: var(--roosevelt-muted-ink);
		font-size: 0.76rem;
		font-weight: 700;
	}

	.roosevelt-search-modal__popular-links {
		display: flex;
		flex-wrap: wrap;
		gap: 0.45rem;
	}

	.roosevelt-search-modal__popular-links a {
		display: inline-flex;
		align-items: center;
		min-height: 2rem;
		padding: 0.3rem 0.75rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 999px;
		background: #fff;
		color: var(--roosevelt-ink);
		font-size: 0.78rem;
		font-weight: 650;
		text-decoration: none;
		transition: border-color 160ms ease, color 160ms ease, background-color 160ms ease;
	}

	.roosevelt-search-modal__popular-links a:hover,
	.roosevelt-search-modal__popular-links a:focus-visible {
		border-color: var(--roosevelt-brand);
		background: #fbf4f8;
		color: var(--roosevelt-brand);
	}
}

@media all {

	.roosevelt-search-page {
		min-height: 55vh;
		padding-block: clamp(2rem, 5vw, 4.5rem) clamp(4rem, 7vw, 6.5rem);
		background: linear-gradient(180deg, #f8f6f7 0, #fff 44rem);
	}

	.roosevelt-search-page__inner {
		width: min(calc(100% - 2rem), var(--roosevelt-wide-width));
		margin-inline: auto;
	}

	.roosevelt-search-page__hero {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 1.1fr) minmax(20rem, 0.9fr);
		align-items: center;
		gap: clamp(2rem, 5vw, 4.5rem);
		min-height: 20rem;
		padding: clamp(2rem, 5vw, 4.25rem);
		border: 1px solid var(--roosevelt-color-border);
		border-top: 4px solid var(--roosevelt-brand);
		border-radius: 1.1rem;
		background: linear-gradient(118deg, #f8f1f5 0%, #fff 72%);
		box-shadow: 0 1.25rem 3.5rem rgba(35, 0, 19, 0.07);
		isolation: isolate;
		overflow: hidden;
	}

	.roosevelt-search-page__hero-copy,
	.roosevelt-search-page__form {
		position: relative;
		z-index: 1;
	}

	.roosevelt-search-page__eyebrow {
		display: flex;
		align-items: center;
		gap: 0.6rem;
		margin: 0 0 0.8rem;
		color: var(--roosevelt-brand);
		font-size: 0.72rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-search-page__eyebrow-mark {
		width: 1.6rem;
		height: 2px;
		background: var(--roosevelt-yellow);
	}

	.roosevelt-search-page__title {
		max-width: 40rem;
		margin: 0;
		font-size: clamp(2.15rem, 4.5vw, 3.75rem);
		font-weight: 760;
		line-height: 1.02;
		text-wrap: balance;
	}

	.roosevelt-search-page__term {
		display: block;
		margin-top: 0.35rem;
		color: var(--roosevelt-brand);
		font-weight: 700;
		overflow-wrap: anywhere;
	}

	.roosevelt-search-page__intro {
		max-width: 40rem;
		margin: 1rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 1rem;
		line-height: 1.65;
	}

	.roosevelt-search-page__form {
		display: grid;
		gap: 0.6rem;
		padding: clamp(1.1rem, 2.3vw, 1.6rem);
		border: 1px solid rgba(229, 229, 229, 0.9);
		border-radius: 0.9rem;
		background: rgba(255, 255, 255, 0.94);
		box-shadow: 0 1rem 2.75rem rgba(20, 20, 20, 0.08);
	}

	.roosevelt-search-page__form-label {
		color: var(--roosevelt-ink);
		font-size: 0.75rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-search-page__field {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr) auto;
		align-items: center;
		gap: 0.4rem;
		min-height: 4rem;
		padding: 0.3rem;
		border: 1px solid #d9dfe6;
		border-radius: 0.7rem;
		background: #fff;
		transition: border-color 180ms ease, box-shadow 180ms ease;
	}

	.roosevelt-search-page__results {
		margin-top: clamp(2rem, 4vw, 3.5rem);
	}

	.roosevelt-search-page__toolbar {
		display: flex;
		align-items: center;
		gap: 1rem;
		margin-bottom: 1.25rem;
	}

	.roosevelt-search-page__toolbar-count {
		margin: 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.92rem;
		font-weight: 650;
	}

	.roosevelt-search-page__toolbar-mark {
		width: 2.2rem;
		height: 3px;
		border-radius: 999px;
		background: var(--roosevelt-yellow);
	}

	.roosevelt-search-page__grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.2rem;
	}

	.roosevelt-search-page__hero::after {
		position: absolute;
		top: -11rem;
		right: -6rem;
		z-index: -1;
		width: 27rem;
		height: 27rem;
		border: 1px solid rgba(146, 0, 77, 0.1);
		border-radius: 50%;
		box-shadow: 0 0 0 2.2rem rgba(146, 0, 77, 0.025), 0 0 0 4.5rem rgba(146, 0, 77, 0.02);
		content: "";
		pointer-events: none;
	}

	.roosevelt-search-page__field:focus-within {
		border-color: var(--roosevelt-brand);
		box-shadow: 0 0 0 4px rgba(146, 0, 77, 0.11);
	}

	.roosevelt-search-page__field > .roosevelt-search-submit {
		min-height: 3.25rem;
		padding-inline: 1rem;
	}
}

@media all {

	.roosevelt-search-result {
		min-width: 0;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.9rem;
		background: #fff;
		box-shadow: 0 0.65rem 1.8rem rgba(20, 20, 20, 0.045);
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
		overflow: hidden;
	}

	.roosevelt-search-result__link {
		display: flex;
		height: 100%;
		flex-direction: column;
		color: inherit;
		text-decoration: none;
	}

	.roosevelt-search-result__visual {
		position: relative;
		display: grid;
		min-height: 10.5rem;
		aspect-ratio: 1.72;
		place-items: center;
		background: radial-gradient(circle at 78% 18%, rgba(254, 220, 0, 0.22), transparent 28%), linear-gradient(135deg, #92004d, #5e0034);
		overflow: hidden;
	}

	.roosevelt-search-result__image {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 400ms ease;
	}

	.roosevelt-search-result__fallback {
		position: relative;
		z-index: 1;
		display: grid;
		width: 3.6rem;
		height: 3.6rem;
		place-items: center;
		border-radius: 1rem;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-brand);
		font-size: 2rem;
		font-weight: 800;
	}

	.roosevelt-search-result__body {
		display: flex;
		flex: 1;
		flex-direction: column;
		align-items: flex-start;
		padding: 1.25rem 1.35rem 1.35rem;
	}

	.roosevelt-search-result__meta {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 0.5rem 0.75rem;
		margin-bottom: 0.75rem;
	}

	.roosevelt-search-result__type {
		display: inline-flex;
		align-items: center;
		min-height: 1.75rem;
		padding: 0.25rem 0.65rem;
		border-radius: 999px;
		background: #f7edf2;
		color: var(--roosevelt-brand);
		font-size: 0.68rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-search-result__date {
		color: var(--roosevelt-muted-ink);
		font-size: 0.75rem;
	}

	.roosevelt-search-result__title {
		display: -webkit-box;
		margin: 0;
		font-size: clamp(1.12rem, 1.6vw, 1.35rem);
		font-weight: 720;
		line-height: 1.2;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
	}

	.roosevelt-search-result__excerpt {
		display: -webkit-box;
		margin: 0.7rem 0 1.3rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.88rem;
		line-height: 1.6;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
	}

	.roosevelt-search-result__action {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		margin-top: auto;
		color: var(--roosevelt-brand);
		font-size: 0.83rem;
		font-weight: 800;
	}

	.roosevelt-search-result__arrow {
		transition: transform 180ms ease;
	}

	.roosevelt-search-result__visual::before,
	.roosevelt-search-result__visual::after {
		position: absolute;
		width: 14rem;
		height: 14rem;
		border: 1px solid rgba(255, 255, 255, 0.16);
		border-radius: 50%;
		content: "";
	}

	.roosevelt-search-result__visual::after {
		width: 19rem;
		height: 19rem;
	}

	.roosevelt-search-result:hover,
	.roosevelt-search-result:focus-within {
		transform: translateY(-0.2rem);
		border-color: rgba(146, 0, 77, 0.35);
		box-shadow: 0 1.2rem 2.6rem rgba(20, 20, 20, 0.1);
	}

	.roosevelt-search-result__link:focus-visible {
		outline: 3px solid var(--roosevelt-brand);
		outline-offset: -4px;
	}

	.roosevelt-search-result:hover .roosevelt-search-result__image {
		transform: scale(1.035);
	}

	.roosevelt-search-result:hover .roosevelt-search-result__arrow {
		transform: translateX(0.2rem);
	}
}

@media all {

	.roosevelt-search-page .page-numbers {
		display: inline-flex;
		min-width: 2.7rem;
		min-height: 2.7rem;
		align-items: center;
		justify-content: center;
		gap: 0.45rem;
		padding: 0.55rem 0.75rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.55rem;
		background: #fff;
		color: var(--roosevelt-ink);
		font-size: 0.82rem;
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-search-page .navigation.pagination {
		margin-top: 2.5rem;
	}

	.roosevelt-search-page .page-numbers.current,
	.roosevelt-search-page a.page-numbers:hover,
	.roosevelt-search-page a.page-numbers:focus-visible {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-search-page .navigation.pagination .nav-links {
		justify-content: center;
		gap: 0.45rem;
	}
}

@media all {

	.roosevelt-search-empty {
		display: grid;
		justify-items: center;
		max-width: 52rem;
		margin: 1.5rem auto 0;
		padding: clamp(2rem, 5vw, 3.75rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: #fff;
		text-align: center;
	}

	.roosevelt-search-empty__icon {
		display: grid;
		width: 4.2rem;
		height: 4.2rem;
		place-items: center;
		border-radius: 50%;
		background: #f7edf2;
		color: var(--roosevelt-brand);
	}

	.roosevelt-search-empty__eyebrow {
		margin: 1.1rem 0 0.4rem;
		color: var(--roosevelt-brand);
		font-size: 0.7rem;
		font-weight: 800;
	}

	.roosevelt-search-empty__title {
		max-width: 38rem;
		margin: 0;
		font-size: clamp(1.7rem, 3vw, 2.5rem);
		font-weight: 750;
		line-height: 1.1;
	}

	.roosevelt-search-empty__copy {
		max-width: 36rem;
		margin: 0.85rem 0 0;
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-search-empty__home {
		display: inline-flex;
		align-items: center;
		gap: 0.7rem;
		min-height: 3rem;
		margin-top: 1.4rem;
		padding: 0.65rem 1rem;
		border-radius: 0.55rem;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 0.85rem;
		font-weight: 750;
		text-decoration: none;
	}

	.roosevelt-search-empty__icon svg {
		width: 2rem;
		height: 2rem;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-width: 2;
	}

	.roosevelt-search-empty__home:hover,
	.roosevelt-search-empty__home:focus-visible {
		background: var(--roosevelt-brand-dark);
		color: #fff;
	}
}

@media (max-width: 1020px) {

	.roosevelt-search-page__hero {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.75rem;
	}

	.roosevelt-search-page__form {
		max-width: 48rem;
	}

	.roosevelt-search-page__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {

	.roosevelt-search-modal {
		width: calc(100% - 1rem);
		max-height: calc(100dvh - 1rem);
	}

	.roosevelt-search-modal__panel {
		min-height: 0;
		justify-content: flex-start;
		padding: 4.25rem 1.2rem 1.5rem;
	}

	.roosevelt-search-modal__close {
		top: 0.8rem;
		right: 0.8rem;
	}

	.roosevelt-search-modal__heading {
		margin-bottom: 1.3rem;
	}

	.roosevelt-search-modal__field {
		grid-template-columns: auto minmax(0, 1fr);
		gap: 0.25rem;
	}

	.roosevelt-search-modal__popular {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-search-page {
		padding-block: 1.25rem 3.5rem;
	}

	.roosevelt-search-page__inner {
		width: min(calc(100% - 1rem), var(--roosevelt-wide-width));
	}

	.roosevelt-search-page__hero {
		gap: 1.35rem;
		min-height: 0;
		padding: 1.4rem;
		border-radius: 0.8rem;
	}

	.roosevelt-search-page__title {
		font-size: clamp(2rem, 9vw, 2.8rem);
	}

	.roosevelt-search-page__form {
		padding: 1rem;
	}

	.roosevelt-search-page__field {
		grid-template-columns: auto minmax(0, 1fr);
		gap: 0.2rem;
	}

	.roosevelt-search-page__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.85rem;
	}

	.roosevelt-search-result__visual {
		min-height: 0;
		aspect-ratio: 1.9;
	}

	.roosevelt-search-result__body {
		padding: 1rem 1.1rem 1.15rem;
	}

	.roosevelt-search-modal__field > .roosevelt-search-submit,
	.roosevelt-search-page__field > .roosevelt-search-submit {
		grid-column: 1 / -1;
		width: 100%;
	}

	.roosevelt-search-page .page-numbers {
		min-width: 2.45rem;
		min-height: 2.45rem;
		padding: 0.45rem;
	}

	.roosevelt-search-page .navigation.pagination .nav-links {
		gap: 0.35rem;
	}

	.roosevelt-search-page .page-numbers.prev .roosevelt-search-page__page-label,
	.roosevelt-search-page .page-numbers.next .roosevelt-search-page__page-label {
		font-size: 0;
	}

	.roosevelt-search-page .page-numbers.prev .roosevelt-search-page__page-arrow,
	.roosevelt-search-page .page-numbers.next .roosevelt-search-page__page-arrow {
		font-size: 0.8rem;
	}
}

@media all {

	.roosevelt-header__menu-toggle[aria-expanded="true"] i:first-child {
		transform: translateY(0.3rem) rotate(45deg);
	}

	.roosevelt-header__menu-toggle[aria-expanded="true"] i:nth-child(2) {
		opacity: 0;
	}

	.roosevelt-header__menu-toggle[aria-expanded="true"] i:last-child {
		transform: translateY(-0.3rem) rotate(-45deg);
	}
}

@media all {

	.roosevelt-home__hero {
		position: relative;
		height: 600px;
		min-height: 600px;
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-home__hero-slides {
		position: relative;
		height: 100%;
		min-height: 0;
	}

	.roosevelt-home__hero-slide {
		position: absolute;
		inset: 0;
		height: 100%;
		min-height: 0;
		opacity: 0;
		visibility: hidden;
		transform: none;
		transition:
			opacity 1100ms ease,
			transform 650ms cubic-bezier(0.22, 0.61, 0.36, 1),
			visibility 0s linear 650ms;
	}

	.roosevelt-home__hero-slide.is-active {
		z-index: 1;
		opacity: 1;
		visibility: visible;
		transform: translate3d(0, 0, 0) scale(1);
		transition-delay: 0s;
	}

	.roosevelt-home__hero-slide.is-leaving {
		z-index: 0;
		opacity: 0;
		visibility: visible;
		transform: none;
		transition-delay: 0s;
	}
}

@keyframes roosevelt-hero-copy-in {

	from {
		opacity: 0;
		transform: translate3d(0, 1rem, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes roosevelt-hero-copy-out {

	from {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}

	to {
		opacity: 0;
		transform: translate3d(0, -0.75rem, 0);
	}
}

@media all {

	.roosevelt-home__hero-slide.is-active .roosevelt-home__hero-copy > * {
		animation: roosevelt-hero-copy-in 850ms cubic-bezier(0.16, 1, 0.3, 1) both;
	}

	.roosevelt-home__hero-slide.is-leaving .roosevelt-home__hero-copy {
		animation: roosevelt-hero-copy-out 350ms ease both;
	}

	.roosevelt-home__hero-slide.is-active .roosevelt-home__hero-image,
	.roosevelt-home__hero-slide.is-active .roosevelt-home__hero-video {
		animation: roosevelt-hero-image-in 9s cubic-bezier(0.2, 0.5, 0.4, 1) both;
	}

	.roosevelt-home__hero-slide.is-active .roosevelt-home__hero-copy > :nth-child(2) {
		animation-delay: 150ms;
	}

	.roosevelt-home__hero-slide.is-active .roosevelt-home__hero-copy > :nth-child(3) {
		animation-delay: 300ms;
	}

	.roosevelt-home__hero-slide.is-active .roosevelt-home__hero-copy > :nth-child(4) {
		animation-delay: 450ms;
	}
}

@keyframes roosevelt-hero-image-in {

	from {
		transform: scale(1.07) translateX(0.5%);
	}

	to {
		transform: scale(1.01) translateX(0);
	}
}

@media all {

	.roosevelt-home__hero-controls::after {
		position: absolute;
		inset: auto 1rem -5px;
		height: 2px;
		background: var(--roosevelt-yellow);
		content: "";
		transform: scaleX(0);
		transform-origin: left;
	}

	.roosevelt-home__hero.is-advancing .roosevelt-home__hero-controls::after {
		animation: roosevelt-hero-progress 8s linear both;
	}
}

@keyframes roosevelt-hero-progress {

	to {
		transform: scaleX(1);
	}
}

@media all {

	.roosevelt-home__hero-media,
	.roosevelt-home__hero-shade,
	.roosevelt-home__video-media,
	.roosevelt-home__video-shade,
	.roosevelt-home__why-media,
	.roosevelt-home__why-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-home__hero-image,
	.roosevelt-home__hero-video,
	.roosevelt-home__video-image,
	.roosevelt-home__why-image {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.roosevelt-home__hero-video {
		display: block;
		pointer-events: none;
	}

	.roosevelt-home__hero-shade {
		background: linear-gradient(90deg, rgba(7, 13, 20, 0.8) 0%, rgba(7, 13, 20, 0.5) 55%, rgba(7, 13, 20, 0.15) 100%);
	}

	.roosevelt-home__hero-copy {
		max-width: 52rem;
	}

	.roosevelt-home__inner.roosevelt-home__hero-inner {
		position: relative;
		display: flex;
		height: 100%;
		min-height: 0;
		flex-direction: column;
		justify-content: center;
		padding-block: 5rem 7rem;
	}

	.roosevelt-home__hero-slide.has-video .roosevelt-home__hero-shade {
		background: linear-gradient(90deg, rgba(7, 13, 20, 0.68) 0%, rgba(7, 13, 20, 0.4) 58%, rgba(7, 13, 20, 0.16) 100%);
	}
}

@media all {

	.roosevelt-eyebrow {
		display: flex;
		align-items: center;
		gap: 0.8rem;
		margin: 0 0 1.15rem;
		font-size: 0.72rem;
		font-weight: 700;
		line-height: 1.2;
		text-transform: uppercase;
	}

	.roosevelt-eyebrow > span[aria-hidden="true"]:first-child {
		display: block;
		flex: 0 0 0.25rem;
		height: 1.05rem;
		background: var(--roosevelt-yellow);
	}
}

@media all {

	.roosevelt-eyebrow--light {
		color: #fff;
	}
}

@media all {

	.roosevelt-home__hero-title {
		max-width: 46rem;
		margin: 0;
		font-size: clamp(2.2rem, 4vw, 3.5rem);
		font-weight: 750;
		line-height: 1.07;
	}

	.roosevelt-home__hero-text {
		max-width: 40rem;
		margin: 1.2rem 0 2rem;
		font-size: 1.05rem;
		line-height: 1.45;
	}

	.roosevelt-home__hero h1 {
		max-width: 46rem;
		margin: 0;
		font-size: clamp(2.2rem, 4vw, 3.5rem);
		font-weight: 750;
		line-height: 1.07;
	}
}

@media all {

	.roosevelt-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.8rem;
		min-height: 3.35rem;
		padding: 0.9rem 2rem;
		border-radius: 0.75rem;
		font-size: 0.8rem;
		font-weight: 800;
		line-height: 1;
		text-decoration: none;
		text-transform: uppercase;
	}
}

@media all {

	.roosevelt-button--primary,
	.roosevelt-button--submit {
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-button--primary:hover,
	.roosevelt-button--primary:focus,
	.roosevelt-button--submit:hover,
	.roosevelt-button--submit:focus {
		background: var(--roosevelt-brand-dark);
		color: #fff;
	}
}

@media all {

	.roosevelt-home__hero-controls {
		position: absolute;
		bottom: 2rem;
		left: 50%;
		display: flex;
		align-items: center;
		gap: 1rem;
		padding: 0.7rem 1rem;
		border: 1px solid rgba(255, 255, 255, 0.15);
		border-radius: 1rem;
		background: rgba(15, 15, 15, 0.62);
		transform: translateX(-50%);
		z-index: 2;
	}

	.roosevelt-home__hero-control {
		display: grid;
		width: 2.6rem;
		height: 2.6rem;
		place-items: center;
		padding: 0;
		border: 1px solid rgba(255, 255, 255, 0.28);
		border-radius: 0.8rem;
		background: transparent;
		color: #fff;
		cursor: pointer;
		font-size: 1.1rem;
		transition: background-color 160ms, border-color 160ms, transform 160ms;
	}

	.roosevelt-home__hero-counter {
		min-width: 2rem;
		font-size: 0.85rem;
		font-weight: 700;
		text-align: center;
	}

	.roosevelt-home__stats {
		background: #fff;
	}

	.roosevelt-home__stats-grid {
		display: grid;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		padding-block: 3.1rem 3rem;
	}

	.roosevelt-home__hero-control:hover {
		border-color: #fff;
		background: rgba(255, 255, 255, 0.15);
		color: #fff;
	}

	.roosevelt-home__hero-control:focus-visible {
		outline: 3px solid var(--roosevelt-yellow);
		outline-offset: 3px;
	}

	html:not(.js) .roosevelt-home__hero-controls {
		display: none;
	}
}

@media all {

	.roosevelt-stat {
		display: flex;
		min-height: 4.1rem;
		flex-direction: column;
		justify-content: center;
		padding-inline: 1.1rem;
		border-left: 2px solid var(--roosevelt-brand);
	}

	.roosevelt-stat strong {
		color: var(--roosevelt-brand);
		font-size: 2.2rem;
		font-weight: 750;
		line-height: 1;
	}

	.roosevelt-stat span {
		margin-top: 0.4rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.83rem;
		line-height: 1.35;
		text-transform: uppercase;
	}
}

@media all {

	.roosevelt-home__video {
		position: relative;
		height: 38.5rem;
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-home__video-shade {
		background: rgba(4, 10, 17, 0.7);
	}

	.roosevelt-home__why-shade {
		background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.82) 0%, rgba(0, 0, 0, 0.72) 54%, rgba(0, 0, 0, 0.48) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2), transparent 64%);
	}

	.roosevelt-home__video-embed {
		width: 100%;
		height: 100%;
		border: 0;
	}

	.roosevelt-home__video-media.is-playing {
		background: #000;
	}
}

@media all {

	.roosevelt-play-button {
		position: absolute;
		top: 50%;
		left: 50%;
		display: grid;
		width: 6.1rem;
		height: 4.25rem;
		place-items: center;
		padding: 0;
		border: 0;
		border-radius: 1.15rem;
		background: #f00;
		color: #fff;
		font-size: 2rem;
		transform: translate(-50%, -50%);
	}

	.roosevelt-play-button:hover,
	.roosevelt-play-button:focus {
		background: #d90000;
		color: #fff;
		transform: translate(-50%, -50%) scale(1.05);
	}

	.roosevelt-play-button:disabled,
	.roosevelt-play-button:disabled:hover,
	.roosevelt-play-button:disabled:focus {
		background: #f00;
		color: #fff;
		cursor: default;
		opacity: 1;
		transform: translate(-50%, -50%);
	}
}

@media all {

	.roosevelt-home__section {
		padding-block: 5.25rem;
	}

	.roosevelt-home__careers {
		background: #f7f8f9;
	}
}

@media all {

	.roosevelt-section-heading {
		margin-bottom: 2.6rem;
		padding-left: 1rem;
		border-left: 2px solid var(--roosevelt-brand);
	}

	.roosevelt-section-heading h2 {
		margin: 0;
		font-size: clamp(1.8rem, 3vw, 2.4rem);
		font-weight: 500;
		line-height: 1.15;
	}

	.roosevelt-section-heading p {
		margin: 0.85rem 0 0;
		color: var(--roosevelt-ink);
		font-size: 1rem;
		line-height: 1.55;
	}
}

@media all {

	.roosevelt-careers__layout {
		display: grid;
		grid-template-columns: 42% 58%;
		box-shadow: var(--roosevelt-home-shadow);
	}

	.roosevelt-careers__tabs {
		background: var(--roosevelt-brand);
	}

	.roosevelt-careers__tab {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		min-height: 4.2rem;
		padding: 1rem 1.5rem;
		border: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
		border-radius: 0;
		background: transparent;
		color: var(--roosevelt-yellow);
		font-size: 0.87rem;
		font-weight: 600;
		line-height: 1.35;
		text-align: left;
	}

	.roosevelt-careers__panels {
		background: #fff;
	}

	.roosevelt-careers__tab span {
		font-size: 1.2rem;
	}

	.roosevelt-careers__tab:last-child {
		border-bottom: 0;
	}

	.roosevelt-careers__tab:hover,
	.roosevelt-careers__tab:focus,
	.roosevelt-careers__tab.is-active {
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-brand);
	}

	.roosevelt-careers__panel[hidden] {
		display: none;
	}
}

@keyframes roosevelt-career-panel-in {

	from {
		opacity: 0;
		transform: translateY(0.35rem);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media all {

	.roosevelt-careers__image {
		width: 100%;
		height: 20.5rem;
		object-fit: cover;
	}

	.roosevelt-careers__panel-copy {
		min-height: 18rem;
		padding: 2.3rem 2.6rem 2.5rem;
	}

	.roosevelt-careers__panel.is-active {
		animation: roosevelt-career-panel-in 360ms cubic-bezier(0.16, 1, 0.3, 1) both;
	}
}

@media all {

	.roosevelt-label {
		margin: 0 0 0.75rem;
		color: #5f6368;
		font-size: 0.68rem;
		text-transform: uppercase;
	}
}

@media all {

	.roosevelt-careers__panel h3 {
		margin: 0;
		font-size: 2rem;
		font-weight: 500;
	}

	.roosevelt-careers__panel-copy > p:not(.roosevelt-label) {
		max-width: 35rem;
		margin: 0.8rem 0 2.3rem;
		font-size: 1rem;
		line-height: 1.6;
	}
}

@media all {

	.roosevelt-text-link {
		display: inline-flex;
		align-items: center;
		gap: 0.65rem;
		color: var(--roosevelt-brand);
		font-size: 0.8rem;
		font-weight: 800;
		text-decoration: none;
		text-transform: uppercase;
	}

	.roosevelt-text-link span {
		font-size: 1.2rem;
	}

	.roosevelt-text-link:hover,
	.roosevelt-text-link:focus {
		color: var(--roosevelt-brand-dark);
	}
}

@media all {

	.roosevelt-home__alliances {
		background: #fff;
	}

	.roosevelt-home__alliances .roosevelt-section-heading > p {
		text-transform: none;
	}
}

@media all {

	.roosevelt-alliances__toolbar {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 1rem;
		margin-bottom: 0.75rem;
	}

	.roosevelt-alliances__card {
		padding: clamp(1rem, 2.4vw, 1.75rem);
		border: 1px solid rgba(255, 255, 255, 0.16);
		border-radius: 1.1rem;
		background: var(--roosevelt-brand);
		color: #fff;
		box-shadow: 0 1rem 2.5rem rgba(20, 20, 20, 0.14);
	}

	.roosevelt-alliances__controls {
		display: flex;
		flex-shrink: 0;
		gap: 0.5rem;
	}

	.roosevelt-alliances__control {
		display: inline-flex;
		width: 2.65rem;
		height: 2.65rem;
		align-items: center;
		justify-content: center;
		border: 1px solid rgba(255, 255, 255, 0.45);
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.08);
		color: #fff;
		cursor: pointer;
		font-size: 1.2rem;
		line-height: 1;
		transition: background 160ms, border-color 160ms, color 160ms;
	}

	.roosevelt-alliances__viewport {
		container-type: inline-size;
		overflow-x: auto;
		margin-inline: -0.25rem;
		padding: 0.5rem 0.25rem 0.85rem;
		scroll-behavior: smooth;
		scroll-snap-type: x mandatory;
		-ms-overflow-style: none;
		overscroll-behavior-inline: contain;
		scrollbar-width: none;
	}

	.roosevelt-alliances__track {
		display: flex;
		width: max-content;
		min-width: 100%;
		gap: 1rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-alliances__logo {
		display: flex;
		min-height: 11rem;
		flex: 0 0 clamp(14rem, 23vw, 18rem);
		align-items: center;
		flex-direction: column;
		justify-content: center;
		padding: 1.35rem;
		border: 1px solid rgba(255, 255, 255, 0.17);
		border-radius: 0.8rem;
		background: rgba(255, 255, 255, 0.035);
		scroll-snap-align: start;
		text-align: center;
	}

	.roosevelt-alliances__logo-image {
		display: block;
		width: min(100%, 11rem);
		height: 4.25rem;
		filter: brightness(0) invert(1);
		object-fit: contain;
	}

	.roosevelt-alliances__logo-mark {
		display: inline-flex;
		width: 3.3rem;
		height: 3.3rem;
		align-items: center;
		justify-content: center;
		border-radius: 0.7rem;
		background: transparent;
		color: #fff;
		font-size: 1rem;
		font-weight: 800;
	}

	.roosevelt-alliances__logo-name {
		max-width: 13rem;
		margin-top: 1rem;
		color: rgba(255, 255, 255, 0.88);
		font-size: 0.95rem;
		font-weight: 800;
		line-height: 1.3;
	}

	.roosevelt-alliances__viewport::-webkit-scrollbar {
		display: none;
	}

	.roosevelt-alliances__control:hover {
		border-color: var(--roosevelt-yellow);
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-brand-dark);
	}

	.roosevelt-alliances__control:focus-visible {
		outline: 3px solid var(--roosevelt-yellow);
		outline-offset: 3px;
	}

	.roosevelt-alliances__control:disabled {
		border-color: rgba(255, 255, 255, 0.2);
		background: rgba(255, 255, 255, 0.04);
		color: rgba(255, 255, 255, 0.55);
		cursor: not-allowed;
		opacity: 1;
	}

	.roosevelt-alliances__viewport:focus-visible {
		outline: 3px solid #fff;
		outline-offset: 4px;
		box-shadow: 0 0 0 7px var(--roosevelt-brand);
	}

	.roosevelt-alliances__logo:last-child {
		scroll-snap-align: end;
	}
}

@media all {

	.roosevelt-home__why {
		position: relative;
		min-height: 29.5rem;
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-home__why-image {
		object-position: center 30%;
	}

	.roosevelt-home__why-inner {
		position: relative;
		z-index: 1;
		padding-block: 4.7rem 5rem;
	}
}

@media all {

	.roosevelt-section-heading--light h2,
	.roosevelt-section-heading--light p {
		color: #fff;
	}
}

@media all {

	.roosevelt-why__cards {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: clamp(0.8rem, 1.35vw, 1.3rem);
	}

	.roosevelt-why__card {
		position: relative;
		display: flex;
		min-height: 16.6rem;
		flex-direction: column;
		padding: clamp(1.4rem, 1.75vw, 1.8rem);
		border: 1px solid rgba(255, 255, 255, 0.7);
		border-radius: 1.05rem;
		background: rgba(255, 255, 255, 0.97);
		color: var(--roosevelt-ink);
		box-shadow: 0 1rem 2.2rem rgba(20, 20, 20, 0.17);
		transition: transform 200ms ease, box-shadow 200ms ease;
	}

	.roosevelt-why__card--1 {
		border-color: var(--roosevelt-yellow);
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
	}

	.roosevelt-why__card--2 {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-why__icon {
		display: grid;
		width: 3rem;
		height: 3rem;
		place-items: center;
		margin-bottom: 1.35rem;
		padding: 0.66rem;
		border-radius: 0.85rem;
		background: var(--roosevelt-color-surface);
		color: var(--roosevelt-brand);
	}

	.roosevelt-why__icon svg {
		width: 100%;
		height: 100%;
	}

	.roosevelt-why__card h3 {
		margin: 0;
		font-size: clamp(1rem, 1.12vw, 1.15rem);
		font-weight: 750;
		line-height: 1.3;
	}

	.roosevelt-why__card p {
		margin: 0.9rem 0 0;
		font-size: 0.9rem;
		line-height: 1.55;
	}

	.roosevelt-why__card--2 .roosevelt-why__icon {
		background: transparent;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-why__card:hover {
		transform: translateY(-0.25rem);
		box-shadow: 0 1.35rem 2.7rem rgba(20, 20, 20, 0.24);
	}
}

@media all {

	.roosevelt-home__news {
		background: #f5f6f8;
		scroll-margin-top: calc(var(--roosevelt-admin-bar-offset, 0px) + 6rem);
	}
}

@media all {

	.roosevelt-section-heading--row {
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
		gap: 2rem;
	}

	.roosevelt-section-heading--row .roosevelt-text-link {
		margin-bottom: 0.35rem;
		white-space: nowrap;
	}
}

@media all {

	.roosevelt-news__toolbar {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 1.1rem;
		margin: -0.9rem 0 1.3rem;
	}

	.roosevelt-news__position {
		color: #62636a;
		font-size: 0.78rem;
		font-variant-numeric: tabular-nums;
		font-weight: 700;
	}

	.roosevelt-news__buttons {
		display: flex;
		gap: 0.5rem;
	}

	.roosevelt-news__nav {
		display: grid;
		width: 2.75rem;
		height: 2.75rem;
		place-items: center;
		border: 1px solid #d9d9de;
		border-radius: 50%;
		background: #fff;
		color: var(--roosevelt-ink);
		cursor: pointer;
		font-size: 1.15rem;
		transition: background-color 180ms, border-color 180ms, color 180ms;
	}

	.roosevelt-news__viewport {
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.roosevelt-news__track {
		display: flex;
		align-items: stretch;
		gap: 1.4rem;
	}

	.roosevelt-news__card {
		position: relative;
		display: flex;
		min-width: 0;
		flex: 0 0 calc((100% - 2.8rem) / 3);
		flex-direction: column;
		overflow: hidden;
		border: 1px solid #e5e5e9;
		border-radius: 1.1rem;
		background: #fff;
		box-shadow: 0 0.35rem 1.3rem rgba(20, 20, 20, 0.04);
		scroll-snap-align: start;
		transition: border-color 220ms, box-shadow 220ms;
	}

	.roosevelt-news__image {
		display: block;
		width: 100%;
		aspect-ratio: 16 / 10;
		object-fit: cover;
		transition: transform 350ms ease;
	}

	.roosevelt-news__copy {
		display: flex;
		flex: 1;
		flex-direction: column;
		padding: 1.45rem 1.55rem 1.55rem;
	}

	.roosevelt-news__meta {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 0.5rem 0.8rem;
	}

	.roosevelt-news__tag {
		display: inline-flex;
		padding: 0.4rem 0.65rem;
		border-radius: 0.3rem;
		background: #f5f5f5;
		color: var(--roosevelt-brand);
		font-size: 0.64rem;
		font-weight: 800;
		line-height: 1;
	}

	.roosevelt-news__card-arrow {
		display: grid;
		width: 2.2rem;
		height: 2.2rem;
		place-items: center;
		align-self: flex-end;
		margin-top: 1.25rem;
		border: 1px solid #e5e5e5;
		border-radius: 50%;
		color: var(--roosevelt-brand);
		font-size: 1rem;
	}

	.roosevelt-news__viewport::-webkit-scrollbar {
		display: none;
	}

	.roosevelt-news__meta time {
		color: #66666e;
		font-size: 0.72rem;
	}

	.roosevelt-news__copy h3 {
		margin: 1rem 0 0.7rem;
		font-size: clamp(1.16rem, 1.6vw, 1.45rem);
		font-weight: 750;
		line-height: 1.18;
	}

	.roosevelt-news__copy p {
		margin: 0;
		color: #555660;
		font-size: 0.85rem;
		line-height: 1.55;
	}

	.roosevelt-news__copy h3 a {
		color: var(--roosevelt-ink);
		text-decoration: none;
	}

	.roosevelt-news__copy h3 a::after {
		position: absolute;
		inset: 0;
		content: "";
	}

	.roosevelt-news__toolbar[hidden] {
		display: none;
	}

	.roosevelt-news__nav:focus-visible {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-news__nav:disabled {
		cursor: default;
		opacity: 0.38;
	}

	.roosevelt-news__viewport:focus-visible {
		outline: 2px solid var(--roosevelt-brand);
		outline-offset: 3px;
	}

	.roosevelt-news__card:hover,
	.roosevelt-news__card:focus-within {
		border-color: #dbc0cc;
		box-shadow: 0 1rem 2rem rgba(20, 20, 20, 0.1);
	}

	.roosevelt-news__card.is-featured {
		border-top: 3px solid var(--roosevelt-brand);
	}

	html:not(.js) .roosevelt-news__toolbar {
		display: none;
	}

	.roosevelt-news__card:hover h3 a,
	.roosevelt-news__card:focus-within h3 a {
		color: var(--roosevelt-brand);
	}

	.roosevelt-news__nav:hover:not(:disabled) {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-news__card:hover .roosevelt-news__image {
		transform: scale(1.025);
	}
}

@media all {

	.roosevelt-home__lead {
		display: grid;
		grid-template-columns: 1fr 1fr;
		width: var(--roosevelt-home-inner);
		margin: 5.3rem auto;
		padding: 0;
		border-radius: 2.8rem;
		background: var(--roosevelt-brand);
		box-shadow: var(--roosevelt-home-shadow);
		overflow: hidden;
	}

	.roosevelt-home__lead-copy {
		display: flex;
		min-height: 39rem;
		flex-direction: column;
		justify-content: space-between;
		padding: 5rem 3.1rem 1rem;
		color: #fff;
	}

	.roosevelt-home__lead-form-wrap {
		position: relative;
		padding: 3.3rem 3.1rem 3rem;
		border-radius: 2.8rem;
		background: #fff;
	}

	.roosevelt-home__lead-copy h2 {
		max-width: 25rem;
		margin: 0;
		padding-left: 1rem;
		border-left: 2px solid var(--roosevelt-yellow);
		font-size: clamp(2.1rem, 3.5vw, 3.1rem);
		font-weight: 750;
		line-height: 1.1;
	}

	.roosevelt-home__lead-copy p {
		max-width: 31rem;
		margin: 1.8rem 0 0;
		font-size: 1.05rem;
		line-height: 1.55;
	}
}

@media all {

	.roosevelt-lead-form {
		display: grid;
		gap: 1.15rem;
	}

	.roosevelt-lead-form__row {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1.4rem;
	}

	.roosevelt-lead-form label {
		display: grid;
		gap: 0.55rem;
		color: var(--roosevelt-ink);
		font-size: 0.75rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-lead-form input,
	.roosevelt-lead-form select {
		width: 100%;
		min-height: 3.25rem;
		margin: 0;
		padding: 0.8rem 1rem;
		border: 1px solid #d9dfe6;
		border-radius: 0.55rem;
		background: #fff;
		color: var(--roosevelt-ink);
		font-size: 0.9rem;
		font-weight: 400;
		text-transform: none;
	}

	.roosevelt-lead-form input::placeholder {
		color: #626a74;
	}

	.roosevelt-lead-form input:focus-visible,
	.roosevelt-lead-form select:focus-visible {
		border-color: var(--roosevelt-brand);
		outline: 3px solid var(--roosevelt-brand);
		outline-offset: 2px;
	}
}

@media all {

	.roosevelt-button--submit {
		width: 100%;
		border-radius: 0.75rem;
	}
}

@media all {

	.roosevelt-lead-form__legal {
		margin: 0.25rem 0 0;
		color: #525b66;
		font-size: 0.75rem;
		line-height: 1.55;
		text-align: left;
		text-transform: none;
	}

	.roosevelt-lead-form__consent {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		align-items: start;
		gap: 0.65rem;
		margin-top: 0.25rem;
		color: #525b66;
		font-size: 0.78rem;
		line-height: 1.55;
		text-align: left;
		text-transform: none;
	}

	.roosevelt-lead-form__honeypot {
		position: absolute;
		left: -9999px;
		width: 1px;
		height: 1px;
		overflow: hidden;
	}

	.roosevelt-lead-form__consent label {
		margin: 0;
		color: inherit;
		font-size: inherit;
		font-weight: 400;
		line-height: inherit;
		text-transform: none;
	}

	.roosevelt-lead-form__consent a {
		color: var(--roosevelt-brand);
		text-decoration: underline;
		text-underline-offset: 0.15em;
	}

	.roosevelt-lead-form__consent .roosevelt-lead-form__field-error {
		grid-column: 2;
	}

	.roosevelt-lead-form__consent input[type="checkbox"] {
		width: 1rem;
		min-height: 1rem;
		margin: 0.18rem 0 0;
		accent-color: var(--roosevelt-brand);
	}
}

@media all {

	.roosevelt-form-message {
		margin-bottom: 1rem;
		padding: 0.8rem 1rem;
		border-left: 3px solid var(--roosevelt-brand);
		background: #f8f9fa;
		color: var(--roosevelt-ink);
		font-size: 0.85rem;
		line-height: 1.55;
	}
}

@media all {

	.roosevelt-form-message--success {
		border-color: #168453;
		background: #edf8f2;
		color: #145a3b;
	}
}

@media all {

	.roosevelt-form-message--error {
		border-color: #92004d;
		background: #fff1f5;
		color: #76003d;
	}
}

@media all {

	.roosevelt-notice {
		margin-bottom: 1rem;
		padding: 0.85rem 1rem;
		border-left: 3px solid #92004d;
		background: #f8f9fa;
		color: var(--roosevelt-ink);
		font-size: 0.9rem;
		line-height: 1.55;
	}
}

@media all {

	.roosevelt-notice--success {
		border-color: #168453;
		background: #edf8f2;
		color: #145a3b;
	}
}

@media all {

	.roosevelt-notice--error {
		border-color: #92004d;
		background: #fff1f5;
		color: #76003d;
	}
}

@media all {

	.roosevelt-notice p {
		margin: 0 0 0.35rem;
	}

	.roosevelt-notice a {
		color: inherit;
		font-weight: 700;
		text-decoration: underline;
	}
}

@media all {

	.roosevelt-form-message ul {
		margin: 0;
		padding-left: 1.25rem;
	}

	.roosevelt-form-message:focus,
	.roosevelt-notice:focus {
		outline: 3px solid var(--roosevelt-brand);
		outline-offset: 3px;
		box-shadow: 0 0 0 2px #fff, 0 0 0 7px var(--roosevelt-brand);
	}

	.roosevelt-form-message > p:first-child {
		margin: 0 0 0.35rem;
		font-weight: 700;
	}
}

@media all {

	.roosevelt-lead-form__field-error {
		display: block;
		margin-top: 0.35rem;
		color: var(--roosevelt-brand);
		font-size: 0.82rem;
		font-weight: 650;
		line-height: 1.45;
	}

	.roosevelt-lead-form [aria-invalid="true"] {
		border-color: var(--roosevelt-brand);
	}
}

@media all {

	.roosevelt-whatsapp {
		position: fixed;
		z-index: 950;
		right: calc(1.5rem + env(safe-area-inset-right, 0px));
		bottom: calc(1.5rem + env(safe-area-inset-bottom, 0px));
		display: grid;
		width: 4.1rem;
		height: 4.1rem;
		place-items: center;
		border: 2px solid rgba(255, 255, 255, 0.9);
		border-radius: 50%;
		background: #25d366;
		box-shadow: 0 0.7rem 1.4rem rgba(0, 0, 0, 0.18);
		color: #fff;
		text-decoration: none;
		transform: rotate(-5deg);
		transition: background-color 180ms ease, box-shadow 180ms ease, transform 220ms ease;
	}

	.roosevelt-whatsapp__icon {
		display: block;
		width: 2rem;
		height: 2rem;
		color: #fff;
	}

	.roosevelt-whatsapp:hover,
	.roosevelt-whatsapp:focus-visible {
		background: #25d366;
		color: #fff;
		box-shadow: 0 0.9rem 1.8rem rgba(0, 0, 0, 0.24);
		transform: rotate(0deg) scale(1.05);
	}

	.roosevelt-whatsapp:visited,
	.roosevelt-whatsapp:hover,
	.roosevelt-whatsapp:focus,
	.roosevelt-whatsapp:active {
		color: #fff;
	}

	.roosevelt-whatsapp:focus-visible {
		outline: 3px solid var(--roosevelt-yellow);
		outline-offset: 4px;
	}

	.roosevelt-whatsapp__icon path:first-child {
		fill: none;
		stroke: #fff;
	}

	.roosevelt-whatsapp__icon path:last-child {
		fill: #fff;
	}
}

@media all {

	.roosevelt-footer {
		border: 0;
		border-top: 7px solid var(--roosevelt-brand);
		background: #fff;
		padding-top: 50px;
	}

	.roosevelt-footer__grid {
		display: grid;
		grid-template-columns: 2fr 1fr 1fr 1fr;
		gap: 3.5rem;
		padding-block: 1rem 4.1rem;
	}

	.roosevelt-footer__social {
		display: flex;
		flex-wrap: wrap;
		gap: 0.55rem;
	}

	.roosevelt-footer__contact {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
		padding-block: 1rem 2.4rem;
	}

	.roosevelt-footer__bottom {
		padding-block: 1.2rem;
		border-top: 1px solid #d9d9d9;
	}

	.roosevelt-footer__brand img {
		width: 10.6rem;
		height: auto;
	}

	.roosevelt-footer__brand p {
		max-width: 22rem;
		margin: 1.5rem 0 1.2rem;
		font-size: 0.95rem;
		line-height: 1.55;
	}

	.roosevelt-footer__social a {
		display: grid;
		width: 2.65rem;
		height: 2.65rem;
		place-items: center;
		border-radius: 50%;
		background: var(--roosevelt-brand);
		color: #fff;
		text-decoration: none;
		transition: background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
	}

	.roosevelt-footer__social svg {
		display: block;
		width: 1.15rem;
		height: 1.15rem;
	}

	.roosevelt-footer__column h2 {
		margin: 0 0 1.3rem;
		padding-bottom: 0.9rem;
		border-bottom: 1px solid var(--roosevelt-yellow);
		font-size: 0.88rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-footer__column ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-footer__column a {
		color: var(--roosevelt-muted-ink);
		font-size: 0.9rem;
		text-decoration: none;
	}

	.roosevelt-footer__contact div {
		display: grid;
		gap: 0.45rem;
	}

	.roosevelt-footer__contact strong {
		font-size: 0.78rem;
		text-transform: uppercase;
	}

	.roosevelt-footer__contact span {
		color: var(--roosevelt-muted-ink);
		font-size: 0.9rem;
	}

	.roosevelt-footer__bottom p {
		margin: 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.72rem;
	}

	.roosevelt-footer__column li + li {
		margin-top: 0.6rem;
	}

	.roosevelt-footer__social a:hover,
	.roosevelt-footer__social a:focus-visible {
		background: var(--roosevelt-brand-dark);
		box-shadow: 0 0.4rem 0.9rem rgba(20, 20, 20, 0.2);
		color: #fff;
		transform: translateY(-0.12rem);
	}

	.roosevelt-footer__social a:focus-visible {
		outline: 3px solid var(--roosevelt-yellow);
		outline-offset: 3px;
	}

	.roosevelt-footer__column a:hover,
	.roosevelt-footer__column a:focus {
		color: var(--roosevelt-brand);
	}
}

/* ==========================================================================
Roosevelt Noticias y Eventos (PDF 1)
========================================================================== */

@media all {

	.roosevelt-news-page {
		width: 100%;
		color: var(--roosevelt-ink);
		overflow: hidden;
	}
}

@media all {

	.roosevelt-news__hero {
		position: relative;
		min-height: 24rem;
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-news__hero-media,
	.roosevelt-news__hero-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-news__hero-image {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.roosevelt-news__hero-shade {
		background: linear-gradient(90deg, rgba(7, 13, 20, 0.84) 0%, rgba(7, 13, 20, 0.52) 50%, rgba(7, 13, 20, 0.2) 100%);
	}

	.roosevelt-news__hero-inner {
		position: relative;
		display: flex;
		min-height: 24rem;
		flex-direction: column;
		justify-content: center;
		padding-block: 4rem;
	}

	.roosevelt-news__hero-copy {
		max-width: 44rem;
	}

	.roosevelt-news__hero-text {
		max-width: 36rem;
		margin: 0;
		font-size: 1.05rem;
		line-height: 1.5;
		color: rgba(255, 255, 255, 0.92);
	}

	.roosevelt-news__content-section {
		padding-block: 3.5rem 6rem;
		background: #fff;
	}

	.roosevelt-news__filter-bar {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1.5rem;
		margin-bottom: 2.75rem;
		flex-wrap: wrap;
	}

	.roosevelt-news__categories {
		display: flex;
		align-items: center;
		gap: 0.75rem;
		flex-wrap: wrap;
	}

	.roosevelt-news__cat-btn {
		padding: 0.65rem 1.6rem;
		border: 1px solid transparent;
		border-radius: 9999px;
		background: var(--roosevelt-color-surface);
		color: var(--roosevelt-brand);
		font-size: 0.78rem;
		font-weight: 700;
		text-transform: uppercase;
		cursor: pointer;
		transition: background-color var(--roosevelt-transition, 160ms ease), color var(--roosevelt-transition, 160ms ease), box-shadow 160ms ease;
	}

	.roosevelt-news__search-wrap {
		position: relative;
		min-width: 17rem;
	}

	.roosevelt-news__search-input {
		width: 100%;
		padding: 0.7rem 2.5rem 0.7rem 1.1rem;
		border: 1px solid #dcdcdc;
		border-radius: 0.4rem;
		font-size: 0.8rem;
		background: #fbfbfb;
		outline: 0;
	}

	.roosevelt-news__search-icon {
		position: absolute;
		right: 0.9rem;
		top: 50%;
		transform: translateY(-50%);
		color: var(--roosevelt-color-muted);
		pointer-events: none;
		display: flex;
		align-items: center;
	}

	.roosevelt-news__hero-copy h1 {
		margin: 0 0 0.85rem;
		font-size: clamp(2.3rem, 4vw, 3.4rem);
		font-weight: 750;
		line-height: 1.1;
	}

	.roosevelt-news__cat-btn.is-active {
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-news__cat-btn--yellow:not(.is-active) {
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
	}

	.roosevelt-news__cat-btn:focus-visible {
		outline: 0;
		box-shadow: 0 0 0 2px #fff, 0 0 0 5px var(--roosevelt-brand);
	}

	.roosevelt-news__search-input:focus {
		border-color: var(--roosevelt-brand);
		background: #fff;
	}

	.roosevelt-news__search-input:focus-visible {
		outline: 0;
		box-shadow: 0 0 0 3px var(--roosevelt-color-border);
	}

	.roosevelt-news__cat-btn.is-active:hover,
	.roosevelt-news__cat-btn.is-active:focus {
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-news__cat-btn--yellow:not(.is-active):hover {
		background: #fedc00;
	}

	.roosevelt-news__cat-btn--yellow:not(.is-active):focus {
		background: #fedc00;
		color: var(--roosevelt-ink);
	}

	.roosevelt-news__cat-btn.is-active:hover,
	.roosevelt-news__cat-btn.is-active:focus,
	.roosevelt-news__cat-btn:not(.roosevelt-news__cat-btn--yellow):not(.is-active):hover,
	.roosevelt-news__cat-btn:not(.roosevelt-news__cat-btn--yellow):not(.is-active):focus {
		background: var(--roosevelt-brand-dark);
		color: #fff;
	}
}

@media all {

	.roosevelt-news-card[hidden],
	.roosevelt-news__empty[hidden] {
		display: none !important;
	}
}

@media all {

	.roosevelt-news__grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}
}

@media all {

	.roosevelt-news-card {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		background: #fff;
		border-radius: 1.25rem;
		overflow: hidden;
		border: 1px solid #ededed;
		box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
		transition: transform 200ms ease, box-shadow 200ms ease;
	}

	.roosevelt-news-card__body {
		padding: 1.75rem 1.75rem 1.25rem;
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
	}

	.roosevelt-news-card__tag-wrap {
		margin-bottom: 0.25rem;
	}

	.roosevelt-news-card__tag {
		display: inline-block;
		padding: 0.3rem 0.85rem;
		border-radius: 9999px;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 0.68rem;
		font-weight: 700;
		text-transform: uppercase;
	}

	.roosevelt-news-card__title {
		margin: 0;
		font-size: 1.2rem;
		font-weight: 750;
		line-height: 1.25;
		color: var(--roosevelt-ink);
	}

	.roosevelt-news-card__description {
		margin: 0;
		font-size: 0.88rem;
		line-height: 1.5;
		color: #555;
	}

	.roosevelt-news-card__date {
		margin-top: auto;
		font-size: 0.8rem;
		font-weight: 500;
		color: var(--roosevelt-color-muted);
	}

	.roosevelt-news-card__media {
		width: 100%;
		height: 13.5rem;
		overflow: hidden;
		border-radius: 0 0 1.25rem 1.25rem;
	}

	.roosevelt-news-card__image {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 300ms ease;
	}

	.roosevelt-news-card__title a {
		color: inherit;
		text-decoration: none;
	}

	.roosevelt-news-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 14px 28px rgba(0, 0, 0, 0.09);
	}

	.roosevelt-news-card__title a:hover,
	.roosevelt-news-card__title a:focus {
		color: var(--roosevelt-brand);
	}

	.roosevelt-news-card:hover .roosevelt-news-card__image {
		transform: scale(1.04);
	}
}

@media all {

	.roosevelt-news__empty {
		padding: 3rem 1rem;
		text-align: center;
		color: var(--roosevelt-muted-ink);
		font-size: 1rem;
	}

	.roosevelt-news__pagination {
		display: flex;
		justify-content: center;
		margin-top: 3.5rem;
	}
}

@media all {

	.roosevelt-pagination__list {
		display: flex;
		align-items: center;
		gap: 0.5rem;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.roosevelt-pagination__item {
		display: inline-flex;
	}

	.roosevelt-pagination__link {
		display: flex;
		align-items: center;
		justify-content: center;
		min-width: 2.3rem;
		height: 2.3rem;
		padding: 0 0.5rem;
		border-radius: 0.35rem;
		font-size: 0.85rem;
		font-weight: 700;
		text-decoration: none;
		color: var(--roosevelt-ink);
	}

	.roosevelt-pagination__ellipsis {
		padding: 0 0.5rem;
		color: var(--roosevelt-color-muted);
	}

	.roosevelt-pagination__item.is-active .roosevelt-pagination__link {
		display: flex;
		align-items: center;
		justify-content: center;
		min-width: 2.3rem;
		height: 2.3rem;
		padding: 0 0.5rem;
		border-radius: 0.35rem;
		font-size: 0.85rem;
		font-weight: 700;
		text-decoration: none;
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-pagination__link:hover:not(.is-current) {
		background: #eaeaea;
	}
}

/* =======================================================================
Roosevelt News Article
======================================================================= */

@media all {

	.roosevelt-news-article-page {
		width: 100%;
		background: #fff;
		color: var(--roosevelt-ink);
		overflow-x: clip;
	}
}

@media all {

	.roosevelt-news-article__hero {
		position: relative;
		min-height: clamp(28rem, 48vw, 37rem);
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-news-article__hero-media,
	.roosevelt-news-article__hero-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-news-article__hero-image {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.roosevelt-news-article__hero-shade {
		background: linear-gradient(90deg, rgba(7, 13, 20, 0.9) 0%, rgba(7, 13, 20, 0.62) 52%, rgba(7, 13, 20, 0.2) 100%);
	}

	.roosevelt-news-article__hero-inner {
		position: relative;
		display: flex;
		min-height: clamp(28rem, 48vw, 37rem);
		flex-direction: column;
		justify-content: center;
		padding-block: 4rem;
	}

	.roosevelt-news-article__back-link {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		align-self: flex-start;
		margin-bottom: 2.2rem;
		color: rgba(255, 255, 255, 0.9);
		font-size: 0.76rem;
		font-weight: 750;
		text-decoration: none;
		text-transform: uppercase;
		transition: color 180ms ease, transform 180ms ease;
	}

	.roosevelt-news-article__hero-copy {
		max-width: 53rem;
	}

	.roosevelt-news-article__meta {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 0.55rem 0.9rem;
		margin-bottom: 1.1rem;
		color: rgba(255, 255, 255, 0.78);
		font-size: 0.75rem;
		font-weight: 650;
	}

	.roosevelt-news-article__tag {
		display: inline-flex;
		padding: 0.42rem 0.7rem;
		border-radius: 0.25rem;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
		font-size: 0.64rem;
		font-weight: 800;
		line-height: 1;
		text-transform: uppercase;
	}

	.roosevelt-news-article__layout {
		display: grid;
		grid-template-columns: minmax(13rem, 16rem) minmax(0, 1fr);
		align-items: start;
		gap: clamp(2rem, 5vw, 5.5rem);
		padding-block: clamp(3.5rem, 7vw, 6.5rem);
	}

	.roosevelt-news-article__sidebar {
		position: sticky;
		align-self: start;
		top: calc(var(--roosevelt-admin-bar-offset, 0px) + 6.2rem);
		z-index: 1;
	}

	.roosevelt-news-article__sidebar-card {
		padding: 1.35rem 1.2rem 1.25rem;
		border: 1px solid #e5e5e5;
		border-top: 3px solid var(--roosevelt-brand);
		border-radius: 0 0.9rem 0.9rem 0.9rem;
		background: #fff;
		box-shadow: 0 0.7rem 1.7rem rgba(20, 20, 20, 0.06);
	}

	.roosevelt-news-article__sidebar-eyebrow {
		margin: 0 0 0.9rem;
		color: var(--roosevelt-brand);
		font-size: 0.67rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-news-article__toc {
		display: grid;
		gap: 0.1rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-news-article__sidebar-link {
		display: inline-flex;
		align-items: center;
		gap: 0.4rem;
		margin-top: 1.1rem;
		padding-top: 1rem;
		border-top: 1px solid #e5e5e5;
		color: var(--roosevelt-brand);
		font-size: 0.72rem;
		font-weight: 800;
		text-decoration: none;
		text-transform: uppercase;
	}

	.roosevelt-news-article__content {
		min-width: 0;
		max-width: 53rem;
	}

	.roosevelt-news-article__intro {
		margin: 0 0 3rem;
		color: var(--roosevelt-ink);
		font-size: clamp(1.2rem, 2vw, 1.55rem);
		font-weight: 550;
		line-height: 1.48;
	}

	.roosevelt-news-article__section {
		scroll-margin-top: calc(var(--roosevelt-admin-bar-offset, 0px) + 6.5rem);
	}

	.roosevelt-news-article__infobox {
		margin: 1.8rem 0;
		padding: 1.4rem 1.5rem 1.5rem;
		border-left: 4px solid var(--roosevelt-brand);
		border-radius: 0 0.8rem 0.8rem 0;
		background: #f5f5f5;
	}

	.roosevelt-news-article__infobox-label {
		display: block;
		margin-bottom: 0.45rem;
		color: var(--roosevelt-brand);
		font-size: 0.68rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-news-article__quote {
		margin: 1.8rem 0;
		padding: 1.3rem 1.5rem 1.4rem;
		border-left: 4px solid var(--roosevelt-yellow);
		border-radius: 0 0.8rem 0.8rem 0;
		background: #f7f8fa;
	}

	.roosevelt-news-article__gallery {
		margin: 2rem 0 0.5rem;
	}

	.roosevelt-news-article__gallery-viewport {
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.roosevelt-news-article__gallery-track {
		display: flex;
		gap: 1rem;
	}

	.roosevelt-news-article__gallery-slide {
		position: relative;
		flex: 0 0 min(100%, 43rem);
		margin: 0;
		overflow: hidden;
		border-radius: 0.9rem;
		background: #f4f4f6;
		scroll-snap-align: start;
	}

	.roosevelt-news-article__gallery-controls {
		display: flex;
		justify-content: flex-end;
		gap: 0.45rem;
		margin-top: 0.8rem;
	}

	.roosevelt-news-article__embed {
		margin-top: 2rem;
		overflow: hidden;
		border-radius: 0.9rem;
		background: #111;
		aspect-ratio: 16 / 9;
	}

	.roosevelt-news-article__related {
		padding-block: clamp(3.5rem, 7vw, 6rem);
		background: #f7f7f8;
	}

	.roosevelt-news-article__related-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.25rem;
	}

	.roosevelt-news-article__related-card {
		position: relative;
		display: flex;
		min-width: 0;
		flex-direction: column;
		overflow: hidden;
		border: 1px solid #e5e5e5;
		border-radius: 0.9rem;
		background: #fff;
		box-shadow: 0 0.35rem 1.3rem rgba(20, 20, 20, 0.04);
		color: var(--roosevelt-ink);
		text-decoration: none;
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.roosevelt-news-article__hero-copy h1 {
		max-width: 50rem;
		margin: 0 0 1rem;
		font-size: clamp(2.25rem, 5vw, 3.7rem);
		font-weight: 750;
		line-height: 1.04;
	}

	.roosevelt-news-article__hero-copy > p {
		max-width: 43rem;
		margin: 0;
		color: rgba(255, 255, 255, 0.9);
		font-size: clamp(1rem, 1.45vw, 1.2rem);
		line-height: 1.55;
	}

	.roosevelt-news-article__toc a {
		display: grid;
		grid-template-columns: 1.75rem minmax(0, 1fr);
		align-items: start;
		gap: 0.35rem;
		padding: 0.55rem 0.3rem;
		border-radius: 0.4rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.76rem;
		font-weight: 650;
		line-height: 1.35;
		text-decoration: none;
		transition: background-color 180ms ease, color 180ms ease;
	}

	.roosevelt-news-article__section h2 {
		margin: 0 0 1.1rem;
		font-size: clamp(1.6rem, 2.8vw, 2.35rem);
		font-weight: 750;
		line-height: 1.1;
	}

	.roosevelt-news-article__section > p {
		margin: 0 0 1.1rem;
		color: #4f5158;
		font-size: 1rem;
		line-height: 1.75;
	}

	.roosevelt-news-article__infobox h3 {
		margin: 0 0 0.75rem;
		font-size: 1.1rem;
		font-weight: 750;
		line-height: 1.25;
	}

	.roosevelt-news-article__infobox ul {
		display: grid;
		gap: 0.45rem;
		margin: 0;
		padding-left: 1.1rem;
		color: #4f5158;
		font-size: 0.9rem;
		line-height: 1.5;
	}

	.roosevelt-news-article__quote p {
		margin: 0;
		color: var(--roosevelt-ink);
		font-size: 1.05rem;
		font-weight: 600;
		line-height: 1.55;
	}

	.roosevelt-news-article__quote cite {
		display: block;
		margin-top: 0.75rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.8rem;
		font-style: normal;
		font-weight: 700;
	}

	.roosevelt-news-article__gallery-viewport::-webkit-scrollbar {
		display: none;
	}

	.roosevelt-news-article__gallery-slide img {
		display: block;
		width: 100%;
		aspect-ratio: 16 / 9;
		object-fit: cover;
	}

	.roosevelt-news-article__gallery-slide figcaption {
		padding: 0.7rem 0.9rem;
		background: #f7f7f8;
		color: var(--roosevelt-muted-ink);
		font-size: 0.75rem;
		line-height: 1.4;
	}

	.roosevelt-news-article__gallery-controls button {
		display: grid;
		width: 2.35rem;
		height: 2.35rem;
		place-items: center;
		border: 1px solid #e5e5e5;
		border-radius: 50%;
		background: #fff;
		color: var(--roosevelt-brand);
		cursor: pointer;
		font-size: 1rem;
		transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
	}

	.roosevelt-news-article__embed iframe {
		display: block;
		width: 100%;
		height: 100%;
		border: 0;
	}

	.roosevelt-news-article__related-card img {
		display: block;
		width: 100%;
		aspect-ratio: 16 / 9;
		object-fit: cover;
	}

	.roosevelt-news-article__related-card > span {
		align-self: flex-start;
		margin: 1rem 1.1rem 0;
		padding: 0.35rem 0.55rem;
		border-radius: 0.25rem;
		background: #f5f5f5;
		color: var(--roosevelt-brand);
		font-size: 0.62rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-news-article__related-card h3 {
		margin: 0.75rem 1.1rem 1.5rem;
		font-size: 1rem;
		font-weight: 750;
		line-height: 1.3;
	}

	.roosevelt-news-article__related-card strong {
		position: absolute;
		right: 1.1rem;
		bottom: 1rem;
		display: grid;
		width: 2rem;
		height: 2rem;
		place-items: center;
		border: 1px solid #e5e5e5;
		border-radius: 50%;
		color: var(--roosevelt-brand);
		font-size: 0.9rem;
	}

	.roosevelt-news-article__toc a span {
		color: var(--roosevelt-brand);
		font-size: 0.67rem;
		font-variant-numeric: tabular-nums;
		font-weight: 800;
	}

	.roosevelt-news-article__back-link:hover,
	.roosevelt-news-article__back-link:focus-visible {
		color: #fff;
		transform: translateX(-0.2rem);
	}

	.roosevelt-news-article__sidebar-link:hover,
	.roosevelt-news-article__sidebar-link:focus-visible {
		color: var(--roosevelt-ink);
	}

	.roosevelt-news-article__section + .roosevelt-news-article__section {
		margin-top: clamp(3.2rem, 6vw, 5rem);
		padding-top: clamp(3.2rem, 6vw, 5rem);
		border-top: 1px solid #e5e5e5;
	}

	.roosevelt-news-article__gallery-viewport:focus-visible {
		outline: 2px solid var(--roosevelt-brand);
		outline-offset: 3px;
	}

	.roosevelt-news-article__related .roosevelt-section-heading {
		margin-bottom: 2rem;
	}

	.roosevelt-news-article__related-card:hover,
	.roosevelt-news-article__related-card:focus-visible {
		border-color: #e5e5e5;
		box-shadow: 0 1rem 2rem rgba(20, 20, 20, 0.1);
		transform: translateY(-0.2rem);
	}

	.roosevelt-news-article__toc a:hover,
	.roosevelt-news-article__toc a:focus-visible {
		background: #f5f5f5;
		color: var(--roosevelt-brand);
	}

	.roosevelt-news-article__gallery-controls button:focus-visible {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-news-article__gallery-controls button:disabled {
		cursor: default;
		opacity: 0.35;
	}

	.roosevelt-news-article__gallery-controls button:hover:not(:disabled) {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}
}

/* ==========================================================================
Roosevelt Carrera / Escuela Profesional de Derecho (PDF 2)
========================================================================== */

@media all {

	.roosevelt-career-page {
		--roosevelt-career-header-clearance: calc(var(--roosevelt-admin-bar-offset, 0px) + 6.2rem);
		width: 100%;
		max-width: 100%;
		min-width: 0;
		color: var(--roosevelt-ink);
	}
}

@media all {

	.roosevelt-career__hero {
		position: relative;
		min-height: 32rem;
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-career__hero-media,
	.roosevelt-career__hero-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-career__hero-image {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

@media all {

	.roosevelt-career-page--derecho .roosevelt-career__hero-image {
		object-position: center 20%;
	}
}

@media all {

	.roosevelt-career-page--medicina .roosevelt-career__hero-image {
		object-position: center 8%;
	}
}

@media all {

	.roosevelt-career-page--obstetricia .roosevelt-career__hero-image {
		object-position: center 5%;
	}
}

@media all {

	.roosevelt-career__hero-shade {
		background: linear-gradient(90deg, rgba(7, 13, 20, 0.88) 0%, rgba(7, 13, 20, 0.6) 45%, rgba(7, 13, 20, 0.22) 100%);
	}

	.roosevelt-career__hero-inner {
		position: relative;
		display: flex;
		max-width: 100%;
		min-width: 0;
		min-height: 32rem;
		flex-direction: column;
		justify-content: center;
		padding-block: 5rem;
	}

	.roosevelt-career__hero-copy {
		min-width: 0;
		max-width: 38rem;
	}

	.roosevelt-career__hero-text {
		margin: 0 0 2rem;
		font-size: 1.12rem;
		line-height: 1.5;
		color: rgba(255, 255, 255, 0.94);
	}

	.roosevelt-career__hero-actions {
		display: flex;
		gap: 1.1rem;
		align-items: center;
		flex-wrap: wrap;
	}

	.roosevelt-career__hero-copy h1 {
		margin: 0 0 0.85rem;
		font-size: clamp(2.4rem, 4.2vw, 3.7rem);
		font-weight: 750;
		line-height: 1.08;
	}
}

@media all {

	.roosevelt-button--outline {
		border: 2px solid #fff;
		background: transparent;
		color: #fff;
		border-radius: 9999px;
		padding: 0.72rem 1.6rem;
		font-size: 0.8rem;
		font-weight: 750;
		text-transform: uppercase;
		text-decoration: none;
		display: inline-flex;
		align-items: center;
		gap: 0.6rem;
		transition: background 160ms, color 160ms;
	}

	.roosevelt-button--outline:hover,
	.roosevelt-button--outline:focus {
		background: #fff;
		color: var(--roosevelt-ink);
	}
}

@media all {

	.roosevelt-button__svg-icon {
		flex-shrink: 0;
	}
}

@media all {

	.roosevelt-career__layout-wrapper {
		max-width: 100%;
		padding-block: clamp(2rem, 4vw, 4rem) 6rem;
	}

	.roosevelt-career__layout {
		display: grid;
		grid-template-columns: minmax(0, 18.5rem) minmax(0, 1fr);
		gap: 3.5rem;
		align-items: start;
		min-width: 0;
	}

	.roosevelt-career__sidebar {
		position: sticky;
		top: var(--roosevelt-career-header-clearance);
		max-height: calc(100vh - var(--roosevelt-career-header-clearance) - 1rem);
	}

	.roosevelt-career__sidebar-card {
		min-width: 0;
		margin-top: 0.5rem;
		max-height: inherit;
		overflow-y: auto;
		background: #fff;
		border: 1px solid #ebebeb;
		border-radius: 1.25rem;
		padding: 1.75rem 1.5rem;
		box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
	}

	.roosevelt-career__sidebar-header {
		margin-bottom: 1.5rem;
		padding-bottom: 1.1rem;
		border-bottom: 1px solid #f0f0f0;
	}

	.roosevelt-career__sidebar-title {
		margin: 0;
		font-size: 1.35rem;
		font-weight: 750;
		color: var(--roosevelt-ink);
	}

	.roosevelt-career__menu-icon {
		display: flex;
		align-items: center;
		color: currentcolor;
		opacity: 0.8;
	}

	.roosevelt-career__sidebar-cta {
		margin-top: 1.75rem;
		padding-top: 1.1rem;
		border-top: 1px solid #f0f0f0;
		text-align: center;
	}

	.roosevelt-career__sidebar-menu ul {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		gap: 0.35rem;
	}

	.roosevelt-career__sidebar-menu a {
		display: flex;
		align-items: center;
		gap: 0.75rem;
		padding: 0.65rem 0.85rem;
		border-radius: 0.5rem;
		color: #444;
		font-size: 0.74rem;
		font-weight: 700;
		text-decoration: none;
		transition: background 140ms, color 140ms;
	}

	.roosevelt-career__sidebar-menu a:hover,
	.roosevelt-career__sidebar-menu a.is-active {
		background: #f7f7f8;
		color: var(--roosevelt-brand);
	}
}

@media all {

	.roosevelt-button--full {
		width: 100%;
		justify-content: center;
		text-align: center;
	}
}

@media all {

	.roosevelt-career__content {
		display: flex;
		flex-direction: column;
		gap: 4.5rem;
		min-width: 0;
	}

	.roosevelt-career__section {
		min-width: 0;
		scroll-margin-top: var(--roosevelt-career-header-clearance);
	}
}

@media (prefers-reduced-motion: no-preference) {

	html.has-roosevelt-section-reveals .roosevelt-page-section-reveal {
		opacity: 0;
		transform: translate3d(0, 0.75rem, 0);
		transition: opacity 420ms ease-out, transform 420ms ease-out;
	}

	html.has-roosevelt-section-reveals .roosevelt-page-section-reveal.is-roosevelt-section-visible {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@media all {

	.roosevelt-career__section-title {
		margin: 0 0 1.25rem;
		font-size: clamp(1.8rem, 2.8vw, 2.5rem);
		font-weight: 750;
		color: var(--roosevelt-ink);
	}

	.roosevelt-career__lead-paragraph {
		font-size: 1rem;
		line-height: 1.7;
		color: #444;
		margin: 0 0 1.25rem;
	}

	.roosevelt-career__degree-details {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.75rem;
		margin: 1.75rem 0 0;
	}

	.roosevelt-career__degree-detail {
		min-width: 0;
		padding: 1rem;
		border-left: 3px solid var(--roosevelt-yellow);
		background: #f8f8f9;
	}

	.roosevelt-career__vm-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.5rem;
		margin-top: 2rem;
	}

	.roosevelt-career__vm-card {
		min-width: 0;
		padding: 2.25rem;
		border-radius: 1rem;
	}

	.roosevelt-career__vm-card--vision {
		background: #92004d;
		color: #fff;
	}

	.roosevelt-career__vm-card--mision {
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
	}

	.roosevelt-career__vm-title {
		margin: 0 0 0.85rem;
		font-size: 1.2rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-career__video-box {
		position: relative;
		width: 100%;
		height: 25rem;
		border-radius: 1.25rem;
		overflow: hidden;
		margin-top: 1rem;
	}

	.roosevelt-career__video-image {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.roosevelt-career__video-shade {
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0.35);
	}

	.roosevelt-career__graduate-grid {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
		gap: 2rem;
		align-items: center;
		margin-block: 2rem;
	}

	.roosevelt-career__skills-list {
		display: flex;
		flex-direction: column;
		gap: 1.25rem;
	}

	.roosevelt-career__skill-item {
		display: flex;
		align-items: center;
		min-width: 0;
		gap: 0.85rem;
		padding: 1.1rem 1.4rem;
		border-radius: 0.75rem;
		background: #fafafa;
		border: 1px solid #eee;
		font-size: 0.82rem;
		font-weight: 750;
		color: var(--roosevelt-ink);
	}

	.roosevelt-career__skill-icon {
		color: var(--roosevelt-brand);
		display: flex;
		align-items: center;
		flex-shrink: 0;
	}

	.roosevelt-career__graduate-media {
		height: 18rem;
		border-radius: 1.25rem;
		overflow: hidden;
	}

	.roosevelt-career__graduate-image {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.roosevelt-career__quote-card {
		display: flex;
		gap: 1.75rem;
		align-items: center;
		background: #fdfdfd;
		border: 1px solid #eaeaea;
		border-left: 4px solid var(--roosevelt-brand);
		border-radius: 1rem;
		padding: 1.75rem 2rem;
		margin-top: 2rem;
	}

	.roosevelt-career__quote-avatar-wrap {
		flex-shrink: 0;
		width: 4.5rem;
		height: 4.5rem;
		border-radius: 9999px;
		overflow: hidden;
		border: 2px solid var(--roosevelt-brand);
	}

	.roosevelt-career__quote-avatar {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.roosevelt-career__section-header-row {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		margin-bottom: 1.5rem;
		gap: 1rem;
	}

	.roosevelt-career__subtitle {
		margin: 0;
		font-size: 0.95rem;
		color: #666;
	}

	.roosevelt-career__carousel-controls {
		display: flex;
		gap: 0.5rem;
	}

	.roosevelt-career__nav-btn {
		width: 2.25rem;
		height: 2.25rem;
		border-radius: 9999px;
		border: 1px solid var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 1.2rem;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		transition: background-color 140ms, border-color 140ms, transform 140ms;
	}

	.roosevelt-career__fields-carousel {
		overflow-x: auto;
		scrollbar-width: none;
		-ms-overflow-style: none;
		padding-bottom: 0.5rem;
		scroll-behavior: smooth;
	}

	.roosevelt-career__fields-track {
		display: flex;
		gap: 1.25rem;
	}

	.roosevelt-career__field-card {
		flex: 0 0 16.5rem;
		background: #fff;
		border: 1px solid #ececec;
		border-radius: 1rem;
		padding: 1.75rem 1.5rem;
		box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
	}

	.roosevelt-career__field-icon-wrap {
		width: 2.75rem;
		height: 2.75rem;
		border-radius: 0.6rem;
		background: #f5f5f5;
		color: var(--roosevelt-brand);
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.roosevelt-career__field-title {
		margin: 0;
		font-size: 0.92rem;

		/* font-weight: 800; */
		color: var(--roosevelt-ink);

		/* text-transform: uppercase; */
	}

	.roosevelt-career__field-desc {
		margin: 0;
		font-size: 0.85rem;
		line-height: 1.5;
		color: #555;
	}

	.roosevelt-career__malla-header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding-bottom: 1.5rem;
		border-bottom: 1px solid #ebebeb;
		gap: 1rem;
		flex-wrap: wrap;
	}

	.roosevelt-career__malla-header > * {
		min-width: 0;
	}

	.roosevelt-career__download-link {
		display: inline-flex;
		align-items: center;
		gap: 0.6rem;
		padding: 0.65rem 1.25rem;
		border-radius: 9999px;
		border: 1px solid var(--roosevelt-brand);
		color: var(--roosevelt-brand);
		font-size: 0.76rem;
		font-weight: 750;
		text-transform: uppercase;
		text-decoration: none;
		max-width: 100%;
		transition: all 140ms;
	}

	.roosevelt-career__lead-box {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		width: 100%;
		margin-block: 0;
		border-radius: 1.5rem;
		overflow: hidden;
	}

	.roosevelt-career__degree-detail dt {
		margin: 0 0 0.35rem;
		color: #666;
		font-size: 0.7rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-career__degree-detail dd {
		margin: 0;
		color: var(--roosevelt-ink);
		font-size: 0.9rem;
		font-weight: 700;
		line-height: 1.35;
	}

	.roosevelt-career__vm-card p {
		margin: 0;
		font-size: 0.95rem;
		line-height: 1.65;
	}

	.roosevelt-career__skill-item strong {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.roosevelt-career__quote-body blockquote {
		margin: 0 0 0.75rem;
	}

	.roosevelt-career__quote-author strong {
		display: block;
		font-size: 0.85rem;
		font-weight: 800;
		color: var(--roosevelt-ink);
	}

	.roosevelt-career__quote-author span {
		font-size: 0.72rem;
		font-weight: 600;
		color: var(--roosevelt-color-muted);
		text-transform: uppercase;
	}

	.roosevelt-career__fields-carousel::-webkit-scrollbar {
		display: none;
	}

	.roosevelt-career__quote-body blockquote p {
		margin: 0;
		font-size: 0.95rem;
		font-style: italic;
		line-height: 1.6;
		color: #444;
	}

	.roosevelt-career__section-header-row > :first-child {
		min-width: 0;
	}

	.roosevelt-career__nav-btn:hover,
	.roosevelt-career__nav-btn:focus-visible {
		background: var(--roosevelt-brand);
		border-color: var(--roosevelt-brand);
	}

	.roosevelt-career__nav-btn:active {
		background: var(--roosevelt-brand);
		border-color: var(--roosevelt-brand);
		transform: translateY(1px);
	}

	.roosevelt-career__nav-btn:focus-visible {
		outline: 3px solid var(--roosevelt-ink);
		outline-offset: 3px;
	}

	.roosevelt-career__fields-carousel:focus-visible {
		outline: 3px solid var(--roosevelt-brand);
		outline-offset: 4px;
		box-shadow: 0 0 0 2px #fff, 0 0 0 7px var(--roosevelt-brand);
	}

	.roosevelt-career__download-link:hover,
	.roosevelt-career__download-link:focus {
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-career__lead-box .roosevelt-home__lead-copy {
		min-height: 0;
		padding: clamp(2rem, 4vw, 3.75rem) clamp(1.5rem, 4vw, 3.1rem) 2.5rem;
	}

	.roosevelt-career__lead-box .roosevelt-home__lead-form-wrap {
		width: 100%;
		border-radius: 0;
	}

	.roosevelt-career__lead-box .roosevelt-lead-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-career__lead-box .roosevelt-lead-form__row,
	.roosevelt-career__lead-box .roosevelt-lead-form__field--career,
	.roosevelt-career__lead-box .roosevelt-lead-form__legal {
		grid-column: 1 / -1;
	}

	.roosevelt-career__lead-box .roosevelt-home__lead-copy p {
		max-width: 58rem;
	}

	.roosevelt-career__lead-box .roosevelt-lead-form > button {
		grid-column: 1 / -1;
	}

	.roosevelt-career__section#contacto .roosevelt-home__lead-copy h2 {
		max-width: 25rem;
		margin: 0;
		padding-left: 1rem;
		border-left: 2px solid var(--roosevelt-yellow);
		font-size: clamp(2.1rem, 3.5vw, 2.3rem);
	}
}

@media all {

	.roosevelt-home-editor-placeholder {
		min-height: 20rem;
		padding: 2rem;
		background: #f6f7f9;
	}
}

@media (max-width: 1050px) {

	.roosevelt-header__topbar-links {
		padding-inline: 1.5rem;
	}

	.roosevelt-header__inner {
		padding-left: 1.5rem;
	}

	.roosevelt-header__actions {
		gap: 0.7rem;
	}

	.roosevelt-header__admission,
	.roosevelt-header__menu-toggle {
		min-width: auto;
		padding-inline: 1rem;
	}

	.roosevelt-home__inner,
	.roosevelt-home__lead {
		width: calc(100% - 3rem);
	}

	.roosevelt-alliances__logo {
		flex-basis: clamp(14rem, 29vw, 17rem);
	}

	.roosevelt-news__card {
		flex-basis: calc((100% - 1.4rem) / 2);
	}

	.roosevelt-news__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.roosevelt-news-article__related-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-career__layout {
		grid-template-columns: minmax(0, 16rem) minmax(0, 1fr);
		gap: 2.25rem;
	}

	.roosevelt-footer__grid {
		gap: 1.8rem;
	}

	.roosevelt-header__admission + .roosevelt-header__menu-toggle {
		margin-left: -0.7rem;
	}
}

@media (max-width: 760px) {

	.roosevelt-header__topbar-links {
		padding-inline: 1rem;
	}

	.roosevelt-career-page {
		--roosevelt-career-header-clearance: calc(var(--roosevelt-admin-bar-offset, 0px) + 5.6rem);
	}

	.roosevelt-header__inner {
		min-height: 4.6rem;
		padding-left: 1rem;
	}

	.roosevelt-header__brand {
		min-width: 0;
	}

	.roosevelt-header__search,
	.roosevelt-header__language {
		display: none;
	}

	.roosevelt-header__admission,
	.roosevelt-header__menu-toggle {
		padding-inline: 0.75rem;
		font-size: 0.65rem;
	}

	.roosevelt-header__menu-toggle {
		padding-inline: 1rem;
	}

	.roosevelt-header__menu {
		padding: 1rem;
	}

	.roosevelt-header__menu-item--careers {
		align-items: stretch;
		width: 100%;
	}

	.roosevelt-home__inner,
	.roosevelt-home__lead {
		width: calc(100% - 2rem);
	}

	.roosevelt-home__hero-controls {
		bottom: 1rem;
	}

	.roosevelt-home__stats-grid,
	.roosevelt-why__cards,
	.roosevelt-footer__grid,
	.roosevelt-footer__contact {
		grid-template-columns: 1fr 1fr;
	}

	.roosevelt-stat {
		margin-bottom: 1.6rem;
	}

	.roosevelt-careers__layout,
	.roosevelt-home__lead {
		grid-template-columns: 1fr;
	}

	.roosevelt-careers__tab {
		min-height: 4.2rem;
	}

	.roosevelt-careers__image {
		height: 15rem;
	}

	.roosevelt-section-heading--row {
		align-items: flex-start;
		flex-direction: column;
		gap: 1rem;
	}

	.roosevelt-alliances__toolbar {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-alliances__logo {
		flex-basis: 72vw;
	}

	.roosevelt-news__card {
		flex-basis: 100%;
	}

	.roosevelt-news__toolbar {
		margin-top: 0;
	}

	.roosevelt-home__lead-copy {
		min-height: 32rem;
		padding: 3rem 2rem 1rem;
		border-radius: 2rem 2rem 0 0;
	}

	.roosevelt-home__lead-form-wrap {
		padding: 2rem;
		border-radius: 0 0 2rem 2rem;
	}

	.roosevelt-news__filter-bar {
		align-items: stretch;
		flex-direction: column;
	}

	.roosevelt-news__search-wrap {
		min-width: 100%;
	}

	.roosevelt-news__grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-news-article__layout {
		grid-template-columns: 1fr;
		gap: 2.25rem;
	}

	.roosevelt-news-article__sidebar {
		position: static;
	}

	.roosevelt-news-article__sidebar-card {
		padding: 1.1rem 1rem;
	}

	.roosevelt-news-article__toc {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 0.6rem;
	}

	.roosevelt-news-article__hero,
	.roosevelt-news-article__hero-inner {
		min-height: 29rem;
	}

	.roosevelt-news-article__hero-inner {
		padding-block: 3rem;
	}

	.roosevelt-career__layout {
		grid-template-columns: 1fr;
	}

	.roosevelt-career__sidebar {
		position: static;
		max-height: none;
	}

	.roosevelt-career__sidebar-card {
		max-height: none;
		overflow: visible;
	}

	.roosevelt-career__vm-grid,
	.roosevelt-career__graduate-grid,
	.roosevelt-career__degree-details {
		grid-template-columns: 1fr;
	}

	.roosevelt-career__quote-card {
		flex-direction: column;
		text-align: center;
	}

	.roosevelt-career__hero,
	.roosevelt-career__hero-inner {
		min-height: 28rem;
	}

	.roosevelt-footer__grid {
		gap: 2.5rem 1.5rem;
	}

	.roosevelt-header__topbar-links a {
		padding-inline: 0.65rem;
		font-size: 0.6rem;
	}

	.roosevelt-header__brand img {
		width: 8.8rem;
	}

	.roosevelt-header__menu > ul {
		align-items: stretch;
		flex-direction: column;
		gap: 0.25rem;
		width: 100%;
	}

	.roosevelt-home__hero h1 {
		font-size: 2.4rem;
	}

	.roosevelt-header__menu > ul > li {
		align-items: stretch;
		width: 100%;
	}

	.roosevelt-header__menu .sub-menu,
	.roosevelt-header__menu .roosevelt-header__sub-menu {
		position: static;
		grid-template-columns: 1fr;
		width: 100%;
		min-width: 0;
		padding: 0.75rem 1rem !important;
		box-shadow: none;
	}

	.roosevelt-career__lead-box .roosevelt-lead-form,
	.roosevelt-career__lead-box .roosevelt-lead-form__row {
		grid-template-columns: 1fr;
	}

	.roosevelt-header.is-scrolled .roosevelt-header__brand img {
		width: 8.1rem;
	}
}

@media (max-width: 520px) {

	.roosevelt-header__admission {
		display: none;
	}

	.roosevelt-home__stats-grid,
	.roosevelt-why__cards,
	.roosevelt-footer__grid,
	.roosevelt-footer__contact,
	.roosevelt-lead-form__row {
		grid-template-columns: 1fr;
	}

	.roosevelt-home__stats-grid {
		padding-block: 2rem;
	}

	.roosevelt-stat {
		margin-bottom: 0;
	}

	.roosevelt-home__video {
		height: 18rem;
	}

	.roosevelt-alliances__logo {
		flex-basis: 78vw;
	}

	.roosevelt-home__section {
		padding-block: 3.5rem;
	}

	.roosevelt-careers__panel-copy {
		padding: 1.7rem;
	}

	.roosevelt-home__lead {
		margin-block: 3.5rem;
	}

	.roosevelt-footer__grid,
	.roosevelt-news-article__related-grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-whatsapp {
		right: calc(1rem + env(safe-area-inset-right, 0px));
		bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
	}

	.roosevelt-home__lead-copy h2 {
		font-size: 2.2rem;
	}

	.roosevelt-stat + .roosevelt-stat {
		margin-top: 1.3rem;
	}
}

/* WooCommerce Roosevelt Store surface. */

@media all {

	.roosevelt-store-page {
		width: 100%;
		background: #fff;
		color: var(--roosevelt-ink);
		font-family: var(--roosevelt-font-family, Montserrat, "Avenir Next", "Segoe UI", sans-serif);
	}
}

@media all {

	.roosevelt-market-hero {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 1.05fr) minmax(18rem, 0.95fr);
		align-items: center;
		gap: clamp(1.5rem, 5vw, 5rem);
		min-height: clamp(29rem, 42vw, 38rem);
		padding: clamp(2rem, 5vw, 5rem);
		border-radius: 1.25rem;
		background: linear-gradient(108deg, rgb(255 255 255 / 94%) 0%, rgb(255 255 255 / 90%) 48%, rgb(255 255 255 / 76%) 100%), url(assets/images/home/why-campus-roosevelt-1080.jpg) center / cover;
		overflow: hidden;
	}
}

/* Roosevelt event agenda and event landing pages. */

@media all {

	.roosevelt-agenda-page {
		width: 100%;
		background: #f6f6f7;
		color: var(--roosevelt-ink);
	}
}

@media all {

	.roosevelt-agenda__hero {
		position: relative;
		isolation: isolate;
		min-height: 28rem;
		background: var(--roosevelt-brand) url(assets/images/home/hero-news.webp) center 42% / cover no-repeat;
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-agenda__hero-video {
		position: absolute;
		z-index: -1;
		inset: 0;
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center 45%;
		pointer-events: none;
	}

	.roosevelt-agenda__hero-inner {
		position: relative;
		z-index: 1;
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.52fr);
		align-items: center;
		gap: clamp(2rem, 8vw, 8rem);
		min-height: 28rem;
		padding-block: 3.5rem;
	}

	.roosevelt-agenda__hero-copy {
		max-width: 49rem;
	}

	.roosevelt-agenda__breadcrumb {
		display: inline-flex;
		align-items: center;
		gap: 0.7rem;
		margin-bottom: 2.25rem;
		color: rgba(255, 255, 255, 0.75);
		font-size: 0.77rem;
		text-decoration: none;
	}

	.roosevelt-agenda__eyebrow {
		display: flex;
		align-items: center;
		gap: 0.65rem;
		margin: 0 0 1rem;
		color: #fff;
		font-size: 0.72rem;
		font-weight: 750;
	}

	.roosevelt-agenda__hero-note {
		position: relative;
		display: flex;
		align-items: flex-start;
		gap: 1rem;
		min-height: 12rem;
		padding: 1.55rem;
		border: 1px solid rgba(255, 255, 255, 0.25);
		border-radius: 1rem;
		background: rgba(255, 255, 255, 0.08);
		backdrop-filter: blur(8px);
	}

	.roosevelt-agenda__hero-note-icon {
		position: relative;
		z-index: 1;
		display: grid;
		flex: 0 0 2.8rem;
		width: 2.8rem;
		height: 2.8rem;
		place-items: center;
		border-radius: 0.85rem;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-brand);
		font-size: 1.35rem;
		font-weight: 850;
	}

	.roosevelt-agenda__hero-line {
		position: absolute;
		z-index: 2;
		right: 0;
		bottom: 0;
		left: 0;
		height: 0.35rem;
		background: linear-gradient(90deg, var(--roosevelt-yellow) 0 18%, var(--roosevelt-brand) 18% 100%);
	}

	.roosevelt-agenda__hero::before {
		position: absolute;
		z-index: 0;
		inset: 0;
		background: linear-gradient(105deg, rgba(65, 0, 34, 0.94) 0%, rgba(126, 0, 63, 0.78) 56%, rgba(65, 0, 34, 0.58) 100%);
		content: "";
	}

	.roosevelt-agenda__breadcrumb span {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-agenda__eyebrow span {
		width: 0.5rem;
		height: 0.5rem;
		border-radius: 50%;
		background: var(--roosevelt-yellow);
	}

	.roosevelt-agenda__hero h1 {
		max-width: 45rem;
		margin: 0 0 1rem;
		font-size: clamp(2.5rem, 4.8vw, 3.4rem);
		font-weight: 750;
		line-height: 1.02;
	}

	.roosevelt-agenda__hero-note > div {
		position: relative;
		z-index: 1;
	}

	.roosevelt-agenda__hero-note strong {
		display: block;
		margin-top: 0.5rem;
		font-size: clamp(1.3rem, 2vw, 1.75rem);
		font-weight: 700;
	}

	.roosevelt-agenda__hero-note p {
		margin: 0.35rem 0 0;
		color: rgba(255, 255, 255, 0.73);
		font-size: 0.84rem;
	}

	.roosevelt-agenda__hero-note svg {
		position: absolute;
		right: -1.35rem;
		bottom: -1.7rem;
		width: 8rem;
		color: rgba(255, 255, 255, 0.12);
	}

	.roosevelt-agenda__hero-note > div > span {
		color: rgba(255, 255, 255, 0.7);
		font-size: 0.62rem;
		font-weight: 750;
	}

	.roosevelt-agenda__hero-copy > p:last-child {
		max-width: 38rem;
		margin: 0;
		color: rgba(255, 255, 255, 0.8);
		font-size: clamp(1rem, 1.4vw, 1.18rem);
		line-height: 1.65;
	}
}

@media (prefers-reduced-motion: reduce) {

	.roosevelt-agenda__hero-video {
		visibility: hidden;
	}
}

@media all {

	.roosevelt-agenda__timeline-section {
		padding: clamp(2rem, 4vw, 3.5rem) 0 0;
		background: #f6f6f7;
	}

	.roosevelt-agenda__timeline {
		padding: clamp(1.1rem, 3vw, 2rem);
		border: 1px solid #e5e5e5;
		border-radius: 1.2rem;
		background: #fff;
		box-shadow: 0 1rem 2.8rem rgba(0, 0, 0, 0.055);
		transition: opacity 180ms ease, transform 180ms ease;
	}

	.roosevelt-agenda__timeline-header,
	.roosevelt-agenda__month-nav,
	.roosevelt-agenda__week-heading {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
	}

	.roosevelt-agenda__timeline-header {
		margin-bottom: 1.25rem;
	}

	.roosevelt-agenda__month-nav {
		justify-content: center;
		gap: 0.8rem;
	}

	.roosevelt-agenda__month-strip {
		display: grid;
		grid-auto-columns: minmax(2.35rem, 1fr);
		grid-auto-flow: column;
		gap: 0.15rem;
		padding: 0.55rem 0 1rem;
		border-bottom: 1px solid #e5e5e5;
		overflow-x: auto;
		scrollbar-color: #c8c8c8 transparent;
		scrollbar-width: thin;
	}

	.roosevelt-agenda__month-day {
		position: relative;
		display: flex;
		min-height: 4.5rem;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 0.3rem;
		border-radius: 0.75rem;
		color: var(--roosevelt-ink);
		text-decoration: none;
		transition: background-color 160ms ease, color 160ms ease;
	}

	.roosevelt-agenda__week-heading {
		margin: 1.3rem 0 0.55rem;
	}

	.roosevelt-agenda__week-scroll {
		width: 100%;
		overflow-x: auto;
	}

	.roosevelt-agenda__week-view {
		position: relative;
		display: grid;
		grid-template-columns: repeat(7, minmax(0, 1fr));
		grid-template-rows: 5.55rem repeat(var(--roosevelt-agenda-lanes), minmax(4.1rem, auto));
		gap: 0.45rem;
		min-width: 0;
	}

	.roosevelt-agenda__week-day {
		position: relative;
		z-index: 1;
		min-width: 0;
		text-align: center;
	}

	.roosevelt-agenda__timeline-event {
		z-index: 1;
		display: flex;
		min-width: 0;
		flex-direction: column;
		justify-content: center;
		gap: 0.2rem;
		padding: 0.5rem 0.65rem;
		border: 1px solid #dedede;
		border-left: 3px solid var(--roosevelt-brand);
		border-radius: 0.45rem;
		background: #fff;
		color: var(--roosevelt-ink);
		text-decoration: none;
		transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
	}

	.roosevelt-agenda__timeline-empty {
		z-index: 1;
		display: flex;
		align-items: center;
		margin: 0;
		padding: 1rem;
		border: 1px dashed #d9d9d9;
		border-radius: 0.55rem;
		background: #f7f7f7;
		color: var(--roosevelt-muted-ink);
		font-size: 0.85rem;
	}

	.roosevelt-agenda__content {
		padding-block: clamp(3.5rem, 7vw, 6.5rem);
	}

	.roosevelt-agenda__heading-row {
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
		gap: 2rem;
		margin-bottom: 1.8rem;
	}

	.roosevelt-agenda__section-label {
		margin: 0 0 0.65rem;
		color: var(--roosevelt-brand);
		font-size: 0.67rem;
		font-weight: 800;
	}

	.roosevelt-agenda__period-link,
	.roosevelt-agenda__clear-link {
		display: inline-flex;
		align-items: center;
		gap: 0.65rem;
		color: var(--roosevelt-brand);
		font-size: 0.82rem;
		font-weight: 750;
		text-decoration: none;
	}

	.roosevelt-agenda__filters {
		display: grid;
		grid-template-columns: minmax(13rem, 1fr) minmax(10rem, 0.55fr) minmax(10rem, 0.55fr) auto;
		align-items: center;
		gap: 0.75rem;
		margin-bottom: 2rem;
		padding: 0.8rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.95rem;
		background: #fff;
		box-shadow: 0 0.8rem 2.3rem rgba(20, 20, 20, 0.035);
	}

	.roosevelt-agenda__search,
	.roosevelt-agenda__select-wrap {
		position: relative;
		min-width: 0;
	}

	.roosevelt-agenda__search {
		display: flex;
		align-items: center;
		gap: 0.65rem;
		padding-inline: 0.9rem;
	}

	.roosevelt-agenda__filter-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.7rem;
		min-height: 2.8rem;
		padding: 0.65rem 1.05rem;
		border: 0;
		border-radius: 0.65rem;
		background: var(--roosevelt-brand);
		color: #fff;
		cursor: pointer;
		font: inherit;
		font-size: 0.79rem;
		font-weight: 750;
		transition: background-color 180ms ease, transform 180ms ease;
	}

	.roosevelt-agenda__grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.15rem;
	}

	.roosevelt-agenda__timeline-header h2 {
		margin: 0;
		font-size: clamp(1.35rem, 2.5vw, 1.9rem);
		font-weight: 750;
		line-height: 1.15;
	}

	.roosevelt-agenda__month-nav strong {
		min-width: 10rem;
		color: var(--roosevelt-ink);
		font-size: 0.9rem;
		font-weight: 800;
		text-align: center;
	}

	.roosevelt-agenda__month-nav a {
		display: grid;
		width: 2.55rem;
		height: 2.55rem;
		place-items: center;
		border: 1px solid #dedede;
		border-radius: 50%;
		background: #fff;
		color: var(--roosevelt-brand);
		font-size: 1.2rem;
		text-decoration: none;
		transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
	}

	.roosevelt-agenda__month-day > span {
		color: var(--roosevelt-muted-ink);
		font-size: 0.62rem;
		font-weight: 650;
		text-transform: uppercase;
	}

	.roosevelt-agenda__month-day > strong {
		font-size: 0.82rem;
		font-weight: 700;
	}

	.roosevelt-agenda__month-day > i {
		width: 0.3rem;
		height: 0.3rem;
		border-radius: 50%;
		background: transparent;
	}

	.roosevelt-agenda__month-day:where(:hover, :focus-visible, .is-selected) > span {
		color: rgba(255, 255, 255, 0.78);
	}

	.roosevelt-agenda__week-heading h3 {
		margin: 0;
		font-size: 1rem;
		font-weight: 750;
	}

	.roosevelt-agenda__week-heading p {
		margin: 0.25rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.78rem;
	}

	.roosevelt-agenda__week-heading > a {
		color: var(--roosevelt-brand);
		font-size: 0.78rem;
		font-weight: 750;
		text-decoration: none;
	}

	.roosevelt-agenda__week-view::before {
		position: absolute;
		top: 3.7rem;
		right: 0;
		left: 0;
		height: 1px;
		background: #d5d5d5;
		content: "";
	}

	.roosevelt-agenda__week-day > a {
		display: flex;
		height: 100%;
		flex-direction: column;
		align-items: center;
		gap: 0.35rem;
		color: var(--roosevelt-ink);
		text-decoration: none;
	}

	.roosevelt-agenda__timeline-event > strong {
		display: -webkit-box;
		font-size: 0.72rem;
		font-weight: 700;
		line-height: 1.25;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		text-overflow: ellipsis;
		overflow: hidden;
	}

	.roosevelt-agenda__heading-row h2 {
		margin: 0;
		font-size: clamp(1.8rem, 3vw, 2.7rem);
		font-weight: 750;
		line-height: 1.1;
	}

	.roosevelt-agenda__search svg {
		flex: 0 0 1.2rem;
		width: 1.2rem;
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-agenda__search input,
	.roosevelt-agenda__select-wrap select {
		width: 100%;
		min-height: 2.8rem;
		border: 0;
		background: transparent;
		color: var(--roosevelt-ink);
		font: inherit;
		font-size: 0.84rem;
	}

	.roosevelt-agenda__select-wrap select {
		padding-inline: 0.8rem 2rem;
		border-left: 1px solid #e5e5e5;
	}

	.roosevelt-agenda__week-day > a > span {
		max-width: 100%;
		padding-top: 0.3rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.64rem;
		font-weight: 700;
		text-overflow: ellipsis;
		text-transform: uppercase;
		white-space: nowrap;
		overflow: hidden;
	}

	.roosevelt-agenda__week-day > a > strong {
		display: grid;
		width: 1.7rem;
		height: 1.7rem;
		place-items: center;
		border: 1px solid transparent;
		border-radius: 50%;
		background: #fff;
		font-size: 0.78rem;
		font-weight: 750;
	}

	.roosevelt-agenda__timeline-header .roosevelt-agenda__section-label {
		margin-bottom: 0.35rem;
	}

	.roosevelt-agenda__month-day:hover,
	.roosevelt-agenda__month-day:focus-visible {
		background: var(--roosevelt-brand);
		color: #fff;
		outline: none;
	}

	.roosevelt-agenda__month-day.is-selected {
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-agenda__timeline-event:hover,
	.roosevelt-agenda__timeline-event:focus-visible {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
		transform: translateY(-1px);
	}

	.roosevelt-agenda__timeline-event.is-past {
		border-color: #d5d5d5;
		border-left-color: #aaa;
		background: #f2f2f2;
		color: #575757;
	}

	.roosevelt-agenda__timeline-event.is-selected {
		border-color: var(--roosevelt-brand);
		border-left-color: var(--roosevelt-yellow);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-agenda__period-link:hover,
	.roosevelt-agenda__period-link:focus-visible,
	.roosevelt-agenda__clear-link:hover,
	.roosevelt-agenda__clear-link:focus-visible {
		color: var(--roosevelt-brand-dark);
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-agenda__filter-button:hover,
	.roosevelt-agenda__filter-button:focus-visible {
		background: var(--roosevelt-brand-dark);
		transform: translateY(-1px);
	}

	.roosevelt-agenda__month-nav a:hover,
	.roosevelt-agenda__month-nav a:focus-visible {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-agenda__month-day.has-event > i {
		background: var(--roosevelt-brand);
	}

	.roosevelt-agenda__month-day:where(:hover, :focus-visible, .is-selected).has-event > i {
		background: var(--roosevelt-yellow);
	}

	.roosevelt-agenda__week-heading > a:hover,
	.roosevelt-agenda__week-heading > a:focus-visible {
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-agenda__timeline-event > span:first-child {
		color: var(--roosevelt-brand);
		font-size: 0.59rem;
		font-weight: 750;
		line-height: 1.2;
	}

	.roosevelt-agenda__search input:focus,
	.roosevelt-agenda__select-wrap select:focus {
		outline: 2px solid var(--roosevelt-brand);
		outline-offset: 3px;
	}

	.roosevelt-agenda__week-day.is-selected > a > span,
	.roosevelt-agenda__week-day.is-today > a > span {
		color: var(--roosevelt-brand);
	}

	.roosevelt-agenda__week-day.is-selected > a > strong {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-agenda__timeline.is-agenda-leaving[data-agenda-direction="next"] {
		opacity: 0;
		transform: translateX(-1rem);
	}

	.roosevelt-agenda__timeline.is-agenda-leaving[data-agenda-direction="previous"],
	.roosevelt-agenda__timeline.is-agenda-entering[data-agenda-direction="next"] {
		opacity: 0;
		transform: translateX(1rem);
	}

	.roosevelt-agenda__timeline.is-agenda-entering[data-agenda-direction="previous"] {
		opacity: 0;
		transform: translateX(-1rem);
	}

	.roosevelt-agenda__timeline-event.is-selected.is-past {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-agenda__month-day.is-week-start:not(:first-child)::before {
		position: absolute;
		top: 0.35rem;
		bottom: 0.35rem;
		left: -0.1rem;
		width: 1px;
		background: #d0d0d0;
		content: "";
	}

	.roosevelt-agenda__timeline-event:hover > span:first-child,
	.roosevelt-agenda__timeline-event:focus-visible > span:first-child {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-agenda__timeline-event.is-past > span:first-child {
		color: #666;
	}

	.roosevelt-agenda__timeline-event.is-selected > span:first-child {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-agenda__week-day.is-today:not(.is-selected) > a > strong {
		border-color: var(--roosevelt-yellow);
	}
}

@media all {

	.roosevelt-agenda-card {
		min-width: 0;
		border: 1px solid #e5e5e5;
		border-radius: 1rem;
		background: #fff;
		box-shadow: 0 0.8rem 2rem rgba(20, 20, 20, 0.035);
		overflow: hidden;
		transition: box-shadow 220ms ease, transform 220ms ease;
	}

	.roosevelt-agenda-card:hover,
	.roosevelt-agenda-card:focus-within {
		box-shadow: 0 1.3rem 2.8rem rgba(20, 20, 20, 0.11);
		transform: translateY(-0.2rem);
	}
}

@media all {

	.roosevelt-agenda-card--featured {
		display: grid;
		grid-column: 1 / -1;
		grid-template-columns: minmax(0, 1.1fr) minmax(20rem, 0.9fr);
		min-height: 22rem;
	}
}

@media all {

	.roosevelt-agenda-card__media {
		position: relative;
		display: block;
		aspect-ratio: 4 / 3;
		min-height: 13rem;
		background: #92004d;
		overflow: hidden;
	}
}

@media all {

	.roosevelt-agenda-card--featured .roosevelt-agenda-card__media {
		align-self: stretch;
		aspect-ratio: auto;
		min-height: 22rem;
		background: #f0f1f2;
	}
}

@media all {

	.roosevelt-agenda-card__image {
		position: absolute;
		inset: 0;
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 450ms cubic-bezier(0.2, 0.7, 0.2, 1);
	}
}

@media all {

	.roosevelt-agenda-card--featured .roosevelt-agenda-card__image {
		min-height: 0;
		object-fit: cover;
	}
}

@media all {

	.roosevelt-agenda-card:hover .roosevelt-agenda-card__image {
		transform: scale(1.035);
	}
}

@media all {

	.roosevelt-agenda-card--featured:hover .roosevelt-agenda-card__image {
		transform: none;
	}
}

@media all {

	.roosevelt-agenda-card__placeholder {
		position: absolute;
		inset: 0;
		display: grid;
		place-items: center;
		background: var(--roosevelt-brand);
	}

	.roosevelt-agenda-card__date {
		position: absolute;
		top: 1rem;
		left: 1rem;
		display: grid;
		width: 3.5rem;
		min-height: 3.8rem;
		align-content: center;
		justify-items: center;
		border-radius: 0.7rem;
		background: #fff;
		box-shadow: 0 0.35rem 1rem rgba(0, 0, 0, 0.15);
		color: var(--roosevelt-ink);
		line-height: 1;
	}

	.roosevelt-agenda-card__body {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		min-height: 16rem;
		padding: 1.3rem 1.4rem 1.45rem;
	}

	.roosevelt-agenda-card__placeholder::before,
	.roosevelt-agenda-card__placeholder::after {
		position: absolute;
		width: 12rem;
		height: 12rem;
		border: 1px solid rgba(255, 255, 255, 0.17);
		border-radius: 50%;
		content: "";
	}

	.roosevelt-agenda-card__placeholder::after {
		width: 17rem;
		height: 17rem;
	}

	.roosevelt-agenda-card__placeholder > span {
		position: relative;
		z-index: 1;
		display: grid;
		width: 4.5rem;
		height: 4.5rem;
		place-items: center;
		border-radius: 1.2rem;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-brand);
		font-size: 2rem;
		font-weight: 850;
	}

	.roosevelt-agenda-card__date strong {
		font-size: 1.25rem;
		font-weight: 800;
	}

	.roosevelt-agenda-card__date > span {
		margin-top: 0.28rem;
		color: var(--roosevelt-brand);
		font-size: 0.63rem;
		font-weight: 800;
	}
}

@media all {

	.roosevelt-agenda-card--featured .roosevelt-agenda-card__body {
		justify-content: center;
		min-height: 22rem;
		padding: clamp(1.6rem, 4vw, 3.2rem);
	}
}

@media all {

	.roosevelt-agenda-card__eyebrow {
		margin: 0 0 0.65rem;
		color: var(--roosevelt-brand);
		font-size: 0.65rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-agenda-card__body h2 {
		margin: 0;
		font-size: clamp(1.15rem, 1.55vw, 1.38rem);
		font-weight: 750;
		line-height: 1.25;
	}
}

@media all {

	.roosevelt-agenda-card--featured .roosevelt-agenda-card__body h2 {
		max-width: 36rem;
		font-size: clamp(1.6rem, 2.45vw, 2.55rem);
	}
}

@media all {

	.roosevelt-agenda-card__excerpt {
		margin: 0.8rem 0 1rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.86rem;
		line-height: 1.6;
	}

	.roosevelt-agenda-card__meta {
		display: grid;
		gap: 0.45rem;
		width: 100%;
		margin-top: auto;
		padding-top: 0.9rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.75rem;
	}

	.roosevelt-agenda-card__link {
		display: inline-flex;
		align-items: center;
		gap: 0.6rem;
		margin-top: 1rem;
		color: var(--roosevelt-brand);
		font-size: 0.78rem;
		font-weight: 750;
		text-decoration: none;
	}

	.roosevelt-agenda-card__meta > span {
		display: flex;
		align-items: flex-start;
		gap: 0.5rem;
	}

	.roosevelt-agenda-card__body h2 a {
		color: inherit;
		text-decoration: none;
	}

	.roosevelt-agenda-card__meta > span > span {
		color: var(--roosevelt-brand);
		font-size: 1rem;
		line-height: 1.15;
	}

	.roosevelt-agenda-card__link:hover,
	.roosevelt-agenda-card__link:focus-visible {
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-agenda-card__body h2 a:hover,
	.roosevelt-agenda-card__body h2 a:focus-visible {
		color: var(--roosevelt-brand);
	}
}

@media all {

	.roosevelt-agenda__empty {
		max-width: 45rem;
		margin: 2rem auto 0;
		padding: clamp(2rem, 6vw, 4.5rem);
		border: 1px solid #e5e5e5;
		border-radius: 1rem;
		background: #fff;
		text-align: center;
	}

	.roosevelt-agenda__empty-icon {
		display: grid;
		width: 3.5rem;
		height: 3.5rem;
		place-items: center;
		margin: 0 auto 1.3rem;
		border-radius: 1rem;
		background: #f5f5f5;
		color: var(--roosevelt-brand);
		font-size: 1.5rem;
		font-weight: 850;
	}

	.roosevelt-agenda__pagination {
		display: flex;
		justify-content: center;
		margin-top: 2.6rem;
	}

	.roosevelt-agenda__empty h2 {
		margin: 0 0 0.7rem;
		font-size: clamp(1.5rem, 3vw, 2.1rem);
		line-height: 1.2;
	}

	.roosevelt-agenda__pagination .page-numbers {
		display: flex;
		align-items: center;
		gap: 0.5rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-agenda__empty > p:not(.roosevelt-agenda__section-label) {
		margin: 0 auto 1.2rem;
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-agenda__pagination .page-numbers li {
		display: inline-flex;
	}

	.roosevelt-agenda__pagination .page-numbers a,
	.roosevelt-agenda__pagination .page-numbers .current {
		display: grid;
		min-width: 2.6rem;
		min-height: 2.6rem;
		place-items: center;
		padding-inline: 0.7rem;
		border: 1px solid #e2dfe1;
		border-radius: 0.65rem;
		background: #fff;
		color: var(--roosevelt-ink);
		font-size: 0.78rem;
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-agenda__pagination .page-numbers .current,
	.roosevelt-agenda__pagination .page-numbers a:hover,
	.roosevelt-agenda__pagination .page-numbers a:focus-visible {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}
}

@media all {

	.roosevelt-agenda-event {
		width: 100%;
		background: #fff;
		color: var(--roosevelt-ink);
	}

	.roosevelt-agenda-event__hero {
		position: relative;
		min-height: 38rem;
		background: var(--roosevelt-brand);
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-agenda-event__hero-media,
	.roosevelt-agenda-event__hero-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-agenda-event__hero-shade {
		background: linear-gradient(90deg, rgba(20, 20, 20, 0.9) 0%, rgba(20, 20, 20, 0.72) 48%, rgba(20, 20, 20, 0.32) 100%);
	}

	.roosevelt-agenda-event__hero-inner {
		position: relative;
		z-index: 1;
		display: flex;
		min-height: 38rem;
		flex-direction: column;
		justify-content: center;
		padding-block: 3rem;
	}

	.roosevelt-agenda-event__back {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		align-self: flex-start;
		margin-bottom: 2.4rem;
		color: rgba(255, 255, 255, 0.82);
		font-size: 0.76rem;
		font-weight: 750;
		text-decoration: none;
	}

	.roosevelt-agenda-event__hero-copy {
		max-width: 56rem;
	}

	.roosevelt-agenda-event__badges {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem;
		margin-bottom: 1rem;
	}

	.roosevelt-agenda-event__tag,
	.roosevelt-agenda-event__status {
		display: inline-flex;
		align-items: center;
		min-height: 1.8rem;
		padding: 0.35rem 0.65rem;
		border-radius: 999px;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
		font-size: 0.65rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-agenda-event__status {
		border: 1px solid rgba(255, 255, 255, 0.35);
		background: rgba(255, 255, 255, 0.13);
		color: #fff;
	}

	.roosevelt-agenda-event__status--cancelled {
		border-color: #ffd6d6;
		background: #fff;
		color: #9a2525;
	}

	.roosevelt-agenda-event__lead {
		max-width: 43rem;
		margin: 0;
		color: rgba(255, 255, 255, 0.86);
		font-size: clamp(1rem, 1.5vw, 1.2rem);
		line-height: 1.65;
	}

	.roosevelt-agenda-event__hero-date {
		display: flex;
		align-items: center;
		gap: 0.6rem;
		margin: 1.3rem 0 0;
		color: #fff;
		font-size: 0.9rem;
		font-weight: 700;
	}

	.roosevelt-agenda-event__layout {
		display: grid;
		grid-template-columns: minmax(15rem, 19rem) minmax(0, 1fr);
		align-items: start;
		gap: clamp(2rem, 6vw, 5.5rem);
		padding-block: clamp(3rem, 6vw, 5.5rem);
	}

	.roosevelt-agenda-event__sidebar {
		position: sticky;
		top: 6rem;
	}

	.roosevelt-agenda-event__details {
		padding: 1.5rem;
		border: 1px solid #e9e5e7;
		border-top: 4px solid var(--roosevelt-brand);
		border-radius: 0.9rem;
		background: #fff;
		box-shadow: 0 1rem 2.5rem rgba(20, 20, 20, 0.07);
	}

	.roosevelt-agenda-event__details-label {
		margin: 0 0 1.2rem;
		color: var(--roosevelt-brand);
		font-size: 0.67rem;
		font-weight: 800;
	}

	.roosevelt-agenda-event__detail {
		display: flex;
		align-items: flex-start;
		gap: 0.8rem;
		padding-block: 0.85rem;
		border-top: 1px solid #efedef;
	}

	.roosevelt-agenda-event__detail-icon {
		display: grid;
		flex: 0 0 2.2rem;
		width: 2.2rem;
		height: 2.2rem;
		place-items: center;
		border-radius: 0.7rem;
		background: #f5f5f5;
		color: var(--roosevelt-brand);
		font-size: 1rem;
	}

	.roosevelt-agenda-event__register,
	.roosevelt-agenda-event__calendar {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.6rem;
		width: 100%;
		min-height: 3rem;
		margin-top: 1rem;
		padding: 0.7rem 0.9rem;
		border: 1px solid var(--roosevelt-brand);
		border-radius: 0.65rem;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 0.78rem;
		font-weight: 750;
		text-decoration: none;
		transition: background-color 180ms ease, color 180ms ease;
	}

	.roosevelt-agenda-event__calendar {
		margin-top: 0.55rem;
		background: #fff;
		color: var(--roosevelt-brand);
	}

	.roosevelt-agenda-event__notice {
		margin: 1rem 0 0;
		padding: 0.8rem;
		border-radius: 0.55rem;
		background: #f7f5f6;
		color: var(--roosevelt-muted-ink);
		font-size: 0.75rem;
		line-height: 1.5;
	}

	.roosevelt-agenda-event__notice--cancelled {
		background: #fff0f0;
		color: #842020;
	}

	.roosevelt-agenda-event__content {
		min-width: 0;
		color: #303035;
		font-size: 1rem;
		line-height: 1.8;
	}

	.roosevelt-agenda-event__related {
		padding-block: 1rem 5.5rem;
	}

	.roosevelt-agenda-event__hero-media img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.roosevelt-agenda-event__hero-copy h1 {
		max-width: 54rem;
		margin: 0 0 1rem;
		font-size: clamp(2.4rem, 5.3vw, 4.8rem);
		font-weight: 750;
		line-height: 1.04;
	}

	.roosevelt-agenda-event__hero-date > span {
		color: var(--roosevelt-yellow);
		font-size: 1.2rem;
	}

	.roosevelt-agenda-event__detail > div {
		display: grid;
		gap: 0.25rem;
		min-width: 0;
	}

	.roosevelt-agenda-event__detail strong {
		font-size: 0.76rem;
	}

	.roosevelt-agenda-event__detail a {
		display: inline-flex;
		align-items: center;
		gap: 0.3rem;
		margin-top: 0.25rem;
		color: var(--roosevelt-brand);
		font-size: 0.72rem;
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-agenda-event__content h2,
	.roosevelt-agenda-event__content h3 {
		margin-top: 2.2rem;
		color: var(--roosevelt-ink);
		font-weight: 750;
		line-height: 1.2;
	}

	.roosevelt-agenda-event__content h2 {
		font-size: clamp(1.6rem, 2.8vw, 2.2rem);
	}

	.roosevelt-agenda-event__content h3 {
		font-size: 1.35rem;
	}

	.roosevelt-agenda-event__content p,
	.roosevelt-agenda-event__content li {
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-agenda-event__content a {
		color: var(--roosevelt-brand);
		text-underline-offset: 0.2em;
	}

	.roosevelt-agenda-event__content img {
		max-width: 100%;
		height: auto;
		border-radius: 0.8rem;
	}

	.roosevelt-agenda-event__detail > div > span {
		color: var(--roosevelt-muted-ink);
		font-size: 0.76rem;
		line-height: 1.55;
	}

	.roosevelt-agenda-event__back:hover,
	.roosevelt-agenda-event__back:focus-visible {
		color: #fff;
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-agenda-event__register:hover,
	.roosevelt-agenda-event__register:focus-visible {
		background: var(--roosevelt-brand-dark);
		color: #fff;
	}

	.roosevelt-agenda-event__calendar:hover,
	.roosevelt-agenda-event__calendar:focus-visible {
		background: #f5f5f5;
		color: var(--roosevelt-brand-dark);
	}

	.roosevelt-agenda-event__content > :first-child {
		margin-top: 0;
	}

	.roosevelt-agenda-event__content .wp-block-gallery,
	.roosevelt-agenda-event__content .wp-block-embed {
		margin-block: 2rem;
	}

	.roosevelt-agenda-event__related .roosevelt-agenda__grid--related {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.roosevelt-agenda-event__detail a:hover,
	.roosevelt-agenda-event__detail a:focus-visible {
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}
}

@media (max-width: 1050px) {

	.roosevelt-agenda__hero-inner {
		gap: 2.5rem;
	}

	.roosevelt-agenda__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-agenda__filters {
		grid-template-columns: minmax(12rem, 1fr) minmax(9rem, 0.65fr) minmax(9rem, 0.65fr) auto;
	}

	.roosevelt-agenda-event__layout {
		grid-template-columns: minmax(14rem, 17rem) minmax(0, 1fr);
		gap: 2.5rem;
	}
}

@media (max-width: 760px) {

	.roosevelt-agenda__hero,
	.roosevelt-agenda__hero-inner {
		min-height: 0;
	}

	.roosevelt-agenda__hero-inner {
		grid-template-columns: 1fr;
		gap: 2rem;
		padding-block: 2.3rem 3rem;
	}

	.roosevelt-agenda__breadcrumb {
		margin-bottom: 1.6rem;
	}

	.roosevelt-agenda__hero-note {
		min-height: 0;
	}

	.roosevelt-agenda__heading-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 1rem;
	}

	.roosevelt-agenda__timeline-header {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-agenda__month-nav {
		align-self: stretch;
		justify-content: space-between;
	}

	.roosevelt-agenda__week-view {
		min-width: 760px;
	}

	.roosevelt-agenda__filters {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.55rem;
	}

	.roosevelt-agenda__search {
		grid-column: 1 / -1;
		min-height: 2.8rem;
		border-bottom: 1px solid #e5e5e5;
	}

	.roosevelt-agenda__filter-button {
		grid-column: 1 / -1;
	}

	.roosevelt-agenda__grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-agenda-card--featured {
		grid-column: auto;
		grid-template-columns: 1fr;
	}

	.roosevelt-agenda-event__hero,
	.roosevelt-agenda-event__hero-inner {
		min-height: 34rem;
	}

	.roosevelt-agenda-event__layout {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.roosevelt-agenda-event__sidebar {
		position: static;
		order: 1;
	}

	.roosevelt-agenda-event__content {
		order: 2;
	}

	.roosevelt-agenda__month-nav strong {
		flex: 1;
	}

	.roosevelt-agenda__select-wrap select {
		border-left: 0;
	}

	.roosevelt-agenda-event__related .roosevelt-agenda__grid--related {
		grid-template-columns: 1fr;
	}

	.roosevelt-agenda-card--featured .roosevelt-agenda-card__media,
	.roosevelt-agenda-card--featured .roosevelt-agenda-card__image {
		min-height: 16rem;
	}

	.roosevelt-agenda-card--featured .roosevelt-agenda-card__body {
		min-height: 0;
		padding: 1.35rem;
	}
}

@media (max-width: 520px) {

	.roosevelt-agenda__content {
		padding-block: 3.5rem;
	}

	.roosevelt-agenda__filters {
		grid-template-columns: 1fr;
	}

	.roosevelt-agenda__search,
	.roosevelt-agenda__filter-button {
		grid-column: auto;
	}

	.roosevelt-agenda-card__media,
	.roosevelt-agenda-card__image {
		min-height: 12rem;
	}

	.roosevelt-agenda-event__hero,
	.roosevelt-agenda-event__hero-inner {
		min-height: 32rem;
	}

	.roosevelt-agenda-event__details {
		padding: 1.2rem;
	}

	.roosevelt-agenda__hero h1 {
		font-size: 2.5rem;
	}

	.roosevelt-agenda__select-wrap select {
		min-height: 2.5rem;
		padding-inline: 0.85rem;
		border-top: 1px solid #e5e5e5;
	}

	.roosevelt-agenda-event__hero-copy h1 {
		font-size: 2.35rem;
	}

	.roosevelt-agenda__pagination .page-numbers {
		gap: 0.25rem;
	}

	.roosevelt-agenda__pagination .page-numbers a,
	.roosevelt-agenda__pagination .page-numbers .current {
		min-width: 2.25rem;
		min-height: 2.25rem;
	}
}

@media all {

	.roosevelt-market-hero__copy {
		position: relative;
		z-index: 1;
		max-width: 43rem;
	}

	.roosevelt-market-hero__eyebrow,
	.roosevelt-market-catalog-heading__eyebrow,
	.roosevelt-market-address__eyebrow {
		display: flex;
		align-items: center;
		gap: 0.65rem;
		margin: 0 0 1.2rem;
		color: var(--roosevelt-brand);
		font-size: 0.72rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-market-hero__actions {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 1.25rem;
		margin-block-start: 1.75rem;
	}

	.roosevelt-market-hero__secondary {
		color: var(--roosevelt-ink);
		font-size: 0.82rem;
		font-weight: 700;
		text-decoration-thickness: 1px;
		text-underline-offset: 0.25em;
	}

	.roosevelt-market-hero__highlights {
		display: flex;
		flex-wrap: wrap;
		gap: 1.5rem;
		margin: 2rem 0 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-market-hero__visual {
		position: relative;
		display: grid;
		place-items: center;
		min-width: 0;
		min-height: 20rem;
	}

	.roosevelt-market-hero__halo {
		position: absolute;
		width: min(100%, 31rem);
		aspect-ratio: 1;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 50%;
		background: radial-gradient(circle, rgb(255 255 255 / 88%) 0%, rgb(245 245 245 / 52%) 48%, transparent 69%);
	}

	.roosevelt-market-hero__stamp {
		position: absolute;
		right: 0;
		bottom: 1.5rem;
		display: grid;
		gap: 0.25rem;
		padding: 0.8rem 1rem;
		border: 1px solid rgb(255 255 255 / 25%);
		background: var(--roosevelt-brand);
		box-shadow: 0 0.75rem 2rem rgb(20 20 20 / 16%);
		color: #fff;
		transform: rotate(-3deg);
	}

	.roosevelt-market-hero__eyebrow > span {
		width: 0.55rem;
		height: 0.55rem;
		border-radius: 50%;
		background: var(--roosevelt-yellow);
	}

	.roosevelt-market-hero .roosevelt-market-hero__title {
		max-width: 12ch;
		margin: 0;
		font-size: clamp(2.4rem, 4vw, 4rem);
		font-weight: 800;
		line-height: 1.05;
	}

	.roosevelt-market-hero__highlights li {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.75rem;
		font-weight: 700;
	}

	.roosevelt-market-hero__visual img {
		position: relative;
		width: min(100%, 34rem);
		max-height: 34rem;
		object-fit: contain;
		filter: drop-shadow(0 1.4rem 1.6rem rgb(20 20 20 / 14%));
	}

	.roosevelt-market-hero__stamp span {
		font-size: 0.65rem;
		font-weight: 800;
	}

	.roosevelt-market-hero__stamp strong {
		font-size: 0.56rem;
	}

	.roosevelt-market-hero__highlights li span {
		color: var(--roosevelt-brand);
		font-size: 0.65rem;
		font-weight: 800;
	}

	.roosevelt-market-hero__actions .roosevelt-button {
		display: inline-flex;
		align-items: center;
		gap: 0.75rem;
		min-height: 3.35rem;
		padding-inline: 1.3rem;
		border-radius: 0.35rem;
		font-size: 0.78rem;
		font-weight: 800;
		text-decoration: none;
		text-transform: uppercase;
	}

	.roosevelt-market-hero__copy > p:not(.roosevelt-market-hero__eyebrow) {
		max-width: 36rem;
		margin: 1.25rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: clamp(1rem, 1.5vw, 1.18rem);
		line-height: 1.65;
	}

	.roosevelt-market-hero__actions .roosevelt-button span {
		font-size: 1.2rem;
		transition: transform 180ms ease;
	}

	.roosevelt-market-hero__actions .roosevelt-button:hover span,
	.roosevelt-market-hero__actions .roosevelt-button:focus-visible span {
		transform: translateX(0.2rem);
	}
}

@media all {

	.roosevelt-market-catalog-heading {
		display: flex;
		align-items: end;
		justify-content: space-between;
		gap: 2rem;
		margin-block-end: 1.5rem;
	}

	.roosevelt-market-catalog-heading__eyebrow {
		margin-block-end: 0.65rem;
	}

	.roosevelt-market-catalog-heading h2 {
		margin: 0;
		font-size: clamp(1.8rem, 3.1vw, 2.8rem);
		line-height: 1.08;
	}

	.roosevelt-market-catalog-heading > div > p:last-child {
		margin: 0.55rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.92rem;
	}
}

@media all {

	.roosevelt-market-search {
		display: flex;
		flex: 0 1 24rem;
		min-width: min(100%, 17rem);
		min-height: 3.2rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.5rem;
		background: #fff;
	}

	.roosevelt-market-search button {
		display: grid;
		place-items: center;
		flex: 0 0 3rem;
		border: 0;
		border-radius: 0 0.45rem 0.45rem 0;
		background: var(--roosevelt-brand);
		color: #fff;
		cursor: pointer;
		font-size: 1.5rem;
	}

	.roosevelt-market-search input[type="search"] {
		width: 100%;
		min-width: 0;
		padding-inline: 1rem;
		border: 0;
		border-radius: inherit;
		background: transparent;
		color: var(--roosevelt-ink);
		font: inherit;
		font-size: 0.82rem;
	}
}

@media all {

	.roosevelt-store__cart-row {
		display: flex;
		justify-content: flex-end;
		margin-block: -0.5rem 1.5rem;
	}

	.roosevelt-store__single-cart {
		display: flex;
		justify-content: flex-end;
		margin-block-end: 1.5rem;
	}

	.roosevelt-store__cart svg {
		width: 1.15rem;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.7;
	}
}

@media all {

	.site-main:has(.roosevelt-store-page) {
		padding-block: 0;
	}
}

@media all {

	.roosevelt-store__container {
		width: var(--roosevelt-home-inner);
		max-width: var(--roosevelt-wide-width);
		margin-inline: auto;
		padding-block: clamp(3.5rem, 7vw, 6.5rem);
	}

	.roosevelt-store__header {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: end;
		gap: 1rem 2rem;
		padding-block-end: 2rem;
		border-block-end: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-store__eyebrow {
		grid-column: 1 / -1;
		margin: 0;
		color: var(--roosevelt-brand);
		font-size: 0.75rem;
		font-weight: 700;
		text-transform: uppercase;
	}

	.roosevelt-store__intro {
		grid-column: 1 / 2;
		max-width: 42rem;
		margin: 0.75rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: clamp(1rem, 1.4vw, 1.2rem);
	}

	.roosevelt-store__cart {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.55rem;
		min-height: 3rem;
		padding: 0.75rem 1rem;
		border: 1px solid var(--roosevelt-brand);
		border-radius: 999px;
		background: #fff;
		color: var(--roosevelt-brand);
		font-size: 0.8rem;
		font-weight: 700;
		text-decoration: none;
		text-transform: uppercase;
	}

	.roosevelt-store__cart-count {
		display: inline-grid;
		place-items: center;
		min-width: 1.4rem;
		height: 1.4rem;
		padding-inline: 0.25rem;
		border-radius: 50%;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
		font-size: 0.7rem;
	}

	.roosevelt-store__categories {
		margin-block: 2rem 3rem;
		padding-block-end: 1rem;
		border-block-end: 2px solid var(--roosevelt-yellow);
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}

	.roosevelt-store__toolbar {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		margin-block-end: 1.25rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.9rem;
	}

	.roosevelt-store__header h1 {
		margin: 0;
		font-size: clamp(2.5rem, 6vw, 5rem);
		line-height: 0.98;
	}

	.roosevelt-store__categories::-webkit-scrollbar {
		display: none;
	}

	.roosevelt-store__categories ul {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: clamp(1rem, 3vw, 2.5rem);
		min-width: max-content;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-store__categories a {
		position: relative;
		color: var(--roosevelt-ink);
		font-size: 0.82rem;
		font-weight: 700;
		text-decoration: none;
		text-transform: uppercase;
	}

	.roosevelt-store__categories a::after {
		position: absolute;
		right: 0;
		bottom: -0.65rem;
		left: 0;
		height: 0.2rem;
		background: var(--roosevelt-brand);
		content: "";
		transform: scaleX(0);
		transform-origin: left;
		transition: transform 180ms ease;
	}

	.roosevelt-store__cart:hover,
	.roosevelt-store__cart:focus-visible {
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-store__categories a:hover::after,
	.roosevelt-store__categories a:focus-visible::after,
	.roosevelt-store__categories a[aria-current="page"]::after {
		transform: scaleX(1);
	}
}

@media all {

	.roosevelt-store-page ul.products {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: clamp(1.25rem, 2.5vw, 2.25rem);
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-store-page ul.products::before,
	.roosevelt-store-page ul.products::after {
		display: none;
	}

	.roosevelt-store-page ul.products li.product {
		display: flex;
		flex-direction: column;
		width: auto;
		margin: 0;
		padding: 0.8rem 0.8rem 1.1rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: #fff;
		box-shadow: 0 0.7rem 2rem rgb(20 20 20 / 4%);
		float: none;
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.roosevelt-store-page ul.products li.product a img {
		width: 100%;
		aspect-ratio: 1 / 1;
		margin: 0 0 1rem;
		border-radius: 0.7rem;
		background: linear-gradient(145deg, #f7f4f3, #ece8e9);
		object-fit: contain;
		transition: transform 180ms ease;
	}

	.roosevelt-store-page ul.products li.product:hover {
		border-color: var(--roosevelt-brand);
		box-shadow: 0 1rem 2.3rem rgb(20 20 20 / 9%);
		transform: translateY(-0.2rem);
	}

	.roosevelt-store-page ul.products li.product .woocommerce-loop-product__link {
		display: block;
		color: inherit;
		text-decoration: none;
	}

	.roosevelt-store-page ul.products li.product .woocommerce-loop-product__title {
		margin: 0;
		color: var(--roosevelt-ink);
		min-height: 2.5em;
		font-size: 1.05rem;
		font-weight: 700;
		line-height: 1.2;
	}

	.roosevelt-store-page ul.products li.product a:hover img,
	.roosevelt-store-page ul.products li.product a:focus-visible img {
		transform: scale(1.025);
	}
}

@media all {

	.roosevelt-market-product-category {
		margin: 0.85rem 0 0.35rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.64rem;
		font-weight: 800;
		text-transform: uppercase;
	}
}

@media all {

	.roosevelt-store-page .woocommerce-pagination {
		margin-block-start: 3rem;
		text-align: center;
	}

	.roosevelt-store-page .woocommerce-pagination ul {
		display: inline-flex;
		gap: 0.5rem;
		margin: 0;
		padding: 0;
		border: 0;
		list-style: none;
	}

	.roosevelt-store-page .woocommerce-pagination a,
	.roosevelt-store-page .woocommerce-pagination span {
		display: inline-grid;
		place-items: center;
		min-width: 2.5rem;
		height: 2.5rem;
		padding: 0.4rem;
		border: 1px solid var(--roosevelt-color-border);
		color: var(--roosevelt-ink);
		font-size: 0.85rem;
		text-decoration: none;
	}

	.roosevelt-store-page .woocommerce-pagination ul li {
		border: 0;
	}

	.roosevelt-store-page .woocommerce-pagination .current {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-store-page .woocommerce a.button,
	.roosevelt-store-page .woocommerce button.button,
	.roosevelt-store-page .woocommerce input.button {
		align-self: stretch;
		margin-top: auto;
		padding: 0.75rem 1rem;
		border: 1px solid var(--roosevelt-brand);
		border-radius: 0;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 0.75rem;
		font-weight: 700;
		line-height: 1.2;
		text-transform: uppercase;
	}

	.roosevelt-store-page .woocommerce-pagination a:hover,
	.roosevelt-store-page .woocommerce-pagination a:focus-visible {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-store-page .woocommerce a.button:hover,
	.roosevelt-store-page .woocommerce a.button:focus-visible,
	.roosevelt-store-page .woocommerce button.button:hover,
	.roosevelt-store-page .woocommerce button.button:focus-visible,
	.roosevelt-store-page .woocommerce input.button:hover,
	.roosevelt-store-page .woocommerce input.button:focus-visible {
		border-color: var(--roosevelt-ink);
		background: var(--roosevelt-ink);
		color: #fff;
	}

	.roosevelt-store-page ul.products li.product .price {
		display: block;
		margin-block: 0.55rem 1rem;
		color: var(--roosevelt-brand);
		font-size: 0.95rem;
		font-weight: 700;
	}

	.roosevelt-store-page ul.products li.product .button {
		align-self: stretch;
		margin-top: auto;
		padding: 0.75rem 1rem;
		border: 1px solid var(--roosevelt-brand);
		border-radius: 0;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 0.75rem;
		font-weight: 700;
		line-height: 1.2;
		text-transform: uppercase;
	}

	.roosevelt-store-page ul.products li.product .onsale {
		min-height: 0;
		margin: 0.75rem;
		padding: 0.45rem 0.65rem;
		border-radius: 0;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
		font-size: 0.7rem;
		font-weight: 700;
		line-height: 1.2;
	}

	.roosevelt-store-page ul.products li.product .price del {
		color: var(--roosevelt-muted-ink);
		font-weight: 400;
	}

	.roosevelt-store-page ul.products li.product .button:hover,
	.roosevelt-store-page ul.products li.product .button:focus-visible {
		border-color: var(--roosevelt-ink);
		background: var(--roosevelt-ink);
		color: #fff;
	}
}

@media all {

	.roosevelt-store-page--single .product {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 1.05fr) minmax(19rem, 0.95fr);
		gap: clamp(1.5rem, 4vw, 3.5rem);
		align-items: start;
	}

	.roosevelt-store-page--single .roosevelt-store__back-link {
		display: inline-flex;
		margin-block-end: 2rem;
		color: var(--roosevelt-brand);
		font-size: 0.8rem;
		font-weight: 700;
		text-decoration: none;
		text-transform: uppercase;
	}

	.roosevelt-store-page--single .woocommerce-product-gallery,
	.roosevelt-store-page--single .woocommerce-product-gallery__image {
		width: 100%;
	}

	.roosevelt-store-page--single .summary {
		margin: 0;
	}

	.roosevelt-store-page--single .product_title {
		margin: 0;
		font-size: clamp(2rem, 4vw, 3.5rem);
		line-height: 1;
	}

	.roosevelt-store-page--single .cart {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 0.75rem;
	}

	.roosevelt-store-page--single .product_meta,
	.roosevelt-store-page--single .woocommerce-tabs {
		color: var(--roosevelt-muted-ink);
		font-size: 0.9rem;
	}

	.roosevelt-store-page--single .woocommerce-tabs {
		grid-column: 1 / -1;
		padding-block-start: 2rem;
		border-block-start: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-store-page--single .product::before,
	.roosevelt-store-page--single .product::after {
		display: none;
		content: none;
	}

	.roosevelt-store-page--single .roosevelt-store__back-link a {
		color: inherit;
		text-decoration: none;
	}

	.roosevelt-store-page--single .woocommerce-product-gallery img {
		width: 100%;
		height: auto;
		background: var(--roosevelt-home-gray);
	}

	.roosevelt-store-page--single .quantity input {
		min-height: 2.75rem;
		padding-inline: 0.6rem;
		border: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-store-page--single .summary > .price {
		margin-block: 1.25rem;
		color: var(--roosevelt-brand);
		font-size: 1.35rem;
		font-weight: 700;
	}
}

@media all {

	.woocommerce-notices-wrapper:empty {
		display: none;
	}
}

@media all {

	.roosevelt-store-page .woocommerce-info,
	.roosevelt-store-page .woocommerce-message,
	.roosevelt-store-page .woocommerce-error {
		margin-block: 0 2rem;
		padding: 1rem 1.25rem;
		border-top: 3px solid var(--roosevelt-yellow);
		background: var(--roosevelt-home-gray);
		color: var(--roosevelt-ink);
	}
}

@media all {

	.roosevelt-market-steps {
		width: var(--roosevelt-home-inner);
		max-width: var(--roosevelt-wide-width);
		margin: 0 auto 2rem;
	}

	.roosevelt-market-steps ol {
		display: flex;
		justify-content: center;
		gap: clamp(0.5rem, 3vw, 2.5rem);
		margin: 0;
		padding: 1.1rem 1.25rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.7rem;
		background: #fff;
		list-style: none;
	}

	.roosevelt-market-steps li {
		display: flex;
		align-items: center;
		gap: 0.55rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.76rem;
		font-weight: 700;
	}

	.roosevelt-market-steps li > span {
		display: grid;
		place-items: center;
		width: 1.65rem;
		height: 1.65rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 50%;
		font-size: 0.68rem;
	}

	.roosevelt-market-steps li.is-current {
		color: var(--roosevelt-brand);
	}

	.roosevelt-market-steps li.is-current > span,
	.roosevelt-market-steps li.is-complete > span {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}
}

@media all {

	.roosevelt-market-checkout-note {
		display: flex;
		align-items: flex-start;
		gap: 0.8rem;
		margin: 0 auto 1.5rem;
		padding: 1rem 1.1rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.6rem;
		background: #f5f5f5;
	}

	.roosevelt-market-checkout-note > span {
		color: var(--roosevelt-brand);
		font-size: 1.1rem;
		font-weight: 800;
	}

	.roosevelt-market-checkout-note p {
		display: grid;
		gap: 0.2rem;
		margin: 0;
	}

	.roosevelt-market-checkout-note p strong {
		font-size: 0.84rem;
	}

	.roosevelt-market-checkout-note p span {
		color: var(--roosevelt-muted-ink);
		font-size: 0.78rem;
	}
}

@media all {

	.roosevelt-market-product-assurance {
		display: grid;
		gap: 0.45rem;
		width: 100%;
		margin: 0.7rem 0 0;
		padding: 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.75rem;
		list-style: none;
	}

	.roosevelt-market-product-assurance li {
		display: flex;
		align-items: center;
		gap: 0.5rem;
	}

	.roosevelt-market-product-assurance li > span {
		color: var(--roosevelt-brand);
		font-weight: 800;
	}
}

@media all {

	.roosevelt-market-address {
		margin-block: 1.5rem;
		padding: clamp(1.1rem, 3vw, 1.8rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.8rem;
		background: #f8f7f6;
	}

	.roosevelt-market-address__label {
		display: block;
		margin-block-end: 0.4rem;
		font-size: 0.78rem;
		font-weight: 700;
	}

	.roosevelt-market-address__status {
		margin: 0.55rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.75rem;
	}

	.roosevelt-market-address__map {
		width: 100%;
		height: 13rem;
		margin-block-start: 1rem;
		border-radius: 0.5rem;
		background: #e7e5e3;
	}

	.roosevelt-market-address__copy h2 {
		margin: 0;
		font-size: clamp(1.2rem, 2vw, 1.65rem);
	}

	.roosevelt-market-address__picker gmp-place-autocomplete {
		display: block;
		width: 100%;
		min-height: 3rem;
		--gmp-mat-color-primary: var(--roosevelt-brand);
	}

	.roosevelt-market-address__map[hidden] {
		display: none;
	}

	.roosevelt-market-address .pac-container {
		z-index: 100000;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.4rem;
		font-family: inherit;
	}

	.roosevelt-market-address__copy > p:last-child {
		margin: 0.4rem 0 1.2rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.82rem;
	}
}

@media all {

	.woocommerce-cart .site-main,
	.woocommerce-checkout .site-main {
		padding-block: 3rem 5rem;
	}
}

@media all {

	.roosevelt-market-checkout-flow .site-main .woocommerce {
		width: var(--roosevelt-home-inner);
		max-width: var(--roosevelt-wide-width);
		margin-inline: auto;
	}
}

/* Checkout blocks and classic checkout share the same readable form
rhythm. */
@media all {

	.woocommerce-checkout .page-container {
		width: min(calc(100% - 3rem), 75rem);
	}

	.woocommerce-checkout .wc-block-components-checkout-step {
		margin-block-end: 1.5rem;
		padding: clamp(1.25rem, 3vw, 1.75rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.8rem;
		background: #fff;
	}

	.woocommerce-checkout .wc-block-components-checkout-step__heading-container {
		margin-block-end: 1.25rem;
	}

	.woocommerce-checkout .wc-block-components-checkout-step__title {
		font-size: 1.25rem;
		font-weight: 750;
		line-height: 1.4;
	}

	.woocommerce-checkout .wc-blocks-components-select__select,
	.woocommerce-checkout .wc-block-components-textarea {
		min-height: 3.5rem;
		border-radius: 0.5rem;
		font-family: inherit;
		font-size: 1rem;
		transition: border-color 160ms ease, box-shadow 160ms ease;
	}

	.woocommerce-checkout .wc-block-checkout__guest-checkout-notice {
		color: var(--roosevelt-muted-ink);
		font-size: 0.85rem;
		line-height: 1.6;
	}

	.woocommerce-checkout .wc-block-checkout__sidebar {
		align-self: start;
		padding: 1.25rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.8rem;
		background: #f8f7f6;
	}

	.woocommerce-checkout .wc-block-components-checkout-order-summary__title {
		font-size: 1.2rem;
		font-weight: 750;
	}

	.woocommerce-checkout .wc-block-checkout__add-note,
	.woocommerce-checkout .wc-block-checkout__terms {
		margin-block: 1.25rem;
		line-height: 1.7;
	}

	.woocommerce-checkout .wc-block-components-checkout-place-order-button,
	.woocommerce-checkout [id="place_order"] {
		width: 100%;
		min-height: 3.5rem;
		padding: 1rem 1.5rem;
		border-radius: 0.5rem;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 1rem;
		font-weight: 750;
	}

	.woocommerce-checkout .wc-block-components-text-input input {
		min-height: 3.5rem;
		border-radius: 0.5rem;
		font-family: inherit;
		font-size: 1rem;
		transition: border-color 160ms ease, box-shadow 160ms ease;
	}

	.woocommerce-checkout .entry-content > .wp-block-woocommerce-checkout {
		width: 100%;
		margin-inline: 0;
		font-size: 0.95rem;
	}

	.woocommerce-checkout .wc-block-components-form .wc-block-components-address-form {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
	}

	.woocommerce-checkout .wc-block-components-form .wc-block-components-address-form > * {
		grid-column: 1 / -1;
		width: 100%;
		min-width: 0;
		margin: 0;
	}

	.woocommerce-checkout .wc-blocks-components-select__select:focus,
	.woocommerce-checkout .wc-block-components-textarea:focus {
		border-color: var(--roosevelt-brand);
		outline: none;
		box-shadow: 0 0 0 3px rgb(146 0 77 / 14%);
	}

	.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
	.woocommerce-checkout [id="place_order"]:hover {
		background: var(--roosevelt-brand-dark);
	}

	.woocommerce-checkout form.checkout .input-text {
		min-height: 3.5rem;
		border-radius: 0.5rem;
		font-family: inherit;
		font-size: 1rem;
		transition: border-color 160ms ease, box-shadow 160ms ease;
	}

	.woocommerce-checkout .wc-block-components-text-input input:focus {
		border-color: var(--roosevelt-brand);
		outline: none;
		box-shadow: 0 0 0 3px rgb(146 0 77 / 14%);
	}

	.woocommerce-checkout form.checkout .form-row {
		margin-block-end: 1.25rem;
	}

	.woocommerce-checkout form.checkout .form-row label {
		display: block;
		margin-block-end: 0.45rem;
	}

	.woocommerce-checkout .wc-block-components-form .wc-block-components-address-form > :is(
	.wc-block-components-address-form__first_name,
	.wc-block-components-address-form__last_name,
	.wc-block-components-address-form__city,
	.wc-block-components-address-form__state
) {
		grid-column: auto;
	}

	.woocommerce-checkout
	.wc-block-components-form
	.wc-block-components-address-form__state
	.wc-block-components-combobox,
	.woocommerce-checkout
	.wc-block-components-form
	.wc-block-components-address-form__state
	.wc-block-components-combobox-control {
		width: 100%;
		min-width: 0;
		margin: 0;
	}

	.woocommerce-checkout
	.wc-block-components-form
	.wc-block-components-combobox-control
	input.components-combobox-control__input {
		min-height: 3.5rem;
		border-radius: 0.5rem;
		font-family: inherit;
		font-size: 1rem;
		transition: border-color 160ms ease, box-shadow 160ms ease;
	}

	.woocommerce-checkout form.checkout .input-text:focus {
		border-color: var(--roosevelt-brand);
		outline: none;
		box-shadow: 0 0 0 3px rgb(146 0 77 / 14%);
	}

	.woocommerce-checkout
	.wc-block-components-form
	.wc-block-components-address-form__state
	.wc-block-components-combobox-control
	input.components-combobox-control__input {
		width: 100%;
		min-width: 0;
		margin: 0;
	}

	.woocommerce-checkout
	.wc-block-components-form
	.wc-block-components-combobox-control
	input.components-combobox-control__input:focus {
		border-color: var(--roosevelt-brand);
		outline: none;
		box-shadow: 0 0 0 3px rgb(146 0 77 / 14%);
	}
}

@media (min-width: 1000px) {

	.woocommerce-checkout .wc-block-components-sidebar-layout {
		display: grid;
		grid-template-columns: minmax(0, 1.65fr) minmax(19rem, 1fr);
		align-items: start;
		gap: 2rem;
	}

	.woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-components-main,
	.woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-components-sidebar {
		width: 100%;
		margin: 0;
		padding-inline: 0;
	}

	.woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-checkout__sidebar {
		padding: 1.25rem;
		position: sticky;
		top: calc(var(--roosevelt-admin-bar-offset, 0px) + 8rem);
		max-height: calc(100dvh - var(--roosevelt-admin-bar-offset, 0px) - 9rem);
		overflow-y: auto;
		overscroll-behavior: contain;
	}
}

@media (max-width: 600px) {

	.woocommerce-checkout .page-container {
		width: calc(100% - 2rem);
	}

	.woocommerce-checkout .wc-block-components-form .wc-block-components-address-form {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media all {

	.woocommerce-cart table.shop_table,
	.woocommerce-checkout table.shop_table {
		border-color: var(--roosevelt-color-border);
		border-radius: 0.5rem;
		font-size: 0.86rem;
	}

	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
		padding: 1rem 1.2rem;
		border-radius: 0.35rem;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 0.83rem;
		font-weight: 800;
		text-transform: uppercase;
		transition:
			background-color 180ms ease,
			color 180ms ease;
	}

	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus-visible,
	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:active {
		background: var(--roosevelt-ink);
		color: #fff;
	}
}

@media (max-width: 900px) {

	.roosevelt-market-hero {
		grid-template-columns: minmax(0, 1fr) minmax(15rem, 0.75fr);
		gap: 1.5rem;
		padding: 2.5rem;
	}

	.roosevelt-market-steps {
		width: calc(100% - 2.5rem);
	}

	.roosevelt-market-hero .roosevelt-market-hero__title {
		font-size: clamp(2.25rem, 5vw, 3.4rem);
	}

	.roosevelt-market-checkout-flow .site-main .woocommerce {
		width: calc(100% - 2.5rem);
	}
}

@media (max-width: 700px) {

	.roosevelt-market-hero {
		grid-template-columns: minmax(0, 1fr);
		padding: 2rem 1.5rem 1.25rem;
	}

	.roosevelt-market-hero__visual {
		min-height: 15rem;
		max-height: 22rem;
	}

	.roosevelt-market-hero__stamp {
		right: 0.5rem;
		bottom: 0.8rem;
	}

	.roosevelt-market-catalog-heading {
		align-items: stretch;
		flex-direction: column;
		gap: 1rem;
	}

	.roosevelt-market-search {
		flex-basis: auto;
	}

	.roosevelt-market-hero__visual img {
		width: min(100%, 22rem);
		max-height: 22rem;
	}

	.roosevelt-market-steps ol {
		justify-content: space-between;
		gap: 0.4rem;
		padding: 0.8rem;
	}

	.roosevelt-market-steps li {
		gap: 0.35rem;
		font-size: 0.65rem;
	}

	.roosevelt-store-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
	}
}

@media (max-width: 430px) {

	.roosevelt-market-hero__actions {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-market-hero__highlights {
		gap: 0.75rem 1rem;
	}

	.roosevelt-market-steps li {
		flex-direction: column;
		text-align: center;
	}

	.roosevelt-store-page ul.products {
		grid-template-columns: 1fr;
	}
}

/* Institutional About page. */
@media all {

	.roosevelt-about-page,
	.roosevelt-about-page * {
		font-family: var(--roosevelt-font-family, Montserrat, "Avenir Next", "Segoe UI", sans-serif);
	}

	.roosevelt-about-page {
		color: var(--roosevelt-ink);
	}
}

@media all {

	.roosevelt-about__hero {
		position: relative;
		min-height: clamp(28rem, 42vw, 36rem);
		display: flex;
		align-items: stretch;
		background: #20252c;
		overflow: hidden;
	}

	.roosevelt-about__hero-media,
	.roosevelt-about__hero-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-about__hero-media {
		z-index: 0;
		overflow: hidden;
	}

	.roosevelt-about__hero-image {
		position: absolute;
		inset: 0;
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center 48%;
	}

	.roosevelt-about__hero-video {
		position: absolute;
		z-index: 1;
		inset: 0;
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center 43%;
	}

	.roosevelt-about__hero-shade {
		z-index: 2;
		background: linear-gradient(90deg, rgba(35, 0, 19, 0.88), rgba(35, 0, 19, 0.62) 55%, rgba(35, 0, 19, 0.24));
	}

	.roosevelt-about__hero-inner {
		position: relative;
		z-index: 3;
		display: flex;
		align-items: center;
		min-height: inherit;
		padding-block: 3rem;
	}

	.roosevelt-about__hero-copy {
		max-width: 43rem;
		color: #fff;
	}

	.roosevelt-about__hero-text {
		max-width: 39rem;
		margin: 1rem 0 1.5rem;
		color: #fff;
		font-size: clamp(0.95rem, 1.2vw, 1.08rem);
		line-height: 1.6;
	}

	.roosevelt-about__stats {
		border-block: 1px solid #e8eaed;
		background: #fff;
	}

	.roosevelt-about__stats-grid {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 1.75rem;
		margin-block: 0;
		padding-block: 1.8rem;
	}

	.roosevelt-about__stat {
		min-width: 0;
		padding: 0.25rem 0 0.25rem 1.15rem;
		border-left: 3px solid var(--roosevelt-brand);
	}

	.roosevelt-about__identity {
		padding-block: clamp(3.5rem, 7vw, 6.25rem);
		background: #f5f6f8;
	}

	.roosevelt-about__identity-grid {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		align-items: center;
		gap: clamp(2rem, 4vw, 3.5rem);
	}

	.roosevelt-about__identity-copy {
		display: grid;
		gap: 1rem;
	}

	.roosevelt-about__statement {
		padding: clamp(1.5rem, 2.8vw, 2.25rem);
		border: 1px solid #e7e9ec;
		border-radius: 1rem;
		background: #fff;
		box-shadow: 0 0.75rem 2rem rgba(20, 20, 20, 0.035);
	}

	.roosevelt-about__visual {
		position: relative;
		min-height: 27rem;
		margin: 0;
	}

	.roosevelt-about__visual-image {
		display: block;
		width: 100%;
		min-height: 27rem;
		border-radius: 1.25rem;
		object-fit: cover;
	}

	.roosevelt-about__accreditation {
		position: absolute;
		right: -0.75rem;
		bottom: 1.25rem;
		display: grid;
		width: min(19rem, calc(100% - 1rem));
		grid-template-columns: auto minmax(0, 1fr);
		align-items: center;
		column-gap: 0.8rem;
		padding: 1.2rem 1.25rem;
		border-left: 4px solid var(--roosevelt-yellow);
		border-radius: 0.85rem;
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-about__accreditation-mark {
		grid-row: span 2;
		color: var(--roosevelt-yellow);
		font-size: 1.35rem;
	}

	.roosevelt-about__faculty {
		padding-block: clamp(3.5rem, 7vw, 6.25rem);
		background: #fff;
	}

	.roosevelt-about__faculty-heading {
		max-width: 47rem;
		margin: 0 auto 2.5rem;
		text-align: center;
	}

	.roosevelt-about__faculty-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.25rem;
	}

	.roosevelt-about__faculty-card {
		min-width: 0;
		padding: 1.5rem;
		border: 1px solid #e6e8eb;
		border-radius: 1rem;
		background: #fff;
		box-shadow: 0 0.5rem 1.75rem rgba(20, 20, 20, 0.045);
		transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
	}

	.roosevelt-about__hero-copy h1 {
		max-width: 40rem;
		margin: 0.8rem 0 0;
		color: #fff;
		font-size: clamp(2.7rem, 5vw, 4rem);
		font-weight: 750;
		line-height: 1.05;
	}

	.roosevelt-about__stat dt {
		color: var(--roosevelt-ink);
		font-size: clamp(1.5rem, 2vw, 2rem);
		font-weight: 750;
		line-height: 1.1;
	}

	.roosevelt-about__stat dd {
		margin: 0.35rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.78rem;
		line-height: 1.4;
	}

	.roosevelt-about__statement h2 {
		margin: 0 0 0.8rem;
		color: var(--roosevelt-brand);
		font-size: 0.9rem;
		font-weight: 750;
		line-height: 1.2;
	}

	.roosevelt-about__statement p {
		margin: 0;
		color: #4f5359;
		font-size: 0.96rem;
		line-height: 1.7;
	}

	.roosevelt-about__accreditation strong {
		font-size: 0.75rem;
		line-height: 1.4;
	}

	.roosevelt-about__faculty-heading h2 {
		margin: 0;
		color: var(--roosevelt-ink);
		font-size: clamp(1.8rem, 3vw, 2.35rem);
		font-weight: 750;
		line-height: 1.15;
	}

	.roosevelt-about__hero .roosevelt-button {
		width: fit-content;
	}

	.roosevelt-about__faculty-heading .roosevelt-label {
		margin: 0 0 0.55rem;
		color: var(--roosevelt-brand);
		font-size: 0.7rem;
		font-weight: 750;
		text-transform: uppercase;
	}

	.roosevelt-about__faculty-card:hover {
		transform: translateY(-0.2rem);
		border-color: rgba(146, 0, 77, 0.28);
		box-shadow: 0 1rem 2.25rem rgba(20, 20, 20, 0.08);
	}

	.roosevelt-about__accreditation > span:last-child {
		font-size: 0.72rem;
		line-height: 1.5;
	}

	.roosevelt-about__faculty-heading > p:last-child {
		max-width: 38rem;
		margin: 0.8rem auto 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.95rem;
		line-height: 1.6;
	}
}

@media (prefers-reduced-motion: reduce) {

	.roosevelt-about__hero-video {
		display: none;
	}

	.roosevelt-about__faculty-card {
		transition: none;
	}
}

@media all {

	.roosevelt-about__faculty-icon {
		display: grid;
		width: 2.75rem;
		height: 2.75rem;
		margin-bottom: 1.15rem;
		place-items: center;
		background: #f2f3f5;
		color: var(--roosevelt-brand);
		border-radius: 0.7rem;
	}

	.roosevelt-about__lead {
		grid-template-columns: minmax(0, 1fr);
		margin-top: 0;
		margin-bottom: 50px;
		border-radius: 1.5rem;
		background: var(--roosevelt-brand);
		box-shadow: none;
		overflow: hidden;
	}

	.roosevelt-about__lead-contact {
		display: flex;
		align-items: center;
		gap: 0.85rem;
	}

	.roosevelt-about__faculty-icon svg {
		width: 1.4rem;
		height: 1.4rem;
	}

	.roosevelt-about__faculty-card h3 {
		margin: 0 0 0.6rem;
		color: var(--roosevelt-ink);
		font-size: 0.85rem;
		font-weight: 750;
		line-height: 1.35;
	}

	.roosevelt-about__faculty-card p {
		margin: 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.8rem;
		line-height: 1.6;
	}

	.roosevelt-about__lead-contact > span {
		display: grid;
		width: 2.5rem;
		height: 2.5rem;
		flex: 0 0 auto;
		place-items: center;
		background: rgba(255, 255, 255, 0.14);
		color: var(--roosevelt-yellow);
		font-size: 1rem;
	}

	.roosevelt-about__lead-contact div {
		display: grid;
		gap: 0.15rem;
	}

	.roosevelt-about__lead-contact strong {
		font-size: 0.65rem;
	}

	.roosevelt-about__lead-contact a,
	.roosevelt-about__lead-contact div > span {
		color: #fff;
		font-size: 0.9rem;
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-about__lead .roosevelt-home__lead-copy {
		min-height: 0;
		justify-content: center;
		gap: 1.5rem;
		padding: clamp(2rem, 4vw, 3.75rem) clamp(1.5rem, 4vw, 3.1rem) 2.5rem;
	}

	.roosevelt-about__lead .roosevelt-home__lead-form-wrap {
		width: 100%;
		border-radius: 0;
	}

	.roosevelt-about__lead .roosevelt-lead-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-about__lead .roosevelt-lead-form__row,
	.roosevelt-about__lead .roosevelt-lead-form__field--career,
	.roosevelt-about__lead .roosevelt-lead-form__legal {
		grid-column: 1 / -1;
	}

	.roosevelt-about__lead .roosevelt-button--full {
		width: 100%;
	}

	.roosevelt-about__lead .roosevelt-home__lead-copy h2 {
		max-width: 25rem;
		font-size: clamp(2.1rem, 3.5vw, 2.3rem);
		line-height: 1.12;
	}

	.roosevelt-about__lead .roosevelt-lead-form > button {
		grid-column: 1 / -1;
	}

	.roosevelt-about__lead .roosevelt-lead-form__field > label {
		display: grid;
	}

	.roosevelt-about__lead .roosevelt-home__lead-copy > div > p:not(.roosevelt-eyebrow) {
		max-width: 58rem;
		margin-top: 1.8rem;
	}
}

@media all {

	.roosevelt-about-editor-placeholder {
		min-height: 20rem;
		padding: 2rem;
		background: #f6f7f9;
	}
}

@media all {

	.roosevelt-career-editor-placeholder {
		min-height: 20rem;
		padding: 2rem;
		background: #f6f7f9;
	}
}

@media all {

	.roosevelt-editor-repeatable {
		margin-block: 1rem;
		padding: 0.75rem;
		border: 1px solid #dcdcde;
	}

	.roosevelt-editor-repeatable legend {
		padding-inline: 0.35rem;
		font-weight: 600;
	}
}

@media (max-width: 900px) {

	.roosevelt-about__identity-grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
		gap: 1.5rem;
	}

	.roosevelt-about__visual,
	.roosevelt-about__visual-image {
		min-height: 23rem;
	}
}

@media (max-width: 760px) {

	.roosevelt-about__hero {
		min-height: 25rem;
	}

	.roosevelt-about__hero-shade {
		background: linear-gradient(90deg, rgba(35, 0, 19, 0.88), rgba(35, 0, 19, 0.56));
	}

	.roosevelt-about__stats-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.5rem 1rem;
	}

	.roosevelt-about__identity-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.roosevelt-about__visual,
	.roosevelt-about__visual-image {
		min-height: 22rem;
	}

	.roosevelt-about__faculty-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-about__lead .roosevelt-lead-form {
		grid-template-columns: minmax(0, 1fr);
	}

	.roosevelt-about__lead .roosevelt-lead-form__row,
	.roosevelt-about__lead .roosevelt-lead-form__field,
	.roosevelt-about__lead .roosevelt-lead-form__legal,
	.roosevelt-about__lead .roosevelt-lead-form > button {
		grid-column: auto;
	}
}

@media (max-width: 520px) {

	.roosevelt-about__stats-grid,
	.roosevelt-about__faculty-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.roosevelt-about__visual,
	.roosevelt-about__visual-image {
		min-height: 18rem;
	}

	.roosevelt-about__accreditation {
		right: 0.5rem;
		bottom: 0.5rem;
	}
}

@media (max-width: 900px) {

	.roosevelt-store-page--single .product {
		grid-template-columns: minmax(0, 1fr);
	}

	.roosevelt-store-page--single .woocommerce-tabs {
		grid-column: auto;
	}

	.roosevelt-store-page ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {

	.roosevelt-store__container {
		width: calc(100% - 2rem);
	}

	.roosevelt-store__header {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.roosevelt-store__intro {
		grid-column: auto;
	}

	.roosevelt-store__cart {
		justify-self: start;
	}

	.roosevelt-store__toolbar {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-store-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.25rem 0.9rem;
	}
}

@media (max-width: 420px) {

	.roosevelt-store-page ul.products {
		grid-template-columns: 1fr;
	}
}

@media all {

	.roosevelt-page-breadcrumb {
		position: relative;
		z-index: 1;
		align-self: flex-start;
		width: fit-content;
		margin: 0;
	}

	.roosevelt-page-breadcrumb a {
		display: inline-flex;
		align-items: center;
		gap: 0.6rem;
		color: rgba(255, 255, 255, 0.9);
		font-size: 0.84rem;
		font-weight: 700;
		text-decoration: none;
		transition: color 180ms ease, transform 180ms ease;
	}

	.roosevelt-page-breadcrumb a:hover,
	.roosevelt-page-breadcrumb a:focus-visible {
		transform: translateX(-0.15rem);
		color: var(--roosevelt-yellow);
	}
}

@media all {

	.roosevelt-career__hero-inner,
	.roosevelt-institutional__hero-inner,
	.roosevelt-mesa__hero-inner,
	.roosevelt-authorities__hero-inner,
	.roosevelt-research__hero-inner,
	.roosevelt-licensing__hero-inner {
		justify-content: center;
		gap: clamp(1.5rem, 3vw, 2.25rem);
	}
}

@media all {

	.roosevelt-institutional__hero-copy {
		margin-top: 0;
	}
}

@media all {

	.roosevelt-about__hero-inner {
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		gap: clamp(1.5rem, 3vw, 2.25rem);
	}
}

/* stylelint-enable no-descending-specificity */

/* stylelint-disable no-duplicate-selectors, no-descending-specificity */

/* Roosevelt Market storefront refresh. */
@media all {

	.roosevelt-store-page--archive .roosevelt-market-hero {
		position: relative;
		display: block;
		width: 100%;
		min-height: clamp(30rem, 43vw, 39rem);
		margin: 0;
		padding: 0;
		border-radius: 0;
		background: var(--roosevelt-brand);
		color: #fff;
		overflow: hidden;
	}
}

@media all {

	.roosevelt-market-hero__slide {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		align-items: center;
		gap: clamp(2rem, 5vw, 5rem);
		min-height: clamp(30rem, 43vw, 39rem);
		padding: clamp(3rem, 6vw, 6rem) max(calc((100vw - var(--roosevelt-wide-width)) / 2), 6.5vw) clamp(5.25rem, 7vw, 6.25rem);
		isolation: isolate;
	}

	.roosevelt-market-hero__slide--1 {
		background: radial-gradient(ellipse at 83% 60%, rgb(255 255 255 / 12%), transparent 42%), var(--roosevelt-brand);
	}

	.roosevelt-market-hero__slide--2 {
		background: radial-gradient(ellipse at 84% 54%, #fff 0, #f4efea 48%, #e9dfd7 100%);
		color: var(--roosevelt-ink);
	}

	.roosevelt-market-hero__slide--3 {
		background: radial-gradient(ellipse at 83% 56%, rgb(255 255 255 / 52%), transparent 44%), var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
	}

	.roosevelt-market-hero__copy {
		z-index: 1;
		width: min(100%, 40rem);
	}

	.roosevelt-market-hero__eyebrow {
		margin: 0 0 1.3rem;
		color: inherit;
		font-size: 0.74rem;
		font-weight: 800;
	}

	.roosevelt-market-hero__actions {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 1rem 1.4rem;
		margin-block-start: 2rem;
	}

	.roosevelt-market-hero__signature {
		color: inherit;
		font-size: 0.76rem;
		font-weight: 600;
		opacity: 0.78;
	}

	.roosevelt-market-hero__visual {
		position: relative;
		display: grid;
		min-width: 0;
		min-height: 25rem;
		place-items: center;
	}

	.roosevelt-market-hero__halo {
		position: absolute;
		width: min(36vw, 31rem);
		aspect-ratio: 1;
		border: 1px solid rgb(255 255 255 / 24%);
		border-radius: 50%;
		background: radial-gradient(circle, rgb(255 255 255 / 19%), rgb(255 255 255 / 5%) 56%, transparent 71%);
	}

	.roosevelt-market-hero__slide::before,
	.roosevelt-market-hero__slide::after {
		position: absolute;
		z-index: -1;
		border: 1px solid currentcolor;
		border-radius: 50%;
		content: "";
		pointer-events: none;
	}

	.roosevelt-market-hero__slide::before {
		top: -50%;
		right: 7%;
		width: min(55vw, 54rem);
		aspect-ratio: 1;
		opacity: 0.12;
	}

	.roosevelt-market-hero__slide::after {
		top: -35%;
		right: 16%;
		width: min(42vw, 40rem);
		aspect-ratio: 1;
		opacity: 0.11;
	}

	.roosevelt-market-hero__eyebrow > span {
		flex: 0 0 0.55rem;
		background: var(--roosevelt-yellow);
	}

	.roosevelt-market-hero .roosevelt-market-hero__title {
		max-width: 11ch;
		margin: 0;
		color: inherit;
		font-size: clamp(2.7rem, 5.4vw, 5.4rem);
		font-weight: 800;
		line-height: 0.99;
	}

	.roosevelt-market-hero__visual img {
		position: relative;
		width: min(100%, 35rem);
		max-height: 34rem;
		margin: 0;
		object-fit: contain;
		filter: drop-shadow(0 1.5rem 1.5rem rgb(0 0 0 / 24%));
		transition: transform 400ms ease;
	}

	.roosevelt-market-hero__slide[hidden] {
		display: none !important;
	}

	.roosevelt-market-hero__actions .roosevelt-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.75rem;
		min-height: 3.4rem;
		padding: 0.8rem 1.4rem;
		border: 1px solid transparent;
		border-radius: 0.35rem;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
		font-size: 0.77rem;
		font-weight: 800;
		text-decoration: none;
		text-transform: uppercase;
		transition: transform 180ms ease, background-color 180ms ease;
	}

	.roosevelt-market-hero__slide--2 .roosevelt-market-hero__halo,
	.roosevelt-market-hero__slide--3 .roosevelt-market-hero__halo {
		border-color: rgb(90 0 42 / 12%);
		background: radial-gradient(circle, rgb(255 255 255 / 77%), rgb(255 255 255 / 28%) 56%, transparent 71%);
	}

	.roosevelt-market-hero__slide--2 .roosevelt-market-hero__eyebrow > span,
	.roosevelt-market-hero__slide--3 .roosevelt-market-hero__eyebrow > span {
		background: var(--roosevelt-brand);
	}

	.roosevelt-market-hero__copy > p:not(.roosevelt-market-hero__eyebrow) {
		max-width: 34rem;
		margin: 1.35rem 0 0;
		color: inherit;
		font-size: clamp(1rem, 1.5vw, 1.18rem);
		line-height: 1.6;
		opacity: 0.86;
	}

	.roosevelt-market-hero__actions .roosevelt-button:hover,
	.roosevelt-market-hero__actions .roosevelt-button:focus-visible {
		background: #fff;
		color: var(--roosevelt-brand);
		transform: translateY(-0.1rem);
	}

	.roosevelt-market-hero__slide--2 .roosevelt-market-hero__actions .roosevelt-button,
	.roosevelt-market-hero__slide--3 .roosevelt-market-hero__actions .roosevelt-button {
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-market-hero__slide:not([hidden]) .roosevelt-market-hero__visual img {
		animation: roosevelt-market-product-arrive 480ms cubic-bezier(0.2, 0.75, 0.3, 1) both;
	}

	.roosevelt-market-hero__slide--2 .roosevelt-market-hero__actions .roosevelt-button:hover,
	.roosevelt-market-hero__slide--2 .roosevelt-market-hero__actions .roosevelt-button:focus-visible,
	.roosevelt-market-hero__slide--3 .roosevelt-market-hero__actions .roosevelt-button:hover,
	.roosevelt-market-hero__slide--3 .roosevelt-market-hero__actions .roosevelt-button:focus-visible {
		background: #4b0027;
	}
}

@keyframes roosevelt-market-product-arrive {

	from {
		opacity: 0.35;
		transform: translateY(0.5rem) scale(0.97);
	}

	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@media all {

	.roosevelt-market-hero__controls {
		position: absolute;
		z-index: 2;
		right: max(calc((100vw - var(--roosevelt-wide-width)) / 2), 1.5rem);
		bottom: 1.4rem;
		display: flex;
		align-items: center;
		gap: 0.6rem;
	}

	.roosevelt-market-hero__pagination {
		display: flex;
		align-items: center;
		gap: 0.4rem;
	}

	.roosevelt-market-hero__controls > button,
	.roosevelt-market-hero__pagination button {
		display: grid;
		width: 2.5rem;
		height: 2.5rem;
		padding: 0;
		place-items: center;
		border: 1px solid rgb(255 255 255 / 38%);
		border-radius: 50%;
		background: rgb(255 255 255 / 12%);
		color: inherit;
		cursor: pointer;
		font: inherit;
		transition: background-color 160ms ease, color 160ms ease;
	}

	.roosevelt-market-hero__pagination button {
		width: 0.65rem;
		height: 0.65rem;
		border: 0;
		background: currentcolor;
		opacity: 0.5;
	}

	.roosevelt-market-hero__controls > button:hover,
	.roosevelt-market-hero__controls > button:focus-visible,
	.roosevelt-market-hero__pagination button:hover,
	.roosevelt-market-hero__pagination button:focus-visible {
		background: #fff;
		color: var(--roosevelt-brand);
	}

	.roosevelt-market-hero__pagination button[aria-current="true"] {
		width: 1.5rem;
		border-radius: 999px;
		opacity: 1;
	}

	.roosevelt-market-hero[data-active-slide="2"] .roosevelt-market-hero__controls,
	.roosevelt-market-hero[data-active-slide="3"] .roosevelt-market-hero__controls {
		color: var(--roosevelt-brand);
	}

	.roosevelt-market-hero[data-active-slide="2"] .roosevelt-market-hero__controls > button,
	.roosevelt-market-hero[data-active-slide="2"] .roosevelt-market-hero__pagination button,
	.roosevelt-market-hero[data-active-slide="3"] .roosevelt-market-hero__controls > button,
	.roosevelt-market-hero[data-active-slide="3"] .roosevelt-market-hero__pagination button {
		border-color: rgb(90 0 42 / 24%);
		background-color: rgb(90 0 42 / 7%);
	}

	.roosevelt-market-hero[data-active-slide="2"] .roosevelt-market-hero__controls > button:hover,
	.roosevelt-market-hero[data-active-slide="2"] .roosevelt-market-hero__controls > button:focus-visible,
	.roosevelt-market-hero[data-active-slide="3"] .roosevelt-market-hero__controls > button:hover,
	.roosevelt-market-hero[data-active-slide="3"] .roosevelt-market-hero__controls > button:focus-visible {
		background-color: #fff;
	}
}

@media all {

	.roosevelt-market-benefits {
		display: grid;
		grid-template-columns: minmax(16rem, 0.78fr) minmax(0, 1.72fr);
		align-items: center;
		gap: 40px;
		width: min(calc(100% - 3rem), var(--roosevelt-wide-width));
		margin: 40px auto;
	}
}

@media all {

	.roosevelt-market-catalog-heading {
		margin-block-end: 1.8rem;
	}

	.roosevelt-market-catalog-heading h2 {
		max-width: 20ch;
		font-size: clamp(1.9rem, 3.3vw, 2.8rem);
	}
}

@media all {

	.roosevelt-market-search {
		border-radius: 0.45rem;
	}
}

@media all {

	.roosevelt-store__cart-row {
		margin-block: 0 1.25rem;
	}
}

@media all {

	.roosevelt-store-page ul.products li.product {
		position: relative;
		padding: 0 0 1.15rem;
		border-radius: 0.85rem;
		box-shadow: 0 0.4rem 1.6rem rgb(25 20 22 / 5%);
		overflow: hidden;
	}

	.roosevelt-store-page ul.products li.product a img {
		aspect-ratio: 1 / 1;
		margin: 0 0 1rem;
		border-radius: 0;
		background: linear-gradient(145deg, #f7f5f2, #efebe7);
		object-fit: contain;
	}

	.roosevelt-store-page ul.products li.product:hover {
		border-color: rgb(111 0 53 / 35%);
		box-shadow: 0 1rem 2rem rgb(25 20 22 / 10%);
	}

	.roosevelt-store-page ul.products li.product .woocommerce-loop-product__link {
		padding: 0;
	}

	.roosevelt-store-page ul.products li.product .woocommerce-loop-product__title {
		min-height: 2.55em;
		padding-inline: 1rem;
		font-size: 1rem;
	}

	.roosevelt-store-page ul.products li.product .roosevelt-market-product-category,
	.roosevelt-store-page ul.products li.product .price {
		margin-inline: 1rem;
	}

	.roosevelt-store-page ul.products li.product .roosevelt-market-product-category {
		margin-block: 0.35rem 0.55rem;
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-store-page ul.products li.product .price {
		margin-block: 0.15rem 1rem;
		font-size: 1rem;
	}

	.roosevelt-store-page ul.products li.product .button {
		align-self: auto;
		margin: auto 1rem 0;
		border-radius: 0.3rem;
	}

	.roosevelt-store-page ul.products li.product a.added_to_cart {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 0.5rem;
		width: calc(100% - 2rem);
		min-height: 2.75rem;
		margin: 0.65rem 1rem 0;
		padding: 0.65rem 1rem;
		border: 1px solid var(--roosevelt-brand);
		border-radius: 0.3rem;
		background: #fff;
		color: var(--roosevelt-brand);
		font-size: 0.8rem;
		font-weight: 700;
		line-height: 1.3;
		text-decoration: none;
		transition: background-color 180ms ease, color 180ms ease;
	}

	.roosevelt-store-page ul.products li.product a.added_to_cart::after {
		content: "\2192";
		font-size: 1rem;
	}

	.roosevelt-store-page ul.products li.product a.added_to_cart:hover,
	.roosevelt-store-page ul.products li.product a.added_to_cart:focus-visible {
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-store-page ul.products li.product a.added_to_cart:focus-visible {
		outline: 2px solid var(--roosevelt-brand);
		outline-offset: 3px;
	}
}

@media all {

	.roosevelt-store-page--single .roosevelt-store__container {
		max-width: var(--roosevelt-wide-width);
		padding-block: clamp(2rem, 4vw, 3.5rem) clamp(4rem, 7vw, 6rem);
	}

	.roosevelt-store-page--single .roosevelt-store__back-link {
		margin: 0 0 1rem;
	}

	.roosevelt-store-page--single .roosevelt-store__single-cart {
		margin-block-end: 2rem;
	}

	.roosevelt-store-page--single .product {
		align-items: start;
		grid-template-columns: minmax(0, 1.05fr) minmax(19rem, 0.95fr);
		gap: clamp(1.5rem, 4vw, 3.5rem);
	}

	/* WooCommerce hides the gallery until its scripts run. */
	.roosevelt-store-page--single .woocommerce-product-gallery,
	.roosevelt-store-page--single .roosevelt-market-fallback-gallery {
		opacity: 1 !important;
	}

	.roosevelt-store-page--single .woocommerce-product-gallery__wrapper {
		width: 100%;
		margin: 0;
	}

	.roosevelt-store-page--single .summary {
		padding: clamp(1.5rem, 3.5vw, 3rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: #fff;
		box-shadow: 0 1rem 2.5rem rgba(20, 20, 20, 0.06);
	}

	.roosevelt-store-page--single .product_title {
		max-width: 17ch;
		font-size: clamp(2.1rem, 4vw, 3.6rem);
		font-weight: 800;
		line-height: 1.04;
	}

	.roosevelt-store-page--single .woocommerce-product-details__short-description {
		margin-block: 1.4rem;
		color: #555057;
		font-size: 1rem;
		line-height: 1.75;
	}

	.roosevelt-store-page--single .stock {
		display: inline-flex;
		align-items: center;
		gap: 0.45rem;
		margin: 0 0 1rem;
		color: #35613f;
		font-size: 0.8rem;
		font-weight: 700;
	}

	.roosevelt-store-page--single .cart {
		align-items: stretch;
		gap: 0.7rem;
		margin-block: 1.5rem 1.25rem;
	}

	.roosevelt-store-page--single .woocommerce-product-gallery img {
		display: block;
		width: 100%;
		margin-inline: auto;
		max-height: min(62vh, 40rem);
		aspect-ratio: 1 / 1;
		object-fit: contain;
		background: transparent;
	}

	.roosevelt-store-page--single .quantity input {
		min-width: 4.5rem;
		min-height: 3.25rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.5rem;
		font: inherit;
	}

	.roosevelt-store-page--single .summary > .price {
		margin-block: 1.1rem;
		font-size: 1.55rem;
		font-weight: 800;
	}

	body.single-product .roosevelt-store-page--single div.product > .woocommerce-product-gallery,
	body.single-product .roosevelt-store-page--single div.product > .roosevelt-market-fallback-gallery,
	body.single-product .roosevelt-store-page--single div.product > .summary {
		float: none;
		width: 100%;
		max-width: none;
		min-width: 0;
		margin: 0;
	}

	body.single-product .roosevelt-store-page--single div.product > .woocommerce-product-gallery,
	body.single-product .roosevelt-store-page--single div.product > .roosevelt-market-fallback-gallery {
		display: grid;
		min-height: clamp(24rem, 42vw, 36rem);
		place-items: center;
		align-self: start;
		padding: clamp(1.25rem, 3vw, 2.5rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: linear-gradient(145deg, #faf8f6, #f2eeeb);
	}

	.roosevelt-store-page--single div.product form.cart .quantity {
		float: none;
		margin: 0;
	}

	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button,
	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button.alt {
		display: inline-flex;
		flex: 1 1 14rem;
		min-height: 3.25rem;
		align-items: center;
		justify-content: center;
		padding: 0.85rem 1.5rem;
		border: 1px solid var(--roosevelt-brand) !important;
		border-radius: 0.5rem;
		background-color: var(--roosevelt-brand) !important;
		color: #fff !important;
		font-size: 0.9rem;
		font-weight: 800;
		line-height: 1.2;
		text-align: center;
		text-decoration: none;
		transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
	}

	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button:hover,
	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button:focus-visible {
		border-color: var(--roosevelt-brand-dark) !important;
		background-color: var(--roosevelt-brand-dark) !important;
		color: #fff !important;
	}

	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button:focus-visible {
		outline: 3px solid var(--roosevelt-yellow);
		outline-offset: 3px;
	}

	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button:active {
		transform: translateY(1px);
	}

	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button.alt:hover,
	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button.alt:focus-visible {
		border-color: var(--roosevelt-brand-dark) !important;
		background-color: var(--roosevelt-brand-dark) !important;
		color: #fff !important;
	}

	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button.alt:focus-visible {
		outline: 3px solid var(--roosevelt-yellow);
		outline-offset: 3px;
	}

	.roosevelt-store-page--single div.product form.cart .single_add_to_cart_button.alt:active {
		transform: translateY(1px);
	}
}

@media (max-width: 900px) {

	.roosevelt-store-page--single .product {
		grid-template-columns: minmax(0, 1fr);
	}

	body.single-product .roosevelt-store-page--single div.product > .woocommerce-product-gallery,
	body.single-product .roosevelt-store-page--single div.product > .roosevelt-market-fallback-gallery {
		min-height: clamp(20rem, 70vw, 34rem);
	}
}

@media all {

	.roosevelt-store-page--single .variations {
		margin-block-end: 0.8rem;
	}

	.roosevelt-store-page--single .product_meta {
		display: grid;
		gap: 0.45rem;
		padding-block-start: 1rem;
		border-block-start: 1px solid #ece7e4;
		font-size: 0.8rem;
	}

	.roosevelt-store-page--single .variations th,
	.roosevelt-store-page--single .variations td {
		padding-block: 0.5rem;
		vertical-align: middle;
	}

	.roosevelt-store-page--single .variations label {
		color: var(--roosevelt-ink);
		font-size: 0.82rem;
		font-weight: 700;
	}

	.roosevelt-store-page--single .variations select {
		min-height: 2.9rem;
		padding-inline: 0.8rem 2.5rem;
		border: 1px solid #d9d3d0;
		border-radius: 0.3rem;
		background-color: #fff;
		font: inherit;
	}
}

@media all {

	.roosevelt-market-product-assurance {
		display: grid;
		gap: 0.65rem;
		margin: 1.5rem 0 0;
		padding: 1.1rem 1.2rem;
		border: 1px solid #ece7e4;
		border-radius: 0.6rem;
		background: #fbfaf9;
		list-style: none;
	}

	.roosevelt-market-product-assurance li {
		display: flex;
		align-items: center;
		gap: 0.65rem;
		color: #4f4a4d;
		font-size: 0.8rem;
	}

	.roosevelt-market-product-assurance li span {
		color: var(--roosevelt-brand);
		font-weight: 800;
	}
}

@media all {

	.roosevelt-store-page--single .woocommerce-tabs {
		grid-column: 1 / -1;
		margin-block-start: 2rem;
		padding: 1.5rem clamp(1rem, 3vw, 2.5rem);
		border: 1px solid #ece7e4;
		border-radius: 0.85rem;
		background: #fff;
	}

	.roosevelt-store-page--single .woocommerce-Tabs-panel > h2 {
		margin-block: 0 1rem;
		font-size: clamp(1.45rem, 2.5vw, 2rem);
		font-weight: 800;
	}

	.roosevelt-store-page--single .related.products {
		grid-column: 1 / -1;
		margin-block-start: 2rem;
	}

	.roosevelt-store-page--single .woocommerce-tabs ul.tabs {
		display: flex;
		gap: 1.5rem;
		margin: 0 0 1.25rem;
		padding: 0;
		border: 0;
	}

	.roosevelt-store-page--single .related.products > h2 {
		margin-block: 0 1rem;
		font-size: clamp(1.45rem, 2.5vw, 2rem);
		font-weight: 800;
	}

	.roosevelt-store-page--single .woocommerce-tabs ul.tabs::before {
		display: none;
	}

	.roosevelt-store-page--single .woocommerce-tabs ul.tabs li {
		margin: 0;
		padding: 0 0 0.7rem;
		border: 0;
		border-block-end: 2px solid transparent;
		background: none;
	}

	.roosevelt-store-page--single .woocommerce-tabs ul.tabs li::before,
	.roosevelt-store-page--single .woocommerce-tabs ul.tabs li::after {
		display: none;
	}

	.roosevelt-store-page--single .woocommerce-tabs ul.tabs li a {
		padding: 0;
		color: var(--roosevelt-ink);
		font-size: 0.9rem;
		font-weight: 700;
	}

	.roosevelt-store-page--single .related.products ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.roosevelt-store-page--single .woocommerce-tabs ul.tabs li.active {
		border-block-end-color: var(--roosevelt-brand);
	}
}

@media (max-width: 760px) {

	.roosevelt-market-hero,
	.roosevelt-market-hero__slide {
		min-height: 0;
	}

	.roosevelt-market-hero__slide {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.5rem;
		padding: 3rem 1.5rem 5.5rem;
	}

	.roosevelt-market-hero__visual {
		min-height: 15rem;
		max-height: 20rem;
	}

	.roosevelt-market-hero__halo {
		width: min(70vw, 18rem);
	}

	.roosevelt-market-hero__controls {
		right: 1.25rem;
		bottom: 1rem;
	}

	.roosevelt-market-benefits {
		width: calc(100% - 2rem);
	}

	.roosevelt-market-hero .roosevelt-market-hero__title {
		max-width: 12ch;
		font-size: clamp(2.4rem, 10vw, 4rem);
	}

	.roosevelt-market-hero__visual img {
		width: min(100%, 19rem);
		max-height: 19rem;
	}

	.roosevelt-store-page--single .woocommerce-product-gallery,
	.roosevelt-store-page--single .roosevelt-market-fallback-gallery {
		position: static;
	}

	.roosevelt-store-page--single .related.products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 430px) {

	.roosevelt-store-page--single .related.products ul.products {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {

	.roosevelt-market-hero__visual img,
	.roosevelt-market-hero__actions .roosevelt-button {
		transition: none;
	}

	.roosevelt-market-hero__slide:not([hidden]) .roosevelt-market-hero__visual img {
		animation: none;
	}
}

/* stylelint-enable no-duplicate-selectors, no-descending-specificity */

/* Postgraduate visual directions from the Roosevelt identity guide. */
@media all {

	.roosevelt-masters__brand-lockup {
		--lockup-width: clamp(15rem, 24vw, 19rem);
		position: relative;
		display: block;
		width: var(--lockup-width);
		aspect-ratio: 3.07 / 1;
		margin-bottom: clamp(2rem, 4vw, 3.25rem);
		background: #000;
		overflow: hidden;
	}

	.roosevelt-masters__brand-lockup--dark {
		margin: 0;
		background: #000;
	}

	.roosevelt-masters__brand-lockup img {
		position: absolute;
		inset: 0;
		width: 100%;
		max-width: none;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}
}

/* Style 01: black and white, the full postgraduate lockup, and identity
stripes. */
@media all {

	.roosevelt-masters--style-one {
		--masters-ink: #111;
		--masters-deep: #000;
		--masters-brand: #000;
		--masters-gold: #fedb00;
		--masters-muted: #5f6266;
		--masters-paper: #f4f4f2;
		--masters-line: #dededb;
		--masters-cyan: #71c5e8;
		--masters-orange: #fc4c02;
		background: #fff;
		color: var(--masters-ink);
	}

	.roosevelt-masters--style-one .roosevelt-masters__brand-lockup {
		display: flex;
		width: fit-content;
		height: clamp(2.25rem, 3.5vw, 2.8rem);
		max-width: 100%;
		aspect-ratio: auto;
		align-items: center;
		gap: clamp(0.75rem, 1.5vw, 1.25rem);
		background: transparent;
		overflow: visible;
	}

	.roosevelt-masters--style-one .roosevelt-masters__brand-logo {
		position: static;
		inset: auto;
		width: auto;
		max-width: none;
		height: 112%;
		object-fit: contain;
		transform: translateY(-0.12rem);
		filter: brightness(0) invert(1);
	}

	.roosevelt-masters--style-one .roosevelt-masters__brand-name {
		display: flex;
		height: 100%;
		flex-direction: column;
		justify-content: center;
		border-left: 1px solid rgba(255, 255, 255, 0.7);
		padding-left: clamp(0.75rem, 1.5vw, 1.25rem);
		color: #fff;
		font-size: clamp(1rem, 1.6vw, 1.25rem);
		line-height: 1.12;
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-hero {
		min-height: 43rem;
		background: #000;
	}

	.roosevelt-masters--style-one .roosevelt-masters__hero-image {
		background-position: 64% center;
		background-repeat: no-repeat;
		background-size: cover;
		opacity: 0.88;
	}

	.roosevelt-masters--style-one .roosevelt-masters__hero-shade {
		background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.98) 0%, rgba(0, 0, 0, 0.91) 46%, rgba(0, 0, 0, 0.28) 100%);
		background-position: center;
		background-size: cover;
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-hero-content {
		padding-block: 3.5rem 5rem;
	}

	.roosevelt-masters--style-one .roosevelt-masters__breadcrumb {
		margin-bottom: clamp(2rem, 4vw, 3.5rem);
		color: rgba(255, 255, 255, 0.72);
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-title {
		width: min(100%, 66rem);
		max-width: 66rem;
		font-size: clamp(2.45rem, 4.8vw, 5rem);
		line-height: 1.02;
	}

	.roosevelt-masters--style-one .roosevelt-masters__title-main,
	.roosevelt-masters--style-one .roosevelt-masters__title-mention {
		display: block;
		text-wrap: balance;
	}

	.roosevelt-masters--style-one .roosevelt-masters__title-mention {
		max-width: 36ch;
		margin-top: 0.18em;
		font-size: 0.68em;
		font-weight: 500;
		line-height: 1.12;
	}

	.roosevelt-masters--style-one .roosevelt-masters__facts {
		border: 0;
		border-top: 3px solid var(--masters-ink);
		border-radius: 0;
		box-shadow: none;
	}

	.roosevelt-masters--style-one .roosevelt-masters__button {
		border-radius: 0;
	}

	.roosevelt-masters--style-one .roosevelt-masters__button--gold {
		background: var(--masters-gold);
		color: #000;
	}

	.roosevelt-masters--style-one .roosevelt-masters__benefits,
	.roosevelt-masters--style-one .roosevelt-masters__profile-card,
	.roosevelt-masters--style-one .roosevelt-masters__benefit-card,
	.roosevelt-masters--style-one .roosevelt-masters__faculty-card {
		border-radius: 0;
		box-shadow: none;
	}

	.roosevelt-masters--style-one .roosevelt-masters__benefits {
		background: #f2f2f0;
	}

	.roosevelt-masters--style-one .roosevelt-masters__benefit-number {
		border-radius: 0;
		background: var(--masters-gold);
		color: #000;
	}

	.roosevelt-masters--style-one .roosevelt-masters__profile-card--featured {
		border: 0;
		border-top: 3px solid var(--masters-orange);
	}

	.roosevelt-masters--style-one .roosevelt-masters__profile-card--accent {
		border: 0;
		border-top: 3px solid var(--masters-cyan);
		background: #f2f2f0;
	}

	.roosevelt-masters--style-one .roosevelt-masters__semester-card {
		border-radius: 0;
	}

	.roosevelt-masters--style-one .roosevelt-masters__faculty-card {
		border-top-width: 3px;
		background: #f3f3f1;
	}

	.roosevelt-masters--style-one .roosevelt-masters__catalog-cta,
	.roosevelt-masters--style-one .roosevelt-masters__program-cta {
		background: #000;
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-cta {
		position: relative;
	}

	.roosevelt-masters--style-one .roosevelt-masters__hero-shade::before {
		position: absolute;
		inset: 0;
		background-image: radial-gradient(circle, rgba(255, 255, 255, 0.17) 0 2px, transparent 2.5px);
		background-position: right 2rem top 1rem;
		background-size: 2rem 2rem;
		-webkit-mask-image: linear-gradient(90deg, #000 0%, rgb(0 0 0 / 50%) 50%, rgb(0 0 0 / 20%) 72%, transparent 100%);
		mask-image: linear-gradient(90deg, #000 0%, rgb(0 0 0 / 50%) 50%, rgb(0 0 0 / 20%) 72%, transparent 100%);
		content: "";
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-hero::after {
		position: absolute;
		z-index: 2;
		right: 0;
		bottom: 0;
		left: 0;
		height: 0.55rem;
		background: linear-gradient(90deg, var(--masters-orange) 0 16.5%, var(--masters-gold) 16.5% 33%, var(--masters-cyan) 33% 50%, var(--masters-orange) 50% 66.5%, var(--masters-gold) 66.5% 83%, var(--masters-cyan) 83%);
		content: "";
	}

	.roosevelt-masters--style-one .roosevelt-masters__eyebrow > span {
		background: var(--masters-orange);
	}

	.roosevelt-masters--style-one .roosevelt-masters__facts dl {
		padding-inline: 0;
	}

	.roosevelt-masters--style-one .roosevelt-masters__facts dd {
		font-size: 1.02rem;
	}

	.roosevelt-masters--style-one .roosevelt-masters__semester-heading > span {
		border-radius: 0;
		background: var(--masters-gold);
		color: #000;
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-cta::before {
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		height: 0.55rem;
		background: linear-gradient(90deg, var(--masters-orange) 0 16.5%, var(--masters-gold) 16.5% 33%, var(--masters-cyan) 33% 50%, var(--masters-orange) 50% 66.5%, var(--masters-gold) 66.5% 83%, var(--masters-cyan) 83%);
		content: "";
	}

	.roosevelt-masters--style-one .roosevelt-masters__button--ghost:hover {
		background: #fff;
		color: #000;
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-cta .roosevelt-masters__button--ghost {
		border-color: rgba(255, 255, 255, 0.65);
		color: #fff;
	}

	.roosevelt-masters--style-one .roosevelt-masters__facts dl > div:nth-child(2) {
		border-color: var(--masters-line);
	}

	.roosevelt-masters--style-one .roosevelt-masters__facts dl > div:nth-child(2) dd::before {
		display: inline-block;
		width: 0.45rem;
		height: 0.45rem;
		margin-right: 0.5rem;
		background: var(--masters-cyan);
		content: "";
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-cta .roosevelt-masters__button--ghost:hover {
		border-color: #fff;
		background: #fff;
		color: #000;
	}
}

@media (max-width: 760px) {

	.roosevelt-masters--style-one .roosevelt-masters__program-hero {
		min-height: 43rem;
		align-items: flex-end;
	}

	.roosevelt-masters--style-one .roosevelt-masters__hero-image {
		background-position: 62% center;
	}

	.roosevelt-masters--style-one .roosevelt-masters__hero-shade {
		background-image: linear-gradient(0deg, #000f 0%, #000e 56%, #0002 100%);
		background-position: center;
		background-size: cover;
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-hero-content {
		padding-block: 2rem 4.5rem;
	}

	.roosevelt-masters--style-one .roosevelt-masters__brand-lockup {
		height: 2.15rem;
		gap: 0.7rem;
		margin-bottom: 1.75rem;
	}

	.roosevelt-masters--style-one .roosevelt-masters__brand-logo {
		width: auto;
		max-width: none;
		height: 112%;
	}

	.roosevelt-masters--style-one .roosevelt-masters__brand-name {
		padding-left: 0.7rem;
		font-size: 0.95rem;
	}

	.roosevelt-masters--style-one .roosevelt-masters__breadcrumb {
		margin-bottom: 1.75rem;
	}

	.roosevelt-masters--style-one .roosevelt-masters__program-title {
		width: 100%;
		font-size: clamp(2.15rem, 8.7vw, 3.7rem);
	}

	.roosevelt-masters--style-one .roosevelt-masters__title-mention {
		max-width: 25ch;
		font-size: 0.7em;
	}

	.roosevelt-masters--style-one .roosevelt-masters__hero-shade::before {
		background-image: radial-gradient(circle, rgba(255, 255, 255, 0.13) 0 1.5px, transparent 2px);
		background-position: right 1rem top 1rem;
		background-size: 1.6rem 1.6rem;
	}
}

/* Postgraduate program pages. */
@media all {

	.roosevelt-masters {
		--masters-ink: #000;
		--masters-deep: #000;
		--masters-brand: #92004d;
		--masters-gold: #fedc00;
		--masters-muted: #626a74;
		--masters-paper: #f5f4f1;
		--masters-line: #e6e5e1;
		width: 100%;
		color: var(--masters-ink);
		font-family: inherit;
		line-height: 1.65;
	}

	.roosevelt-masters * {
		min-width: 0;
	}

	.roosevelt-masters__eyebrow {
		display: flex;
		align-items: center;
		gap: 0.7rem;
		margin-bottom: 1.15rem;
		color: #fff;
		font-size: 0.72rem;
		font-weight: 800;
		line-height: 1.4;
	}

	.roosevelt-masters__eyebrow--dark {
		color: var(--masters-brand);
	}

	.roosevelt-masters__button {
		display: inline-flex;
		min-height: 3.2rem;
		align-items: center;
		justify-content: center;
		gap: 0.8rem;
		border: 1px solid transparent;
		border-radius: 0.35rem;
		padding: 0.8rem 1.2rem;
		font-size: 0.79rem;
		font-weight: 800;
		line-height: 1.2;
		text-decoration: none;
		text-transform: uppercase;
		transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
	}

	.roosevelt-masters__button--light {
		background: #fff;
		color: var(--masters-brand);
	}

	.roosevelt-masters__button--gold {
		background: var(--masters-gold);
		color: var(--masters-ink);
	}

	.roosevelt-masters__button--ghost {
		border-color: rgba(255, 255, 255, 0.58);
		background: transparent;
		color: #fff;
	}

	.roosevelt-masters__button--outline {
		border-color: rgba(255, 255, 255, 0.65);
		background: transparent;
		color: #fff;
	}

	.roosevelt-masters__catalog-hero {
		position: relative;
		display: grid;
		min-height: 35rem;
		grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.92fr);
		align-items: stretch;
		background: var(--masters-brand);
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-masters__catalog-copy {
		position: relative;
		z-index: 1;
		display: flex;
		max-width: 52rem;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		padding: clamp(3rem, 7vw, 6.5rem) clamp(1.5rem, 8vw, 8rem);
	}

	.roosevelt-masters__catalog-intro {
		max-width: 38rem;
		margin-bottom: 2rem;
		color: rgba(255, 255, 255, 0.86);
		font-size: clamp(1rem, 1.3vw, 1.15rem);
	}

	.roosevelt-masters__catalog-visual {
		position: relative;
		min-height: 30rem;
		background: #12243a;
	}

	.roosevelt-masters__catalog-visual-note {
		position: absolute;
		z-index: 1;
		right: clamp(1.2rem, 4vw, 3.5rem);
		bottom: clamp(1.2rem, 4vw, 3.5rem);
		display: flex;
		align-items: center;
		gap: 0.9rem;
		border: 1px solid rgba(255, 255, 255, 0.3);
		border-radius: 0.35rem;
		background: rgba(16, 30, 46, 0.72);
		padding: 0.75rem 1rem;
		backdrop-filter: blur(10px);
	}

	.roosevelt-masters__catalog-section,
	.roosevelt-masters__program-body {
		width: min(100% - 3rem, 76rem);
		margin-inline: auto;
	}

	.roosevelt-masters__catalog-section {
		padding-block: clamp(4rem, 8vw, 7rem);
	}

	.roosevelt-masters__catalog-group {
		scroll-margin-top: 7rem;
	}

	.roosevelt-masters__catalog-group-title {
		margin: 0 0 1.5rem;
		font-size: clamp(1.55rem, 2.6vw, 2.1rem);
	}

	.roosevelt-masters *::before,
	.roosevelt-masters *::after {
		min-width: 0;
	}

	.roosevelt-masters h1,
	.roosevelt-masters h2,
	.roosevelt-masters h3,
	.roosevelt-masters p,
	.roosevelt-masters figure,
	.roosevelt-masters dl {
		margin-top: 0;
	}

	.roosevelt-masters h1,
	.roosevelt-masters h2,
	.roosevelt-masters h3 {
		color: inherit;
		font-family: inherit;
		font-weight: 760;
		line-height: 1.12;
	}

	.roosevelt-masters__eyebrow > span {
		width: 1.8rem;
		height: 2px;
		flex: 0 0 auto;
		background: var(--masters-gold);
	}

	.roosevelt-masters__catalog-copy h1 {
		max-width: 13ch;
		margin-bottom: 1.4rem;
		font-size: clamp(2.25rem, 4vw, 3.8rem);
	}

	.roosevelt-masters__catalog-visual::after {
		position: absolute;
		inset: 0;
		background: linear-gradient(90deg, rgba(64, 0, 37, 0.28), rgba(6, 20, 37, 0.05) 55%, rgba(6, 20, 37, 0.2));
		content: "";
	}

	.roosevelt-masters__catalog-visual > img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: 48% center;
	}

	.roosevelt-masters__button:hover {
		transform: translateY(-2px);
	}

	.roosevelt-masters__button:focus-visible,
	.roosevelt-masters__text-link:focus-visible {
		outline: 3px solid var(--masters-gold);
		outline-offset: 4px;
	}

	.roosevelt-masters__button--light:hover {
		background: var(--masters-gold);
		color: var(--masters-ink);
	}

	.roosevelt-masters__button--gold:hover {
		background: #ffe968;
		color: var(--masters-ink);
	}

	.roosevelt-masters__button--ghost:hover {
		border-color: #fff;
		background: #fff;
		color: var(--masters-brand);
	}

	.roosevelt-masters__button--outline:hover {
		border-color: var(--masters-gold);
		background: var(--masters-gold);
		color: var(--masters-ink);
	}

	.roosevelt-masters__catalog-group + .roosevelt-masters__catalog-group {
		margin-top: clamp(3rem, 6vw, 5rem);
		border-top: 1px solid var(--masters-line);
		padding-top: clamp(2rem, 4vw, 3rem);
	}

	.roosevelt-masters__breadcrumb a:focus-visible {
		outline: 3px solid var(--masters-gold);
		outline-offset: 4px;
	}

	.roosevelt-masters__catalog-visual-note span:first-child {
		color: var(--masters-gold);
		font-size: 1.25rem;
		font-weight: 900;
	}

	.roosevelt-masters__catalog-visual-note span:last-child {
		font-size: 0.72rem;
		font-weight: 700;
	}
}

@media all {

	.roosevelt-masters--style-one .roosevelt-masters__curriculum-note {
		margin: 1.25rem 0 0;
		border-left: 3px solid var(--masters-gold);
		background: rgba(255, 255, 255, 0.08);
		padding: 0.85rem 1rem;
		color: rgba(255, 255, 255, 0.82);
		font-size: 0.82rem;
	}
}

@media all {

	.roosevelt-masters__section-heading {
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
		gap: 2rem;
		margin-bottom: 2.25rem;
	}

	.roosevelt-masters__program-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.5rem;
	}

	.roosevelt-masters__program-card {
		min-width: 0;
		border: 1px solid var(--masters-line);
		border-radius: 0.75rem;
		background: #fff;
		box-shadow: 0 0.9rem 2rem rgba(23, 32, 44, 0.055);
		overflow: hidden;
	}

	.roosevelt-masters__section-heading h2 {
		max-width: 18ch;
		margin-bottom: 0;
		font-size: clamp(2rem, 3.4vw, 3.25rem);
	}

	.roosevelt-masters__section-heading > p {
		max-width: 27rem;
		margin-bottom: 0.2rem;
		color: var(--masters-muted);
		font-size: 0.98rem;
	}

	.roosevelt-masters__program-card.is-available {
		position: relative;
		cursor: pointer;
		transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
	}

	.roosevelt-masters__program-card.is-available .roosevelt-masters__text-link::after {
		position: absolute;
		inset: 0;
		border-radius: 0.75rem;
		content: "";
	}

	.roosevelt-masters__program-card.is-available .roosevelt-masters__text-link:focus-visible {
		outline: none;
	}

	.roosevelt-masters__program-card.is-available .roosevelt-masters__text-link:focus-visible::after {
		outline: 3px solid var(--masters-gold);
		outline-offset: -4px;
	}
}

@media (hover: hover) and (pointer: fine) {

	.roosevelt-masters__program-card.is-available:hover {
		transform: translateY(-3px);
		border-color: var(--masters-gold);
		box-shadow: 0 1.1rem 2.2rem rgba(23, 32, 44, 0.12);
	}
}

@media all {

	.roosevelt-masters__program-media {
		position: relative;
		aspect-ratio: 16 / 8.5;
		background: #1b2c42;
	}

	.roosevelt-masters__program-status {
		position: absolute;
		left: 1rem;
		bottom: 1rem;
		border-radius: 99px;
		background: var(--masters-gold);
		padding: 0.35rem 0.75rem;
		color: var(--masters-ink);
		font-size: 0.65rem;
		font-weight: 800;
		text-transform: uppercase;
	}

	.roosevelt-masters__coming-art {
		position: relative;
		display: grid;
		width: 100%;
		height: 100%;
		place-items: center;
		background: radial-gradient(circle at 75% 24%, rgba(254, 220, 0, 0.3), transparent 12rem), linear-gradient(135deg, #35263a, #14263a 70%);
		overflow: hidden;
	}

	.roosevelt-masters__program-copy {
		padding: clamp(1.25rem, 2.5vw, 2rem);
	}

	.roosevelt-masters__program-area {
		margin-bottom: 0.65rem;
		color: var(--masters-brand);
		font-size: 0.67rem;
		font-weight: 800;
	}

	.roosevelt-masters__program-meta {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem;
		margin-bottom: 1.4rem;
	}

	.roosevelt-masters__text-link {
		display: inline-flex;
		align-items: center;
		gap: 0.7rem;
		color: var(--masters-brand);
		font-size: 0.8rem;
		font-weight: 800;
		text-decoration: none;
	}

	.roosevelt-masters__catalog-cta,
	.roosevelt-masters__program-cta {
		display: flex;
		min-height: 17rem;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
		background: var(--masters-brand);
		padding: clamp(2rem, 6vw, 5rem) max(clamp(1.5rem, 9vw, 8rem), calc((100vw - 76rem) / 2));
		color: #fff;
	}

	.roosevelt-masters__program-hero {
		position: relative;
		display: flex;
		min-height: 42rem;
		align-items: center;
		background: #142236;
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-masters__hero-image,
	.roosevelt-masters__hero-shade {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
	}

	.roosevelt-masters__hero-image {
		object-fit: cover;
		object-position: center 46%;
	}

	.roosevelt-masters__hero-shade {
		background: linear-gradient(90deg, rgb(146 0 77 / 94%) 0%, rgb(146 0 77 / 86%) 55%, rgb(146 0 77 / 72%) 100%);
	}

	.roosevelt-masters__program-hero-content {
		position: relative;
		z-index: 1;
		width: min(100% - 3rem, 76rem);
		margin-inline: auto;
		padding-block: clamp(3rem, 7vw, 6.5rem);
	}

	.roosevelt-masters__breadcrumb {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 0.65rem;
		margin-bottom: clamp(2.25rem, 5vw, 4.5rem);
		color: rgba(255, 255, 255, 0.75);
		font-size: 0.73rem;
	}

	.roosevelt-masters__hero-lead {
		max-width: 43rem;
		margin-bottom: 1.75rem;
		color: rgba(255, 255, 255, 0.83);
		font-size: clamp(1rem, 1.35vw, 1.2rem);
	}

	.roosevelt-masters__hero-actions,
	.roosevelt-masters__cta-actions {
		display: flex;
		flex-wrap: wrap;
		gap: 0.8rem;
	}

	.roosevelt-masters__facts {
		position: relative;
		z-index: 2;
		width: min(100% - 3rem, 76rem);
		margin: -2.6rem auto 0;
		border: 1px solid var(--masters-line);
		border-radius: 0.55rem;
		background: #fff;
		box-shadow: 0 1rem 2.5rem rgba(15, 26, 41, 0.12);
	}

	.roosevelt-masters__program-body {
		display: flex;
		flex-direction: column;
		gap: clamp(4rem, 8vw, 7.25rem);
		padding-block: clamp(4rem, 7vw, 6rem);
	}

	.roosevelt-masters__about {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.82fr);
		align-items: center;
		gap: clamp(2rem, 6vw, 5.5rem);
	}

	.roosevelt-masters__about-media {
		position: relative;
		margin-bottom: 0;
		border-radius: 0.55rem;
		background: #e8e8e6;
	}

	.roosevelt-masters__benefits {
		padding: clamp(1.5rem, 4vw, 3.25rem);
		border-radius: 0.65rem;
		background: var(--masters-paper);
	}

	.roosevelt-masters__benefit-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-masters__benefit-card {
		position: relative;
		min-height: 13rem;
		border: 1px solid var(--masters-line);
		border-radius: 0.45rem;
		background: #fff;
		padding: 1.35rem 1.5rem;
	}

	.roosevelt-masters__benefit-number {
		display: inline-flex;
		width: 2.2rem;
		height: 2.2rem;
		align-items: center;
		justify-content: center;
		margin-bottom: 1.15rem;
		border-radius: 50%;
		background: var(--masters-brand);
		color: #fff;
		font-size: 0.69rem;
		font-weight: 800;
	}

	.roosevelt-masters__leadership-note {
		display: flex;
		align-items: center;
		gap: 1rem;
		margin-top: 1rem;
		border-radius: 0.45rem;
		background: var(--masters-deep);
		padding: 1rem 1.25rem;
		color: #fff;
	}

	.roosevelt-masters__leadership-mark {
		display: grid;
		width: 2.15rem;
		height: 2.15rem;
		flex: 0 0 auto;
		place-items: center;
		border-radius: 50%;
		background: var(--masters-gold);
		color: var(--masters-ink);
		font-size: 1.35rem;
		font-weight: 500;
	}

	.roosevelt-masters__profile-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-masters__profile-card {
		position: relative;
		min-height: 14rem;
		border: 1px solid var(--masters-line);
		border-radius: 0.45rem;
		background: #fff;
		padding: clamp(1.25rem, 2.5vw, 2rem);
	}

	.roosevelt-masters__profile-card--featured {
		border-color: var(--masters-brand);
	}

	.roosevelt-masters__profile-card--accent {
		background: var(--masters-paper);
	}

	.roosevelt-masters__profile-index {
		display: inline-block;
		margin-bottom: 1.2rem;
		color: var(--masters-brand);
		font-size: 0.74rem;
		font-weight: 900;
	}

	.roosevelt-masters__curriculum {
		border-radius: 0.65rem;
		background: var(--masters-deep);
		padding: clamp(1.5rem, 4vw, 3.25rem);
		color: #fff;
	}

	.roosevelt-masters__semester-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-masters__semester-card {
		border: 1px solid rgba(255, 255, 255, 0.18);
		border-radius: 0.4rem;
		background: rgba(255, 255, 255, 0.045);
		padding: 1.35rem;
	}

	.roosevelt-masters__semester-heading {
		display: flex;
		align-items: center;
		gap: 0.9rem;
		margin-bottom: 1.1rem;
		border-bottom: 1px solid rgba(255, 255, 255, 0.18);
		padding-bottom: 1rem;
	}

	.roosevelt-masters__curriculum-download {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		margin-top: 1rem;
		border-radius: 0.4rem;
		background: rgba(255, 255, 255, 0.1);
		padding: 1rem 1.2rem;
	}

	.roosevelt-masters__faculty-feature {
		position: relative;
		min-height: 17rem;
		margin-bottom: 1rem;
		border-radius: 0.5rem;
		background: var(--masters-deep);
		overflow: hidden;
	}

	.roosevelt-masters__faculty-tag {
		display: inline-block;
		margin-bottom: 0.75rem;
		color: var(--masters-gold);
		font-size: 0.65rem;
		font-weight: 800;
	}

	.roosevelt-masters__faculty-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-masters__faculty-card {
		border-top: 2px solid var(--masters-brand);
		background: var(--masters-paper);
		padding: 1.25rem;
	}

	.roosevelt-masters__faculty-number {
		display: block;
		margin-bottom: 1.25rem;
		color: var(--masters-brand);
		font-size: 0.7rem;
		font-weight: 900;
	}

	.roosevelt-masters__program-cta {
		min-height: 22rem;
		align-items: center;
	}

	.roosevelt-masters__program-media > img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center 45%;
	}

	.roosevelt-masters__coming-art span {
		position: relative;
		z-index: 1;
		color: rgba(255, 255, 255, 0.86);
		font-size: clamp(3.5rem, 8vw, 6.5rem);
		font-weight: 900;
	}

	.roosevelt-masters__coming-art i {
		position: absolute;
		width: 18rem;
		height: 18rem;
		border: 1px solid rgba(255, 255, 255, 0.26);
		border-radius: 50%;
	}

	.roosevelt-masters__program-copy h3 {
		max-width: 26ch;
		margin-bottom: 0.9rem;
		font-size: clamp(1.3rem, 2vw, 1.75rem);
	}

	.roosevelt-masters__program-meta span {
		border: 1px solid var(--masters-line);
		border-radius: 99px;
		padding: 0.3rem 0.65rem;
		color: #4e5763;
		font-size: 0.69rem;
		font-weight: 700;
	}

	.roosevelt-masters__text-link span {
		font-size: 1.15rem;
		transition: transform 160ms ease;
	}

	.roosevelt-masters__catalog-cta h2,
	.roosevelt-masters__program-cta h2 {
		max-width: 18ch;
		margin-bottom: 0;
		font-size: clamp(2rem, 3.7vw, 3.3rem);
	}

	.roosevelt-masters__breadcrumb a {
		color: #fff;
		text-decoration-thickness: 1px;
		text-underline-offset: 3px;
	}

	.roosevelt-masters__program-hero h1 {
		max-width: 18ch;
		margin-bottom: 1.25rem;
		font-size: clamp(2.45rem, 5.7vw, 5.35rem);
	}

	.roosevelt-masters__facts dl {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		margin-bottom: 0;
		padding: 1.2rem 1.5rem;
	}

	.roosevelt-masters__facts dt {
		margin-bottom: 0.25rem;
		color: var(--masters-muted);
		font-size: 0.7rem;
		font-weight: 700;
		text-transform: uppercase;
	}

	.roosevelt-masters__facts dd {
		margin: 0;
		color: var(--masters-ink);
		font-size: 1.08rem;
		font-weight: 800;
	}

	.roosevelt-masters__about-copy h2,
	.roosevelt-masters__profile h2,
	.roosevelt-masters__faculty h2 {
		margin-bottom: 1.25rem;
		font-size: clamp(2rem, 3.6vw, 3.25rem);
	}

	.roosevelt-masters__about-media img {
		display: block;
		width: 100%;
		aspect-ratio: 1.91 / 1;
		border-radius: inherit;
		object-fit: cover;
	}

	.roosevelt-masters__about-media figcaption {
		position: absolute;
		right: 0.8rem;
		bottom: 0.8rem;
		left: 0.8rem;
		border: 1px solid rgba(255, 255, 255, 0.35);
		border-radius: 0.3rem;
		background: rgba(17, 30, 46, 0.8);
		padding: 0.7rem 0.85rem;
		color: #fff;
		font-size: 0.73rem;
		backdrop-filter: blur(8px);
	}

	.roosevelt-masters__benefit-card h3 {
		margin-bottom: 0.6rem;
		font-size: 1.08rem;
	}

	.roosevelt-masters__benefit-card p {
		margin-bottom: 0;
		color: var(--masters-muted);
		font-size: 0.85rem;
	}

	.roosevelt-masters__leadership-note p {
		margin-bottom: 0;
		font-size: 0.87rem;
	}

	.roosevelt-masters__profile-card h3 {
		margin-bottom: 0.75rem;
		font-size: 1.12rem;
	}

	.roosevelt-masters__profile-card p {
		margin-bottom: 0;
		color: var(--masters-muted);
		font-size: 0.87rem;
	}

	.roosevelt-masters__semester-heading > span {
		display: grid;
		width: 2.65rem;
		height: 2.65rem;
		flex: 0 0 auto;
		place-items: center;
		border-radius: 50%;
		background: var(--masters-gold);
		color: var(--masters-ink);
		font-size: 0.8rem;
		font-weight: 900;
	}

	.roosevelt-masters__semester-heading h3 {
		margin: 0;
		font-size: 1.2rem;
	}

	.roosevelt-masters__semester-card ol {
		display: flex;
		flex-direction: column;
		gap: 0.85rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-masters__semester-card li {
		display: grid;
		grid-template-columns: 1.1rem minmax(0, 1fr);
		align-items: start;
		gap: 0.65rem;
		color: rgba(255, 255, 255, 0.88);
		font-size: 0.84rem;
	}

	.roosevelt-masters__curriculum-download > div {
		display: flex;
		flex-direction: column;
	}

	.roosevelt-masters__curriculum-download strong {
		font-size: 0.87rem;
	}

	.roosevelt-masters__faculty-feature img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center 43%;
	}

	.roosevelt-masters__faculty-feature::after {
		position: absolute;
		inset: 0;
		background: linear-gradient(90deg, rgba(14, 25, 40, 0.85), rgba(14, 25, 40, 0.08) 82%);
		content: "";
	}

	.roosevelt-masters__faculty-feature > div {
		position: absolute;
		z-index: 1;
		bottom: 1.5rem;
		left: 1.5rem;
		max-width: 26rem;
		color: #fff;
	}

	.roosevelt-masters__faculty-feature p {
		margin-bottom: 0;
		font-size: clamp(1rem, 2vw, 1.35rem);
		font-weight: 700;
		line-height: 1.35;
	}

	.roosevelt-masters__faculty-card h3 {
		margin-bottom: 0.65rem;
		font-size: 1.12rem;
	}

	.roosevelt-masters__faculty-card p {
		margin-bottom: 0.7rem;
		color: var(--masters-muted);
		font-size: 0.79rem;
	}

	.roosevelt-masters__program-cta h2 {
		max-width: 17ch;
		margin-bottom: 0.75rem;
	}

	.roosevelt-masters__facts dl > div {
		padding: 0.35rem clamp(0.7rem, 3vw, 2.25rem);
	}

	.roosevelt-masters__semester-card li span {
		color: var(--masters-gold);
		font-weight: 900;
	}

	.roosevelt-masters__curriculum-download > div > span {
		color: rgba(255, 255, 255, 0.72);
		font-size: 0.75rem;
	}

	.roosevelt-masters__facts dl > div + div {
		border-left: 1px solid var(--masters-line);
	}

	.roosevelt-masters__program-hero-content > .roosevelt-masters__eyebrow {
		margin-bottom: 1rem;
	}

	.roosevelt-masters__about-copy .roosevelt-masters__text-link {
		margin-top: 0.7rem;
	}

	.roosevelt-masters__curriculum .roosevelt-masters__section-heading {
		margin-bottom: 1.8rem;
	}

	.roosevelt-masters__faculty-card .roosevelt-masters__faculty-role {
		color: var(--masters-ink);
		font-weight: 600;
	}

	.roosevelt-masters__program-cta .roosevelt-masters__eyebrow {
		margin-bottom: 0.8rem;
	}

	.roosevelt-masters__coming-art i:nth-of-type(1) {
		transform: translate(6rem, -5rem);
	}

	.roosevelt-masters__coming-art i:nth-of-type(2) {
		width: 26rem;
		height: 26rem;
		transform: translate(-8rem, 5rem);
	}

	.roosevelt-masters__program-copy > p:not(.roosevelt-masters__program-area) {
		margin-bottom: 1.2rem;
		color: var(--masters-muted);
		font-size: 0.94rem;
	}

	.roosevelt-masters__text-link:hover span {
		transform: translateX(4px);
	}

	.roosevelt-masters__about-copy > p:not(.roosevelt-masters__eyebrow) {
		color: #4c5560;
		font-size: 0.98rem;
	}

	.roosevelt-masters__curriculum .roosevelt-masters__section-heading > p {
		color: rgba(255, 255, 255, 0.7);
	}

	.roosevelt-masters__faculty-card p:last-child {
		margin-bottom: 0;
	}

	.roosevelt-masters__program-card.is-coming-soon .roosevelt-masters__program-status {
		background: #fff;
	}

	.roosevelt-masters__program-cta > div:first-child > p:last-child {
		margin-bottom: 0;
		color: rgba(255, 255, 255, 0.82);
	}
}

@media (max-width: 900px) {

	.roosevelt-masters__catalog-hero {
		grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.7fr);
	}

	.roosevelt-masters__catalog-copy {
		padding-inline: clamp(1.5rem, 5vw, 3.5rem);
	}

	.roosevelt-masters__about {
		grid-template-columns: minmax(0, 1fr) minmax(15rem, 0.8fr);
		gap: 2rem;
	}

	.roosevelt-masters__faculty-grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-masters__faculty-card {
		display: grid;
		grid-template-columns: 2rem minmax(0, 0.8fr) minmax(0, 1.4fr);
		column-gap: 0.9rem;
	}

	.roosevelt-masters__faculty-number {
		grid-row: span 2;
	}

	.roosevelt-masters__faculty-card h3 {
		grid-column: 2;
		grid-row: 1 / span 2;
	}

	.roosevelt-masters__faculty-card p {
		grid-column: 3;
	}

	.roosevelt-masters__faculty-card p:last-child {
		margin-top: -0.65rem;
	}
}

@media (max-width: 680px) {

	.roosevelt-masters__catalog-hero {
		grid-template-columns: 1fr;
	}

	.roosevelt-masters__catalog-copy {
		padding-block: 4rem 3rem;
	}

	.roosevelt-masters__catalog-visual {
		min-height: 18rem;
	}

	.roosevelt-masters__section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.8rem;
	}

	.roosevelt-masters__program-grid,
	.roosevelt-masters__benefit-grid,
	.roosevelt-masters__profile-grid,
	.roosevelt-masters__semester-grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-masters__catalog-cta,
	.roosevelt-masters__program-cta {
		align-items: flex-start;
		flex-direction: column;
		padding-inline: 1.5rem;
	}

	.roosevelt-masters__program-hero {
		min-height: 40rem;
		align-items: flex-end;
	}

	.roosevelt-masters__hero-shade {
		background: linear-gradient(0deg, rgba(11, 21, 35, 0.96) 0%, rgba(17, 29, 45, 0.82) 58%, rgba(14, 24, 39, 0.15) 100%);
	}

	.roosevelt-masters__program-hero-content {
		width: min(100% - 2rem, 76rem);
		padding-block: 2rem 4rem;
	}

	.roosevelt-masters__breadcrumb {
		margin-bottom: 2.1rem;
	}

	.roosevelt-masters__facts {
		width: min(100% - 2rem, 76rem);
		margin-top: -1.2rem;
	}

	.roosevelt-masters__program-body {
		width: min(100% - 2rem, 76rem);
		gap: 4rem;
		padding-block: 3.5rem;
	}

	.roosevelt-masters__about {
		grid-template-columns: 1fr;
	}

	.roosevelt-masters__curriculum-download {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-masters__faculty-feature {
		min-height: 16rem;
	}

	.roosevelt-masters__faculty-card {
		display: block;
	}

	.roosevelt-masters__faculty-number {
		margin-bottom: 0.65rem;
	}

	.roosevelt-masters__catalog-copy h1 {
		max-width: 15ch;
		font-size: clamp(2rem, 8vw, 2.75rem);
	}

	.roosevelt-masters__section-heading h2 {
		max-width: 20ch;
	}

	.roosevelt-masters__program-hero h1 {
		font-size: clamp(2.35rem, 10.5vw, 3.55rem);
	}

	.roosevelt-masters__facts dl {
		grid-template-columns: 1fr;
		padding: 0.8rem 1rem;
	}

	.roosevelt-masters__faculty-feature > div {
		right: 1rem;
		bottom: 1rem;
		left: 1rem;
	}

	.roosevelt-masters__faculty-card h3 {
		margin-bottom: 0.65rem;
	}

	.roosevelt-masters__facts dl > div {
		padding: 0.8rem 0.4rem;
	}

	.roosevelt-masters__facts dl > div + div {
		border-top: 1px solid var(--masters-line);
		border-left: 0;
	}

	.roosevelt-masters__faculty-card p:last-child {
		margin-top: 0;
	}
}

@media (max-width: 380px) {

	.roosevelt-masters__button,
	.roosevelt-masters__hero-actions,
	.roosevelt-masters__cta-actions {
		width: 100%;
	}
}

/* stylelint-disable no-descending-specificity */

/* Virtual document office page. */

@media all {

	.roosevelt-mesa-page {
		width: 100%;
		background: #fff;
		color: var(--roosevelt-ink);
		overflow: clip;
	}
}

@media all {

	.roosevelt-mesa__hero {
		position: relative;
		min-height: clamp(27rem, 43vw, 36rem);
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-mesa__hero-media,
	.roosevelt-mesa__hero-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-mesa__hero-image {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center 52%;
	}

	.roosevelt-mesa__hero-shade {
		background: linear-gradient(105deg, rgba(45, 0, 26, 0.94) 0%, rgba(73, 0, 39, 0.82) 44%, rgba(24, 8, 20, 0.46) 100%);
	}

	.roosevelt-mesa__hero-inner {
		position: relative;
		display: flex;
		min-height: clamp(27rem, 43vw, 36rem);
		flex-direction: column;
		justify-content: center;
		padding-block: 3.5rem;
	}

	.roosevelt-mesa__back-link {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		align-self: flex-start;
		margin-bottom: 2.2rem;
		color: rgba(255, 255, 255, 0.9);
		font-size: 0.76rem;
		font-weight: 750;
		text-decoration: none;
		text-transform: uppercase;
		transition: color 180ms ease, transform 180ms ease;
	}

	.roosevelt-mesa__hero-copy {
		max-width: 51rem;
	}

	.roosevelt-mesa__summary {
		position: relative;
		z-index: 1;
		margin-top: -1.7rem;
	}

	.roosevelt-mesa__summary-grid {
		display: grid;
		grid-template-columns: minmax(15rem, 1fr) minmax(18rem, 1.2fr) auto;
		align-items: center;
		gap: clamp(1rem, 2.8vw, 2.5rem);
		padding: clamp(1.15rem, 2.4vw, 1.75rem);
		border: 1px solid #e5e5e5;
		border-radius: 0.95rem;
		background: #fff;
		box-shadow: 0 0.8rem 2rem rgba(20, 20, 20, 0.08);
	}

	.roosevelt-mesa__summary-item {
		display: flex;
		min-width: 0;
		align-items: center;
		gap: 0.9rem;
	}

	.roosevelt-mesa__summary-icon {
		display: grid;
		width: 2.8rem;
		height: 2.8rem;
		flex: 0 0 auto;
		place-items: center;
		border-radius: 50%;
		background: #f3f3f3;
		color: var(--roosevelt-brand);
		font-size: 1.25rem;
	}

	.roosevelt-mesa__sidebar-eyebrow,
	.roosevelt-mesa__help-label,
	.roosevelt-mesa__format-label {
		color: var(--roosevelt-brand);
		font-size: 0.67rem;
		font-weight: 850;
	}

	.roosevelt-mesa__summary-action,
	.roosevelt-mesa__format-action {
		display: inline-flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.65rem;
		color: var(--roosevelt-brand);
		font-size: 0.82rem;
		font-weight: 780;
		text-decoration: none;
	}

	.roosevelt-mesa__layout {
		display: grid;
		grid-template-columns: minmax(13rem, 16rem) minmax(0, 1fr);
		align-items: start;
		gap: clamp(2rem, 5vw, 5.5rem);
		padding-block: clamp(3.5rem, 7vw, 6.5rem);
	}

	.roosevelt-mesa__sidebar {
		position: sticky;
		top: calc(var(--roosevelt-admin-bar-offset, 0px) + 7.5rem);
		align-self: start;
	}

	.roosevelt-mesa__sidebar-card {
		padding: 1.35rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.85rem;
		background: #fff;
		box-shadow: 0 0.8rem 2rem rgba(20, 20, 20, 0.05);
	}

	.roosevelt-mesa__sidebar-eyebrow {
		margin: 0 0 0.9rem;
	}

	.roosevelt-mesa__toc {
		display: grid;
		gap: 0.2rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-mesa__help {
		display: grid;
		gap: 0.6rem;
		margin-top: 1.1rem;
		padding: 1rem;
		border-radius: 0.7rem;
		background: #f5f5f5;
	}

	.roosevelt-mesa__help-label {
		font-size: 0.64rem;
	}

	.roosevelt-mesa__content {
		min-width: 0;
	}

	.roosevelt-mesa__intro {
		margin: 0 0 3rem;
		padding-left: 1.2rem;
		border-left: 3px solid var(--roosevelt-brand);
		color: #29262b;
		font-size: clamp(1.15rem, 2vw, 1.5rem);
		font-weight: 550;
		line-height: 1.55;
	}

	.roosevelt-mesa__step-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
		margin-top: 1.7rem;
	}

	.roosevelt-mesa__step {
		min-height: 11rem;
		padding: 1.35rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.8rem;
		background: #faf9fa;
	}

	.roosevelt-mesa__format-number {
		display: inline-grid;
		width: 2.1rem;
		height: 2.1rem;
		place-items: center;
		border-radius: 0.6rem;
		background: #f3f3f3;
		color: var(--roosevelt-brand);
		font-size: 0.68rem;
		font-weight: 850;
	}

	.roosevelt-mesa__format-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
		margin-top: 1.7rem;
	}

	.roosevelt-mesa__format-card {
		display: flex;
		min-height: 17rem;
		flex-direction: column;
		align-items: flex-start;
		padding: 1.3rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.85rem;
		background: #fff;
		box-shadow: 0 0.45rem 1.4rem rgba(20, 20, 20, 0.045);
		color: var(--roosevelt-ink);
		text-decoration: none;
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.roosevelt-mesa__format-label {
		margin-top: 1rem;
		font-size: 0.62rem;
	}

	.roosevelt-mesa__format-description {
		margin-top: 0.55rem;
		color: #625e66;
		font-size: 0.82rem;
		line-height: 1.6;
	}

	.roosevelt-mesa__format-action {
		margin-top: auto;
		padding-top: 1rem;
		font-size: 0.75rem;
	}

	.roosevelt-mesa__editor-app {
		display: inline-flex;
		align-items: center;
		gap: 0.45rem;
		margin-top: 1rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.78rem;
		text-decoration: underline;
		text-underline-offset: 0.18em;
	}

	.roosevelt-mesa__notice {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		gap: 1rem;
		margin-block: 1.3rem;
		padding: 1.35rem;
		border: 1px solid #e5e5e5;
		border-left: 4px solid var(--roosevelt-brand);
		border-radius: 0.8rem;
		background: #f5f5f5;
	}

	.roosevelt-mesa__notice-mark {
		display: grid;
		width: 2.2rem;
		height: 2.2rem;
		place-items: center;
		border-radius: 50%;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 1rem;
		font-weight: 800;
	}

	.roosevelt-mesa__hours {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
		margin-top: 1.3rem;
	}

	.roosevelt-mesa__cta {
		padding-block: clamp(3rem, 6vw, 5rem);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-mesa__cta-inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
	}

	.roosevelt-mesa__hero-copy h1 {
		max-width: 48rem;
		margin: 0 0 1.1rem;
		font-size: clamp(2.5rem, 5.2vw, 4.7rem);
		font-weight: 760;
		line-height: 1.04;
	}

	.roosevelt-mesa__summary-item div {
		display: grid;
		min-width: 0;
		gap: 0.25rem;
	}

	.roosevelt-mesa__summary-item a,
	.roosevelt-mesa__summary-item strong {
		color: var(--roosevelt-ink);
		font-size: 0.88rem;
		font-weight: 680;
		line-height: 1.45;
		text-decoration: none;
	}

	.roosevelt-mesa__help a {
		display: inline-flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.65rem;
		color: var(--roosevelt-brand);
		font-size: 0.82rem;
		font-weight: 780;
		text-decoration: none;
	}

	.roosevelt-mesa__toc a {
		display: grid;
		grid-template-columns: 1.8rem minmax(0, 1fr);
		align-items: start;
		gap: 0.45rem;
		padding: 0.7rem 0.15rem;
		border-bottom: 1px solid #eee;
		color: #45414a;
		font-size: 0.78rem;
		font-weight: 650;
		line-height: 1.4;
		text-decoration: none;
		transition: color 160ms ease, padding 160ms ease;
	}

	/* stylelint-disable no-duplicate-selectors -- Late help-link override. */

	.roosevelt-mesa__help a {
		font-size: 0.75rem;
	}
	/* stylelint-enable no-duplicate-selectors */

	.roosevelt-mesa__section h2 {
		max-width: 46rem;
		margin: 0 0 0.9rem;
		color: var(--roosevelt-ink);
		font-size: clamp(1.8rem, 3vw, 2.6rem);
		font-weight: 740;
		line-height: 1.15;
	}

	.roosevelt-mesa__step > span {
		display: inline-grid;
		width: 2.1rem;
		height: 2.1rem;
		place-items: center;
		border-radius: 0.6rem;
		background: #f3f3f3;
		color: var(--roosevelt-brand);
		font-size: 0.68rem;
		font-weight: 850;
	}

	.roosevelt-mesa__step h3 {
		margin: 0.9rem 0 0.4rem;
		font-size: 1.05rem;
		font-weight: 750;
	}

	.roosevelt-mesa__step p {
		margin: 0;
		color: #625e66;
		font-size: 0.85rem;
		line-height: 1.65;
	}

	.roosevelt-mesa__format-card > strong {
		margin-top: 0.45rem;
		font-size: 1.04rem;
		line-height: 1.35;
	}

	.roosevelt-mesa__notice h3 {
		margin: 0 0 0.4rem;
		font-size: 1rem;
		font-weight: 750;
	}

	.roosevelt-mesa__notice p {
		margin: 0;
		color: #5e5a62;
		font-size: 0.88rem;
		line-height: 1.7;
	}

	.roosevelt-mesa__hours > div {
		display: grid;
		gap: 0.4rem;
		padding: 1.25rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.8rem;
		background: #faf9fa;
	}

	.roosevelt-mesa__hours strong {
		color: var(--roosevelt-ink);
		font-size: 0.9rem;
	}

	.roosevelt-mesa__hours span {
		color: #625e66;
		font-size: 0.86rem;
		line-height: 1.6;
	}

	.roosevelt-mesa__cta h2 {
		max-width: 42rem;
		margin: 0.8rem 0 0.6rem;
		font-size: clamp(1.8rem, 3.5vw, 2.8rem);
		font-weight: 760;
		line-height: 1.12;
	}

	.roosevelt-mesa__summary-item div > span {
		color: var(--roosevelt-brand);
		font-size: 0.67rem;
		font-weight: 850;
	}

	.roosevelt-mesa__toc a span {
		color: var(--roosevelt-brand);
		font-size: 0.7rem;
		font-weight: 800;
	}

	.roosevelt-mesa__back-link:hover,
	.roosevelt-mesa__back-link:focus-visible {
		color: #fff;
		transform: translateX(-0.2rem);
	}

	.roosevelt-mesa__hero-copy .roosevelt-button {
		margin-top: 1.5rem;
	}

	.roosevelt-mesa__summary-action:hover,
	.roosevelt-mesa__summary-action:focus-visible,
	.roosevelt-mesa__format-action:hover,
	.roosevelt-mesa__format-action:focus-visible {
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-mesa__section + .roosevelt-mesa__section {
		margin-top: clamp(3.2rem, 6vw, 5rem);
		padding-top: clamp(2.5rem, 4.5vw, 4rem);
		border-top: 1px solid #e5e5e5;
	}

	.roosevelt-mesa__section > .roosevelt-label {
		margin: 0 0 0.7rem;
		color: var(--roosevelt-brand);
		font-size: 0.69rem;
		font-weight: 850;
	}

	.roosevelt-mesa__format-card:hover,
	.roosevelt-mesa__format-card:focus-visible {
		transform: translateY(-0.2rem);
		border-color: var(--roosevelt-brand);
		box-shadow: 0 0.9rem 2rem rgba(20, 20, 20, 0.12);
	}

	.roosevelt-mesa__editor-app:hover,
	.roosevelt-mesa__editor-app:focus-visible {
		color: var(--roosevelt-brand);
	}

	.roosevelt-mesa__cta .roosevelt-button--light {
		flex: 0 0 auto;
	}

	.roosevelt-mesa__hero-copy > p:last-of-type {
		max-width: 43rem;
		margin: 0;
		color: rgba(255, 255, 255, 0.92);
		font-size: clamp(1rem, 1.5vw, 1.2rem);
		line-height: 1.65;
	}

	.roosevelt-mesa__summary-item a:hover,
	.roosevelt-mesa__summary-item a:focus-visible {
		color: var(--roosevelt-brand);
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-mesa__help a:hover,
	.roosevelt-mesa__help a:focus-visible {
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-mesa__toc a:hover,
	.roosevelt-mesa__toc a:focus-visible {
		padding-left: 0.4rem;
		color: var(--roosevelt-brand);
	}

	.roosevelt-mesa__section > p:not(.roosevelt-label) {
		max-width: 49rem;
		margin: 0 0 1rem;
		color: #5e5a62;
		font-size: 0.98rem;
		line-height: 1.8;
	}

	.roosevelt-mesa__cta-inner > div > p:last-child {
		margin: 0;
		color: rgba(255, 255, 255, 0.9);
		font-size: 0.95rem;
		line-height: 1.6;
	}
}

@media all {

	.roosevelt-mesa-page :focus-visible {
		outline: 3px solid #fedc00;
		outline-offset: 3px;
	}
}

@media (max-width: 980px) {

	.roosevelt-mesa__summary-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-mesa__summary-action {
		grid-column: 1 / -1;
		justify-content: flex-start;
	}

	.roosevelt-mesa__layout {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.roosevelt-mesa__sidebar {
		position: static;
	}

	.roosevelt-mesa__sidebar-card {
		padding: 1rem;
	}

	.roosevelt-mesa__toc {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 0.75rem;
	}

	.roosevelt-mesa__format-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {

	.roosevelt-mesa__hero,
	.roosevelt-mesa__hero-inner {
		min-height: 33rem;
	}

	.roosevelt-mesa__hero-inner {
		padding-block: 2.5rem;
	}

	.roosevelt-mesa__summary {
		margin-top: -1rem;
	}

	.roosevelt-mesa__summary-grid,
	.roosevelt-mesa__step-grid,
	.roosevelt-mesa__format-grid,
	.roosevelt-mesa__toc,
	.roosevelt-mesa__hours {
		grid-template-columns: 1fr;
	}

	.roosevelt-mesa__summary-action {
		grid-column: auto;
	}

	.roosevelt-mesa__intro {
		margin-bottom: 2.2rem;
	}

	.roosevelt-mesa__format-card {
		min-height: 14rem;
	}

	.roosevelt-mesa__notice {
		grid-template-columns: 1fr;
	}

	.roosevelt-mesa__cta-inner {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-mesa__hero-copy h1 {
		font-size: clamp(2.25rem, 11vw, 3.25rem);
	}
}

/* stylelint-enable no-descending-specificity */

/* Authorities and research institutional pages. */

/* stylelint-disable no-descending-specificity */

@media all {

	.roosevelt-authorities-page,
	.roosevelt-research-page {
		width: 100%;
		background: #fff;
		color: var(--roosevelt-ink);
		overflow: hidden;
	}
}

@media all {

	.roosevelt-authorities__hero,
	.roosevelt-research__hero {
		position: relative;
		min-height: clamp(28rem, 44vw, 36rem);
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-authorities__hero-media,
	.roosevelt-authorities__hero-shade,
	.roosevelt-research__hero-media,
	.roosevelt-research__hero-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-authorities__hero-image,
	.roosevelt-research__hero-image {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.roosevelt-authorities__hero-image {
		object-position: center 48%;
	}
}

@media all {

	.roosevelt-research__hero-image {
		object-position: center 42%;
	}
}

@media all {

	.roosevelt-authorities__hero-shade,
	.roosevelt-research__hero-shade {
		background: linear-gradient(90deg, rgba(20, 20, 20, 0.88) 0%, rgba(20, 20, 20, 0.66) 55%, rgba(20, 20, 20, 0.25) 100%);
	}

	.roosevelt-authorities__hero-inner,
	.roosevelt-research__hero-inner {
		position: relative;
		display: flex;
		min-height: clamp(28rem, 44vw, 36rem);
		flex-direction: column;
		justify-content: center;
		padding-block: 3.5rem;
	}

	.roosevelt-authorities__back-link,
	.roosevelt-research__back-link {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		align-self: flex-start;
		margin-bottom: 2.4rem;
		color: rgba(255, 255, 255, 0.88);
		font-size: 0.76rem;
		font-weight: 750;
		text-decoration: none;
		text-transform: uppercase;
		transition: color 180ms ease, transform 180ms ease;
	}

	.roosevelt-authorities__hero-copy,
	.roosevelt-research__hero-copy {
		max-width: 54rem;
	}

	.roosevelt-authorities__content,
	.roosevelt-research__content {
		padding-block: clamp(3.5rem, 7vw, 6rem);
	}

	.roosevelt-authorities__intro,
	.roosevelt-research__intro,
	.roosevelt-authorities__section-heading,
	.roosevelt-research__section-heading {
		max-width: 50rem;
	}

	.roosevelt-authorities__intro,
	.roosevelt-research__intro {
		margin-bottom: clamp(2rem, 4vw, 3.5rem);
	}

	.roosevelt-authorities__featured {
		margin-bottom: clamp(3.5rem, 7vw, 5.5rem);
	}

	.roosevelt-authorities__card {
		min-width: 0;
		padding: clamp(1.35rem, 2.8vw, 2rem);
		border: 1px solid #e5e5e5;
		border-radius: 1rem;
		background: #fff;
		box-shadow: 0 0.8rem 2rem rgba(20, 20, 20, 0.055);
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.roosevelt-authorities__card--featured {
		display: grid;
		grid-template-columns: minmax(0, 1.2fr) minmax(15rem, 0.8fr);
		align-items: center;
		gap: 2rem;
		border-left: 4px solid var(--roosevelt-brand);
		background: linear-gradient(115deg, #fff 50%, #f5f5f5 100%);
	}

	.roosevelt-authorities__identity {
		display: flex;
		align-items: flex-start;
		gap: 1.2rem;
	}

	.roosevelt-authorities__avatar {
		display: grid;
		width: 4.5rem;
		height: 4.5rem;
		flex: 0 0 auto;
		place-items: center;
		border: 4px solid #f5f5f5;
		border-radius: 50%;
		background: var(--roosevelt-brand);
		box-shadow: 0 0 0 1px var(--roosevelt-color-border);
		color: #fff;
		font-size: 1.05rem;
		font-weight: 850;
	}

	.roosevelt-authorities__group {
		margin: 0 0 0.55rem;
		color: var(--roosevelt-brand);
		font-size: 0.64rem;
		font-weight: 850;
	}

	.roosevelt-authorities__role {
		margin: 0;
		color: #5e5a62;
		font-size: 0.9rem;
		line-height: 1.55;
	}

	.roosevelt-authorities__contact {
		min-width: 0;
		margin-top: 1.4rem;
		padding-top: 1rem;
		border-top: 1px solid #e5e5e5;
	}

	.roosevelt-authorities__section-heading {
		margin-bottom: 1.4rem;
	}

	.roosevelt-authorities__grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.2rem;
	}

	.roosevelt-authorities__source,
	.roosevelt-research__source {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1.5rem;
		margin-top: clamp(2.5rem, 5vw, 4rem);
		padding: 1.2rem 1.35rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.8rem;
		background: #faf9fa;
	}

	.roosevelt-authorities__cta,
	.roosevelt-research__cta {
		padding-block: clamp(2.5rem, 5vw, 4rem);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-authorities__cta-inner,
	.roosevelt-research__cta-inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
	}

	.roosevelt-authorities__hero-copy h1,
	.roosevelt-research__hero-copy h1 {
		max-width: 52rem;
		margin: 0 0 1.2rem;
		font-size: clamp(2.4rem, 5vw, 4.7rem);
		font-weight: 750;
		line-height: 1.04;
	}

	.roosevelt-authorities__intro h2,
	.roosevelt-research__intro h2,
	.roosevelt-authorities__section-heading h2,
	.roosevelt-research__section-heading h2 {
		margin: 0 0 0.8rem;
		color: var(--roosevelt-ink);
		font-size: clamp(1.8rem, 3vw, 2.7rem);
		font-weight: 740;
		line-height: 1.15;
	}

	.roosevelt-authorities__contact > span {
		margin: 0 0 0.55rem;
		color: var(--roosevelt-brand);
		font-size: 0.64rem;
		font-weight: 850;
	}

	.roosevelt-authorities__identity h3 {
		margin: 0 0 0.4rem;
		color: var(--roosevelt-ink);
		font-size: clamp(1.12rem, 2vw, 1.4rem);
		font-weight: 760;
		line-height: 1.3;
	}

	.roosevelt-authorities__contact ul {
		display: grid;
		gap: 0.45rem;
		margin: 0.55rem 0 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-authorities__contact a {
		color: #4d4850;
		font-size: 0.82rem;
		font-weight: 600;
		text-decoration: none;
		word-break: break-word;
	}

	.roosevelt-authorities__section-heading h2 {
		margin: 0;
		color: var(--roosevelt-ink);
		font-size: clamp(1.7rem, 2.8vw, 2.25rem);
		font-weight: 740;
	}

	.roosevelt-authorities__source p,
	.roosevelt-research__source p {
		margin: 0.35rem 0 0;
		color: #625e66;
		font-size: 0.82rem;
		line-height: 1.55;
	}

	.roosevelt-authorities__source > a,
	.roosevelt-research__source > a {
		display: inline-flex;
		flex: 0 0 auto;
		align-items: center;
		gap: 0.5rem;
		color: var(--roosevelt-brand);
		font-size: 0.78rem;
		font-weight: 800;
		text-decoration: none;
	}

	.roosevelt-authorities__cta-inner h2,
	.roosevelt-research__cta-inner h2 {
		margin: 0.7rem 0 0.45rem;
		font-size: clamp(1.7rem, 3vw, 2.5rem);
		font-weight: 750;
		line-height: 1.15;
	}

	.roosevelt-authorities__source > div > span {
		color: var(--roosevelt-brand);
		font-size: 0.64rem;
		font-weight: 850;
	}

	.roosevelt-authorities__back-link:hover,
	.roosevelt-authorities__back-link:focus-visible,
	.roosevelt-research__back-link:hover,
	.roosevelt-research__back-link:focus-visible {
		color: #fff;
		transform: translateX(-0.2rem);
	}

	.roosevelt-authorities__intro .roosevelt-label,
	.roosevelt-research__intro .roosevelt-label,
	.roosevelt-authorities__section-heading .roosevelt-label,
	.roosevelt-research__section-heading .roosevelt-label {
		margin: 0 0 0.7rem;
		color: var(--roosevelt-brand);
		font-size: 0.69rem;
		font-weight: 850;
	}

	.roosevelt-authorities__card:hover {
		border-color: #e5e5e5;
		box-shadow: 0 1rem 2.2rem rgba(20, 20, 20, 0.09);
		transform: translateY(-0.12rem);
	}

	.roosevelt-authorities__card--featured .roosevelt-authorities__avatar {
		width: 5.4rem;
		height: 5.4rem;
		font-size: 1.2rem;
	}

	.roosevelt-authorities__card--featured .roosevelt-authorities__contact {
		margin-top: 0;
		padding: 0 0 0 1.5rem;
		border-top: 0;
		border-left: 1px solid #e5e5e5;
	}

	.roosevelt-authorities__cta-inner .roosevelt-button--light,
	.roosevelt-research__cta-inner .roosevelt-button--light {
		flex: 0 0 auto;
		background: #fff;
		color: var(--roosevelt-brand-dark);
		transition: background-color 180ms ease, color 180ms ease, transform 180ms ease;
	}

	.roosevelt-authorities__hero-copy > p:last-child,
	.roosevelt-research__hero-copy > p:last-child {
		max-width: 44rem;
		margin: 0;
		color: rgba(255, 255, 255, 0.9);
		font-size: clamp(1rem, 1.5vw, 1.2rem);
		line-height: 1.6;
	}

	.roosevelt-authorities__intro > p:last-child,
	.roosevelt-research__intro > p:last-child,
	.roosevelt-research__section-heading > p:last-child {
		max-width: 47rem;
		margin: 0;
		color: #5e5a62;
		font-size: 0.98rem;
		line-height: 1.8;
	}

	.roosevelt-authorities__contact a:hover,
	.roosevelt-authorities__contact a:focus-visible {
		color: var(--roosevelt-brand);
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-authorities__source > a:hover,
	.roosevelt-authorities__source > a:focus-visible,
	.roosevelt-research__source > a:hover,
	.roosevelt-research__source > a:focus-visible {
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-authorities__cta-inner > div > p:last-child,
	.roosevelt-research__cta-inner > div > p:last-child {
		margin: 0;
		color: rgba(255, 255, 255, 0.82);
	}

	.roosevelt-authorities__cta-inner .roosevelt-button--light:hover,
	.roosevelt-authorities__cta-inner .roosevelt-button--light:focus-visible,
	.roosevelt-research__cta-inner .roosevelt-button--light:hover,
	.roosevelt-research__cta-inner .roosevelt-button--light:focus-visible {
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
		transform: translateY(-0.12rem);
	}
}

@media all {

	.roosevelt-research__director {
		position: relative;
		z-index: 1;
		padding-block: 1.5rem;
		background: #f4f3f4;
	}

	.roosevelt-research__director-card {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr) auto;
		align-items: center;
		gap: 1.4rem;
		padding: clamp(1.2rem, 2.5vw, 1.8rem);
		border: 1px solid #e5e5e5;
		border-radius: 1rem;
		background: #fff;
		box-shadow: 0 0.8rem 2rem rgba(20, 20, 20, 0.06);
	}

	.roosevelt-research__director-mark {
		display: grid;
		width: 4.4rem;
		height: 4.4rem;
		place-items: center;
		border: 4px solid #f5f5f5;
		border-radius: 50%;
		background: var(--roosevelt-brand);
		box-shadow: 0 0 0 1px var(--roosevelt-color-border);
		color: #fff;
		font-size: 1rem;
		font-weight: 850;
	}

	.roosevelt-research__director-email {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		color: var(--roosevelt-brand);
		font-size: 0.8rem;
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-research__objectives,
	.roosevelt-research__resources {
		margin-top: clamp(3rem, 6vw, 5rem);
	}

	.roosevelt-research__section-heading {
		margin-bottom: 1.5rem;
	}

	.roosevelt-research__objective-grid {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0.9rem;
	}

	.roosevelt-research__objective {
		min-height: 14rem;
		padding: 1.35rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.85rem;
		background: #fff;
		box-shadow: 0 0.7rem 1.8rem rgba(20, 20, 20, 0.045);
	}

	.roosevelt-research__resource-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-research__resource {
		position: relative;
		display: flex;
		min-height: 15rem;
		flex-direction: column;
		align-items: flex-start;
		padding: 1.4rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.9rem;
		background: linear-gradient(145deg, #fff 55%, #f5f5f5 100%);
		color: var(--roosevelt-ink);
		text-decoration: none;
		box-shadow: 0 0.8rem 2rem rgba(20, 20, 20, 0.05);
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.roosevelt-research__resource-icon {
		display: grid;
		width: 2.5rem;
		height: 2.5rem;
		margin-bottom: 1.1rem;
		place-items: center;
		border-radius: 0.7rem;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 0.68rem;
		font-weight: 850;
	}

	.roosevelt-research__resource-label {
		color: var(--roosevelt-brand);
		font-size: 0.62rem;
		font-weight: 850;
	}

	.roosevelt-research__resource-action {
		display: flex;
		width: 100%;
		align-items: center;
		justify-content: space-between;
		gap: 0.5rem;
		margin-top: auto;
		padding-top: 1.3rem;
		color: #5d5860;
		font-size: 0.75rem;
		font-weight: 700;
	}

	.roosevelt-research__source {
		margin-top: 2rem;
	}

	.roosevelt-research__director-info > p {
		margin: 0 0 0.35rem;
		color: var(--roosevelt-brand);
		font-size: 0.64rem;
		font-weight: 850;
	}

	.roosevelt-research__director-info h2 {
		margin: 0 0 0.25rem;
		color: var(--roosevelt-ink);
		font-size: 1.05rem;
		font-weight: 760;
		line-height: 1.35;
	}

	.roosevelt-research__director-info > span {
		color: #625e66;
		font-size: 0.83rem;
	}

	.roosevelt-research__objective > span {
		display: inline-grid;
		width: 2.2rem;
		height: 2.2rem;
		place-items: center;
		border-radius: 0.6rem;
		background: #f5f5f5;
		color: var(--roosevelt-brand);
		font-size: 0.68rem;
		font-weight: 850;
	}

	.roosevelt-research__objective h3 {
		margin: 1.1rem 0 0.5rem;
		font-size: 1rem;
		font-weight: 750;
		line-height: 1.35;
	}

	.roosevelt-research__objective p {
		margin: 0;
		color: #625e66;
		font-size: 0.84rem;
		line-height: 1.65;
	}

	.roosevelt-research__resource > strong {
		max-width: 18rem;
		margin-top: 0.5rem;
		font-size: 1.08rem;
		font-weight: 760;
		line-height: 1.35;
	}

	.roosevelt-research__resource-action > span {
		color: var(--roosevelt-brand);
		font-size: 1rem;
	}

	.roosevelt-research__director-email:hover,
	.roosevelt-research__director-email:focus-visible {
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-research__resource:hover,
	.roosevelt-research__resource:focus-visible {
		border-color: #e5e5e5;
		box-shadow: 0 1rem 2.2rem rgba(20, 20, 20, 0.1);
		transform: translateY(-0.16rem);
	}
}

@media (max-width: 1000px) {

	.roosevelt-research__objective-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-research__resource-grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-research__resource {
		min-height: 11rem;
	}
}

@media (max-width: 760px) {

	.roosevelt-authorities__hero,
	.roosevelt-authorities__hero-inner,
	.roosevelt-research__hero,
	.roosevelt-research__hero-inner {
		min-height: 29rem;
	}

	.roosevelt-authorities__hero-inner,
	.roosevelt-research__hero-inner {
		padding-block: 2.5rem;
	}

	.roosevelt-authorities__back-link,
	.roosevelt-research__back-link {
		margin-bottom: 2rem;
	}

	.roosevelt-authorities__card--featured {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.roosevelt-authorities__grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-authorities__source,
	.roosevelt-research__source {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-research__director-card {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.roosevelt-research__director-email {
		grid-column: 2;
	}

	.roosevelt-authorities__cta-inner,
	.roosevelt-research__cta-inner {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-authorities__card--featured .roosevelt-authorities__contact {
		margin-top: 0.4rem;
		padding: 1rem 0 0;
		border-top: 1px solid #e5e5e5;
		border-left: 0;
	}
}

@media (max-width: 500px) {

	.roosevelt-research__objective-grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-research__objective {
		min-height: 0;
	}

	.roosevelt-research__director-card {
		grid-template-columns: 1fr;
	}

	.roosevelt-research__director-email {
		grid-column: auto;
	}

	.roosevelt-authorities__identity {
		gap: 0.9rem;
	}

	.roosevelt-authorities__avatar,
	.roosevelt-authorities__card--featured .roosevelt-authorities__avatar {
		width: 3.7rem;
		height: 3.7rem;
		font-size: 0.95rem;
	}
}

/* stylelint-enable no-descending-specificity */

/* Mega menu and motion adaptations. */
@media (max-width: 900px) {

	.roosevelt-mega__inner {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.roosevelt-mega__links {
		grid-template-columns: 1fr 1fr;
	}

	.roosevelt-header__menu-item--careers {
		display: block;
	}

	.roosevelt-header__menu .sub-menu,
	.roosevelt-header__menu .roosevelt-header__sub-menu {
		padding: 0.4rem 0 0.4rem 0.8rem !important;
	}
}

@media (max-width: 540px) {

	.roosevelt-mega__links {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}

	.roosevelt-home__hero-title {
		font-size: clamp(2rem, 8vw, 2.4rem);
	}

	.roosevelt-mega__links > li {
		border-bottom: 1px solid #eee;
	}

	.roosevelt-home__hero h1 {
		font-size: clamp(2rem, 8vw, 2.4rem);
	}
}

@media (prefers-reduced-motion: reduce) {

	.roosevelt-home__hero *,
	.roosevelt-home__hero-controls::after,
	.roosevelt-header__menu {
		animation: none !important;
		transition: none !important;
	}
}

@media all {

	.roosevelt-header__menu[hidden],
	.roosevelt-header__menu [hidden],
	.roosevelt-home__hero [hidden] {
		display: none !important;
	}
}

@media all {

	.roosevelt-mega__expand:hover,
	.roosevelt-mega__expand:focus {
		background: #f5f5f5;
		color: var(--roosevelt-brand);
	}

	.roosevelt-mega__expand:focus-visible {
		outline: 2px solid var(--roosevelt-brand);
		outline-offset: 3px;
	}
}

/* Keep the masthead visible when locking page scroll for the mega menu. */
@media all {

	html.roosevelt-mega-open {
		overflow: hidden;
		overscroll-behavior: none;
		overflow-anchor: none;
		scrollbar-gutter: stable;
	}

	body.roosevelt-mega-open {
		overflow: hidden;
		overscroll-behavior: none;
		overflow-anchor: none;
		padding-block-start: var(--roosevelt-mega-header-height, 0px);
	}

	html.roosevelt-mega-open .roosevelt-header {
		position: fixed;
		right: 0;
		left: 0;
	}
}

@media all {

	.roosevelt-header__menu.has-mega-navigation {
		position: fixed;
		inset: var(--roosevelt-mega-top, 0px) 0 0;
		z-index: 1001;
		width: 100%;
		height: auto;
		min-height: 0;
		max-height: none;
		box-sizing: border-box;
		padding: clamp(1.5rem, 3vw, 2.75rem) clamp(1.25rem, 3.5vw, 3.5rem);
		border-top: 1px solid #343434;
		background: #101010;
		color: #fff;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
	}

	.roosevelt-header__menu.has-mega-navigation.is-closing {
		animation: roosevelt-hero-copy-out 220ms ease both;
		pointer-events: none;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner {
		grid-template-columns: minmax(0, 1fr) minmax(16rem, 19rem);
		align-items: start;
		gap: clamp(1.5rem, 3vw, 3rem);
		max-width: 1440px;
		min-height: 0;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__navigation {
		min-width: 0;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__eyebrow {
		margin-bottom: 1.25rem;
		color: var(--roosevelt-yellow);
	}
}

@media all {

	.roosevelt-mega__browse {
		display: grid;
		grid-template-columns: minmax(12rem, 0.32fr) minmax(0, 1fr);
		align-items: start;
		gap: clamp(1.5rem, 4vw, 4rem);
	}

	.roosevelt-mega__categories {
		display: grid;
		align-content: start;
		gap: 0.25rem;
		min-width: 0;
		padding-right: 1rem;
		border-right: 1px solid #383838;
	}

	.roosevelt-mega__tabs {
		display: grid;
		align-content: start;
		gap: 0.25rem;
		min-width: 0;
	}

	.roosevelt-mega__tab {
		width: 100%;
		min-height: 3.5rem;
		padding: 0.8rem 1rem;
		border: 0;
		border-left: 3px solid transparent;
		background: transparent;
		color: #f5f5f5;
		cursor: pointer;
		font: inherit;
		font-size: clamp(1rem, 1.3vw, 1.15rem);
		font-weight: 700;
		line-height: 1.3;
		text-align: left;
		transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
	}

	.roosevelt-mega__store-link {
		display: flex;
		align-items: center;
		text-decoration: none;
	}

	.roosevelt-mega__panels,
	.roosevelt-mega__panel {
		min-width: 0;
	}

	.roosevelt-mega__panel-title {
		margin: 0 0 1.25rem;
		color: var(--roosevelt-yellow);
		font-size: clamp(1.65rem, 2.7vw, 2.4rem);
		line-height: 1.1;
	}

	.roosevelt-mega__tab:hover,
	.roosevelt-mega__tab.is-active {
		border-left-color: var(--roosevelt-yellow);
		background: #1c1c1c;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-mega__tab:focus-visible {
		outline: 2px solid var(--roosevelt-yellow);
		outline-offset: 3px;
	}
}

@media all {

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel-links {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: start;
		gap: 0.75rem 3rem;
		margin: 0;
		padding: 0;
		border: 0;
		list-style: none;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__notice {
		padding: 1.5rem;
		border: 1px solid #303030;
		border-top: 4px solid var(--roosevelt-yellow);
		background: #171717;
		color: #fff;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__carousel-viewport {
		background: #242424;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__carousel-arrow {
		border-color: #454545;
		background: #222;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel-links ul {
		margin: 0;
		padding: 0.35rem 0 0;
		border: 0;
		list-style: none;
	}

	.roosevelt-header__menu.has-mega-navigation a:hover,
	.roosevelt-header__menu.has-mega-navigation a:focus-visible {
		border: 0;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__carousel-dot::before {
		background: #626262;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__featured-links {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.75rem 3rem;
		margin: 0 0 0.75rem;
		padding: 0;
		list-style: none;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__slide:focus-visible {
		outline-color: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__carousel-arrow:hover,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__carousel-arrow:focus-visible {
		border-color: var(--roosevelt-yellow);
		background: var(--roosevelt-yellow);
		color: #111;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-title a {
		padding: 0;
		color: inherit;
		font-size: inherit;
		font-weight: 750;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__featured-links > li {
		min-width: 0;
		border: 0;
		background: transparent;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-links > li {
		min-width: 0;
		transition: border-color 160ms ease, background-color 160ms ease;
	}

	.roosevelt-header__menu.has-mega-navigation
	.roosevelt-mega__inner a:hover,
	.roosevelt-header__menu.has-mega-navigation
	.roosevelt-mega__inner a:focus-visible {
		border: 0;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__carousel-dot.is-active::before,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__carousel-dot:hover::before,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__carousel-dot:focus-visible::before {
		background: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__featured-links > li > a {
		padding: 0.15rem 0 0.5rem;
		color: var(--roosevelt-yellow);
		font-size: 0.96rem;
		font-weight: 750;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-links > li > a {
		padding: 0.15rem 0 0.5rem;
		color: var(--roosevelt-color-background);
		font-size: 0.96rem;
		font-weight: 750;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-links ul a,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-links > li > a {
		text-decoration: none;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-links ul a {
		padding: 0.55rem 0;
		color: #eee;
		font-size: 0.87rem;
		font-weight: 450;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-links ul li + li {
		border-top: 1px solid #303030;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="carreras"] .roosevelt-mega__panel-title a,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="la universidad"] .roosevelt-mega__panel-title a,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="comunidad"] .roosevelt-mega__panel-title a {
		font-weight: 700;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-title a:hover,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-title a:focus-visible {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-links > li:hover,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__panel-links > li:focus-within {
		border-color: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__featured-links > li > a:hover,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__featured-links > li > a:focus-visible {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation
	.roosevelt-mega__inner
	.roosevelt-mega__panel-links ul a:hover,
	.roosevelt-header__menu.has-mega-navigation
	.roosevelt-mega__inner
	.roosevelt-mega__panel-links ul a:focus-visible {
		border: 0;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="carreras"] .roosevelt-mega__panel-links > li > a,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="la universidad"] .roosevelt-mega__panel-links > li > a {
		padding: 0.55rem 0;
		color: #eee;
		font-size: 0.87rem;
		font-weight: 450;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="carreras"] .roosevelt-mega__panel-links > li:not(:nth-last-child(-n + 2)),
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="la universidad"] .roosevelt-mega__panel-links > li:not(:nth-last-child(-n + 2)) {
		border-bottom: 1px solid #303030;
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="carreras"] .roosevelt-mega__panel-links > li > a:hover,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="carreras"] .roosevelt-mega__panel-links > li > a:focus-visible,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="la universidad"] .roosevelt-mega__panel-links > li > a:hover,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="la universidad"] .roosevelt-mega__panel-links > li > a:focus-visible {
		color: var(--roosevelt-yellow);
	}
}

@media (max-width: 900px) {

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner {
		grid-template-columns: minmax(0, 1fr);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__notice {
		width: min(100%, 30rem);
	}
}

@media (max-width: 540px) {

	.roosevelt-mega__browse {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.25rem;
	}

	.roosevelt-mega__categories {
		display: flex;
		align-items: center;
		gap: 0.35rem;
		padding: 0 0 0.5rem;
		border-right: 0;
		border-bottom: 1px solid #383838;
		overflow-x: auto;
		scrollbar-width: thin;
	}

	.roosevelt-mega__tabs {
		display: flex;
		width: max-content;
		flex: 0 0 auto;
		gap: 0.35rem;
		padding: 0;
	}

	.roosevelt-mega__tab {
		width: auto;
		min-height: 2.75rem;
		flex: 0 0 auto;
		padding: 0.6rem 0.75rem;
		border: 0;
		border-bottom: 2px solid transparent;
		font-size: 0.88rem;
		white-space: nowrap;
	}

	.roosevelt-header__menu.has-mega-navigation {
		padding: 1rem;
	}

	.roosevelt-mega__tab:hover,
	.roosevelt-mega__tab.is-active {
		border-bottom-color: var(--roosevelt-yellow);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel-links,
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__inner .roosevelt-mega__featured-links {
		grid-template-columns: minmax(0, 1fr);
	}

	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="carreras"] .roosevelt-mega__panel-links > li:not(:last-child),
	.roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category="la universidad"] .roosevelt-mega__panel-links > li:not(:last-child) {
		border-bottom: 1px solid #303030;
	}
}

@media (prefers-reduced-motion: no-preference) {

	.roosevelt-home__hero-slide.is-active .roosevelt-home__hero-copy > :nth-child(2) {
		animation-name: roosevelt-hero-title-in;
	}

	.roosevelt-home__hero-slide.is-active .roosevelt-eyebrow > span[aria-hidden="true"]:first-child {
		animation: roosevelt-hero-accent-in 650ms 200ms both;
		transform-origin: bottom;
	}
}

@keyframes roosevelt-hero-title-in {

	from {
		opacity: 0;
		clip-path: inset(0 0 100% 0);
		transform: translateY(1.5rem);
	}

	to {
		opacity: 1;
		clip-path: inset(0);
		transform: translateY(0);
	}
}

@keyframes roosevelt-hero-accent-in {

	from {
		transform: scaleY(0);
	}

	to {
		transform: scaleY(1);
	}
}

/* Independent institutional licensing page. */

/* stylelint-disable no-descending-specificity */

@media all {

	.roosevelt-licensing-page {
		width: 100%;
		background: #fff;
		color: var(--roosevelt-ink);
		overflow: hidden;
	}
}

@media all {

	.roosevelt-licensing__hero {
		position: relative;
		min-height: clamp(28rem, 44vw, 36rem);
		color: #fff;
		overflow: hidden;
	}

	.roosevelt-licensing__hero-media,
	.roosevelt-licensing__hero-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-licensing__hero-image {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center 48%;
	}

	.roosevelt-licensing__hero-shade {
		background: linear-gradient(90deg, rgba(20, 20, 20, 0.88) 0%, rgba(20, 20, 20, 0.66) 55%, rgba(20, 20, 20, 0.25) 100%);
	}

	.roosevelt-licensing__hero-inner {
		position: relative;
		display: flex;
		min-height: clamp(28rem, 44vw, 36rem);
		flex-direction: column;
		justify-content: center;
		padding-block: 3.5rem;
	}

	.roosevelt-licensing__back-link {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		align-self: flex-start;
		margin-bottom: 2.4rem;
		color: rgba(255, 255, 255, 0.88);
		font-size: 0.76rem;
		font-weight: 750;
		text-decoration: none;
		text-transform: uppercase;
		transition: color 180ms ease, transform 180ms ease;
	}

	.roosevelt-licensing__hero-copy {
		max-width: 54rem;
	}

	.roosevelt-licensing__summary {
		position: relative;
		z-index: 1;
		padding-block: 1.5rem;
		background: #f4f3f4;
	}

	.roosevelt-licensing__summary-grid {
		display: grid;
		grid-template-columns: minmax(15rem, 1.05fr) minmax(17rem, 1.35fr) auto;
		align-items: center;
		gap: clamp(1.2rem, 3vw, 3rem);
		padding: clamp(1.2rem, 2.6vw, 2rem);
		border: 1px solid #e5e5e5;
		border-radius: 1rem;
		background: #fff;
		box-shadow: 0 0.8rem 2rem rgba(20, 20, 20, 0.06);
	}

	.roosevelt-licensing__summary-label {
		display: flex;
		align-items: center;
		gap: 1rem;
	}

	.roosevelt-licensing__summary-mark {
		display: grid;
		width: 3.25rem;
		height: 3.25rem;
		flex: 0 0 auto;
		place-items: center;
		border-radius: 50%;
		background: #f5f5f5;
		color: var(--roosevelt-brand);
		font-size: 1.35rem;
		font-weight: 800;
	}

	.roosevelt-licensing__summary-text {
		margin: 0;
		color: #55525a;
		font-size: 0.9rem;
		line-height: 1.55;
	}

	.roosevelt-licensing__layout {
		display: grid;
		grid-template-columns: minmax(13rem, 16rem) minmax(0, 1fr);
		align-items: start;
		gap: clamp(2rem, 5vw, 5.5rem);
		padding-block: clamp(3.5rem, 7vw, 6.5rem);
	}

	.roosevelt-licensing__sidebar {
		position: sticky;
		top: calc(var(--roosevelt-admin-bar-offset, 0px) + 6.2rem);
	}

	.roosevelt-licensing__sidebar-card {
		padding: 1.35rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.85rem;
		background: #fff;
		box-shadow: 0 0.8rem 2rem rgba(20, 20, 20, 0.05);
	}

	.roosevelt-licensing__sidebar-eyebrow {
		margin: 0 0 1rem;
		color: var(--roosevelt-brand);
		font-size: 0.68rem;
		font-weight: 850;
	}

	.roosevelt-licensing__toc {
		display: grid;
		gap: 0.25rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-licensing__sidebar-link,
	.roosevelt-licensing__text-link {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		color: var(--roosevelt-brand);
		font-size: 0.78rem;
		font-weight: 800;
		text-decoration: none;
	}

	.roosevelt-licensing__sidebar-link {
		margin-top: 1.1rem;
	}

	.roosevelt-licensing__content {
		min-width: 0;
	}

	.roosevelt-licensing__intro {
		margin: 0 0 3rem;
		padding-left: 1.2rem;
		border-left: 3px solid var(--roosevelt-brand);
		color: #29262b;
		font-size: clamp(1.15rem, 2vw, 1.5rem);
		font-weight: 550;
		line-height: 1.55;
	}

	.roosevelt-licensing__feature-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
		margin-top: 1.7rem;
	}

	.roosevelt-licensing__feature {
		padding: 1.35rem;
		border: 1px solid #ebe7ea;
		border-radius: 0.8rem;
		background: #faf9fa;
	}

	.roosevelt-licensing__resolution-card {
		display: grid;
		grid-template-columns: minmax(7rem, 0.32fr) minmax(0, 1fr);
		gap: 1.5rem;
		margin: 1.65rem 0;
		padding: clamp(1.3rem, 3vw, 2rem);
		border: 1px solid #e5e5e5;
		border-radius: 0.9rem;
		background: linear-gradient(125deg, #f5f5f5, #fff 75%);
	}

	.roosevelt-licensing__resolution-period {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 1rem;
		border-radius: 0.75rem;
		background: var(--roosevelt-brand);
		color: #fff;
		text-align: center;
	}

	.roosevelt-licensing__resolution-copy {
		align-self: center;
	}

	.roosevelt-licensing__note {
		padding: 1rem 1.15rem;
		border-left: 3px solid var(--roosevelt-brand);
		border-radius: 0 0.5rem 0.5rem 0;
		background: #f5f5f5;
		color: var(--roosevelt-ink) !important;
		font-size: 0.83rem !important;
	}

	.roosevelt-licensing__text-link {
		margin-top: 0.35rem;
	}

	.roosevelt-licensing__source-links {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.8rem;
		margin-top: 1.5rem;
	}

	.roosevelt-licensing__cta {
		padding-block: clamp(2.5rem, 5vw, 4rem);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-licensing__cta-inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
	}

	.roosevelt-licensing__hero-copy h1 {
		max-width: 52rem;
		margin: 0 0 1.2rem;
		font-size: clamp(2.4rem, 5vw, 4.7rem);
		font-weight: 750;
		line-height: 1.04;
	}

	.roosevelt-licensing__summary-label p,
	.roosevelt-licensing__resolution-copy > span {
		margin: 0 0 0.28rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.68rem;
		font-weight: 800;
	}

	.roosevelt-licensing__summary-label strong {
		display: block;
		font-size: 1rem;
		line-height: 1.35;
	}

	.roosevelt-licensing__toc a {
		display: grid;
		grid-template-columns: 1.8rem minmax(0, 1fr);
		align-items: start;
		gap: 0.4rem;
		padding: 0.7rem 0.2rem;
		border-bottom: 1px solid #f0edf0;
		color: #45414a;
		font-size: 0.78rem;
		font-weight: 650;
		line-height: 1.4;
		text-decoration: none;
		transition: color 160ms ease, padding 160ms ease;
	}

	.roosevelt-licensing__section h2 {
		max-width: 46rem;
		margin: 0 0 1rem;
		color: var(--roosevelt-ink);
		font-size: clamp(1.8rem, 3vw, 2.6rem);
		font-weight: 740;
		line-height: 1.15;
	}

	.roosevelt-licensing__feature > span {
		display: inline-grid;
		width: 2rem;
		height: 2rem;
		place-items: center;
		border-radius: 0.55rem;
		background: #f5f5f5;
		color: var(--roosevelt-brand);
		font-size: 0.68rem;
		font-weight: 850;
	}

	.roosevelt-licensing__feature h3 {
		margin: 0.85rem 0 0.35rem;
		font-size: 1.05rem;
		font-weight: 750;
	}

	.roosevelt-licensing__feature p {
		margin: 0;
		color: #625e66;
		font-size: 0.85rem;
		line-height: 1.65;
	}

	.roosevelt-licensing__resolution-period strong {
		font-size: clamp(2.8rem, 5vw, 4rem);
		font-weight: 800;
		line-height: 1;
	}

	.roosevelt-licensing__resolution-period span {
		margin-top: 0.3rem;
		font-size: 0.72rem;
		font-weight: 750;
		text-transform: uppercase;
	}

	.roosevelt-licensing__resolution-copy > span {
		display: block;
		margin-bottom: 0.45rem;
		color: var(--roosevelt-brand);
	}

	.roosevelt-licensing__resolution-copy > strong {
		display: block;
		font-size: 1.05rem;
		line-height: 1.4;
	}

	.roosevelt-licensing__resolution-copy p {
		margin: 0.55rem 0 0.8rem;
		color: #625e66;
		font-size: 0.87rem;
		line-height: 1.6;
	}

	.roosevelt-licensing__resolution-copy a {
		display: inline-flex;
		gap: 0.45rem;
		color: var(--roosevelt-brand);
		font-size: 0.79rem;
		font-weight: 800;
		text-decoration: none;
	}

	.roosevelt-licensing__note strong {
		margin-right: 0.25rem;
		color: #141414;
	}

	.roosevelt-licensing__source-links a {
		position: relative;
		display: flex;
		min-height: 8.5rem;
		flex-direction: column;
		justify-content: space-between;
		gap: 1rem;
		padding: 1.15rem;
		border: 1px solid #e5e5e5;
		border-radius: 0.75rem;
		background: #fff;
		color: var(--roosevelt-ink);
		text-decoration: none;
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.roosevelt-licensing__cta-inner h2 {
		margin: 0.7rem 0 0.45rem;
		font-size: clamp(1.7rem, 3vw, 2.5rem);
		font-weight: 750;
		line-height: 1.15;
	}

	.roosevelt-licensing__toc a span {
		color: var(--roosevelt-color-muted);
		font-size: 0.7rem;
		font-weight: 800;
	}

	.roosevelt-licensing__source-links a strong {
		max-width: 13rem;
		font-size: 0.9rem;
		line-height: 1.4;
	}

	.roosevelt-licensing__back-link:hover,
	.roosevelt-licensing__back-link:focus-visible {
		color: #fff;
		transform: translateX(-0.2rem);
	}

	.roosevelt-licensing__summary-grid .roosevelt-button {
		min-height: 3.2rem;
		justify-content: center;
		white-space: nowrap;
	}

	.roosevelt-licensing__sidebar-link:hover,
	.roosevelt-licensing__sidebar-link:focus-visible,
	.roosevelt-licensing__text-link:hover,
	.roosevelt-licensing__text-link:focus-visible {
		color: var(--roosevelt-brand-dark);
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}

	.roosevelt-licensing__section + .roosevelt-licensing__section {
		margin-top: clamp(3.2rem, 6vw, 5rem);
		padding-top: clamp(2.5rem, 4.5vw, 4rem);
		border-top: 1px solid #e8e5e8;
	}

	.roosevelt-licensing__section > .roosevelt-label {
		margin: 0 0 0.7rem;
		color: var(--roosevelt-brand);
		font-size: 0.69rem;
		font-weight: 850;
	}

	.roosevelt-licensing__source-links .roosevelt-licensing__source-arrow {
		position: absolute;
		right: 1rem;
		bottom: 1rem;
		color: var(--roosevelt-brand);
		font-size: 1rem;
	}

	.roosevelt-licensing__cta-inner .roosevelt-button--light {
		flex: 0 0 auto;
		background: #fff;
		color: var(--roosevelt-brand-dark);
		transition: background-color 180ms ease, color 180ms ease, transform 180ms ease;
	}

	.roosevelt-licensing__hero-copy > p:last-child {
		max-width: 44rem;
		margin: 0;
		color: rgba(255, 255, 255, 0.9);
		font-size: clamp(1rem, 1.5vw, 1.2rem);
		line-height: 1.6;
	}

	.roosevelt-licensing__toc a:hover,
	.roosevelt-licensing__toc a:focus-visible {
		padding-left: 0.4rem;
		color: var(--roosevelt-brand);
	}

	.roosevelt-licensing__section > p:not(.roosevelt-label) {
		max-width: 49rem;
		margin: 0 0 1rem;
		color: #5e5a62;
		font-size: 0.98rem;
		line-height: 1.8;
	}

	.roosevelt-licensing__source-links a:hover,
	.roosevelt-licensing__source-links a:focus-visible {
		border-color: #e5e5e5;
		box-shadow: 0 0.8rem 1.8rem rgba(20, 20, 20, 0.09);
		transform: translateY(-0.15rem);
	}

	.roosevelt-licensing__source-links a > span:first-child {
		color: var(--roosevelt-brand);
		font-size: 0.64rem;
		font-weight: 850;
	}

	.roosevelt-licensing__cta-inner > div > p:last-child {
		margin: 0;
		color: rgba(255, 255, 255, 0.82);
	}

	.roosevelt-licensing__cta-inner .roosevelt-button--light:hover,
	.roosevelt-licensing__cta-inner .roosevelt-button--light:focus-visible {
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
		transform: translateY(-0.12rem);
	}
}

@media (max-width: 1000px) {

	.roosevelt-licensing__summary-grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
	}

	.roosevelt-licensing__source-links {
		grid-template-columns: 1fr;
	}

	.roosevelt-licensing__source-links a {
		min-height: 6rem;
	}

	.roosevelt-licensing__summary-grid .roosevelt-button {
		grid-column: 2;
		justify-self: start;
	}
}

@media (max-width: 760px) {

	.roosevelt-licensing__hero,
	.roosevelt-licensing__hero-inner {
		min-height: 29rem;
	}

	.roosevelt-licensing__hero-inner {
		padding-block: 2.5rem;
	}

	.roosevelt-licensing__back-link {
		margin-bottom: 2rem;
	}

	.roosevelt-licensing__summary-grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.roosevelt-licensing__layout {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.roosevelt-licensing__sidebar {
		position: static;
	}

	.roosevelt-licensing__sidebar-card {
		padding: 1rem;
	}

	.roosevelt-licensing__toc {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 0.75rem;
	}

	.roosevelt-licensing__feature-grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-licensing__resolution-card {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.roosevelt-licensing__resolution-period {
		min-height: 7rem;
	}

	.roosevelt-licensing__cta-inner {
		align-items: flex-start;
		flex-direction: column;
	}

	.roosevelt-licensing__summary-grid .roosevelt-button {
		grid-column: auto;
		width: 100%;
	}
}

@media (max-width: 440px) {

	.roosevelt-licensing__toc {
		grid-template-columns: 1fr;
	}

	.roosevelt-licensing__hero-copy h1 {
		font-size: clamp(2.15rem, 11vw, 2.75rem);
	}
}

/* Keep the alliance carousel on complete cards at every viewport size. */
@media all {

	.roosevelt-alliances__track > .roosevelt-alliances__logo {
		flex-basis: calc((100cqi - 3rem) / 4);
	}
}

@container (max-width: 60rem) {

	.roosevelt-alliances__logo {
		flex-basis: calc((100cqi - 2rem) / 3);
	}
}

@container (max-width: 40rem) {

	.roosevelt-alliances__logo {
		flex-basis: calc((100cqi - 1rem) / 2);
	}
}

@container (max-width: 25rem) {

	.roosevelt-alliances__logo {
		flex-basis: 100cqi;
	}
}

/* stylelint-enable no-descending-specificity */

/* Roosevelt Market: campaign hero, discovery sections, and responsive
shopping layout. */
@media all {

	.roosevelt-store-page--archive .roosevelt-market-hero {
		min-height: clamp(31rem, 43vw, 42rem);
		background: var(--roosevelt-brand-dark);
		isolation: isolate;
	}

	.roosevelt-store-page--archive .roosevelt-market-hero--category {
		width: 100%;
		min-width: 0;
		min-height: clamp(19rem, 36vh, 27rem);
		margin: 0;
		background: var(--roosevelt-brand-dark);
	}
}

@media all {

	.roosevelt-market-hero--category .roosevelt-market-hero__campus-background {
		position: absolute;
		z-index: 0;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center 58%;
	}

	.roosevelt-market-hero--category .roosevelt-market-hero__video-shade {
		z-index: 1;
		background: linear-gradient(90deg, rgb(146 0 77 / 94%) 0%, rgb(146 0 77 / 86%) 55%, rgb(146 0 77 / 72%) 100%);
	}

	.roosevelt-market-hero--category .roosevelt-market-hero__slides {
		z-index: 2;
		min-width: 0;
	}

	.roosevelt-market-hero--category .roosevelt-market-hero__slide {
		box-sizing: border-box;
		width: 100%;
		min-width: 0;
		grid-template-columns: minmax(0, 1fr);
		min-height: clamp(19rem, 36vh, 27rem);
		padding-block: clamp(1.5rem, 3vh, 2.5rem);
	}

	.roosevelt-market-hero--category .roosevelt-market-hero__slide::before,
	.roosevelt-market-hero--category .roosevelt-market-hero__slide::after {
		display: none;
	}
}

@media all {

	.roosevelt-market-hero__video,
	.roosevelt-market-hero__video-shade {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
	}

	.roosevelt-market-hero__video {
		z-index: -2;
		object-fit: cover;
		object-position: center 44%;
	}

	.roosevelt-market-hero__video-shade {
		z-index: -1;
		background: linear-gradient(90deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.84) 44%, rgba(0, 0, 0, 0.35) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.34), transparent 58%);
		pointer-events: none;
	}

	.roosevelt-market-hero__slides {
		position: relative;
		z-index: 1;
	}

	.roosevelt-market-hero__slide {
		grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
		gap: clamp(1.5rem, 4vw, 4.5rem);
		min-height: clamp(31rem, 43vw, 42rem);
		padding-inline: max(calc((100vw - var(--roosevelt-wide-width)) / 2), 5.25vw);
		background: transparent !important;
		color: #fff !important;
	}
}

@media all {

	.roosevelt-market-hero--category .roosevelt-market-hero__copy {
		min-width: 0;
	}
}

@media all {

	.roosevelt-market-hero__visual {
		min-height: clamp(20rem, 33vw, 31rem);
	}

	.roosevelt-market-hero__halo {
		width: min(34vw, 31rem);
		border-color: rgb(255 255 255 / 29%);
		background: radial-gradient(circle, rgb(255 255 255 / 16%), rgb(255 255 255 / 4%) 60%, transparent 72%);
	}

	.roosevelt-market-hero__controls {
		bottom: 1.75rem;
	}

	.roosevelt-market-hero .roosevelt-market-hero__title {
		max-width: 13ch;
		font-size: clamp(2.45rem, 4.3vw, 4.5rem);
		line-height: 1.02;
		text-wrap: balance;
	}

	.roosevelt-market-hero__visual img {
		width: min(100%, 34rem);
		max-height: min(34rem, 39vw);
		filter: drop-shadow(0 1.8rem 2rem rgb(0 0 0 / 34%));
	}

	.roosevelt-market-hero__eyebrow > span {
		background: var(--roosevelt-yellow) !important;
	}

	.roosevelt-market-hero__copy > p:not(.roosevelt-market-hero__eyebrow) {
		max-width: 32rem;
	}
}

@media (min-width: 761px) {

	.roosevelt-store-page--archive .roosevelt-market-hero:not(.roosevelt-market-hero--category) {
		min-height: min(clamp(31rem, 43vw, 42rem), 640px);
		max-height: 640px;
	}

	.roosevelt-store-page--archive .roosevelt-market-hero:not(.roosevelt-market-hero--category) .roosevelt-market-hero__slide {
		min-height: min(clamp(31rem, 43vw, 42rem), 640px);
		max-height: 640px;
		padding-block: clamp(1.5rem, 3vw, 2rem) 4rem;
	}
}

@media all {

	.roosevelt-market-benefits {
		display: block;
		width: 100%;
		min-width: 0;
		grid-template-columns: none;
		gap: 0;
		margin: 0;
		padding-block: clamp(2.25rem, 4vw, 3.75rem);
		background: var(--roosevelt-brand);
	}

	.roosevelt-market-benefits__inner {
		display: grid;
		width: min(calc(100% - 3rem), var(--roosevelt-wide-width));
		grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.7fr);
		align-items: center;
		gap: clamp(1.5rem, 4vw, 4rem);
		margin-inline: auto;
	}

	.roosevelt-market-benefits__intro {
		max-width: 48rem;
		min-width: 0;
		margin: 0;
	}

	.roosevelt-market-benefits__eyebrow {
		margin: 0 0 0.65rem;
		font-size: 0.74rem;
		font-weight: 800;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-market-benefits__grid {
		display: grid;
		min-width: 0;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-market-benefits__icon {
		display: grid;
		flex: 0 0 3.25rem;
		width: 3.25rem;
		height: 3.25rem;
		place-items: center;
		border-radius: 1rem;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-brand);
	}

	.roosevelt-market-featured__copy > p {
		margin: 0 0 0.65rem;
		color: var(--roosevelt-brand);
		font-size: 0.74rem;
		font-weight: 800;
	}

	.roosevelt-market-benefits__intro h2,
	.roosevelt-market-section-heading h2 {
		margin: 0;
		color: var(--roosevelt-ink);
		font-size: clamp(1.8rem, 3vw, 2.65rem);
		font-weight: 750;
		line-height: 1.1;
		text-wrap: balance;
	}

	.roosevelt-market-benefits__intro h2 {
		color: #fff;
	}

	.roosevelt-market-benefits__grid article {
		display: flex;
		min-width: 0;
		min-height: 15rem;
		flex-direction: column;
		align-items: flex-start;
		gap: 1.25rem;
		padding: 1.5rem;
		border: 1px solid rgb(255 255 255 / 22%);
		border-radius: 1rem;
		background: rgb(255 255 255 / 7%);
		transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
	}

	.roosevelt-market-benefits__icon svg {
		width: 1.55rem;
		height: 1.55rem;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.7;
	}

	.roosevelt-market-benefits__grid h3 {
		margin: 0.15rem 0 0.45rem;
		color: #fff;
		font-size: 1.05rem;
		font-weight: 750;
		line-height: 1.25;
	}

	.roosevelt-market-benefits__grid p {
		margin: 0;
		color: rgb(255 255 255 / 78%);
		font-size: 0.9rem;
		line-height: 1.55;
	}

	.roosevelt-market-section-heading > div > p {
		margin: 0 0 0.65rem;
		color: var(--roosevelt-brand);
		font-size: 0.74rem;
		font-weight: 800;
	}

	.roosevelt-market-benefits__intro > p:last-child {
		max-width: 42rem;
		margin: 0.8rem 0 0;
		color: rgb(255 255 255 / 82%);
		font-size: 1rem;
		line-height: 1.65;
	}

	.roosevelt-market-benefits__grid article:hover {
		border-color: rgb(255 220 0 / 70%);
		background: rgb(255 255 255 / 10%);
		transform: translateY(-0.2rem);
	}
}

@media all {

	.roosevelt-market-category-promos,
	.roosevelt-market-featured {
		width: min(calc(100% - 3rem), var(--roosevelt-wide-width));
		margin-inline: auto;
	}

	.roosevelt-market-category-promos {
		margin-block-end: clamp(3.5rem, 6vw, 5.5rem);
	}
}

@media all {

	.roosevelt-market-section-heading {
		display: flex;
		align-items: end;
		justify-content: space-between;
		gap: 1.5rem;
		margin-block-end: 1.4rem;
	}

	.roosevelt-market-section-heading > a {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		padding-block: 0.5rem;
		color: var(--roosevelt-brand);
		font-size: 0.88rem;
		font-weight: 750;
		text-decoration: none;
	}
}

@media all {

	.roosevelt-market-category-promos__grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}
}

@media all {

	.roosevelt-market-category-tile {
		position: relative;
		display: flex;
		min-height: 17rem;
		align-items: center;
		padding: clamp(1.25rem, 2.5vw, 2rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: #f5f1f2;
		color: var(--roosevelt-ink);
		isolation: isolate;
		overflow: hidden;
		text-decoration: none;
		transition: transform 180ms ease, box-shadow 180ms ease;
	}
}

@media all {

	.roosevelt-market-category-tile--2 {
		background: #f5f4ee;
	}
}

@media all {

	.roosevelt-market-category-tile--3 {
		background: #f6ebf1;
	}
}

@media all {

	.roosevelt-market-category-tile__copy {
		position: relative;
		z-index: 1;
		display: flex;
		width: 62%;
		flex-direction: column;
		align-items: flex-start;
	}

	.roosevelt-market-category-tile__link {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		margin-block-start: 1.2rem;
		color: var(--roosevelt-brand);
		font-size: 0.79rem;
		font-weight: 800;
	}

	.roosevelt-market-category-tile__copy > strong {
		font-size: clamp(1.25rem, 1.8vw, 1.65rem);
		font-weight: 800;
		line-height: 1.1;
	}

	.roosevelt-market-category-tile > img {
		position: absolute;
		z-index: 0;
		right: -3%;
		bottom: -8%;
		width: 54%;
		height: 96%;
		margin: 0;
		object-fit: contain;
		filter: drop-shadow(0 1rem 1rem rgb(20 20 20 / 14%));
		transition: transform 220ms ease;
	}

	.roosevelt-market-category-tile:hover,
	.roosevelt-market-category-tile:focus-visible {
		box-shadow: 0 1rem 2.4rem rgb(20 20 20 / 10%);
		transform: translateY(-0.2rem);
	}

	.roosevelt-market-category-tile__copy > span:not(.roosevelt-market-category-tile__link) {
		margin-block-start: 0.65rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.87rem;
		line-height: 1.5;
	}

	.roosevelt-market-category-tile:hover > img,
	.roosevelt-market-category-tile:focus-visible > img {
		transform: scale(1.045) translateY(-0.15rem);
	}
}

@media all {

	.roosevelt-market-featured {
		display: grid;
		grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
		align-items: center;
		gap: clamp(2rem, 5vw, 5rem);
		margin-block-end: clamp(4rem, 7vw, 6.5rem);
		padding: clamp(1.25rem, 3vw, 2.5rem);
		border-radius: 1.25rem;
		background: #f8f6f7;
	}

	.roosevelt-market-featured__image {
		display: grid;
		min-height: clamp(18rem, 33vw, 27rem);
		place-items: center;
		border-radius: 0.9rem;
		background: radial-gradient(circle at 50% 45%, #fff 0, #f0e8ed 72%);
		overflow: hidden;
	}

	.roosevelt-market-featured__description {
		max-width: 38rem;
		margin-block-start: 1rem;
		color: var(--roosevelt-muted-ink);
		font-size: 1rem;
	}

	.roosevelt-market-featured__footer {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 1rem;
		margin-block-start: 1.6rem;
	}

	.roosevelt-market-featured__image img {
		width: min(100%, 27rem);
		max-height: 26rem;
		margin: 0;
		object-fit: contain;
		filter: drop-shadow(0 1.25rem 1.5rem rgb(20 20 20 / 16%));
	}

	.roosevelt-market-featured__copy > span {
		color: var(--roosevelt-muted-ink);
		font-size: 0.82rem;
		font-weight: 650;
	}

	.roosevelt-market-featured__copy h2 {
		max-width: 17ch;
		margin: 0.5rem 0 0;
		color: var(--roosevelt-ink);
		font-size: clamp(2rem, 3.8vw, 3.25rem);
		font-weight: 800;
		line-height: 1.05;
		text-wrap: balance;
	}

	.roosevelt-market-featured__description p {
		margin: 0;
	}

	.roosevelt-market-featured__footer > strong,
	.roosevelt-market-featured__footer .price {
		color: var(--roosevelt-brand);
		font-size: 1.35rem;
		font-weight: 800;
	}

	.roosevelt-market-featured__footer .roosevelt-button {
		display: inline-flex;
		align-items: center;
		gap: 0.65rem;
		min-height: 3rem;
		padding: 0.75rem 1.1rem;
		border-radius: 0.35rem;
		background: var(--roosevelt-brand);
		color: #fff;
		font-size: 0.8rem;
		font-weight: 800;
		text-decoration: none;
	}
}

@media all {

	.roosevelt-market-catalog-heading {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.55fr);
		align-items: end;
		gap: 2rem;
		margin-block-end: 1.25rem;
	}

	.roosevelt-market-catalog-heading h2 {
		max-width: 24ch;
		margin-block: 0.4rem 0;
		font-size: clamp(2rem, 3.5vw, 3rem);
		line-height: 1.08;
		text-wrap: balance;
	}

	.roosevelt-market-catalog-heading > div > p:last-child {
		max-width: 42rem;
		margin-block: 0.75rem 0;
	}
}

/* stylelint-disable no-descending-specificity --
 * Scoped store catalog and cart states. */
@media all {

	.roosevelt-store-page--archive .roosevelt-store__categories {
		flex: 1 1 auto;
		min-width: 0;
		margin: 0;
		padding: 0;
		border: 0;
	}
}

@media all {

	.roosevelt-market-catalog-controls {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: clamp(1rem, 2.5vw, 2rem);
		min-width: 0;
		margin-block: 1rem 0.55rem;
		border-block-end: 1px solid var(--roosevelt-color-border);
	}
}

@media all {

	.roosevelt-store-page--archive .roosevelt-store__categories ul {
		gap: clamp(1rem, 2.5vw, 2.25rem);
	}

	.roosevelt-store-page--archive .roosevelt-store__categories button {
		position: relative;
		min-height: 3rem;
		padding: 0.7rem 0.1rem;
		border: 0;
		background: transparent;
		color: var(--roosevelt-ink);
		cursor: pointer;
		font: inherit;
		font-size: 0.78rem;
		font-weight: 750;
		text-transform: uppercase;
		white-space: nowrap;
	}

	.roosevelt-store-page--archive .roosevelt-store__categories button::after {
		position: absolute;
		right: 0;
		bottom: -1px;
		left: 0;
		height: 3px;
		background: var(--roosevelt-brand);
		content: "";
		transform: scaleX(0);
		transform-origin: left;
		transition: transform 180ms ease;
	}

	.roosevelt-store-page--archive .roosevelt-store__categories button:hover,
	.roosevelt-store-page--archive .roosevelt-store__categories button:focus-visible,
	.roosevelt-store-page--archive .roosevelt-store__categories button.is-active {
		color: var(--roosevelt-brand);
	}

	.roosevelt-store-page--archive .roosevelt-store__categories button:hover::after,
	.roosevelt-store-page--archive .roosevelt-store__categories button:focus-visible::after,
	.roosevelt-store-page--archive .roosevelt-store__categories button.is-active::after {
		transform: scaleX(1);
	}
}

@media all {

	.roosevelt-market-sort {
		flex: 0 0 auto;
	}

	.roosevelt-market-sort .woocommerce-ordering {
		float: none;
		margin: 0;
	}

	.roosevelt-market-sort .woocommerce-ordering select {
		min-width: 13.5rem;
		min-height: 2.9rem;
		padding: 0.65rem 2.8rem 0.65rem 1rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.65rem;
		appearance: none;
		background-color: #fff;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m3 6 5 5 5-5' stroke='%2392004d' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
		background-position: right 0.9rem center;
		background-repeat: no-repeat;
		color: var(--roosevelt-ink);
		cursor: pointer;
		font: inherit;
		font-size: 0.82rem;
	}

	.roosevelt-market-sort .woocommerce-ordering select:focus-visible,
	.roosevelt-store-page--archive .roosevelt-store__categories button:focus-visible {
		outline: 3px solid var(--roosevelt-yellow);
		outline-offset: 3px;
	}
}

@media all {

	.roosevelt-store-page--archive .roosevelt-store__toolbar {
		min-height: 0;
		margin: 0;
		padding: 10px 0 14px;
		justify-content: start;
	}

	.roosevelt-store-page--archive .woocommerce-result-count {
		margin: 0;
		color: var(--roosevelt-muted-ink);
	}
}

@media all {

	.roosevelt-market-results {
		min-width: 0;
	}

	.roosevelt-market-results.is-loading {
		opacity: 0.55;
		pointer-events: none;
		transition: opacity 140ms ease;
	}
}

@media all {

	.roosevelt-market-filter-error {
		margin: 0 0 1rem;
		color: var(--roosevelt-brand);
		font-size: 0.88rem;
	}
}

@media all {

	.roosevelt-market-empty {
		grid-column: 1 / -1;
		margin: 0;
		padding: clamp(2rem, 5vw, 4rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: #faf8f7;
		color: var(--roosevelt-muted-ink);
		text-align: center;
	}
}

@media all {

	.roosevelt-store-page--archive [data-roosevelt-market-pagination][hidden] {
		display: none;
	}
}

@media all {

	.roosevelt-market-side-cart__trigger {
		position: fixed;
		z-index: 960;
		right: calc(1.5rem + env(safe-area-inset-right, 0px));
		margin-inline-end: var(--roosevelt-market-side-cart-scrollbar, 0);
		bottom: calc(1.5rem + env(safe-area-inset-bottom, 0px));
		display: grid;
		width: 4.1rem;
		height: 4.1rem;
		place-items: center;
		border: 2px solid #fff;
		border-radius: 50%;
		background: var(--roosevelt-brand);
		box-shadow: 0 0.7rem 1.4rem rgb(0 0 0 / 20%);
		color: #fff;
		cursor: pointer;
		transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.roosevelt-market-side-cart__count {
		position: absolute;
		top: -0.15rem;
		right: -0.2rem;
		display: grid;
		min-width: 1.45rem;
		height: 1.45rem;
		place-items: center;
		padding-inline: 0.25rem;
		border: 2px solid #fff;
		border-radius: 999px;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
		font-size: 0.68rem;
		font-weight: 800;
	}

	.roosevelt-market-side-cart__overlay {
		--roosevelt-market-side-cart-transition-duration: 440ms;
		position: fixed;
		z-index: 10000;
		inset: 0;
		display: flex;
		justify-content: flex-end;
		background: rgb(12 9 11 / 0%);
		overflow: hidden;
		overflow: clip;
		overscroll-behavior: contain;
		transition:
			background-color var(--roosevelt-market-side-cart-transition-duration)
			cubic-bezier(0.42, 0, 0.58, 1);
	}

	.roosevelt-market-side-cart__backdrop {
		position: absolute;
		inset: 0;
		padding: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		cursor: default;
	}

	.roosevelt-market-side-cart__panel {
		position: relative;
		display: flex;
		width: min(100%, 31rem);
		height: 100%;
		height: 100dvh;
		flex-direction: column;
		background: #fff;
		box-shadow: -1rem 0 3rem rgb(0 0 0 / 18%);
		transform: translate3d(100%, 0, 0);
		will-change: transform;
		transition:
			transform var(--roosevelt-market-side-cart-transition-duration)
			cubic-bezier(0.42, 0, 0.58, 1);
	}

	.roosevelt-market-side-cart__header {
		display: flex;
		min-height: 4.5rem;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		padding: 0.8rem 1.4rem;
		border-block-end: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-market-side-cart__close,
	.roosevelt-market-side-cart__remove {
		display: grid;
		width: 2.5rem;
		height: 2.5rem;
		flex: 0 0 2.5rem;
		place-items: center;
		align-self: center;
		margin: 0;
		padding: 0;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 50%;
		background: #fff;
		color: var(--roosevelt-ink);
		cursor: pointer;
		line-height: 1;
		text-align: center;
		-webkit-appearance: none;
		appearance: none;
		transition:
			background-color 180ms ease,
			border-color 180ms ease,
			color 180ms ease,
			transform 180ms ease;
	}

	.roosevelt-market-side-cart__notice {
		margin: 0;
		padding: 0.75rem 1.4rem;
		background: #fff5f0;
		color: var(--roosevelt-brand);
		font-size: 0.84rem;
	}

	.roosevelt-market-side-cart__content {
		min-height: 0;
		flex: 1 1 auto;
		padding: 0 1.35rem;
		overflow-y: auto;
		overscroll-behavior: contain;
	}

	.roosevelt-market-side-cart__items {
		display: grid;
		gap: 0;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-market-side-cart__item {
		display: grid;
		grid-template-columns: 5.4rem minmax(0, 1fr);
		gap: 1rem;
		padding: 1.2rem 0;
		border-block-end: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-market-side-cart__image {
		display: grid;
		width: 5.4rem;
		height: 6rem;
		place-items: center;
		border-radius: 0.65rem;
		background: #f5f3f1;
	}

	.roosevelt-market-side-cart__item-main {
		display: flex;
		min-width: 0;
		flex-direction: column;
		justify-content: space-between;
		gap: 1rem;
	}

	.roosevelt-market-side-cart__item-heading,
	.roosevelt-market-side-cart__item-footer {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 0.75rem;
	}

	.roosevelt-market-side-cart__name {
		color: var(--roosevelt-ink);
		font-size: 0.94rem;
		font-weight: 750;
		text-decoration: none;
	}

	.roosevelt-market-side-cart__meta {
		display: block;
		margin-block-start: 0.35rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.75rem;
	}

	.roosevelt-market-side-cart__remove {
		width: 2rem;
		height: 2rem;
		flex: 0 0 auto;
		border: 0;
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-market-side-cart__item-footer {
		align-items: center;
	}

	.roosevelt-market-side-cart__quantity {
		display: inline-flex;
		min-height: 2.3rem;
		align-items: center;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 999px;
	}

	.roosevelt-market-side-cart__line-total {
		color: var(--roosevelt-ink);
		font-size: 0.85rem;
	}

	.roosevelt-market-side-cart__footer {
		flex: 0 0 auto;
		padding: 1.15rem 1.4rem calc(1.15rem + env(safe-area-inset-bottom, 0px));
		border-block-start: 1px solid var(--roosevelt-color-border);
		background: #fff;
	}

	.roosevelt-market-side-cart__subtotal {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-block-end: 1rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.9rem;
	}

	.roosevelt-market-side-cart__actions {
		display: grid;
		grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
		align-items: center;
		gap: 0.8rem;
	}

	.roosevelt-market-side-cart__continue,
	.roosevelt-market-side-cart__checkout {
		display: inline-flex;
		min-height: 3.15rem;
		align-items: center;
		justify-content: center;
		gap: 0.55rem;
		padding: 0.75rem 1rem;
		border-radius: 0.55rem;
		font-size: 0.82rem;
		font-weight: 750;
		text-align: center;
		text-decoration: none;
	}

	.roosevelt-market-side-cart__continue {
		border: 1px solid var(--roosevelt-color-border);
		color: var(--roosevelt-ink);
	}

	.roosevelt-market-side-cart__checkout {
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-market-side-cart__empty {
		display: grid;
		min-height: 100%;
		align-content: center;
		justify-items: center;
		padding: 2rem 1rem;
		text-align: center;
	}

	.roosevelt-market-side-cart__trigger > svg,
	.roosevelt-market-side-cart__header svg,
	.roosevelt-market-side-cart__empty svg {
		width: 1.55rem;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.7;
	}

	.roosevelt-market-side-cart__header > div {
		display: flex;
		align-items: center;
		gap: 0.8rem;
	}

	.roosevelt-market-side-cart__header h2 {
		margin: 0;
		font-size: 1.1rem;
		font-weight: 800;
	}

	.roosevelt-market-side-cart__close svg {
		display: block;
		width: 1rem;
		height: 1rem;
		margin: 0;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-width: 1.8;
		pointer-events: none;
	}

	.roosevelt-market-side-cart__image img {
		display: block;
		width: 100%;
		height: 100%;
		border-radius: inherit;
		object-fit: contain;
	}

	.roosevelt-market-side-cart__remove svg {
		width: 1.1rem;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.6;
	}

	.roosevelt-market-side-cart__quantity button {
		display: grid;
		width: 2.1rem;
		height: 2.1rem;
		place-items: center;
		border: 0;
		background: transparent;
		color: var(--roosevelt-brand);
		cursor: pointer;
		font-size: 1.1rem;
	}

	.roosevelt-market-side-cart__quantity input {
		width: 2.2rem;
		min-height: 2rem;
		padding: 0;
		border: 0;
		background: transparent;
		color: var(--roosevelt-ink);
		font: inherit;
		font-size: 0.8rem;
		text-align: center;
		appearance: textfield;
	}

	.roosevelt-market-side-cart__subtotal strong {
		color: var(--roosevelt-ink);
		font-size: 1.05rem;
	}

	.roosevelt-market-side-cart__empty > span {
		display: grid;
		width: 4rem;
		height: 4rem;
		place-items: center;
		border-radius: 50%;
		background: #f7f1f4;
		color: var(--roosevelt-brand);
	}

	.roosevelt-market-side-cart__empty svg {
		width: 1.9rem;
	}

	.roosevelt-market-side-cart__empty h3 {
		margin: 1rem 0 0.35rem;
		font-size: 1.2rem;
	}

	.roosevelt-market-side-cart__empty p {
		max-width: 22rem;
		margin: 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.88rem;
		line-height: 1.6;
	}

	.roosevelt-market-side-cart__empty a {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		margin-block-start: 1.3rem;
		color: var(--roosevelt-brand);
		font-size: 0.85rem;
		font-weight: 800;
		text-decoration: none;
	}

	.roosevelt-market-side-cart__header > div > span {
		display: grid;
		width: 2.5rem;
		height: 2.5rem;
		place-items: center;
		border-radius: 50%;
		background: #f7f1f4;
		color: var(--roosevelt-brand);
	}

	.roosevelt-market-side-cart__quantity input::-webkit-inner-spin-button,
	.roosevelt-market-side-cart__quantity input::-webkit-outer-spin-button {
		margin: 0;
		appearance: none;
	}

	.roosevelt-market-side-cart__trigger:hover,
	.roosevelt-market-side-cart__trigger:focus-visible {
		background: var(--roosevelt-brand-dark);
		box-shadow: 0 0.9rem 1.8rem rgb(0 0 0 / 26%);
		transform: translateY(-2px);
	}

	.roosevelt-market-side-cart__trigger:focus-visible,
	.roosevelt-market-side-cart__close:focus-visible,
	.roosevelt-market-side-cart__backdrop:focus-visible,
	.roosevelt-market-side-cart__remove:focus-visible {
		outline: 3px solid var(--roosevelt-yellow);
		outline-offset: 3px;
	}

	.roosevelt-market-side-cart__overlay[hidden] {
		display: none;
	}

	.roosevelt-market-side-cart__overlay.is-open {
		background: rgb(12 9 11 / 54%);
	}

	.roosevelt-market-side-cart__backdrop:hover,
	.roosevelt-market-side-cart__backdrop:focus,
	.roosevelt-market-side-cart__backdrop:active {
		position: absolute;
		inset: 0;
		padding: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		cursor: default;
	}

	.roosevelt-market-side-cart__close:hover,
	.roosevelt-market-side-cart__close:focus,
	.roosevelt-market-side-cart__close:focus-visible {
		border-color: var(--roosevelt-brand);
		background: var(--roosevelt-brand);
		color: #fff;
	}

	.roosevelt-market-side-cart__close:active {
		border-color: var(--roosevelt-brand-dark);
		background: var(--roosevelt-brand-dark);
		color: #fff;
		transform: scale(0.96);
	}

	.roosevelt-market-side-cart__notice[hidden] {
		display: none;
	}

	.roosevelt-market-side-cart__name:hover {
		color: var(--roosevelt-brand);
	}

	.roosevelt-market-side-cart__remove:hover {
		background: #f7f1f4;
		color: var(--roosevelt-brand);
	}

	.roosevelt-market-side-cart__footer[hidden] {
		display: none;
	}

	.roosevelt-market-side-cart__continue:hover {
		border-color: var(--roosevelt-brand);
		color: var(--roosevelt-brand);
	}

	.roosevelt-market-side-cart__checkout:hover,
	.roosevelt-market-side-cart__checkout:focus-visible {
		background: var(--roosevelt-brand-dark);
		color: #fff;
	}

	.roosevelt-market-side-cart__quantity button:focus-visible {
		outline: 3px solid var(--roosevelt-yellow);
		outline-offset: 3px;
	}

	.roosevelt-market-side-cart__overlay.is-open .roosevelt-market-side-cart__panel {
		transform: translate3d(0, 0, 0);
	}
}

@media all {

	body.roosevelt-market-cart-open {
		overscroll-behavior: none;
	}
}

@media all {

	.roosevelt-store-page--archive ul.products li.product a img {
		width: 100%;
		min-height: 15rem;
		background: #f6f4f2;
		object-fit: contain;
	}
}

@media (max-width: 960px) {

	.roosevelt-market-benefits__inner {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.5rem;
	}

	.roosevelt-market-benefits__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.roosevelt-market-category-promos__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-market-featured {
		gap: 2rem;
	}

	.roosevelt-market-benefits__grid article {
		min-height: 0;
	}

	.roosevelt-market-category-tile:last-child {
		grid-column: 1 / -1;
	}
}

@media (max-width: 760px) {

	.roosevelt-market-catalog-controls {
		flex-wrap: wrap;
		gap: 0.4rem 1rem;
		margin-block-start: 0.6rem;
	}

	.roosevelt-market-sort {
		margin-inline-start: auto;
		padding-block: 0.5rem;
	}

	.roosevelt-market-side-cart__trigger {
		right: calc(1rem + env(safe-area-inset-right, 0px));
		bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
		width: 3.7rem;
		height: 3.7rem;
	}

	.roosevelt-market-side-cart__panel {
		width: min(100%, 31rem);
	}

	.roosevelt-market-hero__slide {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.25rem;
		padding: 2.5rem 1.25rem 5rem;
	}

	.roosevelt-market-hero__visual {
		min-height: 14rem;
		max-height: 18rem;
	}

	.roosevelt-market-hero__halo {
		width: min(64vw, 16rem);
	}

	.roosevelt-market-category-promos,
	.roosevelt-market-featured,
	.roosevelt-market-benefits__inner {
		width: calc(100% - 2rem);
	}

	.roosevelt-market-benefits__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.roosevelt-market-category-promos__grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-market-category-tile {
		grid-column: auto;
		min-height: 15rem;
	}

	.roosevelt-market-category-tile__copy {
		width: 64%;
	}

	.roosevelt-market-featured {
		grid-template-columns: 1fr;
		gap: 1.5rem;
		padding: 1rem;
	}

	.roosevelt-market-featured__image {
		min-height: 17rem;
	}

	.roosevelt-market-catalog-heading {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.roosevelt-market-section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.5rem;
	}

	.roosevelt-market-hero .roosevelt-market-hero__title {
		max-width: 14ch;
		font-size: clamp(2.35rem, 9.5vw, 3.8rem);
	}

	.roosevelt-market-hero__visual img {
		width: min(100%, 17rem);
		max-height: 17rem;
	}

	.roosevelt-market-featured__image img {
		max-height: 17rem;
	}

	.roosevelt-store-page--archive .roosevelt-store__categories {
		flex-basis: 100%;
	}

	.roosevelt-market-hero--category .roosevelt-market-hero__slide {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.25rem;
		padding-block: 2rem;
	}

	.roosevelt-market-category-tile:last-child {
		grid-column: auto;
		min-height: 15rem;
	}

	.roosevelt-market-sort .woocommerce-ordering select {
		min-width: min(13.5rem, calc(100vw - 3rem));
	}
}

/* Keep the space between store sections independent of their inner
padding. */
@media all {

	.roosevelt-store-page--archive {
		display: flex;
		min-width: 0;
		flex-direction: column;
		gap: 70px;
		padding-block-end: 70px;
		overflow-x: clip;
	}

	.roosevelt-store-page--archive > .roosevelt-market-hero,
	.roosevelt-store-page--archive > .roosevelt-market-benefits,
	.roosevelt-store-page--archive > .roosevelt-market-category-promos,
	.roosevelt-store-page--archive > .roosevelt-market-featured,
	.roosevelt-store-page--archive > .roosevelt-store__container {
		margin-block: 0;
	}

	.roosevelt-store-page--archive > .roosevelt-store__container {
		padding-block: 0;
	}

	/* The category hero and the catalog share one container and edge. */
	.roosevelt-market-hero--category .roosevelt-market-hero__slides.roosevelt-store__container {
		padding-block: 0;
	}

	.roosevelt-market-hero--category .roosevelt-market-hero__slide {
		padding-inline: 0;
	}

	.roosevelt-market-catalog-controls .roosevelt-market-sort {
		margin-inline-start: auto;
	}
}

/* stylelint-enable no-descending-specificity */
@media (prefers-reduced-motion: reduce) {

	.roosevelt-market-side-cart__overlay,
	.roosevelt-market-side-cart__panel {
		transition: none;
	}

	.roosevelt-market-hero__video {
		display: none;
	}
}
/* stylelint-disable no-descending-specificity -- Scoped components. */
@media all {

	.roosevelt-institutional-page {
		--roosevelt-institutional-gutter: clamp(1.25rem, 4vw, 4rem);
		color: var(--roosevelt-ink);
	}
}

@media all {

	.roosevelt-institutional__hero {
		position: relative;
		min-height: clamp(27rem, 53vw, 40rem);
		isolation: isolate;
		overflow: hidden;
		background: var(--roosevelt-brand-dark);
	}

	.roosevelt-institutional__hero-media,
	.roosevelt-institutional__hero-shade {
		position: absolute;
		inset: 0;
	}

	.roosevelt-institutional__hero-shade {
		z-index: 1;
		background: linear-gradient(90deg, rgba(20, 8, 16, 0.84) 0%, rgba(20, 8, 16, 0.62) 48%, rgba(20, 8, 16, 0.22) 100%), linear-gradient(0deg, rgba(20, 8, 16, 0.42), transparent 46%);
	}

	.roosevelt-institutional__hero-inner {
		position: relative;
		z-index: 2;
		display: flex;
		min-height: inherit;
		flex-direction: column;
		justify-content: space-between;
		padding-block: clamp(1.5rem, 4vw, 3rem) clamp(3.25rem, 8vw, 6.5rem);
	}

	.roosevelt-institutional__hero-media img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}
}

@media all {

	.roosevelt-institutional-page--oficinas-y-unidades .roosevelt-institutional__hero {
		min-height: clamp(28rem, 44vw, 36rem);
	}

	.roosevelt-institutional-page--oficinas-y-unidades .roosevelt-institutional__hero-inner {
		justify-content: center;
		padding-block: 3.5rem;
	}

	.roosevelt-institutional-page--oficinas-y-unidades .roosevelt-institutional__hero-copy {
		margin-top: 0;
	}

	.roosevelt-institutional-page--oficinas-y-unidades .roosevelt-institutional__hero-media img {
		object-position: center 40%;
	}

	.roosevelt-institutional-page--oficinas-y-unidades .roosevelt-institutional__hero-copy h1 {
		max-width: 52rem;
		margin: 0 0 1.2rem;
		font-size: clamp(2.4rem, 5vw, 4.7rem);
		line-height: 1.04;
	}

	.roosevelt-institutional-page--oficinas-y-unidades .roosevelt-institutional__hero-copy > p:last-child {
		max-width: 44rem;
		margin: 0;
		font-size: clamp(1rem, 1.5vw, 1.2rem);
	}
}

@media all {

	.roosevelt-institutional__breadcrumbs {
		display: flex;
		align-items: center;
		gap: 0.75rem;
		color: rgba(255, 255, 255, 0.78);
		font-size: 0.88rem;
	}

	.roosevelt-institutional__hero-copy {
		max-width: 56rem;
		margin-top: clamp(4rem, 10vw, 9rem);
		color: #fff;
	}

	.roosevelt-institutional__body {
		padding-block: clamp(3.5rem, 7vw, 6.5rem);
	}

	.roosevelt-institutional__section-heading {
		max-width: 53rem;
		margin: 0 0 clamp(2rem, 4vw, 3.5rem);
	}

	.roosevelt-institutional__grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-institutional__card,
	.roosevelt-institutional__access-card,
	.roosevelt-institutional__resource-card,
	.roosevelt-institutional__contact-card {
		min-width: 0;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
		box-shadow: 0 0.7rem 2.2rem rgba(20, 20, 20, 0.045);
	}

	.roosevelt-institutional__office-card,
	.roosevelt-institutional__transparency-card,
	.roosevelt-institutional__card {
		position: relative;
		padding: clamp(1.4rem, 2.4vw, 2rem);
	}

	.roosevelt-institutional__card-number {
		display: inline-flex;
		width: 2.65rem;
		height: 2.65rem;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		background: color-mix(in srgb, var(--roosevelt-yellow) 28%, #fff);
		color: var(--roosevelt-color-primary);
		font-size: 0.78rem;
		font-weight: 750;
	}

	.roosevelt-institutional__text-link,
	.roosevelt-institutional__resource-action {
		display: inline-flex;
		align-items: center;
		gap: 0.65rem;
		margin-top: 1.4rem;
		color: var(--roosevelt-color-primary);
		font-size: 0.94rem;
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-institutional__source-note {
		display: flex;
		align-items: flex-start;
		gap: 1rem;
		margin-top: 2rem;
		padding: 1.25rem 1.5rem;
		border: 1px solid var(--roosevelt-color-border);
		border-left: 4px solid var(--roosevelt-yellow);
		border-radius: 0.75rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__source-mark {
		display: grid;
		width: 2rem;
		height: 2rem;
		flex: 0 0 auto;
		place-items: center;
		border-radius: 50%;
		background: var(--roosevelt-yellow);
		font-weight: 800;
	}

	.roosevelt-institutional__resource-groups {
		display: grid;
		gap: 1.2rem;
	}

	.roosevelt-institutional__resource-group {
		display: grid;
		grid-template-columns: minmax(0, 0.8fr) minmax(20rem, 1.2fr);
		align-items: center;
		gap: 2rem;
		padding: clamp(1.4rem, 3vw, 2.4rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
	}

	.roosevelt-institutional__period-links {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.6rem;
	}

	.roosevelt-institutional__document-panel,
	.roosevelt-institutional__manuals {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
		margin-top: 2rem;
		padding: clamp(1.5rem, 4vw, 3rem);
		border-radius: 1rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__subheading {
		margin-bottom: 1.5rem;
	}

	.roosevelt-institutional__contact-grid {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0.8rem;
	}

	.roosevelt-institutional__contact-card {
		padding: 1.15rem;
	}

	.roosevelt-institutional__grid--access {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.roosevelt-institutional__access-card {
		padding: clamp(1.5rem, 2.7vw, 2.25rem);
	}

	.roosevelt-institutional__manuals {
		align-items: flex-start;
	}

	.roosevelt-institutional__manual-links {
		display: grid;
		width: min(100%, 28rem);
		gap: 0.55rem;
	}

	.roosevelt-institutional__call-status {
		display: flex;
		align-items: center;
		gap: 1rem;
		margin-bottom: 2rem;
		padding: 1.2rem 1.5rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.8rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__teacher-call {
		display: grid;
		gap: clamp(2rem, 4vw, 3.5rem);
	}

	.roosevelt-institutional__teacher-schedule {
		display: grid;
		gap: 1rem;
	}

	.roosevelt-institutional__teacher-requirement {
		margin: 0;
		padding: 1.25rem 1.5rem;
		border-left: 0.25rem solid var(--roosevelt-yellow);
		background: var(--roosevelt-color-surface);
		line-height: 1.65;
	}

	.roosevelt-institutional__teacher-resources {
		display: grid;
		gap: 1.5rem;
	}

	.roosevelt-institutional__teacher-apply {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1.5rem;
		padding: clamp(1.5rem, 3vw, 2.5rem);
		border-radius: 1rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__teacher-notice {
		padding: clamp(1.5rem, 4vw, 3rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
	}

	.roosevelt-institutional__teacher-notice-table-wrap {
		overflow-x: auto;
		margin-top: 1.5rem;
	}

	.roosevelt-institutional__timeline {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.8rem;
	}

	.roosevelt-institutional__timeline-item {
		display: flex;
		align-items: flex-start;
		gap: 1rem;
		padding: 1.25rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.8rem;
	}

	.roosevelt-institutional__grid--resources {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-institutional__resource-card {
		display: flex;
		min-height: 15rem;
		flex-direction: column;
		align-items: flex-start;
		padding: clamp(1.5rem, 3vw, 2.25rem);
		color: inherit;
		text-decoration: none;
		transition: border-color var(--roosevelt-transition), transform var(--roosevelt-transition), box-shadow var(--roosevelt-transition);
	}

	.roosevelt-institutional__resource-label {
		color: var(--roosevelt-color-primary);
		font-size: 0.73rem;
		font-weight: 750;
	}

	.roosevelt-institutional__library-note {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		align-items: center;
		gap: clamp(1.5rem, 4vw, 3rem);
		margin-top: 2rem;
		padding: clamp(1.5rem, 4vw, 3.25rem);
		border-radius: 1rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__library-mark {
		display: grid;
		width: clamp(4rem, 8vw, 7rem);
		aspect-ratio: 1;
		place-items: center;
		border-radius: 1.4rem;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-color-primary);
		font-size: clamp(2rem, 4vw, 3.6rem);
		font-weight: 800;
	}

	.roosevelt-institutional__legal-note {
		margin-top: 2rem;
		padding: clamp(1.4rem, 3vw, 2.25rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.85rem;
	}

	.roosevelt-institutional__legal-copy {
		color: var(--roosevelt-muted-ink);
		line-height: 1.65;
	}

	.roosevelt-institutional__privacy-document {
		max-width: 76rem;
		margin-inline: auto;
		color: var(--roosevelt-ink);
	}

	.roosevelt-institutional__privacy-intro {
		margin-bottom: clamp(2.5rem, 5vw, 4rem);
		padding: clamp(1.5rem, 3vw, 2.5rem);
		border-left: 4px solid var(--roosevelt-yellow);
		border-radius: 0 0.85rem 0.85rem 0;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__privacy-section {
		margin-top: clamp(2.25rem, 4vw, 3.5rem);
		padding-top: clamp(1.75rem, 3vw, 2.5rem);
		border-top: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-institutional__privacy-cta {
		display: grid;
		grid-template-columns: minmax(0, 1.15fr) minmax(17rem, 0.85fr);
		align-items: center;
		gap: 1.5rem 2.5rem;
		margin-top: clamp(4rem, 8vw, 7rem);
		padding: clamp(1.5rem, 4vw, 3rem);
		border-radius: 1rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__privacy-form {
		grid-column: 1 / -1;
		width: 100%;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.75rem;
		background: #fff;
	}

	.roosevelt-institutional__claims-layout {
		display: grid;
		grid-template-columns: minmax(0, 1.35fr) minmax(19rem, 0.65fr);
		align-items: start;
		gap: clamp(2rem, 5vw, 4rem);
	}

	.roosevelt-institutional__deadline {
		display: flex;
		align-items: center;
		gap: 1rem;
		margin-bottom: 2rem;
		padding: 1.1rem 1.3rem;
		border-radius: 0.8rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__definition-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.8rem;
	}

	.roosevelt-institutional__claims-card {
		padding: clamp(1.5rem, 3vw, 2.25rem);
		border-top: 4px solid var(--roosevelt-yellow);
		border-radius: 0.85rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__breadcrumbs a {
		color: #fff;
		text-decoration-thickness: 1px;
		text-underline-offset: 0.2em;
	}

	.roosevelt-institutional__hero-copy h1 {
		max-width: 15ch;
		margin: 0;
		color: #fff;
		font-size: clamp(2.8rem, 6vw, 4.3rem);
		font-weight: 750;
		line-height: 0.99;
	}

	.roosevelt-institutional__section-heading h2,
	.roosevelt-institutional__subheading h2,
	.roosevelt-institutional__manuals h2,
	.roosevelt-institutional__document-panel h2,
	.roosevelt-institutional__library-note h2,
	.roosevelt-institutional__claims-main > h2 {
		margin: 0;
		font-size: clamp(2rem, 4vw, 3.5rem);
		font-weight: 720;
		line-height: 1.08;
	}

	.roosevelt-institutional__office-card h3,
	.roosevelt-institutional__transparency-card h3,
	.roosevelt-institutional__card h3,
	.roosevelt-institutional__access-card h3,
	.roosevelt-institutional__resource-card h3,
	.roosevelt-institutional__contact-card h3 {
		margin: 1.35rem 0 0.55rem;
		font-size: clamp(1.2rem, 1.8vw, 1.5rem);
		font-weight: 700;
		line-height: 1.2;
	}

	.roosevelt-institutional__office-card > p,
	.roosevelt-institutional__transparency-card > p,
	.roosevelt-institutional__card > p,
	.roosevelt-institutional__resource-card > p,
	.roosevelt-institutional__contact-card > p {
		margin: 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.65;
	}

	.roosevelt-institutional__text-link span,
	.roosevelt-institutional__resource-action > span {
		transition: transform var(--roosevelt-transition);
	}

	.roosevelt-institutional__source-note p {
		margin: 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.55;
	}

	.roosevelt-institutional__source-note a {
		display: inline-flex;
		gap: 0.5rem;
		margin-top: 0.6rem;
		color: var(--roosevelt-color-primary);
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-institutional__resource-group h3 {
		margin: 0;
		font-size: 1.4rem;
	}

	.roosevelt-institutional__period-links a,
	.roosevelt-institutional__manual-links a {
		display: flex;
		min-height: 3.4rem;
		align-items: center;
		justify-content: space-between;
		gap: 0.75rem;
		padding: 0.8rem 1rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.65rem;
		color: var(--roosevelt-color-primary);
		font-weight: 700;
		text-decoration: none;
		transition: border-color var(--roosevelt-transition), background-color var(--roosevelt-transition), color var(--roosevelt-transition);
	}

	.roosevelt-institutional__subheading h2 {
		font-size: clamp(1.8rem, 3vw, 2.6rem);
	}

	.roosevelt-institutional__contact-card h3 {
		margin: 0;
		font-size: 1rem;
	}

	.roosevelt-institutional__contact-card > p {
		display: block;
		margin-top: 0.55rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.92rem;
		line-height: 1.45;
	}

	.roosevelt-institutional__access-card h3 {
		margin-top: 0.55rem;
	}

	.roosevelt-institutional__manual-links a {
		min-height: auto;
		background: var(--roosevelt-color-background);
		font-size: 0.94rem;
	}

	.roosevelt-institutional__call-status > span {
		display: grid;
		width: 2.5rem;
		height: 2.5rem;
		flex: 0 0 auto;
		place-items: center;
		border-radius: 50%;
		background: var(--roosevelt-yellow);
		font-weight: 800;
	}

	.roosevelt-institutional__call-status strong {
		font-size: 1.05rem;
	}

	.roosevelt-institutional__call-status p {
		margin: 0.2rem 0 0;
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-institutional__teacher-schedule > h3 {
		margin: 0;
		font-size: clamp(1.5rem, 2.5vw, 2rem);
	}

	.roosevelt-institutional__teacher-apply > p {
		margin: 0;
		line-height: 1.6;
	}

	.roosevelt-institutional__teacher-notice h2 {
		margin: 0 0 1.25rem;
		font-size: clamp(1.5rem, 3vw, 2.5rem);
		line-height: 1.15;
	}

	.roosevelt-institutional__teacher-notice table {
		width: 100%;
		min-width: 38rem;
		border-collapse: collapse;
		text-align: left;
	}

	.roosevelt-institutional__teacher-notice th,
	.roosevelt-institutional__teacher-notice td {
		padding: 0.85rem 1rem;
		border: 1px solid var(--roosevelt-color-border);
		vertical-align: top;
	}

	.roosevelt-institutional__teacher-notice th {
		background: var(--roosevelt-color-primary);
		color: #fff;
		font-size: 0.78rem;
		letter-spacing: 0.04em;
	}

	.roosevelt-institutional__timeline-item > span {
		color: var(--roosevelt-color-primary);
		font-size: 0.8rem;
		font-weight: 750;
	}

	.roosevelt-institutional__timeline-item h3 {
		margin: 0;
		font-size: 1rem;
	}

	.roosevelt-institutional__timeline-item p {
		margin: 0.4rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.92rem;
	}

	.roosevelt-institutional__resource-card h3 {
		margin-top: 1rem;
	}

	.roosevelt-institutional__legal-note > strong {
		font-size: 1.05rem;
	}

	.roosevelt-institutional__legal-note > p {
		color: var(--roosevelt-muted-ink);
		line-height: 1.65;
	}

	.roosevelt-institutional__privacy-document p,
	.roosevelt-institutional__privacy-document li {
		color: var(--roosevelt-muted-ink);
		font-size: 0.98rem;
		line-height: 1.75;
	}

	.roosevelt-institutional__privacy-document p {
		margin: 0.85rem 0 0;
	}

	.roosevelt-institutional__privacy-document a {
		color: var(--roosevelt-color-primary);
		font-weight: 700;
		text-decoration-thickness: 1px;
		text-underline-offset: 0.18em;
	}

	.roosevelt-institutional__privacy-section h2 {
		max-width: 58rem;
		margin: 0 0 1rem;
		font-size: clamp(1.45rem, 2.5vw, 2rem);
		font-weight: 720;
		line-height: 1.2;
	}

	.roosevelt-institutional__privacy-section ul,
	.roosevelt-institutional__privacy-section ol {
		display: grid;
		gap: 0.55rem;
		margin: 1rem 0 1.15rem;
		padding-left: 1.5rem;
	}

	.roosevelt-institutional__privacy-cta-copy h2 {
		margin: 0;
		font-size: clamp(1.8rem, 3vw, 2.6rem);
		font-weight: 720;
		line-height: 1.12;
	}

	.roosevelt-institutional__privacy-cta-copy p {
		margin: 0.85rem 0 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.65;
	}

	.roosevelt-institutional__privacy-cta > img {
		display: block;
		width: 100%;
		max-height: 18rem;
		border-radius: 0.75rem;
		object-fit: cover;
	}

	.roosevelt-institutional__deadline > span {
		color: var(--roosevelt-color-primary);
		font-size: 2.5rem;
		font-weight: 800;
	}

	.roosevelt-institutional__deadline p {
		margin: 0.2rem 0 0;
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-institutional__claims-main > h2 {
		margin-block: 2.5rem 1rem;
		font-size: 1.8rem;
	}

	.roosevelt-institutional__definition-grid article {
		padding: 1.2rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.75rem;
	}

	.roosevelt-institutional__definition-grid h3 {
		margin: 0;
		font-size: 1.1rem;
	}

	.roosevelt-institutional__definition-grid p {
		margin: 0.5rem 0 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.55;
	}

	.roosevelt-institutional__claims-card h2 {
		margin: 0;
		font-size: 1.8rem;
		line-height: 1.1;
	}

	.roosevelt-institutional__claims-card ol {
		display: grid;
		gap: 0.65rem;
		margin: 1.35rem 0 1.5rem;
		padding-left: 1.2rem;
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-institutional__hero-copy .roosevelt-eyebrow {
		margin: 0 0 1rem;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-institutional__section-heading .roosevelt-label,
	.roosevelt-institutional__subheading .roosevelt-label,
	.roosevelt-institutional__manuals .roosevelt-label,
	.roosevelt-institutional__document-panel .roosevelt-label,
	.roosevelt-institutional__library-note .roosevelt-label,
	.roosevelt-institutional__claims-card .roosevelt-label {
		margin: 0 0 0.8rem;
		color: var(--roosevelt-color-primary);
		font-size: 0.78rem;
		font-weight: 750;
	}

	.roosevelt-institutional__document-panel .roosevelt-button,
	.roosevelt-institutional__access-card .roosevelt-button,
	.roosevelt-institutional__claims-card .roosevelt-button {
		display: inline-flex;
		min-height: 3.2rem;
		align-items: center;
		justify-content: center;
		gap: 0.8rem;
		flex: 0 0 auto;
		padding: 0.8rem 1.25rem;
		border-radius: 0.65rem;
		background: var(--roosevelt-color-primary);
		color: #fff;
		font-weight: 700;
		text-decoration: none;
		transition: background-color var(--roosevelt-transition), color var(--roosevelt-transition);
	}

	.roosevelt-institutional__directory-section + .roosevelt-institutional__directory-section {
		margin-top: clamp(3rem, 6vw, 5rem);
	}

	.roosevelt-institutional__contact-card .roosevelt-institutional__text-link {
		margin-top: 0.7rem;
		font-size: 0.88rem;
	}

	.roosevelt-institutional__access-card .roosevelt-label {
		margin: 1.3rem 0 0;
		color: var(--roosevelt-color-primary);
		font-size: 0.75rem;
		font-weight: 750;
	}

	.roosevelt-institutional__access-card > .roosevelt-button {
		display: flex;
		width: fit-content;
		margin-top: 1rem;
	}

	.roosevelt-institutional__teacher-call > .roosevelt-institutional__section-heading {
		max-width: 70rem;
		margin-bottom: 0;
	}

	.roosevelt-institutional__teacher-resources .roosevelt-institutional__subheading {
		max-width: 65rem;
		margin: 0;
	}

	.roosevelt-institutional__teacher-notice > .roosevelt-label {
		margin: 0 0 0.75rem;
		color: var(--roosevelt-color-primary);
		font-size: 0.78rem;
		font-weight: 750;
	}

	.roosevelt-institutional__resource-card:hover,
	.roosevelt-institutional__resource-card:focus-visible {
		transform: translateY(-0.2rem);
		border-color: var(--roosevelt-color-primary);
		box-shadow: 0 1rem 2.4rem rgba(20, 20, 20, 0.1);
	}

	.roosevelt-institutional__resource-card .roosevelt-institutional__resource-action {
		margin-top: auto;
		padding-top: 1.25rem;
	}

	.roosevelt-institutional__legal-note .roosevelt-button {
		display: inline-flex;
		align-items: center;
		gap: 0.7rem;
		margin-top: 0.4rem;
		color: var(--roosevelt-color-primary);
		font-weight: 700;
	}

	.roosevelt-institutional__hero-copy > p:last-child {
		max-width: 45rem;
		margin: 1.25rem 0 0;
		color: rgba(255, 255, 255, 0.88);
		font-size: clamp(1.05rem, 1.7vw, 1.3rem);
		line-height: 1.65;
	}

	.roosevelt-institutional__section-heading > p:last-child {
		max-width: 47rem;
		margin: 1rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 1.05rem;
		line-height: 1.7;
	}

	.roosevelt-institutional__access-card > p:not(.roosevelt-label) {
		margin: 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.65;
	}

	.roosevelt-institutional__text-link:hover span,
	.roosevelt-institutional__text-link:focus-visible span {
		transform: translateX(0.2rem);
	}

	.roosevelt-institutional__period-links a:hover,
	.roosevelt-institutional__period-links a:focus-visible,
	.roosevelt-institutional__manual-links a:hover,
	.roosevelt-institutional__manual-links a:focus-visible {
		border-color: var(--roosevelt-color-primary);
		background: var(--roosevelt-color-primary);
		color: #fff;
	}

	.roosevelt-institutional__contact-card > a:not(.roosevelt-institutional__text-link) {
		display: block;
		margin-top: 0.55rem;
		font-size: 0.92rem;
		line-height: 1.45;
		color: var(--roosevelt-color-primary);
		text-decoration-thickness: 1px;
		text-underline-offset: 0.16em;
	}

	.roosevelt-institutional__teacher-resources .roosevelt-institutional__subheading h2 {
		font-size: clamp(1.5rem, 3vw, 2.5rem);
	}

	.roosevelt-institutional__teacher-notice > p:not(.roosevelt-label) {
		line-height: 1.65;
	}

	.roosevelt-institutional__teacher-notice td:first-child {
		min-width: 12rem;
		font-weight: 650;
	}

	.roosevelt-institutional__claims-card > p:last-child {
		margin: 1rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.84rem;
		line-height: 1.5;
	}

	.roosevelt-institutional__manuals > div > p:last-child,
	.roosevelt-institutional__document-panel > div > p:last-child,
	.roosevelt-institutional__library-note > div > p:last-child {
		max-width: 47rem;
		margin: 1rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 1.05rem;
		line-height: 1.7;
	}

	.roosevelt-institutional__document-panel .roosevelt-button:hover,
	.roosevelt-institutional__access-card .roosevelt-button:hover,
	.roosevelt-institutional__claims-card .roosevelt-button:hover,
	.roosevelt-institutional__document-panel .roosevelt-button:focus-visible,
	.roosevelt-institutional__access-card .roosevelt-button:focus-visible,
	.roosevelt-institutional__claims-card .roosevelt-button:focus-visible {
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
	}

	.roosevelt-institutional__resource-card:hover .roosevelt-institutional__resource-action > span {
		transform: translateX(0.2rem);
	}

	.roosevelt-institutional__teacher-call > .roosevelt-institutional__section-heading > p:not(.roosevelt-label) {
		max-width: 60rem;
	}

	.roosevelt-institutional__resource-group > div:first-child > p:last-child {
		margin: 0.6rem 0 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.55;
	}
}

@media all {

	.roosevelt-institutional-page :focus-visible {
		outline: 3px solid var(--roosevelt-color-primary);
		outline-offset: 3px;
	}
}

@media (max-width: 900px) {

	.roosevelt-institutional__grid,
	.roosevelt-institutional__timeline {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-institutional__contact-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.roosevelt-institutional__resource-group {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}

	.roosevelt-institutional__claims-layout {
		grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.8fr);
		gap: 1.5rem;
	}

	.roosevelt-institutional__privacy-cta {
		grid-template-columns: minmax(0, 1fr) minmax(14rem, 0.8fr);
	}
}

@media (max-width: 620px) {

	.roosevelt-institutional__hero {
		min-height: 33rem;
	}

	.roosevelt-institutional__hero-inner {
		padding-block-end: 3.25rem;
	}

	.roosevelt-institutional__hero-shade {
		background: linear-gradient(0deg, rgba(20, 8, 16, 0.86), rgba(20, 8, 16, 0.35));
	}

	.roosevelt-institutional__hero-copy {
		margin-top: auto;
	}

	.roosevelt-institutional__grid,
	.roosevelt-institutional__grid--resources,
	.roosevelt-institutional__grid--access,
	.roosevelt-institutional__timeline,
	.roosevelt-institutional__definition-grid,
	.roosevelt-institutional__claims-layout,
	.roosevelt-institutional__privacy-cta {
		grid-template-columns: 1fr;
	}

	.roosevelt-institutional__contact-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-institutional__period-links {
		grid-template-columns: 1fr;
	}

	.roosevelt-institutional__manuals,
	.roosevelt-institutional__document-panel {
		align-items: stretch;
		flex-direction: column;
	}

	.roosevelt-institutional__manual-links {
		width: 100%;
	}

	.roosevelt-institutional__library-note {
		grid-template-columns: 1fr;
	}

	.roosevelt-institutional__teacher-apply {
		align-items: stretch;
		flex-direction: column;
	}

	.roosevelt-institutional__privacy-cta > img {
		max-height: none;
	}

	.roosevelt-institutional__document-panel .roosevelt-button {
		width: 100%;
	}

	.roosevelt-institutional__teacher-apply .roosevelt-button {
		justify-content: center;
	}
}

@media (max-width: 760px) {

	.roosevelt-institutional-page--oficinas-y-unidades .roosevelt-institutional__hero {
		min-height: 29rem;
	}

	.roosevelt-institutional-page--oficinas-y-unidades .roosevelt-institutional__hero-inner {
		padding-block: 2.5rem;
	}

	.roosevelt-institutional-page--oficinas-y-unidades .roosevelt-licensing__back-link {
		margin-bottom: 2rem;
	}
}

@media all {

	.roosevelt-institutional__admission-intro {
		display: grid;
		grid-template-columns: minmax(0, 1.4fr) minmax(18rem, 0.6fr);
		align-items: stretch;
		gap: clamp(1.5rem, 4vw, 3rem);
		margin-bottom: clamp(3.5rem, 7vw, 6rem);
	}

	.roosevelt-institutional__admission-intro-main {
		align-self: center;
		max-width: 54rem;
	}

	.roosevelt-institutional__admission-actions {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 1.25rem;
		margin-top: 1.7rem;
	}

	.roosevelt-institutional__admission-secondary {
		color: var(--roosevelt-color-primary);
		font-size: 0.95rem;
		font-weight: 700;
		text-decoration-thickness: 1px;
		text-underline-offset: 0.2em;
	}

	.roosevelt-institutional__admission-contact {
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		min-height: 17rem;
		padding: clamp(1.4rem, 3vw, 2rem);
		border-top: 4px solid var(--roosevelt-yellow);
		border-radius: 0.9rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__admission-contact-mark {
		display: grid;
		width: 2.75rem;
		height: 2.75rem;
		place-items: center;
		margin-bottom: 1rem;
		border-radius: 0.75rem;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-color-primary);
		font-size: 1.35rem;
		font-weight: 800;
	}

	.roosevelt-institutional__admission-program-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.9rem;
	}

	.roosevelt-institutional__admission-program {
		position: relative;
		display: flex;
		min-width: 0;
		min-height: 13rem;
		flex-direction: column;
		align-items: flex-start;
		justify-content: space-between;
		gap: 1.5rem;
		padding: clamp(1.3rem, 2.4vw, 1.8rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.85rem;
		background: var(--roosevelt-color-background);
		box-shadow: 0 0.6rem 1.8rem rgba(20, 20, 20, 0.035);
		color: inherit;
		text-decoration: none;
		transition: border-color var(--roosevelt-transition), transform var(--roosevelt-transition), box-shadow var(--roosevelt-transition);
	}

	.roosevelt-institutional__admission-program-label {
		color: var(--roosevelt-color-primary);
		font-size: 0.7rem;
		font-weight: 800;
	}

	.roosevelt-institutional__admission-program-link {
		display: inline-flex;
		align-items: center;
		gap: 0.6rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.9rem;
		font-weight: 700;
	}

	.roosevelt-institutional__admission-process {
		margin-top: clamp(4rem, 8vw, 7rem);
	}

	.roosevelt-institutional__admission-process-heading {
		max-width: 51rem;
		margin-bottom: 2rem;
	}

	.roosevelt-institutional__admission-steps {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.8rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-institutional__admission-official {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
		margin-top: clamp(3rem, 6vw, 5rem);
		padding: clamp(1.5rem, 4vw, 3rem);
		border-radius: 1rem;
		background: var(--roosevelt-color-primary);
		color: #fff;
	}

	.roosevelt-institutional__admission-intro-main > h2,
	.roosevelt-institutional__admission-process-heading > h2,
	.roosevelt-institutional__admission-official h2 {
		margin: 0;
		font-size: clamp(2rem, 4vw, 3.35rem);
		font-weight: 720;
		line-height: 1.08;
	}

	.roosevelt-institutional__admission-contact h3 {
		margin: 0;
		font-size: 1.35rem;
		line-height: 1.2;
	}

	.roosevelt-institutional__admission-contact > a {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		margin-top: 1rem;
		color: var(--roosevelt-color-primary);
		font-weight: 750;
		text-decoration: none;
	}

	.roosevelt-institutional__admission-program h3 {
		width: 100%;
		margin: auto 0 0.25rem;
		font-size: clamp(1.2rem, 1.8vw, 1.5rem);
		font-weight: 700;
		line-height: 1.2;
	}

	.roosevelt-institutional__admission-program-link > span {
		color: var(--roosevelt-color-primary);
		transition: transform var(--roosevelt-transition);
	}

	.roosevelt-institutional__admission-steps > li {
		display: flex;
		align-items: flex-start;
		gap: 1rem;
		min-height: 10rem;
		padding: 1.3rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.8rem;
	}

	.roosevelt-institutional__admission-steps h3 {
		margin: 0;
		font-size: 1.1rem;
	}

	.roosevelt-institutional__admission-steps p {
		margin: 0.55rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.93rem;
		line-height: 1.55;
	}

	.roosevelt-institutional__admission-official h2 {
		max-width: 42rem;
		font-size: clamp(1.8rem, 3vw, 2.6rem);
	}

	.roosevelt-institutional__admission-steps > li > span {
		display: grid;
		width: 2.5rem;
		height: 2.5rem;
		flex: 0 0 auto;
		place-items: center;
		border-radius: 50%;
		background: color-mix(in srgb, var(--roosevelt-yellow) 32%, #fff);
		color: var(--roosevelt-color-primary);
		font-size: 0.76rem;
		font-weight: 800;
	}

	.roosevelt-institutional__admission-contact .roosevelt-label {
		margin: 0 0 0.55rem;
		color: var(--roosevelt-color-primary);
		font-size: 0.72rem;
		font-weight: 750;
	}

	.roosevelt-institutional__admission-program:hover,
	.roosevelt-institutional__admission-program:focus-visible {
		transform: translateY(-0.2rem);
		border-color: var(--roosevelt-yellow);
		box-shadow: 0 1rem 2.2rem rgba(20, 20, 20, 0.08);
	}

	.roosevelt-institutional__admission-process-heading .roosevelt-label,
	.roosevelt-institutional__admission-official .roosevelt-label {
		margin: 0 0 0.8rem;
		color: var(--roosevelt-color-primary);
		font-size: 0.78rem;
		font-weight: 750;
	}

	.roosevelt-institutional__admission-official .roosevelt-label {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-institutional__admission-official .roosevelt-button {
		flex: 0 0 auto;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
	}

	.roosevelt-institutional__admission-intro-main > p:not(.roosevelt-label),
	.roosevelt-institutional__admission-process-heading > p:last-child {
		max-width: 48rem;
		margin: 1rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 1.05rem;
		line-height: 1.7;
	}

	.roosevelt-institutional__admission-contact > p:not(.roosevelt-label) {
		margin: 0.65rem 0 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.55;
	}

	.roosevelt-institutional__admission-official > div > p:last-child {
		margin: 1rem 0 0;
		font-size: 1.05rem;
		line-height: 1.7;
		max-width: 47rem;
		color: rgba(255, 255, 255, 0.82);
	}

	.roosevelt-institutional__admission-official .roosevelt-button:hover,
	.roosevelt-institutional__admission-official .roosevelt-button:focus-visible {
		background: #fff;
		color: var(--roosevelt-color-primary);
	}

	.roosevelt-institutional__admission-program:hover .roosevelt-institutional__admission-program-link > span,
	.roosevelt-institutional__admission-program:focus-visible .roosevelt-institutional__admission-program-link > span {
		transform: translateX(0.2rem);
	}
}

@media (max-width: 900px) {

	.roosevelt-institutional__admission-intro {
		grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.75fr);
	}

	.roosevelt-institutional__admission-program-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-institutional__admission-steps {
		grid-template-columns: 1fr;
	}

	.roosevelt-institutional__admission-official {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 620px) {

	.roosevelt-institutional__admission-intro,
	.roosevelt-institutional__admission-program-grid {
		grid-template-columns: 1fr;
	}

	.roosevelt-institutional__admission-contact {
		min-height: auto;
	}

	.roosevelt-institutional__admission-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.roosevelt-institutional__admission-secondary {
		align-self: center;
	}

	.roosevelt-institutional__admission-actions .roosevelt-button {
		width: 100%;
	}
}

@media all {

	.roosevelt-institutional__grid--service {
		margin-bottom: clamp(2rem, 4vw, 3.25rem);
	}

	.roosevelt-institutional__service-card {
		min-height: 15rem;
		transition: border-color var(--roosevelt-transition), box-shadow var(--roosevelt-transition), transform var(--roosevelt-transition);
	}

	.roosevelt-institutional__service-contact {
		display: grid;
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
		align-items: center;
		gap: clamp(1.5rem, 4vw, 3.5rem);
		margin-block: clamp(2.5rem, 5vw, 4.5rem);
		padding: clamp(1.5rem, 4vw, 3.25rem);
		border: 1px solid var(--roosevelt-color-border);
		border-top: 4px solid var(--roosevelt-yellow);
		border-radius: 1rem;
		background: var(--roosevelt-color-surface);
	}

	.roosevelt-institutional__service-contact-details {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.85rem;
	}

	.roosevelt-institutional__service-contact-item {
		min-width: 0;
		padding: 1rem 1.1rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.7rem;
		background: var(--roosevelt-color-background);
	}

	.roosevelt-institutional__service-resources {
		margin-top: clamp(2.5rem, 5vw, 4.5rem);
	}

	.roosevelt-institutional__service-resources-heading {
		max-width: 52rem;
		margin-bottom: clamp(1.5rem, 3vw, 2.5rem);
	}

	.roosevelt-institutional__grid--service-resources {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-institutional__service-contact-copy h2,
	.roosevelt-institutional__service-resources-heading h2 {
		margin: 0;
		font-size: clamp(1.75rem, 3.5vw, 2.8rem);
		font-weight: 720;
		line-height: 1.08;
	}

	.roosevelt-institutional__service-contact-item > span {
		display: block;
		margin-bottom: 0.35rem;
		color: var(--roosevelt-muted-ink);
		font-size: 0.78rem;
		font-weight: 700;
	}

	.roosevelt-institutional__service-contact-item > a,
	.roosevelt-institutional__service-contact-item > strong {
		color: var(--roosevelt-ink);
		font-size: 0.95rem;
		font-weight: 650;
		line-height: 1.5;
		text-decoration: none;
		overflow-wrap: anywhere;
	}

	.roosevelt-institutional__service-card:hover {
		transform: translateY(-0.2rem);
		border-color: color-mix(in srgb, var(--roosevelt-color-primary) 38%, var(--roosevelt-color-border));
		box-shadow: 0 1rem 2.5rem rgba(20, 20, 20, 0.09);
	}

	.roosevelt-institutional__service-contact-copy .roosevelt-label,
	.roosevelt-institutional__service-resources-heading .roosevelt-label {
		margin: 0 0 0.75rem;
		color: var(--roosevelt-color-primary);
		font-size: 0.78rem;
		font-weight: 750;
	}

	.roosevelt-institutional__grid--service-resources .roosevelt-institutional__resource-card {
		transition: border-color var(--roosevelt-transition), box-shadow var(--roosevelt-transition), transform var(--roosevelt-transition);
	}

	.roosevelt-institutional__service-contact-copy > p:last-child {
		max-width: 34rem;
		margin: 0.9rem 0 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.65;
	}

	.roosevelt-institutional__service-contact-item > a:hover,
	.roosevelt-institutional__service-contact-item > a:focus-visible {
		color: var(--roosevelt-color-primary);
		text-decoration: underline;
		text-underline-offset: 0.18em;
	}

	.roosevelt-institutional__grid--service-resources .roosevelt-institutional__resource-card:hover,
	.roosevelt-institutional__grid--service-resources .roosevelt-institutional__resource-card:focus-visible {
		transform: translateY(-0.18rem);
		border-color: var(--roosevelt-yellow);
		box-shadow: 0 1rem 2.5rem rgba(20, 20, 20, 0.09);
	}
}

@media (max-width: 900px) {

	.roosevelt-institutional__grid--service {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-institutional__service-contact {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 620px) {

	.roosevelt-institutional__grid--service,
	.roosevelt-institutional__grid--service-resources,
	.roosevelt-institutional__service-contact-details {
		grid-template-columns: 1fr;
	}

	.roosevelt-institutional__service-card {
		min-height: 0;
	}

	.roosevelt-institutional__service-contact {
		padding: 1.25rem;
	}
}

@media (prefers-reduced-motion: reduce) {

	.roosevelt-institutional__service-card,
	.roosevelt-institutional__grid--service-resources .roosevelt-institutional__resource-card {
		transition: none;
	}

	.roosevelt-institutional__service-card:hover,
	.roosevelt-institutional__grid--service-resources .roosevelt-institutional__resource-card:hover {
		transform: none;
	}
}

/* Cooperación Internacional page. */
@media all {

	.roosevelt-intl {
		color: var(--roosevelt-ink);
	}

	.roosevelt-intl .roosevelt-label {
		margin: 0 0 0.6rem;
		color: var(--roosevelt-color-primary);
		font-size: 0.78rem;
		font-weight: 750;
		letter-spacing: 0.04em;
	}

	.roosevelt-intl h2 {
		margin: 0;
		font-size: clamp(1.8rem, 3.4vw, 2.6rem);
		font-weight: 730;
		line-height: 1.1;
		text-wrap: balance;
	}

	.roosevelt-intl-icon {
		width: 1.4rem;
		height: 1.4rem;
		flex: 0 0 auto;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.8;
	}

	.roosevelt-intl-hero {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		min-height: clamp(32rem, 62vh, 40rem);
		background: linear-gradient(135deg, #2b0718 0%, var(--roosevelt-color-primary) 100%);
		color: #fff;
	}

	.roosevelt-intl-hero__copy {
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: clamp(2rem, 5vw, 4rem) clamp(1.25rem, 5vw, 5rem);
		padding-left: max(clamp(1.25rem, 5vw, 5rem), calc((100vw - var(--roosevelt-wide-width)) / 2));
	}

	.roosevelt-intl-hero__copy .roosevelt-page-breadcrumb {
		margin-bottom: clamp(2rem, 5vw, 3.5rem);
	}

	.roosevelt-intl-hero__copy .roosevelt-page-breadcrumb a {
		color: rgba(255, 255, 255, 0.85);
	}

	.roosevelt-intl-hero__copy h1 {
		margin: 0.9rem 0 0;
		font-size: clamp(2.4rem, 4.8vw, 4.2rem);
		font-weight: 760;
		line-height: 1.02;
	}

	.roosevelt-intl-hero__copy > p:not(.roosevelt-eyebrow) {
		max-width: 34rem;
		margin: 1.1rem 0 0;
		color: rgba(255, 255, 255, 0.86);
		font-size: clamp(1rem, 1.4vw, 1.15rem);
		line-height: 1.6;
	}

	.roosevelt-intl-hero__profiles {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.6rem;
		max-width: 34rem;
		margin: 2rem 0 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-intl-hero__profiles a {
		display: flex;
		align-items: center;
		gap: 0.65rem;
		height: 100%;
		padding: 0.8rem 1rem;
		border: 1px solid rgba(255, 255, 255, 0.25);
		border-radius: 0.8rem;
		background: rgba(255, 255, 255, 0.08);
		color: #fff;
		font-size: 0.92rem;
		font-weight: 650;
		text-decoration: none;
		transition: background-color var(--roosevelt-transition), border-color var(--roosevelt-transition);
	}

	.roosevelt-intl-hero__profiles a:hover,
	.roosevelt-intl-hero__profiles a:focus-visible {
		border-color: var(--roosevelt-yellow);
		background: rgba(255, 255, 255, 0.16);
	}

	.roosevelt-intl-hero__profiles .roosevelt-intl-icon {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-intl-hero__media {
		position: relative;
		min-height: 18rem;
	}

	.roosevelt-intl-hero__media img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: 55% center;
	}

	.roosevelt-intl-hero__media::after {
		position: absolute;
		inset: auto 0 0;
		height: 6px;
		background: var(--roosevelt-yellow);
		content: "";
	}

	.roosevelt-intl__body {
		padding-block: clamp(3.5rem, 7vw, 6rem);
	}

	.roosevelt-intl__body > section {
		margin-bottom: clamp(4rem, 8vw, 6.5rem);
		scroll-margin-top: 9rem;
	}

	.roosevelt-intl__body > section:last-child {
		margin-bottom: 0;
	}

	.roosevelt-intl__heading {
		max-width: 46rem;
		margin-bottom: clamp(1.75rem, 3.5vw, 2.5rem);
	}

	.roosevelt-intl__heading--split {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-end;
		justify-content: space-between;
		gap: 1rem;
		max-width: none;
	}

	.roosevelt-intl-intro {
		display: grid;
		grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
		gap: clamp(1.5rem, 4vw, 4rem);
	}

	.roosevelt-intl-intro__text p {
		margin: 0 0 1rem;
		color: var(--roosevelt-muted-ink);
		font-size: 1.08rem;
		line-height: 1.75;
	}

	.roosevelt-intl-intro__figures {
		display: grid;
		grid-column: 1 / -1;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		margin: 0.5rem 0 0;
		border-top: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-intl-intro__figures div {
		display: flex;
		flex-direction: column-reverse;
		gap: 0.3rem;
		padding: 1.5rem 1.25rem 0 0;
	}

	.roosevelt-intl-intro__figures div + div {
		padding-left: 1.25rem;
		border-left: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-intl-intro__figures dt {
		color: var(--roosevelt-muted-ink);
		font-size: 0.9rem;
	}

	.roosevelt-intl-intro__figures dd {
		margin: 0;
		color: var(--roosevelt-color-primary);
		font-size: clamp(2rem, 3.6vw, 2.8rem);
		font-weight: 780;
		line-height: 1;
	}

	/* Tabs wrap instead of scrolling, so no scrollbar ever appears. */
	.roosevelt-intl-tabs__list {
		display: flex;
		flex-wrap: wrap;
		gap: 0.25rem 0.5rem;
		margin-bottom: 1.75rem;
		border-bottom: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-intl-tabs:not(.is-ready) .roosevelt-intl-tabs__list {
		display: none;
	}

	.roosevelt-intl-tabs__list [role="tab"] {
		display: inline-flex;
		flex: 0 0 auto;
		align-items: center;
		gap: 0.5rem;
		margin-bottom: -1px;
		padding: 0.85rem 1.1rem;
		border: 0;
		border-bottom: 3px solid transparent;
		background: transparent;
		color: var(--roosevelt-muted-ink);
		font: inherit;
		font-weight: 700;
		cursor: pointer;
	}

	.roosevelt-intl-tabs__list [role="tab"]:hover {
		color: var(--roosevelt-ink);
	}

	.roosevelt-intl-tabs__list [role="tab"][aria-selected="true"] {
		border-bottom-color: var(--roosevelt-color-primary);
		color: var(--roosevelt-color-primary);
	}

	.roosevelt-intl-tabs__list [role="tab"]:focus-visible,
	.roosevelt-intl-tabs__panel:focus-visible {
		outline: none;
		box-shadow: var(--roosevelt-focus-ring);
	}

	.roosevelt-intl-tabs__panel + .roosevelt-intl-tabs__panel {
		margin-top: 2.5rem;
	}

	.roosevelt-intl-tabs.is-ready .roosevelt-intl-tabs__panel-title {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip-path: inset(50%);
		white-space: nowrap;
	}

	.roosevelt-intl-tabs__panel-title {
		margin: 0 0 0.5rem;
		font-size: 1.3rem;
	}

	.roosevelt-intl-tabs__intro {
		max-width: 46rem;
		margin: 0 0 1.5rem;
		color: var(--roosevelt-muted-ink);
		font-size: 1.05rem;
		line-height: 1.6;
	}

	.roosevelt-intl-tabs__grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
		gap: 1rem;
	}

	.roosevelt-intl-program {
		display: flex;
		flex-direction: column;
		padding: clamp(1.25rem, 2.4vw, 1.75rem);
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
		transition: border-color var(--roosevelt-transition), box-shadow var(--roosevelt-transition);
	}

	.roosevelt-intl-program:hover {
		border-color: color-mix(in srgb, var(--roosevelt-color-primary) 35%, var(--roosevelt-color-border));
		box-shadow: 0 1rem 2.4rem rgba(20, 20, 20, 0.07);
	}

	.roosevelt-intl-program__number {
		color: var(--roosevelt-color-primary);
		font-size: 0.8rem;
		font-weight: 760;
	}

	.roosevelt-intl-program h4 {
		margin: 0.6rem 0 0;
		font-size: 1.12rem;
	}

	.roosevelt-intl-program p {
		margin: 0.5rem 0 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.55;
	}

	.roosevelt-intl-program .roosevelt-intl-program__note {
		margin-top: auto;
		padding-top: 1rem;
		color: var(--roosevelt-ink);
		font-size: 0.85rem;
		font-weight: 650;
	}

	.roosevelt-intl-agreements {
		display: grid;
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
		gap: clamp(1.75rem, 4vw, 4rem);
		padding: clamp(1.75rem, 4vw, 3rem);
		border-radius: 1.5rem;
		background: var(--roosevelt-home-gray);
	}

	.roosevelt-intl-agreements__copy > p:not(.roosevelt-label) {
		margin: 1rem 0 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.65;
	}

	.roosevelt-intl-network {
		display: flex;
		gap: 0.9rem;
		margin-top: 1.75rem;
		padding: 1.25rem;
		border-radius: 1rem;
		background: var(--roosevelt-color-primary);
		color: #fff;
	}

	.roosevelt-intl-network .roosevelt-intl-icon {
		width: 2rem;
		height: 2rem;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-intl-network strong {
		display: block;
		font-size: 1.15rem;
	}

	.roosevelt-intl-network div > span {
		display: block;
		margin-top: 0.25rem;
		color: rgba(255, 255, 255, 0.85);
		font-size: 0.9rem;
	}

	.roosevelt-intl-network a {
		display: inline-block;
		margin-top: 0.7rem;
		color: var(--roosevelt-yellow);
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-intl-agreements__list {
		display: grid;
		gap: 1rem;
	}

	.roosevelt-intl-country {
		padding: 1.25rem 1.4rem;
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
	}

	.roosevelt-intl-country h3 {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin: 0 0 0.6rem;
		font-size: 1.05rem;
	}

	.roosevelt-intl-country h3 span {
		display: inline-grid;
		min-width: 1.8rem;
		height: 1.8rem;
		place-items: center;
		border-radius: 999px;
		background: color-mix(in srgb, var(--roosevelt-yellow) 40%, #fff);
		font-size: 0.8rem;
	}

	.roosevelt-intl-country ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-intl-country li {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 0.25rem 1rem;
		padding: 0.75rem 0;
		border-top: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-intl-country li span {
		color: var(--roosevelt-muted-ink);
		font-size: 0.85rem;
	}

	.roosevelt-intl-steps {
		display: grid;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 0;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-intl-steps li {
		position: relative;
		padding: 0 1.25rem 0 0;
	}

	.roosevelt-intl-steps li::before {
		position: absolute;
		top: 1.2rem;
		right: 0;
		left: 2.6rem;
		height: 2px;
		background: var(--roosevelt-color-border);
		content: "";
	}

	.roosevelt-intl-steps li:last-child::before {
		display: none;
	}

	.roosevelt-intl-steps__number {
		position: relative;
		display: inline-grid;
		width: 2.4rem;
		height: 2.4rem;
		place-items: center;
		border-radius: 50%;
		background: var(--roosevelt-color-primary);
		color: #fff;
		font-weight: 760;
	}

	.roosevelt-intl-steps h3 {
		margin: 1rem 0 0;
		font-size: 1.02rem;
	}

	.roosevelt-intl-steps p {
		margin: 0.4rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.92rem;
		line-height: 1.55;
	}

	.roosevelt-intl-checklists {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1rem;
		margin-top: 2.5rem;
	}

	.roosevelt-intl-checklists > div {
		padding: 1.5rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
	}

	.roosevelt-intl-checklists h3 {
		margin: 0 0 0.8rem;
		font-size: 1.05rem;
	}

	.roosevelt-intl-checklists ul {
		display: grid;
		gap: 0.55rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-intl-checklists li {
		position: relative;
		padding-left: 1.6rem;
		line-height: 1.5;
	}

	.roosevelt-intl-checklists li::before {
		position: absolute;
		top: 0.2em;
		left: 0;
		width: 1rem;
		height: 1rem;
		border-radius: 50%;
		background: color-mix(in srgb, var(--roosevelt-yellow) 55%, #fff);
		content: "";
	}

	.roosevelt-intl-news__grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-intl-news__card {
		position: relative;
		overflow: hidden;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
		transition: box-shadow var(--roosevelt-transition);
	}

	.roosevelt-intl-news__card:hover {
		box-shadow: 0 1rem 2.4rem rgba(20, 20, 20, 0.08);
	}

	.roosevelt-intl-news__card img {
		display: block;
		width: 100%;
		aspect-ratio: 16 / 10;
		object-fit: cover;
	}

	.roosevelt-intl-news__card > div {
		padding: 1.25rem;
	}

	.roosevelt-intl-news__meta {
		margin: 0;
		color: var(--roosevelt-color-primary);
		font-size: 0.75rem;
		font-weight: 750;
	}

	.roosevelt-intl-news__card h3 {
		margin: 0.5rem 0 0;
		font-size: 1.05rem;
		line-height: 1.35;
	}

	.roosevelt-intl-news__card h3 a {
		color: var(--roosevelt-ink);
		text-decoration: none;
	}

	.roosevelt-intl-news__card h3 a::after {
		position: absolute;
		inset: 0;
		content: "";
	}

	.roosevelt-intl-news__card h3 a:focus-visible {
		outline: none;
	}

	.roosevelt-intl-news__card:focus-within {
		box-shadow: var(--roosevelt-focus-ring);
	}

	.roosevelt-intl-news__card p:not(.roosevelt-intl-news__meta) {
		margin: 0.5rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.92rem;
		line-height: 1.5;
	}

	.roosevelt-intl-faq__list {
		display: grid;
		gap: 0.6rem;
		max-width: 52rem;
	}

	.roosevelt-intl-faq details {
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.8rem;
	}

	.roosevelt-intl-faq summary {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		padding: 1.1rem 1.25rem;
		font-weight: 700;
		list-style: none;
		cursor: pointer;
	}

	.roosevelt-intl-faq summary::-webkit-details-marker {
		display: none;
	}

	.roosevelt-intl-faq summary::after {
		flex: 0 0 auto;
		color: var(--roosevelt-color-primary);
		font-size: 1.4rem;
		font-weight: 400;
		line-height: 1;
		content: "+";
	}

	.roosevelt-intl-faq details[open] summary::after {
		content: "\2212";
	}

	.roosevelt-intl-faq details p {
		margin: 0;
		padding: 0 1.25rem 1.2rem;
		color: var(--roosevelt-muted-ink);
		line-height: 1.6;
	}

	.roosevelt-intl-contact {
		display: grid;
		grid-template-columns: minmax(0, 1.4fr) auto;
		align-items: center;
		gap: 1.5rem 3rem;
		padding: clamp(1.75rem, 4vw, 3rem);
		border-radius: 1.5rem;
		background: linear-gradient(120deg, #2b0718, var(--roosevelt-color-primary));
		color: #fff;
	}

	.roosevelt-intl-contact .roosevelt-label {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-intl-contact p:not(.roosevelt-label) {
		margin: 0.8rem 0 0;
		color: rgba(255, 255, 255, 0.85);
	}

	.roosevelt-intl-contact__actions {
		display: grid;
		justify-items: start;
		gap: 0.9rem;
	}

	.roosevelt-intl-contact .roosevelt-button {
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
	}

	.roosevelt-intl-contact__link {
		color: var(--roosevelt-color-primary);
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-intl-contact .roosevelt-intl-contact__link {
		color: #fff;
	}
}

@media (max-width: 1024px) {

	.roosevelt-intl-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		row-gap: 1.75rem;
	}

	.roosevelt-intl-steps li:nth-child(3)::before {
		display: none;
	}
}

@media (max-width: 900px) {

	.roosevelt-intl-hero,
	.roosevelt-intl-intro,
	.roosevelt-intl-agreements,
	.roosevelt-intl-contact {
		grid-template-columns: 1fr;
	}

	.roosevelt-intl-hero__copy {
		padding-left: clamp(1.25rem, 5vw, 5rem);
	}

	.roosevelt-intl-hero__media {
		min-height: 15rem;
	}

	.roosevelt-intl-intro__figures {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-intl-intro__figures div:nth-child(3) {
		padding-left: 0;
		border-left: 0;
	}

	.roosevelt-intl-news__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 620px) {

	.roosevelt-intl-hero__profiles,
	.roosevelt-intl-checklists,
	.roosevelt-intl-steps {
		grid-template-columns: 1fr;
	}

	.roosevelt-intl-steps li::before {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {

	.roosevelt-intl-program,
	.roosevelt-intl-news__card,
	.roosevelt-intl-hero__profiles a {
		transition: none;
	}
}

/* Numbered steps (Bolsa Laboral). */
@media all {

	.roosevelt-institutional__step-list {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 1rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-institutional__step {
		position: relative;
		padding: 1.5rem 1.3rem;
		border-radius: 1rem;
		background: var(--roosevelt-home-gray);
	}

	.roosevelt-institutional__step-number {
		display: inline-flex;
		width: 2.4rem;
		height: 2.4rem;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		background: var(--roosevelt-yellow);
		color: var(--roosevelt-ink);
		font-weight: 780;
	}

	.roosevelt-institutional__step h3 {
		margin: 1rem 0 0;
		font-size: 1.08rem;
	}

	.roosevelt-institutional__step p {
		margin: 0.45rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.94rem;
		line-height: 1.55;
	}
}

@media (max-width: 900px) {

	.roosevelt-institutional__step-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {

	.roosevelt-institutional__step-list {
		grid-template-columns: 1fr;
	}
}

/* Bolsa Laboral portal: openings, inline details and applications. */
@media all {

	.roosevelt-jobs .roosevelt-label {
		margin: 0 0 0.6rem;
		color: var(--roosevelt-color-primary);
		font-size: 0.78rem;
		font-weight: 750;
	}

	.roosevelt-jobs__filters input,
	.roosevelt-jobs__filters select {
		box-sizing: border-box;
		width: 100%;
		min-height: 2.9rem;
		padding: 0.6rem 0.85rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.6rem;
		background: #fff;
		color: var(--roosevelt-ink);
		font: inherit;
	}

	.roosevelt-jobs__filters {
		display: grid;
		grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) auto;
		align-items: end;
		gap: 0.85rem;
		margin-bottom: 2rem;
		padding: 1.25rem;
		border-radius: 1rem;
		background: var(--roosevelt-home-gray);
	}

	.roosevelt-jobs__filters label span {
		display: block;
		margin-bottom: 0.35rem;
		font-size: 0.8rem;
		font-weight: 700;
	}

	.roosevelt-jobs__filters .roosevelt-button {
		min-height: 2.9rem;
		border: 0;
		cursor: pointer;
	}

	/* Cards grow in place: no scroll anchoring against the sticky sidebar. */
	.roosevelt-jobs__layout {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(16rem, 20rem);
		align-items: start;
		gap: clamp(1.5rem, 3vw, 2.5rem);
		overflow-anchor: none;
	}

	.roosevelt-jobs__count {
		margin: 0 0 1rem;
		font-size: 1.1rem;
	}

	.roosevelt-jobs__list {
		display: grid;
		gap: 0.9rem;
	}

	.roosevelt-jobs__card {
		position: relative;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
		box-shadow: 0 0.7rem 2.2rem rgba(20, 20, 20, 0.045);
		transition: border-color var(--roosevelt-transition), box-shadow var(--roosevelt-transition);
	}

	.roosevelt-jobs__card:hover,
	.roosevelt-jobs__card:focus-within,
	.roosevelt-jobs__card.is-open {
		border-color: color-mix(in srgb, var(--roosevelt-color-primary) 38%, var(--roosevelt-color-border));
		box-shadow: 0 1rem 2.6rem rgba(20, 20, 20, 0.09);
	}

	/* The stretched title link makes the whole summary one target. */
	.roosevelt-jobs__card-summary {
		position: relative;
		padding: clamp(1.25rem, 2.4vw, 1.75rem);
		padding-right: clamp(3.5rem, 6vw, 4.5rem);
	}

	.roosevelt-jobs__card h3 {
		margin: 0.75rem 0 0;
		font-size: 1.2rem;
		line-height: 1.3;
	}

	.roosevelt-jobs__card h3 a {
		color: var(--roosevelt-ink);
		text-decoration: none;
	}

	.roosevelt-jobs__card-toggle::after {
		position: absolute;
		inset: 0;
		z-index: 1;
		border-radius: 1rem;
		content: "";
		cursor: pointer;
	}

	.roosevelt-jobs__card-toggle:focus-visible {
		outline: none;
	}

	.roosevelt-jobs__card-toggle:focus-visible::after {
		box-shadow: var(--roosevelt-focus-ring);
	}

	.roosevelt-jobs__card-summary:hover h3 a,
	.roosevelt-jobs__card.is-open h3 a {
		color: var(--roosevelt-color-primary);
	}

	.roosevelt-jobs__card-chevron {
		position: absolute;
		top: calc(50% - 1.15rem);
		right: clamp(1.1rem, 2.4vw, 1.6rem);
		display: grid;
		width: 2.3rem;
		height: 2.3rem;
		place-items: center;
		border-radius: 50%;
		background: var(--roosevelt-home-gray);
		transition: background-color 160ms ease, color 160ms ease;
	}

	/* A centered SVG arrow: opening only rotates it, it never shifts. */
	.roosevelt-jobs__card-chevron svg {
		width: 1.1rem;
		height: 1.1rem;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 2.2;
		transition: transform 200ms ease;
	}

	.roosevelt-jobs__card-summary:hover .roosevelt-jobs__card-chevron {
		background: color-mix(in srgb, var(--roosevelt-color-primary) 12%, #fff);
		color: var(--roosevelt-color-primary);
	}

	.roosevelt-jobs__card.is-open .roosevelt-jobs__card-chevron {
		background: var(--roosevelt-color-primary);
		color: #fff;
	}

	.roosevelt-jobs__card.is-open .roosevelt-jobs__card-chevron svg {
		transform: rotate(180deg);
	}

	.roosevelt-jobs__card.is-loading .roosevelt-jobs__card-chevron svg {
		animation: roosevelt-jobs-spin 700ms linear infinite;
	}

	/* Panel: animates its height with grid rows; closed panels are inert. */
	.roosevelt-jobs__card-panel {
		display: grid;
		grid-template-rows: 0fr;
		transition: grid-template-rows 280ms ease;
	}

	.roosevelt-jobs__card.is-open .roosevelt-jobs__card-panel {
		grid-template-rows: 1fr;
	}

	.roosevelt-jobs__card.is-instant .roosevelt-jobs__card-panel,
	.roosevelt-jobs__card.is-instant .roosevelt-jobs__detail {
		transition: none;
	}

	.roosevelt-jobs__card-panel-inner {
		min-height: 0;
		overflow: hidden;
	}

	.roosevelt-jobs__card .roosevelt-jobs__detail {
		margin: 0 clamp(1.25rem, 2.4vw, 1.75rem) clamp(1.25rem, 2.4vw, 1.75rem);
		padding-top: 1.25rem;
		border-top: 1px solid var(--roosevelt-color-border);
		opacity: 0;
		transition: opacity 200ms ease;
	}

	.roosevelt-jobs__card.is-open .roosevelt-jobs__detail {
		opacity: 1;
	}

	@keyframes roosevelt-jobs-spin {

		to {
			transform: rotate(360deg);
		}
	}

	.roosevelt-jobs__card-tags {
		display: flex;
		flex-wrap: wrap;
		gap: 0.4rem;
	}

	.roosevelt-jobs__tag {
		padding: 0.25rem 0.65rem;
		border-radius: 999px;
		background: var(--roosevelt-home-gray);
		font-size: 0.75rem;
		font-weight: 700;
	}

	.roosevelt-jobs__tag--type {
		background: color-mix(in srgb, var(--roosevelt-color-primary) 12%, #fff);
		color: var(--roosevelt-color-primary);
	}

	.roosevelt-jobs__tag--applied {
		background: color-mix(in srgb, var(--roosevelt-yellow) 45%, #fff);
	}

	.roosevelt-jobs__company {
		margin: 0.3rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-weight: 650;
	}

	.roosevelt-jobs__meta {
		display: flex;
		flex-wrap: wrap;
		gap: 0.35rem 1.1rem;
		margin: 0.8rem 0 0;
		padding: 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.8rem;
		list-style: none;
	}

	.roosevelt-jobs__meta li {
		display: inline-flex;
		align-items: center;
		gap: 0.45rem;
	}

	.roosevelt-jobs__meta li::before {
		flex: 0 0 auto;
		width: 0.38rem;
		height: 0.38rem;
		border-radius: 50%;
		background: var(--roosevelt-color-primary);
		content: "";
	}

	.roosevelt-jobs__applications {
		position: sticky;
		top: 8rem;
		padding: 1.4rem;
		border-radius: 1rem;
		background: var(--roosevelt-brand-dark);
		color: #fff;
	}

	.roosevelt-jobs__applications h2 {
		margin: 0 0 1rem;
		font-size: 1.15rem;
	}

	.roosevelt-jobs__applications p {
		margin: 0;
		color: rgba(255, 255, 255, 0.82);
	}

	.roosevelt-jobs__applications ul {
		display: grid;
		gap: 0.9rem;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-jobs__applications a {
		color: #fff;
		font-weight: 700;
	}

	.roosevelt-jobs__applications li span {
		display: block;
		margin-top: 0.2rem;
		color: var(--roosevelt-yellow);
		font-size: 0.82rem;
	}

	.roosevelt-jobs__empty {
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-jobs__facts {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
		gap: 1rem;
		margin: 1.25rem 0;
	}

	.roosevelt-jobs__facts dt {
		color: var(--roosevelt-muted-ink);
		font-size: 0.78rem;
		font-weight: 700;
	}

	.roosevelt-jobs__facts dd {
		margin: 0.2rem 0 0;
		font-weight: 650;
	}

	.roosevelt-jobs__content h3 {
		margin: 1.5rem 0 0.5rem;
		font-size: 1.05rem;
	}

	.roosevelt-jobs__content > :first-child {
		margin-top: 0;
	}

	.roosevelt-jobs__content li {
		margin-bottom: 0.35rem;
		font-size: 14px;
		line-height: 1.55;
	}

	.roosevelt-jobs__apply {
		margin-top: 1.75rem;
		padding-top: 1.5rem;
		border-top: 1px solid var(--roosevelt-color-border);
	}

	.roosevelt-jobs__apply .roosevelt-button {
		border: 0;
		cursor: pointer;
	}

	.roosevelt-jobs__apply p {
		margin: 0.85rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.88rem;
	}

	.roosevelt-jobs__apply .roosevelt-jobs__applied {
		margin: 0;
		color: var(--roosevelt-ink);
		font-weight: 650;
	}

	.roosevelt-jobs__notice {
		margin-bottom: 1.25rem;
		padding: 1rem 1.2rem;
		border-left: 4px solid var(--roosevelt-yellow);
		border-radius: 0.6rem;
		background: var(--roosevelt-home-gray);
	}

	.roosevelt-jobs__notice p {
		margin: 0;
	}

	.roosevelt-jobs__notice--success {
		border-left-color: #1f7a4d;
		background: #e9f6ef;
	}

	.roosevelt-jobs[aria-busy="true"] {
		opacity: 0.55;
		transition: opacity 120ms ease;
		pointer-events: none;
	}

	.roosevelt-jobs__career {
		display: grid;
		grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
		gap: clamp(1.25rem, 3vw, 2.5rem);
		margin-bottom: 2rem;
		padding: clamp(1.25rem, 2.6vw, 2rem);
		border: 1px solid var(--roosevelt-color-border);
		border-top: 4px solid var(--roosevelt-yellow);
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
	}

	.roosevelt-jobs__career h2 {
		margin: 0;
		font-size: clamp(1.4rem, 2.6vw, 2rem);
		line-height: 1.15;
	}

	.roosevelt-jobs__career-copy > p:not(.roosevelt-label) {
		margin: 0.7rem 0 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.6;
	}

	.roosevelt-jobs__career .roosevelt-jobs__facts {
		margin-bottom: 0.75rem;
	}

	.roosevelt-jobs__career-links {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem 1.4rem;
	}

	.roosevelt-jobs__career-links a {
		color: var(--roosevelt-color-primary);
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-jobs__career-fields {
		padding: 1.1rem 1.25rem;
		border-radius: 0.8rem;
		background: var(--roosevelt-home-gray);
	}

	.roosevelt-jobs__career-fields h3 {
		margin: 0 0 0.6rem;
		font-size: 0.95rem;
	}

	.roosevelt-jobs__career-fields ul {
		display: grid;
		gap: 0.4rem;
		margin: 0;
		padding-left: 1.1rem;
		font-size: 0.92rem;
	}

	.roosevelt-jobs__toasts {
		position: fixed;
		right: 1rem;
		bottom: 1rem;
		z-index: 1000;
		display: grid;
		gap: 0.6rem;
		width: min(24rem, calc(100vw - 2rem));
	}

	.roosevelt-jobs__toast {
		padding: 0.9rem 1.1rem;
		border-left: 4px solid var(--roosevelt-yellow);
		border-radius: 0.6rem;
		background: #141414;
		box-shadow: var(--roosevelt-home-shadow);
		color: #fff;
		font-size: 0.92rem;
		line-height: 1.45;
		animation: roosevelt-jobs-toast-in 200ms ease-out;
		transition: opacity 400ms ease, transform 400ms ease;
	}

	.roosevelt-jobs__toast--success {
		border-left-color: #3ccf82;
	}

	.roosevelt-jobs__toast--error {
		border-left-color: #ff6b6b;
	}

	.roosevelt-jobs__toast.is-leaving {
		opacity: 0;
		transform: translateY(0.5rem);
	}

	@keyframes roosevelt-jobs-toast-in {

		from {
			opacity: 0;
			transform: translateY(0.75rem);
		}
	}
}

@media (max-width: 900px) {

	.roosevelt-jobs__layout {
		grid-template-columns: 1fr;
	}

	.roosevelt-jobs__filters {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.roosevelt-jobs__applications {
		position: static;
	}

	.roosevelt-jobs__career {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 620px) {

	.roosevelt-jobs__filters {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {

	.roosevelt-jobs__card,
	.roosevelt-jobs__card-panel,
	.roosevelt-jobs__card-chevron,
	.roosevelt-jobs__card-chevron svg,
	.roosevelt-jobs__card .roosevelt-jobs__detail,
	.roosevelt-jobs__toast,
	.roosevelt-jobs-hero__chips li,
	.roosevelt-jobs-landing__service {
		transition: none;
		animation: none;
	}
}

/* Bolsa Laboral landing: layered hero, sign-in card, sections. */
@media all {

	.roosevelt-jobs-hero {
		position: relative;
		min-height: clamp(36rem, 70vh, 46rem);
		isolation: isolate;
		overflow: hidden;
		background: #2b0718;
		color: #fff;
	}

	.roosevelt-jobs-hero__media,
	.roosevelt-jobs-hero__layers,
	.roosevelt-jobs-hero__layers > span {
		position: absolute;
		inset: 0;
	}

	/* Softened team photo; the presenter sits between copy and card. */
	.roosevelt-jobs-hero__media img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: 62% 30%;
	}

	.roosevelt-jobs-hero__shade {
		background: linear-gradient(90deg, rgba(43, 7, 24, 0.9) 0%, rgba(110, 0, 58, 0.55) 60%, rgba(110, 0, 58, 0.45) 100%);
	}

	.roosevelt-jobs-hero__grid {
		background-image: radial-gradient(rgba(255, 255, 255, 0.16) 1px, transparent 1.4px);
		background-size: 22px 22px;
		mask-image: linear-gradient(110deg, #000 0%, transparent 55%);
		opacity: 0.55;
	}

	.roosevelt-jobs-hero__inner {
		position: relative;
		z-index: 1;
		padding-block: clamp(1.5rem, 4vw, 2.5rem) clamp(3rem, 7vw, 5.5rem);
	}

	.roosevelt-jobs-hero .roosevelt-page-breadcrumb a {
		color: rgba(255, 255, 255, 0.85);
	}

	.roosevelt-jobs-hero__layout {
		display: grid;
		grid-template-columns: minmax(0, 38rem) minmax(19rem, 25rem);
		justify-content: space-between;
		align-items: center;
		gap: clamp(1.75rem, 3.5vw, 3.5rem);
		margin-top: clamp(2rem, 6vw, 4.5rem);
	}

	.roosevelt-jobs-hero__copy h1 {
		max-width: 44rem;
		margin: 0.9rem 0 0;
		font-size: clamp(2.3rem, 4.2vw, 3.8rem);
		font-weight: 760;
		line-height: 1.05;
		text-wrap: balance;
	}

	.roosevelt-jobs-hero__copy > p:not(.roosevelt-eyebrow) {
		max-width: 38rem;
		margin: 1.2rem 0 0;
		color: rgba(255, 255, 255, 0.86);
		font-size: clamp(1rem, 1.4vw, 1.15rem);
		line-height: 1.6;
	}

	.roosevelt-jobs-hero__chips {
		display: flex;
		flex-wrap: wrap;
		gap: 0.75rem;
		margin: 2rem 0 0;
		padding: 0;
		list-style: none;
	}

	.roosevelt-jobs-hero__chips li {
		display: flex;
		align-items: baseline;
		gap: 0.45rem;
		padding: 0.65rem 1rem;
		border: 1px solid rgba(255, 255, 255, 0.22);
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.08);
		backdrop-filter: blur(8px);
		animation: roosevelt-jobs-float 6s ease-in-out infinite;
	}

	.roosevelt-jobs-hero__chips li:nth-child(2) {
		animation-delay: -2s;
	}

	.roosevelt-jobs-hero__chips li:nth-child(3) {
		animation-delay: -4s;
	}

	.roosevelt-jobs-hero__chips strong {
		color: var(--roosevelt-yellow);
		font-size: 1.35rem;
		line-height: 1;
	}

	.roosevelt-jobs-hero__chips span {
		font-size: 0.88rem;
	}

	.roosevelt-jobs-hero__card {
		scroll-margin-top: 9rem;
		padding: clamp(1.5rem, 3vw, 2.2rem);
		border: 1px solid rgba(255, 255, 255, 0.35);
		border-radius: 1.25rem;
		background: rgba(255, 255, 255, 0.94);
		box-shadow: 0 2rem 4rem rgba(10, 0, 6, 0.35);
		color: var(--roosevelt-ink);
		backdrop-filter: blur(14px);
	}

	.roosevelt-jobs-hero__card-label {
		margin: 0;
		color: var(--roosevelt-color-primary);
		font-size: 0.75rem;
		font-weight: 760;
		letter-spacing: 0.04em;
	}

	.roosevelt-jobs-hero__card h2 {
		margin: 0.45rem 0 1.2rem;
		font-size: clamp(1.4rem, 2.2vw, 1.75rem);
		line-height: 1.15;
	}

	.roosevelt-jobs-hero__form {
		display: grid;
		gap: 0.4rem;
	}

	.roosevelt-jobs-hero__form label {
		font-size: 0.85rem;
		font-weight: 650;
	}

	.roosevelt-jobs-hero__form input[type="text"],
	.roosevelt-jobs-hero__form input[type="password"] {
		box-sizing: border-box;
		width: 100%;
		min-height: 2.9rem;
		margin-bottom: 0.6rem;
		padding: 0.6rem 0.9rem;
		border: 1px solid #d6d6d9;
		border-radius: 0.65rem;
		background: #fff;
		color: var(--roosevelt-ink);
		font: inherit;
	}

	.roosevelt-jobs-hero__form input:focus-visible {
		border-color: var(--roosevelt-color-primary);
		outline: none;
		box-shadow: 0 0 0 3px color-mix(in srgb, var(--roosevelt-color-primary) 22%, transparent);
	}

	.roosevelt-jobs-hero__form .roosevelt-jobs-hero__remember {
		display: inline-flex;
		align-items: center;
		gap: 0.45rem;
		margin-bottom: 0.8rem;
		font-weight: 500;
	}

	.roosevelt-jobs-hero__form .roosevelt-button,
	.roosevelt-jobs-hero__card--account .roosevelt-button {
		width: 100%;
		min-height: 3rem;
		justify-content: center;
		border: 0;
		cursor: pointer;
	}

	.roosevelt-jobs-hero__card-links {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 0.5rem;
		margin-top: 1rem;
		font-size: 0.88rem;
	}

	.roosevelt-jobs-hero__card-links a,
	.roosevelt-jobs-hero__logout {
		color: var(--roosevelt-color-primary);
		font-weight: 650;
	}

	.roosevelt-jobs-hero__note {
		margin: 1rem 0 0;
		padding-top: 0.9rem;
		border-top: 1px solid var(--roosevelt-color-border);
		color: var(--roosevelt-muted-ink);
		font-size: 0.8rem;
	}

	.roosevelt-jobs-hero__error {
		margin: -0.4rem 0 1rem;
		padding: 0.7rem 0.9rem;
		border-left: 3px solid #c62828;
		border-radius: 0.5rem;
		background: #fdecec;
		color: #8e1c1c;
		font-size: 0.88rem;
	}

	.roosevelt-jobs-hero__profile {
		margin: -0.8rem 0 1.2rem;
		color: var(--roosevelt-muted-ink);
	}

	.roosevelt-jobs-hero__summary {
		display: flex;
		align-items: baseline;
		gap: 0.6rem;
		margin-bottom: 1.2rem;
		padding: 1rem 1.1rem;
		border-radius: 0.8rem;
		background: var(--roosevelt-home-gray);
	}

	.roosevelt-jobs-hero__summary strong {
		color: var(--roosevelt-color-primary);
		font-size: 2rem;
		line-height: 1;
	}

	.roosevelt-jobs-hero__logout {
		display: block;
		margin-top: 0.9rem;
		text-align: center;
	}

	.roosevelt-jobs-page__body {
		padding-block: clamp(3rem, 6vw, 5rem);
	}

	.roosevelt-jobs-icon {
		width: 1.5rem;
		height: 1.5rem;
		fill: none;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.8;
	}

	.roosevelt-jobs-landing > section {
		margin-bottom: clamp(4rem, 8vw, 6.5rem);
	}

	.roosevelt-jobs-landing .roosevelt-label {
		margin: 0 0 0.6rem;
		color: var(--roosevelt-color-primary);
		font-size: 0.78rem;
		font-weight: 750;
	}

	.roosevelt-jobs-landing h2 {
		margin: 0;
		font-size: clamp(1.8rem, 3.4vw, 2.7rem);
		font-weight: 730;
		line-height: 1.1;
		text-wrap: balance;
	}

	.roosevelt-jobs-landing__heading {
		max-width: 46rem;
		margin-bottom: clamp(1.75rem, 3.5vw, 2.75rem);
	}

	.roosevelt-jobs-landing__heading--split {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-end;
		justify-content: space-between;
		gap: 1rem;
		max-width: none;
	}

	.roosevelt-jobs-landing__intro {
		display: grid;
		grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
		align-items: center;
		gap: clamp(2rem, 5vw, 4.5rem);
	}

	.roosevelt-jobs-landing__intro-media {
		position: relative;
	}

	.roosevelt-jobs-landing__intro-media img {
		display: block;
		width: 100%;
		aspect-ratio: 886 / 836;
		border-radius: 1.25rem;
		box-shadow: 1.25rem 1.25rem 0 var(--roosevelt-yellow);
		object-fit: cover;
		object-position: center 30%;
	}

	.roosevelt-jobs-landing__intro-badge {
		display: inline-block;
		margin-top: 1.5rem;
		padding: 0.75rem 1rem;
		border-radius: 0.75rem;
		background: var(--roosevelt-color-primary);
		box-shadow: var(--roosevelt-home-shadow);
		color: #fff;
		font-size: 0.88rem;
		font-weight: 700;
	}

	.roosevelt-jobs-landing__intro-copy > p:not(.roosevelt-label) {
		margin: 1rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 1.05rem;
		line-height: 1.7;
	}

	.roosevelt-jobs-landing__audiences {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.85rem;
		margin-top: 1.75rem;
	}

	.roosevelt-jobs-landing__audiences article {
		padding: 1.1rem;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 0.9rem;
	}

	.roosevelt-jobs-landing__audiences .roosevelt-jobs-icon {
		color: var(--roosevelt-color-primary);
	}

	.roosevelt-jobs-landing__audiences h3 {
		margin: 0.6rem 0 0;
		font-size: 1rem;
	}

	.roosevelt-jobs-landing__audiences p {
		margin: 0.35rem 0 0;
		color: var(--roosevelt-muted-ink);
		font-size: 0.88rem;
		line-height: 1.5;
	}

	.roosevelt-jobs-landing__service-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-jobs-landing__service {
		position: relative;
		padding: clamp(1.4rem, 2.6vw, 2rem);
		overflow: hidden;
		border: 1px solid var(--roosevelt-color-border);
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
		transition: border-color var(--roosevelt-transition), box-shadow var(--roosevelt-transition), transform var(--roosevelt-transition);
	}

	.roosevelt-jobs-landing__service::after {
		position: absolute;
		inset: auto 0 0;
		height: 3px;
		background: var(--roosevelt-yellow);
		content: "";
		transform: scaleX(0);
		transform-origin: left;
		transition: transform 260ms ease;
	}

	.roosevelt-jobs-landing__service:hover {
		border-color: color-mix(in srgb, var(--roosevelt-color-primary) 30%, var(--roosevelt-color-border));
		box-shadow: 0 1rem 2.5rem rgba(20, 20, 20, 0.08);
		transform: translateY(-0.2rem);
	}

	.roosevelt-jobs-landing__service:hover::after {
		transform: scaleX(1);
	}

	.roosevelt-jobs-landing__service-icon {
		display: inline-grid;
		width: 3rem;
		height: 3rem;
		place-items: center;
		border-radius: 0.8rem;
		background: color-mix(in srgb, var(--roosevelt-color-primary) 10%, #fff);
		color: var(--roosevelt-color-primary);
	}

	.roosevelt-jobs-landing__service h3 {
		margin: 1rem 0 0;
		font-size: 1.1rem;
	}

	.roosevelt-jobs-landing__service p {
		margin: 0.5rem 0 0;
		color: var(--roosevelt-muted-ink);
		line-height: 1.55;
	}

	.roosevelt-jobs-landing__figures {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
		align-items: center;
		gap: clamp(1.5rem, 4vw, 3.5rem);
		padding: clamp(2rem, 5vw, 3.5rem);
		overflow: hidden;
		border-radius: 1.5rem;
		background: linear-gradient(120deg, #2b0718, var(--roosevelt-color-primary));
		color: #fff;
	}

	.roosevelt-jobs-landing__figures::before {
		position: absolute;
		inset: 0;
		background-image: radial-gradient(rgba(255, 255, 255, 0.14) 1px, transparent 1.4px);
		background-size: 20px 20px;
		content: "";
		mask-image: linear-gradient(270deg, #000, transparent 70%);
	}

	.roosevelt-jobs-landing__figures > * {
		position: relative;
	}

	.roosevelt-jobs-landing__figures .roosevelt-label {
		color: var(--roosevelt-yellow);
	}

	.roosevelt-jobs-landing__figures-copy > p:not(.roosevelt-label) {
		margin: 0.9rem 0 0;
		color: rgba(255, 255, 255, 0.8);
	}

	.roosevelt-jobs-landing__figure-list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1px;
		margin: 0;
		overflow: hidden;
		border-radius: 1rem;
		background: rgba(255, 255, 255, 0.18);
	}

	.roosevelt-jobs-landing__figure-list div {
		display: flex;
		flex-direction: column-reverse;
		gap: 0.35rem;
		padding: clamp(1.1rem, 2.4vw, 1.6rem);
		background: rgba(43, 7, 24, 0.55);
	}

	.roosevelt-jobs-landing__figure-list dt {
		color: rgba(255, 255, 255, 0.82);
		font-size: 0.9rem;
	}

	.roosevelt-jobs-landing__figure-list dd {
		margin: 0;
		color: var(--roosevelt-yellow);
		font-size: clamp(2.2rem, 4.5vw, 3.2rem);
		font-weight: 780;
		line-height: 1;
		font-variant-numeric: tabular-nums;
	}

	.roosevelt-jobs-landing__more {
		color: var(--roosevelt-color-primary);
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-jobs-landing__recent-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1rem;
	}

	.roosevelt-jobs-landing__recent-grid .roosevelt-jobs__card {
		display: flex;
		flex-direction: column;
		padding: clamp(1.25rem, 2.4vw, 1.75rem);
	}

	.roosevelt-jobs-landing__card-link {
		margin-top: auto;
		padding-top: 1rem;
		color: var(--roosevelt-color-primary);
		font-weight: 700;
		text-decoration: none;
	}

	.roosevelt-jobs-landing__card-link::after {
		position: absolute;
		inset: 0;
		border-radius: 1rem;
		content: "";
	}

	.roosevelt-jobs-landing__card-link:focus-visible {
		outline: none;
	}

	.roosevelt-jobs-landing__card-link:focus-visible::after {
		box-shadow: var(--roosevelt-focus-ring);
	}

	.roosevelt-jobs-landing__employers {
		display: grid;
		grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
		align-items: center;
		gap: 2rem;
		scroll-margin-top: 9rem;
		padding: clamp(1.75rem, 4vw, 3rem);
		border-radius: 1.5rem;
		background: var(--roosevelt-home-gray);
	}

	.roosevelt-jobs-landing__employers ul {
		display: grid;
		gap: 0.5rem;
		margin: 1.2rem 0 0;
		padding-left: 1.2rem;
	}

	.roosevelt-jobs-landing__employers-cta {
		display: grid;
		gap: 0.4rem;
		padding: 1.5rem;
		border-radius: 1rem;
		background: var(--roosevelt-color-background);
		box-shadow: var(--roosevelt-home-shadow);
	}

	.roosevelt-jobs-landing__employers-cta span {
		color: var(--roosevelt-muted-ink);
		font-size: 0.9rem;
	}

	.roosevelt-jobs-landing__employers-cta a {
		color: var(--roosevelt-color-primary);
		font-size: clamp(1.6rem, 3vw, 2.2rem);
		font-weight: 780;
		text-decoration: none;
	}

	@keyframes roosevelt-jobs-float {

		50% {
			transform: translateY(-5px);
		}
	}
}

@media (max-width: 1024px) {

	.roosevelt-jobs-landing__service-grid,
	.roosevelt-jobs-landing__recent-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {

	.roosevelt-jobs-hero__layout,
	.roosevelt-jobs-landing__intro,
	.roosevelt-jobs-landing__figures,
	.roosevelt-jobs-landing__employers {
		grid-template-columns: 1fr;
	}

	.roosevelt-jobs-hero__layout {
		margin-top: 1.5rem;
	}
}

@media (max-width: 620px) {

	.roosevelt-jobs-landing__audiences,
	.roosevelt-jobs-landing__service-grid,
	.roosevelt-jobs-landing__recent-grid,
	.roosevelt-jobs-landing__figure-list {
		grid-template-columns: 1fr;
	}

	.roosevelt-jobs-landing__intro-media img {
		box-shadow: 0.6rem 0.6rem 0 var(--roosevelt-yellow);
	}
}

/* stylelint-enable no-descending-specificity */

/* Shared 550px hero height for static and career pages. */
@media all {

	body .roosevelt-career__hero,
	body .roosevelt-about__hero,
	body .roosevelt-mesa__hero,
	body .roosevelt-authorities__hero,
	body .roosevelt-research__hero,
	body .roosevelt-licensing__hero {
		height: 550px;
		min-height: 550px;
		max-height: 550px;
	}

	body .roosevelt-career__hero-inner,
	body .roosevelt-about__hero-inner,
	body .roosevelt-mesa__hero-inner,
	body .roosevelt-authorities__hero-inner,
	body .roosevelt-research__hero-inner,
	body .roosevelt-licensing__hero-inner {
		box-sizing: border-box;
		height: 100%;
		min-height: 0;
		max-height: 550px;
		padding-block: 2rem;
	}

	body .roosevelt-career__hero-inner,
	body .roosevelt-mesa__hero-inner,
	body .roosevelt-authorities__hero-inner,
	body .roosevelt-research__hero-inner,
	body .roosevelt-licensing__hero-inner {
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: clamp(1.5rem, 3vw, 2.25rem);
	}

	body .roosevelt-institutional-page .roosevelt-institutional__hero {
		height: 550px;
		min-height: 550px;
		max-height: 550px;
	}

	body .roosevelt-institutional-page .roosevelt-institutional__hero-inner {
		box-sizing: border-box;
		height: 100%;
		min-height: 0;
		max-height: 550px;
		padding-block: 2rem;
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: clamp(1.5rem, 3vw, 2.25rem);
	}
}

@media all {

	body .roosevelt-about__hero-inner {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		gap: clamp(1.5rem, 3vw, 2.25rem);
	}
}

@media all {

	body .roosevelt-institutional-page .roosevelt-institutional__hero-copy {
		margin-top: 0;
	}
}

/* Mega menu: one consistent style for tabs, direct links and panel links. */
@media all {

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tab {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.75rem;
		width: 100%;
		min-height: 3.25rem;
		margin: 0;
		padding: 0.75rem 1rem;
		border: 0;
		border-left: 3px solid transparent;
		border-radius: 0 0.4rem 0.4rem 0;
		background: transparent;
		color: #f5f5f5;
		font-size: clamp(1rem, 1.2vw, 1.1rem);
		font-weight: 700;
		line-height: 1.3;
		text-align: left;
		text-decoration: none;
		transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tab:hover,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tab:focus-visible,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tab.is-active {
		border-left-color: var(--roosevelt-yellow);
		background: #1c1c1c;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tabs + .roosevelt-mega__tab--link {
		margin-top: 0;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links {
		gap: 0 2.5rem;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li > a,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links ul a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		padding: 0.7rem 0.6rem 0.7rem 0.25rem;
		border-bottom: 1px solid #2a2a2a;
		color: #ececec;
		font-size: 0.95rem;
		font-weight: 500;
		line-height: 1.4;
		text-decoration: none;
		transition: color 150ms ease, padding 150ms ease;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__featured-links > li > a {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		padding: 0.55rem 0.9rem;
		border: 1px solid rgba(254, 220, 0, 0.5);
		border-radius: 0.4rem;
		color: var(--roosevelt-yellow);
		font-size: 0.95rem;
		font-weight: 700;
		text-decoration: none;
		transition: background-color 150ms ease, color 150ms ease;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links ul li + li {
		border: 0;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li:nth-child(n) {
		border: 0;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li > a::after,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links ul a::after {
		color: var(--roosevelt-yellow);
		content: "\2192";
		opacity: 0;
		transform: translateX(-4px);
		transition: opacity 150ms ease, transform 150ms ease;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li:has(> ul) > a::after {
		content: none;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li:has(> ul) > a {
		padding: 0.25rem 0 0.5rem;
		border-bottom: 0;
		color: #bdbdbd;
		font-size: 0.78rem;
		font-weight: 700;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li > a:hover,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li > a:focus-visible,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links ul a:hover,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links ul a:focus-visible {
		padding-right: 0.25rem;
		padding-left: 0.6rem;
		color: var(--roosevelt-yellow);
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__featured-links > li > a:hover,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__featured-links > li > a:focus-visible {
		background: var(--roosevelt-yellow);
		color: #111;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li > a:hover::after,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li > a:focus-visible::after,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links ul a:hover::after,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links ul a:focus-visible::after {
		opacity: 1;
		transform: translateX(0);
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li:has(> ul) > a:hover,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links > li:has(> ul) > a:focus-visible {
		padding-left: 0;
		color: var(--roosevelt-yellow);
	}
}

@media (max-width: 540px) {

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tab {
		width: auto;
		min-height: 2.75rem;
		flex: 0 0 auto;
		padding: 0.55rem 0.85rem;
		border-left: 0;
		border-bottom: 2px solid transparent;
		border-radius: 0.4rem 0.4rem 0 0;
		font-size: 0.88rem;
		white-space: nowrap;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tab:hover,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tab:focus-visible,
	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tab.is-active {
		border-bottom-color: var(--roosevelt-yellow);
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__categories .roosevelt-mega__tabs + .roosevelt-mega__tab--link {
		margin-top: 0;
	}

	.roosevelt-header .roosevelt-header__menu.has-mega-navigation .roosevelt-mega__panel[data-roosevelt-menu-category] .roosevelt-mega__panel-links {
		grid-template-columns: minmax(0, 1fr);
	}
}
