.site-header--solid { background: rgba(10, 22, 33, .96); }
.subpage { background: var(--color-white); }
.subpage .site-header { position: fixed; }
.sub-hero { padding: 13rem 0 8rem; overflow: hidden; background: radial-gradient(circle at 80% 25%, rgba(23,122,120,.3), transparent 28rem), var(--color-navy-900); color: var(--color-white); }
.sub-hero h1 { margin-bottom: var(--space-24); color: var(--color-white); font-size: clamp(2.75rem, 5vw, var(--font-size-64)); }
.sub-hero .eyebrow { color: #8ed2ce; }
.sub-hero .lead { margin-bottom: var(--space-32); color: #d6e0e6; }
.sub-hero .button--secondary { border-color: rgba(255,255,255,.7); color: var(--color-white); }
.sub-hero__grid { display: grid; grid-template-columns: 1fr .8fr; gap: var(--space-80); align-items: center; }
.sub-hero--center { text-align: center; }
.sub-hero--center .lead { margin-inline: auto; }
.sub-hero__visual { min-height: 26rem; padding: var(--space-40); border: 0.0625rem solid rgba(255,255,255,.2); border-radius: var(--radius-20); display: grid; align-content: space-between; background: rgba(255,255,255,.06); box-shadow: var(--shadow-card); }
.sub-hero__visual > span { color: var(--color-gold-500); font-size: var(--font-size-30); font-weight: 900; }
.sub-hero__visual > div { display: grid; gap: var(--space-16); }
.sub-hero__visual i, .sub-hero__visual b, .sub-hero__visual small { display: block; border-radius: var(--radius-pill); }
.sub-hero__visual i { width: 30%; height: .4rem; background: var(--color-green-600); }
.sub-hero__visual b { width: 85%; height: 1rem; background: var(--color-white); }
.sub-hero__visual b:nth-child(3) { width: 60%; }
.sub-hero__visual small { width: 45%; height: 2.5rem; background: var(--color-gold-500); }
.narrow { max-width: 58rem; }
.narrow h2 { margin-bottom: var(--space-24); }
.scope-grid, .principle-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-24); }
.scope-card, .principle-grid article { min-height: 18rem; padding: var(--space-32); border: 0.0625rem solid var(--color-gray-200); border-radius: var(--radius-20); background: var(--color-white); }
.scope-card > span, .principle-grid span { display: block; margin-bottom: var(--space-40); color: var(--color-green-700); font-weight: 900; }
.scope-card h3, .principle-grid h3 { margin-bottom: var(--space-12); }
.scope-card p, .principle-grid p { margin-bottom: 0; color: var(--color-gray-700); }
.deliverable-list { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); border-top: 0.0625rem solid var(--color-gray-200); list-style: none; }
.deliverable-list li { min-height: 5rem; padding: var(--space-20); border-bottom: 0.0625rem solid var(--color-gray-200); display: flex; align-items: center; font-weight: 800; }
.deliverable-list li::before { content: "✓"; margin-right: var(--space-12); color: var(--color-green-700); }
.sub-cta { padding-block: var(--space-120); background: var(--color-green-700); color: var(--color-white); text-align: center; }
.sub-cta .eyebrow { color: #b8e2df; }
.sub-cta h2 { margin-bottom: var(--space-20); color: var(--color-white); font-size: clamp(var(--font-size-40), 5vw, var(--font-size-64)); }
.sub-cta p:not(.eyebrow) { max-width: 42rem; margin: 0 auto var(--space-32); color: #d9eeec; }
.service-overview-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-24); }
.service-overview-grid article { min-height: 30rem; padding: var(--space-32); border: 0.0625rem solid var(--color-gray-200); border-radius: var(--radius-20); display: flex; flex-direction: column; }
.service-overview-grid article > span { margin-bottom: auto; color: var(--color-gold-600); font-size: var(--font-size-24); font-weight: 900; }
.service-overview-grid article > p:first-of-type { color: var(--color-green-700); font-size: var(--font-size-14); font-weight: 800; }
.service-overview-grid article h3 { font-size: var(--font-size-30); }
.service-overview-grid article p { color: var(--color-gray-700); }
.service-overview-grid article a { margin-top: var(--space-24); color: var(--color-green-700); font-weight: 800; }
.choice-list { border-top: 0.0625rem solid var(--color-gray-200); }
.choice-list div { min-height: 6rem; padding: var(--space-20); border-bottom: 0.0625rem solid var(--color-gray-200); display: flex; align-items: center; justify-content: space-between; gap: var(--space-24); }
.choice-list a { color: var(--color-green-700); font-weight: 800; }
.process-grid { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(7, 1fr); border-top: 0.0625rem solid var(--color-gray-200); list-style: none; }
.process-grid li { min-height: 16rem; padding: var(--space-24) var(--space-16); border-right: 0.0625rem solid var(--color-gray-200); display: flex; flex-direction: column; }
.process-grid li:last-child { border-right: 0; }
.process-grid span { margin-bottom: auto; color: var(--color-green-700); font-weight: 900; }
.process-grid b { margin-bottom: var(--space-8); color: var(--color-navy-900); }
.process-grid p { margin: 0; color: var(--color-gray-700); font-size: var(--font-size-16); }
.experience-card { padding: clamp(var(--space-32), 6vw, var(--space-64)); border: 0.0625rem solid rgba(255,255,255,.2); border-radius: var(--radius-20); background: rgba(255,255,255,.06); }
.experience-card strong { display: block; color: var(--color-gold-500); font-size: clamp(4rem, 9vw, 8rem); line-height: 1; }
.experience-card span { display: block; margin: var(--space-16) 0 var(--space-24); font-weight: 800; }
.experience-card p { margin: 0; color: #d6e0e6; }

@media (max-width: 74.9375rem) {
  .sub-hero__grid { grid-template-columns: 1fr; }
  .sub-hero__visual, .experience-card { width: min(100%, 42rem); }
  .service-overview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .process-grid { grid-template-columns: repeat(4, 1fr); }
  .process-grid li { border-bottom: 0.0625rem solid var(--color-gray-200); }
}

@media (max-width: 47.9375rem) {
  .sub-hero { padding: 10rem 0 6rem; }
  .sub-hero__visual { min-height: 20rem; }
  .scope-grid, .principle-grid, .deliverable-list, .service-overview-grid { grid-template-columns: 1fr; }
  .service-overview-grid article { min-height: 24rem; }
  .choice-list div { align-items: flex-start; flex-direction: column; }
  .process-grid { grid-template-columns: 1fr; }
  .process-grid li { min-height: 11rem; border-right: 0; }
  .process-grid span { margin-bottom: var(--space-24); }
}

