/**
 * Public page shells — structural only (no content redesign)
 */
.fc-page {
	background: var(--fc-color-bg);
	color: var(--fc-color-text);
	min-height: 100%;
}

.fc-page__header {
	border-bottom: 1px solid var(--fc-color-border);
	background: var(--fc-color-surface);
}

.fc-page__header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--fc-space-4);
	min-height: 4rem;
	max-width: var(--fc-container);
	margin-inline: auto;
	padding-inline: var(--fc-space-4);
}

.fc-page__nav {
	display: none;
	gap: var(--fc-space-4);
	align-items: center;
}

.fc-page__nav a {
	color: var(--fc-color-slate);
	text-decoration: none;
	font-size: var(--fc-text-small);
	font-weight: var(--fc-weight-medium);
}

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

.fc-page__main {
	max-width: var(--fc-container);
	margin-inline: auto;
	padding: var(--fc-space-6) var(--fc-space-4) var(--fc-space-12);
}

.fc-page__hero {
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-4);
	padding: var(--fc-space-8) 0 var(--fc-space-6);
}

.fc-page__hero-title {
	margin: 0;
	font-size: var(--fc-text-display);
	font-weight: var(--fc-weight-bold);
	letter-spacing: -0.02em;
	color: var(--fc-color-ocean-navy);
	line-height: var(--fc-leading-tight);
}

.fc-page__hero-lede {
	margin: 0;
	max-width: 36rem;
	color: var(--fc-color-muted);
	font-size: var(--fc-text-h4);
	line-height: var(--fc-leading-relaxed);
}

.fc-page__hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fc-space-3);
}

.fc-page__section {
	padding: var(--fc-space-8) 0;
	border-top: 1px solid var(--fc-color-border);
}

.fc-page__section-title {
	margin: 0 0 var(--fc-space-2);
	font-size: var(--fc-text-h2);
	color: var(--fc-color-ocean-navy);
}

.fc-page__section-lede {
	margin: 0 0 var(--fc-space-5);
	color: var(--fc-color-muted);
	max-width: 40rem;
}

.fc-page__footer {
	border-top: 1px solid var(--fc-color-border);
	background: var(--fc-color-ocean-navy);
	color: var(--fc-color-text-inverse);
}

.fc-page__footer-inner {
	max-width: var(--fc-container);
	margin-inline: auto;
	padding: var(--fc-space-8) var(--fc-space-4);
	display: flex;
	flex-direction: column;
	gap: var(--fc-space-4);
}

.fc-page__footer a {
	color: inherit;
	opacity: 0.9;
}

/* Named shells (structure hooks for future page work) */
.fc-page--home .fc-page__hero {
	padding-block: var(--fc-space-10) var(--fc-space-8);
}

.fc-page--search .fc-page__main,
.fc-page--pricing .fc-page__main,
.fc-page--contact .fc-page__main,
.fc-page--about .fc-page__main {
	max-width: var(--fc-content-width);
}

.fc-page--profile .fc-page__main {
	display: grid;
	gap: var(--fc-space-6);
}

@media (min-width: 48rem) {
	.fc-page__nav { display: flex; }
	.fc-page__header-inner,
	.fc-page__main,
	.fc-page__footer-inner {
		padding-inline: var(--fc-space-6);
	}

	.fc-page--profile .fc-page__main {
		grid-template-columns: minmax(0, 2fr) minmax(14rem, 1fr);
		align-items: start;
	}
}
