/* Daily-monitor responsive corrections for the source-geometry layout. */

/*
 * Fixed desktop coordinates in site-v14 do not fit below 1280px. Retain the
 * source compact header through 1279px and keep its controls within the
 * available tablet width.
 */
@media (min-width: 821px) and (max-width: 1279px) {
  .npdc-header__bar {
    position: relative;
    display: block;
    width: calc(100vw - 40px);
    min-height: 107px;
    margin-inline: auto;
  }

  .npdc-brand,
  .npdc-brand img {
    width: 175px;
  }

  .npdc-brand {
    position: absolute;
    top: 20px;
    left: 0;
    height: auto;
  }

  .npdc-brand img {
    height: auto;
  }

  .npdc-menu-toggle {
    position: absolute;
    top: 37px;
    right: 62px;
    left: auto;
    display: flex;
    width: 45px;
    min-width: 45px;
    height: 32px;
    min-height: 32px;
    padding: 5px;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 0;
    color: #000;
    background: #0ecae9;
    font-size: 18px;
    line-height: 22px;
    cursor: pointer;
  }

  .npdc-menu-toggle__label {
    display: none;
  }

  .npdc-header__actions {
    position: absolute;
    top: 36px;
    right: 0;
    left: auto;
    display: block;
  }

  .npdc-phone {
    display: block;
    width: 35px;
    height: 35px;
    border-radius: 0;
    background: transparent;
  }

  .npdc-phone__icon {
    width: 35px;
    height: 35px;
  }

  .npdc-phone strong {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
  }

  .npdc-nav {
    position: absolute;
    top: 107px;
    right: 0;
    left: 0;
    display: none;
    max-height: calc(100vh - 107px);
    padding: 1rem;
    overflow: auto;
    align-items: stretch;
    justify-content: stretch;
    border-radius: 0;
    background: #334155;
    box-shadow: var(--np-shadow);
  }

  .npdc-nav[data-open] {
    display: grid;
  }

  .npdc-nav__parent {
    display: grid;
    grid-template-columns: 1fr auto;
  }

  .npdc-nav > a,
  .npdc-nav__parent > a {
    padding: 0.7rem;
  }

  .npdc-nav__submenu,
  .npdc-nav__submenu--wide {
    position: static;
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    display: none;
    min-width: 0;
    visibility: visible;
    transform: none;
    border: 0;
    opacity: 1;
    box-shadow: none;
  }

  .npdc-nav__parent:hover .npdc-nav__submenu,
  .npdc-nav__parent:focus-within .npdc-nav__submenu {
    display: none;
  }

  .npdc-nav__parent > button[aria-expanded="true"] + .npdc-nav__submenu {
    display: grid;
  }
}

/* Keep the wide phone group fluid until the original coordinates safely fit. */
@media (min-width: 1280px) and (max-width: 1439px) {
  .npdc-header__actions {
    right: 0;
    left: auto;
  }

  .npdc-phone {
    gap: 8px;
  }
}

/* Preserve the three-column contact composition without fixed-track spill. */
@media (min-width: 821px) and (max-width: 1360px) {
  .npdc-contact-source__grid {
    grid-template-columns: minmax(0, 358fr) minmax(0, 461fr) minmax(0, 358fr);
    gap: clamp(24px, 4vw, 52px);
    width: calc(100vw - 80px);
  }
}
