/* Directory / Discover — same canonical public rail as header/footer (.fc-container). */
.fc-directory,
.fc-discover,
.fc-discover-collection,
.fc-discover-choose {
	max-width: var(--fc-container);
	width: 100%;
	margin-inline: auto;
	padding: var(--fc-space-4) 0 var(--fc-section-space);
	font-family: var(--fc-font-sans, system-ui, sans-serif);
	box-sizing: border-box;
	min-width: 0;
}

.fc-directory--discovery {
	max-width: none;
	padding-top: 0;
}

.fc-directory__header {
	margin-bottom: var(--fc-space-3);
}

.fc-directory__header--navy {
	width: 100vw;
	position: relative;
	inset-inline-start: 50%;
	margin-inline: -50vw;
	margin-bottom: var(--fc-space-4);
	padding: var(--fc-space-4) 0 var(--fc-space-3);
	background: var(--fc-color-ocean-navy, #0b1f33);
	color: var(--fc-color-text-inverse, #fff);
	box-sizing: border-box;
}

.fc-directory__header-inner {
	max-width: var(--fc-container);
	margin-inline: auto;
	padding-inline: var(--fc-page-gutter, 1.25rem);
	box-sizing: border-box;
}

.fc-directory__header--navy .fc-directory__title {
	color: var(--fc-color-text-inverse, #fff);
}

.fc-directory__header--navy .fc-directory__lede {
	color: color-mix(in srgb, var(--fc-brand-white, #fff) 88%, transparent);
}

/* FA-DISCOVERY-EXACT-RESULT-CONTAINER-REGRESSION-01 — exact-serving shares Discovery rail. */
.fc-directory--discovery .fc-directory__search-system,
.fc-directory--discovery .fc-directory__captain-lookup,
.fc-directory--discovery .fc-directory__recent,
.fc-directory--discovery .fc-directory__exact-serving,
.fc-directory--discovery .fc-directory__great-matches,
.fc-directory--discovery .fc-directory__more,
.fc-directory--discovery .fc-directory__nearby,
.fc-directory--discovery .fc-directory__empty,
.fc-directory--discovery .fc-directory__pagination,
.fc-directory--discovery .fc-directory__location-unresolved {
	max-width: var(--fc-container);
	margin-inline: auto;
	padding-inline: var(--fc-page-gutter, 1.25rem);
	box-sizing: border-box;
}

.fc-directory__title {
	margin: 0 0 var(--fc-space-2, 0.5rem);
	font-size: var(--fc-text-h1, 1.75rem);
	color: var(--fc-color-ocean-navy, #0b2a3d);
	line-height: var(--fc-leading-tight, 1.2);
}

.fc-directory__lede {
	margin: 0;
	max-width: 42rem;
	color: var(--fc-color-muted, #64748b);
	font-size: var(--fc-text-small, 0.875rem);
	line-height: var(--fc-leading-relaxed, 1.55);
}

.fc-directory__filters {
	min-width: 0;
}

.fc-directory__form {
	padding: var(--fc-space-3) var(--fc-space-4);
	border: 1px solid var(--fc-color-border, #d5dde6);
	border-radius: var(--fc-radius-md, 0.5rem);
	background: var(--fc-color-surface, #fff);
	margin-bottom: 0;
	min-width: 0;
	box-sizing: border-box;
}

.fc-directory__form .fc-field {
	margin: 0;
	min-width: 0;
}

.fc-directory__form .fc-label {
	display: block;
	margin: 0 0 var(--fc-space-1);
	font-size: var(--fc-text-small);
	font-weight: var(--fc-weight-semibold);
}

.fc-directory__form .fc-input {
	min-height: var(--fc-touch-min);
}

.fc-directory__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: var(--fc-space-2, 0.5rem);
	margin: 0;
}

.fc-directory__form--toolbar {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	gap: var(--fc-space-2);
	padding: var(--fc-space-3);
	text-align: start;
}

.fc-directory__form--toolbar .fc-directory__filters {
	width: 100%;
	margin: 0;
	padding: 0;
	justify-content: start;
	justify-items: stretch;
}

.fc-directory__form--toolbar .fc-experience-combobox,
.fc-directory__form--toolbar .fc-input {
	display: block;
	width: 100%;
	min-width: 0;
	max-width: none;
}

.fc-directory__form--toolbar .fc-captain-search__help {
	margin-top: var(--fc-space-3);
	width: auto;
	max-width: none;
}

.fc-directory__form--toolbar .fc-captain-search__help-link {
	font-weight: var(--fc-weight-semibold);
	text-decoration: none;
}

.fc-directory__form--toolbar .fc-captain-search__help-link:hover,
.fc-directory__form--toolbar .fc-captain-search__help-link:focus-visible {
	text-decoration: underline;
}

.fc-directory__search-system {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-2);
	margin-bottom: 0;
}

.fc-directory__location-unresolved {
	margin: 0 0 var(--fc-space-4);
	padding: var(--fc-space-3);
	border: 1px solid var(--fc-color-border);
	border-radius: var(--fc-radius-md, 0.5rem);
	background: var(--fc-color-surface);
}

.fc-directory__location-unresolved-title,
.fc-directory__location-unresolved-body,
.fc-directory__criteria-unapplied {
	margin: 0;
	color: var(--fc-color-ocean-navy);
	font-size: var(--fc-text-small);
	line-height: var(--fc-leading-relaxed, 1.55);
}

.fc-directory__location-unresolved-title {
	font-weight: var(--fc-weight-semibold);
}

.fc-directory__location-unresolved-body {
	margin-top: var(--fc-space-2);
}

.fc-directory__criteria-unapplied {
	flex: 1 1 12rem;
}

.fc-captain-search__use-location {
	appearance: none;
	display: inline;
	flex: 0 1 auto;
	min-height: 0;
	margin: 0 0 0 auto;
	padding: 0.1rem 0;
	border: 0;
	background: transparent;
	color: var(--fc-color-ocean-navy);
	font: inherit;
	font-size: var(--fc-text-small);
	font-weight: var(--fc-weight-semibold);
	text-align: end;
	text-decoration: underline;
	white-space: nowrap;
	cursor: pointer;
}

.fc-captain-search__use-location:hover,
.fc-captain-search__use-location:focus-visible {
	text-decoration-thickness: 0.12em;
}

.fc-captain-search__use-location:disabled {
	cursor: wait;
	opacity: 0.75;
}

.fc-captain-search__geo-status {
	margin: 0.15rem 0 0;
	max-width: 100%;
	font-size: var(--fc-text-caption, var(--fc-text-small));
	line-height: 1.4;
	color: var(--fc-color-ocean-navy);
	white-space: normal;
	overflow: visible;
}

.fc-captain-search__geo-status[data-state="failure"] {
	color: var(--fc-color-ocean-navy);
}

.fc-captain-search__geo-trace {
	margin: 0.35rem 0 0;
	max-width: 100%;
	padding: 0.4rem 0.5rem;
	border: 1px solid var(--fc-color-border);
	border-radius: var(--fc-radius-md, 0.375rem);
	background: var(--fc-color-surface, #fff);
	color: var(--fc-color-muted);
	font-size: 0.75rem;
	line-height: 1.35;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

.fc-captain-search__geo-suggestions {
	margin: 0.15rem 0 0;
	max-width: 22rem;
}

.fc-captain-search__geo-suggestions-prompt {
	margin: 0 0 0.35rem;
	font-size: var(--fc-text-caption, var(--fc-text-small));
	line-height: 1.3;
	color: var(--fc-color-muted);
}

.fc-captain-search__geo-suggestion-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.fc-captain-search__geo-suggestion {
	appearance: none;
	display: inline-flex;
	align-items: center;
	min-height: 1.75rem;
	padding: 0.15rem 0.55rem;
	border: 1px solid var(--fc-color-border);
	border-radius: var(--fc-radius-md, 0.375rem);
	background: var(--fc-color-surface, #fff);
	color: var(--fc-color-ocean-navy);
	font: inherit;
	font-size: var(--fc-text-caption, var(--fc-text-small));
	line-height: 1.2;
	cursor: pointer;
}

.fc-captain-search__geo-suggestion:hover,
.fc-captain-search__geo-suggestion:focus-visible {
	border-color: var(--fc-color-action);
	color: var(--fc-color-action);
	outline: none;
}

.fc-directory__criteria {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--fc-space-2) var(--fc-space-3);
	margin: 0;
}

.fc-directory__criteria-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--fc-space-3);
}

.fc-directory__criteria-label {
	margin: 0;
	font-size: var(--fc-text-caption);
	font-weight: var(--fc-weight-semibold);
	color: var(--fc-color-muted);
}

.fc-directory__criteria-list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fc-space-2);
	list-style: none;
	margin: 0;
	padding: 0;
}

.fc-directory__criteria-chip {
	text-decoration: none;
}

.fc-directory__criteria-remove {
	font-size: 1rem;
	line-height: 1;
}

.fc-directory__clear {
	margin-inline-start: 0;
	color: var(--fc-color-ocean-navy);
	font-size: var(--fc-text-small);
	font-weight: var(--fc-weight-semibold);
	text-decoration: none;
	white-space: nowrap;
}

.fc-directory__clear:hover,
.fc-directory__clear:focus-visible {
	text-decoration: underline;
}

.fc-directory__group-heading {
	margin: 0 0 var(--fc-space-1);
}

.fc-directory__group-heading h2 {
	margin: 0;
}

.fc-directory__why {
	margin: 0 0 var(--fc-space-3);
	color: var(--fc-color-muted);
	font-size: var(--fc-text-small);
}

.fc-directory__why summary {
	cursor: pointer;
	font-weight: var(--fc-weight-medium, 500);
	color: var(--fc-color-muted);
	min-height: 0;
	padding-block: var(--fc-space-1);
	display: inline-flex;
	align-items: center;
}

.fc-directory__why summary:hover,
.fc-directory__why summary:focus-visible {
	color: var(--fc-color-ocean-navy);
}

.fc-directory__why p {
	margin: var(--fc-space-2) 0 0;
	max-width: 42rem;
}

.fc-directory__group-lede {
	margin: 0 0 var(--fc-space-3);
	color: var(--fc-color-muted);
	font-size: var(--fc-text-small);
}

.fc-directory__near-me[disabled] {
	opacity: 0.6;
	cursor: not-allowed;
}

.fc-directory__cards {
	display: grid;
	gap: var(--fc-space-4, 1rem);
	align-items: stretch;
}

.fc-directory-card {
	border: 1px solid var(--fc-color-border, #d5dde6);
	border-radius: var(--fc-radius-md, 0.5rem);
	padding: var(--fc-space-4, 1rem);
	margin-bottom: 0;
	background: var(--fc-color-surface, #fff);
	display: grid;
	grid-template-columns: auto 1fr;
	gap: var(--fc-space-3, 0.75rem);
	align-items: start;
	min-width: 0;
	height: 100%;
	box-sizing: border-box;
}

.fc-directory-card__avatar {
	width: 4.5rem;
	height: 4.5rem;
	border-radius: var(--fc-radius-full, 9999px);
	object-fit: cover;
}

.fc-directory-card__body {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-1);
	height: 100%;
}

.fc-directory-card__name {
	margin: 0;
	font-size: var(--fc-text-h3, 1.25rem);
	line-height: var(--fc-leading-tight, 1.2);
}

.fc-directory-card__name a {
	color: var(--fc-color-ocean-navy, #0b2a3d);
	text-decoration: none;
}

.fc-directory-card__summary {
	margin: 0;
	color: var(--fc-color-slate, #475569);
	font-size: var(--fc-text-small, 0.875rem);
	line-height: var(--fc-leading-relaxed, 1.55);
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
}

.fc-directory-card__chip-group {
	margin-top: var(--fc-space-2, 0.5rem);
}

.fc-directory-card__chip-label {
	margin: 0 0 var(--fc-space-1, 0.25rem);
	color: var(--fc-color-muted, #64748b);
	font-size: var(--fc-text-xs, 0.75rem);
	font-weight: var(--fc-weight-semibold, 600);
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.fc-directory-card__chips {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fc-space-1, 0.25rem);
	list-style: none;
	margin: 0;
	padding: 0;
}

.fc-directory-card__chip {
	font-size: var(--fc-text-xs, 0.75rem);
	padding: 0.15rem 0.5rem;
}

/* FA-DISCOVERY-CARD-ALIGNMENT-CORRECTION-02: identity row + full-width centered evaluation. */
.fc-directory-card--discovery {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-3, 0.75rem);
}

.fc-directory-card--discovery .fc-directory-card__identity {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: var(--fc-space-3, 0.75rem);
	align-items: start;
	width: 100%;
	min-width: 0;
}

.fc-directory-card--discovery .fc-directory-card__identity--no-avatar {
	grid-template-columns: 1fr;
}

.fc-directory-card--discovery .fc-directory-card__identity-copy {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-1, 0.25rem);
}

.fc-directory-card--discovery .fc-directory-card__evaluation {
	width: 100%;
	min-width: 0;
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.fc-directory-card--discovery .fc-directory-card__chip-group,
.fc-directory-card--discovery .fc-directory-card__highlights {
	width: 100%;
}

.fc-directory-card--discovery .fc-directory-card__chips,
.fc-directory-card--discovery .fc-directory-card__highlights,
.fc-directory-card--discovery .fc-directory-card__cta {
	justify-content: center;
}

.fc-directory-card--discovery .fc-directory-card__cta {
	width: 100%;
	margin-top: auto;
}

.fc-directory__group-kicker {
	margin: 0 0 var(--fc-space-1, 0.25rem);
	color: var(--fc-color-muted, #64748b);
	font-size: var(--fc-text-small, 0.875rem);
}

.fc-directory__recent--secondary {
	margin-top: var(--fc-section-space-compact, 2.75rem);
	padding: var(--fc-space-4, 1rem);
	border: 1px solid var(--fc-color-border, #d5dde6);
	border-radius: var(--fc-radius-md, 0.5rem);
	background: var(--fc-color-surface-subtle, #f8fafc);
}

.fc-directory__cards--secondary {
	grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
}

.fc-directory__recovery--nearby-chips {
	margin-bottom: var(--fc-space-3, 0.75rem);
}

.fc-directory-card__highlights {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fc-space-1, 0.25rem);
	list-style: none;
	margin: 0 0 var(--fc-space-2, 0.5rem);
	padding: 0;
}

.fc-directory-card__highlights li {
	font-size: var(--fc-text-caption, 0.75rem);
	padding: 0.15rem 0.5rem;
	border: 1px solid var(--fc-color-border, #d5dde6);
	border-radius: var(--fc-radius-sm, 0.25rem);
	color: var(--fc-color-ocean-navy, #0b2a3d);
}

.fc-directory-card__log-label {
	display: block;
	font-weight: var(--fc-weight-semibold, 600);
	color: var(--fc-color-ocean-navy, #0b2a3d);
	margin-bottom: 0.15rem;
}

.fc-directory-card__cta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fc-space-2, 0.5rem);
	margin-top: auto;
	padding-top: var(--fc-space-3);
}

.fc-directory__exact-serving,
.fc-directory__great-matches,
.fc-directory__more,
.fc-directory__nearby,
.fc-directory__empty,
.fc-directory__recent {
	margin-top: var(--fc-space-4, 1rem);
}

.fc-directory__exact-serving + .fc-directory__nearby,
.fc-directory__great-matches + .fc-directory__more,
.fc-directory__great-matches + .fc-directory__nearby,
.fc-directory__great-matches + .fc-directory__recent,
.fc-directory__more + .fc-directory__nearby,
.fc-directory__more + .fc-directory__recent,
.fc-directory__nearby + .fc-directory__recent {
	margin-top: var(--fc-section-space-compact, 2.75rem);
}

.fc-directory__exact-serving h2,
.fc-directory__great-matches h2,
.fc-directory__more h2,
.fc-directory__nearby h2 {
	margin: 0;
	font-size: var(--fc-text-h2, 1.375rem);
	color: var(--fc-color-ocean-navy, #0b2a3d);
}

.fc-directory__pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--fc-space-3);
	margin-top: var(--fc-section-space-compact, 2.75rem);
}

.fc-directory__page-status {
	margin: 0;
	color: var(--fc-color-muted);
	font-size: var(--fc-text-small);
}

.fc-directory__empty-suggestions,
.fc-directory__recovery {
	margin-top: var(--fc-space-4);
}

.fc-directory__empty-kicker {
	margin: var(--fc-space-3) 0 var(--fc-space-2);
	font-size: var(--fc-text-small);
	font-weight: var(--fc-weight-semibold);
}

.fc-directory__empty-chips {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fc-space-2);
}

.fc-directory__recovery-fallback {
	margin: var(--fc-space-3) 0 0;
	font-size: var(--fc-text-small);
}

.fc-directory__recovery-fallback a {
	color: var(--fc-color-ocean-navy);
	font-weight: var(--fc-weight-semibold);
	text-decoration: none;
}

.fc-directory__recovery-fallback a:hover,
.fc-directory__recovery-fallback a:focus-visible {
	text-decoration: underline;
}

.fc-discover__row {
	margin-bottom: var(--fc-space-8, 2rem);
}

.fc-discover__cards {
	display: grid;
	gap: var(--fc-space-4, 1rem);
}

@media (min-width: 48rem) {
	.fc-directory__form--toolbar .fc-directory__filters {
		justify-content: start;
	}

	.fc-directory__form--toolbar .fc-directory__actions .fc-btn {
		width: auto;
		max-width: none;
		min-height: var(--fc-touch-min);
		white-space: nowrap;
	}
}

.fc-directory__captain-lookup {
	margin-top: var(--fc-space-3);
}

.fc-directory__search-panel {
	border: 1px solid var(--fc-color-border-subtle, #d8e0ea);
	border-radius: var(--fc-radius-md, 0.5rem);
	background: var(--fc-color-surface, #fff);
	padding: var(--fc-space-3, 0.75rem);
}

.fc-directory__search-panel .fc-directory__form--toolbar {
	margin: 0;
}

.fc-captain-search__secondary {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fc-space-2) var(--fc-space-4);
	margin-top: var(--fc-space-2);
}

.fc-captain-search__help--inline {
	margin: 0;
	font-size: var(--fc-text-small);
	color: var(--fc-color-muted);
}

.fc-captain-search__help-link {
	display: inline;
	padding: 0;
	border: 0;
	background: transparent;
	font: inherit;
	color: var(--fc-color-teal, #0d9488);
	text-decoration: underline;
	cursor: pointer;
}

.fc-captain-search__name-panel {
	margin-top: var(--fc-space-3);
	padding-top: var(--fc-space-3);
	border-top: 1px solid var(--fc-color-border-subtle, #d8e0ea);
}

.fc-captain-search__name-kicker {
	margin: 0 0 var(--fc-space-2);
	font-size: var(--fc-text-small);
	font-weight: var(--fc-weight-semibold);
	color: var(--fc-color-ocean-navy, #0b2a3d);
}

.fc-captain-search__name-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto;
	gap: var(--fc-space-2);
	align-items: center;
}

.fc-captain-search__name-input {
	min-width: 0;
}

.fc-captain-search__name-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--fc-touch-min, 2.75rem);
	height: var(--fc-touch-min, 2.75rem);
	padding: 0;
	border: 1px solid var(--fc-color-border-subtle, #d8e0ea);
	border-radius: var(--fc-radius-md, 0.5rem);
	background: transparent;
	color: var(--fc-color-muted);
	cursor: pointer;
}

.fc-directory__search-system {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-3);
}

.fc-directory__criteria {
	margin-top: 0;
}

.fc-directory__captain-lookup-kicker {
	margin: 0 0 var(--fc-space-2);
	font-size: var(--fc-text-small);
	font-weight: var(--fc-weight-semibold);
	color: var(--fc-color-ocean-navy, #0b2a3d);
}

.fc-directory__captain-lookup-form {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fc-space-2);
	align-items: center;
}

.fc-directory__captain-lookup-input {
	flex: 1 1 14rem;
	min-width: 0;
}

.fc-discover-choose--inline {
	margin-top: var(--fc-space-4);
	padding: var(--fc-space-4);
	border: 1px solid var(--fc-color-border-subtle, #d8e0ea);
	border-radius: var(--fc-radius-md, 0.5rem);
	background: var(--fc-color-surface-raised, #f8fafc);
}

.fc-discover-choose__header--inline {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--fc-space-3);
	margin-bottom: var(--fc-space-3);
}

@media (max-width: 639px) {
	.fc-discover-choose__header--inline {
		flex-direction: column;
		align-items: stretch;
	}

	.fc-discover-choose__exit {
		order: -1;
		align-self: flex-start;
		margin-inline-start: 0;
	}
}

.fc-discover-choose__header--inline .fc-discover-choose__header-main {
	flex: 1 1 auto;
	min-width: 0;
}

.fc-discover-choose__exit {
	flex: 0 0 auto;
	align-self: flex-start;
	margin-inline-start: auto;
}

.fc-discover-choose--location-phase .fc-discover-choose__header--inline {
	justify-content: flex-end;
	margin-bottom: var(--fc-space-2);
}

.fc-discover-choose__location-step {
	width: 100%;
	max-width: min(36rem, 100%);
	margin-inline: auto;
}

.fc-discover-choose__location-intro {
	margin-bottom: var(--fc-space-4);
	text-align: center;
}

.fc-discover-choose__location-intro .fc-discover-choose__title,
.fc-discover-choose__location-intro .fc-discover-choose__lede {
	margin-inline: auto;
}

.fc-discover-choose--location-phase .fc-discover-choose__location-form {
	width: 100%;
	margin-top: 0;
}

.fc-discover-choose--location-phase .fc-captain-search__location-head {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: var(--fc-space-2);
}

.fc-discover-choose--location-phase .fc-captain-search__use-location {
	align-self: flex-end;
	margin-inline-start: 0;
}

.fc-discover-choose--location-phase .fc-captain-search__location {
	width: 100%;
}

.fc-discover-choose__location-actions {
	display: flex;
	justify-content: center;
	margin-top: var(--fc-space-3);
}

.fc-discover-choose__location-actions .fc-btn {
	width: auto;
}

.fc-discover-choose__location-context {
	margin: 0 0 var(--fc-space-2);
	font-size: var(--fc-text-sm, 0.875rem);
	color: var(--fc-color-text-muted, #5b6775);
}

.fc-discover-choose__back-control {
	margin: 0 0 var(--fc-space-3);
}

.fc-discover-choose__location-form {
	margin-top: var(--fc-space-2);
}

.fc-discover-choose__location-form .fc-captain-search__field--location {
	margin-bottom: 0;
}

.fc-discover-choose--inline .fc-discover-choose__title {
	font-size: var(--fc-text-xl, 1.25rem);
	margin: 0 0 var(--fc-space-2);
}

.fc-discover-choose--inline .fc-discover-choose__lede {
	margin: 0 0 var(--fc-space-4);
}

.fc-discover-choose--inline .fc-discover-choose__cards {
	grid-template-columns: 1fr;
}

@media (min-width: 640px) {
	.fc-discover-choose--inline .fc-discover-choose__cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.fc-discover-choose--shelled {
	padding-top: var(--fc-space-4);
}

.fc-discover-choose--shelled > .fc-discover-choose__header,
.fc-discover-choose--shelled > .fc-discover-choose__cards,
.fc-discover-choose--shelled > .fc-discover-choose__results,
.fc-discover-choose--shelled > .fc-discover-choose__aside,
.fc-discover-choose--shelled > .fc-discover-choose__back {
	max-width: var(--fc-container);
	margin-inline: auto;
	padding-inline: var(--fc-page-gutter, 1.25rem);
	box-sizing: border-box;
}

.fc-discover-choose--shelled > .fc-preview-utility {
	margin-bottom: var(--fc-space-3);
}

.fc-discover-choose__cards {
	display: grid;
	gap: var(--fc-space-4, 1rem);
}

.fc-discover-choose__card {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-2);
	padding: var(--fc-space-4);
	text-decoration: none;
	color: inherit;
}

.fc-discover-choose__card-label {
	font-weight: var(--fc-weight-semibold, 600);
}

.fc-discover-choose__card-desc {
	color: var(--fc-color-muted);
	font-size: var(--fc-text-small, 0.875rem);
}

.fc-discover-choose__taxonomy {
	display: flex;
	flex-direction: column;
	gap: 0;
	max-width: min(40rem, 100%);
	margin-inline: auto;
	overflow-x: hidden;
}

.fc-discover-choose--browse > .fc-discover-choose__header,
.fc-discover-choose--browse > .fc-discover-choose__taxonomy,
.fc-discover-choose--browse > .fc-discover-choose__lede,
.fc-discover-choose--browse > .fc-discover-choose__back {
	max-width: min(40rem, var(--fc-container));
	margin-inline: auto;
	padding-inline: var(--fc-page-gutter, 1.25rem);
	box-sizing: border-box;
	text-align: start;
}

.fc-discover-choose--browse > .fc-discover-choose__header {
	text-align: center;
}

.fc-discover-choose__helper {
	margin: var(--fc-space-3) 0 0;
}

.fc-discover-choose__helper--quiet {
	margin-top: var(--fc-space-4);
}

.fc-discover-choose--shelled > .fc-discover-choose__taxonomy {
	max-width: min(40rem, var(--fc-container));
	margin-inline: auto;
	padding-inline: var(--fc-page-gutter, 1.25rem);
	box-sizing: border-box;
}

.fc-discover-choose__option {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--fc-space-3);
	width: 100%;
	min-height: var(--fc-touch-min);
	padding: var(--fc-space-2) var(--fc-space-3);
	border: 0;
	border-radius: var(--fc-radius-sm, 0.25rem);
	background: transparent;
	color: var(--fc-color-text);
	text-align: start;
	text-decoration: none;
	cursor: pointer;
}

.fc-discover-choose__option:hover,
.fc-discover-choose__option:focus-visible,
.fc-discover-choose__option[aria-current="true"] {
	background: var(--fc-color-light-sand);
}

.fc-discover-choose__option-label {
	min-width: 0;
	flex: 1 1 auto;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.fc-discover-choose__option-type {
	flex: 0 0 auto;
	min-width: 4.75rem;
	font-size: var(--fc-text-small);
	color: var(--fc-color-muted);
	text-align: end;
	white-space: nowrap;
}

.fc-discover-choose__option-add {
	flex: 0 0 auto;
	width: 1.25rem;
	color: var(--fc-color-muted);
	font-size: var(--fc-text-body);
	font-weight: var(--fc-weight-medium);
	line-height: 1;
	text-align: end;
	user-select: none;
	pointer-events: none;
}

.fc-discover-choose__option--child .fc-discover-choose__option-label {
	padding-inline-start: var(--fc-space-4);
}

@media (max-width: 47.99rem) {
	.fc-discover-choose__option--child .fc-discover-choose__option-label {
		padding-inline-start: var(--fc-space-3);
	}
}

@media (max-width: 47.99rem) {
	.fc-directory__form--toolbar .fc-directory__actions .fc-btn {
		width: 100%;
	}
}

@media (min-width: 640px) {
	.fc-discover__cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.fc-directory__cards {
		grid-template-columns: repeat(auto-fill, minmax(16rem, 22rem));
		justify-content: start;
	}
}

@media (min-width: 64rem) {
	.fc-directory__cards {
		grid-template-columns: repeat(auto-fill, minmax(16rem, 22rem));
	}
}

@media (max-width: 22.49rem) {
	.fc-directory-card {
		grid-template-columns: minmax(0, 1fr);
	}
}
