/* Nuvia Health: a single accessible navigation tree for desktop and mobile. */
body header.nv-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 100 !important;
  width: 100% !important;
  color: #173e43 !important;
  background: #fff !important;
  border: 0 !important;
  border-bottom: 1px solid #dbe3df !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  font-family: 'Hanken Grotesk', Arial, sans-serif !important;
}
body header.nv-header *, body header.nv-header *::before, body header.nv-header *::after { box-sizing: border-box; }
body header.nv-header section { margin: 0; border: 0; }
body header.nv-header a,
body header.nv-header summary {
  font-family: 'Hanken Grotesk', Arial, sans-serif !important;
  color: #173e43 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  cursor: pointer;
}
body header.nv-header a:focus-visible,
body header.nv-header summary:focus-visible {
  outline: 3px solid #185e57 !important;
  outline-offset: 4px !important;
}
body header.nv-header .nv-utility { background: #f6f5ef; }
body header.nv-header .nv-utility-inner {
  width: min(100% - 96px, 1320px);
  margin: 0 auto;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
body header.nv-header .nv-patient-tools { display: flex; align-items: center; gap: 30px; }
body header.nv-header .nv-utility a {
  display: inline-flex !important;
  align-items: center;
  min-height: 44px;
  padding: 5px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 17px !important;
  font-weight: 550 !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
  background: transparent !important;
}
body header.nv-header .nv-utility a.nv-phone { font-size: 18px !important; font-weight: 650 !important; }
body header.nv-header .nv-utility a:hover { text-decoration: underline !important; text-underline-offset: 5px; }
body header.nv-header .lang-full,
body header.nv-header .pill-full { display: inline !important; white-space: inherit !important; }
body header.nv-header .lang-short,
body header.nv-header .pill-short { display: none !important; }
body header.nv-header .nv-main-row {
  width: min(100% - 96px, 1320px);
  min-height: 90px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 160px 1fr auto;
  align-items: center;
  gap: 32px;
}
body header.nv-header .nv-brand {
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  width: 148px !important;
  height: 90px !important;
  padding: 0 !important;
  overflow: hidden;
}
body header.nv-header .nv-brand img {
  height: 100px !important;
  width: 150px !important;
  max-width: none !important;
  display: block;
  object-fit: contain;
}
body header.nv-header details { margin: 0; padding: 0; border: 0; background: transparent; }
body header.nv-header summary { list-style: none !important; }
body header.nv-header summary::-webkit-details-marker { display: none; }
body header.nv-header summary::marker { content: ''; }
body header.nv-header .nv-menu { min-width: 0; justify-self: end; }
body header.nv-header .nv-menu > .nv-menu-toggle { display: none; }
body header.nv-header nav.nv-primary {
  display: flex !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 30px !important;
  flex-wrap: nowrap !important;
  overflow: visible !important;
}
body header.nv-header .nv-primary > a,
body header.nv-header .nv-dropdown > summary {
  display: inline-flex !important;
  min-height: 48px !important;
  align-items: center;
  gap: 8px;
  padding: 12px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  background: transparent !important;
  white-space: nowrap !important;
}
body header.nv-header .nv-primary > a:hover,
body header.nv-header .nv-dropdown > summary:hover { color: #185e57 !important; text-decoration: underline !important; text-underline-offset: 7px; }
body header.nv-header .nv-dropdown { position: relative; }
body header.nv-header .nv-chevron {
  display: inline-block;
  height: 6px;
  width: 6px;
  margin-top: -3px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
}
body header.nv-header .nv-dropdown[open] > summary .nv-chevron { transform: rotate(225deg); margin-top: 3px; }
body header.nv-header .nv-submenu {
  position: absolute;
  top: calc(100% + 19px);
  left: -22px;
  z-index: 105;
  width: 340px;
  max-width: min(340px, calc(100vw - 48px));
  padding: 10px;
  background: #fff;
  border: 1px solid #dbe3df;
  border-top: 3px solid #185e57;
  box-shadow: 0 18px 32px #173e4324;
}
body header.nv-header .nv-submenu-about { width: 270px; }
body header.nv-header .nv-submenu a {
  display: block !important;
  min-height: 44px !important;
  padding: 12px 14px !important;
  border: 0 !important;
  border-radius: 2px !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
  white-space: normal !important;
  background: transparent !important;
}
body header.nv-header .nv-submenu a:hover,
body header.nv-header .nv-submenu a:focus-visible { background: #eef4ee !important; }
body header.nv-header .nv-submenu a > span { display: none; }
body header.nv-header a.nv-book {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px !important;
  padding: 13px 22px !important;
  border: 1px solid #185e57 !important;
  border-radius: 3px !important;
  background: #185e57 !important;
  color: #fff !important;
  font-size: 17px !important;
  font-weight: 650 !important;
  line-height: 1.3 !important;
  white-space: nowrap !important;
}
body header.nv-header a.nv-book:hover { background: #173e43 !important; border-color: #173e43 !important; }
@media (min-width: 761px) and (max-width: 1050px) {
  body header.nv-header .nv-utility-inner,
  body header.nv-header .nv-main-row { width: calc(100% - 48px); }
  body header.nv-header .nv-main-row { grid-template-columns: 130px 1fr auto; gap: 18px; }
  body header.nv-header nav.nv-primary { gap: 18px !important; }
  body header.nv-header .nv-brand { width: 125px !important; }
  body header.nv-header .nv-brand img { width: 138px !important; height: 92px !important; }
  body header.nv-header a.nv-book { padding-inline: 16px !important; }
}
@media (max-width: 760px) {
  body header.nv-header { position: relative !important; }
  body header.nv-header .nv-utility-inner {
    width: calc(100% - 40px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: 44px 44px;
    gap: 0 12px;
  }
  body header.nv-header .nv-patient-tools { display: contents; }
  body header.nv-header .nv-phone { grid-column: 1; grid-row: 1; }
  body header.nv-header .nv-language { grid-column: 2; grid-row: 1; justify-self: end; }
  body header.nv-header .nv-portal { grid-column: 1; grid-row: 2; }
  body header.nv-header .nv-forms { grid-column: 2; grid-row: 2; justify-self: end; }
  body header.nv-header .nv-utility a { font-size: 17px !important; }
  body header.nv-header .nv-main-row {
    width: calc(100% - 40px);
    min-height: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0 12px;
  }
  body header.nv-header .nv-brand { grid-column: 1; grid-row: 1; width: 124px !important; height: 78px !important; }
  body header.nv-header .nv-brand img { width: 132px !important; height: 88px !important; }
  body header.nv-header a.nv-book { grid-column: 2; grid-row: 1; padding: 12px 16px !important; font-size: 16px !important; }
  body header.nv-header .nv-menu { grid-column: 1 / -1; grid-row: 2; width: 100%; justify-self: stretch; border-top: 1px solid #dbe3df; }
  body header.nv-header .nv-menu > .nv-menu-toggle {
    display: flex;
    min-height: 48px;
    padding: 12px 0;
    justify-content: space-between;
    align-items: center;
    font-size: 17px;
    font-weight: 600;
  }
  body header.nv-header .nv-menu-icon { width: 20px; height: 14px; position: relative; border-top: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; }
  body header.nv-header .nv-menu-icon::after { content: ''; position: absolute; top: 5px; left: 0; right: 0; border-top: 1.5px solid currentColor; }
  body header.nv-header .nv-menu[open] > .nv-menu-toggle .nv-menu-icon { height: 0; border-bottom: 0; transform: rotate(45deg); }
  body header.nv-header .nv-menu[open] > .nv-menu-toggle .nv-menu-icon::after { top: -1px; transform: rotate(90deg); }
  body header.nv-header nav.nv-primary {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    padding: 2px 0 16px !important;
  }
  body header.nv-header .nv-menu:not([open]) > nav.nv-primary { display: none !important; }
  body header.nv-header .nv-primary > a,
  body header.nv-header .nv-dropdown > summary { display: flex !important; justify-content: space-between; width: 100%; padding: 13px 0 !important; min-height: 48px !important; font-size: 17px !important; border-top: 1px solid #edf0ec !important; }
  body header.nv-header .nv-submenu,
  body header.nv-header .nv-submenu-about { position: static; width: 100%; max-width: none; padding: 2px 0 10px 12px; margin: 0 0 8px; border: 0; border-left: 2px solid #dbe3df; box-shadow: none; }
  body header.nv-header .nv-submenu a { padding: 12px !important; font-size: 17px !important; }
}
@media (max-width: 360px) {
  body header.nv-header .nv-utility-inner,
  body header.nv-header .nv-main-row { width: calc(100% - 28px); }
  body header.nv-header .nv-utility-inner { column-gap: 8px; }
  body header.nv-header a.nv-book { padding-inline: 12px !important; font-size: 15px !important; }
  body header.nv-header .nv-brand { width: 104px !important; }
  body header.nv-header .nv-brand img { width: 122px !important; height: 82px !important; }
}
/* The patient tools remain a prominent, high-contrast part of every page. */
body header.nv-header .nv-utility{background:#12383c}
body header.nv-header .nv-utility a{color:#f6f4ee!important}
body header.nv-header .nv-utility a:focus-visible{outline-color:#a9dfc9!important}
body header.nv-header .nv-utility-inner,body header.nv-header .nv-main-row{width:min(100% - 64px,1280px)}
body header.nv-header .nv-main-row{min-height:96px}
body header.nv-header a.nv-book{background:#12383c!important;border-color:#12383c!important;border-radius:4px!important;padding:15px 24px!important}
body header.nv-header a.nv-book:hover{background:#286c60!important}
body header.nv-header .nv-primary>a,body header.nv-header .nv-dropdown>summary{font-weight:500!important}
body header.nv-header .nv-utility a.nv-phone{letter-spacing:.02em!important}
@media(max-width:760px){body header.nv-header .nv-utility-inner,body header.nv-header .nv-main-row{width:calc(100% - 48px)}body header.nv-header .nv-main-row{min-height:0}body header.nv-header a.nv-book{padding:12px 16px!important}}
@media(max-width:360px){
 body header.nv-header .nv-main-row{grid-template-columns:70px minmax(0,1fr);gap:0 10px}
 body header.nv-header .nv-brand{width:70px!important;height:76px!important;justify-content:center}
 body header.nv-header .nv-brand img{width:96px!important;height:64px!important}
 body header.nv-header a.nv-book{padding:12px 10px!important;font-size:14px!important;gap:6px;justify-self:end;max-width:100%}
}

/* Compact award announcement; the year appears on the badge. */
.nv-award-banner{background:#fff;color:#12383c;border-bottom:1px solid #d5ddd5;font-family:'Hanken Grotesk',Arial,sans-serif}
.nv-award-inner{max-width:1280px;margin:0 auto;padding:10px 28px;display:flex;align-items:center;justify-content:center;gap:20px}
.nv-award-logo{display:block;width:78px;height:80px;object-fit:contain;flex-shrink:0;box-shadow:none}
.nv-award-copy p{margin:0}
.nv-award-copy .nv-award-title{font-size:23px;font-weight:650;line-height:1.2;letter-spacing:-.35px}
.nv-award-wins{display:flex;gap:26px;margin-top:7px}
.nv-award-wins p{font-size:15px;line-height:1.4}
.nv-award-wins strong{font-weight:650}
.nv-award-wins span:before{content:' — '}
@media(max-width:760px){
 .nv-award-inner{padding:10px 20px;gap:14px}
 .nv-award-logo{width:72px;height:74px}
 .nv-award-copy .nv-award-title{font-size:19px}
 .nv-award-wins{display:grid;gap:3px;margin-top:6px}
 .nv-award-wins p{font-size:13px}
}
@media(max-width:420px){
 .nv-award-inner{padding:10px 14px;gap:12px}
 .nv-award-logo{width:64px;height:66px}
 .nv-award-copy .nv-award-title{font-size:17px}
}
