/*
 * Frontend styles for Custom Elementor Sticky Header.
 */

.custom-sticky-header {
  position: relative;
  width: 100%;
  background: var(--cesh-before-bg, transparent);
  color: var(--cesh-before-text, inherit);
  transition:
    background-color var(--cesh-transition, 300ms) ease,
    color var(--cesh-transition, 300ms) ease,
    box-shadow var(--cesh-transition, 300ms) ease,
    border-color var(--cesh-transition, 300ms) ease,
    padding var(--cesh-transition, 300ms) ease,
    backdrop-filter var(--cesh-transition, 300ms) ease,
    transform var(--cesh-transition, 300ms) ease;
  padding-top: var(--cesh-top-padding, 18px);
  padding-bottom: var(--cesh-bottom-padding, 18px);
  border-bottom-width: var(--cesh-before-border-width, 0px);
  border-bottom-style: var(--cesh-before-border-style, none);
  border-bottom-color: var(--cesh-before-border-color, transparent);
  box-shadow: var(--cesh-before-shadow, none);
}

.custom-sticky-header,
.custom-sticky-header * {
  box-sizing: border-box;
}

.custom-sticky-header a,
.custom-sticky-header .elementor-item,
.custom-sticky-header .menu-item > a,
.custom-sticky-header .elementor-nav-menu a {
  color: var(--cesh-before-link, inherit);
  transition: color var(--cesh-transition, 300ms) ease;
}

.custom-sticky-header button,
.custom-sticky-header .elementor-button,
.custom-sticky-header input[type="submit"],
.custom-sticky-header input[type="button"] {
  color: var(--cesh-before-button, inherit);
}

.custom-sticky-header i,
.custom-sticky-header svg,
.custom-sticky-header .elementor-icon,
.custom-sticky-header .elementor-social-icon {
  color: var(--cesh-before-icon, inherit);
  fill: currentColor;
  transition: color var(--cesh-transition, 300ms) ease, fill var(--cesh-transition, 300ms) ease;
}

.custom-sticky-header.cesh-ready {
  will-change: transform, background-color;
}

.custom-sticky-header.is-sticky {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  background: var(--cesh-after-bg, #fff);
  color: var(--cesh-after-text, inherit);
  box-shadow: var(--cesh-after-shadow, none);
  border-bottom-width: var(--cesh-after-border-width, 1px);
  border-bottom-style: var(--cesh-after-border-style, solid);
  border-bottom-color: var(--cesh-after-border-color, #e5e5e5);
  backdrop-filter: var(--cesh-after-backdrop-filter, none);
  -webkit-backdrop-filter: var(--cesh-after-backdrop-filter, none);
}

.custom-sticky-header.is-sticky.cesh-shrink {
  padding-top: var(--cesh-sticky-top-padding, 10px);
  padding-bottom: var(--cesh-sticky-bottom-padding, 10px);
}

.custom-sticky-header.desktop-header.is-sticky a,
.custom-sticky-header.desktop-header.is-sticky .elementor-item,
.custom-sticky-header.desktop-header.is-sticky .menu-item > a,
.custom-sticky-header.desktop-header.is-sticky .elementor-nav-menu a {
  color: var(--cesh-after-link-desktop, #000);
}

.custom-sticky-header.mobile-header.is-sticky a,
.custom-sticky-header.mobile-header.is-sticky .elementor-item,
.custom-sticky-header.mobile-header.is-sticky .menu-item > a,
.custom-sticky-header.mobile-header.is-sticky .elementor-nav-menu a {
  color: var(--cesh-after-link-mobile, inherit);
}

.custom-sticky-header.is-sticky,
.custom-sticky-header.is-sticky .elementor-widget,
.custom-sticky-header.is-sticky .elementor-heading-title,
.custom-sticky-header.is-sticky .elementor-icon-list-text,
.custom-sticky-header.is-sticky .elementor-text-editor {
  color: var(--cesh-after-text, inherit);
}

.custom-sticky-header.is-sticky button,
.custom-sticky-header.is-sticky .elementor-button,
.custom-sticky-header.is-sticky input[type="submit"],
.custom-sticky-header.is-sticky input[type="button"] {
  color: var(--cesh-after-button, inherit);
}

.custom-sticky-header.is-sticky i,
.custom-sticky-header.is-sticky svg,
.custom-sticky-header.is-sticky .elementor-icon,
.custom-sticky-header.is-sticky .elementor-social-icon {
  color: var(--cesh-after-icon, inherit);
  fill: currentColor;
}

.custom-sticky-header.is-sticky .sub-menu,
.custom-sticky-header.is-sticky .elementor-nav-menu--dropdown,
.custom-sticky-header.is-sticky .elementor-nav-menu .sub-menu,
.custom-sticky-header.is-sticky .menu-item-has-children .sub-menu {
  background: var(--cesh-dropdown-bg, #fff);
}

.custom-sticky-header.is-sticky .sub-menu a,
.custom-sticky-header.is-sticky .elementor-nav-menu--dropdown a,
.custom-sticky-header.is-sticky .menu-item-has-children .sub-menu a {
  color: var(--cesh-dropdown-link, #111);
}

.custom-sticky-header.is-sticky .sub-menu a:hover,
.custom-sticky-header.is-sticky .elementor-nav-menu--dropdown a:hover,
.custom-sticky-header.is-sticky .menu-item-has-children .sub-menu a:hover {
  color: var(--cesh-dropdown-hover, #000);
}

.custom-sticky-header.cesh-hidden {
  display: none !important;
}

body.cesh-has-sticky-placeholder .cesh-sticky-placeholder {
  display: block;
}

.cesh-sticky-placeholder {
  display: none;
  width: 100%;
}

@media (min-width: 1025px) {
  .custom-sticky-header.mobile-header {
    display: none;
  }
}

@media (max-width: 1024px) {
  .custom-sticky-header.desktop-header {
    display: none;
  }
}
