/*
 Theme Name:     Santa Maria Watersports
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    fededomenech
 Author:         hello@fededomenech.com
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
 Text Domain:  santa-maria-tema-hijo
*/


/* =Theme customization starts here
------------------------------------------------------- */

/* Definición de tipografias */
body {
  font-family: 'Sofia Sans Condensed', sans-serif;
}

h1,
h2,
h3,
h4,
h5 .titulo,
.mobile_menu_slide li a {
  font-family: 'Figtree', sans-serif;
  font-weight: 700;
}

p,
.texto {
  font-family: 'Figtree', sans-serif;
  font-weight: 400;
}

/* Header Styles */
.et_header_style_left .logo_container {
  text-align: center !important;
  padding-top: 10px !important;
}

.et-fixed-header img#logo {
  content: url('/wp-content/uploads/2025/07/santa_maria_watersports_logo_texto_black_1.svg');
}

.mobile_menu_bar:before,
.mobile_menu_bar:after,
#top-menu li.current-menu-ancestor>a,
#top-menu li.current-menu-item>a {
  color: #ffffff !important;
}

.et-fixed-header .mobile_menu_bar:before {
  color: #000000 !important;
}

.et_header_style_left .logo_container {
  height: 85% !important;
}

@media only screen and (max-width: 980px) {

  #main-header,
  #main-header .nav li ul,
  .et-search-form,
  #main-header .et_mobile_menu {
    background-color: #000000 !important;
  }

  .et_pb_svg_logo #logo {
    height: 90% !important;
    max-height: 100%;
  }


}

.et_header_style_left .logo_container {
  left: 0 !important;
}

/* Desktop menu styles */
.et_header_style_fullscreen ul#mobile_menu_slide {
  text-align: left;
  position: absolute;
  display: unset;
  height: unset;
  padding: 0 0 5% 2.5%;
  bottom: 0 !important;
  margin-left: 20%;
  border-left: solid white 1px;
}

.et_header_style_fullscreen .et_slide_in_menu_container .et_mobile_menu li a {
  font-size: 64px !important;
}

.et_header_style_fullscreen .et_slide_in_menu_container {
  height: 95vh !important;
}

@media only screen and (max-width: 980px) {

  .et_header_style_fullscreen ul#mobile_menu_slide {
    margin-left: 5% !important;
  }

  .et_header_style_fullscreen .et_slide_in_menu_container .et_mobile_menu li a {
    font-size: 50px !important;
  }

  .et_header_style_fullscreen .et_slide_in_menu_container {
    height: 100svh !important;
  }
}

/* ul.sub-menu.et_pb_slide_dropdown_opened {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 10px !important;
}

ul.sub-menu .et_pb_slide_dropdown_opened li {
  list-style: none !important;
  text-align: center !important;
} */

.et_slide_in_menu_container #mobile_menu_slide li.current-menu-item a,
.et_slide_in_menu_container #mobile_menu_slide li a {
  padding: 20px 0 !important;
}

@media (max-width: 768px) {
  .et_slide_in_menu_container #mobile_menu_slide li a {
    padding: 10px 0 !important;
  }

  .et_header_style_fullscreen .et_slide_in_menu_container .et_mobile_menu li a {
    font-size: 35px !important;
  }


  .sub-menu .et_pb_slide_dropdown_opened {
    grid-template-columns: 1fr !important;
  }
}


/* Button home experiences */
.button-experiences-home {
  width: 100% !important;
  text-align: center !important;
}

.button-experiences-home {
  display: none !important;
}

.column-button:hover .button-experiences-home {
  display: block !important;
}

@media only screen and (max-width: 980px) {


  .et_pb_fullwidth_header .et_pb_fullwidth_header_container .et_pb_button_one {
    margin-right: 0 !important;
  }
}

/* Contact */
body #page-container .et_pb_section .dvppl_cf7_styler_0 .wpcf7-form input[type=submit] {
  width: 100%;
}


/* Product page and shop */
@media only screen and (min-width: 980px) {

  .single-product img#logo,
  .woocommerce-shop img#logo,
  .woocommerce-cart img#logo,
  .woocommerce-checkout img#logo,
  .page-id-195 img#logo,
  .page-id-787 img#logo,
  .page-id-546 img#logo {
    content: url('/wp-content/uploads/2025/07/santa_maria_watersports_logo_black.svg');

  }

  .single-product .mobile_menu_bar:before,
  .woocommerce-shop .mobile_menu_bar:before,
  .woocommerce-cart .mobile_menu_bar:before,
  .woocommerce-checkout .mobile_menu_bar:before,
  .page-id-195 .mobile_menu_bar:before,
  .page-id-787 .mobile_menu_bar:before,
  .page-id-546 .mobile_menu_bar:before {
    color: #000000 !important;
  }
}



/* Estilos de sistema de reservas */
.bookly\:flex.bookly\:bg-white.bookly\:float-right.bookly\:p-2.bookly\:absolute.bookly\:right-2.bookly\:bottom-2.bookly\:card-title {
  display: none !important;
}

/* Checkout Bookly deposit selector */
.smw-bookly-payment-selector {
  margin: 32px 0 20px;
}

.smw-bookly-payment-selector h3 {
  margin-bottom: 18px;
}

.smw-bookly-payment-selector__options {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.smw-bookly-payment-selector__option {
  margin: 0;
  cursor: pointer;
  position: relative;
}

.smw-bookly-payment-selector__option input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.smw-bookly-payment-selector__option span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  padding: 14px 28px;
  border: 2px solid #000000;
  background: transparent;
  color: #000000;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  font-family: 'Figtree', sans-serif;
  font-size: 21px;
  font-weight: 800;
  line-height: 1;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.smw-bookly-payment-selector__option:hover span {
  transform: translateY(-1px);
}

.smw-bookly-payment-selector__option input[type="radio"]:checked + span {
  background: #000000;
  color: #ffffff;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.smw-bookly-payment-selector__option input[type="radio"]:focus-visible + span {
  outline: 2px solid #000000;
  outline-offset: 3px;
}

.smw-bookly-payment-selector__note {
  margin: 16px 0 0;
}

@media (max-width: 980px) {
  .smw-bookly-payment-selector__options {
    flex-direction: column;
  }

  .smw-bookly-payment-selector__option {
    width: 100%;
  }

  .smw-bookly-payment-selector__option span {
    width: 100%;
    font-size: 18px;
  }
}

/* Cart Bookly item info */
.woocommerce-cart-form td.product-name dl.variation {
  display: block;
  width: 100%;
  margin: 14px 0 0;
}

.woocommerce-cart-form td.product-name dl.variation dt,
.woocommerce-cart-form td.product-name dl.variation dd {
  float: none;
  display: block;
  width: 100%;
}

.woocommerce-cart-form td.product-name dl.variation dt {
  margin: 0 0 10px;
  font-family: 'Figtree', sans-serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
}

.woocommerce-cart-form td.product-name dl.variation dd {
  margin: 0;
}

.woocommerce-cart-form td.product-name dl.variation dd p {
  margin: 0 0 10px;
  font-family: 'Figtree', sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
}

.woocommerce-cart-form td.product-name dl.variation dd p:last-child {
  margin-bottom: 0;
}

@media (max-width: 980px) {
  .woocommerce-cart-form td.product-name dl.variation dt {
    font-size: 16px;
  }

  .woocommerce-cart-form td.product-name dl.variation dd p {
    font-size: 14px;
  }
}




/* BOTON FLOTANTE BOOKINGS ESTILOS */
#boton-flotante {
  position: fixed;
  bottom: 12%;
  left: 20px;
  z-index: 9999;
}

#boton-flotante .btn-flotante {
  display: inline-block;
  background-color: #000000;
  color: #fff;
  text-align: center;
  padding: 20px 40px;
  text-decoration: none;
  border: 1px solid white;
  line-height: 1.2;
  box-shadow: 0 4px 6px rgba(0, 0, 0);
  transition: background-color 0.3s ease, transform 0.2s ease;
  font-weight: 800;
  font-size: 20px;
  font-family: 'Figtree', sans-serif;
  text-transform: uppercase;
}

@media only screen and (max-width: 980px) {
  #boton-flotante {
    bottom: 62%;
    right: 0;
    left: auto !important;
    transform: translateY(50%);
    width: auto !important;
  }

  #boton-flotante .btn-flotante {
   
    font-size: 14px !important;
    padding: 12px 20px;
    transform: rotate(-90deg);
    transform-origin: right bottom;
  }
}


/* BOTON FLOTANTE CLUB ESTILOS */
#boton-flotante-club {
  position: fixed;
  bottom: 3%;
  left: 20px;
  z-index: 9999;
}

#boton-flotante-club .btn-flotante-club {
  display: inline-block;
  background-color: #000000;
  color: #fff;
  font-size: 14px;
  text-align: center;
  padding: 20px 50px;
  text-decoration: none;
  border: 1px solid white;
  line-height: 1.2;
  box-shadow: 0 4px 6px rgba(0, 0, 0);
  transition: background-color 0.3s ease, transform 0.2s ease;
  font-weight: 800;
  font-family: 'Figtree', sans-serif;
  text-transform: uppercase;
}

@media only screen and (max-width: 980px) {
  #boton-flotante-club {
    bottom: 30%;
    right: 0;
    left: auto !important;
    transform: translateY(50%);
    width: auto !important;
  }

  #boton-flotante-club .btn-flotante-club {
    width: 150px !important;
    font-size: 14px !important;
    padding: 12px 20px;
    transform: rotate(-90deg);
    transform-origin: right bottom;
  }
}


/* === SHOP / ARCHIVE: 3:4 === */
.woocommerce.archive ul.products li.product a img,
.woocommerce-page.archive ul.products li.product a img {
  aspect-ratio: 3 / 4;
  width: 100%;
  height: auto;
  object-fit: cover; /* recorta manteniendo encuadre */
}

/* === SINGLE PRODUCT: 1:1 === */
.single-product .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image img {
  aspect-ratio: 1 / 1;
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* Thumbnails debajo de la imagen en single: también cuadrados */
.single-product .flex-control-thumbs li img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.single-product button.single_add_to_cart_button.button {
  width: 100% !important;
}

/* Woo Variation Swatches: Session Bundles only */
body.smw-session-bundles-product .woo-variation-swatches .wvs-style-rounded.variable-items-wrapper .variable-item:not(.radio-variable-item) .variable-item-span,
body.smw-session-bundles-product .woo-variation-swatches .wvs-style-rounded.variable-items-wrapper .variable-item:not(.radio-variable-item) img,
body.tax-product_cat.term-session-bundles .woo-variation-swatches .wvs-style-rounded.variable-items-wrapper .variable-item:not(.radio-variable-item) .variable-item-span,
body.tax-product_cat.term-session-bundles .woo-variation-swatches .wvs-style-rounded.variable-items-wrapper .variable-item:not(.radio-variable-item) img {
  border-radius: 0 !important;
  line-height: 1;
  margin: 0;
  overflow: hidden;
}

body.smw-session-bundles-product li.variable-item.button-variable-item,
body.tax-product_cat.term-session-bundles li.variable-item.button-variable-item {
  width: 25% !important;
  border-radius: 20px !important;
}

/* Galerias experiencias: 4 columnas en desktop, 1 en mobile */
.galerias-experiencias.et_pb_gallery .et_pb_gallery_image,
.galerias-experiencias .et_pb_gallery .et_pb_gallery_image {
  aspect-ratio: 400 / 284;
  overflow: hidden;
}

.galerias-experiencias.et_pb_gallery .et_pb_gallery_image img,
.galerias-experiencias .et_pb_gallery .et_pb_gallery_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media (min-width: 981px) {
  .galerias-experiencias.et_pb_gallery .et_pb_grid_item,
  .galerias-experiencias .et_pb_gallery .et_pb_grid_item {
    width: 24.625%;
    margin-right: 0.5%;
    margin-bottom: 0.5%;
  }

  .galerias-experiencias.et_pb_gallery .et_pb_grid_item:nth-child(4n),
  .galerias-experiencias .et_pb_gallery .et_pb_grid_item:nth-child(4n) {
    margin-right: 0;
  }
}

@media (max-width: 980px) {
  .galerias-experiencias.et_pb_gallery .et_pb_grid_item,
  .galerias-experiencias .et_pb_gallery .et_pb_grid_item {
    width: 100%;
    margin-right: 0;
  }
}
