/*****************************************************************************
 * 
 * String Additions for Accessibility - 09/2022
 * Added Mobile Menu CSS for research-header module
 * Added additional CSS for accessibility compliance on desktop menu
 * 
 ****************************************************************************/

.vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a{white-space: inherit !important; width: auto !important; overflow: inherit !important;text-overflow: inherit !important; max-width: 100% !important;position:relative;}

.vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul .hs-menu-depth-1 > a:after,
.vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul .hs-menu-depth-1 > .sublink:after {background-color: #00a7db;content: "";display: block;height: 0.5rem;position: absolute;transform: scaleX(0);-webkit-transform: scaleX(0);transition: all .3s ease-in-out 0s;-webkit-transition: all .3s ease-in-out 0s;visibility: hidden;width: 72%;margin: 0 auto;left: 0;right: 0;bottom: 0;}

.vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul .hs-menu-depth-1:hover>a:after,
.vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul .hs-menu-depth-1:hover>.sublink:after {visibility: visible;transform: scaleX(1);-webkit-transform: scaleX(1);}

.vs-header.stuck .sticky-container .primary-nav {align-items: center;}

.vs-header .nav-items .hs-menu-wrapper ul li.hs-menu-item:focus,
.vs-header .nav-items .hs-menu-wrapper ul li.hs-menu-item:focus-within,
.vs-header .nav-items .hs-menu-wrapper ul li.hs-menu-item a:focus,
.vs-header .nav-items .hs-menu-wrapper ul li.hs-menu-item a:focus-within{outline-color: rgb(0, 95, 204);outline-offset: 1px;outline-width: 1px;   border: 2px solid rgb(0, 95, 204); }
body.no-overflow { overflow: hidden; }



@media (min-width:1210px){
  .vs-header .nav-items .hs-menu-wrapper ul li.hs-menu-item{position:relative;}
  .vs-header .nav-items .hs-menu-wrapper > ul > li.hs-menu-item > a {color: #fff;position:relative;font-size:18px;}
  .vs-header .nav-items .hs-menu-wrapper > ul > li.hs-menu-item > a:after {background-color:#00A7DB;content: '';display: block;height: 0.5rem;position: absolute;transform: scaleX(0);-webkit-transform: scaleX(0);transition: all .3s ease-in-out 0s;-webkit-transition: all .3s ease-in-out 0s; visibility: hidden;width: 72%;margin: 0 auto;left: 0%;right: 0%;bottom: 0;}
  .vs-header .nav-items .hs-menu-wrapper > ul > li.hs-menu-item:hover > a:after,.vs-header .nav-items .hs-menu-wrapper > ul > li.active.hs-menu-item > a:after{visibility: visible;transform: scaleX(1);-webkit-transform: scaleX(1);}
  .vs-header .nav-items .hs-menu-wrapper > ul > li.hs-menu-item.hs-item-has-children > a:before {content: "";height: 0.7rem;right: 2px;top: 1.8rem;width: 1.2rem;background: url(https://get.vitalsource.com/hubfs/2021_Research/Home/chevron-white.svg) no-repeat;content: '';display: block; position: absolute;}
  .vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul {display: flex;height: 5rem;align-items: center;justify-content: flex-end;}
	.vs-header .nav-items .hs-menu-wrapper>ul>li.hs-menu-item.hs-item-has-children>a:after {width: 80%;left: 15%;}
  body .vs-header .primary-nav .logo-items{height: 3.5rem;}
  .vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper {width: 252px;background-color: #FFFFFF;box-shadow: 0 2px 7px 1px rgb(0 0 0 / 10%);padding: 20px 10px 20px 17px;}
  body .vs-header.stuck .primary-nav .logo-items {height: 7rem;}
  .vs-header .hs-menu-wrapper li.hs-item-has-children ul.hs-menu-children-wrapper li a {color: #404041;font-family: Roboto;font-size: 16px;letter-spacing: 0;line-height: 24px;padding: 10px 0 10px 16px;}
  .vs-header .hs-menu-wrapper li.hs-item-has-children ul.hs-menu-children-wrapper li a:before {content: "";position: absolute;width: 5px;height: 0px;left: 0;background-color: #00A7DB;top: 50%;transform: translateY(-50%);-webkit-transform: translateY(-50%);transition: all .3s ease-in-out 0s;-webkit-transition: all .3s ease-in-out 0s;}
  .vs-header .hs-menu-wrapper li.hs-item-has-children ul.hs-menu-children-wrapper li:hover a:before,.vs-header .hs-menu-wrapper li.hs-item-has-children ul.hs-menu-children-wrapper li.active a:before{height:30px;}
  .vs-header .nav-items .hs-menu-wrapper > ul > li:after {content: "";position: absolute;height: 13px;width: 100%;top: 100%;left: 0;right: 0;background-color: transparent;}
  .vs-header .nav-items .hs-menu-wrapper>ul>li.hs-menu-item:last-child>a {padding-right: 0;}
  .vs-header .nav-items .hs-menu-wrapper>ul>li.hs-menu-item:last-child>a:after {right: -10%;}
}
@media (max-width:1209px){
  .vs-header .nav-items {background-color: #fff;display: none;flex-direction: column;margin-left: -2rem;margin-right: -2rem;max-height: calc(100vh - 7rem);overflow-y: auto;overflow-x: hidden;padding: 0;position: relative;}
  .vs-header .nav-items.open {display: flex;}
  .vs-header .nav-items .hs-menu-wrapper > ul > li.hs-menu-item > a{font: 400 1.6rem/2.4000000000000004rem 'Roboto Slab',serif;background-color: transparent;border: 0;border-top: 1px solid #ced2d9;color: #404041;cursor: pointer;display: block;outline: 0;position: relative;padding: 2rem 1.5rem;text-align: left;width: 100%;}
  .vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper {position: static;display: none;visibility: visible;    opacity: 1;}
  .vs-header .nav-items .hs-menu-wrapper ul li .hs-menu-children-wrapper li a {font: 400 1.6rem/2.4000000000000004rem 'Roboto',sans-serif;background-color: #f8f8f8;border-bottom: 0;border-left: 0;border-right: 0; border-top: 1px solid #dfe4ea;color: #404041;display: block;padding: 2rem 1.5rem 2rem 3.5rem;text-align: left;text-transform: none;}
/*   .vs-header .nav-items .hs-menu-wrapper > ul > li.hs-item-has-children > a:before{background: url(https://get.vitalsource.com/hubfs/Website/icons/chevron.svg) no-repeat;content: '';display: block;height: 1.2rem;position: absolute;right: 1.5rem;top: calc(50% - 0.6rem);width: 2rem;} */
  .vs-header .child-trigger {display: block;height: 6.5rem;position: absolute;right: 0;top:0;z-index: 9999;transition: all ease 0.3s;-webkit-transition: all ease 0.3s;left:0;right:0;display: flex;align-items: center; justify-content: flex-end;}
  .vs-header .child-trigger i {background: url(https://get.vitalsource.com/hubfs/Website/icons/chevron.svg) no-repeat;width: 20px;display: flex;background-size: 20px 12px;justify-content: center;align-items: center;height: 14px;position: relative;right: 26px;transition: all ease 0.3s;-webkit-transition: all ease 0.3s;}
	.vs-header .child-trigger.child-open i{transform: rotate(180deg);-webkit-transform: rotate(180deg);}
	.vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul { display: block;}
	.vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-menu-depth-1 {float: none;}
	.vs-header.stuck .sticky-container {padding: 0 15px;}
	.vs-header.stuck .sticky-container .primary-nav {padding-left: 0;padding-right: 0;}
}




/******************************************************************/
/*   CSS ADDITIONS TO DESKTOP MENU FOR ACCESSIBILITY COMPLIANCE   */
/******************************************************************/

#research-header .nav-container {
    max-width: none;
    padding-left: 0px;
    padding-right: 0px;
  }
  
  #research-header .secondary-nav {
    max-width: 1400px;
    margin: auto;
    min-height: 40px;
  }
  
nav.navTopLevel {
  display: none;
}
.navTopLevel ul {
  list-style: none;
  padding-left:0;
}

.navTopLevel ul li {
  margin-left:0;
}

.openedM ul {
  display:block;
  visibility: visible;
}

.closedM ul{
  display:none;
  visibility: hidden;
}
ul.closedM {
  display: none;
  visibility: hidden;
}
ul.openedM {
  display: block;
  visibility: visible;
}

  .vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul li button {
    white-space: inherit!important;
    width: auto!important;
    overflow: inherit!important;
    text-overflow: inherit!important;
    max-width: 100%!important;
    display: inline-block;
    padding: 10px 20px;
    white-space: nowrap;
    max-width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
    text-decoration: none;
    font: 400 1.8rem/2.4000000000000004rem Roboto,sans-serif;
    background: none;
    border: none;
    color: #fff;
    -webkit-appearance: button;
    cursor: pointer;
  }
  
  .vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a {
    color: #ffffff;
    font: 400 1.8rem/2.4000000000000004rem Roboto,sans-serif;
  }
  
  @media (min-width: 1210px) {
    .vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul li button:before {
        height: 0.7rem;
        right: 2px;
        top: 1.8rem;
        width: 1.2rem;
        background: url(https://get.vitalsource.com/hubfs/2021_Research/Home/chevron-white.svg) no-repeat;
        content: "";
        display: block;
        position: absolute;
    }
    
    .vs-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-menu-item {
      position: relative;
    }
  }

.navTopLevel.openedM a {
  display: block;
  text-align: left;
}
  
  #mobilemenuItems a:focus,
  #mobilemenuItems button:focus {
    border: 1px solid black !important;
  }

.navTopLevel button {
  background-color: #fff;
  padding:0;
  border:none;
}

nav.navTopLevel a {
  font-weight: 400;
  color: #243642;
  font-size: 24px;
  line-height: 1.8;
}
ul.submenu li a {
  font-size: 18px;
  line-height: 2;
  padding-left: 18px;
}
span.comingsoon {
  color: #fff;
  position: relative;
  top: -6px;
  font-size: 12px;
  background: #0075e3;
  border-radius: 2px;
  padding: 3px 7px;
  font-weight: 600;
  z-index: 1;
  width: auto;
  text-align: center;
  max-width: 100%;
}
  
  .sr-only {
    clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  }
  
  .sticky-container > nav {
    display: flex;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    max-width: 1440px;
  }
  
  .vs-logo img {
     max-width: 175px;
  }
  
  .sticky-container.active-header {
    background-color: #024;
    transition: all .5s;
    padding-top: 0;
    padding-bottom: 10px;
  }
  
  .sticky-container-mobile.active-header {
    background-color: #024;
    transition: all .5s;
    margin-top: -35px;
    padding-top: 10px;
    padding-bottom: 0px;
  }
  
  .sticky-container,
  .sticky-container-mobile {
    position: fixed;
    width: 100%;
    z-index: 9999;
  }
  
  .sticky-container-mobile.active-header .vs-logo img {
    max-width: 125px;
    margin-bottom: -5px;
  }
  
  .sticky-container-mobile.active-header #mainNavMobile .logo-items {
    padding: 20px;
  }

  .vs-header .secondary-nav .l0-nav {
     margin-left: -20px;
  }
   
    @media (min-width: 1420px) {
     .vs-header .secondary-nav .l0-nav {
        margin-left: 0;
      }
    }

@media (max-width: 1210px) {
  nav.navTopLevel {
    display: block;
  }
}
  
  @media (max-width: 1210px) {
  #research-header {
    display: none;
  }
}

}

/******************************************************************/
/*             END ACCESSIBILITY CSS FOR NEW NAV                  */
/******************************************************************/

/******************************************************************/
/*    MOBILE MENU CSS FOR ACCESSIBLE MOBILE MENU                  */
/******************************************************************/

#mobilemenuItems button#menuButton {
  padding: 4px 8px;
}

#mobilemenuItems .submenubtn {
   position: relative;
}

.submenubtn:before {
    background: url(https://get.vitalsource.com/hubfs/Website/icons/chevron.svg) no-repeat;
    background-size: 20px 12px;
    transition: all .5s;  
    content: "";
    height: 20px;
    position: absolute;
    right: 20px;
    width: 20px;
    text-align: right;
    background-position: right center;
    z-index: 1;
}

#mobilemenuItems button#menuButton {
  height: 3.4rem;
  width: 3.4rem;
}



button.si-icon.si-icon-hamburger-cross {
    background: transparent;
    display: inline-block;
    float: right;
}

.active-header button.si-icon.si-icon-hamburger-cross {
    margin-top: 20px;
}

nav#mainNavMobile.closed {
    background: transparent;
}

nav#mainNavMobile.opened .logo-items {
    background: #024;
}

#mainNavMobile .logo-items {
  background: transparent;
  padding-top: 10px;
  padding-bottom: 25px;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.active-header #mainNavMobile .logo-items {
  background: #024;
}

#mainNavMobile .logo-items .logo {
  display: inline-block;
}

button.si-icon.si-icon-hamburger-cross svg {
  height: 3.4rem;
  width: 3.4rem;
  margin-bottom: -15px;
}

nav.navTopLevel {
  display: none;
}
.navTopLevel ul {
  list-style: none;
  padding-left:0;
  margin-bottom: 0px;
}

.navTopLevel ul li {
  margin-left:0;
}

.opened ul {
  display:block;
}

.closed ul{
  display:none;
}
ul.closed {
  display: none;
}
ul.open {
  display: block;
}

#mobilemenuItems .submenubtn,
#mobilemenuItems a {
  font: 400 1.6rem/2.4000000000000004rem Roboto Slab,serif;
  background-color: transparent;
  border: 0;
  border-top: 1px solid #ced2d9;
  color: #404041;
  cursor: pointer;
  display: block;
  outline: 0;
  position: relative;
  padding: 2rem 1.5rem;
  text-align: left;
}

#mobilemenuItems .submenu a {
  background-color: #f8f8f8;
  padding-left: 20px;
}

.navTopLevel.opened a {
  display: block;
  text-align: left;
}

.navTopLevel.opened a:focus,
.navTopLevel.opened button:focus {
  display: block;
  text-align: left;
  color: #ffffff;
}

#mobilemenuItems li:before {
   display: none;
}

#mainNavMobile.navTopLevel .submenubtn:focus {
  /*background-color: #243742;*/
}

.navTopLevel button {
  background-color: #fff;
  padding:0;
  border:none;
  display: block;
}
.submenubtn {
  display: inherit;
  font-weight: 400;
  line-height: 1.8;
  width: 100%;
  text-align: left;
}

nav.navTopLevel a {
  font-weight: 400;
  color: #243642;
  font-size: 24px;
  line-height: 1.8;
}
nav.navTopLevel a:hover {
    color: #ffffff;
}
ul.submenu li a {
  font-size: 18px;
  line-height: 2;
  padding-left: 18px;
}
span.comingsoon {
  color: #fff;
  position: relative;
  top: -6px;
  font-size: 12px;
  background: #0075e3;
  border-radius: 2px;
  padding: 3px 7px;
  font-weight: 600;
  z-index: 1;
  width: auto;
  text-align: center;
  max-width: 100%;
}

@media (max-width: 1210px) {
  nav.navTopLevel {
    display: block;
  }
  
  .vs-logo img {
    max-width: 125px;
    margin-bottom: 5px;
  }
}
@media (max-width: 480px) {
  button#menuButton {
    top: 19px;
    right: 10px;
  }
}
@media (max-width: 350px) {
  button#menuButton {
    top: 14px;
  }
}



/******************************************************************/
/*                      END MOBILE MENU CSS                       */
/******************************************************************/