.main-nav .active::after { width: 100% !important; }

.veterans-hero {
  min-height: 700px;
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  padding: 170px clamp(24px, 10vw, 150px) 95px;
  color: #fff;
  background:
    linear-gradient(90deg, rgba(30, 44, 64, 0.98) 0%, rgba(41, 59, 75, 0.84) 47%, rgba(41, 59, 75, 0.16) 83%),
    url("hero-terrasun-commercial-solar.webp") center 50% / cover no-repeat;
}

.veterans-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 155px;
  background: linear-gradient(transparent, rgba(30, 44, 64, 0.52));
}

.veterans-hero-content {
  position: relative;
  z-index: 2;
  width: min(900px, 80%);
}

.veterans-hero h1 { font-size: clamp(58px, 6.8vw, 102px); }

.veterans-hero-content > p:not(.eyebrow) {
  max-width: 670px;
  margin: 28px 0 34px;
  color: rgba(255, 255, 255, 0.76);
  font-size: 17px;
}

.veterans-hero-note {
  position: absolute;
  z-index: 2;
  right: 6vw;
  bottom: 66px;
  display: flex;
  flex-direction: column;
  max-width: 285px;
  padding-left: 18px;
  border-left: 2px solid var(--sun);
}

.veterans-hero-note strong {
  font: 600 25px/1.1 var(--display);
  text-transform: uppercase;
}

.veterans-hero-note span {
  margin-top: 7px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 10px;
  line-height: 1.55;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.veterans-intro { background: var(--paper); }

.veterans-intro-grid,
.veteran-process-grid {
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;
  align-items: end;
  gap: 10vw;
}

.veterans-intro h2,
.veteran-process h2 { font-size: clamp(46px, 5.5vw, 78px); }

.veterans-intro-copy p {
  margin: 0 0 18px;
  color: #607174;
  font-size: 15px;
}

.veteran-pathways {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding-top: 0;
  background: var(--paper);
}

.veteran-pathway {
  min-height: 555px;
  padding: clamp(38px, 5vw, 72px);
  border: 1px solid var(--line);
  background: #fff;
}

.veteran-pathway:nth-child(even) { border-left: 0; }
.veteran-pathway:nth-child(n + 3) { border-top: 0; }

.veteran-pathway-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 68px;
  color: #758481;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.veteran-pathway-top span {
  color: var(--sun);
  font: 600 38px/1 var(--display);
}

.veteran-pathway h2 { font-size: clamp(38px, 4.2vw, 62px); }

.veteran-pathway > p {
  max-width: 580px;
  margin: 26px 0 32px;
  color: #607174;
  font-size: 14px;
}

.veteran-pathway ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.veteran-pathway li {
  position: relative;
  padding-left: 19px;
  font-size: 12px;
}

.veteran-pathway li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.62em;
  width: 7px;
  height: 2px;
  background: var(--sun);
}

.veteran-pathway-dark {
  border-color: rgba(255, 255, 255, 0.12);
  background: var(--deep);
  color: #fff;
}

.veteran-pathway-dark .veteran-pathway-top,
.veteran-pathway-dark > p { color: rgba(255, 255, 255, 0.58); }

.veteran-pathway-sun {
  border-color: rgba(41, 59, 75, 0.12);
  background: var(--sun);
  color: var(--deep);
}

.veteran-pathway-sun .veteran-pathway-top,
.veteran-pathway-sun > p { color: rgba(30, 44, 64, 0.72); }

.veteran-pathway-sun .veteran-pathway-top span { color: var(--deep); }
.veteran-pathway-sun li::before { background: var(--deep); }

.veteran-leadership {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 9vw;
  background: var(--cream);
}

.veteran-leadership h2 {
  font-size: clamp(46px, 5.2vw, 76px);
}

.veteran-leadership-copy > p:not(.eyebrow) {
  max-width: 560px;
  margin: 22px 0 0;
  color: #607174;
  font-size: 14px;
}

.veteran-leadership-principles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid #cbd6d3;
  border-left: 1px solid #cbd6d3;
}

.veteran-leadership-principles article {
  min-height: 235px;
  padding: 30px;
  border-right: 1px solid #cbd6d3;
  border-bottom: 1px solid #cbd6d3;
}

.veteran-leadership-principles article > span {
  color: var(--sun);
  font: 600 35px/1 var(--display);
}

.veteran-leadership-principles h3 {
  margin: 48px 0 8px;
  font: 600 18px/1.1 var(--display);
  text-transform: uppercase;
}

.veteran-leadership-principles p {
  margin: 0;
  color: #607174;
  font-size: 12px;
}

.veteran-strengths {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 10vw;
  background: var(--deep);
  color: #fff;
}

.veteran-strengths h2 { font-size: clamp(46px, 5.2vw, 76px); }

.veteran-strengths-copy > p:not(.eyebrow) {
  max-width: 500px;
  margin-top: 28px;
  color: rgba(255, 255, 255, 0.56);
  font-size: 14px;
}

.veteran-strength-list { border-top: 1px solid rgba(255, 255, 255, 0.15); }

.veteran-strength-list article {
  display: grid;
  grid-template-columns: 85px 1fr;
  gap: 25px;
  align-items: center;
  min-height: 145px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.veteran-strength-list article > span {
  color: var(--sun);
  font: 600 48px/1 var(--display);
}

.veteran-strength-list h3 {
  margin: 0 0 7px;
  font: 600 20px/1 var(--display);
  text-transform: uppercase;
}

.veteran-strength-list p {
  max-width: 410px;
  margin: 0;
  color: rgba(255, 255, 255, 0.52);
  font-size: 12px;
}

.veteran-process { background: var(--cream); }
.veteran-process-list { border-top: 1px solid #cbd6d3; }

.veteran-process-list article {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 15px;
  padding: 20px 0;
  border-bottom: 1px solid #cbd6d3;
}

.veteran-process-list span { color: var(--sun); font-weight: 700; }
.veteran-process-list strong { font: 600 16px/1.2 var(--display); text-transform: uppercase; }
.veteran-process-list p { margin: 6px 0 0; color: #607174; font-size: 12px; }

.veterans-cta {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  align-items: end;
  gap: 10vw;
  padding: 100px clamp(24px, 8vw, 128px);
  background: var(--sun);
  color: var(--deep);
}

.veterans-cta h2 { font-size: clamp(48px, 5.8vw, 82px); }
.veterans-cta h2 em { color: #fff; }
.veterans-cta .eyebrow { color: rgba(30, 44, 64, 0.72); }
.veterans-cta-action > p { margin-top: 0; font-size: 14px; }
.veterans-cta-action .button-dark { margin-top: 18px; }

.veterans-cta-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 26px;
  margin-top: 18px;
}

.veterans-cta-links a {
  padding-bottom: 4px;
  border-bottom: 1px solid rgba(30, 44, 64, 0.45);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .veterans-hero { min-height: 670px; padding: 150px 24px 120px; }
  .veterans-hero-content { width: 100%; }
  .veterans-hero-note { right: 24px; bottom: 34px; }
  .veterans-intro-grid,
  .veteran-leadership,
  .veteran-strengths,
  .veteran-process-grid,
  .veterans-cta { grid-template-columns: 1fr; gap: 55px; }
  .veteran-pathways { grid-template-columns: 1fr; }
  .veteran-pathway:nth-child(even) { border-left: 1px solid var(--line); }
  .veteran-pathway:nth-child(n + 2) { border-top: 0; }
}

@media (max-width: 600px) {
  .veterans-hero {
    min-height: 650px;
    background-position: 63% center;
    background-image:
      linear-gradient(90deg, rgba(30, 44, 64, 0.97) 0%, rgba(41, 59, 75, 0.83) 63%, rgba(41, 59, 75, 0.38) 100%),
      url("hero-terrasun-commercial-solar-mobile.webp");
  }
  .veterans-hero h1 { font-size: clamp(46px, 14.5vw, 66px); }
  .veterans-hero-note { display: none; }
  .veteran-pathway { min-height: 0; padding: 38px 24px 46px; }
  .veteran-pathway-top { margin-bottom: 44px; }
  .veteran-pathway ul { grid-template-columns: 1fr; }
  .veteran-leadership-principles { grid-template-columns: 1fr; }
  .veteran-leadership-principles article { min-height: 190px; }
  .veteran-leadership-principles h3 { margin-top: 34px; }
  .veteran-strength-list article { grid-template-columns: 58px 1fr; gap: 15px; padding: 26px 0; }
  .veteran-strength-list article > span { font-size: 40px; }
  .veterans-cta { padding: 80px 20px; }
}
