@import url(/globalstyle.css);
 /*-- -------------------------- -->
<---     Mobile Navigation      -->
<--- -------------------------- -*/

      /* Mobile - 1023px */
      @media only screen and (max-width: 1023px) {
        body.orb-open {
          overflow: hidden;
        }
        body.scroll #orb-navigation {
          /* 53px, same height as the orb-top-container */
          transform: translateY(-3.3125rem);
        }

        #orb-navigation {
          width: 100%;
          /* prevents padding from affecting height and width */
          box-sizing: border-box;
          background-color: #fff;
          box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
          position: relative;
          z-index: 10000;
          /*transition: transform 0.3s;*/
          padding: 0;
        }
        #orb-navigation:before {
          content: "";
          width: 100%;
          height: 0vh;
          background: rgba(0, 0, 0, 0.6);
          -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
          position: absolute;
          display: block;
          top: 100%;
          right: 0;
          z-index: -1100;
          opacity: 0;
          transition: height 0.5s, opacity 0.5s;
        }
        #orb-navigation.orb-active:before {
          height: 150vh;
          opacity: 1;
        }
        #orb-navigation.orb-active .orb-ul-wrapper {
          opacity: 1;
          transform: scaleY(1);
          transition-delay: 0.15s;
        }
        #orb-navigation.orb-active .orb-li {
          transform: translateY(0);
          opacity: 1;
          text-transform: uppercase;
        }
        #orb-navigation .orb-top-bar {
          width: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
        }
        #orb-navigation .orb-top-container {
          width: 100%;
          padding: 1rem 1.5rem;
          /* prevents padding from affecting height and width */
          box-sizing: border-box;
          background-color: #f7f7f7;
          display: flex;
          justify-content: space-between;
          align-items: center;
          gap: 1rem;
        }
        #orb-navigation .orb-top-contact {
          width: auto;
          /* prevents padding from affecting height and width */
          box-sizing: border-box;
          display: flex;
          justify-content: center;
          align-items: center;
          /* 16px - 24px */
          gap: clamp(1rem, 2vw, 1.5rem);
        }
        #orb-navigation .orb-top-link {
          font-size: 0.875rem;
          line-height: 1.5em;
          text-decoration: none;
          margin: 0;
          color: var(--bodyTextColor);
          display: flex;
          justify-content: flex-start;
          align-items: center;
          gap: 0.5rem;
          position: relative;
        }
        #orb-navigation .orb-top-link:nth-of-type(2) {
          display: none;
        }
        #orb-navigation .orb-link-icon {
          width: 1rem;
          height: auto;
          display: block;
        }
        #orb-navigation .orb-top-social {
          visibility: visible;
          opacity: 1;
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 0.5rem;
          transition: opacity 0.3s, visibility 0.3s, height 0.3s;
        }
        #orb-navigation .orb-social-link {
          text-decoration: none;
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 1rem;
        }
        #orb-navigation .orb-social-icon {
          width: 1.25rem;
          height: auto;
          display: block;
        }
        #orb-navigation .orb-container {
          width: 100%;
          padding: 0.6rem 1rem;
          /* prevents padding from affecting height and width */
          box-sizing: border-box;
          display: flex;
          justify-content: flex-end;
          align-items: center;
          position: relative;
        }
        #orb-navigation .orb-logo {
          width: auto;
          height: 2.5rem;
          margin: 0 auto 0 0;
          padding: 0;
          /* prevents padding from affecting height and width */
          box-sizing: border-box;
          display: flex;
          justify-content: center;
          align-items: center;
          order: 1;
          z-index: 10;
        }
        #orb-navigation .orb-logo img {
          width: auto;
          height: 100%;
          /* ensures the image never overflows the container. It stays contained within it's width and height and expands to fill it then stops once it reaches an edge */
          object-fit: contain;
        }
        #orb-navigation .orb-nav {
          order: 2;
        }
        #orb-navigation .orb-toggle {
          width: 2.875rem;
          height: 2.875rem;
          margin: 0 0 0 auto;
          background-color: var(--darkgrey);
          border: none;
          display: none;
          justify-content: center;
          align-items: center;
          transition: transform 0.6s;
        }
        #orb-navigation .orb-toggle.orb-active {
          transform: rotate(180deg);
        }
        #orb-navigation .orb-active .orb-line1 {
          top: 50%;
          transform: translate(-50%, -50%) rotate(225deg);
        }
        #orb-navigation .orb-active .orb-line2 {
          top: 50%;
          transform-origin: center;
          transform: translate(-50%, -50%) translateY(0) rotate(-225deg);
        }
        #orb-navigation .orb-active .orb-line3 {
          bottom: 100%;
          opacity: 0;
        }
        #orb-navigation .orb-box {
          /* 24px - 28px */
          width: clamp(1.5rem, 2vw, 1.75rem);
          height: 0.75rem;
          position: relative;
        }
        #orb-navigation .orb-line {
          width: 100%;
          height: 2px;
          border-radius: 2px;
          background-color: #fafbfc;
          position: absolute;
          left: 50%;
          transform: translateX(-50%);
        }
        #orb-navigation .orb-line1 {
          top: 0;
          transform-origin: center;
          transition: transform 0.5s, top 0.3s, left 0.3s;
          animation-duration: 0.7s;
          animation-timing-function: ease;
          animation-fill-mode: forwards;
          animation-direction: normal;
        }
        #orb-navigation .orb-line2 {
          top: 50%;
          transform: translateX(-50%) translateY(-50%);
          transition: top 0.3s, left 0.3s, transform 0.5s;
          animation-duration: 0.7s;
          animation-timing-function: ease;
          animation-fill-mode: forwards;
          animation-direction: normal;
        }
        #orb-navigation .orb-line3 {
          bottom: 0;
          transition: bottom 0.3s, opacity 0.3s;
        }
        #orb-navigation .orb-ul-wrapper {
          width: 100%;
          height: auto;
          background-color: #fff;
          top: 100%;
          left: 0;
          z-index: -1;
        }

        a.dropdown-item{
          padding: 10px 20px;
        }

        .dropdown-menu > li > a:hover, 
        .dropdown-menu > li > a:focus{
          color: white !important;
          background-color: var(--blue) !important;
          padding-top: 10px;
          padding-bottom: 10px;
        }
        #orb-navigation .orb-ul {
          margin: 0;
          padding: 0;
          width: 100%;
          height: auto;
          display: flex;
          justify-content: flex-start;
          flex-direction: column;
          align-items: center;

        }
        #orb-navigation .orb-li {
          width: 100%;
          text-align: center;
          list-style: none;
          margin-right: 0;
          /* transition from these values */
          transform: translateY(-4.375rem);
          opacity: 0;
          transition: transform 0.6s, opacity 0.9s;
        }
        #orb-navigation .orb-li:nth-of-type(1) {
          transition-delay: 0.05s;
        }
        #orb-navigation .orb-li:nth-of-type(2) {
          transition-delay: 0.1s;
        }
        #orb-navigation .orb-li:nth-of-type(3) {
          transition-delay: 0.15s;
        }
        #orb-navigation .orb-li:nth-of-type(4) {
          transition-delay: 0.2s;
        }
        #orb-navigation .orb-li:nth-of-type(5) {
          transition-delay: 0.25s;
        }
        #orb-navigation .orb-li:nth-of-type(6) {
          transition-delay: 0.3s;
        }
        #orb-navigation .orb-li:nth-of-type(7) {
          transition-delay: 0.35s;
        }
        #orb-navigation .orb-li:nth-of-type(8) {
          transition-delay: 0.4s;
        }
        #orb-navigation .orb-li:nth-of-type(9) {
          transition-delay: 0.45s;
        }
        #orb-navigation .orb-li:nth-of-type(10) {
          transition-delay: 0.5s;
        }
        #orb-navigation .orb-li:nth-of-type(11) {
          transition-delay: 0.55s;
        }
        #orb-navigation .orb-li:nth-of-type(12) {
          transition-delay: 0.6s;
        }
        #orb-navigation .orb-li:nth-of-type(13) {
          transition-delay: 0.65s;
        }
        #orb-navigation .orb-li-link {
          /* 16px - 24px */
          font-size: clamp(1rem, 2.5vw, 1.5rem);
          line-height: 1.2em;
          text-decoration: none;
          margin: 0;
          color: var(--primary);
          display: inline-block;
          position: relative;
        }
        #orb-navigation .orb-li-link.orb-active {
          color: var(--primary);
          text-transform: uppercase;
        }
        #orb-navigation .orb-li-link:hover {
          color: var(--primary);
        }
        #orb-navigation .orb-button-solid {
          display: none;
        }
      }
      /* Tablet - 768px */
      @media only screen and (min-width: 48rem) {
        #orb-navigation .orb-top-link:nth-of-type(2) {
          display: flex;
        }

      }

      /*-- -------------------------- -->
<---     Navigation Dropdown    -->
<--- -------------------------- -*/

      /* Mobile - 1023px */
      @media only screen and (max-width: 1023px) {
        #orb-navigation .orb-li {
          text-align: center;
          width: 100%;
          display: block;
        }
        #orb-navigation .orb-dropdown {
          position: relative;
          color: var(--bodyTextColorWhite);
        }
        #orb-navigation .orb-dropdown.orb-active .orb-drop-ul {
          height: auto;
          opacity: 1;
          visibility: visible;
          margin: 0.75rem 0 0 0;
          padding: 0.75rem 0;
        }
        #orb-navigation .orb-dropdown.orb-active .orb-drop-link {
          opacity: 1;
        }
        #orb-navigation .orb-dropdown .orb-li-link {
          position: relative;
          transition: opacity 0.3s;
        }
        #orb-navigation .orb-drop-icon {
          width: auto;
          height: 31px;
          position: absolute;
          top: 50%;
          right: -1.25rem;
          transform: translateY(-50%);
          cursor: pointer;
        }
        #orb-navigation .orb-drop-ul {
          width: 100%;
          height: 0;
          margin: 0;
          padding: 0;
          background-color: var(--primary);
          overflow: hidden;
          opacity: 0;
          visibility: hidden;
          display: flex;
          justify-content: flex-start;
          flex-direction: column;
          align-items: center;
          gap: 0.75rem;
          transition: padding 0.3s, margin 0.3s, height 0.3s, opacity 0.3s,
            visibility 0.3s;
        }
        #orb-navigation .orb-drop-li {
          list-style: none;
        }

        .orb-drop-li a{
          color: var(--primary);
        }

       #orb-navigation a.nav-link.dropdown-toggle {
          font-size: 25px !important;
        }

        #orb-navigation a.dropdown-item {
           font-size: 25px !important;
        }
        
        #orb-navigation .orb-li-link.orb-drop-link {
          /* 14px - 16px */
          font-size: clamp(0.875rem, 2vw, 1.25rem);
          color: #fff;
        }


      }
      /* Desktop - 1024px */
      @media only screen and (min-width: 64rem) {


        #orb-navigation .orb-dropdown {
          position: relative;
        }
        #orb-navigation .orb-dropdown:hover {
          cursor: pointer;
        }
        #orb-navigation .orb-dropdown:hover .orb-drop-ul {
          transform: scaleY(1);
          opacity: 1;
          visibility: visible;
          z-index: 1;
          /*overflow-y: scroll;*/
          max-height: 500px;
        }
        #orb-navigation .orb-dropdown:hover .orb-drop-li {
          opacity: 1;
          transform: translateY(0);
        }
        #orb-navigation .orb-drop-icon {
          width: auto;
          height: 31px;
          margin-left: 0.25rem;
          display: inline-block;
        }
        #orb-navigation .orb-drop-ul {
          min-width: 9rem;
          margin: 0;
          padding: 5px 0 0 0;
          background-color: #fff;
          overflow: hidden;
          opacity: 0;
          visibility: hidden;
          box-shadow: rgba(149, 157, 165, 0.2) 5px 11px 5px;
          border-bottom: 5px solid var(--primary);
          position: absolute;
          top: 100%;
          z-index: -100;
          transform: scaleY(0);
          transform-origin: top;
          transition: transform 0.3s, visibility 0.3s, opacity 0.3s;
        }
        #orb-navigation .user-profile .orb-drop-ul {
          margin-left: -100px;
      }
        #orb-navigation .orb-drop-li {
          list-style: none;
          font-size: 1rem;
          text-decoration: none;
          opacity: 0;
          width: 100%;
          height: auto;
          display: block;
          transform: translateY(-0.625rem);
          transition: opacity 0.6s, transform 0.6s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(1) {
          transition-delay: 0.05s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(2) {
          transition-delay: 0.1s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(3) {
          transition-delay: 0.15s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(4) {
          transition-delay: 0.2s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(5) {
          transition-delay: 0.25s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(6) {
          transition-delay: 0.3s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(7) {
          transition-delay: 0.35s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(8) {
          transition-delay: 0.4s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(9) {
          transition-delay: 0.45s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(10) {
          transition-delay: 0.5s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(11) {
          transition-delay: 0.55s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(12) {
          transition-delay: 0.6s;
        }
        #orb-navigation .orb-drop-li:nth-of-type(13) {
          transition-delay: 0.65s;
        }
        #orb-navigation .orb-li-link.orb-drop-link {
          font-size: 1rem;
          white-space: nowrap;
          line-height: 1.5em;
          text-decoration: none;
          width: 100%;
          padding: 0.75rem;
          /* prevents padding from affecting height and width */
          box-sizing: border-box;
          color: var(--bodyTextColor);
          display: block;
          transition: color 0.3s, background-color 0.3s;
        }
        #orb-navigation .orb-li-link.orb-drop-link:hover {
          color: var(--primary);
          background-color: #f7f7f7;
        }
        #orb-navigation .orb-li-link.orb-drop-link:before {
          display: none;
        }
      }

      /*-- -------------------------- -->
<---     Desktop Navigation     -->
<--- -------------------------- -*/

      /* Small Desktop - 1024px */
      @media only screen and (min-width: 64rem) {
        body.scroll #orb-navigation {
          /* 53px, the ssme height as the orb-top-container */
          transform: translateY(-15px);
          height: 80px;
          background-color: white !important;
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.1) !important; 
          padding-top: 25px;
        }
        #orb-navigation {
          width: 100%;
          padding: 15px 0;
          /* prevents padding from affecting height and width */
          box-sizing: border-box;
          background-color: white;
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);          
          z-index: 1000;
          transition: transform 0.3s;
        }
        body[data-sitemap-state="/"] #orb-navigation {
          box-shadow: none;
          background-color: transparent;
        }

        #orb-navigation .orb-top-bar {
          width: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
        }
        #orb-navigation .orb-top-container {
          width: 100%;
          max-width: 80rem;
          padding: 1rem;
          /* prevents padding from affecting height and width */
          box-sizing: border-box;
          display: flex;
          justify-content: space-between;
          align-items: center;
          gap: 3.125rem;
          position: relative;
          z-index: 1;
        }
        #orb-navigation .orb-top-container:before {
          /* grey background */
          content: "";
          width: 100vw;
          height: 100%;
          background: #f7f7f7;
          opacity: 1;
          position: absolute;
          display: block;
          top: 0;
          left: 50%;
          z-index: -1;
          transform: translateX(-50%);
        }
        #orb-navigation .orb-top-contact {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          gap: 1.5rem;
        }
        #orb-navigation .orb-top-link {
          font-size: 0.875rem;
          line-height: 1.5em;
          text-decoration: none;
          margin: 0;
          color: var(--bodyTextColor);
          display: flex;
          justify-content: flex-start;
          align-items: center;
          gap: 0.5rem;
          position: relative;
        }
        #orb-navigation .orb-top-link:hover {
          text-decoration: underline;
        }
        #orb-navigation .orb-link-icon {
          width: 1rem;
          height: auto;
          display: block;
        }
        #orb-navigation .orb-top-social {
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 1rem;
        }
        #orb-navigation .orb-social-link {
          text-decoration: none;
          display: flex;
          justify-content: center;
          align-items: center;
          transition: transform 0.3s;
        }
        #orb-navigation .orb-social-link:hover {
          transform: scale(1.1);
        }
        #orb-navigation .orb-social-icon {
          width: 1.25rem;
          height: auto;
          display: block;
        }
        #orb-navigation .orb-container {
          width: 100%;
          max-width: 1350px;
          margin: auto;
          padding: 0;
          /* prevents padding from affectin gheight */
          box-sizing: border-box;
          display: flex;
          justify-content: flex-end;
          align-items: center;
          gap: 1.5rem;
          position: relative;
        }
        #orb-navigation .orb-toggle {
          display: none;
        }
        #orb-navigation .orb-logo {
          /* 40px - 44px */
          height: clamp(2.5rem, 4vw, 2.75rem);
          /* margin-right auto pushes everything away from it to the right */
          margin: 0 auto 0 0;
          padding: 0;
          display: flex;
          justify-content: center;
          align-items: center;
          z-index: 100;
        }
        #orb-navigation .orb-logo img {
          width: auto;
          height: 100%;
          /* ensures the image never overflows the container. It stays contained within it's width and height and expands to fill it then stops once it reaches an edge */
          object-fit: contain;
        }
        #orb-navigation .orb-ul {
          width: 100%;
          margin: 0;
          padding: 0;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          gap: 3rem;
        }
        #orb-navigation .orb-li {
          list-style: none;
          padding: 0;
          /* prevent flexbox from squishing it */
          flex: none;
        }
        #orb-navigation .orb-li-link {
          /* 14px - 16px */
          font-size: clamp(0.875rem, 1.3vw, 1rem);
          line-height: 1.5em;
          text-decoration: none;
          margin: 0;
          color: var(--primary);
          display: block;
          position: relative;
          transition: color 0.3s;
          text-transform: uppercase;
          font-weight: bold;
        }
        #orb-navigation .orb-li-link:hover {
          color: var(--primary);
          text-decoration: none !important; /* theme.css overwrite*/
        }
        #orb-navigation .orb-li-link.orb-active {
          font-weight: 700;
          color: var(--primary);
          text-transform: uppercase;
        }
        #orb-navigation .orb-button-solid {
          font-size: 1rem;
          /* 46px - 56px */
          line-height: clamp(2.875em, 5.5vw, 3.5em);
          text-decoration: none;
          font-weight: 700;
          text-align: center;
          margin: 0;
          color: #fff;
          padding: 0 2rem;
          background-color: var(--primary);
          overflow: hidden;
          display: inline-block;
          position: relative;
          z-index: 1;
          /* prevents padding from adding to the width */
          box-sizing: border-box;
          transition: color 0.3s;
        }
        #orb-navigation .orb-button-solid:before {
          content: "";
          position: absolute;
          height: 100%;
          width: 0%;
          background: #1a1a1a;
          opacity: 1;
          top: 0;
          left: 0;
          z-index: -1;
          transition: width 0.3s;
        }
        #orb-navigation .orb-button-solid:hover:before {
          width: 100%;
        }
        #orb-navigation .orb-nav-button {
          line-height: 2.875rem;
          margin-left: 1.5rem;
        }

        .drop_language{
          color: var(--blue);
          text-transform: uppercase;
        }
        .orb-nav a.dropdown-item:hover {
          background-color: var(--blue) !important;
          color: white !important;
          text-decoration: none !important;
        }
      }    

      @media (min-width: 640px) and (max-width: 1400px) {
        #orb-navigation .orb-container{
          padding-left: 20px;
          padding-right: 20px;
        }
        
        a.dropdown-item{
          padding: 10px 20px !important;
        }

        .dropdown-menu > li > a:hover, 
        .dropdown-menu > li > a:focus{
          color: white !important;
          background-color: var(--blue) !important;
          padding-top: 10px;
          padding-bottom: 10px;
        }

        #orb-navigation a.nav-link.dropdown-toggle {
          font-size: 25px !important;
        }

        #orb-navigation a.dropdown-item {
           font-size: 25px !important;
        }
      }
    



