/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.5.15,
* Autoprefixer: v10.5.0
* Browsers: last 4 version
*/

body.single-product header {
  position: initial !important;
}

#single_product_section {
  --sp-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23b6bdb2' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

#single_product_section .fl-row-content-wrap {
  padding: 80px 16px;
}

@media (min-width: 993px) {
  #single_product_section .box-left {
    position: relative;
    float: none;
    display: inline-block;
  }
  
  #single_product_section .box-left .fl-col-content {
    position: sticky;
    top: 0;
  }
}

@media (max-width: 992px) {
  
  #single_product_section .fl-row-content-wrap {
    padding: 40px 16px;
  }
  
  #single_product_section .box-left,
  #single_product_section .box-right {
    min-width: 100%;
  }

  #single_product_section .box-right {
    margin-top: 40px;
  }
}

@media (max-width: 640px) {
  
  #single_product_section .fl-row-content-wrap {
    padding: 24px 8px;
  }
}

#fl-main-content #single_product_section .title-head p {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  margin: 0;
  font-family: var(--secondary-font);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--primary-color);
}

.title-head p::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--primary-color);
  -webkit-box-shadow: 0 0 10px var(--primary-color);
  box-shadow: 0 0 10px var(--primary-color);
}


/******************** PRODUCT DESCRIPTION ******************************/
/**********************************************************************/

#single_product_section .woocommerce-product-details__short-description p {
  padding: 16px 24px;
  color: white;
  border-radius: 4px;
  border: 1px solid var(--separator-color);
  background: var(--featured-card-color);
}

#single_product_section .woocommerce-product-details__short-description a {
  color: var(--primary-color-light);
  
}

/***************** FORM CART ***************************/
/*******************************************************/

#fl-main-content #single_product_section form.cart {
  padding: 24px;
  background: var(--featured-card-color);
  border: 1px solid var(--border-color);
  border-radius: 16px;
  font-family: var(--secondary-font);
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
}

#fl-main-content #single_product_section form.cart::before {
  display: none;
}

#single_product_section form.cart .yith-wcbk-booking-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
  max-width: 100%;
}

#single_product_section form.cart .yith-wcbk-booking-form__label,
#single_product_section form.cart #yith-wapo-container::after {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  font-family: var(--secondary-font);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: #fff;
  margin: 0px 0px 16px 0px;
}

/******************* DATES ************************/
/**************************************************/

#single_product_section .yith-wcbk-form-section-dates-wrapper {
  -webkit-box-ordinal-group: -2;
  -ms-flex-order: -3;
  order: -4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  gap: 16px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#single_product_section .yith-wcbk-form-section-dates-wrapper
.yith-wcbk-form-section {
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin: 0px;
}

#single_product_section .yith-wcbk-date-range-picker input.yith-wcbk-date-picker--formatted::-webkit-input-placeholder {
  color: var(--text-grey-color);
}

#single_product_section .yith-wcbk-date-range-picker input.yith-wcbk-date-picker--formatted::-moz-placeholder {
  color: var(--text-grey-color);
}

#single_product_section .yith-wcbk-date-range-picker input.yith-wcbk-date-picker--formatted:-ms-input-placeholder {
  color: var(--text-grey-color);
}

#single_product_section .yith-wcbk-date-range-picker input.yith-wcbk-date-picker--formatted::-ms-input-placeholder {
  color: var(--text-grey-color);
}

#single_product_section .yith-wcbk-date-range-picker input.yith-wcbk-date-picker--formatted::placeholder {
  color: var(--text-grey-color);
}

#single_product_section .yith-wcbk-booking-date {
  background: transparent;
  color: var(--title-color);
  border-radius: 8px;
  border: 1px solid var(--border-color);
}

#single_product_section .yith-wcbk-datepicker--opened + .yith-wcbk-booking-date {
  border: 1px solid var(--primary-color);
}

/* Calendario emergente */
#single_product_section #ui-datepicker-div.yith-wcbk-datepicker.ui-widget-content {
  width: 318px;
  margin-top: 8px;
  padding: 14px;
  background: var(--featured-card-color);
  border: 1px solid var(--border-color);
  -webkit-box-shadow: 0 20px 50px rgba(0, 0, 0, .55) !important;
          box-shadow: 0 20px 50px rgba(0, 0, 0, .55) !important;
  font-family: var(--secondary-font);
  color: var(--text-color);
}

#single_product_section .yith-wcbk-datepicker .ui-datepicker-title {
  font-family: var(--primary-font);
  color: var(--title-color);
  text-transform: capitalize;
}

#single_product_section .yith-wcbk-datepicker.ui-datepicker .ui-datepicker-prev span::after,
#single_product_section .yith-wcbk-datepicker.ui-datepicker .ui-datepicker-next span::after {
  color: var(--text-grey-color);
}


#single_product_section .yith-wcbk-datepicker.ui-datepicker td {
  background: transparent;
  color: var(--text-grey-color);
}

#single_product_section .yith-wcbk-datepicker.ui-widget-content .ui-state-default {
  border-radius: 8px;
  color: var(--text-color);
}

#single_product_section .yith-wcbk-datepicker.ui-datepicker td.ui-datepicker-current-day a,
#single_product_section .yith-wcbk-datepicker.ui-datepicker td a.ui-state-active {
  background: transparent;
  border: 1px solid var(--primary-color);
  color: var(--title-color);
}

#single_product_section .yith-wcbk-datepicker.ui-datepicker td:not(.ui-state-disabled):hover a {
  background: transparent;
  color: var(--primary-color);
}

#single_product_section .yith-wcbk-datepicker.ui-widget-content .ui-datepicker-unselectable:not(.ui-datepicker-other-month) {
  text-decoration-color: var(--text-grey-color);
}

#single_product_section .yith-wcbk-datepicker.ui-datepicker .ui-datepicker-buttonpane .ui-datepicker-close {
  font-size: 14px;
  background: transparent;
  width: 100%;
  border: 1px solid #fff;
  padding: 4px 8px;
}

/********************* SCOOTER INSURANCE ****************************/
/*******************************************************************/

/*--- ALERTS ----*/

#single_product_section .wpbf-resource-notice {
  background-color: rgba(166, 190, 15, 0.14);
  border-left: 2px solid #8bb80f;
  color: var(--text-color);
  padding: 16px;
  border-radius: 8px;
}

#single_product_section .wpbf-resource-notice p {
  font-size: 14px;
  line-height: 1.7;
}

/*-----------*/

#single_product_section .yith-wcbk-form-section-resources-wrapper {
  -webkit-box-ordinal-group: -1;
  -ms-flex-order: -2;
  order: -2;
}

#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__items {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 8px;
}

#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__items .yith-wcbk-selector__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  margin: 0;
  padding: 14px 16px;
  background: transparent;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  color: var(--text-color);
  -webkit-transition: border-color .2s, background-color .2s;
  transition: border-color .2s, background-color .2s;
}

.wpbf-schedule .wpbf-schedule__label {
    position: absolute;
    top: 16px;
    right: 44px;
    left: 16px;
    z-index: 1;
    margin: 0;
    overflow: hidden;
    color: var(--text-color);
    font-family: var(--wpbf-time-font);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1.4;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
    opacity: 1;
    pointer-events: none;
}

.wpbf-schedule__required {
    color: var(--wpbf-time-accent);
}

#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__item:hover {
  background: transparent;
  border-color: rgba(166, 190, 15, .5);
  color: var(--text-color);
}

#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__item.yith-wcbk-selector__item--selected {
  background: rgba(166, 190, 15, .07);
  border-color: var(--primary-color);
}

/* Radio en lugar del check de YITH en la esquina. */
#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__item::before,
#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__item.yith-wcbk-selector__item--selected::before {
  content: "";
  position: static;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 20px;
  height: 20px;
  background: transparent;
  border: 1.5px solid var(--text-grey-color);
  border-radius: 50%;
  font-size: 0;
  line-height: 0;
  -webkit-transition: border-color .2s, background-color .2s, -webkit-box-shadow .2s;
  transition: border-color .2s, background-color .2s, -webkit-box-shadow .2s;
  transition: border-color .2s, background-color .2s, box-shadow .2s;
  transition: border-color .2s, background-color .2s, box-shadow .2s, -webkit-box-shadow .2s;
}

#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__item.yith-wcbk-selector__item--selected::before {
  background: var(--primary-color);
  border-color: var(--primary-color);
  -webkit-box-shadow: inset 0 0 0 4px var(--featured-card-color);
  box-shadow: inset 0 0 0 4px var(--featured-card-color);
}

#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__item__content {
  gap: 2px;
  min-width: 0;
}

#single_product_section .wpbf-schedule .wpbf-schedule__select {
  display: block;
  width: 100%;
  min-width: 0;
  height: auto;
  margin: 0;
  padding: 34px 44px 16px 16px;
  border: 0;
  border-radius: var(--wpbf-time-radius);
  background: transparent;
  box-shadow: none;
  color: #fff;
  font-family: var(--wpbf-time-font);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  outline: none;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

#single_product_section .wpbf-schedule .wpbf-schedule__select option {
  background: var(--wpbf-time-option-bg);
  color: var(--wpbf-time-option-text);
}


#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__item__label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-item-align: start;
  align-self: flex-start;
  gap: 6px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--title-color);
}

#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__item__description {
  font-size: 14px;
  line-height: 1.4;
  color: var(--text-grey-color);
}

#single_product_section .yith-wcbk-booking-resource .yith-wcbk-selector__item__description .woocommerce-Price-amount {
  font-weight: 600;
  color: var(--primary-color);
}

/*---- PRODUCT STOCK ALERT ------*/

#single_product_section .wpbf-units-left {
  margin: 0px;
  order: -3;
  background: transparent;
  border: 1px solid var(--border-color);
  border-left: 4px solid var(--primary-color);
  color: var(--primary-color);
}

#single_product_section .wpbf-units-left::before {
  color: black;
  background: var(--primary-color)
}

/************************* BOOKING HOURS ******************************/
/**********************************************************************/

#single_product_section .wpbf-schedule {
  order: -3;
}

#single_product_section .wpbf-schedule .wpbf-schedule__label {
  color: var(--text-color);
  opacity: 1;
}

#single_product_section .wpbf-schedule .wpbf-schedule__select {
  color: #fff;
}

/*--- overtime alert ----*/

#single_product_section .wpbf-schedule .wpbf-schedule__overtime {
  background-color: rgba(166, 190, 15, 0.14);
  border-left: 2px solid #8bb80f;
  color: var(--text-color);
  padding: 16px;
  border-radius: 8px;
}

/************************* BOOKING SERVICES ********************************/
/****************************************************************************/

#single_product_section .yith-wcbk-form-section-services-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
  margin: 0px;
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}

#single_product_section .yith-wcbk-form-section-services .yith-wcbk-form-section__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}

/* Fila de extra */
#single_product_section .yith-wcbk-form-section-service {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 10px;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  font-size: 14px;
  -webkit-transition: border-color .2s, background-color .2s;
  transition: border-color .2s, background-color .2s;
}

#single_product_section .yith-wcbk-form-section-service:hover {
  border-color: rgba(166, 190, 15, .5);
}

#single_product_section .yith-wcbk-form-section-service:has(input:checked) {
  border-color: var(--primary-color);
  background: rgba(166, 190, 15, .07);
}

#single_product_section .yith-wcbk-form-section-service label.yith-wcbk-checkbox {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-weight: 600;
  color: var(--title-color);
}

#single_product_section .yith-wcbk-form-section-service .yith-wcbk-booking-service__pricing {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin-left: auto;
  font-size: 13px;
  font-weight: 600;
  color: var(--primary-color);
  white-space: nowrap;
}

#single_product_section .yith-wcbk-form-section-service .help_tip {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  margin: 0;
  opacity: 1;
  color: var(--primary-color-light);
}

#single_product_section .yith-wcbk-form-section-service .yith-wcbk-booking-service__description {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  margin: 2px 0 0;
  padding-left: 30px;
  font-size: 12px;
  color: var(--text-grey-color);
}

/* Checkbox */
#single_product_section .yith-wcbk-checkbox span.yith-wcbk-checkbox__checkbox {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  background: transparent;
  border: 1.5px solid var(--text-grey-color);
  border-radius: 6px;
  -webkit-transition: background-color .2s, border-color .2s;
  transition: background-color .2s, border-color .2s;
}

#single_product_section .yith-wcbk-checkbox span.yith-wcbk-checkbox__checkbox::after {
  top: 4px;
  left: 3.5px;
  border-color: var(--text-black-color);
}

#single_product_section .yith-wcbk-checkbox input:checked + span.yith-wcbk-checkbox__checkbox {
  background: var(--primary-color);
  border-color: var(--primary-color);
}

#single_product_section .yith-wcbk-checkbox:hover input:not(:checked) + span.yith-wcbk-checkbox__checkbox::after {
  border-color: var(--primary-color);
}

/* Incluido siempre: chips */
#single_product_section .yith-wcbk-form-section-services:has(.yith-wcbk-booking-service--type-included) .yith-wcbk-form-section__content {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 6px;
}

#single_product_section .yith-wcbk-form-section-service:has(.yith-wcbk-booking-service--type-included) {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 6px;
  padding: 5px 10px;
  background: rgba(255, 255, 255, .05);
  border-color: var(--separator-color);
  border-radius: 999px;
  font-size: 12px;
}

#single_product_section .yith-wcbk-form-section-service:has(.yith-wcbk-booking-service--type-included):hover {
  border-color: var(--separator-color);
}

#single_product_section .yith-wcbk-form-section-service:has(.yith-wcbk-booking-service--type-included) > label {
  font-weight: 500;
  color: var(--text-color);
}

/*---- SERVICE TOOLTIPS -----*/

#tiptip_holder #tiptip_arrow {
  display: none;
}

#tiptip_holder #tiptip_content {
  background: var(--featured-card-color);
  border: 1px solid var(--border-color);
  color: var(--text-color);
  font-family: var(--secondary-font);
  font-size: 14px;
}

/************************* BOOKING TOTALS ***********************************/
/****************************************************************************/

#single_product_section .yith-wcbk-form-section-totals {
  padding: 24px;
  border-top: 1px dashed var(--border-color);
  background: var(--border-color);
  border-radius: 8px;
}

#single_product_section form.cart .yith-wcbk-form-section-totals .yith-wcbk-booking-form__label {
  display: none;
}

#single_product_section .yith-wcbk-booking-form-totals__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px;
  margin: 0;
}

#single_product_section .yith-wcbk-booking-form-total {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  gap: 12px;
}

#single_product_section .yith-wcbk-booking-form-total__label,
#single_product_section .yith-wcbk-booking-form-total__value {
  display: block;
  padding: 0;
  border: 0;
  font-size: 14px;
  color: #fff;
  font-family: var(--secondary-font);
  font-weight: normal;
}

#single_product_section .yith-wcbk-booking-form-total--total-price {
  margin: 0px 0px 8px 0px;
  border-bottom: 1px solid var(--border-color);
  padding-bottom: 8px;
}

#single_product_section .yith-wcbk-booking-form-total--total-price .yith-wcbk-booking-form-total__label {
  font-weight: 400;
}

#single_product_section .yith-wcbk-booking-form-total--total-price .yith-wcbk-booking-form-total__value span,
#single_product_section .yith-wcbk-booking-form-total.wpcd-yith-split__now span {
  color: var(--primary-color-light);
  font-size: 16px;
  font-weight: 600;
}

#single_product_section .yith-wcbk-booking-form-message p,
#single_product_section .yith-wcbk-booking-form-message .yith-wcbk-bookable {
  margin: 0;
  padding: 0;
  background: transparent;
  font-size: 12px;
  color: var(--text-grey-color);
}

#single_product_section .yith-wcbk-booking-form-message:empty {
  display: none;
}

/********************** BOOKING ADD TO CART ********************************/
/**************************************************************************/

#single_product_section form.cart .single_add_to_cart_button.button {
  display: block;
  width: 100%;
  margin: 0;
  padding: 15px 20px;
  background: var(--primary-gradient);
  border: 0;
  border-radius: 999px;
  -webkit-box-shadow: var(--primary-shadow-gradient);
          box-shadow: var(--primary-shadow-gradient);
  font-family: var(--secondary-font);
  font-size: 15px;
  font-weight: 700;
  text-align: center;
  color: var(--text-black-color);
  cursor: pointer;
  -webkit-transition: opacity .2s, -webkit-transform .2s, -webkit-box-shadow .2s;
  transition: opacity .2s, -webkit-transform .2s, -webkit-box-shadow .2s;
  transition: transform .2s, box-shadow .2s, opacity .2s;
  transition: transform .2s, box-shadow .2s, opacity .2s, -webkit-transform .2s, -webkit-box-shadow .2s;
}

#single_product_section form.cart .single_add_to_cart_button.button:hover {
  -webkit-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: 0 14px 40px rgba(166, 190, 15, .45);
          box-shadow: 0 14px 40px rgba(166, 190, 15, .45);
}

#single_product_section form.cart .single_add_to_cart_button.button.yith-wcbk-not-allowed,
#single_product_section form.cart .single_add_to_cart_button.button:disabled {
  opacity: .45;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  cursor: not-allowed;
}


@media (max-width: 768px) {
  #single_product_section .fl-module-fl-woo-cart-button form.cart {
    padding: 16px;
    border-radius: 16px;
  }

  #single_product_section #ui-datepicker-div.yith-wcbk-datepicker.ui-widget-content {
    width: 100%;
  }
}

@media (max-width: 380px) {
  #single_product_section #yith-wapo-block-1 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}