/* glass effect on scroll */
header.elementor-location-header {
    position: relative;
    z-index: 999;
}

/* outer sticky header only */
header.elementor-location-header > .glass-header.elementor-sticky--active {
    width: 100% !important;
    z-index: 9999;
    background: transparent !important;
}

/* stop inner container becoming a second sticky/fixed layer */
header.elementor-location-header > .glass-header > .tfc-mini-header,
header.elementor-location-header > .glass-header > .tfc-mini-header.elementor-sticky--active {
  position: relative !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  transform: none !important;
  z-index: auto !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* glass layer */
header.elementor-location-header > .glass-header.elementor-sticky--active::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  pointer-events: none;
  z-index: 0;
}
header.elementor-location-header > .glass-header.elementor-sticky--active > * {
  position: relative;
  z-index: 1;
}
header.elementor-location-header .tfc-mini-header,
header.elementor-location-header .tfc-header-inner-wrapper,
header.elementor-location-header .e-con-inner,
header.elementor-location-header .elementor-widget-container {
  background: transparent !important;
}
header.elementor-location-header .elementor-sticky__spacer {
  display: none !important;
}
.tfc-header-mobile-menu{
  background: transparent !important;
}
.shoptimizer-archive {
  margin-top: 0px;
}
.elementor-menu-cart__toggle .elementor-button,
.elementor-455375 .elementor-element.tfc-header-smallnav .elementor-button{
  background-color: transparent !important;
}

.elementor-menu-cart__toggle {
  align-items: center;
  display: flex !important;
  justify-content: center;
  height: unset;
}

/* reorder modal */
.reorder-paginated-modal .reorder-page-tracker {
  gap: 12px;
  margin-bottom: 8px;
}

.reorder-paginated-modal .page-node {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: #93a77f;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

.reorder-paginated-modal .page-node.active-page-node {
  background: #275A94;
}

.reorder-paginated-modal .page-node-line {
  width: 70px;
  height: 2px;
  background: #d8e2ef;
}

.reorder-paginated-modal .reorder-page-labels {
  gap: 30px;
}

.reorder-paginated-modal .reorder-page-container {
  min-height: 300px;
}

.reorder-paginated-modal .modal-footer .assessment-actions.submit-assessment-process,
.reorder-paginated-modal .modal-footer .assessment-actions.assessment-process {
  background-color: #275A94 !important;
  color: #fff !important;
  padding: 10px 20px !important;
  border-radius: 10px !important;
  cursor: pointer;
}

/* .glass-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 100;
    background: transparent !important;
    transition: background 0.3s ease;
}
.glass-header.scrolled {
    display: block;
    position: relative;
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    background: rgba(255,255,255,.22);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(0,0,0,.08);
    z-index: 99;
} */

/* restyling the nav bar */
#site-navigation,
#site-navigation * {
  box-sizing: border-box !important;
}

#site-navigation {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  margin-top: 50px !important;
}

#site-navigation .logo-mark,
#site-navigation span.sub {
  display: none !important;
}

#site-navigation ul,
#site-navigation ol {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#site-navigation .menu-primary-menu-container,
#site-navigation .primary-navigation,
#site-navigation .primary-navigation.with-logo,
#site-navigation ul.menu,
#site-navigation ul.sub-menu {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#site-navigation li {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
  border: 0 !important;
  background: transparent !important;
  float: none !important;
}

#site-navigation li::before,
#site-navigation li::after,
#site-navigation a::before,
#site-navigation a::after,
#site-navigation span::before,
#site-navigation span::after {
  box-shadow: none !important;
}

/* top level items */
#site-navigation ul.menu > li {
  border-bottom: 1px solid #ececec !important;
}

/* all links */
#site-navigation a,
#site-navigation .cg-menu-link,
#site-navigation .main-menu-link,
#site-navigation .sub-menu-link {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 14px 44px 14px 0 !important;
  color: #222 !important;
  background: transparent !important;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-style: normal !important;
  font-variant: normal !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.4 !important;
  position: relative !important;
}

#site-navigation ul.menu > li > a {
  font-size: 16px !important;
}

#site-navigation ul.sub-menu > li > a {
  font-size: 15px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* caret */

/* hide existing carets */
.main-navigation ul.menu li.menu-item-has-children span.caret::after,
#site-navigation .sub-menu-wrapper a.sub-menu-link::after {
    display: none !important;
}

#site-navigation li.menu-item-has-children > span.caret {
  position: absolute !important;
  top: 12px !important;
  right: 0 !important;
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  z-index: 3 !important;
  background: transparent !important;
  border: 0 !important;
  display: block !important;
}

#site-navigation li.menu-item-has-children > span.caret::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 2px solid #777 !important;
  border-bottom: 2px solid #777 !important;
  transform: translate(-50%, -60%) rotate(45deg) !important;
  transition: transform .4s;
}

#site-navigation li.menu-item-has-children.dropdown-open > span.caret::before {
  transform: translate(-50%, -35%) rotate(-135deg) !important;
}

/* submenus */
#site-navigation .sub-menu-wrapper {
  display: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 0 0 16px !important;
  position: relative !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#site-navigation li.menu-item-has-children.dropdown-open > .sub-menu-wrapper {
  display: block !important;
}

 body #site-navigation ul li.menu-item-has-children.dropdown-open >.sub-menu-wrapper ul {
    left: 0; 
 }

#site-navigation .sub-menu-wrapper .container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#site-navigation ul.sub-menu {
  padding: 4px 0 8px 0 !important;
}

#site-navigation ul.sub-menu > li {
  border: 0 !important;
}

#site-navigation ul.menu ul.sub-menu {
    box-shadow: none !important;
}

#site-navigation ul.sub-menu ul.sub-menu {
  padding-left: 12px !important;
}

/* states */
#site-navigation a:hover,
#site-navigation a:focus,
#site-navigation a:active {
  color: #222 !important;
  background: transparent !important;
  text-decoration: none !important;
  outline: none !important;
}

/* stop desktop flex/layout rules */
#site-navigation .menu,
#site-navigation .menu > li,
#site-navigation .sub-menu,
#site-navigation .sub-menu > li {
  display: block !important;
  flex: none !important;
  min-width: 0 !important;
}

#site-navigation .menu-primary-menu-container > ul.menu {
  min-width: 0 !important;
}

/* stop desktop dropdown positioning */
#site-navigation ul ul.sub-menu {
    float: initial;
    position: relative;
    top: initial;
    left: initial;
}

body #site-navigation ul.menu li.menu-item-has-children .sub-menu-wrapper {
  left: auto !important;
  right: auto !important;
  top: auto !important;
  transition: none !important;
}
