
/* NAV FINAL V1 — match the supplied reference layout */
.site-header .header-inner{
  width:min(1080px,calc(100% - 40px)) !important;
  max-width:1080px !important;
  margin-inline:auto !important;
  gap:28px !important;
}
.site-header .brand{
  flex:0 0 auto !important;
}
.site-header .desktop-nav{
  margin-left:auto !important;
  gap:30px !important;
  align-items:center !important;
}
.site-header .desktop-nav > a,
.site-header .desktop-nav .nav-dropdown-trigger{
  white-space:nowrap !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  font-size:15px !important;
  font-weight:700 !important;
  color:#2d2728 !important;
}
.site-header .desktop-nav > a:hover,
.site-header .desktop-nav .nav-dropdown-trigger:hover{
  color:#9f0b18 !important;
}

/* Program mega menu */
.site-header .desktop-nav .nav-dropdown{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
}
.site-header .desktop-nav .nav-dropdown-menu{
  display:none !important;
  position:absolute !important;
  top:calc(100% + 12px) !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:min(1080px,calc(100vw - 32px)) !important;
  max-width:1080px !important;
  box-sizing:border-box !important;
  padding:24px 20px 28px !important;
  background:#fff !important;
  border:1px solid #d8d1d2 !important;
  border-radius:4px !important;
  box-shadow:0 18px 50px rgba(45,10,15,.16) !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:30px 38px !important;
  z-index:10050 !important;
  overflow:hidden !important;
}
.site-header .desktop-nav .nav-dropdown:hover .nav-dropdown-menu,
.site-header .desktop-nav .nav-dropdown:focus-within .nav-dropdown-menu{
  display:grid !important;
}
.site-header .desktop-nav .nav-dropdown-menu > a{
  display:block !important;
  min-width:0 !important;
  width:100% !important;
  box-sizing:border-box !important;
  color:#151515 !important;
  text-decoration:none !important;
  padding:0 !important;
  overflow:hidden !important;
}
.site-header .desktop-nav .nav-dropdown-menu > a strong{
  display:block !important;
  margin:7px 0 8px !important;
  font-size:17px !important;
  line-height:1.25 !important;
  color:#151515 !important;
  white-space:normal !important;
}
.site-header .desktop-nav .nav-dropdown-menu > a > span:not(.program-menu-icons){
  display:block !important;
  font-size:15px !important;
  line-height:1.48 !important;
  color:#18202a !important;
  white-space:normal !important;
}
.site-header .desktop-nav .program-menu-icons{
  display:flex !important;
  width:100% !important;
  height:46px !important;
  margin:0 0 2px !important;
  padding:0 !important;
  gap:6px !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  overflow:hidden !important;
}
.site-header .desktop-nav .program-menu-icons img{
  flex:0 1 auto !important;
  width:38px !important;
  height:38px !important;
  min-width:0 !important;
  max-width:38px !important;
  object-fit:contain !important;
  display:block !important;
}
.site-header .desktop-nav .nav-dropdown-menu > a:nth-child(3) .program-menu-icons img{
  width:34px !important;
  height:34px !important;
  max-width:34px !important;
}
.site-header .desktop-nav .nav-dropdown-menu > a:nth-child(2) .program-menu-icons img,
.site-header .desktop-nav .nav-dropdown-menu > a:nth-child(5) .program-menu-icons img{
  width:40px !important;
  height:40px !important;
  max-width:40px !important;
}

/* Calculator: compact vertical dropdown, exactly in the requested order */
.site-header .desktop-nav .calculator-dropdown-wrap{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
}
.site-header .desktop-nav .calculator-dropdown-wrap .calculator-dropdown{
  display:none !important;
  position:absolute !important;
  top:calc(100% + 12px) !important;
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%) !important;
  width:270px !important;
  box-sizing:border-box !important;
  padding:8px 0 !important;
  background:#fff !important;
  border:1px solid #d8d1d2 !important;
  border-radius:4px !important;
  box-shadow:0 18px 45px rgba(45,10,15,.16) !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  z-index:10060 !important;
  overflow:hidden !important;
}
.site-header .desktop-nav .calculator-dropdown-wrap:hover .calculator-dropdown,
.site-header .desktop-nav .calculator-dropdown-wrap:focus-within .calculator-dropdown{
  display:grid !important;
}
.site-header .desktop-nav .calculator-dropdown > a{
  display:block !important;
  padding:12px 16px !important;
  border-bottom:1px solid #eee7e7 !important;
  color:#292326 !important;
  text-decoration:none !important;
  box-sizing:border-box !important;
}
.site-header .desktop-nav .calculator-dropdown > a:last-child{
  border-bottom:0 !important;
}
.site-header .desktop-nav .calculator-dropdown > a:hover{
  background:#faf4f4 !important;
}
.site-header .desktop-nav .calculator-dropdown .calculator-menu-icon,
.site-header .desktop-nav .calculator-dropdown > a > span:not(.calculator-menu-icon){
  display:none !important;
}
.site-header .desktop-nav .calculator-dropdown > a strong{
  display:block !important;
  margin:0 !important;
  font-size:15px !important;
  line-height:1.25 !important;
  color:#302a2c !important;
  font-weight:700 !important;
}

/* Red contact button */
.site-header .desktop-nav .nav-cta{
  background:#9f0b18 !important;
  color:#fff !important;
  border-radius:24px !important;
  padding:11px 25px !important;
  box-shadow:0 10px 24px rgba(159,11,24,.18) !important;
}
.site-header .desktop-nav .nav-cta:hover{
  background:#850814 !important;
  color:#fff !important;
}

/* Keep mobile clean */
@media(max-width:900px){
  .site-header .header-inner{
    width:calc(100% - 32px) !important;
  }
  .site-header .desktop-nav{display:none !important;}
}
