/* 026 canonical active-menu structure */
.nav-list{
  display:grid!important;
  gap:8px!important;
}

.nav-group{
  display:grid;
  gap:6px;
}

.nav-item,
.nav-subitem{
  width:100%;
  border:1px solid #e2e8ef;
  color:#243145;
  background:#fff;
  font:inherit;
  text-align:left;
  cursor:pointer;
}

.nav-item{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) auto!important;
  gap:12px!important;
  min-height:70px!important;
  align-items:center!important;
  margin:0!important;
  padding:11px 13px!important;
  border-radius:17px!important;
  box-shadow:0 5px 16px rgba(18,30,48,.045)!important;
}

.nav-item:hover,
.nav-item:focus-visible,
.nav-subitem:hover,
.nav-subitem:focus-visible{
  border-color:#f3a4aa!important;
  background:#fff8f8!important;
  outline:none!important;
}

.nav-item.active,
.nav-group.active>.nav-group-parent{
  border-color:#ef8f96!important;
  background:#fff1f2!important;
  box-shadow:
    inset 3px 0 0 #e3131b,
    0 6px 18px rgba(18,30,48,.055)!important;
}

.nav-item .nav-copy{
  display:grid;
  min-width:0;
  gap:3px;
}

.nav-item strong{
  color:#1f2a3a!important;
  font-size:15px!important;
  font-weight:590!important;
  line-height:1.25!important;
}

.nav-item small{
  color:#697386!important;
  font-size:11.5px!important;
  font-weight:400!important;
  line-height:1.35!important;
}

.nav-item .nav-icon{
  display:inline-flex!important;
  width:48px!important;
  height:48px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #f7b9be!important;
  border-radius:15px!important;
  color:#e3131b!important;
  background:#fff1f2!important;
}

.nav-item .nav-icon svg,
.nav-subitem .nav-icon svg{
  width:24px!important;
  height:24px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.nav-chevron{
  display:inline-flex;
  width:28px;
  height:28px;
  align-items:center;
  justify-content:center;
  border-radius:9px;
  color:#9b1118;
  background:#fff;
  font-size:18px;
  transition:transform .18s ease;
}

.nav-group.is-open .nav-chevron{
  transform:rotate(180deg);
}

.nav-submenu{
  display:none;
  gap:6px;
  margin:0 0 4px 14px;
  padding:8px;
  border-left:2px solid #f1b6ba;
  border-radius:0 15px 15px 0;
  background:#fbfcfd;
}

.nav-group.is-open .nav-submenu{
  display:grid;
}

.nav-subitem{
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  gap:9px!important;
  min-height:47px!important;
  align-items:center!important;
  padding:7px 10px!important;
  border-radius:12px!important;
  font-size:13.5px!important;
  font-weight:500!important;
}

.nav-subitem .nav-icon{
  display:inline-flex!important;
  width:34px!important;
  height:34px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:10px!important;
  color:#9b1118!important;
  background:#fff1f2!important;
}

.nav-subitem .nav-copy{
  display:block;
}

.nav-subitem strong{
  font-weight:520!important;
}

.nav-subitem.active{
  border-color:#ee9ca2!important;
  color:#8d1117!important;
  background:#fff1f2!important;
  box-shadow:inset 3px 0 0 #e3131b!important;
}

/* Remove any menu fragments left by older injectors. */
[data-unite-pay-group],
[data-unite-pay-submenu],
.unite-pay-submenu,
[data-train-fares-menu-link],
[data-menu023-duplicate],
[data-menu024-duplicate-pay]{
  display:none!important;
}
