/* Compact header: slim utility line and one aligned navigation row. */
.header { grid-template-columns:210px minmax(0,1fr) 220px; grid-template-rows:28px 76px; height:104px; padding:0; column-gap:24px; }
.header > a { grid-column:1; grid-row:2; }
.header .logo { width:195px; }
.header-extra { grid-column:1 / -1; grid-row:1; align-self:stretch; justify-content:flex-end; gap:24px; font-size:12px; border-bottom:1px solid #e8eced; }
.header-extra > span { font-size:11px; }
.header nav { grid-column:2; grid-row:2; justify-content:center; gap:22px; font-size:15px; align-self:center; }
.header nav > a,
.header nav > .services-nav > .mega-toggle {
  font-size: inherit;
  line-height: 1.5;
}
.header-cta { grid-column:3; grid-row:2; align-self:center; font-size:14px; min-height:46px; padding:14px 17px; }
.header-space { height:104px; }
.mega-menu { max-height:calc(100dvh - 124px); }
.dark-top > .r2-plan.hero-contours { top:104px; }
@media(min-width:801px) and (max-width:1200px) {
 .header { grid-template-columns:170px minmax(0,1fr) 175px; column-gap:16px; }
 .header .logo { width:160px; }
 .header nav { gap:13px; font-size:13px; }
 .header-cta { font-size:12px; padding:12px; }
}
@media(min-width:801px) and (max-width:980px) {
 .header { grid-template-columns:155px minmax(0,1fr) 145px; column-gap:12px; }
 .header .logo { width:145px; }
 .header nav { gap:10px; font-size:12px; }
 .header-cta { font-size:11px; }
}
@media(max-width:800px) {
 .header { display:flex; height:80px; min-height:80px; padding:0; }
 .header .logo { width:175px; }
 .header-extra,.header-cta { display:none; }
 .header nav { font-size:16px; }
 .header-space { height:80px; }
 .dark-top > .r2-plan.hero-contours { top:80px; }
}
