/* Home. Reference values are the 1440 px design; sizes scale fluidly below. */

.home-hero .jdl-lede { font-size: clamp(19px, 1.736vw, 25px); line-height: 1.36; }
.home-approach .jdl-h2,
.home-support .jdl-h2 { font-size: clamp(34px, 4.514vw, 65px); line-height: 1.016; }
.home-cta .jdl-h2 { font-size: clamp(30px, 4.03vw, 58px); line-height: 1.1; }

.home-hero { padding-block: clamp(24px, 4.2vw, 60px) clamp(28px, 2.4vw, 35px); }
.home-hero__split { --split-left: 761fr; --split-right: 551fr; align-items: start; }
.home-hero__body { padding-top: clamp(0px, 2.2vw, 32px); }
.home-hero__links { margin-top: clamp(20px, 3.2vw, 46px); }
.home-hero__links a { display: inline-block; padding-block: 7px; }

/* Sectors */
.home-sectors__head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 24px;
	margin-block: clamp(20px, 2.2vw, 32px) clamp(12px, 1.4vw, 20px);
}
.home-sectors__grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 24px 18px;
}
.home-sector { min-width: 0; }
.home-sector .jdl-frame { margin-bottom: 18px; }
.home-sector__title {
	font-size: clamp(22px, 2.083vw, 30px);
	line-height: 1;
}
.home-sector__text {
	margin-top: 18px;
	color: var(--ink);
	font-size: var(--fs-body);
	line-height: 1.33;
}
.home-sectors { padding-bottom: clamp(48px, 4.9vw, 71px); }

/* Navy approach band */
.home-approach { padding-block: clamp(36px, 3.35vw, 48px) clamp(40px, 3.75vw, 54px); }
.home-approach__split { --split-left: 728fr; --split-right: 584fr; margin-top: clamp(20px, 2.6vw, 38px); }
.home-approach__text {
	max-width: 570px;
	font-size: clamp(18px, 1.6vw, 23px);
	line-height: 1.39;
}

/* Shared support + opportunities */
.home-support { padding-top: clamp(40px, 5.3vw, 76px); }
.home-support__split { --split-left: 761fr; --split-right: 551fr; }
.home-support__text {
	font-size: clamp(18px, 1.6vw, 23px);
	line-height: 1.39;
}
.home-opps { margin-top: clamp(28px, 3vw, 43px); }
.home-opps__head { display: flex; align-items: center; gap: clamp(16px, 3.5vw, 50px); }
.home-opps__head .jdl-eyebrow { flex: none; }
.home-opps__head .jdl-rule { flex: 1; }
.home-opps__links {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0 24px;
	padding-block: clamp(8px, 1.25vw, 18px) clamp(12px, 1.1vw, 16px);
}

/* Blue CTA band */
.home-cta { padding-block: clamp(32px, 2.2vw, 32px); }
.home-cta__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px 32px;
}
.home-cta .jdl-btn { min-width: 260px; min-height: 52px; }

@media (max-width: 999px) {
	.home-sectors__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
	.home-opps__links { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 480px) {
	.home-sectors__grid { grid-template-columns: minmax(0, 1fr); }
	.home-cta .jdl-btn { width: 100%; min-width: 0; }
}
