/* v408 — Header final fit / no clipping
   Scope: header/nav only. Prevents the first grouped-nav item from being clipped
   and keeps search compact so the institutional nav remains visible. */

@media (min-width:1181px){
  html body header#tvh-header,
  html body #tvh-header{
    width:100% !important;
    overflow:visible !important;
  }

  html body header#tvh-header .tvh-container.tvh-header-inner,
  html body #tvh-header .tvh-container.tvh-header-inner{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    box-sizing:border-box !important;
    padding:0 clamp(20px, 2vw, 42px) !important;
    min-height:88px !important;
    display:grid !important;
    grid-template-columns:minmax(230px, max-content) minmax(0, 1fr) 52px max-content !important;
    align-items:center !important;
    column-gap:clamp(16px, 1.25vw, 24px) !important;
    overflow:visible !important;
  }

  html body header#tvh-header .tvh-logo,
  html body #tvh-header .tvh-logo{
    grid-column:1 !important;
    min-width:230px !important;
    max-width:max-content !important;
    z-index:3 !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:14px !important;
    white-space:nowrap !important;
    overflow:visible !important;
  }

  html body header#tvh-header .tvh-logo-name,
  html body #tvh-header .tvh-logo-name{
    display:inline-block !important;
    white-space:nowrap !important;
  }

  html body header#tvh-header .tvh-logo-tag,
  html body #tvh-header .tvh-logo-tag{
    display:none !important;
  }

  html body header#tvh-header .tvh-nav-primary.v389-nav-groups,
  html body #tvh-header .tvh-nav-primary.v389-nav-groups,
  html body header#tvh-header .tvh-nav-primary,
  html body #tvh-header .tvh-nav-primary{
    grid-column:2 !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    display:flex !important;
    justify-content:flex-start !important;
    align-items:center !important;
    gap:clamp(20px, 2vw, 34px) !important;
    overflow:visible !important;
    flex-wrap:nowrap !important;
    white-space:nowrap !important;
    visibility:visible !important;
    opacity:1 !important;
    z-index:2 !important;
  }

  html body header#tvh-header .v389-nav-group,
  html body #tvh-header .v389-nav-group{
    flex:0 0 auto !important;
    min-width:max-content !important;
    max-width:max-content !important;
    overflow:visible !important;
  }

  html body header#tvh-header .v389-nav-group summary,
  html body #tvh-header .v389-nav-group summary{
    padding:0 !important;
    min-width:max-content !important;
    max-width:max-content !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
    font-size:clamp(14px, .9vw, 17px) !important;
    letter-spacing:0 !important;
    line-height:1 !important;
  }

  html body header#tvh-header .tvh-search-trigger,
  html body #tvh-header .tvh-search-trigger{
    grid-column:3 !important;
    width:52px !important;
    min-width:52px !important;
    max-width:52px !important;
    height:52px !important;
    padding:0 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
    border-radius:0 !important;
    box-sizing:border-box !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  html body header#tvh-header .tvh-search-trigger .label,
  html body header#tvh-header .tvh-search-trigger .tvh-search-shortcut,
  html body #tvh-header .tvh-search-trigger .label,
  html body #tvh-header .tvh-search-trigger .tvh-search-shortcut{
    display:none !important;
  }

  html body header#tvh-header .tvh-nav-actions,
  html body #tvh-header .tvh-nav-actions{
    grid-column:4 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:14px !important;
    min-width:max-content !important;
    white-space:nowrap !important;
    overflow:visible !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  html body header#tvh-header .tvh-link-text,
  html body #tvh-header .tvh-link-text{
    white-space:nowrap !important;
  }

  html body header#tvh-header .tvh-cta-primary,
  html body #tvh-header .tvh-cta-primary{
    white-space:nowrap !important;
    min-width:max-content !important;
    padding-left:clamp(20px, 1.4vw, 30px) !important;
    padding-right:clamp(20px, 1.4vw, 30px) !important;
    letter-spacing:.11em !important;
  }

  html body header#tvh-header .tvh-burger,
  html body #tvh-header .tvh-burger,
  html body header#tvh-header .tvh-mobile-nav,
  html body #tvh-header .tvh-mobile-nav{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
}

@media (min-width:1181px) and (max-width:1500px){
  html body header#tvh-header .tvh-container.tvh-header-inner,
  html body #tvh-header .tvh-container.tvh-header-inner{
    padding-left:22px !important;
    padding-right:22px !important;
    grid-template-columns:minmax(220px, max-content) minmax(0, 1fr) 48px max-content !important;
    column-gap:14px !important;
  }
  html body header#tvh-header .tvh-logo,
  html body #tvh-header .tvh-logo{
    min-width:220px !important;
  }
  html body header#tvh-header .tvh-nav-primary.v389-nav-groups,
  html body #tvh-header .tvh-nav-primary.v389-nav-groups,
  html body header#tvh-header .tvh-nav-primary,
  html body #tvh-header .tvh-nav-primary{
    gap:clamp(12px, 1.15vw, 18px) !important;
  }
  html body header#tvh-header .v389-nav-group summary,
  html body #tvh-header .v389-nav-group summary{
    font-size:clamp(13px, .9vw, 15px) !important;
  }
  html body header#tvh-header .tvh-search-trigger,
  html body #tvh-header .tvh-search-trigger{
    width:48px !important;
    min-width:48px !important;
    max-width:48px !important;
    height:48px !important;
  }
  html body header#tvh-header .tvh-link-text,
  html body #tvh-header .tvh-link-text{
    display:none !important;
  }
  html body header#tvh-header .tvh-cta-primary,
  html body #tvh-header .tvh-cta-primary{
    padding-left:20px !important;
    padding-right:20px !important;
    letter-spacing:.10em !important;
  }
}

@media (min-width:1181px) and (max-width:1320px){
  html body header#tvh-header .tvh-container.tvh-header-inner,
  html body #tvh-header .tvh-container.tvh-header-inner{
    grid-template-columns:minmax(210px, max-content) minmax(0, 1fr) max-content !important;
  }
  html body header#tvh-header .tvh-search-trigger,
  html body #tvh-header .tvh-search-trigger{
    display:none !important;
  }
  html body header#tvh-header .tvh-nav-actions,
  html body #tvh-header .tvh-nav-actions{
    grid-column:3 !important;
  }
}

@media (max-width:1180px){
  html body header#tvh-header .tvh-nav-primary,
  html body #tvh-header .tvh-nav-primary,
  html body header#tvh-header .tvh-search-trigger,
  html body #tvh-header .tvh-search-trigger,
  html body header#tvh-header .tvh-nav-actions,
  html body #tvh-header .tvh-nav-actions{
    display:none !important;
  }
  html body header#tvh-header .tvh-burger,
  html body #tvh-header .tvh-burger{
    display:inline-flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
}
