/**
 * Inner page polish (Step 9) + conversion UX (Step 10).
 * Loaded after hlm-kadence.css.
 */

/* ─── Page hero: readable text over photography ────────────── */
.hlm-page-hero__media.hlm-media-wrap--overlay-off::after {
	display: none;
}

.hlm-page-hero__media:not(.hlm-media-wrap--overlay-off)::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(
		180deg,
		rgba(0, 21, 32, 0.72) 0%,
		rgba(0, 21, 32, 0.55) 45%,
		rgba(0, 21, 32, 0.82) 100%
	);
}

[data-theme="light"] .hlm-page-hero__media::after {
	background: linear-gradient(
		180deg,
		rgba(0, 51, 102, 0.78) 0%,
		rgba(0, 51, 102, 0.58) 50%,
		rgba(0, 21, 32, 0.85) 100%
	);
}

.hlm-page-hero__inner .hlm-overline {
	color: var(--hlm-gold-300);
}

.hlm-page-hero__inner .hlm-h1 {
	color: var(--hlm-white);
	text-wrap: balance;
}

.hlm-page-hero__inner .hlm-body-lg {
	color: rgba(255, 255, 255, 0.86);
	text-wrap: pretty;
}

/* ─── Inner page section rhythm ────────────────────────────── */
body.hlm-theme:not(.home) .hlm-section {
	padding-block: clamp(4rem, 8vw, 6.5rem);
}

body.hlm-theme:not(.home) .hlm-section-header {
	margin-bottom: clamp(2rem, 4vw, 3rem);
}

body.hlm-theme:not(.home) .hlm-section-header .hlm-body-lg {
	max-width: 42rem;
	margin-inline: auto;
}

/* ─── Partner showcase (semantic surfaces) ─────────────────── */
.hlm-partner-showcase__content .hlm-overline {
	color: var(--hlm-text-accent);
}

.hlm-partner-showcase__content .hlm-h2,
.hlm-partner-showcase__stat-label {
	color: var(--hlm-text-primary);
}

.hlm-partner-showcase__stat-number {
	color: var(--hlm-primary);
}

.hlm-partner-showcase__copy,
.hlm-partner-showcase__copy p {
	color: var(--hlm-text-muted);
}

.hlm-partner-showcase__stat {
	background: var(--hlm-surface-raised);
	border-color: var(--hlm-card-border);
}

.hlm-partner-showcase__image {
	border-radius: 16px;
	box-shadow: var(--hlm-shadow-elevated);
}

/* ─── Process strip + testimonials density ─────────────────── */
.hlm-process--strip .hlm-process__step {
	padding: clamp(1.25rem, 3vw, 1.75rem);
}

.hlm-testimonial-card {
	padding: clamp(1.5rem, 3vw, 2rem);
}

.hlm-testimonial-quote {
	font-size: clamp(1rem, 2.2vw, 1.0625rem);
	line-height: 1.65;
}

/* ─── Contact: campus-photo form hero after page hero ──────── */
.hlm-page-hero + .hlm-hero {
	padding-block: clamp(3rem, 6vw, 5rem);
}

.hlm-page-hero + .hlm-hero.hlm-hero--has-media {
	background: transparent;
	color: var(--hlm-white);
}

.hlm-page-hero + .hlm-hero.hlm-hero--has-media .hlm-hero-content .hlm-overline {
	color: var(--hlm-gold-300);
}

.hlm-page-hero + .hlm-hero.hlm-hero--has-media .hlm-hero-content .hlm-h1,
.hlm-page-hero + .hlm-hero.hlm-hero--has-media .hlm-hero-content .hlm-h1 em {
	color: var(--hlm-white);
}

.hlm-page-hero + .hlm-hero.hlm-hero--has-media .hlm-hero-desc,
.hlm-page-hero + .hlm-hero.hlm-hero--has-media .hlm-hero-trust-text {
	color: var(--hlm-on-dark-muted);
}

.hlm-page-hero + .hlm-hero.hlm-hero--has-media .hlm-hero-trust-text strong {
	color: var(--hlm-white);
}

.hlm-page-hero + .hlm-hero.hlm-hero--has-media .hlm-btn-outline {
	color: var(--hlm-white);
	border-color: rgba(255, 255, 255, 0.32);
}

.hlm-page-hero + .hlm-hero.hlm-hero--has-media .hlm-btn-primary {
	background: var(--hlm-secondary);
	border-color: var(--hlm-secondary);
	color: var(--hlm-white);
}

.hlm-page-hero + .hlm-hero .hlm-form-card {
	border-radius: 20px;
}

/* ─── Blog category chips ──────────────────────────────────── */
.hlm-blog-card__categories {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 0.75rem;
}

.hlm-blog-card__category {
	display: inline-block;
	padding: 0;
	border: none;
	border-radius: 0;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--hlm-gold-500);
	background: transparent;
	transition: color var(--hlm-transition);
}

.hlm-blog-card__category:hover {
	color: var(--hlm-gold-300);
}

[data-theme="dark"] .hlm-blog-card__category {
	color: var(--hlm-gold-300);
}

/* Blog card media header (navy graphic band when no featured image) */
body.hlm-theme.hlm-blog .hlm-blog-card__media--placeholder {
	background:
		radial-gradient(circle at 20% 30%, rgba(74, 144, 217, 0.18) 0%, transparent 45%),
		radial-gradient(circle at 80% 70%, rgba(201, 169, 110, 0.12) 0%, transparent 40%),
		linear-gradient(135deg, var(--hlm-navy-900) 0%, var(--hlm-navy-950) 100%);
}

body.hlm-theme.hlm-blog .hlm-blog-card__placeholder {
	height: 160px;
	background: transparent;
}

/* Inner page sub-navigation (legacy; patterns no longer inject this block) */
.hlm-page-subnav {
	padding-block: clamp(1.5rem, 3vw, 2rem);
	background: var(--hlm-surface-raised);
	border-bottom: 1px solid var(--hlm-border-subtle);
}

.hlm-page-subnav__inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.75rem;
}

.hlm-page-subnav__pill {
	display: inline-flex;
	align-items: center;
	padding: 0.625rem 1.125rem;
	border-radius: 999px;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
	color: var(--hlm-text-primary);
	background: var(--hlm-section-alt-bg);
	border: 1px solid var(--hlm-card-border);
	transition: border-color var(--hlm-transition), color var(--hlm-transition), background var(--hlm-transition);
}

.hlm-page-subnav__pill:hover,
.hlm-page-subnav__pill.is-active {
	color: var(--hlm-primary);
	border-color: rgba(74, 144, 217, 0.35);
	background: rgba(74, 144, 217, 0.08);
}

/* Page hero primary CTA */
.hlm-page-hero__cta {
	margin-top: 1.75rem;
}

.hlm-page-hero__cta .hlm-btn-gold {
	min-width: 220px;
}

/* Contact cards: icon styling */
.hlm-contact__item-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	margin-bottom: 1rem;
	border-radius: 12px;
	background: rgba(74, 144, 217, 0.1);
	color: var(--hlm-secondary);
}

.hlm-contact__item-icon svg {
	width: 1.35rem;
	height: 1.35rem;
}

/* ─── Inner page: hero → stats bar → partners ──────────────── */
body.hlm-theme:not(.home) .hlm-page-hero + .hlm-stats {
	margin-top: 0;
}

body.hlm-theme:not(.home) .hlm-page-hero + .hlm-stats + .hlm-partners {
	padding-top: clamp(3rem, 6vw, 4.5rem);
	background: var(--hlm-section-alt-bg);
}

.hlm-blog__empty {
	text-align: center;
	padding: 2.5rem 1.5rem;
	border-radius: 16px;
	background: var(--hlm-section-alt-bg);
	border: 1px dashed var(--hlm-border-strong);
	color: var(--hlm-text-muted);
}

/* ─── Mobile layout refinements ────────────────────────────── */
@media (max-width: 768px) {
	body.hlm-theme:not(.home) .hlm-section {
		padding-block: 3.5rem;
	}

	.hlm-page-hero {
		min-height: auto;
		padding-top: calc(var(--hlm-header-height) + 2rem);
		padding-bottom: 2.5rem;
	}

	.hlm-page-hero__inner .hlm-h1 {
		font-size: clamp(1.75rem, 7vw, 2.25rem);
	}

	.hlm-partner-showcase__grid {
		gap: 2rem;
	}

	.hlm-partner-showcase__image {
		height: 240px;
		object-fit: cover;
	}

	.hlm-process--strip .hlm-process__steps {
		gap: 1rem;
	}

	.hlm-testimonials-grid,
	.hlm-testimonials__grid {
		gap: 1rem;
	}

	.hlm-page-hero + .hlm-hero {
		padding-block: 2.5rem;
	}
}

@media (max-width: 480px) {
	.hlm-partner-showcase__stats,
	.hlm-partner-showcase__stats--row {
		grid-template-columns: 1fr;
	}
}

/* ─── Hero: photo/video background = light-on-dark typography ─ */
.hlm-hero--has-media.hlm-hero--has-overlay .hlm-hero-content .hlm-overline {
	color: var(--hlm-gold-300);
}

.hlm-hero--has-media.hlm-hero--has-overlay .hlm-hero-content .hlm-h1,
.hlm-hero--has-media.hlm-hero--has-overlay .hlm-hero-content .hlm-h1 em {
	color: var(--hlm-white);
}

.hlm-hero--has-media.hlm-hero--has-overlay .hlm-hero-content .hlm-h1 em {
	color: var(--hlm-gold-300);
}

.hlm-hero--has-media.hlm-hero--has-overlay .hlm-hero-desc,
.hlm-hero--has-media.hlm-hero--has-overlay .hlm-hero-trust-text {
	color: var(--hlm-on-dark-muted);
}

.hlm-hero--has-media.hlm-hero--has-overlay .hlm-hero-trust-text strong {
	color: var(--hlm-white);
}

.hlm-hero--has-media.hlm-hero--has-overlay .hlm-btn-outline {
	color: var(--hlm-white);
	border-color: rgba(255, 255, 255, 0.32);
}

.hlm-hero--has-media.hlm-hero--has-overlay .hlm-btn-outline:hover {
	border-color: var(--hlm-gold-300);
	color: var(--hlm-gold-300);
}

.hlm-hero--has-media.hlm-hero--has-overlay .hlm-btn-primary {
	background: var(--hlm-secondary);
	border-color: var(--hlm-secondary);
	color: var(--hlm-white);
}

.hlm-hero--has-media.hlm-hero--has-overlay .hlm-btn-primary:hover {
	background: var(--hlm-navy-700);
	border-color: var(--hlm-navy-700);
}

/* ─── Soft CTA band (cream + gold primary) ───────────────────── */
.hlm-cta--soft {
	background: linear-gradient(180deg, var(--hlm-cream-100) 0%, var(--hlm-white) 100%);
	color: var(--hlm-text-primary);
}

.hlm-cta--soft::before {
	background: radial-gradient(ellipse 70% 60% at 50% 0%, rgba(74, 144, 217, 0.08) 0%, transparent 65%);
}

.hlm-cta--soft .hlm-overline {
	color: var(--hlm-text-accent);
}

.hlm-cta--soft .hlm-h2,
.hlm-cta--soft .hlm-cta-inner h2 {
	color: var(--hlm-text-primary);
}

.hlm-cta--soft .hlm-body-lg,
.hlm-cta--soft p {
	color: var(--hlm-text-muted);
}

.hlm-cta--soft .hlm-btn-outline {
	color: var(--hlm-primary);
	border-color: rgba(0, 51, 102, 0.22);
}

.hlm-cta--soft .hlm-btn-outline:hover {
	border-color: var(--hlm-secondary);
	color: var(--hlm-secondary);
}

.hlm-btn-gold {
	background: var(--hlm-cta-gold-bg);
	color: var(--hlm-cta-gold-text);
	border: 1.5px solid var(--hlm-cta-gold-bg);
}

.hlm-btn-gold:hover {
	background: var(--hlm-gold-300);
	border-color: var(--hlm-gold-300);
	color: var(--hlm-navy-950);
}

/* ─── Inner pages: cream handoff before navy footer ────────── */
body.hlm-theme:not(.home) .hlm-cta--soft + .hlm-footer,
body.hlm-theme:not(.home) .hlm-section:last-of-type.hlm-cta--soft {
	margin-bottom: 0;
}

/* ─── Inner page ecosystem: visual rhythm (60 base / 30 brand / 10 accent) ─ */
body.hlm-theme:not(.home) .entry-content > .hlm-page-hero {
	margin-bottom: 0;
}

/* SEO intro sits between hero and first content block */
body.hlm-theme:not(.home) .hlm-page-hero + .hlm-seo-intro {
	padding-block: clamp(2.25rem, 4.5vw, 3.25rem);
	border-top: 1px solid var(--hlm-border-subtle);
}

body.hlm-theme:not(.home) .hlm-seo-intro .hlm-seo-intro__body {
	max-width: 42rem;
	margin-inline: auto;
	text-align: center;
	color: var(--hlm-text-muted);
}

body.hlm-theme:not(.home) .hlm-seo-intro + .hlm-hero,
body.hlm-theme:not(.home) .hlm-seo-intro + .hlm-section {
	margin-top: 0;
}

/* Contact: hero → intro → inquiry form → process → soft CTA */
body.hlm-theme:not(.home) .hlm-page-hero + .hlm-seo-intro + .hlm-contact--inquiry {
	margin-top: 0;
}

body.hlm-theme:not(.home) .hlm-page-hero + .hlm-contact--inquiry {
	margin-top: 0;
}

body.hlm-theme:not(.home) .hlm-contact--inquiry + .hlm-process--strip {
	background: var(--hlm-surface-base);
}

body.hlm-theme:not(.home) .hlm-process--strip + .hlm-cta--soft {
	border-top: 1px solid var(--hlm-border-subtle);
}

/* Legacy landing hero handoff (not used on Contact Us) */
body.hlm-theme:not(.home) .hlm-page-hero + .hlm-hero.hlm-hero--landing {
	margin-top: 0;
}

body.hlm-theme:not(.home) .hlm-hero.hlm-hero--landing + .hlm-contact {
	padding-top: clamp(3rem, 6vw, 4.5rem);
}

body.hlm-theme:not(.home) .hlm-contact + .hlm-cta--soft {
	border-top: 1px solid var(--hlm-border-subtle);
}

/* Services: hero flows into stats bar, then cream grid → process → navy stats → brand CTA */
body.hlm-theme:not(.home) .hlm-page-hero + .hlm-stats {
	border-top: none;
}

body.hlm-theme:not(.home) .hlm-page-hero + .hlm-stats + .hlm-services {
	padding-top: clamp(3.5rem, 7vw, 5rem);
}

body.hlm-theme:not(.home) .hlm-services + .hlm-process--strip {
	background: var(--hlm-surface-base);
}

body.hlm-theme:not(.home) .hlm-process--strip + .hlm-stats--network {
	margin-top: 0;
}

body.hlm-theme:not(.home) .hlm-stats--network + .hlm-cta:not(.hlm-cta--soft) {
	margin-top: 0;
}

/* About: navy story → cream values → light timeline → team cards → cream soft CTA */
body.hlm-theme:not(.home) .hlm-partner-showcase + .hlm-why-us {
	padding-top: clamp(3.5rem, 7vw, 5rem);
}

body.hlm-theme:not(.home) .hlm-why-us + .hlm-timeline {
	background: var(--hlm-surface-base);
}

body.hlm-theme:not(.home) .hlm-timeline + .hlm-team,
body.hlm-theme:not(.home) .hlm-timeline + .hlm-team--leadership {
	padding-top: clamp(3.5rem, 7vw, 5rem);
}

body.hlm-theme:not(.home) .hlm-team + .hlm-cta--soft {
	border-top: 1px solid var(--hlm-border-subtle);
}

/* Affiliations: hero → navy showcase → cream partners → benefits → network stats → soft CTA */
body.hlm-theme:not(.home) .hlm-partner-showcase + .hlm-partners {
	padding-top: clamp(3.5rem, 7vw, 5rem);
}

body.hlm-theme:not(.home) .hlm-partners + .hlm-affiliation {
	background: var(--hlm-surface-base);
}

body.hlm-theme:not(.home) .hlm-affiliation + .hlm-stats--network {
	margin-top: 0;
}

body.hlm-theme:not(.home) .hlm-stats--network + .hlm-cta--soft {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] body.hlm-theme:not(.home) .hlm-stats--network + .hlm-cta--soft {
	border-top-color: var(--hlm-border-subtle);
}

/* Brand CTA on inner pages: gold primary on navy (10% accent rule) */
body.hlm-theme:not(.home) .hlm-cta:not(.hlm-cta--soft) .hlm-btn-primary {
	background: var(--hlm-cta-gold-bg);
	border-color: var(--hlm-cta-gold-bg);
	color: var(--hlm-cta-gold-text);
}

body.hlm-theme:not(.home) .hlm-cta:not(.hlm-cta--soft) .hlm-btn-primary:hover {
	background: var(--hlm-gold-300);
	border-color: var(--hlm-gold-300);
	color: var(--hlm-navy-950);
}
