﻿/*  
---------------------------------------------------
Header large screens 05
---------------------------------------------------  
*/

/* Row */
body.header-05-lg:not(.transparent-header-lg) header#site-header {
  box-shadow: var(--header-box-shadow_h) var(--header-box-shadow_v) var(--header-box-shadow_b) rgba(var(--true-black), var(--header-box-shadow_o));
}

body.header-05-lg header#site-header .container-fluid::after,
body.header-05-lg header#site-header .container::after {
  content: "";
  position: absolute;
  top: calc(var(--large-header) / 2);
  right: var(--base-half-spacing);
  left: var(--base-half-spacing);
  z-index: -1;
  height: var(--base-border-width);
  background-color: rgba(var(--header-borders), 1);
}

body.header-05-lg header#site-header .row {
  position: relative;
  height: var(--large-header);
  align-items: flex-end;
}

  body.header-05-lg header#site-header .row::before {
    content: "";
    width: 1px;
    height: calc(var(--large-header) / 2);
  }

html[dir="ltr"] body.header-05-lg header#site-header .row::before {
  margin-left: auto;
}

html[dir="rtl"] body.header-05-lg header#site-header .row::before {
  margin-right: auto;
}

/* Logo */
body.header-05-lg header#site-header #logo {
  position: absolute;
  top: 0;
  padding: 0 var(--logo_lg-padding_right) 0 var(--logo_lg-padding_left);
  height: calc(var(--large-header) / 2);
}

  body.header-05-lg header#site-header #logo:not(.no-image) {
    padding: var(--logo_lg-padding_top) var(--logo_lg-padding_right) var(--logo_lg-padding_bottom) var(--logo_lg-padding_left);
  }

body.header-05-lg header#site-header nav.nav-dropdown.secondary {
  padding-right: 48px;
  margin: 0 !important;
}

  body.header-05-lg header#site-header nav.nav-dropdown.secondary ul li span a {
    padding: 0 !important;
  }

  html[dir="ltr"] body.header-05-lg header#site-header #logo {
    left: 0;
  }

html[dir="rtl"] body.header-05-lg header#site-header #logo {
  right: 0;
}

body.header-05-lg header#site-header #logo picture,
body.header-05-lg header#site-header #logo img {
  height: calc(var(--large-header) / 2 - var(--logo_lg-padding_top) - var(--logo_lg-padding_bottom));
  max-height: calc(var(--large-header) / 2 - var(--logo_lg-padding_top) - var(--logo_lg-padding_bottom));
}

body.header-05-lg header#site-header #logo.no-image span {
  height: calc((var(--large-header) / 2) - var(--logo_lg-padding_top) - var(--logo_lg-padding_bottom));
  line-height: calc(var(--large-header) / 2);
}

/* Orders */
body.header-05-lg header#site-header #logo {
  order: 1;
  align-self: start;
}

body.header-05-lg header#site-header .row::before {
  order: 2;
  align-self: flex-start;
  flex-basis: auto;
}

body.header-05-lg header#site-header nav.secondary {
  order: 3;
  align-self: flex-start;
}

body.header-05-lg header#site-header nav.cta-links {
  order: 4;
  align-self: flex-start;
}

body.header-05-lg header#site-header nav.main {
  order: 5;
  align-self: flex-end;
}

body.header-05-lg header#site-header nav.shopping-cart {
  order: 6;
  align-self: flex-end;
}

body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search {
  order: 7;
  align-self: flex-end;
}

/* Main Navigation */
body.header-05-lg header#site-header nav.main {
  width: 100%;
  height: calc(var(--large-header) / 2);
  /*    padding-left: 140px;*/
}

html[dir="ltr"] body.header-05-lg header#site-header nav.main {
  margin-right: auto;
}

html[dir="rtl"] body.header-05-lg header#site-header nav.main {
  margin-left: auto;
}

body.header-05-lg header#site-header nav.main > ul > li {
  font-size: 1.05rem !important;
  height: calc(var(--large-header) / 2);
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

  body.header-05-lg header#site-header nav.main > ul > li > span > a,
  body.header-05-lg header#site-header nav.main > ul > li > span > div {
    height: calc(var(--large-header) / 2);
    line-height: calc(var(--large-header) / 2);
    text-transform: uppercase;
  }

body.header-05-lg header#site-header .has-child > .expand-subpages {
  height: calc(var(--large-header) / 2);
  line-height: calc(var(--large-header) / 2);
}

body.header-05-lg header#site-header nav.main > ul > li.has-child > span::after {
  display: none;
}

body.header-05-lg header#site-header nav.main > ul > li > span > a,
body.header-05-lg header#site-header nav.main > ul > li > span > div {
  padding: 0;
}

body.header-05-lg header#site-header nav.main > ul > li > span::before {
  top: calc((var(--large-header) / 2) - 15px);
  left: var(--base-half-spacing);
  right: auto;
  border-radius: var(--base-border-radius);
  width: 0;
}


body.header-05-lg header#site-header nav.main > ul > li:focus > span::before,
body.header-05-lg header#site-header nav.main > ul > li:focus-within > span::before,
body.header-05-lg header#site-header nav.main > ul > li:active > span::before,
body.header-05-lg header#site-header nav.main > ul > li.active > span::before,
body.header-05-lg header#site-header nav.main > ul > li.open-child > span::before {
  width: calc(100% - var(--base-half-spacing) - var(--base-half-spacing) - 7px) !important;
  height: 2px;
  margin-left: 4px;
  background: #ED1C24;
}

html.no-touch body.header-05-lg header#site-header nav.main > ul.main-navigation-list > li:hover > span::before {
  width: calc(100% - var(--base-half-spacing) - var(--base-half-spacing) - 7px) !important;
  height: 2px;
  margin-left: 4px;
  background: #222;
}

nav.main > ul.level-1 > li:has(> ul.level-2:hover) > span::before {
    width: calc(100% - var(--base-half-spacing) - var(--base-half-spacing) - 7px) !important;
    height: 2px;
    margin-left: 4px;
    background: #ED1C24 !important;
}

.main-navigation-list:hover header#site-header nav.main > ul > li > span::before {
  width: calc(100% - var(--base-half-spacing) - var(--base-half-spacing) - 7px) !important;
  height: 2px;
  margin-left: 4px;
  background: #ED1C24;
}
/* html.no-touch body.header-05-lg header#site-header nav.main > ul > li.has-child:hover > span::before, */
body.header-05-lg header#site-header nav.main > ul > li.has-child.open-child > span::before {
  width: calc(100% - var(--base-half-spacing) - var(--base-half-spacing) - 7px) !important;
  margin-left: 4px;
  height: 2px;
  background: #ED1C24;
}

body.header-05-lg header#site-header nav.main > ul > li.has-child:focus > span::before,
body.header-05-lg header#site-header nav.main > ul > li.has-child:focus-within > span::before,
body.header-05-lg header#site-header nav.main > ul > li.has-child:active > span::before,
body.header-05-lg header#site-header nav.main > ul > li.has-child.active > span::before {
  width: calc(100% - var(--base-half-spacing) - var(--base-half-spacing) - 7px) !important;
  height: 2px;
  margin-left: 4px;
  background: #ED1C24;
}

 /* body.header-05-lg header#site-header nav.main > ul > li:focus-within > span::before {
    width: calc(100% - var(--base-half-spacing) - var(--base-half-spacing) - 4px) !important; 
    height: calc(var(--base-border-width));
    background: #ED1C24;
}  */

/* body.header-05-lg header#site-header nav.main > ul > li.has-child:focus-within > span::before {
    width: calc(100% - var(--base-half-spacing) - var(--base-half-spacing));
    background: #ED1C24;
} */

html[dir="ltr"] body.header-05-lg header#site-header nav.main > ul > li.has-child > span::before {
  right: auto;
}

html[dir="rtl"] body.header-05-lg header#site-header nav.main > ul > li.has-child > span::before {
  left: auto;
}

body.header-05-lg header#site-header .has-child > .expand-subpages {
  width: 100%;
  z-index: 1000;
}

body.header-05-lg header#site-header nav.main ul li.has-child > span::after {
  width: 20px;
}

html[dir="ltr"] body.header-05-lg header#site-header nav.main > ul > li.has-child > span > a,
html[dir="ltr"] body.header-05-lg header#site-header nav.main > ul > li.has-child > span > div {
  padding-right: 20px;
  padding-left: 20px;
}

html[dir="rtl"] body.header-05-lg header#site-header nav.main > ul > li.has-child > span > a,
html[dir="rtl"] body.header-05-lg header#site-header nav.main > ul > li.has-child > span > div {
  padding-left: 20px; 
}

/* Main Navigation - Dropdowns */
body.header-05-lg header#site-header nav.main ul {
  display: flex;
  position: relative;
}

  body.header-05-lg header#site-header nav.main ul li:last-child {
    margin-left: auto;
  }

/* Nav actions (search and login buttons) */
body.header-05-lg header#site-header nav.main > ul.level-1 > li.nav-actions {
  display: flex;
  align-items: center;
  gap: 0;
  padding-right: 48px;
}

  body.header-05-lg header#site-header nav.main > ul.level-1 > li.nav-actions > span {
    display: flex;
    align-items: center;
    gap: 24px;
    height: calc(var(--large-header) / 2);
  }

    body.header-05-lg header#site-header nav.main > ul.level-1 > li.nav-actions > span .login-button {
      display: flex;
      gap: 12px;
      font-weight: bold;
      font-size: 17px;
      align-items: center;
      color: #222;
      text-transform: none;
    }

    body.header-05-lg header#site-header nav.main > ul.level-1 > li.nav-actions > span::before {
      display: none;
    }

  body.header-05-lg header#site-header nav.main > ul.level-1 > li.nav-actions button {
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(var(--large-header) / 2);
    background: none;
    border: none;
    border-left: 1px solid rgba(var(--header-borders), 1);
    cursor: pointer;
    padding: 0;
    color: rgba(var(--main-navigation-link), 1);
    transition: background-color 0.2s ease, color 0.2s ease;
  }

body.header-05-lg header#site-header nav.main ul > li {
  position: relative;
}

body.header-05-lg header#site-header nav.main > ul > li > ul.level-2 {
  position: fixed;
  top: var(--large-header) !important;
  left: 140px;
  width: calc(100vw - 140px);
  height: calc(100vh + var(--large-header)) !important;
  max-width: 1100px;
}

html.nav-up body.header-05-lg header#site-header nav.main ul > li > ul.level-2 {
  height: calc(100vh + var(--large-header)) !important;
}

body.header-05-lg header#site-header nav.main > ul > li.has-child > ul > li {
  color: #ED1C24;
}

  /* Level 3 items - always expanded */
  body.header-05-lg header#site-header nav.main > ul > li.has-child > ul > li > ul {
    display: block !important;
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

/* Hide expand button for level 2 items (so level 3 stays open) */
body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li.has-child > .expand-subpages {
  display: none;
}

/* Remove ">" arrow from level 2 items */
body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li.has-child > span::after {
  display: none;
}

/* Level 2 styling - section headers */
body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 {
  padding: 46px 23px;
}

  body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li {
    /*margin-bottom: 40px;*/
  }

    body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > span > a,
    body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > span > div {
      /*   font-size: 11px;
    font-weight: bold;
    text-transform: uppercase;
    color: #4C4C4C;
    line-height: 140%;
    text-decoration: none;
    pointer-events: none;
    display: block;
    margin-bottom: 10px;*/
    }

    /* Level 3 styling - menu items with icons */
    body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > ul.level-3 {
      padding-left: 0;
      width: 100%;
      /*white-space: nowrap;*/
    }

      body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > ul.level-3 > li {
        margin-bottom: 10px;
      }

        body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > ul.level-3 > li > span {
          display: flex;
          align-items: center;
          gap: 16px;
        }

          body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > ul.level-3 > li > span::before {
            display: none;
          }

          body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > ul.level-3 > li > span > a,
          body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > ul.level-3 > li > span > div {
            font-size: 16px;
            font-weight: normal;
            color: #4c4c4c;
            text-decoration: none;
            line-height: 170%;
            display: flex;
            align-items: center;
            gap: 30px;
            white-space: nowrap;
          }

            body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > ul.level-3 > li > span > a:hover,
            body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > ul.level-3 > li > span > div:hover {
              /*color: #ED1C24;*/
            }

        /* Icon styling for level 3 items */
        body.header-05-lg header#site-header nav.main > ul.level-1 > li > ul.level-2 > li > ul.level-3 > li .icon {
          font-size: 32px;
          width: 32px;
          height: 32px;
          display: flex;
          align-items: center;
          justify-content: center;
          flex-shrink: 0;
          color: #4C4C4C;
        }

/* MOUSE OVER & CLICK ON MAIN NAVIGATION */
/* override opacity and display from nav_main-large.csws so it won't open on hover */
html.no-touch body:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) nav.main ul > li > ul {
  display: none !important;
  left: 0;
  opacity: 1;
}

body.header-05-lg header#site-header .level-2.main-navigation-list {
  display: none !important;
}

body.header-05-lg header#site-header .has-child.open-child > ul {
  display: block !important;
  /*border: 1px dashed red;*/
}

/*  hide cta links until they are needed!! */
body.header-05-lg header#site-header .cta-links {
  display: none !important;
}

body.header-05-lg header#site-header .cta-links.open {
  display: block !important;
}

/* Toggle button for header-05 menu - regular flex item */
body.header-05-lg header#site-header nav.main > ul.level-1 > li.toggle-menu-item {
  display: flex;
  order: -1; /* Place it first in the flex layout */
  padding-left: 0;
  padding-right: 0;
}

  body.header-05-lg header#site-header nav.main > ul.level-1 > li.toggle-menu-item .close-submenu-header-05 {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 140px;
    height: calc(var(--large-header) / 2);
    background: #4C4C4C;
    border: none;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    cursor: pointer;
    padding: 0.25rem 0.75rem;
    outline: 0;
    transition: background-color 0.3s ease;
  }

    /* Hamburger menu lines */
    body.header-05-lg header#site-header nav.main > ul.level-1 > li.toggle-menu-item .close-submenu-header-05 .line {
      position: relative;
      width: 39px;
      height: 1px;
      background-color: #fff;
      display: inline-block;
      transition: background-color 0.2s ease;
    }

      body.header-05-lg header#site-header nav.main > ul.level-1 > li.toggle-menu-item .close-submenu-header-05 .line:before,
      body.header-05-lg header#site-header nav.main > ul.level-1 > li.toggle-menu-item .close-submenu-header-05 .line:after {
        content: "";
        display: inline-block;
        position: absolute;
        left: 0;
        height: 1px;
        width: 44px;
        background-color: #fff;
        transition: all 0.2s ease;
        transform-origin: center;
      }

      body.header-05-lg header#site-header nav.main > ul.level-1 > li.toggle-menu-item .close-submenu-header-05 .line:before {
        top: -12px;
      }

      body.header-05-lg header#site-header nav.main > ul.level-1 > li.toggle-menu-item .close-submenu-header-05 .line:after {
        top: 12px;
      }

    /* Screen reader only text */
    body.header-05-lg header#site-header nav.main > ul.level-1 > li.toggle-menu-item .close-submenu-header-05 .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

/* Transform to X when menu is open */
body.header-05-lg header#site-header nav.main > ul.level-1:has(> li.open-child) > li.toggle-menu-item .close-submenu-header-05 .line {
  background-color: transparent;
}

  body.header-05-lg header#site-header nav.main > ul.level-1:has(> li.open-child) > li.toggle-menu-item .close-submenu-header-05 .line:before {
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) rotate(45deg) !important;
  }

  body.header-05-lg header#site-header nav.main > ul.level-1:has(> li.open-child) > li.toggle-menu-item .close-submenu-header-05 .line:after {
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) rotate(-45deg) !important;
  }

/* Hover effect */
body.header-05-lg header#site-header nav.main > ul.level-1 > li.toggle-menu-item .close-submenu-header-05:hover {
  background: #666666;
}

/* Hide mobile header icons on large screens */
body.header-05-lg header#site-header .header-icons {
  display: none !important;
}

/* LEVEL TWO */
body.header-05-lg header#site-header nav.main ul > li > ul {
  /* position: fixed;
    top: var(--large-header) !important;
    left: 140px;
    width: 100vw;
    height: calc(100vh - var(--large-header)) !important;
    max-width: 1100px; */
}



html.no-touch body.header-05-lg header#site-header nav.main ul > li:hover > ul,
body.header-05-lg header#site-header nav.main ul > li.open-child > ul {
  top: calc((var(--large-header) / 2) - 5px);
}

body.header-05-lg header#site-header nav.main ul ul > li > ul {
  top: -7px;
}

html.no-touch body.header-05-lg header#site-header nav.main ul ul > li:hover > ul,
body.header-05-lg header#site-header nav.main ul ul > li.open-child > ul {
  top: 0;
}

/* Secondary Navigation */
body.header-05-lg header#site-header nav.secondary {
  height: calc(var(--large-header) / 2);
}

html[dir="ltr"] body.header-05-lg header#site-header nav.secondary {
  margin-right: calc(var(--base-half-spacing) - 10px);
}

html[dir="rtl"] body.header-05-lg header#site-header nav.secondary {
  margin-left: calc(var(--base-half-spacing) - 10px);
}

body.header-05-lg header#site-header nav.secondary > ul,
body.header-05-lg header#site-header nav.secondary > ul > li > span > div,
body.header-05-lg header#site-header nav.secondary > ul > li > span > a,
body.header-05-lg header#site-header nav.secondary > ul > li > a {
  height: calc(var(--large-header) / 2);
  line-height: calc(var(--large-header) / 2);
}

  /* Gap between SVG icon and text in secondary navigation */
  body.header-05-lg header#site-header nav.secondary > ul > li > span > a,
  body.header-05-lg header#site-header nav.secondary > ul > li > span > div {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #FFF;
    font-family: "Open Sans", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 170%;
    letter-spacing: 0.16px;
  }

body.header-05-lg header#site-header nav.secondary ul li.dropdown .dropdown-menu {
  top: calc((var(--large-header) / 2) - 7px) !important;
}

html[dir="ltr"] body.header-05-lg header#site-header nav.secondary ul li.dropdown .dropdown-menu {
  right: 0 !important;
  left: auto !important;
}

html[dir="rtl"] body.header-05-lg header#site-header nav.secondary ul li.dropdown .dropdown-menu {
  left: 0 !important;
  right: auto !important;
}

/* CTA Navigation */
body.header-05-lg header#site-header nav.cta-links {
  position: fixed;
  z-index: 602;
  background: #4C4C4C;
  top: var(--large-header) !important;
  left: 0;
  height: calc(100vh - var(--large-header)) !important;
  max-width: 140px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

html.nav-up body.header-05-lg header#site-header nav.cta-links {
  height: calc(100vh - var(--large-header)/2) !important;
  width: 140px !important;
}

body.header-05-lg header#site-header nav.cta-links a.btn {
  border: none !important;
  text-underline-offset: 0.25rem;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  justify-items: center;
  align-items: center;
  margin-bottom: 78px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  position: relative;
  text-decoration: none !important;
  /* Typography styles for CTA button */
  color: #FFF !important;
  text-align: center;
  font-family: "Open Sans", sans-serif !important;
  font-size: 11px !important;
  font-style: normal;
  font-weight: 700 !important;
  line-height: 140% !important;
  letter-spacing: 1.65px !important;
  text-transform: uppercase !important;
}

body.header-05-lg header#site-header nav.cta-links {
  width: 140px !important;
}

body.header-05-lg header#site-header nav.cta-links a.btn span.link-text {
  position: relative;
  opacity: 1 !important;
}
body.header-05-lg header#site-header nav.cta-links a.btn:hover span {
  background: none !important;
}
body.header-05-lg header#site-header nav.cta-links a.btn:focus-visible span {
  background: none !important;
}
body.header-05-lg header#site-header nav.cta-links a.btn:hover span.link-text {
  text-decoration: underline !important;
  text-underline-offset: 0.05rem !important;
  opacity: 1 !important;
}
body.header-05-lg header#site-header nav.cta-links a.btn:focus-visible span.link-text {
  text-decoration: underline !important;
  text-underline-offset: 0.05rem !important;
  opacity: 1 !important;
}

body.header-05-lg header#site-header nav.cta-links a.btn:first-child {
  margin-top: 32px !important;
}

body.header-05-lg header#site-header nav.cta-links a.btn:last-child {
  margin-bottom: 0 !important;
}

body.header-05-lg header#site-header nav.cta-links a.btn .icon {
  font-size: 32px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body.header-05-lg header#site-header nav.cta-links a.btn .icon {
  text-decoration: none !important;
}

body.header-05-lg header#site-header nav.cta-links a.btn:hover {
  text-decoration: none !important;
}
body.header-05-lg header#site-header nav.cta-links a.btn:focus-visible {
  text-decoration: none !important;
}





html[dir="ltr"] body.header-05-lg header#site-header nav.cta-links {
  padding-left: calc(var(--base-half-spacing) / 2);
  padding-right: calc(var(--base-half-spacing) / 2);
}

html[dir="rtl"] body.header-05-lg header#site-header nav.cta-links {
  padding-right: calc(var(--base-half-spacing) / 2);
  padding-left: var(--base-half-spacing);
}

html[dir="ltr"] body.header-05-lg header#site-header nav.cta-links .btn + .btn {
  margin-left: 5px;
}

html[dir="rtl"] body.header-05-lg header#site-header nav.cta-links .btn + .btn {
  margin-right: 5px;
}

/* Shopping Cart */
body.header-05-lg header#site-header nav.shopping-cart {
  position: absolute;
  top: calc(var(--large-header) / 2);
  width: calc(var(--large-header) / 2);
  height: calc(var(--large-header) / 2);
}

html[dir="ltr"] body.header-05-lg header#site-header nav.shopping-cart {
  right: 0;
}

html[dir="rtl"] body.header-05-lg header#site-header nav.shopping-cart {
  left: 0;
}

html[dir="ltr"] body.header-05-lg header#site-header .site-search + nav.shopping-cart {
  right: calc(var(--large-header) / 2 - 10px);
}

html[dir="rtl"] body.header-05-lg header#site-header .site-search + nav.shopping-cart {
  left: calc((var(--large-header) / 2) - 10px);
}

body.header-05-lg header#site-header nav.shopping-cart button.open-cart,
html#ecwid_html.usn body#ecwid_body.header-05-lg header#site-header .ec-cart-widget,
html#ecwid_html.usn body#ecwid_body.header-05-lg header#site-header .ec-cart-widget .ec-minicart,
html#ecwid_html.usn body#ecwid_body.header-05-lg header#site-header .ec-cart-widget .ec-minicart__body {
  width: calc(var(--large-header) / 2);
  height: calc(var(--large-header) / 2);
}

/* Site Search */
body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search {
  position: absolute;
  top: calc(var(--large-header) / 2);
  width: calc(var(--large-header) / 2);
  height: calc(var(--large-header) / 2);
}

html[dir="ltr"] body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search {
  right: 0;
}

html[dir="rtl"] body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search {
  left: 0;
}

body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search .expand-search {
  position: relative;
  width: calc(var(--large-header) / 2);
  height: calc(var(--large-header) / 2);
  padding: 0;
  text-align: center;
}

  body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search .expand-search i.icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
  }

html[dir="ltr"] body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search form {
  right: calc((var(--large-header) / 2) - 10px);
}

html[dir="rtl"] body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search form {
  left: calc((var(--large-header) / 2) - 10px);
}

body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search .form-control {
  min-height: calc((var(--large-header) / 2) - 20px);
  height: calc((var(--large-header) / 2) - 20px);
}

body.header-05-lg:not(.header-03-lg):not(.header-11-lg):not(.header-12-lg):not(.header-15-lg):not(.header-16-lg):not(.header-17-lg):not(.header-19-lg):not(.header-20-lg) header#site-header .site-search button.btn {
  width: calc((var(--large-header) / 2) - var(--base-half-spacing));
  min-width: calc((var(--large-header) / 2) - var(--base-half-spacing));
  height: 100%;
}

/* On scroll */
html.nav-up body.header-05-lg.show_header-on-scroll-lg header#site-header {
  top: calc((var(--large-header) / 2) * -1);
}

nav.main ul > li:hover > span::before,
nav.main ul > li:focus > span::before,
nav.main ul > li:focus-within > span::before,
nav.main ul > li:active > span::before,
nav.main ul > li.active > span::before,
nav.main ul > li.open-child > span::before {
  opacity: 1 !important;
}

/* nav.main ul>li.active>span::before { 
    opacity:1 !important;
}
nav.main ul>li:focus-within>span::before {
    opacity:1 !important;
} */

body.header-05-lg header#site-header .container,
body.header-05-lg header#site-header .container-fluid::after,
body.header-05-lg header#site-header .container::after {
  -webkit-transition: top 0.3s ease-in-out 0s, padding 0.3s ease-in-out 0s, padding-top 0.3s ease-in-out 0s, opacity 0.3s ease-in-out 0s, width 0.3s ease-in-out 0s, max-width 0.3s ease-in-out 0s, height 0.3s ease-in-out 0s, max-height 0.3s ease-in-out 0s, box-shadow 0.3s ease-in-out 0s, background-color 0.3s ease-in-out 0s;
  transition: top 0.3s ease-in-out 0s, padding 0.3s ease-in-out 0s, padding-top 0.3s ease-in-out 0s, opacity 0.3s ease-in-out 0s, width 0.3s ease-in-out 0s, max-width 0.3s ease-in-out 0s, height 0.3s ease-in-out 0s, max-height 0.3s ease-in-out 0s, box-shadow 0.3s ease-in-out 0s, background-color 0.3s ease-in-out 0s;
}

html.nav-up body.header-05-lg.show_header-on-scroll-lg header#site-header .container {
  width: 100%;
}

  html.nav-up body.header-05-lg.show_header-on-scroll-lg header#site-header .container-fluid::after,
  html.nav-up body.header-05-lg.show_header-on-scroll-lg header#site-header .container::after {
    opacity: 0;
  }



/* Mega menu - Modal links inside Main Navigation */

html:has(body.main-nav_mega-modal.header-05-lg.mega-menu-modal),
body.main-nav_mega-modal.header-05-lg.mega-menu-modal,
body.main-nav_mega-modal.header-05-lg.mega-menu-modal .modal.show {
  padding: 0 !important;
}

html:has(body.main-nav_mega-modal.header-05-lg.mega-menu-modal),
body.main-nav_mega-modal.header-05-lg.mega-menu-modal {
  overflow: hidden !important;
}


  body.main-nav_mega-modal.header-05-lg.mega-menu-modal:not(.transparent-header-lg) #site {
    padding-top: var(--large-header);
  }

  body.main-nav_mega-modal.header-05-lg.mega-menu-modal header#site-header {
    position: fixed;
    z-index: 1054;
  }

  body.main-nav_mega-modal.header-05-lg.mega-menu-modal .modal-backdrop,
  body.main-nav_mega-modal.header-05-lg.mega-menu-modal .modal {
    padding-top: 0;
    top: var(--large-header);
    height: calc(100% - var(--large-header));
  }

    body.main-nav_mega-modal.header-05-lg.mega-menu-modal .modal .modal-dialog {
      padding: 0;
      width: 100%;
      max-width: 100%;
    }

/* Max width */
body.main-nav_mega-modal.header-05-lg.max-width.mega-menu-modal header#site-header,
body.main-nav_mega-modal.header-05-lg.max-width.mega-menu-modal .modal .modal-dialog {
  max-width: calc(var(--site-max-width) - var(--site-spacing_lg) - var(--site-spacing_lg));
}

body.main-nav_mega-modal.header-05-lg.mega-menu-modal .modal .modal-dialog.modal-dialog-centered {
  align-items: start;
}

/* Half height on scroll */
html.nav-up body.main-nav_mega-modal.header-05-lg.show_header-on-scroll-lg.mega-menu-modal:not(.transparent-header-lg) #site {
  padding-top: calc(var(--large-header) / 2);
}

html.nav-up body.main-nav_mega-modal.header-05-lg.show_header-on-scroll-lg.mega-menu-modal:not(.no-header) .modal-backdrop,
html.nav-up body.main-nav_mega-modal.header-05-lg.show_header-on-scroll-lg.mega-menu-modal:not(.no-header) .modal {
  top: calc(var(--large-header) / 2);
  height: calc(100% - (var(--large-header) / 2));
}

/* Close button hidden */
body.main-nav_mega-modal.header-05-lg.mega-menu-modal .modal .close,
body.main-nav_mega-modal.header-05-lg.mega-menu-modal .modal::before {
  top: var(--large-header);
}
/* Half from header */
html.nav-up body.main-nav_mega-modal.header-05-lg.show_header-on-scroll-lg.mega-menu-modal .modal .close,
html.nav-up body.main-nav_mega-modal.header-05-lg.show_header-on-scroll-lg.mega-menu-modal .modal::before {
  top: calc(var(--large-header) / 2);
}



/* It's not pretty but it works */
/* This code has been written by a backend guy so don't judge - but you are welcome to fix it :) */
body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.has-child {
  margin-bottom: 40px;
}

  body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.has-child > span > a,
body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.has-child > span > div {
    font-size: 11px;
    font-weight: bold;
    text-transform: uppercase;
    color: #4C4C4C;
    line-height: 140%;
    text-decoration: none;
    pointer-events: none;
    display: block;
    margin-bottom: 10px;
  }

body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.no-child > span > a,
body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.no-child > span > div {
  font-size: 16px;
  font-weight: normal;
  color: #4c4c4c;
  text-decoration: none;
  line-height: 170%;
  display: flex;
  align-items: center;
  gap: 30px;
  white-space: nowrap;
}

body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.no-child > span > a:hover,
body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.no-child > span > div:hover {
  color: rgba(var(--main-navigation-link-hover), 1) !important;
}
body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.no-child > span > a:hover .link-text,
body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.no-child > span > div:hover .link-text {
  text-decoration: underline;
}
body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.no-child > span > a:hover i,
body.header-05-lg header#site-header nav.main .main-navigation-list.level-2 li.no-child > span > div:hover i {
  color: rgba(var(--main-navigation-link-hover), 1) !important;
  -webkit-transition:
        opacity 0.3s ease-in-out 0s,
        color 0.3s ease-in-out 0s,
        transform 0.3s ease-in-out 0s;
    transition:
        opacity 0.3s ease-in-out 0s,
        color 0.3s ease-in-out 0s,
        transform 0.3s ease-in-out 0s;
}


nav.main ul > li > span > a:hover,
nav.main ul > li:hover > span > a,
nav.main ul > li.open-child > span > a,
nav.main ul > li > span > div:hover,
nav.main ul > li:hover > span > div,
nav.main ul > li.open-child > span > div {
  color: rgba(var(--main-navigation-link), 1) !important;
}

nav.main ul > li:focus-within > span > a,
nav.main ul > li:focus-within > span > div {
  color: rgba(var(--main-navigation-link), 1) !important;
}

nav.main ul > li.active > span > a,
nav.main ul > li.active > span > div {
  color: rgba(var(--main-navigation-link-active), 1) !important;
}

/* ========================================
   TOP CTA BANNER - Hide on desktop
   Banner is only for mobile (header-04-sm)
   ======================================== */
.top-cta-banner {
  display: none !important;
}
