.supra-nav__bar {
  background: #000000;
  height: 1.44444rem;
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 998; }

.supra-nav__wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-align: center;
      align-items: center;
  float: right;
  height: 100%; }

.supra-nav__link {
  font-family: "Lab-Grotesque", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #5A5958;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 0.66667rem;
  line-height: 0.9rem;
  font-size: 0.55556rem;
  line-height: 0.55556rem;
  font-family: "Lab-Grotesque", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #5F4E46;
  height: 100%;
  padding: 0.5rem 1.26667rem 0.27778rem;
  position: relative; }
  .supra-nav__link:hover {
    color: #AD7F66; }
  .supra-nav__link + .supra-nav__link:before {
    content: '';
    display: block;
    background: #5A5958;
    height: 0.61111rem;
    width: 0.05556rem;
    position: absolute;
    left: 0; }
  .supra-nav__link:last-child {
    padding-right: 0; }

.header {
  background: #000000;
  height: 3.88889rem;
  width: 100%;
  position: absolute;
  top: 1.44444rem;
  z-index: 999;
  overflow: visible;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .header.fixed-nav {
    position: fixed;
    top: 0; }
  .header:before {
    content: '';
    display: block;
    height: 11.11111rem;
    top: -11.11111rem;
    left: 0;
    position: fixed;
    width: 100%;
    background: #FFFFFF; }
  .header .grid-container {
    -js-display: flex;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: justify;
        justify-content: space-between; }
    .header .grid-container:after {
      content: none; }

.branding {
  background: url("https://offers.collectivehealth.com/hubfs/components/header/header-mark-mobile.png");
  display: block;
  width: 8.33333rem;
  height: 1.44444rem;
  text-indent: -9999px; }
  .branding h1 {
    text-indent: inherit;
    margin: 0; }
  @media screen and (min-width: 768px) {
    .branding {
      background: url("https://offers.collectivehealth.com/hubfs/components/header/header-mark.png");
      width: 9.77778rem;
      height: 1.66667rem; } }
  @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .branding {
      background: url("https://offers.collectivehealth.com/hubfs/components/header/header-mark-mobile2x.png") center/contain no-repeat; } }
  @media (-webkit-min-device-pixel-ratio: 2) and (min-width: 768px), (min-resolution: 192dpi) and (min-width: 768px) {
    .branding {
      background: url("https://offers.collectivehealth.com/hubfs/components/header/header-mark2x.png") center/contain no-repeat; } }

.navigation {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  height: 100%; }

#main-menu {
  height: 100%;
  position: relative;
  display: none; }
  @media screen and (min-width: 960px) {
    #main-menu {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-pack: start;
          justify-content: flex-start;
      -ms-flex-align: stretch;
          align-items: stretch; } }

.menu-item {
  height: 100%; }

.menu-link {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  font-family: "Lab-Grotesque", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #5A5958;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 0.66667rem;
  line-height: 0.9rem;
  position: relative;
  z-index: 2;
  height: 100%;
  padding: 0 0.61111rem;
  color: #CCCBCB;
  background-color: #000000;
  border-top: 0.16667rem solid transparent;
  transition: color 300ms ease-in-out,  border-color 300ms ease-in-out, background-color 300ms ease-in-out; }
  @media screen and (min-width: 960px) {
    .menu-link {
      padding: 0 1.05556rem; } }
  .menu-link:hover,
  #main-menu .menu-item:hover > .menu-link {
    text-decoration: none;
    background-color: #252525;
    color: #FFFFFF;
    transition-duration: 100ms; }
    body.fixed-nav .menu-link:hover, body.fixed-nav
    #main-menu .menu-item:hover > .menu-link {
      border-top-color: #AD7F66; }
  .menu-link.sub-menu-link,
  .menu-item:hover .menu-link.sub-menu-link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-align: center;
        align-items: center;
    font-family: "Lab-Grotesque", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    font-weight: 600;
    font-style: normal;
    color: #252525;
    letter-spacing: 0;
    font-size: 0.77778rem;
    line-height: 1.05rem;
    text-transform: none;
    color: #CCCBCB;
    padding-left: 1.66667rem;
    height: 2.16667rem;
    border-top: none;
    background: transparent; }
    .menu-link.sub-menu-link:hover,
    .menu-item:hover .menu-link.sub-menu-link:hover {
      color: #FFFFFF; }
  .has-sub-menu > .menu-link:after {
    content: '';
    display: inline-block;
    background: url("//cdn2.hubspot.net/hubfs/536441/template_images/icons/sub-menu-indicator.svg") center center no-repeat;
    width: 0.55556rem;
    height: 0.44444rem;
    margin-left: 0.27778rem; }
  #mobile-menu .menu-link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-align: center;
        align-items: center;
    border-top: 0;
    height: 2.16667rem;
    background: transparent;
    position: static; }
    #mobile-menu .menu-link:before {
      content: '';
      height: 2.16667rem;
      width: 0.16667rem;
      position: absolute;
      left: 0;
      background: transparent;
      transition: background 300ms ease-in-out; }
  #mobile-menu .menu-link:hover:before {
    background-color: #AD7F66;
    transition-duration: 100ms; }

@media (hover: none) {
  .has-sub-menu > .menu-link {
    pointer-events: none;
    cursor: pointer; } }

.sub-menu {
  min-width: 7.77778rem;
  position: relative;
  z-index: 1;
  width: 100%;
  top: 0;
  left: 0;
  background: #252525;
  padding: 0.88889rem 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 300ms ease-in-out, visibility 300ms ease-in-out; }
  .menu-item:hover .sub-menu {
    visibility: visible;
    opacity: 1;
    transition-duration: 100ms; }
  #mobile-menu .sub-menu {
    visibility: visible;
    opacity: 1;
    position: static;
    transform: none;
    border: 0;
    width: 100%;
    padding: 0; }

.navigation__persistent-cta {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  font-family: "Lab-Grotesque", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #5A5958;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 0.66667rem;
  line-height: 0.9rem;
  margin-left: 0.83333rem;
  width: 6.44444rem;
  height: 2.22222rem;
  color: #5F4E46;
  border: 1px solid #5F4E46; }
  .navigation__persistent-cta:hover {
    font-family: "Lab-Grotesque", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #FFFFFF;
    background: #AD7F66;
    border-color: #AD7F66;
    letter-spacing: 1.6px; }
  @media screen and (max-width: 959px) {
    #main-menu + .navigation__persistent-cta {
      display: none; } }
  @media screen and (min-width: 960px) {
    .navigation__persistent-cta {
      width: 7.11111rem; } }

.mobile-navigation {
  display: none;
  position: absolute;
  top: 5.33333rem;
  height: auto;
  background: #252525;
  transform: translateY(-100%);
  transition: transform 300ms ease-out;
  z-index: 997;
  max-height: 100%;
  width: 100%;
  overflow-x: hidden; }
  body.fixed-nav .mobile-navigation {
    position: fixed;
    top: 3.88889rem; }
  .mobile-navigation .grid-container {
    position: static;
    padding: 0.83333rem 0; }
  @media screen and (max-width: 959px) {
    .mobile-navigation {
      display: block; }
      .outer-site-wrapper.nav-open .mobile-navigation {
        transform: translateY(0); } }
  @media (max-device-height: 700px) {
    .mobile-navigation {
      height: 100%; }
      .mobile-navigation .scroll-container {
        max-height: calc(100% - 3.88889rem);
        width: calc(100% + 1rem);
        overflow-y: scroll;
        overflow-x: hidden; } }
  .mobile-navigation .navigation__persistent-cta {
    width: 12.22222rem;
    margin-left: 0.61111rem;
    margin-top: 0.55556rem;
    margin-bottom: 0.77778rem; }

.hamburger-menu {
  transform: scale(-1, 1);
  width: 30px;
  height: 20px; }
  @media screen and (min-width: 960px) {
    .hamburger-menu {
      display: none; } }

.hamburger-menu--left {
  position: absolute;
  left: 0;
  transform: scale(1, 1); }

.hamburger-menu__inner {
  position: absolute;
  display: block;
  margin-top: -0.11111rem;
  top: 50%;
  height: 0.11111rem;
  width: 0.83333rem;
  background-color: #FFFFFF;
  transform: translateZ(0);
  transition: width 0.4s, background-color 300ms ease-in-out; }
  .hamburger-menu__inner:before, .hamburger-menu__inner:after {
    content: "";
    background-color: #FFFFFF;
    position: absolute;
    height: 0.11111rem;
    display: block;
    transform: translateZ(0);
    transition: width .4s; }
  .hamburger-menu__inner:before {
    top: -0.33333rem;
    width: 1.38889rem;
    background-color: #FFFFFF;
    transition: background-color 300ms ease-in-out, width .4s, top .2s .2s, transform .2s 0.0s;
    transform: rotate(0deg); }
  .hamburger-menu__inner:after {
    background-color: #FFFFFF;
    bottom: -0.33333rem;
    width: 1.11111rem;
    transition: background-color 300ms ease-in-out, width .4s, bottom .2s .2s, transform .2s 0.0s;
    transform: rotate(0deg); }

.hamburger-menu:hover, .hamburger-menu.is-active {
  cursor: pointer; }
  .hamburger-menu:hover .hamburger-menu__inner, .hamburger-menu:hover .hamburger-menu__inner:before, .hamburger-menu:hover .hamburger-menu__inner:after, .hamburger-menu.is-active .hamburger-menu__inner, .hamburger-menu.is-active .hamburger-menu__inner:before, .hamburger-menu.is-active .hamburger-menu__inner:after {
    width: 1.38889rem; }

@keyframes closeTopMenu {
  0% {
    top: -8px;
    transform: rotate(0deg); }
  25% {
    top: 0px;
    transform: rotate(0deg); }
  100% {
    transform: rotate(45deg); } }

@keyframes closeBottomMenu {
  0% {
    bottom: -8px;
    transform: rotate(0deg); }
  25% {
    bottom: 0px;
    transform: rotate(0deg); }
  100% {
    transform: rotate(-45deg); } }

.hamburger-menu.is-active .hamburger-menu__inner {
  background-color: transparent;
  transition: background-color;
  transition-delay: .1s; }
  .hamburger-menu.is-active .hamburger-menu__inner:before {
    animation: closeTopMenu .5s;
    top: 0;
    transform: translateZ(0) rotate(45deg); }
  .hamburger-menu.is-active .hamburger-menu__inner:after {
    animation: closeBottomMenu .5s;
    bottom: 0;
    transform: translateZ(0) rotate(-45deg); }

@keyframes takeover-fade-in {
  from {
    background: rgba(37, 37, 37, 0); }
  to {
    background: rgba(37, 37, 37, 0.25); } }

@keyframes takeover-fade-out {
  from {
    background: rgba(37, 37, 37, 0.25); }
  to {
    background: rgba(37, 37, 37, 0); } }

.nav-takeover {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 996;
  display: none;
  animation: takeover-fade-out 300ms ease-out forwards; }
  @media screen and (max-width: 959px) {
    .outer-site-wrapper.nav-open .nav-takeover {
      display: block;
      animation: takeover-fade-in 300ms ease-out forwards; } }

.outer-site-wrapper {
  height: 100%; }

.inner-site-wrapper {
  position: relative;
  height: 100%;
  padding-top: 5.33333rem; }

.header .grid-container {
  overflow-x: hidden; }

.navigation__persistent-cta {
  transform: translateX(110%);
  transition: transform 300ms ease-in;
  width: auto;
  padding: 0 1.11111rem; }
  .cta-visible .navigation__persistent-cta {
    transform: none;
    transition: transform 600ms ease-out; }

.inner-site-wrapper {
  padding-top: 3.88889rem; }
