/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra Child Theme by OuterBox
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* TOC:
- Fonts
- Variables
- Utility
- Typography
- Slider
- Carousel
- Video
- Tabbed Content
- Tables
- Forms
- Mobile Menu
- Buttons
*/

/* Fonts */
@font-face {
  font-family: 'Urbanist';
  src: url('./assets/fonts/Urbanist-Regular.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: 'Urbanist';
  src: url('./assets/fonts/Urbanist-Italic.woff2') format('woff2');
  font-weight: normal;
  font-style: italic;
  font-display: block;
}

@font-face {
  font-family: 'Urbanist';
  src: url('./assets/fonts/Urbanist-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: 'Urbanist';
  src: url('./assets/fonts/Urbanist-BoldItalic.woff2') format('woff2');
  font-weight: 700;
  font-style: italic;
  font-display: block;
}

@font-face {
  font-family: 'Urbanist';
  src: url('./assets/fonts/Urbanist-SemiBold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: 'Urbanist';
  src: url('./assets/fonts/Urbanist-SemiBoldItalic.woff2') format('woff2');
  font-weight: 600;
  font-style: italic;
  font-display: block;
}

/* Variables */
:root {
  /* Spacing */
  --space-base: 16px;
  --space-xxs: calc(var(--space-base)*0.25);  /* ~4px */
  --space-xs: calc(var(--space-base)*0.5);  /* ~8px */
  --space-sm: calc(var(--space-base)*0.75);  /* ~12px */
  --space-md: calc(var(--space-base)*1.5);  /* ~24px */
  --space-lg: calc(var(--space-base)*2);  /* ~32px */
  --space-xl: calc(var(--space-base)*2.5);  /* ~40px */
  --space-xxl: calc(var(--space-base)*4);  /* ~64px */
  --space-xxxl: calc(var(--space-base)*5);  /* ~80px */
  --section-space: var(--space-xxxl);  /* ~80px */
  --section-side-space: var(--space-base);  /* ~16px */
  --gutter: var(--space-xxl);  /* ~64px */
  --gutter-sm: var(--space-lg);  /* ~32px */
  --content-max: 768px;
  --content-padded-max: 920px;
  --container-max: 1200px;
  
  /* Fonts */
  --text-base: 16px;
  --text-sm: calc(var(--text-base)*0.875);  /* ~14px */
  --text-lg: calc(var(--text-base)*1.125);  /* ~18px */
  --heading-xxs: calc(var(--text-base)*1);  /* ~16px */
  --heading-xs: calc(var(--text-base)*1);  /* ~16px */
  --heading-sm: calc(var(--text-base)*1.25);  /* ~20px */
  --heading-md: calc(var(--text-base)*2);  /* ~32px */
  --heading-lg: calc(var(--text-base)*2.25);  /* ~36px */
  --heading-xl: calc(var(--text-base)*2.5);  /* ~40px */
  --heading-xxl: calc(var(--text-base)*3.25);  /* ~52px */
  --heading-xxxl: calc(var(--text-base)*3.5);  /* ~56px */
  --font-weight-regular: 400;
  --font-weight-bold: 600;
  --line-height-body:1.5;
  --line-height-heading:1.25;
  --font-family-heading: "Urbanist", sans-serif;
  --font-family-body: "Urbanist", sans-serif;
      
  /* Border Radius */
  --btn-border-size: 2px;
  --border-radius-sm: 4px;
  --border-radius-md: 8px;
  --border-radius-lg: 24px;
  --border-radius-element: 0;
  --border-radius-button: 0;
  --border-radius-input: 0;
  
  
  /* Colors */
  --color-brand-01: #003E51;
  --color-conserve: #A47449;
  --color-conserve-light: #BD9B60;
  --color-maintain: #643335;
  --color-maintain-light: #A85566;
  --color-repair: #3D3935;
  --color-repair-light: #6C6463;
  --color-text-black: #232222;
  --color-text-white: #ffffff;
  --color-text-body: #4B4F54;
  --color-text-01: #253746;
  --color-text-02: #4B4F54;
  --color-text-03: #3F7681;
  --color-text-04: #D9D9D6;
  --color-ui-01: #ECF0F1;
  --color-ui-02: #CED8DB;
  --color-ui-03: #003E51;
  --color-ui-white: #ffffff;
  --color-ui-03-lighter: #809EA8;
  --color-ui-03-darker: #001F29;
  --color-ui-lightest-bg: #F9F9F9;
  --btn-color: #9ACED9;
  --btn-border-color: var(--btn-color);
  --btn-text-color: var(--color-text-black);
  --gradient-01: linear-gradient(180deg, var(--color-brand-01) 0%, #054E64 100%);
  --gradient-02: linear-gradient(180deg, var(--color-brand-01) 0%, var(--color-ui-03-darker) 100%);
}

  
@media only screen and (max-width : 991px) {	
  :root {
    --heading-xxs: calc(var(--text-base)*1);  /* ~16px */
    --heading-xs: calc(var(--text-base)*1);  /* ~16px */
    --heading-sm: calc(var(--text-base)*1.125);  /* ~18px */
    --heading-md: calc(var(--text-base)*1.125);  /* ~18px */
    --heading-lg: calc(var(--text-base)*2);  /* ~32px */
    --heading-xl: calc(var(--text-base)*2.25);  /* ~36px */
    --heading-xxl: calc(var(--text-base)*2.5);  /* ~40px */
    --heading-xxxl: calc(var(--text-base)*3);  /* ~48px */
    --section-space: var(--space-xl);  /* ~40px */
    --section-side-space: var(--space-base);  /* ~16px */
    --gutter: var(--space-lg);  /* ~32px */
    --gutter-sm: var(--space-md);  /* ~24px */
  }
}

/* Utility */
html {
  font-size: var(--text-base);
}

.border-radius-element img,
.border-radius-element span,
.border-radius-element div,
.border-radius-element .elementor-slides .swiper-slide {
  border-radius: var(--border-radius-element);
}

.padding-full {
  padding: var(--section-space) var(--section-side-space);
}

.padding-top {
  padding: var(--section-space) var(--section-side-space) 0 var(--section-side-space);
}

.padding-bottom {
  padding: 0 var(--section-side-space) var(--section-space) var(--section-side-space);
}

.padding-none {
  padding: 0px var(--section-side-space);
}

.is-hidden {
  display: none !important;
}

@media (min-width: 1024px) {
  .is-hidden--desktop {
    display: none !important;
  }
}

@media (width < 1024px) and (min-width: 768px) {
  .is-hidden--tablet {
    display: none !important;
  }
}

@media (width < 768px) {
  .is-hidden--mobile {
    display: none !important;
  }
}

/* Typography */

h1,
.entry-content h1,
h2,
.entry-content h2,
h3,
.entry-content h3,
h4,
.entry-content h4,
h5,
.entry-content h5,
h6,
.entry-content h6,
.headline-heading span,
.heading1 span,
.heading2 span,
.heading3 span,
.heading4 span,
.heading5 span,
.heading6 span,
.woocommerce h1,
.woocommerce-account h1,
.woocommerce h2,
.woocommerce-account h2,
.woocommerce h3,
.woocommerce-account h3,
.woocommerce h4,
.woocommerce-account h4,
.woocommerce h5,
.woocommerce-account h5,
.woocommerce h6,
.woocommerce-account h6 {
  font-family: var(--font-family-heading);
  font-weight:var(--font-weight-bold);
  color: var(--color-text-black);
}

a.elementor-element{
  text-decoration: none !important;
}

.eyebrow-heading span,
.eyebrow-heading h1,
.eyebrow-heading h2,
.eyebrow-heading h3,
.eyebrow-heading h4,
.eyebrow-heading h5,
.eyebrow-heading h6 {
  line-height: 1.5;
  font-size: var(--heading-xs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.headline-heading span,
.headline-heading h1,
.headline-heading h2,
.headline-heading h3,
.headline-heading h4,
.headline-heading h5,
.headline-heading h6 {
  line-height: var(--line-height-heading);
  font-size: var(--heading-xxxl);
}

h1,
.entry-content h1,
.heading1,
.heading1 span,
.heading1 h1,
.heading1 h2,
.heading1 h3,
.heading1 h4,
.heading1 h5,
.heading1 h6,
.woocommerce h1,
.woocommerce-account h1,
.woocommerce .heading1,
.woocommerce-account .heading1 {
  line-height: var(--line-height-heading);
  font-size: var(--heading-xxl);
}

h2,
.entry-content h2,
.heading2,
.heading2 span,
.heading2 h1,
.heading2 h2,
.heading2 h3,
.heading2 h4,
.heading2 h5,
.heading2 h6,
.woocommerce h2,
.woocommerce-account h2,
.woocommerce .heading2,
.woocommerce-account .heading2 {
  line-height: var(--line-height-heading);
  font-size: var(--heading-xl);
}

h3,
.entry-content h3,
.heading3,
.heading3 span,
.heading3 h1,
.heading3 h2,
.heading3 h3,
.heading3 h4,
.heading3 h5,
.heading3 h6,
.woocommerce h3,
.woocommerce-account h3,
.woocommerce .heading3,
.woocommerce-account .heading3 {
  line-height: var(--line-height-heading);
  font-size: var(--heading-lg);
}

h4,
.entry-content h4,
.heading4,
.heading4 span,
.heading4 h1,
.heading4 h2,
.heading4 h3,
.heading4 h4,
.heading4 h5,
.heading4 h6,
.woocommerce h4,
.woocommerce-account h4,
.woocommerce .heading4,
.woocommerce-account .heading4 {
  line-height: var(--line-height-heading);
  font-size: var(--heading-md);
}

h5,
.entry-content h5,
.heading5,
.heading5 span,
.heading5 h1,
.heading5 h2,
.heading5 h3,
.heading5 h4,
.heading5 h5,
.heading5 h6,
.woocommerce h5,
.woocommerce-account h5,
.woocommerce .heading5,
.woocommerce-account .heading5 {
  line-height: var(--line-height-heading);
  font-size: var(--heading-sm);
}

h6,
.entry-content h6,
.heading6,
.heading6 span,
.heading6 h1,
.heading6 h2,
.heading6 h3,
.heading6 h4,
.heading6 h5,
.heading6 h6,
.woocommerce h6,
.woocommerce-account h6,
.woocommerce .heading6,
.woocommerce-account .heading6 {
  line-height: var(--line-height-body);
  font-size: var(--heading-xs);
}

p {
  margin-bottom: 0!important;
  font-size: var(--text-base);
  font-family: var(--font-family-body);
  line-height: var(--line-height-body);
}

.p--small {
  font-size: var(--text-sm);
}

.p--large {
  font-size: var(--text-lg);
}

p + p {
  margin-top: var(--space-base)!important;
}

body, button, input, select, textarea {
  font-family: var(--font-family-body);
}

.ast-single-post .entry-content a {
  text-decoration: none;
}

/* Slider */
.elementor-swiper{
  margin-bottom: 16px;
}
.elementor-element .swiper .swiper-pagination-bullets.swiper-pagination-horizontal{
  bottom: -18px;
}
.elementor-element.elementor-arrows-position-outside .swiper{
  width: calc(100% - 80px);
}
.elementor-slides .swiper-slide{
  position: relative;
  overflow: hidden;
}


/* Carousel */
.swiper-pagination-bullet{
  opacity: 1;
  position: relative;
  mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12"><path fill="var(--color-text-white)" d="M6,12c-3.31,0-6-2.69-6-6S2.69,0,6,0s6,2.69,6,6-2.69,6-6,6ZM6,1C3.24,1,1,3.24,1,6s2.24,5,5,5,5-2.24,5-5S8.76,1,6,1Z"/></svg>');
  mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
}
.swiper-pagination-bullet:hover,
.swiper-pagination-bullet-active{
  mask: none;
}
.elementor-swiper-button .fa-arrow-left,
.elementor-swiper-button .fa-arrow-right,
.eicon-chevron-left,
.eicon-chevron-right{
  mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20.38,11.06L10.66,1.34l1.34-1.34,12,12-12,12-1.34-1.34,9.72-9.72H0v-1.89h20.38Z" style="fill-rule:evenodd;"/></svg>');
  mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
  display: block;
}
.elementor-swiper-button .fa-arrow-left:before,
.elementor-swiper-button .fa-arrow-right:before,
.eicon-chevron-left:before,
.eicon-chevron-right:before{
  background-color: currentColor;
}
.elementor-swiper-button .fa-arrow-left,
.eicon-chevron-left{
  transform: rotate(180deg);
}

/* Video */
/* .elementor-widget-video{
  border-radius: var(--border-radius-element);
  position: relative;
  overflow: hidden;
}
.elementor-custom-embed-image-overlay:after{
  content: '';
  background-color: var(--color-text-black);
  opacity: .3;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.elementor-custom-embed-play{
  z-index: 2;
}
.elementor-custom-embed-image-overlay:hover .eicon-play{
  opacity: .8 !important;
}
.eicon-play{
  background-color: currentColor;
  border-radius: 100%;
  opacity: 1 !important;
}
.eicon-play:before{
  opacity: 0;
}
.eicon-play:after{
  content: '';
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22 22"><path fill="%230E6E92" d="M0,2.22v17.56c0,1.68,1.89,2.75,3.45,1.96l17.31-8.78c1.65-.84,1.65-3.08,0-3.91L3.45.27C1.89-.53,0,.55,0,2.22Z"/></svg>') center center no-repeat transparent;
  background-size: 16px;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 2px;
  top: 1px;
} */
    
/* Tabbed Content */
.tabs-left .e-n-tabs-heading button{
  position: relative;
}
.tabs-left .e-n-tabs-heading button:after{
  content:'';
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  background-color: var(--color-ui-01);
}
@media only screen and (max-width: 767px) {	
  .tabs-top .e-n-tabs-heading button{
    position: relative;
  }
  .tabs-top .e-n-tabs-heading button:after{
    content:'';
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    background-color: var(--color-ui-01);
  }
}


/* Tables */

.html-table table{
  border: 0;
}
.html-table thead{
  background-color: var(--color-brand-01);
}
.html-table th{
  border-color: var(--color-text-white);
  color: var(--color-text-white);
  line-height: 1.5;
  font-size: var(--text-base);
  font-family: var(--font-family-body);
  text-transform: uppercase;
  font-weight:var(--font-weight-bold);
  padding: var(--space-sm) var(--space-base);
}
.html-table tbody tr:nth-child(odd){
  background-color: var(--color-ui-white);
}
.html-table tbody tr:nth-child(even){
  background-color: var(--color-ui-01);
}
.html-table td{
  border: 0;
  border-bottom: 1px solid var(--color-ui-02);
  text-align: center;
  font-size: var(--text-base);
  padding: var(--space-sm) var(--space-base);
}

.html-table::-webkit-scrollbar-track {
  background: var(--color-text-white);
  border: 1px solid var(--color-brand-03);
  height: 8px;
  border-radius: 12px;
}
.html-table::-webkit-scrollbar {
  width: 8px;
  background: var(--color-text-white);
  height: 8px;
  border-radius: 12px;
}
.html-table::-webkit-scrollbar-thumb {
  background: var(--color-brand-03);
  width: 40px;
  border-radius: 12px;
}

@media only screen and (max-width: 1024px) {	
  .html-table{
    overflow: auto;
  }
  .html-table table{
    width: 1024px;
  }
}


/* Forms */
form .gfield_label{
  color: var(--color-text-black)  !important;
  line-height: 1.5;
  font-size: var(--text-base) !important;
  font-family: var(--font-family-body);
  font-weight:var(--font-weight-bold) !important;
}
form .gfield_required{
  text-transform: lowercase;
  color: var(--color-ui-warning);
  font-size: var(--text-sm) !important;
}
form .ginput_container input[type="text"],
form .ginput_container input[type="tel"],
form .ginput_container input[type="email"],
form .ginput_container input[type="file"]{
  border: 1px solid var(--color-ui-03) !important;
  border-radius: var(--border-radius-input, 0) !important;
}
form .ginput_container textarea{
  border: 1px solid var(--color-ui-03) !important;
  border-radius: var(--border-radius-input, 0) !important;
}
form label + .gfield_description{
  text-transform: lowercase;
  color: var(--color-text-black);
  font-size: var(--text-sm) !important;
  left: 8px;
  top: 1px;
  position: relative;
}
form .gform_fields{
  row-gap: var(--space-md) !important;
}

.form-wide form .gfield--width-half{
  grid-column: 1 / -1;
}

.form-light form .gfield_label,
.form-light form .gfield_required,
.form-light form .gfield_description{
  color: var(--color-text-white) !important;
}


/* Mobile Menu */
.elementor-widget-off-canvas .e-off-canvas__content{
  width: 100%;
}
.elementor-widget-off-canvas .e-off-canvas__main{
  height: calc(100% - 143px);
  top: 143px;
  overflow-y: auto;
}
.e-off-canvas .elementor-nav-menu--main ul li > .submenu-toggle {
  cursor: pointer;
  position: absolute;
  width: 40px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  text-align: right;
}
.e-off-canvas .elementor-nav-menu--main ul ul {
  position: absolute;
  left: 100vw !important;
  transition: left 0.2s ease-in-out;
  z-index: 3;
  background-color: white;
  width: 100% !important;
  top: 0 !important;
  transition: none;
  margin-left: 0 !important;
  margin-top: 0 !important;
}
.e-off-canvas .elementor-nav-menu--main ul li.submenu-active {
  position: static;
}
.e-off-canvas .elementor-nav-menu--main ul li.submenu-active > ul {
  left: 0 !important;
  transition: left 0.2s ease-in-out;
  z-index: 9;
  display: block !important;
  height: calc(100vh - 143px);
}
.e-off-canvas .elementor-nav-menu--main button.submenu-toggle{
  position: relative;
  width: 40px;
  height: 40px;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  border: 0;
  line-height: 1.5;
  color: var(--color-text-black);
  font-weight: var(--font-weight-bold);
  background-color: transparent;
  padding: 0;
}
.e-off-canvas .elementor-nav-menu--main button.submenu-back-button{
  position: relative;
  display: flex;
  align-items: center;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  border: 0;
  line-height: 1.5;
  padding: 13px 0;
  color: var(--color-text-black);
  font-weight: var(--font-weight-bold);
  background-color: transparent;
}

#mobile-nav li.menu-item {
  padding-block: var(--space-base);
  border-top: 1px solid var(--color-ui-02);
}

#mobile-nav li.menu-item:last-child {
  border-bottom: 1px solid var(--color-ui-02);
}

#mobile-nav .search-container{
  padding: var(--space-md) 0;
}
#mobile-nav .search-container .search-form input{
  width: 100%;
}
.mobile-nav__utility{
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  margin-top: var(--space-md);
}
.mobile-nav__utility i{
  width: 20px;
  color: var(--color-brand-03);
}
.mobile-nav__utility a{
  text-decoration: none;
  color: var(--color-text-black);
}

#mobile-nav .elementor-nav-menu--main .elementor-nav-menu--dropdown .sub-arrow i {
  transform: none;
}

/* Buttons */
button,
.btn,
a.btn,
.elementor-button,
input[id^="gform_submit_button_"],
.woocommerce #respond input#submit,
.woocommerce-js a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  /* basic button style */
  --btn-font-size: var(--text-base);

  font-family: var(--font-family-body);
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  white-space: nowrap;
  font-size: var(--btn-font-size, 1em);
  font-weight: var(--font-weight-bold, inherit) !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  color: var(--btn-text-color, inherit) !important;
  background-color: var(--btn-color, inherit) !important;
  padding-inline: var(--space-md);
  padding-block: var(--space-base);
  border-radius: var(--border-radius-button, 0) !important;
  border: var(--btn-border-size, inherit) solid var(--btn-border-color, inherit) !important;
  cursor: pointer;
  line-height: 1;
  transition: color 0.3s, background-color 0.3s,
    border-color 0.3s;
}

button.non-button,
a.non-button,
.non-button .elementor-button {
  --btn-color: transparent;
  --btn-border-color: none;
  --btn-text-color: var(--color-brand-01);

  font-weight: var(--font-weight-regular, inherit) !important;
  text-transform: none !important;
}

button.non-button:hover,
button.non-button:focus,
a.non-button:hover,
a.non-button:focus,
.non-button:hover .elementor-button,
.non-button:focus .elementor-button {
  --btn-color: transparent;
  --btn-border-color: none;
  --btn-text-color: var(--color-brand-01);

  font-weight: var(--font-weight-regular, inherit) !important;
  text-decoration: underline !important;
}

button.e-n-tab-title {
  &, span {
    --btn-font-size: var(--heading-sm);

    font-size: var(--btn-font-size, 16px) !important;
    text-transform: none !important;
  }
}

.btn--primary,
a.btn--primary,
.elementor-button,
.woocommerce #respond input#submit,
.woocommerce-js a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  --btn-color: #9ACED9;
  --btn-border-color: var(--btn-color);
  --btn-text-color: var(--color-text-black);
}

.btn--primary:hover,
.btn--primary:focus,
a.btn--primary:hover,
a.btn--primary:focus,
.elementor-button:hover,
.elementor-button:focus {
  --btn-color: #7AB7C5;
}

.btn--secondary,
a.btn--secondary,
.btn--secondary .elementor-button,
a.btn--secondary .elementor-button {
  --btn-color: transparent;
  --btn-border-color: #9ACED9;
  --btn-text-color: var(--color-text-black);
}

.btn--secondary:hover,
.btn--secondary:focus,
a.btn--secondary:hover,
a.btn--secondary:focus,
.btn--secondary:hover .elementor-button,
a.btn--secondary:focus .elementor-button {
  --btn-color: #9ACED9;
}

.hero .btn--secondary .elementor-button {
  --btn-border-color: var(--color-ui-white);
}

.hero .btn--secondary:hover .elementor-button,
.hero .btn--secondary:focus .elementor-button {
  --btn-border-color: var(--btn-color);
}

.btn--tertiary,
a.btn--tertiary,
.btn--tertiary .elementor-button,
a.btn--tertiary .elementor-button,
input[id^="gform_submit_button_"] {
  --btn-color: var(--color-brand-01);
  --btn-border-color: var(--color-ui-white);
  --btn-text-color: var(--color-text-white);
  --btn-border-size: 4px;

  position: relative;
  text-transform: none !important;
  white-space: normal;
}

input[id^="gform_submit_button_"] {
  /* gf variable overrides */
  --gf-ctrl-btn-padding-y:var(--space-md);
  --gf-ctrl-btn-padding-x:var(--space-base);
}

.btn--tertiary::before,
a.btn--tertiary::before {
  content: '';
  position: absolute;
  inset: calc(-1 * var(--btn-border-size));
  border: var(--btn-border-size) solid var(--btn-color);
}

.btn--tertiary:hover,
.btn--tertiary:focus,
a.btn--tertiary:hover,
a.btn--tertiary:focus,
.btn--tertiary:hover .elementor-button,
a.btn--tertiary:focus .elementor-button,
input[id^="gform_submit_button_"]:hover,
input[id^="gform_submit_button_"]:focus {
  --btn-color: #9ACED9;
  --btn-border-color: var(--btn-color);
  --btn-text-color: var(--color-brand-01);
}

.btn--white,
a.btn--white,
.btn--white .elementor-button,
a.btn--white .elementor-button {
  --btn-color: var(--color-ui-white);
  --btn-border-color: var(--color-ui-white);
  --btn-text-color: var(--color-text-black);
}

.btn--white:hover,
.btn--white:focus,
a.btn--white:hover,
a.btn--white:focus,
.btn--white:hover .elementor-button,
a.btn--white:focus .elementor-button {
  --btn-color: #9ACED9;
  --btn-border-color: var(--btn-color);
  --btn-text-color: var(--color-text-black);
}

/* custom menu cart button */
.elementor-menu-cart__toggle .elementor-button,
button.e-n-menu-dropdown-icon {
  --btn-color: transparent;

  font-weight: var(--font-weight-regular, inherit) !important;
  text-transform: none !important;
  border: none !important;
  padding: 7.5px 15px;
}

.elementor-menu-cart__toggle .elementor-button .elementor-button-icon {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  color: var(--color-text-black);
}

.elementor-menu-cart--items-indicator-bubble .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter] {
  position: static;
  background-color: transparent;
  color: var(--color-text-black);
  order: 2;
  font-size: inherit;
}

.elementor-menu-cart--items-indicator-bubble .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter]::before {
  content: '(';
}

.elementor-menu-cart--items-indicator-bubble .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter]::after {
  content: ')';
}

.elementor-menu-cart__toggle .elementor-button .elementor-screen-only {
  height: auto;
  width: auto;
  position: static;
  clip: auto;
  margin-block: 0;
  margin-inline: 4px 0;
  padding: 0;
  border: none;
}

/* menu navigation */
a.menu-link,
a.e-link,
.cat-item > a {
  color: var(--color-text-black);
  position: relative;
  width: max-content;
}

.elementor-nav-menu--main .elementor-nav-menu a {
  padding: 0 !important;
}

.mega-menu.e-child > .e-con-inner {
  box-shadow: 0px 10px 24px 0px rgba(0, 0, 0, 0.10);
}

.mega-menu .elementor-nav-menu--main .elementor-nav-menu a,
.mega-menu-submenu .elementor-nav-menu--main .elementor-nav-menu a {
  margin: 0 20px 24px !important;
}

a.menu-link::after,
a.e-link::after,
.cat-item > a::after {
  content: '';
  color: var(--color-text-black);
  position: absolute;
  bottom: 0;
  display: block;
  height: 2px;
  background-color: var(--btn-color);
  width: 0;
  transition: width 0.3s ease-in-out;
}

a.menu-link:hover::after,
a.e-link:hover::after,
.cat-item > a:hover::after {
  width: 100%;
}

.mega-menu .elementor-widget-image-box {
  cursor: pointer;
  border-left: 2px solid transparent;
}

.mega-menu .elementor-widget-image-box.active,
.mega-menu .elementor-widget-image-box:hover {
  border-left-color: var(--btn-color);
}
.mega-menu .elementor-widget-image-box.active .elementor-image-box-description,
.mega-menu .elementor-widget-image-box.active .elementor-image-box-title,
.mega-menu .elementor-widget-image-box:hover .elementor-image-box-description {
  color: var(--color-ui-03);
}

.mega-menu-submenu .elementor-widget-nav-menu {
  display: none;
}

.mega-menu-submenu .elementor-widget-nav-menu.active {
  display: block;
}

#desktop-main-nav .menu-item {
  margin: 7.5px 15px;
}

#desktop-main-nav .elementor-widget-container {
  flex-direction: row;
}

.faux-link:has(a) {
  cursor: pointer;
}

/* custom element styles */
.elementor-widget-search .e-search-input[type="search"]:focus {
  color: var(--e-search-input-color);
}

.product-category-tabs .e-n-tabs-heading {
  position: relative;
  justify-content: center;
}
.product-category-tabs .e-n-tabs-heading::after {
  content: '';
  position: absolute;
  display: block;
  height: 13px;
  inset-inline: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1), transparent);
  top: 100%;
}
.product-category-tabs .e-n-tabs-heading > .e-n-tab-title {
  --btn-border-size: 2px;
  --btn-border-color: #A85566;
  --btn-color: transparent;

  max-width: 304px;
}
.product-category-tabs .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"] {
  --btn-color: var(--btn-border-color);
  --btn-text-color: var(--color-text-white);
}
.product-category-tabs .e-n-tabs-heading > .e-n-tab-title:first-child {
  --btn-border-color: #A47449;
}
.product-category-tabs .e-n-tabs-heading > .e-n-tab-title:last-child {
  --btn-border-color: #6C6463;
}

.icon--right .elementor-icon-box-icon {
  text-align: right;
}

body .facetwp-facet {
  margin-bottom: 0;
}

#breadcrumbs {
  > span {
    display: flex;
    gap: 16px;
  }
  
  a {
    color: var(--color-brand-01);
  }
}

.show-password-input {
  display: none;
}

.elementor-pagination {
  a {
    color: var(--color-brand-01);
  }
}

@media (width < 1024px) {
  .hero > .elementor-element::before {
    background-image: linear-gradient(90deg, #003E51E6 100%, #00000000 100%) !important;
  }
}

.e-n-menu-title {
  z-index: 2;
}
.e-n-menu-content {
  z-index: 1 !important;
  padding-top: 25px !important;
}

.elementor-widget-n-menu .e-n-menu-title a,
.elementor-widget-n-menu .e-n-menu-item a {
  font-weight: var(--font-weight-bold);
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=number] {
  -moz-appearance: textfield;
}
input[type=number] {
  appearance: textfield; 
}

.swiper-button-disabled,
.product-category-tabs .elementor-widget-container:not(:has(.swiper-slide:nth-child(2))) .elementor-swiper-button,
.filter-media:not(:has(.fs-option:nth-child(2))) {
  display: none !important;
}

@media (min-width: 1024px) {
  .product-category-tabs .swiper-slide {
    width: calc(25% - 30px) !important;
    margin-right: 30px !important
  }

  .product-category-tabs .elementor-widget-container:not(:has(.swiper-slide:nth-child(5))) .elementor-swiper-button {
    display: none !important;
  }
}

@media (min-width: 768px) and (width < 1024px) {
  .product-category-tabs .elementor-widget-container:not(:has(.swiper-slide:nth-child(3))) .elementor-swiper-button {
    display: none !important;
  }
}

@media (width < 768px) {
  .product-category-tabs .elementor-widget-container:not(:has(.swiper-slide:nth-child(2))) .elementor-swiper-button {
    display: none !important;
  }
}