:root {
	--navy: #0a1c2e;
	--navy-lt: #112438;
	--crimson: #8b1a2b;
	--crimson-lt: #b82035;
	--gold: #b8862a;
	--gold-lt: #d4a840;
	--sun: #f5d478;
	--teal: #1a7080;
	--teal-lt: #22a0b8;
	--sage: #3d7a5a;
	--cream: #fdfaf5;
	--warm: #f7f2ea;
	--stone: #eee8de;
	--sand: #e4ddd0;
	--sky: #e8f2f6;
	--body: #2c3e50;
	--muted: #6b7f8f;
	--white: #ffffff;
	--e: cubic-bezier(0.22, 0.61, 0.36, 1);
	--spring: cubic-bezier(0.34, 1.56, 0.64, 1);
}
body {
	color: var(--body);
	background: var(--cream);
}

/* ── NAV ── */
nav {
	background: rgba(10, 28, 46, 0.97);
}

.nav-links a {
	font-weight: 600;
}
.nav-links a:hover {
	color: var(--gold-lt);
}
.nav-cta {
	background: var(--gold);
	box-shadow: 0 4px 18px rgba(184, 134, 42, 0.35);
}
.nav-cta:hover {
	background: var(--gold-lt);
	transform: translateY(-1px);
	box-shadow: 0 6px 24px rgba(184, 134, 42, 0.5);
}

/* ── HERO ── */
#home {
  background: var(--navy);
	overflow: hidden;
}
.home-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
	gap: 30px;
  min-height: calc(100vh - 200px);
}
.hero-wash {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		radial-gradient(
			ellipse 65% 55% at 80% 40%,
			rgba(184, 134, 42, 0.18) 0%,
			transparent 65%
		),
		radial-gradient(
			ellipse 50% 50% at 15% 70%,
			rgba(139, 26, 43, 0.14) 0%,
			transparent 60%
		),
		radial-gradient(
			ellipse 40% 40% at 50% 5%,
			rgba(26, 112, 128, 0.1) 0%,
			transparent 60%
		);
}
.hero-dots {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image: radial-gradient(
		circle,
		rgba(255, 255, 255, 0.04) 1px,
		transparent 1px
	);
	background-size: 28px 28px;
}
.hero-left {
	position: relative;
	z-index: 2;
}
.hero-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: rgba(184, 134, 42, 0.15);
	border: 1px solid rgba(184, 134, 42, 0.35);
	border-radius: 100px;
	padding: 10px 15px;
	margin-bottom: 32px;
}
.hero-pill-dot {
	min-width: 8px;
	min-height: 8px;
	border-radius: 50%;
	background: var(--gold-lt);
	animation: pulse 2s infinite;
}
@keyframes pulse {
	0%,
	100% {
		opacity: 1;
		transform: scale(1);
	}
	50% {
		opacity: 0.4;
		transform: scale(1.4);
	}
}
.hero-pill-text {
	font-size: 12px;
	font-weight: 700;
	color: var(--gold-lt);
	letter-spacing: 0.05em;
}
.hero-h1 {
	font-size: clamp(34px, 3.8vw, 58px);
	max-width: 556px;
	color: var(--white);
	line-height: 1.12;
	margin-bottom: 24px;
	animation: slideUp 0.9s var(--e) both;
}
.hero-h1 em {
	color: var(--gold-lt);
	font-style: italic;
}
.hero-sub {
	font-size: clamp(14px, calc(12.847px + 0.36vw), 18px);
	font-weight: 400;
	color: rgba(255, 255, 255, 0.72);
	line-height: 1.8;
	max-width: 500px;
	margin-bottom: 40px;
	animation: slideUp 0.9s 0.1s var(--e) both;
}
.hero-sub strong {
	color: rgba(255, 255, 255, 0.95);
	font-weight: 700;
}
.hero-btns {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
	animation: slideUp 0.9s 0.2s var(--e) both;
}
.btn-gold,
.btn-outline {
  font-weight: 800;
  font-size: 15px;
  border-radius: 100px;
}
.btn-gold {
	background: var(--gold);
	color: var(--white);
	box-shadow: 0 6px 24px rgba(184, 134, 42, 0.35);
	transition:
		background 0.2s,
		transform 0.2s var(--spring),
		box-shadow 0.2s;
}
.btn-gold:hover {
	background: var(--gold-lt);
	transform: translateY(-2px) scale(1.02);
	box-shadow: 0 10px 32px rgba(184, 134, 42, 0.5);
}
.btn-outline {
	background: transparent;
	color: rgba(255, 255, 255, 0.85);
	border: 2px solid rgba(255, 255, 255, 0.25);
	transition:
		border-color 0.2s,
		color 0.2s,
		background 0.2s;
}
.btn-outline:hover {
	border-color: var(--gold-lt);
	color: var(--gold-lt);
	background: rgba(184, 134, 42, 0.08);
}

/* Hero right — service member cards */
.hero-right {
	position: relative;
	z-index: 2;
	animation: slideUp 0.9s 0.15s var(--e) both;
}
.service-scene {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}
.service-card {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 20px;
	padding: clamp(15px, calc(12.117px + 0.901vw), 25px);
	text-align: center;
	transition:
		background 0.25s,
		border-color 0.25s,
		transform 0.25s var(--spring);
}
.service-card:nth-of-type(3) {
	grid-column: 1 / -1;
}
.service-card:hover {
	background: rgba(184, 134, 42, 0.14);
	border-color: rgba(184, 134, 42, 0.35);
	transform: translateY(-4px);
}
.svc-avatar {
	width: clamp(48px, calc(42.234px + 1.802vw), 68px);
	height: clamp(48px, calc(42.234px + 1.802vw), 68px);
	margin: 0 auto 14px;
	display: block;
}
.svc-name {
	font-size: 15px;
	color: var(--white);
	font-weight: 600;
	margin-bottom: 3px;
}
.svc-role {
	font-size: 11px;
	font-weight: 700;
	color: var(--gold-lt);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin-bottom: 10px;
}
.svc-quote {
	font-size: 12px;
	color: rgba(255, 255, 255, 0.55);
	line-height: 1.65;
	font-style: italic;
}
.service-card.wide {
	grid-column: 1/-1;
	display: flex;
	gap: 20px;
	text-align: left;
	align-items: center;
}
.service-card.wide .svc-avatar {
	flex-shrink: 0;
	margin: 0;
}
@keyframes slideUp {
	from {
		opacity: 0;
		transform: translateY(24px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.info-card,
.comm-card,
.cause-card,
.inv-card,
.sign-card,
.quote-band-inner,
.path-step,
.persona-card,
.res-card,
.faq-item {
	opacity: 0;
	transform: translateY(20px);
}

.info-card.fade-in-up,
.comm-card.fade-in-up,
.cause-card.fade-in-up,
.inv-card.fade-in-up,
.sign-card.fade-in-up,
.quote-band-inner.fade-in-up,
.path-step.fade-in-up,
.persona-card.fade-in-up,
.res-card.fade-in-up,
.faq-item.fade-in-up {
	opacity: 1;
	transform: translateY(0);
	transition: 0.6s ease;
}

.severity-card,
.tp,
.tech-visual,
#vet-tbi-form {
	opacity: 0;
}
.severity-card.fade-in,
.tech-visual.fade-in,
#vet-tbi-form.fade-in {
	opacity: 1;
	transition: 0.6s ease;
}
.tp.fade-in-delay {
	opacity: 1;
	transition: 0.6s ease;
}

.ci-item {
	opacity: 0;
	transform: translateX(-100%);
}

.ci-item.fade-in-slide-right {
	opacity: 1;
	transform: translateX(0);
	transition: 0.6s ease;
}

/* ── SHARED ── */
.eyebrow {
	font-size: 12px;
	font-weight: 500;
	color: var(--gold);
	letter-spacing: 0.2em;
	text-transform: uppercase;
	margin-bottom: 12px;
}
.sh {
	font-size: clamp(28px, 3vw, 46px);
	color: var(--navy);
	line-height: 1.15;
	margin-bottom: 16px;
	font-weight: 700;
}
.sh em {
	color: var(--teal);
	font-style: italic;
}
.sintro {
	font-size: clamp(14px, calc(13.423px + 0.18vw), 16px);
	color: var(--muted);
	line-height: 1.85;
	max-width: 680px;
	margin-bottom: 56px;
}

/* ── HONOR BAND ── */
.honor-band {
	background: linear-gradient(135deg, var(--navy) 0%, #182e44 100%);
	padding: 50px 0;
}
.honor-band-content {
  display: grid;
	grid-template-columns: repeat(3, 1fr);
  align-items: center;
  justify-content: center;
}
.honor-item {
  display: flex;
	align-items: center;
	gap: 12px;
  padding: 0 10px;
	border-right: 1px solid rgba(255, 255, 255, 0.12);
}
.honor-item:first-of-type {
  padding: 0 10px 0 0;
}
.honor-item:last-of-type {
  padding: 0 0 0 10px;
	border-right: none;
}
.honor-flag {
	font-size: clamp(20px, calc(18.847px + 0.36vw), 24px);
  color: var(--white);
}
.honor-text {
	font-size: clamp(14px, calc(13.423px + 0.18vw), 16px);
	color: rgba(255, 255, 255, 0.65);
	font-style: italic;
}

/* ── STATS BAND ── */
.stats-band {
	background: linear-gradient(135deg, #8b1a2b, #6b1020);
	padding: 50px 0;
}
.stats-inner {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0;
}
.stat {
	text-align: center;
	padding: 0 15px;
	border-right: 1px solid rgba(255, 255, 255, 0.15);
}
.stat:last-child {
	border-right: none;
	padding: 0 0 0 15px;
}
.stat:first-child {
	padding: 0 15px 0 0;
}
.stat-n {
	font-size: clamp(30px, calc(24.234px + 1.802vw), 50px);
	color: var(--sun);
	line-height: 1;
	margin-bottom: 10px;
}
.stat-l {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.78);
	line-height: 1.5;
}
.stat-s {
	font-size: 10px;
	color: rgba(255, 255, 255, 0.38);
	margin-top: 6px;
	letter-spacing: 0.1em;
}

/* ── WHAT IS TBI ── */
.what {
	background: var(--white);
	padding: var(--vertical-padding) 0;
}
.what-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
	align-items: start;
}
.prose {
	font-size: clamp(14px, calc(13.423px + 0.18vw), 16px);
	color: var(--body);
	line-height: 1.85;
	margin-bottom: 20px;
}
.prose strong {
	color: var(--navy);
	font-weight: 700;
}
.info-card {
	background: var(--sky);
	border-radius: 14px;
	padding: clamp(0.938rem, calc(0.811rem + 0.631vw), 1.375rem)
		clamp(0.938rem, calc(0.757rem + 0.901vw), 1.563rem);
	border-left: clamp(3px, calc(2.712px + 0.09vw), 4px) solid var(--teal);
	margin-bottom: 16px;
}
.info-card h4 {
	font-size: clamp(16px, calc(15.423px + 0.18vw), 18px);
	font-weight: 700;
	color: var(--navy);
	margin-bottom: 8px;
}
.info-card p {
	font-size: 14px;
	color: var(--body);
	line-height: 1.7;
}
.severity-card {
	background: var(--warm);
	border-radius: 14px;
	padding: clamp(0.938rem, calc(0.811rem + 0.631vw), 1.375rem)
		clamp(0.938rem, calc(0.757rem + 0.901vw), 1.563rem);
	margin-bottom: 16px;
}
.severity-title {
	font-size: clamp(16px, calc(15.423px + 0.18vw), 18px);
	color: var(--navy);
	margin-bottom: 16px;
}
.severity-row {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 12px;
}
.severity-row:last-child {
	margin-bottom: 0;
}
.sev-badge {
	min-width: 80px;
	text-align: center;
	border-radius: 6px;
	padding: 4px 10px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.05em;
}
.sev-mild {
	background: rgba(61, 122, 90, 0.15);
	color: var(--sage);
}
.sev-mod {
	background: rgba(184, 134, 42, 0.15);
	color: var(--gold);
}
.sev-sev {
	background: rgba(139, 26, 43, 0.15);
	color: var(--crimson);
}
.sev-text {
	font-size: 14px;
	color: var(--body);
	line-height: 1.6;
}

/* ── WHO IS AFFECTED ── */
.who {
	background: var(--warm);
	padding: var(--vertical-padding) 0;
}
.who-intro {
	font-size: clamp(14px, calc(12.847px + 0.36vw), 18px);
	font-style: italic;
	color: var(--navy);
	line-height: 1.65;
	border-left: clamp(3px, calc(2.712px + 0.09vw), 4px) solid var(--gold);
	padding-left: clamp(15px, calc(12.117px + 0.901vw), 25px);
	margin-bottom: 56px;
	max-width: 680px;
}
.community-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
.comm-card {
	background: var(--white);
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
	transition:
		transform 0.25s var(--spring),
		box-shadow 0.25s;
}
.comm-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 14px 40px rgba(0, 0, 0, 0.14);
}
.cc-top {
	padding: clamp(20px, calc(17.694px + 0.721vw), 28px);
	text-align: center;
}
.cc-icon {
	font-size: clamp(34px, calc(31.117px + 0.901vw), 44px);
	margin-bottom: 16px;
}
.cc-title {
	font-size: clamp(18px, calc(17.423px + 0.18vw), 20px);
	color: var(--navy);
	margin-bottom: 6px;
}
.cc-stat {
	font-size: 12px;
	color: var(--gold);
	letter-spacing: 0.08em;
	font-weight: 500;
	margin-bottom: 12px;
}
.cc-body {
	font-size: 14px;
	color: var(--body);
	line-height: 1.75;
}
.cc-body strong {
	color: var(--navy);
	font-weight: 700;
}
.cc-bottom {
	padding: clamp(15px, calc(13.559px + 0.45vw), 20px);
	border-top: 1px solid var(--stone);
	background: rgba(0, 0, 0, 0.02);
}
.cc-bottom p {
	font-size: 14px;
	color: var(--body);
	line-height: 1.7;
}
.cc-bottom strong {
	color: var(--teal);
	font-weight: 700;
}
.comm-card:nth-child(1) .cc-top {
	background: linear-gradient(160deg, #e8eef8, #c8d4f0);
}
.comm-card:nth-child(2) .cc-top {
	background: linear-gradient(160deg, #fdf0e0, #f8daaa);
}
.comm-card:nth-child(3) .cc-top {
	background: linear-gradient(160deg, #e8f2f6, #c0dce8);
}

/* ── THE INVISIBLE WOUND ── */
.invisible {
	background: var(--navy);
	padding: var(--vertical-padding) 0;
}
.invisible .eyebrow {
	color: var(--gold-lt);
}
.invisible .sh {
	color: var(--white);
}
.invisible .sintro {
	color: rgba(255, 255, 255, 0.65);
	margin-bottom: 48px;
}
.inv-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 32px;
	margin-bottom: 48px;
}
.inv-card {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 16px;
	padding: clamp(15px, calc(12.117px + 0.901vw), 25px);
	transition: 0.25s ease;
}
.inv-card:hover {
	background: rgba(184, 134, 42, 0.12);
	border-color: rgba(184, 134, 42, 0.3);
}
.inv-icon {
	font-size: clamp(24px, calc(21.694px + 0.721vw), 32px);
	margin-bottom: 16px;
}
.inv-title {
	font-size: clamp(16px, calc(14.847px + 0.36vw), 20px);
	color: var(--white);
	margin-bottom: 10px;
}
.inv-body {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.62);
	line-height: 1.8;
}
.inv-body strong {
	color: var(--sun);
	font-weight: 600;
}
.overlap-box {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(184, 134, 42, 0.3);
	border-radius: 16px;
	padding: clamp(15px, calc(12.117px + 0.901vw), 25px);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: center;
}
.overlap-text h3 {
	font-size: clamp(16px, calc(13.117px + 0.901vw), 26px);
	color: var(--white);
	margin-bottom: 14px;
}
.overlap-text p {
	font-size: clamp(14px, calc(13.423px + 0.18vw), 16px);
	color: rgba(255, 255, 255, 0.68);
	line-height: 1.8;
	margin-bottom: 14px;
}
.overlap-text p strong {
	color: var(--gold-lt);
}
.overlap-visual {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.ov-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: rgba(255, 255, 255, 0.07);
	border-radius: 10px;
	padding: clamp(10px, calc(8.559px + 0.45vw), 15px);
}
.ov-label {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.7);
	font-weight: 600;
}
.ov-pct {
	font-size: 14px;
	color: var(--gold-lt);
}
.ov-bar-wrap {
	width: 120px;
	height: 6px;
	background: rgba(255, 255, 255, 0.1);
	border-radius: 3px;
	margin: 0 12px;
	flex: 1;
}
.ov-bar {
	height: 100%;
	border-radius: 3px;
	background: var(--gold);
}

/* ── CAUSES ── */
.causes {
	background: var(--stone);
	padding: var(--vertical-padding) 0;
}
.cause-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.cause-card {
	background: var(--white);
	border-radius: 16px;
	padding: clamp(15px, calc(12.117px + 0.901vw), 25px);
	text-align: center;
	box-shadow: 0 2px 14px rgba(0, 0, 0, 0.06);
	transition:
		transform 0.25s var(--spring),
		box-shadow 0.25s;
}
.cause-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 32px rgba(0, 0, 0, 0.1);
}
.cause-icon {
	font-size: clamp(28px, calc(25.694px + 0.721vw), 36px);
	margin-bottom: 12px;
}
.cause-cat {
	font-size: 11px;
	color: var(--gold);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	margin-bottom: 8px;
}
.cause-title {
	font-size: clamp(16px, calc(15.423px + 0.18vw), 18px);
	font-weight: 700;
	color: var(--navy);
	margin-bottom: 10px;
}
.cause-body {
	font-size: 14px;
	color: var(--muted);
	line-height: 1.65;
}
.cause-stat {
	display: inline-block;
	margin-top: 10px;
	font-size: 12px;
	color: var(--teal);
	font-weight: 500;
}

/* ── HOW CLEARGAZETEST HELPS ── */
.tech {
	background: var(--white);
	padding: var(--vertical-padding) 0;
}
.tech-split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
	align-items: center;
}
.tech-visual {
	background: linear-gradient(160deg, var(--navy), #18304e);
	border-radius: 24px;
	padding: clamp(15px, calc(6.64px + 2.613vw), 44px);
	position: relative;
	overflow: hidden;
}
.tech-visual::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(
		ellipse 80% 60% at 70% 40%,
		rgba(184, 134, 42, 0.2) 0%,
		transparent 65%
	);
}
.eye-display {
	width: clamp(100px, calc(88.468px + 3.604vw), 140px);
	height: clamp(100px, calc(88.468px + 3.604vw), 140px);
	border-radius: 50%;
	border: 2px solid rgba(184, 134, 42, 0.4);
	margin: 0 auto 30px;
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.04);
}
.eye-ring {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	border: 1px solid rgba(184, 134, 42, 0.2);
}
.eye-ring:nth-child(2) {
	width: 75%;
	height: 75%;
	inset: 12.5%;
	border-color: rgba(184, 134, 42, 0.3);
}
.eye-center {
	width: clamp(45px, calc(40.676px + 1.351vw), 60px);
	height: clamp(45px, calc(40.676px + 1.351vw), 60px);
	border-radius: 50%;
	background: linear-gradient(135deg, var(--gold), var(--gold-lt));
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: clamp(22px, calc(20.27px + 0.541vw), 28px);
	box-shadow: 0 0 30px rgba(184, 134, 42, 0.5);
	z-index: 2;
	position: relative;
}
.bm-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	position: relative;
	z-index: 2;
}
.bm-chip {
	background: rgba(255, 255, 255, 0.07);
	border-radius: 8px;
	padding: 10px;
	border-left: 3px solid var(--gold);
}
.bm-chip:nth-child(even) {
	border-left-color: var(--teal-lt);
}
.bm-chip-name {
	font-size: 14px;
	font-weight: 700;
	color: var(--white);
	margin-bottom: 2px;
}
.bm-chip-val {
	font-size: 12px;
	color: rgba(255, 255, 255, 0.4);
}
.tech-points {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.tp {
	display: flex;
	gap: 18px;
	align-items: flex-start;
}
.tp-icon {
	width: clamp(35px, calc(31.252px + 1.171vw), 48px);
	height: clamp(35px, calc(31.252px + 1.171vw), 48px);
	border-radius: 12px;
	flex-shrink: 0;
	background: var(--sky);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: clamp(18px, calc(16.847px + 0.36vw), 22px);
	border: 1px solid rgba(26, 112, 128, 0.15);
}
.tp-title {
	font-size: clamp(16px, calc(15.423px + 0.18vw), 18px);
	font-weight: 800;
	color: var(--navy);
	margin-bottom: 5px;
}
.tp-body {
	font-size: clamp(14px, calc(13.423px + 0.18vw), 16px);
	color: var(--muted);
	line-height: 1.7;
}
.tp-body strong {
	color: var(--teal);
	font-weight: 600;
}
.vs-strip {
	margin-top: 48px;
	background: var(--warm);
	border-radius: 14px;
	padding: clamp(15px, calc(9.234px + 1.802vw), 35px);
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	gap: 24px;
	align-items: center;
}
.vs-col h4 {
	font-size: 16px;
	font-weight: 700;
	color: var(--muted);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-bottom: 14px;
}
.vs-col ul {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.vs-col ul li {
	font-size: clamp(14px, calc(13.423px + 0.18vw), 16px);
	color: var(--body);
	display: flex;
	align-items: center;
	gap: 8px;
}
.vs-col.old ul li::before {
	content: '✗';
	color: var(--crimson);
	font-weight: 700;
}
.vs-col.new ul li::before {
	content: '✓';
	color: var(--sage);
	font-weight: 700;
}
.vs-divider {
	text-align: center;
}
.vs-vs {
	font-size: 28px;
	font-style: italic;
	color: rgba(0, 0, 0, 0.15);
}

.vs-col.new {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	height: 100%;
}

/* ── SIGNS ── */
.signs {
	background: var(--sky);
	padding: var(--vertical-padding) 0;
}
.signs-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.sign-card {
	background: var(--white);
	border-radius: 16px;
	padding: clamp(15px, calc(12.117px + 0.901vw), 25px);
	text-align: center;
	box-shadow: 0 2px 16px rgba(0, 0, 0, 0.06);
	transition:
		transform 0.25s var(--spring),
		box-shadow 0.25s;
}
.sign-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.1);
}
.sign-icon {
	font-size: clamp(28px, calc(25.694px + 0.721vw), 36px);
	margin-bottom: 12px;
}
.sign-cat {
	font-size: 11px;
	font-weight: 500;
	color: var(--teal);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	margin-bottom: 10px;
}
.sign-card h4 {
	font-size: clamp(16px, calc(15.423px + 0.18vw), 18px);
	font-weight: 700;
	color: var(--navy);
	margin-bottom: 10px;
}
.sign-list {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.sign-list li {
	font-size: 14px;
	color: var(--body);
	line-height: 1.5;
}
.sign-list li::before {
	content: '· ';
	color: var(--teal);
}
.red-flags {
	margin-top: 48px;
	background: linear-gradient(135deg, #fff0ee, #ffe4df);
	border-radius: 16px;
	border-left: clamp(3px, calc(2.135px + 0.27vw), 6px) solid #e85d50;
	padding: clamp(15px, calc(7.793px + 2.252vw), 40px);
}
.rf-head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 20px;
}
.rf-icon {
	font-size: clamp(24px, calc(22.847px + 0.36vw), 28px);
}
.rf-head h3 {
	font-size: clamp(16px, calc(13.694px + 0.721vw), 24px);
	color: #e85d50;
}
.rf-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}
.rf-item {
	background: rgba(232, 93, 80, 0.08);
	border-radius: 8px;
	padding: 10px;
	font-size: 14px;
	color: #e85d50;
	font-weight: 600;
}

/* ── PATH FORWARD / STEPS ── */
.path {
	background: var(--warm);
	padding: var(--vertical-padding) 0;
}
.path-steps {
	display: flex;
	flex-direction: column;
	position: relative;
}
.path-steps::before {
	content: '';
	position: absolute;
	left: clamp(16px, calc(13.117px + 0.901vw), 26px);
	top: 0;
	bottom: 0;
	width: 2px;
	background: linear-gradient(
		180deg,
		var(--gold),
		var(--teal-lt),
		rgba(26, 112, 128, 0.1)
	);
}
.path-step {
	display: grid;
	grid-template-columns: clamp(35px, calc(29.234px + 1.802vw), 55px) 1fr;
	gap: 24px;
	padding: 0 0 36px;
	position: relative;
}
.path-step:last-child {
	padding-bottom: 0;
}
.step-circle {
	width: clamp(35px, calc(29.234px + 1.802vw), 55px);
	height: clamp(35px, calc(29.234px + 1.802vw), 55px);
	border-radius: 50%;
	background: var(--gold);
	color: var(--white);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: clamp(18px, calc(16.847px + 0.36vw), 22px);
	font-weight: 700;
	flex-shrink: 0;
	position: relative;
	z-index: 2;
	box-shadow: 0 4px 16px rgba(184, 134, 42, 0.3);
}
.step-content {
	background: var(--white);
	border-radius: 14px;
	padding: clamp(15px, calc(12.117px + 0.901vw), 25px);
	margin-top: 4px;
}
.step-time {
	font-size: 12px;
	font-weight: 500;
	color: var(--gold);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	margin-bottom: 8px;
}
.step-title {
	font-size: clamp(16px, calc(15.273px + 0.227vw), 18px);
	color: var(--navy);
	margin-bottom: 10px;
}
.step-body {
	font-size: clamp(14px, calc(13.273px + 0.227vw), 16px);
	color: var(--body);
	line-height: 1.75;
}
.step-body ul {
	margin-top: 10px;
	padding-left: 18px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.step-body li {
	font-size: 14px;
}
.step-tag {
	display: inline-block;
	margin-top: 12px;
	background: var(--sky);
	border-radius: 100px;
	padding: 12px;
	font-size: 12px;
	font-weight: 700;
	color: var(--teal);
	border: 1px solid rgba(26, 112, 128, 0.2);
}

/* ── SERVICE PERSONAS ── */
.personas {
	background: var(--white);
	padding: var(--vertical-padding) 0;
}
.persona-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
.persona-card {
	background: var(--white);
	border: 1px solid var(--stone);
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.07);
	transition:
		transform 0.25s var(--spring),
		box-shadow 0.25s;
}
.persona-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 14px 40px rgba(0, 0, 0, 0.13);
}
.pc-top {
	padding: clamp(20px, calc(17.694px + 0.721vw), 28px);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	text-align: center;
}
.pc-avatar {
	width: clamp(60px, 54.234px + 1.802vw, 80px);
	height: clamp(60px, 54.234px + 1.802vw, 80px);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: clamp(30px, 28.559px + 0.45vw, 35px);
}
.pc-name {
	font-size: clamp(16px, calc(15.273px + 0.227vw), 18px);
	color: var(--navy);
	font-weight: 700;
}
.pc-role {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.pc-bottom {
	padding: clamp(15px, calc(13.559px + 0.45vw), 20px);
	border-top: 1px solid var(--stone);
}
.pc-bottom p {
	font-size: clamp(14px, calc(13.273px + 0.227vw), 16px);
	color: var(--body);
	line-height: 1.75;
}
.pc-bottom strong {
	color: var(--teal);
	font-weight: 700;
}
.persona-card:nth-child(1) .pc-top {
	background: linear-gradient(160deg, #e8eef8, #c8d4f0);
}
.persona-card:nth-child(1) .pc-role {
	color: #4a6fa5;
}
.persona-card:nth-child(2) .pc-top {
	background: linear-gradient(160deg, #fdf0dc, #f8d890);
}
.persona-card:nth-child(2) .pc-role {
	color: var(--gold);
}
.persona-card:nth-child(3) .pc-top {
	background: linear-gradient(160deg, #fee8e8, #fcc0b0);
}
.persona-card:nth-child(3) .pc-role {
	color: var(--crimson);
}

/* ── QUOTE BAND ── */
.quote-band {
	background: linear-gradient(135deg, var(--navy), #1a3050);
	padding: var(--vertical-padding) 0;
	position: relative;
	overflow: hidden;
}

.quote-band {
	position: relative;
	z-index: 2;
}
.quote-band-inner::before {
	content: '"';
	font-size: clamp(100px, calc(65.405px + 10.811vw), 220px);
	color: rgba(184, 134, 42, 0.08);
	line-height: 1;
	pointer-events: none;
	display: block;
	height: clamp(45px, calc(30.586px + 4.505vw), 95px);
	margin-bottom: clamp(10px, calc(8.559px + 0.45vw), 15px);
}

.big-quote {
	font-size: clamp(16px, calc(11.387px + 1.441vw), 32px);
	color: rgba(255, 255, 255, 0.88);
	line-height: 1.7;
	font-style: italic;
	margin-bottom: 24px;
}
.big-quote strong {
	color: var(--gold-lt);
	font-style: normal;
}
.quote-attr {
	font-size: clamp(14px, calc(13.423px + 0.18vw), 16px);
	color: rgba(255, 255, 255, 0.4);
	letter-spacing: 0.05em;
}

/* ── FAQ ── */
.faq {
	background: var(--cream);
	padding: var(--vertical-padding) 0;
}
.faq-inner .sh {
	margin-bottom: 50px;
}
.faq-q:hover {
	color: var(--teal);
}
.faq-a p strong {
	color: var(--navy);
}

/* ── RESOURCES ── */
.resources {
	background: var(--stone);
	padding: var(--vertical-padding) 0;
}
.res-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.res-card {
	background: var(--white);
	border-radius: 14px;
	padding: clamp(20px, calc(17.694px + 0.721vw), 28px);
	border-top: 4px solid var(--teal);
	box-shadow: 0 2px 14px rgba(0, 0, 0, 0.06);
	transition: transform 0.25s var(--spring);
}
.res-card:hover {
	transform: translateY(-4px);
}
.res-card:nth-child(2) {
	border-top-color: var(--gold);
}
.res-card:nth-child(3) {
	border-top-color: var(--sage);
}
.res-icon {
	font-size: clamp(24px, calc(22.545px + 0.455vw), 28px);
	margin-bottom: 12px;
}
.res-title {
	font-size: clamp(16px, calc(15.273px + 0.227vw), 18px);
	color: var(--navy);
	margin-bottom: 8px;
}
.res-body {
	font-size: clamp(14px, calc(13.273px + 0.227vw), 16px);
	color: var(--muted);
	line-height: 1.7;
	margin-bottom: 16px;
}
.res-link {
	font-size: 14px;
	font-weight: 700;
	color: var(--teal);
}
.res-card:nth-child(2) .res-link {
	color: var(--gold);
}
.res-card:nth-child(3) .res-link {
	color: var(--sage);
}

/* ── CONTACT ── */
.contact {
	background: var(--navy);
	padding: var(--vertical-padding) 0;
}
.contact-inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px;
}
.contact .sh {
	color: var(--white);
}
.contact .sintro {
	color: rgba(255, 255, 255, 0.6);
}
.cf-submit {
	background: var(--gold);
	color: var(--white);
	font-weight: 800;
	font-size: 15px;
	padding: 15px;
	border-radius: 100px;
	border: none;
	cursor: pointer;
	width: 100%;
	box-shadow: 0 6px 24px rgba(184, 134, 42, 0.4);
	transition:
		background 0.2s,
		transform 0.2s;
}
.cf-submit:hover {
	background: var(--gold-lt);
	transform: translateY(-1px);
}
.contact-info {
	display: flex;
	flex-direction: column;
	gap: 28px;
}
.ci-item {
	display: flex;
	gap: 16px;
	align-items: flex-start;
}
.ci-icon {
	font-size: 24px;
	flex-shrink: 0;
	margin-top: 2px;
}
.ci-title {
	font-size: 14px;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.55);
	margin-bottom: 4px;
}
.ci-val {
	font-size: clamp(14px, calc(13.273px + 0.227vw), 16px);
	color: var(--white);
	font-weight: 600;
	line-height: 1.5;
}
.ci-val a {
	color: var(--gold-lt);
}
.vets-notice {
	margin-top: 32px;
	background: rgba(184, 134, 42, 0.12);
	border: 1px solid rgba(184, 134, 42, 0.25);
	border-radius: 12px;
	padding: clamp(15px, calc(12.117px + 0.901vw), 25px);
}
.vets-notice p {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.65);
	line-height: 1.7;
}
.vets-notice strong {
	color: var(--gold-lt);
}

/* ── RESPONSIVE ── */
@media (max-width: 900px) {
	.honor-band-content {
    grid-template-columns: repeat(2, 1fr);
	}
	.honor-item {
		padding: 0 15px 15px 15px;
	}
	.honor-item:first-of-type {
		padding: 0 15px 15px 0;
	}
	.honor-item:nth-of-type(2) {
		padding: 0 0 15px 15px;
		border-right: none;
	}
	.honor-item:nth-of-type(3) {
		padding: 15px 15px 0 0;
	}
	.stats-inner {
		grid-template-columns: 1fr 1fr;
	}
	.stat {
		border-right: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.12);
		padding: 15px 0;
	}
	.stat:first-child {
		border-right: 1px solid rgba(255, 255, 255, 0.15);
    padding: 15px 15px 15px 0;
	}
	.stat:nth-child(2n) {
		padding: 15px 0 15px 15px;
	}
	.stat:nth-child(3n) {
		border-right: 1px solid rgba(255, 255, 255, 0.15);
    border-bottom: none;
	}
	.stat:last-child {
    border-right: none;
    border-bottom: none;
    padding: 15px 0 15px 15px;
	}
	.what-grid,
	.tech-split,
	.inv-grid,
	.contact-inner,
	.overlap-box {
		grid-template-columns: 1fr;
	}
	.signs-grid,
	.cause-grid,
	.community-grid,
	.persona-grid,
	.res-grid {
		grid-template-columns: 1fr 1fr;
	}
	.rf-grid {
		grid-template-columns: 1fr 1fr;
	}
}
@media (max-width: 850px) {
	.home-content {
		grid-template-columns: 1fr;
		gap: 50px;
	}
	.hero-pill {
    padding: 6px 11px;
	}
	.hero-h1,
	.hero-sub {
    max-width: 100%;
	}
}
@media (max-width: 610px) {
	.honor-band-content {
		grid-template-columns: repeat(1, 1fr);
	}
	.honor-item {
		border-right: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	}
	.honor-item:first-of-type {
		padding: 0 0 10px 0;
	}
	.honor-item:nth-of-type(2) {
		padding: 10px 0 10px 0;
	}
	.honor-item:nth-of-type(3) {
		padding: 10px 0 0 0;
		border-bottom: none;
	}
	.community-grid,
	.cause-grid,
	.persona-grid,
	.res-grid {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 500px) {
	.service-scene {
    grid-template-columns: 1fr;
	}
	.severity-row {
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
	}
	.vs-strip {
    grid-template-columns: 1fr;
	}
	.vs-col.old {
    display: flex;
    flex-direction: column;
    align-items: center;
	}
	.vs-col.new {
    align-items: center;
	}
}
@media (max-width: 425px) {
	.stats-inner,
	.signs-grid {
		grid-template-columns: 1fr;
	}
	.stat:first-child {
		border-right: none;
		padding: 0 0 15px 0;
	}
	.stat:nth-child(2n) {
		padding: 15px 0 15px 0;
	}
	.stat:nth-child(3n) {
		border-right: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	}
	.stat:last-child {
		padding: 15px 0 0 0;
	}
}
@media (max-width: 410px) {
	.bm-row {
    grid-template-columns: 1fr;
	}
}
@media (max-width: 400px) {
	.rf-grid {
		grid-template-columns: repeat(1, 1fr);
	}
	.ov-row {
    gap: 20px;
	}
	.ov-bar-wrap {
		display: none;
	}
}
@media (max-width: 335px) {
	.vs-col h4 {
    text-align: center;
	}
}