/*
Theme Name: Divi Child
Theme URI: https://www.elegantthemes.com/gallery/divi/
Description: Child theme of Divi for Carmen & Lola migration.
Author: Yakka
Author URI: https://yakka.es
Template: Divi
Version: 1.0.0
*/

/* Custom CSS for Carmen & Lola (Divi Child) */

:root {
  --cyL-beige: #F5F0E8;
  --cyL-oscuro: #2C2C2C;
  --cyL-acento: #C9A96E;
  --cyL-gris: #6B6B6B;
}

body {
  font-family: 'Lato', sans-serif;
  color: var(--cyL-oscuro);
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Playfair Display', serif;
  color: var(--cyL-oscuro);
}

.et_header_style_left .logo_container {
  padding: 10px 0;
}

#main-footer {
  background-color: var(--cyL-beige);
  color: var(--cyL-oscuro);
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background-color: var(--cyL-acento);
  color: #fff;
  border: none;
  border-radius: 4px;
  padding: 10px 20px;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover {
  background-color: #b8944f;
}

.woocommerce ul.products li.product .price {
  color: var(--cyL-acento);
  font-weight: 700;
}

@media (max-width: 768px) {
  .et_header_style_left .logo_container {
    text-align: center;
  }
}

/* Plantillas TB (404 y busqueda): Divi ignora el alineado de los modulos de texto
   dentro de los body de templates (ademas ese markup no va dentro de .et-l), se centra con reglas scoped */

/* 404: centrar todo el contenido */
body.error404 #et-boc .et_pb_text { text-align: center !important; }
body.error404 #et-boc .et_pb_button_module_wrapper { text-align: center !important; }

/* Busqueda: centrar solo la cabecera del buscador (los resultados quedan a la izquierda) */
body.search-results #et-boc .et_pb_section_0 .et_pb_text { text-align: center !important; }
body.search-results #et-boc .et_pb_search { margin-left: auto !important; margin-right: auto !important; }

body.error404 .yk-btn { display:inline-block; background:#C9A96E; color:#fff !important; padding:13px 30px; border-radius:99px; font-weight:700; font-size:14px; letter-spacing:1px; margin:6px 4px; text-decoration:none; }
body.error404 .yk-btn:hover { background:#B4935C; color:#fff !important; }
body.error404 .yk-btn2 { background:rgba(0,0,0,0); border:1px solid #C9A96E; color:#2C2C2C !important; }
body.error404 .yk-btn2:hover { background:#FFFFFF; color:#2C2C2C !important; }

/* Badge de oferta en tarjetas: dorado de marca, pequeño */
body .onsale, .et-db #et-boc .onsale {
    background: #C9A96E !important;
    color: #FFFFFF !important;
    font: 700 9px/1 'Lato', Helvetica, Arial, sans-serif !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    padding: 4px 9px !important;
    border-radius: 99px !important;
    border: none !important;
    min-height: 0 !important;
    min-width: 0 !important;
    box-shadow: 0 1px 5px rgba(0,0,0,0.15) !important;
    position: absolute !important;
    top: 7px !important;
    left: 7px !important;
    margin: 0 !important;
    z-index: 9;
}

/* Velo de imagen del hover: negro translucido suave (antes blanco 0.9) */
.et-db #et-boc .et_overlay, .et-db #et-boc .et_overlay.et_pb_shop_overlay {
    background: rgba(0,0,0,0.16) !important;
}

/* En pantallas tactiles no existe hover: ocultar el velo para que no tape las fotos */
@media (hover: none) {
    .et-db #et-boc .et_overlay { display: none !important; }
}

/* Con scroll infinito activo: ocultar la paginacion numerica (el JS ya no la necesita)*/
body.yk-inf-on .woocommerce-pagination { display: none !important; }

/* Ficha de producto: titulos de productos relacionados mas pequenos + ocultar H2 duplicado de Woo */
body.single-product .et_pb_wc_related_products .woocommerce-loop-product__title {
    font-size: 14px !important;
    line-height: 1.4em !important;
    color: #2C2C2C !important;
}
body.single-product .et_pb_wc_related_products section.products > h2 {
    display: none !important;
}

/* Portada: textos sobre las fotos (hero + bandas) en blanco, titulos en negrita */
body.home #et-boc .et-l .et_pb_section_0 .et_pb_text h2,
body.home #et-boc .et-l .et_pb_section_2 .et_pb_text h2,
body.home #et-boc .et-l .et_pb_section_3 .et_pb_text h2 {
    color: #FFFFFF !important;
    font-weight: 700 !important;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
}
body.home #et-boc .et-l .et_pb_section_3 .et_pb_text,
body.home #et-boc .et-l .et_pb_section_3 .et_pb_text {
    color: rgba(255, 255, 255, 0.92) !important;
}

/* Producto global: logo de marca PWB compacto dentro de la ficha rediseñada */
body.single-product .et_pb_wc_add_to_cart .pwb-single-product-brands,
body.single-product .pwb-single-product-brands {
    min-height: 0 !important;
    height: auto !important;
    margin: 8px 0 12px !important;
    display: flex;
    align-items: center;
}
body.single-product .pwb-single-product-brands img {
    width: auto !important;
    height: auto !important;
    max-width: 94px !important;
    max-height: 62px !important;
    object-fit: contain;
}

/* Galeria Woo en la ficha: mantener la foto visible mientras inicializa su JS (LiteSpeed guest delay) */
body.single-product .et_pb_wc_images .woocommerce-product-gallery {
    opacity: 1 !important;
}

/* Color de enlaces global (sustituye al customizer CSS de Divi, desactivado por seguridad en prod) */
a { color: #2C2C2C; }
a:hover, a:focus { color: #C9A96E; }

/* CTA catálogo home: estilo explícito porque Dynamic Assets Divi está desactivado en prod */
body.home .yk-home-catalog-cta {
    background-color: #2C2C2C !important;
    border-radius: 18px !important;
    overflow: hidden;
    box-shadow: 0 16px 38px rgba(44,44,44,0.14);
}
body.home .yk-home-catalog-cta .yk-home-cta-eyebrow,
body.home .yk-home-catalog-cta .yk-home-cta-eyebrow p,
body.home .yk-home-catalog-cta .yk-home-cta-eyebrow .et_pb_text_inner {
    color: #C9A96E !important;
    font-family: 'Lato', Helvetica, Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 2.3px !important;
    line-height: 1.4em !important;
    text-align: center !important;
}
body.home .yk-home-catalog-cta .yk-home-cta-title h2 {
    color: #FFFFFF !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.2em !important;
    text-align: center !important;
}
body.home .yk-home-catalog-cta .yk-home-cta-copy,
body.home .yk-home-catalog-cta .yk-home-cta-copy p,
body.home .yk-home-catalog-cta .yk-home-cta-copy .et_pb_text_inner {
    color: rgba(255,255,255,0.84) !important;
    font-family: 'Lato', Helvetica, Arial, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.7em !important;
    text-align: center !important;
}
body.home .yk-home-catalog-cta a.yk-home-cta-button {
    display: inline-block !important;
    background: #C9A96E !important;
    color: #2C2C2C !important;
    border: 0 !important;
    border-radius: 99px !important;
    font-family: 'Lato', Helvetica, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    line-height: 1.2em !important;
    padding: 13px 28px !important;
    text-decoration: none !important;
}
body.home .yk-home-catalog-cta a.yk-home-cta-button:hover {
    background: #B4935C !important;
    color: #FFFFFF !important;
}
@media (max-width: 767px) {
    body.home .yk-home-catalog-cta .yk-home-cta-title h2 { font-size: 26px !important; }
    body.home .yk-home-catalog-cta { width: 92% !important; }
}

/* Paginacion fallback (antes de que arranque el scroll infinito): solo Anterior/Siguiente */
.et-db #et-boc .woocommerce-pagination .page-numbers li:not(:has(.next)):not(:has(.prev)) {
    display: none !important;
}
