#elc_demo_leafs_select>span>span,
#elc_demo_trunks_select>span>span,
#elc_demo_caps_select>span>span,
#elc_demo_trunks_selectV2>span>span,
#elc_demo_caps_selectV2>span>span {
  font-family: "Montserrat";
  letter-spacing: 0;
  font-weight: 800;
}

#elc_demo_colors,
#elc_demo_colorsV2 {
  display: none;
  position: relative !important;
  top: auto !important;
  left: auto !important;
  flex-direction: row !important;
  flex-wrap: wrap;
  width: 100%;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  gap: 8px;
  align-items: flex-start !important;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #elc_demo_colors,
  #elc_demo_colorsV2 {
    max-width: 380px;
  }
}
.elc_demo_colors_parent {
  position: relative;
  max-width: 890px;
  --flex-wrap-mobile: nowrap;
}
.elc_demo_colors_parent>div.elementor-element[data-element_type="container"] {
  --e-con-grid-template-columns: repeat(3, 1fr) !important;
  --align-items: stretch !important;
  --grid-align-content: stretch !important;
}
.elc_demo_colors_parent#elc_demo_colors_parentV2>div.elementor-element[data-element_type="container"] {
  --e-con-grid-template-columns: repeat(2, 1fr) !important;
}
.elc_demo_button {
  align-self: stretch !important;
}
.elc_demo_button .elementor-button-wrapper {
  height: 100%;
}
.elc_demo_button *,
.elc_demo_color * {
  cursor: pointer;
}
.elc_demo_color {
  padding: 0;
  background: none !important;
  border: 0 !important;
  justify-content: center;
  flex: 0 0 calc((100% / 14) - 8px * 13 / 14) !important;
  /* 13 columns by default + adjusted for gap*/
  width: auto !important;
}
/* Adjust for mobile */
@media (max-width: 768px) {
  .elc_demo_color {
    flex: 0 0 calc((100% / 7) - 8px * 6 / 7) !important;
  }
}
.elc_demo_color>.elementor-widget-heading {
  display: none;
}
.elc_demo_color .elementor-button-wrapper a {
  border: 4.5px solid #383838 !important;
}
.elc_demo_button a {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.elc_demo_images {
  position: relative;
  padding: 0;
}
#elc_demo_blue a,
#elc_demo_blueV2 a {
  background: #4c37ff;
}
#elc_demo_champagne a {
  background: #ec9b30;
}
#elc_demo_darkgreen a,
#elc_demo_darkgreenV2 a {
  background: #5aedb9;
}
#elc_demo_limegreen a,
#elc_demo_limegreenV2 a {
  background: #69ff5c;
}
#elc_demo_pink a,
#elc_demo_pinkV2 a {
  background: #ff52e0;
}
#elc_demo_red a,
#elc_demo_redV2 a {
  background: #f64a40;
}
#elc_demo_neon_multicolor a,
#elc_demo_neon_multicolorV2 a {
  background: url(/wp-content/elc_demo/assets/neon_multicolor_icon.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-origin: border-box;
}
#elc_demo_multicolor a,
#elc_demo_multicolorV2 a {
  background: url(/wp-content/elc_demo/assets/multicolor_icon.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-origin: border-box;
}
#elc_demo_cc_pure a,
#elc_demo_cc_pureV2 a {
  background: url(/wp-content/elc_demo/assets/cc_pure_icon.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-origin: border-box;
}
#elc_demo_cc_warm a,
#elc_demo_cc_warmV2 a {
  background: url(/wp-content/elc_demo/assets/cc_warm_icon.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-origin: border-box;
}
#elc_demo_reset a,
#elc_demo_resetV2 a {
  background: url(/wp-content/elc_demo/assets/reset_button.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-origin: border-box;
  border-color: #3d8b31 !important;
}
.called_from_elc_demo_leafs_select #elc_demo_cc_pure,
.called_from_elc_demo_leafs_select #elc_demo_cc_warm {
  display: none !important;
}
#elc_demo_teal a,
#elc_demo_tealV2 a {
  background: #53d3ff;
}
#elc_demo_violet a,
#elc_demo_violetV2 a {
  background: #934bdf;
}
#elc_demo_purewhite a,
#elc_demo_purewhiteV2 a {
  background: white;
}
#elc_demo_warmwhite a,
#elc_demo_warmwhiteV2 a {
  background: #fbf2d3;
}
#elc_demo_arrow,
#elc_demo_arrowV2 {
  display: none !important;
}

#elc_demo_leafs_select,
#elc_demo_trunks_select,
#elc_demo_caps_select,
#elc_demo_trunks_selectV2,
#elc_demo_caps_selectV2 {
  font-size: 1em;
  /*   padding: 1.5em 1em 1em !important; */
  padding: .2em !important;
  border-radius: 20px !important;
  height: 100%;
  background-size: auto 80%;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 116px;
  background-color: #2b2b2b !important;
}

#elc_demo_leafs_select.has-color-name:after,
#elc_demo_trunks_select.has-color-name:after,
#elc_demo_caps_select.has-color-name:after,
#elc_demo_trunks_selectV2.has-color-name:after,
#elc_demo_caps_selectV2.has-color-name:after {

  font-size: 80%;
  font-weight: 600;
  letter-spacing: 0.5px;
  margin-top: 7px;
}

#elc_demo_leafs_select.active,
#elc_demo_trunks_select.active,
#elc_demo_caps_select.active,
#elc_demo_trunks_selectV2.active,
#elc_demo_caps_selectV2.active {
  background-color: #74d276 !important;
  color: #2b2b2b !important;
}

/* Base style for all button icons using a CSS variable */
#elc_demo_leafs_select>span:before,
#elc_demo_trunks_select>span:before,
#elc_demo_caps_select>span:before,
#elc_demo_trunks_selectV2>span:before,
#elc_demo_caps_selectV2>span:before {
  background-image: var(--button-image);
  background-repeat: no-repeat;
  background-size: 100%;
  content: '';
  height: 100%;
  max-height: 70px;
  width: auto;
  aspect-ratio: 55 / 70;
}

@media screen and (max-width: 767px) {
  #elc_demo_leafs_select,
  #elc_demo_trunks_select,
  #elc_demo_caps_select,
  #elc_demo_trunks_selectV2,
  #elc_demo_caps_selectV2 {
    min-height: 70px;
    aspect-ratio: 1/1;
    font-size: 0.85em;
    padding: 10px 5px !important;
  }
  #elc_demo_leafs_select>span:before,
  #elc_demo_trunks_select>span:before,
  #elc_demo_caps_select>span:before,
  #elc_demo_trunks_selectV2>span:before,
  #elc_demo_caps_selectV2>span:before {
    max-height: 50px;
  }
  #elc_demo_leafs_select>span>span,
  #elc_demo_trunks_select>span>span,
  #elc_demo_caps_select>span>span,
  #elc_demo_trunks_selectV2>span>span,
  #elc_demo_caps_selectV2>span>span {
    flex: 1;
    display: flex;
    align-items: center;
  }
  #elc_demo_colors_parent>div.elementor-element[data-element_type="container"],
  #elc_demo_colors_parentV2>div.elementor-element[data-element_type="container"] {
    --column-gap: 7px;
  }
  .elc_demo_colors_parent#elc_demo_colors_parentV2>div.elementor-element[data-element_type="container"] {
    --e-con-grid-template-columns: repeat(2, minmax(auto, 33.33%)) !important;
    --grid-align-content: center;
    --align-items: center !important;
    justify-content: center !important;
  }
  #elc_demo_colors_parentV2.e-con {
    --grid-justify-content: center !important;
    justify-content: center !important;
  }
}


/* Set default 'unset' images */
#elc_demo_trunks_select,
#elc_demo_trunks_selectV2 {
  --button-image: url(/wp-content/elc_demo/assets/button/trunk_unset.png);
}
#elc_demo_caps_select,
#elc_demo_caps_selectV2 {
  --button-image: url(/wp-content/elc_demo/assets/button/cap_unset.png);
}
#elc_demo_leafs_select {
  --button-image: url(/wp-content/elc_demo/assets/button/leaf_unset.png);
}

/* Set 'active' images */
#elc_demo_trunks_select.active,
#elc_demo_trunks_selectV2.active {
  --button-image: url(/wp-content/elc_demo/assets/button/trunk_active.png);
}
#elc_demo_caps_select.active,
#elc_demo_caps_selectV2.active {
  --button-image: url(/wp-content/elc_demo/assets/button/cap_active.png);
}
#elc_demo_leafs_select.active {
  --button-image: url(/wp-content/elc_demo/assets/button/leaf_active.png);
}

#elc_demo_leafs_select>span,
#elc_demo_trunks_select>span,
#elc_demo_caps_select>span,
#elc_demo_trunks_selectV2>span,
#elc_demo_caps_selectV2>span {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  padding: 3px;
}