/* Point A approved comp — desktop-first overrides */
.site-header{
  position:relative;
  background:#fff;
  border-bottom:0;
  backdrop-filter:none;
}
.nav-wrap{
  width:min(1540px,calc(100% - 96px));
  min-height:104px;
  display:grid;
  grid-template-columns:260px 1fr 220px;
  align-items:center;
  gap:48px;
}
.brand-lockup{display:block;width:260px;line-height:0}
.brand-lockup img{display:block;width:260px;height:auto}
.nav-menu{
  display:flex;
  justify-content:center;
  gap:48px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#173856;
}
.nav-menu a{padding:10px 0}
.nav-cta{
  min-width:220px;
  min-height:60px;
  padding:0 34px;
  border-radius:8px;
  justify-content:space-between;
  text-transform:uppercase;
  letter-spacing:.17em;
  font-size:12px;
  box-shadow:none;
}
.nav-toggle{display:none}

.hero{
  position:relative;
  overflow:hidden;
  padding:0 0 20px;
  background:#fff;
  min-height:835px;
}
.hero-grid{
  width:min(1540px,calc(100% - 96px));
  min-height:602px;
  display:grid;
  grid-template-columns:45% 55%;
  gap:0;
  align-items:stretch;
  position:relative;
}
.hero-copy{
  position:relative;
  z-index:4;
  padding:105px 10px 54px 0;
  background:#fff;
}
.eyebrow{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:30px;
  color:#214b7d;
  font-size:12px;
  font-weight:800;
  letter-spacing:.29em;
  text-transform:uppercase;
}
.eyebrow i{
  display:inline-block;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#2e9b3b;
  font-style:normal;
}
.hero h1{
  margin:0 0 42px;
  color:#0f3152;
  font-family:"Manrope",sans-serif;
  font-size:clamp(76px,7vw,112px);
  font-weight:800;
  line-height:.86;
  letter-spacing:-.066em;
}
.hero h1 em{font-style:normal;color:#0f3152}
.hero h1 em span{color:#2e8b37}
.hero-lede{
  max-width:680px;
  margin:0 0 36px;
  color:#4f6fa0;
  font-size:20px;
  line-height:1.58;
}
.hero-actions{
  display:flex;
  gap:24px;
  align-items:center;
}
.hero-actions .button,
.hero-actions .button-outline{
  min-width:268px;
  min-height:60px;
  border-radius:5px;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:12px;
  font-weight:800;
}
.button-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  padding:0 30px;
  border:1.5px solid #8fa2b8;
  background:#fff;
  color:#153757;
}
.button-outline span{color:#2e9b3b}
.hero-visual{
  position:relative;
  padding:0;
  height:602px;
  min-width:0;
}
.hero-image-wrap{
  position:absolute;
  inset:0;
  height:602px;
  border-radius:0;
  overflow:hidden;
  background:#dfe9f2;
  box-shadow:none;
}
.hero-image-wrap img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.hero-image-wrap::before,
.hero-image-wrap::after,
.hero-overlay,
.hero-caption{display:none!important}

.hero-proof{
  width:min(1540px,calc(100% - 96px));
  margin:0 auto;
  padding:28px 0 26px;
  border-top:1px solid #d3dde7;
  border-bottom:1px solid #d3dde7;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  background:#fff;
}
.hero-proof>div{
  min-height:94px;
  padding:0 30px;
  border-right:1px solid #d3dde7;
  display:grid;
  grid-template-columns:58px 1fr;
  grid-template-rows:auto auto auto;
  column-gap:18px;
  align-content:center;
}
.hero-proof>div:first-child{padding-left:0}
.hero-proof>div:last-child{border-right:0}
.proof-icon{
  grid-row:1 / span 3;
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#143a61;
  font-size:38px;
  line-height:1;
}
.hero-proof strong{
  display:block;
  color:#153b63;
  font-size:24px;
  font-weight:800;
  line-height:1;
  letter-spacing:-.02em;
}
.hero-proof>div span:nth-of-type(2){
  margin-top:7px;
  color:#234b7d;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.hero-proof small{
  margin-top:3px;
  color:#7188a5;
  font-size:12px;
}
.hero-bottomline{
  width:min(1540px,calc(100% - 96px));
  margin:0 auto;
  padding:24px 0 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#7e93ad;
  font-size:12px;
  font-weight:700;
  letter-spacing:.29em;
  text-transform:uppercase;
}
.hero-bottomline span:last-child{
  position:relative;
  padding-left:70px;
}
.hero-bottomline span:last-child::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:46px;
  height:3px;
  transform:translateY(-50%);
  background:#2e9b3b;
}

.intro{padding-top:112px}

@media(max-width:1100px){
  .nav-wrap{width:calc(100% - 48px);grid-template-columns:230px auto 180px;gap:24px}
  .brand-lockup,.brand-lockup img{width:230px}
  .nav-menu{gap:24px;font-size:11px}
  .nav-cta{min-width:180px}
  .hero-grid{width:calc(100% - 48px);grid-template-columns:48% 52%}
  .hero h1{font-size:clamp(66px,8vw,92px)}
  .hero-copy{padding-top:82px}
  .hero-proof,.hero-bottomline{width:calc(100% - 48px)}
}
@media(max-width:900px){
  .nav-wrap{width:calc(100% - 36px);grid-template-columns:auto auto;min-height:86px}
  .brand-lockup,.brand-lockup img{width:210px}
  .nav-menu{position:absolute;top:86px;left:18px;right:18px;display:none;flex-direction:column;background:#fff;padding:22px;border-radius:12px;box-shadow:0 18px 55px rgba(9,37,62,.14);z-index:20}
  .nav-menu.open{display:flex}
  .nav-toggle{display:block;justify-self:end}
  .nav-cta{display:none}
  .hero{min-height:auto}
  .hero-grid{width:100%;display:block;min-height:0}
  .hero-copy{padding:62px 24px 42px}
  .hero h1{font-size:clamp(60px,15vw,92px)}
  .hero-visual{height:auto;padding:0 24px}
  .hero-image-wrap{position:relative;height:auto;aspect-ratio:937/601}
  .hero-proof{width:calc(100% - 48px);grid-template-columns:1fr 1fr}
  .hero-proof>div{padding:22px;border-bottom:1px solid #d3dde7}
  .hero-proof>div:first-child{padding-left:22px}
  .hero-proof>div:nth-child(2){border-right:0}
  .hero-proof>div:nth-child(3),.hero-proof>div:nth-child(4){border-bottom:0}
  .hero-bottomline{width:calc(100% - 48px)}
}
@media(max-width:620px){
  .brand-lockup,.brand-lockup img{width:185px}
  .hero-copy{padding-top:44px}
  .eyebrow{font-size:10px;letter-spacing:.18em;gap:10px;flex-wrap:wrap}
  .hero h1{font-size:56px}
  .hero-lede{font-size:17px}
  .hero-actions{display:grid}
  .hero-actions .button,.hero-actions .button-outline{width:100%;min-width:0}
  .hero-visual{padding:0}
  .hero-proof{grid-template-columns:1fr}
  .hero-proof>div,.hero-proof>div:nth-child(2),.hero-proof>div:nth-child(3){border-right:0;border-bottom:1px solid #d3dde7}
  .hero-proof>div:last-child{border-bottom:0}
  .hero-bottomline{gap:16px;flex-direction:column;align-items:flex-start;letter-spacing:.18em}
}
