.a2p-preflight,
.a2p-resources-featured,
.a2p-site-shell {
	--a2p-bg: var(--color-bg, var(--jm-color-bg, #0B0D10));
	--a2p-surface: var(--color-surface, var(--jm-color-surface, #151922));
	--a2p-surface-strong: var(--color-surface-alt, var(--jm-color-surface-strong, #242A36));
	--a2p-text: var(--color-text, var(--jm-color-text, #FFFFFF));
	--a2p-muted: var(--color-text-muted, var(--jm-color-muted, #C7CCD6));
	--a2p-link: var(--color-accent, var(--jm-color-link, #5DA9FF));
	--a2p-link-hover: var(--color-accent-hover, var(--jm-color-link-hover, #3D8BFF));
	--a2p-border: var(--jm-border, 1px solid #242A36);
	--a2p-radius-card: var(--jm-radius-card, 18px);
	--a2p-radius-panel: var(--jm-radius-panel, 24px);
	--a2p-space-xs: var(--jm-space-xs, .75rem);
	--a2p-space-sm: var(--jm-space-sm, 1rem);
	--a2p-space-md: var(--jm-space-md, 1.5rem);
	--a2p-space-lg: var(--jm-space-lg, 2rem);
	--a2p-space-xl: var(--jm-space-xl, 3rem);
	--a2p-space-2xl: var(--jm-space-2xl, 4rem);
	box-sizing: border-box;
	color: var(--a2p-text);
	font-family: var(--font-family, var(--jm-font-family, "Nunito", system-ui, sans-serif));
}

.a2p-preflight *,
.a2p-resources-featured *,
.a2p-site-shell * {
	box-sizing: border-box;
}

/* Preserve the native hidden-state contract even when component selectors set display. */
.a2p-preflight [hidden],
.a2p-resources-featured [hidden],
.a2p-site-shell [hidden] {
	display: none !important;
}

.a2p-preflight a,
.a2p-site-shell a {
	color: var(--a2p-link);
	text-underline-offset: .18em;
}

.a2p-preflight a:hover,
.a2p-preflight a:focus-visible,
.a2p-site-shell a:hover,
.a2p-site-shell a:focus-visible {
	color: var(--a2p-link-hover);
}

/* Preserve the site button treatment against the scoped link-color rules. */
.a2p-preflight .jm-button,
.a2p-site-shell .jm-button {
	color: var(--a2p-text) !important;
	text-decoration: none;
}

.a2p-preflight .jm-button:hover,
.a2p-preflight .jm-button:focus-visible,
.a2p-site-shell .jm-button:hover,
.a2p-site-shell .jm-button:focus-visible {
	color: var(--a2p-text) !important;
}

.a2p-preflight :focus-visible,
.a2p-site-shell :focus-visible {
	outline: 3px solid rgba(93, 169, 255, .55);
	outline-offset: 3px;
}

/* Current Resources hub integration. */


.a2p-resources-featured {
	margin-top: var(--a2p-space-xl);
}

.a2p-section-heading {
	max-width: 820px;
}

.a2p-section-heading > * + * {
	margin-top: .65rem;
}

.a2p-section-heading p,
.a2p-resources-featured p {
	color: var(--a2p-muted);
}

.a2p-featured-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: var(--a2p-space-md);
}

.a2p-featured-grid .jm-routing-tile {
	background: var(--a2p-surface);
	border: var(--a2p-border);
}

.a2p-featured-grid .jm-stack {
	display: grid;
	gap: .7rem;
}

/* Preflight */
.a2p-preflight {
	width: 100%;
	margin: var(--a2p-space-xl) 0 0;
	background: var(--a2p-surface);
	border: var(--a2p-border);
	border-radius: var(--a2p-radius-panel);
	overflow: hidden;
}

.a2p-preflight__header {
	display: grid;
	grid-template-columns: minmax(0, 1.7fr) minmax(260px, .7fr);
	gap: var(--a2p-space-xl);
	align-items: start;
	padding: clamp(1.5rem, 3vw, 2.75rem);
	border-bottom: var(--a2p-border);
}

.a2p-preflight__intro h2,
.a2p-results h3,
.a2p-result-group h4,
.a2p-page-hero h1,
.a2p-overview h2,
.a2p-authority-section h2,
.a2p-next-steps h2,
.a2p-related-content h2,
.a2p-advisory-note h2 {
	margin: 0;
	color: var(--a2p-text);
	font-family: inherit;
}

.a2p-preflight__intro h2 {
	font-size: clamp(1.65rem, 3vw, 2.25rem);
	line-height: 1.15;
}

.a2p-preflight__intro p {
	max-width: 72ch;
	margin: .8rem 0 0;
	color: var(--a2p-muted);
	font-size: 1.0625rem;
	line-height: 1.65;
}

.a2p-preflight__privacy {
	font-size: .9rem !important;
}

.a2p-preflight__support {
	padding-left: var(--a2p-space-md);
	border-left: var(--a2p-border);
}

.a2p-preflight__support strong {
	display: block;
	font-size: 1.05rem;
}

.a2p-preflight__support p {
	margin: .55rem 0 .75rem;
	color: var(--a2p-muted);
	font-size: .92rem;
	line-height: 1.55;
}

.a2p-preflight__form {
	padding: clamp(1.5rem, 3vw, 2.75rem);
}

.a2p-form-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: var(--a2p-space-sm);
}

.a2p-field {
	display: grid;
	gap: .45rem;
	align-content: start;
	margin: 0;
	color: var(--a2p-text);
	font-size: .95rem;
	font-weight: 700;
}

.a2p-field small,
.a2p-field-help {
	color: var(--a2p-muted);
	font-size: .8rem;
	font-weight: 400;
	line-height: 1.45;
}

.a2p-field select,
.a2p-state-search input {
	color-scheme: dark;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: .75rem .85rem;
	border: 1px solid var(--a2p-surface-strong);
	border-radius: 10px;
	background: var(--a2p-bg);
	color: var(--a2p-text);
	font: inherit;
	font-weight: 600;
	box-shadow: none;
}

.a2p-field select option,
.a2p-field select optgroup {
	background-color: #151922 !important;
	color: #FFFFFF !important;
}

.a2p-field select option:disabled {
	color: #C7CCD6 !important;
}

.a2p-field select:required:invalid {
	color: var(--a2p-muted);
}

.a2p-field select:required:valid {
	color: var(--a2p-text);
}

.a2p-state-selector,
.a2p-factors {
	margin: var(--a2p-space-md) 0 0;
	padding: var(--a2p-space-md);
	border: var(--a2p-border);
	border-radius: var(--a2p-radius-card);
	background: var(--a2p-bg);
}

.a2p-state-selector legend {
	padding: 0 .45rem;
	color: var(--a2p-text);
	font-size: 1.05rem;
	font-weight: 800;
}

.a2p-field-help {
	margin: 0 0 var(--a2p-space-sm);
}

.a2p-state-selector__toolbar {
	display: flex;
	justify-content: space-between;
	gap: var(--a2p-space-sm);
	align-items: center;
	margin-bottom: var(--a2p-space-sm);
}

.a2p-state-search {
	width: min(300px, 100%);
	margin: 0;
}

.a2p-state-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: .55rem .85rem;
	max-height: 275px;
	overflow: auto;
	padding: .2rem .45rem .2rem 0;
}

.a2p-factor-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: .7rem 1rem;
	margin-top: var(--a2p-space-sm);
}

.a2p-check {
	display: flex;
	gap: .55rem;
	align-items: flex-start;
	margin: 0;
	color: var(--a2p-muted);
	font-size: .88rem;
	font-weight: 600;
	line-height: 1.35;
	cursor: pointer;
}

.a2p-check--strong {
	color: var(--a2p-text);
	font-weight: 800;
}

.a2p-check input {
	width: 1.05rem;
	height: 1.05rem;
	margin: .12rem 0 0;
	accent-color: var(--a2p-link);
	flex: 0 0 auto;
}

.a2p-factors summary {
	color: var(--a2p-text);
	font-weight: 800;
	cursor: pointer;
}

.a2p-factors summary span {
	margin-left: .4rem;
	color: var(--a2p-muted);
	font-size: .82rem;
	font-weight: 400;
}

.a2p-form-actions,
.a2p-results__actions {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	align-items: center;
}

.a2p-form-actions {
	margin-top: var(--a2p-space-md);
}

.a2p-button {
	min-height: 44px;
	font-family: inherit;
	cursor: pointer;
}

/* The site accent is a light blue; dark token text keeps the primary CTA AA-readable. */
.a2p-preflight .a2p-button--primary {
	background: var(--a2p-link);
	color: var(--a2p-bg) !important;
}

.a2p-preflight .a2p-button--primary:hover,
.a2p-preflight .a2p-button--primary:focus-visible {
	background: var(--a2p-link-hover);
	color: var(--a2p-bg) !important;
}

.a2p-button[disabled] {
	opacity: .6;
	cursor: wait;
}

.a2p-form-status,
.a2p-share-status {
	color: var(--a2p-muted);
	font-size: .88rem;
}

.a2p-field-error {
	margin: .75rem 0 0;
	color: var(--a2p-text);
	font-weight: 800;
}

.a2p-results {
	padding: clamp(1.5rem, 3vw, 2.75rem);
	border-top: var(--a2p-border);
}

.a2p-results__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--a2p-space-lg);
	align-items: start;
}

.a2p-results__header p {
	margin: .55rem 0 0;
	color: var(--a2p-muted);
}

.a2p-share-status {
	min-height: 1.25rem;
	margin-top: .7rem;
}

.a2p-result-notice {
	margin-top: var(--a2p-space-md);
	padding: var(--a2p-space-sm) var(--a2p-space-md);
	border-left: 4px solid var(--a2p-link);
	background: var(--a2p-bg);
	color: var(--a2p-muted);
	line-height: 1.55;
}

.a2p-result-nav {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin-top: var(--a2p-space-md);
}

.a2p-result-nav a {
	display: inline-flex;
	gap: .5rem;
	align-items: center;
	min-height: 44px;
	padding: .6rem .85rem;
	border: var(--a2p-border);
	border-radius: 999px;
	background: var(--a2p-bg);
	color: var(--a2p-text);
	font-size: .85rem;
	font-weight: 700;
	text-decoration: none;
}

.a2p-result-nav a span {
	color: var(--a2p-link);
}

.a2p-result-group {
	margin-top: var(--a2p-space-xl);
}

.a2p-result-group__heading {
	display: flex;
	justify-content: space-between;
	gap: var(--a2p-space-sm);
	align-items: center;
	padding-bottom: .7rem;
	border-bottom: var(--a2p-border);
}

.a2p-result-group__heading h4 {
	font-size: 1.25rem;
}

.a2p-result-group__heading span,
.a2p-result-group--collapsed > summary span {
	color: var(--a2p-link);
	font-weight: 800;
}

.a2p-result-group__description {
	max-width: 78ch;
	margin: .75rem 0 var(--a2p-space-sm);
	color: var(--a2p-muted);
}

.a2p-result-cards {
	display: grid;
	gap: .75rem;
}

.a2p-result-card {
	border: var(--a2p-border);
	border-radius: var(--a2p-radius-card);
	background: var(--a2p-bg);
}

.a2p-result-card > summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, .8fr);
	gap: var(--a2p-space-md);
	align-items: center;
	min-height: 64px;
	padding: 1rem 1.15rem;
	cursor: pointer;
	list-style: none;
}

.a2p-result-card > summary::-webkit-details-marker {
	display: none;
}

.a2p-result-card > summary::after {
	content: "+";
	position: absolute;
	right: 1rem;
	color: var(--a2p-link);
	font-size: 1.25rem;
	font-weight: 800;
}

.a2p-result-card[open] > summary::after {
	content: "−";
}

.a2p-result-card > summary {
	position: relative;
	padding-right: 3rem;
}

.a2p-result-card__title {
	display: grid;
	gap: .25rem;
}

.a2p-result-card__title strong {
	color: var(--a2p-text);
	font-size: 1.02rem;
}

.a2p-result-card__title span,
.a2p-result-card__why {
	color: var(--a2p-muted);
	font-size: .82rem;
	line-height: 1.45;
}

.a2p-result-card__body {
	padding: 0 1.15rem 1.25rem;
	border-top: var(--a2p-border);
}

.a2p-result-card__body h5 {
	margin: 1.1rem 0 .45rem;
	color: var(--a2p-text);
	font-size: .95rem;
}

.a2p-result-card__body p,
.a2p-result-card__body li {
	color: var(--a2p-muted);
	line-height: 1.55;
}

.a2p-result-card__body ul,
.a2p-result-card__body ol {
	margin: .4rem 0 0 1.25rem;
	padding: 0;
}

.a2p-result-card__relationship {
	margin-top: 1rem;
	padding: 1rem;
	border-left: 3px solid var(--a2p-link);
	background: var(--a2p-surface);
}

.a2p-result-card__relationship h5,
.a2p-result-card__relationship p {
	margin-top: 0;
}

.a2p-result-card__fact-sheet {
	margin-top: 1rem;
	font-weight: 800;
}

.a2p-result-card__technical {
	margin-top: 1rem;
	padding-top: .8rem;
	border-top: var(--a2p-border);
}

.a2p-result-card__technical summary {
	color: var(--a2p-muted);
	font-size: .85rem;
	font-weight: 700;
	cursor: pointer;
}

.a2p-result-card__technical dl {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: .75rem;
	margin: .8rem 0 0;
}

.a2p-result-card__technical dt {
	color: var(--a2p-muted);
	font-size: .72rem;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.a2p-result-card__technical dd {
	margin: .2rem 0 0;
	color: var(--a2p-text);
	font-size: .85rem;
}

.a2p-result-group--collapsed {
	padding: 1rem 1.15rem;
	border: var(--a2p-border);
	border-radius: var(--a2p-radius-card);
	background: var(--a2p-bg);
}

.a2p-result-group--collapsed > summary {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	color: var(--a2p-text);
	font-weight: 800;
	cursor: pointer;
}

.a2p-result-group__collapsed-body {
	padding-top: var(--a2p-space-sm);
}

/* Virtual fact-sheet and authority-index pages. */
body.a2p-authority-stack-page {
	background: var(--color-bg, #0B0D10);
	color: var(--color-text, #FFFFFF);
	font-family: var(--font-family, "Nunito", system-ui, sans-serif);
	padding-bottom: 8.75rem;
}

body.a2p-authority-stack-page #masthead,
body.a2p-authority-stack-page #colophon {
	display: none !important;
}

.a2p-site-shell {
	padding: var(--a2p-space-xl) 0 var(--a2p-space-2xl);
}

.a2p-virtual-article > .jm-container {
	width: min(calc(100% - 2rem), var(--jm-container-max, var(--width-content, 1320px)));
}

.a2p-brand-header {
	margin-bottom: var(--a2p-space-lg);
}

.a2p-brand-header .jm-brand-mark {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}

.a2p-brand-header .jm-brand-mark__image {
	display: block;
	width: min(240px, 62vw);
	height: auto;
}

.a2p-breadcrumbs {
	margin-bottom: var(--a2p-space-lg);
}

.a2p-page-hero--preflight + .a2p-preflight {
	margin-top: var(--a2p-space-xl);
}

.a2p-preflight-index-route {
	margin-bottom: var(--a2p-space-xl);
}

.a2p-page-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(280px, .7fr);
	gap: var(--a2p-space-xl);
	align-items: end;
	padding: var(--a2p-space-lg) 0 var(--a2p-space-xl);
	border-bottom: var(--a2p-border);
}

.a2p-page-hero__copy > * + * {
	margin-top: .85rem;
}

.a2p-page-hero__copy p {
	max-width: 76ch;
	color: var(--a2p-muted);
	font-size: 1.0625rem;
	line-height: 1.65;
}

.a2p-page-hero__copy .a2p-page-hero__support-note {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: var(--a2p-border);
	font-size: .95rem;
}

.a2p-page-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border: var(--a2p-border);
	border-radius: var(--a2p-radius-card);
	overflow: hidden;
}

.a2p-page-facts div {
	display: grid;
	gap: .25rem;
	min-height: 96px;
	padding: 1rem;
	background: var(--a2p-surface);
	border-right: var(--a2p-border);
	border-bottom: var(--a2p-border);
}

.a2p-page-facts div:nth-child(2n) {
	border-right: 0;
}

.a2p-page-facts div:nth-last-child(-n+2) {
	border-bottom: 0;
}

.a2p-page-facts strong {
	font-size: 1.65rem;
	line-height: 1;
}

.a2p-page-facts span {
	color: var(--a2p-muted);
	font-size: .8rem;
	line-height: 1.35;
}

.a2p-overview,
.a2p-hub-preflight,
.a2p-advisory-note {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--a2p-space-lg);
	align-items: center;
	margin-top: var(--a2p-space-xl);
	padding: var(--a2p-space-lg);
	border: var(--a2p-border);
	border-radius: var(--a2p-radius-panel);
	background: var(--a2p-surface);
}

.a2p-overview {
	grid-template-columns: minmax(220px, .45fr) minmax(0, 1fr);
}

.a2p-overview p,
.a2p-hub-preflight p,
.a2p-advisory-note p {
	margin: 0;
	color: var(--a2p-muted);
	line-height: 1.65;
}

.a2p-authority-section,
.a2p-index-section,
.a2p-next-steps,
.a2p-related-content {
	margin-top: var(--a2p-space-2xl);
}

.a2p-authority-list {
	display: grid;
	gap: var(--a2p-space-md);
	margin-top: var(--a2p-space-md);
}

.a2p-authority-card {
	padding: clamp(1.25rem, 2.5vw, 2rem);
	border: var(--a2p-border);
	border-radius: var(--a2p-radius-panel);
	background: var(--a2p-surface);
	scroll-margin-top: 2rem;
}

.a2p-authority-card__header {
	display: flex;
	justify-content: space-between;
	gap: var(--a2p-space-md);
	align-items: flex-start;
}

.a2p-authority-card__type {
	margin: 0 0 .35rem;
	color: var(--a2p-muted);
	font-size: .85rem;
}

.a2p-authority-card h3 {
	margin: 0;
	color: var(--a2p-text);
	font-size: clamp(1.2rem, 2.2vw, 1.55rem);
	line-height: 1.25;
}

.a2p-anchor-link {
	flex: 0 0 auto;
	font-weight: 800;
	text-decoration: none;
}

.a2p-authority-card__relationship {
	margin-top: var(--a2p-space-md);
	padding: var(--a2p-space-sm) var(--a2p-space-md);
	border-left: 4px solid var(--a2p-link);
	background: var(--a2p-bg);
}

.a2p-authority-card__relationship h4,
.a2p-authority-card__relationship p {
	margin: 0;
}

.a2p-authority-card__relationship p {
	margin-top: .45rem;
	color: var(--a2p-muted);
	line-height: 1.6;
}

.a2p-authority-card__section {
	margin-top: var(--a2p-space-md);
	padding-top: var(--a2p-space-md);
	border-top: var(--a2p-border);
}

.a2p-authority-card__section h4 {
	margin: 0 0 .65rem;
	color: var(--a2p-text);
	font-size: 1rem;
}

.a2p-authority-card__section ul,
.a2p-authority-card__section ol {
	margin: 0 0 0 1.25rem;
	padding: 0;
}

.a2p-authority-card__section li,
.a2p-authority-card__section p {
	color: var(--a2p-muted);
	line-height: 1.6;
}

.a2p-authority-card__section li + li {
	margin-top: .4rem;
}

.a2p-authority-card__section--unresolved {
	border-left: 4px solid var(--a2p-link);
	padding-left: var(--a2p-space-md);
}

.a2p-sources li {
	padding-left: .25rem;
}

.a2p-technical-details {
	margin-top: var(--a2p-space-md);
	padding-top: var(--a2p-space-sm);
	border-top: var(--a2p-border);
}

.a2p-technical-details summary {
	color: var(--a2p-muted);
	font-size: .86rem;
	font-weight: 700;
	cursor: pointer;
}

.a2p-technical-details dl {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: .75rem;
	margin: var(--a2p-space-sm) 0 0;
}

.a2p-technical-details dt {
	color: var(--a2p-muted);
	font-size: .72rem;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.a2p-technical-details dd {
	margin: .25rem 0 0;
	color: var(--a2p-text);
	font-size: .85rem;
	word-break: break-word;
}

.a2p-link-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--a2p-space-sm);
	margin-top: var(--a2p-space-md);
}

.a2p-link-grid--states {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.a2p-link-card {
	display: flex;
	flex-direction: column;
	gap: .45rem;
	min-height: 120px;
	padding: var(--a2p-space-md);
	border: var(--a2p-border);
	border-radius: var(--a2p-radius-card);
	background: var(--a2p-surface);
	color: var(--a2p-text) !important;
	text-decoration: none;
}

.a2p-link-card:hover,
.a2p-link-card:focus-visible {
	border-color: var(--a2p-link);
	background: var(--a2p-surface-strong);
}

.a2p-link-card strong {
	font-size: 1.05rem;
	line-height: 1.3;
}

.a2p-link-card span {
	color: var(--a2p-muted);
	font-size: .88rem;
	line-height: 1.5;
}

.a2p-link-card--state {
	min-height: 96px;
}

.a2p-link-card--utility {
	border-style: dashed;
}

/* Site chrome fallback for virtual pages; matches the locked site structure. */
.a2p-authority-stack-page .jm-bottom-chrome {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100;
	background: var(--a2p-bg);
	border-top: var(--a2p-border);
}

.a2p-authority-stack-page .jm-bottom-chrome__inner {
	width: min(calc(100% - 2rem), var(--jm-container-max, var(--width-content, 1320px)));
	margin: 0 auto;
}

.a2p-authority-stack-page .jm-routes__inner {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.a2p-authority-stack-page .jm-route {
	display: grid;
	place-items: center;
	min-height: 58px;
	padding: .7rem 1rem;
	border-right: var(--a2p-border);
	background: var(--a2p-surface);
	color: var(--a2p-text) !important;
	text-align: center;
	text-decoration: none;
}

.a2p-authority-stack-page .jm-route:first-child {
	border-left: var(--a2p-border);
}

.a2p-authority-stack-page .jm-route:hover,
.a2p-authority-stack-page .jm-route:focus-visible {
	background: var(--a2p-surface-strong);
}

.a2p-authority-stack-page .jm-route .label {
	font-size: .88rem;
	font-weight: 800;
}

.a2p-authority-stack-page .jm-route .hovertext {
	display: none;
	color: var(--a2p-muted);
	font-size: .72rem;
}

.a2p-authority-stack-page .jm-route:hover .hovertext,
.a2p-authority-stack-page .jm-route:focus-visible .hovertext {
	display: block;
}

.a2p-authority-stack-page .jm-bottom-chrome__legal {
	display: flex;
	justify-content: center;
	gap: .5rem;
	align-items: center;
	min-height: 34px;
	color: var(--a2p-muted);
	font-size: .76rem;
	text-align: center;
}

.a2p-authority-stack-page .jm-bottom-chrome__legal-link {
	color: var(--a2p-text);
}

@media (max-width: 1024px) {
	.a2p-form-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.a2p-state-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.a2p-factor-grid,
	.a2p-link-grid,
	.a2p-link-grid--states {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.a2p-page-hero {
		grid-template-columns: minmax(0, 1fr);
		align-items: start;
	}

	.a2p-technical-details dl {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.a2p-featured-grid,
	.a2p-form-grid,
	.a2p-factor-grid,
	.a2p-link-grid,
	.a2p-link-grid--states,
	.a2p-overview,
	.a2p-hub-preflight,
	.a2p-advisory-note,
	.a2p-results__header {
		grid-template-columns: minmax(0, 1fr);
	}

	.a2p-preflight__header {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--a2p-space-md);
	}

	.a2p-preflight__support {
		padding: var(--a2p-space-sm) 0 0;
		border-left: 0;
		border-top: var(--a2p-border);
	}

	.a2p-state-selector__toolbar {
		align-items: stretch;
		flex-direction: column;
	}

	.a2p-state-search {
		width: 100%;
	}

	.a2p-state-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		max-height: 320px;
	}

	.a2p-results__actions .a2p-button,
	.a2p-form-actions .a2p-button {
		width: 100%;
	}

	.a2p-result-card > summary {
		grid-template-columns: minmax(0, 1fr);
		gap: .45rem;
	}

	.a2p-result-card__technical dl,
	.a2p-technical-details dl,
	.a2p-page-facts {
		grid-template-columns: minmax(0, 1fr);
	}

	.a2p-page-facts div,
	.a2p-page-facts div:nth-child(2n),
	.a2p-page-facts div:nth-last-child(-n+2) {
		border-right: 0;
		border-bottom: var(--a2p-border);
	}

	.a2p-page-facts div:last-child {
		border-bottom: 0;
	}

	.a2p-authority-card__header {
		align-items: flex-start;
	}

	body.a2p-authority-stack-page {
		padding-bottom: 12.75rem;
	}

	.a2p-authority-stack-page .jm-routes__inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.a2p-authority-stack-page .jm-route,
	.a2p-authority-stack-page .jm-route:first-child {
		border: var(--a2p-border);
		border-top: 0;
	}

	.a2p-authority-stack-page .jm-bottom-chrome__legal {
		flex-wrap: wrap;
		padding: .45rem .75rem;
	}
}

@media print {
	.a2p-resources-featured,
	.a2p-preflight__header,
	.a2p-preflight__form,
	.a2p-results__actions,
	.a2p-result-nav,
	.a2p-authority-stack-page .jm-bottom-chrome,
	.a2p-brand-header,
	.a2p-breadcrumbs,
	.a2p-next-steps,
	.a2p-related-content,
	.a2p-advisory-note {
		display: none !important;
	}

	.a2p-preflight,
	.a2p-results,
	.a2p-result-card,
	.a2p-authority-card {
		background: #fff !important;
		color: #151922 !important;
		border-color: #d8dde4 !important;
		box-shadow: none !important;
	}
}
