/* V12: Home first, with Customer Portal always in the main header. */
.o-header.o-nav12-header {
 --nav12-row-height:98px;
 --nav12-top-height:40px;
}
.o-nav12-header .o-header-row {
 height:var(--nav12-row-height);
 gap:18px;
 padding-left:32px;
 padding-right:32px;
 max-width:1600px;
}
.o-nav12-header .o-brand,
.o-nav12-header .o-brand img {width:168px;flex-shrink:0}
.o-nav12-header .o-nav {
 display:flex;
 align-items:center;
 gap:12px;
 margin-left:auto;
 min-width:0;
 font-family:Arial,Helvetica,sans-serif;
}
.o-nav12-header .o-nav-item {gap:3px;flex-shrink:0}
.o-nav12-header .o-nav-item>.o-nav-link,
.o-header.o-nav12-header .o-nav>a.o-nav-link {
 font:600 16px/1.4 Arial,Helvetica,sans-serif;
 letter-spacing:0;
 color:#e4edf3;
}
.o-nav12-header .o-menu-toggle {
 flex:0 0 20px;
 width:20px;
 height:44px;
 min-height:44px;
 padding:0;
 font-size:18px;
 line-height:1;
}
.o-header.o-nav12-header .o-nav>a.o-nav-cta {
 min-height:52px;
 padding:13px 12px;
 gap:10px;
 font:600 16px/1.4 Arial,Helvetica,sans-serif;
}
.o-header.o-nav12-header .o-nav>a.o-nav-cta span {font-size:21px}
.o-header.o-nav12-header .o-nav>a.o-nav12-home {
 display:inline-flex;
 flex:0 0 44px;
 align-items:center;
 justify-content:center;
 width:44px;
 height:48px;
 min-height:48px;
 padding:0;
 margin:0 1px 0 0;
 border:1px solid #a3bdcf36;
 border-radius:4px;
 background:#abc5d509;
 color:#eaf1f5;
}
.o-header.o-nav12-header .o-nav>a.o-nav12-home::after {display:none}
.o-header.o-nav12-header .o-nav>a.o-nav12-home:hover,
.o-header.o-nav12-header .o-nav>a.o-nav12-home[aria-current=page] {
 border-color:#ef5262;
 background:#b5233333;
 color:#fff;
}
.o-nav12-header .o-nav12-home svg {display:block;width:23px;height:23px}
.o-nav12-header .o-nav12-portal {
 flex:0 0 auto;
 min-height:52px;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 gap:9px;
 padding:12px 13px;
 margin:0;
 border:1px solid #d4e4eb;
 border-radius:4px;
 color:#102b40;
 background:#ecf1f2;
 box-shadow:inset 0 1px 0 #ffffffa6;
 font:600 16px/1.35 Arial,Helvetica,sans-serif;
 text-decoration:none;
 white-space:nowrap;
 transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.o-nav12-header .o-nav12-portal svg {display:block;flex:none;width:21px;height:21px}
.o-nav12-header .o-nav12-portal-label {display:block}
.o-nav12-header .o-nav12-portal:hover {
 background:#fff;
 border-color:#fff;
 color:#102b40;
 transform:translateY(-1px);
}
.o-nav12-header .o-nav12-portal[aria-current=page] {border-color:#ec4758;box-shadow:inset 0 -3px 0 #cc2c3d}
.o-nav12-header .o-nav12-portal:focus-visible,
.o-nav12-header .o-nav12-home:focus-visible {outline:2px solid #78c9dc;outline-offset:4px}
.o-nav12-header .o-burger {display:none}

/* Full navigation keeps its readable type instead of squeezing a crowded row. */
@media(max-width:1399px) {
 .o-header.o-nav12-header {--nav12-row-height:84px}
 .o-nav12-header .o-brand,.o-nav12-header .o-brand img {width:190px}
 .o-nav12-header .o-burger {
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 48px;
  width:48px;
  height:48px;
  margin-left:auto;
  padding:0;
  line-height:1;
 }
 .o-nav12-header .o-nav {
  display:none;
  position:absolute;
  top:100%;
  left:0;
  right:0;
  height:auto;
  max-height:calc(100svh - var(--nav12-row-height) - var(--nav12-top-height));
  overflow:auto;
  overscroll-behavior:contain;
  padding:20px 32px;
  margin:0;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  background:#091d30;
  box-shadow:0 20px 35px #0005;
 }
 .o-nav12-header .o-nav.is-open {display:flex}
 .o-nav12-header .o-nav-item {
  flex-wrap:wrap;
  justify-content:space-between;
  height:auto;
  gap:0;
  border-bottom:1px solid #85a6bf30;
 }
 .o-nav12-header .o-nav-item>.o-nav-link,
 .o-header.o-nav12-header .o-nav>a.o-nav-link {
  flex:1;
  height:auto;
  padding:18px 0;
  font-size:18px;
 }
 .o-nav12-header .o-menu-toggle {flex:0 0 50px;width:50px;height:50px;font-size:22px}
 .o-nav12-header .o-nav-link[aria-current=page]::after {bottom:9px;right:auto;width:30px}
 .o-nav12-header .o-dropdown {position:static;flex-basis:100%;background:transparent;box-shadow:none;padding:0 0 15px;border:0}
 .o-nav12-header .o-dropdown-layout {display:block}
 .o-nav12-header .o-dropdown-intro {display:none}
 .o-nav12-header .o-dropdown .o-container {padding:0}
 .o-nav12-header .o-dropdown-links {grid-template-columns:1fr 1fr;gap:0 25px}
 .o-nav12-header .o-dropdown-links a {font-size:17px}
 .o-header.o-nav12-header .o-nav>a.o-nav12-home {flex:none;margin:0 0 7px;align-self:flex-start}
 .o-header.o-nav12-header .o-nav>a.o-nav-cta {margin-top:16px;padding:17px 20px;justify-content:space-between;font-size:17px}
}
@media(max-width:650px) {
 .o-header.o-nav12-header {--nav12-row-height:80px;--nav12-top-height:36px}
 .o-nav12-header .o-header-row {padding-left:18px;padding-right:18px;gap:10px}
 .o-nav12-header .o-brand,.o-nav12-header .o-brand img {width:clamp(128px,35vw,180px)}
 .o-nav12-header .o-nav12-portal {min-height:48px;padding:10px;gap:7px}
 .o-nav12-header .o-burger {flex-basis:44px;width:44px;height:48px}
 .o-nav12-header .o-nav {padding:17px 22px}
 .o-nav12-header .o-dropdown-links {grid-template-columns:1fr}
}
@media(max-width:480px) {
 .o-header.o-nav12-header {--nav12-row-height:78px}
 .o-nav12-header .o-header-row {padding-left:14px;padding-right:14px;gap:8px}
 .o-nav12-header .o-nav12-portal {
  flex:0 0 104px;
  width:104px;
  min-height:48px;
  padding:6px 8px;
  font-size:16px;
  line-height:1.15;
 }
 .o-nav12-header .o-nav12-portal svg {display:none}
 .o-nav12-header .o-nav12-portal-label {white-space:normal;text-align:center}
 .o-nav12-header .o-nav12-portal-label>span {display:block}
}
@media(prefers-reduced-motion:reduce) {
 .o-nav12-header .o-nav12-portal {transition:none}
 .o-nav12-header .o-nav12-portal:hover {transform:none}
}
