/*
 * Migrated from "Simple Custom CSS and JS" snippets.
 * Consolidated and grouped for maintainability.
 */

/* === Global + typography === */
table:not(.has-background) tbody tr:nth-child(2n) td,
fieldset,
fieldset legend {
  background-color: #fbfbfb00 !important;
}

ul,
ol {
  margin: 0 0 1.41575em 3em;
  padding: 0;
  margin-left: 16px;
}

ol {
  list-style: decimal;
  margin-left: 13px !important;
}

.elementor-widget .elementor-icon-list-items {
  list-style-type: none;
  margin: 0;
  padding: 0;
  margin-left: -16px !important;
}

/* === Inputs / controls === */
input[type='checkbox'],
input[type='radio'] {
  padding: 0;
  cursor: pointer;
  width: 18px;
  height: 18px;
  appearance: none;
  border-radius: 50%;
  border: 1px solid #009b85;
  margin-bottom: -4px !important;
}

input[type='text'],
input[type='number'],
input[type='email'],
input[type='tel'],
input[type='url'],
input[type='password'],
input[type='search'],
textarea,
.input-text {
  padding: 0;
  background-color: transparent;
  color: #009b85;
  border-width: 0 0 3px;
  -webkit-appearance: none;
  box-sizing: border-box;
  border-color: #009b85;
  font-family: 'Lexend Deca', Sans-serif;
  font-size: 16px !important;
  box-shadow: none;
  border-style: solid;
  font-weight: 500;
  margin-top: 1px;
}

button,
input[type='button'],
input[type='reset'],
input[type='submit'],
.button,
.widget a.button {
  background-color: #009b85;
  border-color: #009b85;
  color: #ffffff;
  border-radius: 35px;
  margin-left: 15px !important;
}

.sub-btn {
  position: absolute;
  padding: 9px 5px !important;
  border-radius: 10px !important;
  left: -8px !important;
}

.password-input {
  display: block;
  position: relative;
  margin-top: -4px !important;
}

/* === Header / menu / search === */
.links-menu a {
  font-weight: 500;
  padding: 6px 0;
  border-width: 3px 0 0 0;
  border-style: solid;
  margin-bottom: -3px;
  text-decoration: none !important;
  font-size: 16px;
  cursor: pointer;
}

.widget_search form:not(.wp-block-search),
.widget_product_search form:not(.wp-block-search) {
  position: absolute;
  padding-top: 11px !important;
  margin-left: -40px;
}

.widget_product_search form:not(.wp-block-search)::before {
  left: 0;
  margin-top: 10px;
  margin-left: 10px;
}

.widget_search form:not(.wp-block-search) input[type='text'],
.widget_search form:not(.wp-block-search) input[type='search'],
.widget_product_search form:not(.wp-block-search) input[type='text'],
.widget_product_search form:not(.wp-block-search) input[type='search'] {
  width: 100%;
  margin-top: 10px;
}

.is-form-style input.is-search-input {
  background: #fff;
  background-image: none !important;
  color: #333;
  padding: 0 12px;
  margin: 0;
  outline: 0 !important;
  font-size: 14px !important;
  height: 36px;
  min-height: 0;
  line-height: 1;
  border: solid 1px #009b85 !important;
  font-family: arial;
  width: 100%;
  box-sizing: border-box;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  border-radius: 20px 0 0 20px;
}

.is-form-id-1343 .is-search-submit:focus,
.is-form-id-1343 .is-search-submit:hover,
.is-form-id-1343 .is-search-submit,
.is-form-id-1343 .is-search-icon {
  color: #009b85 !important;
  background-color: #ffffff !important;
  border-color: #009b85 !important;
  margin-left: 283px;
  margin-top: -55px !important;
  border-width: 1px 1px 1px 0;
  border-radius: 0 20px 20px 0;
}

/* === Elementor one-off blocks === */
.elementor-360 .elementor-element.elementor-element-a5f5a64 {
  border-style: solid;
  border-width: 2px 0 2px 0;
  border-color: #009982;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  padding: 0;
  display: unset;
}

.elementor-28 .elementor-element.elementor-element-42bb331 > .elementor-container {
  max-width: 1420px;
  border: 3px solid;
  border-width: 0 0 3px;
}

.elementor-19 .elementor-element.elementor-element-05edf03 > .elementor-element-populated,
.elementor-21 .elementor-element.elementor-element-0205910 {
  border-style: solid;
  border-width: 2px 0 2px 0;
  border-color: #009982;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  padding: 5px 0;
  display: none;
}

.elementor-21 .elementor-element.elementor-element-0205910 {
  padding: 0;
}

.elementor-28 .elementor-element.elementor-element-ae64646 .hfe-site-logo-container .hfe-site-logo-img {
  border-style: none;
  margin-left: -11px;
}

.elementor-67 .elementor-element.elementor-element-0af1a61 > .elementor-element-populated {
  border-style: solid;
  border-width: 2px 0 0 0 !important;
  border-color: #009b85;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  margin: 0 0 0 10px;
  --e-column-margin-right: 0px;
  --e-column-margin-left: 10px;
  padding: 0;
}

/* === Catalog / archive === */
.archive header.woocommerce-products-header {
  padding-bottom: 0;
  border-bottom: 3px solid;
  margin-bottom: 10px;
  margin-left: 0;
  border-left: 3px solid;
  padding-left: 20px;
  position: relative;
  line-height: 1;
  height: 102px !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#primary ul.products li.product .woocommerce-loop-product__title {
  padding-right: 17px;
  line-height: 28px;
  font-weight: 600;
  margin-top: 2px !important;
}

ul.products li.product .price {
  font-size: 14px;
  font-weight: 300 !important;
}

/* === Single product / booking === */
.single-product .actionbox {
  flex-direction: column;
  font-size: x-small !important;
}

.related > h2:first-child,
.upsells > h2:first-child {
  font-size: 2em !important;
  margin-bottom: 1em !important;
  border-top: 3px solid !important;
  padding-top: 20px !important;
}

.labelbook {
  position: absolute;
  top: 15px;
  margin: 0;
  font-weight: 600;
  margin-left: 6px !important;
}

.single-product button.alt {
  text-transform: capitalize;
  padding: 13px;
  width: 50%;
  line-height: 1.618;
  font-size: 0.875em;
  font-family: 'Lexend Deca', Sans-serif;
  max-width: none;
  margin-top: -2px !important;
}

body.single-product button.alt,
body.single-product div.product .product_meta a,
body.single-product .afirmativo + #change_pin.button {
  text-transform: lowercase !important;
  margin-top: 9px !important;
}

.single-product div.product form.cart {
  padding-bottom: 3em !important;
}

.single-product div.product .product_meta {
  font-size: 0.875em;
  padding-top: 1em;
  border-top: 2px solid;
  margin-top: -32px !important;
}

.iracomprar {
  border-bottom: 2px solid;
  margin-top: -2px;
  padding-bottom: 1em !important;
}

#block_option {
  width: 100%;
  font-size: 20px;
  margin: 10px 0;
  padding: 5px 14px 7px;
  border: 2px solid #009982;
  border-radius: 40px;
  color: #009982;
  background: url(/wp-content/themes/storefront-child/assets/img/down.png) no-repeat !important;
  background-position: 95% 50% !important;
  margin-top: 5px !important;
  height: 52px !important;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}

form.cart #my_custom_checkout_field #pincode_field_id {
  width: 180px;
  border: 1px solid #d3d3d3;
  margin-right: 6px;
  font-size: 13px;
  font-family: 'Source Sans Pro', Helvetica, sans-serif;
  margin-top: 0;
}

.input-container {
  display: flex;
  border: 2px solid #009982;
  border-radius: 40px;
  width: 100%;
  justify-content: space-between;
  margin-top: -5px !important;
  height: 51px;
}

.input-container a#checkpin {
  border: none;
  border-radius: 0;
  background: url(/wp-content/themes/storefront-child/assets/img/down.png) no-repeat;
  background-size: contain;
  padding-right: 24px !important;
  margin-top: 4px !important;
  margin-bottom: 4px !important;
  margin-right: 8px !important;
}

.fianza-content,
#bkap_price bdi {
  font-family: 'Lexend Deca';
  font-size: 48px;
  font-weight: 300 !important;
  line-height: 1.55;
}

.fianza-content {
  margin-top: 4px !important;
  margin-left: -4px !important;
}

#bkap_price bdi {
  margin-top: -18px !important;
  margin-left: -4px !important;
}

.contenedor-booking {
  gap: 1px !important;
}

.contenedor-booking .bloque1,
.pin_div .contenedor1 {
  padding: 1em;
  height: 190px;
  margin-bottom: 1em !important;
  margin-left: 5px !important;
  margin-right: 5px !important;
  margin-top: 1px !important;
}

#bkap-multidate-box,
#bkap-price-box {
  border: 1px solid #ddd;
  display: none;
  font-weight: 700;
  margin-bottom: 1em;
  padding: 1em;
  margin-left: 5px;
  margin-right: 5px;
  margin-top: 1px !important;
}

.pin_div .contenedor2 {
  padding: 1em;
  min-height: 138px;
  margin-left: 5px;
  margin-right: 5px;
}

.contenedor-booking label {
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 300;
}

.leyendas span {
  font-size: 14px !important;
  width: 60%;
  font-weight: 600;
  text-align: left;
  line-height: 1 !important;
}

.pin_div p {
  line-height: 1.9 !important;
  margin-bottom: 10px;
}

/* === Cart / checkout / account === */
body.woocommerce-page button {
  height: 52px;
  font-size: 14px !important;
  line-height: 35px;
  text-transform: lowercase;
  display: inline-table !important;
}

button.alt,
input[type='button'].alt,
input[type='reset'].alt,
input[type='submit'].alt,
.button.alt,
.widget-area .widget a.button.alt {
  background-color: #009b85;
  border-color: #009b85;
  color: #ffffff;
  border-radius: 60px;
  margin-right: 172px !important;
}

.woocommerce-page .wc-proceed-to-checkout .button.checkout-button {
  height: 52px;
  font-size: 14px !important;
  line-height: 35px;
  text-transform: lowercase;
  width: 100% !important;
}

.wc-proceed-to-checkout .button.checkout-button {
  font-size: 1.41575em;
  width: 90%;
}

.woocommerce-page .col-full {
  border-top: 0 solid #009b85 !important;
  margin: auto;
  max-width: 1390px;
  padding: 10px !important;
}

.col2-set#customer_login,
.col2-set.addresses {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  margin-top: 18px !important;
}

.quantity .qty {
  width: 4.235801032em;
  text-align: center;
  margin-bottom: 15px;
  color: white;
  border-bottom-width: 0;
  margin-top: 10px;
}

/* === FAQ / popups / misc blocks === */
.contenedor-faq ul li {
  list-style: none;
  width: 60%;
  color: #009982;
  font-weight: 300;
  padding-left: 20px;
  font-size: small !important;
  font-family: 'Lexend Deca', sans-serif !important;
}

.contenedor-faq ul li:first-child {
  list-style: none;
  width: 40%;
  font-weight: 600;
  padding-left: 50px;
  font-size: small !important;
  font-family: 'Lexend Deca', sans-serif !important;
}

.pum-container h3 {
  border-top: 3px solid;
  padding-top: 10px;
  margin-bottom: 40px;
  font-family: 'Lexend Deca', sans-serif !important;
}

.pum-theme-449,
.pum-theme-lightbox {
  background-color: rgb(0 0 0 / 74%) !important;
}

#block-13 p {
  border-bottom: 3px solid;
  padding-bottom: 20px !important;
}

.row.fields1 {
  gap: 3px !important;
  margin-bottom: 10px !important;
}

.error404 .site-content .widget_product_search {
  background-color: rgba(0, 0, 0, 0);
  margin-left: -27px !important;
}

#wpgs-gallery .wcgs-lightbox a {
  color: #009b85 !important;
  background-color: rgb(255 255 255 / 50%);
  font-size: 20px;
}

/* === Select2 === */
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 7px;
  right: 1px;
  width: 20px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #009b85 transparent transparent transparent;
  border-style: solid;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #009982 transparent;
  border-width: 0 4px 5px 4px;
}

/* === Responsive === */
/* Home CF7 parity + responsiveness (home section .elementor-element-3d98a86 only) */
body.home .elementor-element.elementor-element-3d98a86 .wpcf7,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 form,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 form > div,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 form > p,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .wpcf7-form-control-wrap,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .wpcf7-span,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 p > label {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  box-sizing: border-box;
}

body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='text'],
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='email'],
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='tel'],
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='url'],
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='number'],
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 textarea {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  box-sizing: border-box;
  color: #009b85 !important;
  caret-color: #009b85 !important;
  border-bottom-color: #009b85 !important;
  border-bottom-width: 3px !important;
  border-bottom-style: solid !important;
}

body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='text']:focus,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='email']:focus,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='tel']:focus,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='url']:focus,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input[type='number']:focus,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 textarea:focus {
  color: #009b85 !important;
  border-bottom-color: #009b85 !important;
  box-shadow: none !important;
}

body.home .elementor-element.elementor-element-3d98a86 .premium-cf7-container .wpcf7 form .row .col > p > label,
body.home .elementor-element.elementor-element-3d98a86 .premium-cf7-container .wpcf7 form .col > p > label,
body.home .elementor-element.elementor-element-3d98a86 .premium-cf7-container .wpcf7 input[size],
body.home .elementor-element.elementor-element-3d98a86 .premium-cf7-container .wpcf7 form .col > p > label > .wpcf7-form-control-wrap,
body.home .elementor-element.elementor-element-3d98a86 .premium-cf7-container .wpcf7 form .col > p > label .wpcf7-span {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.home .elementor-element.elementor-element-3d98a86 .row.fields1 {
  display: flex !important;
  flex-wrap: wrap;
  gap: 3px !important;
  margin-bottom: 10px !important;
}

body.home .elementor-element.elementor-element-3d98a86 .row.fields1 > .col {
  flex: 0 0 calc(50% - 1.5px);
  max-width: calc(50% - 1.5px);
  min-width: 0;
}

body.home .elementor-element.elementor-element-3d98a86 .radio .wpcf7-form-control.wpcf7-radio {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
  width: 100% !important;
  margin-bottom: 20px;
}

body.home .elementor-element.elementor-element-3d98a86 .radio .wpcf7-form-control.wpcf7-radio > .wpcf7-list-item {
  display: inline-block;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box;
  padding: 20px;
  border-radius: 10px;
  background-color: #ffffff;
}

body.home .elementor-element.elementor-element-3d98a86 .radio .wpcf7-list-item label {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0;
  padding: 0 !important;
}

body.home .elementor-element.elementor-element-3d98a86 .radio .wpcf7-list-item-label {
  display: block !important;
  width: auto !important;
  min-width: 0;
  flex: 1 1 auto;
  overflow-wrap: anywhere;
  color: #009b85 !important;
  font-weight: 600 !important;
  margin: 0 !important;
  padding: 0 10px !important;
  line-height: 1.618 !important;
  background-color: #ffffff !important;
}

body.home .elementor-element.elementor-element-3d98a86 .radio input[type='radio'],
body.home .elementor-element.elementor-element-3d98a86 .acepto input[type='checkbox'] {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  margin: 0 10px 0 0 !important;
  background-color: #ffffff !important;
  border: 3px solid #009b85 !important;
}

body.home .elementor-element.elementor-element-3d98a86 .radio input[type='radio']:checked,
body.home .elementor-element.elementor-element-3d98a86 .acepto input[type='checkbox']:checked {
  background-color: #009b85 !important;
  border-color: #009b85 !important;
  box-shadow: inset 0 0 0 4px #ffffff;
}

body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .send input.wpcf7-submit,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input.wpcf7-submit {
  width: 292px !important;
  max-width: none !important;
  min-width: 0;
  display: block !important;
  box-sizing: border-box;
  background-color: #009b85 !important;
  border-color: #ffffff !important;
  border-radius: 50px !important;
  padding: 10px 80px !important;
  font-weight: 600 !important;
  margin: 15px 5px 10px 15px !important;
}

body.home .elementor-element.elementor-element-3d98a86 .acepto {
  display: flex !important;
  align-items: flex-start !important;
  margin: 0;
  white-space: normal;
}

body.home .elementor-element.elementor-element-3d98a86 .acepto .wpcf7-form-control-wrap {
  width: auto !important;
  margin-right: 5px !important;
  flex-shrink: 0;
}

/* Ensure proper spacing in acceptance row - add space to link */
body.home .elementor-element.elementor-element-3d98a86 .acepto a {
  margin-left: 5px !important;
}

body.home .elementor-element.elementor-element-3d98a86 .acepto .wpcf7-list-item-label,
body.home .elementor-element.elementor-element-3d98a86 .acepto label,
body.home .elementor-element.elementor-element-3d98a86 .acepto .privacy {
  display: inline !important;
  line-height: 1.4;
  color: #009b85 !important;
}

/* Reduce gap between message textarea and radio options */
body.home .elementor-element.elementor-element-3d98a86 .mensaje,
body.home .elementor-element.elementor-element-3d98a86 .row.mensaje {
  margin-bottom: -20px !important;
}

body.home .elementor-element.elementor-element-3d98a86 .radio,
body.home .elementor-element.elementor-element-3d98a86 .row.radio {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Increase gap between radio options and acceptance text */
body.home .elementor-element.elementor-element-3d98a86 .send,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .send {
  margin-top: 25px !important;
}

body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .wpcf7-response-output {
  margin: 0 !important;
  border-color: #009b85 !important;
}

body.home .elementor-element.elementor-element-3d98a86 .wpcf7 form.invalid .wpcf7-response-output,
body.home .elementor-element.elementor-element-3d98a86 .wpcf7 form.unaccepted .wpcf7-response-output {
  display: none !important;
}

body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .wpcf7-response-output:empty {
  display: none !important;
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media (max-width: 767px) {
  body.home .elementor-element.elementor-element-3d98a86 .row.fields1 > .col {
    flex: 0 0 100%;
    max-width: 100%;
  }

  body.home .elementor-element.elementor-element-3d98a86 .radio .wpcf7-form-control.wpcf7-radio {
    grid-template-columns: 1fr !important;
    gap: 10px;
  }

  /* Acceptance row: explicit override for legacy form .acepto column layout */
  body.home .elementor-element.elementor-element-3d98a86 form .acepto,
  body.home .elementor-element.elementor-element-3d98a86 .acepto {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    text-align: left !important;
    white-space: nowrap !important;
    font-size: clamp(9.5px, 2.6vw, 12px) !important;
    line-height: 1.25 !important;
  }

  body.home .elementor-element.elementor-element-3d98a86 .acepto .wpcf7-form-control-wrap {
    margin-top: -2px;
    flex-shrink: 0;
  }

  body.home .elementor-element.elementor-element-3d98a86 .acepto label,
  body.home .elementor-element.elementor-element-3d98a86 .acepto .wpcf7-list-item-label,
  body.home .elementor-element.elementor-element-3d98a86 .acepto .privacy,
  body.home .elementor-element.elementor-element-3d98a86 .acepto a {
    white-space: nowrap !important;
    font-size: inherit !important;
    line-height: 1.25 !important;
  }

  body.home .elementor-element.elementor-element-3d98a86 .acepto a {
    margin-left: 3px !important;
  }

  body.home .elementor-element.elementor-element-3d98a86 .acepto input[type='checkbox'] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    margin: 0 4px 0 0 !important;
    border-width: 2px !important;
  }

  /* Submit button centered */
  body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .send,
  body.home .elementor-element.elementor-element-3d98a86 .send {
    text-align: center !important;
  }

  body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .send input.wpcf7-submit,
  body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input.wpcf7-submit {
    width: min(292px, 100%) !important;
    max-width: 100% !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 1024px) {
  body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .send,
  body.home .elementor-element.elementor-element-3d98a86 .send {
    text-align: center !important;
  }

  body.home .elementor-element.elementor-element-3d98a86 .wpcf7 .send input.wpcf7-submit,
  body.home .elementor-element.elementor-element-3d98a86 .wpcf7 input.wpcf7-submit {
    width: min(292px, 100%) !important;
    max-width: 100% !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (min-width: 390px) and (max-width: 414px) {
  body.home .elementor-element.elementor-element-3d98a86 form .acepto,
  body.home .elementor-element.elementor-element-3d98a86 .acepto {
    font-size: 12px !important;
  }
}

/* Footer links: keep all links centered on tablet/mobile */
@media (max-width: 1200px) {
  footer#colophon .elementor-column.elementor-col-25 #menu-footer.eael-simple-menu {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 0 auto !important;
    padding-left: 0 !important;
    list-style: none;
    gap: 8px;
  }

  footer#colophon .elementor-column.elementor-col-25 #menu-footer.eael-simple-menu li,
  footer#colophon .elementor-column.elementor-col-25 #menu-footer.eael-simple-menu li:last-child {
    display: block !important;
    width: auto;
    max-width: 100%;
    margin: 0;
  }

  footer#colophon .elementor-column.elementor-col-25 #menu-footer.eael-simple-menu li > a,
  footer#colophon .elementor-column.elementor-col-25 #menu-footer.eael-simple-menu li:last-child > a {
    display: block !important;
    width: auto;
    max-width: 100%;
    min-width: 0 !important;
    padding: 0 !important;
    text-align: center !important;
  }

  footer#colophon .elementor-column.elementor-col-25:last-child p {
    text-indent: 0 !important;
    text-align: center !important;
  }
}

@media (max-width: 991px) {
  footer#colophon .elementor-container {
    justify-content: center !important;
    flex-wrap: wrap;
  }

  footer#colophon .elementor-column.elementor-col-25 {
    width: 100% !important;
    max-width: 100% !important;
  }

  footer#colophon .elementor-column.elementor-col-25 .elementor-widget-wrap {
    justify-content: center;
    align-items: center;
    text-align: center;
  }

  footer#colophon .elementor-widget-navigation-menu .hfe-nav-menu,
  footer#colophon .elementor-widget-navigation-menu .hfe-nav-menu nav,
  footer#colophon .elementor-widget-navigation-menu .hfe-nav-menu ul.hfe-nav-menu {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100%;
    justify-content: center !important;
  }

  footer#colophon .elementor-widget-navigation-menu .hfe-nav-menu ul.hfe-nav-menu li,
  footer#colophon .elementor-widget-navigation-menu .hfe-nav-menu ul.hfe-nav-menu a.hfe-menu-item {
    display: block !important;
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }
}

@media (max-width: 500px) {
  .single-product div.product form.cart.compra button.alt {
    width: 50% !important;
  }
}
