/*
 Theme Name: CBD Perejil - Divi Child
 Theme URI: https://cbdperejil.es/
 Description: Child theme for CBD Perejil (Divi). Use this to centralize custom CSS safely.
 Author: CBD Perejil Team
 Author URI: https://cbdperejil.es/
 Template: Divi
 Version: 1.0.0
 License: GNU GPL v2 or later
 Text Domain: divi-child-cbdperejil
*/

/* ========== ESTILO GENERAL TIENDA CBD PEREJIL ========== */

body,
.woocommerce,
.woocommerce-page { font-family: 'Montserrat', sans-serif !important; }

/* Precio variable */
.woocommerce-variation-price .price {
  color: #2a4f36 !important; font-weight: 700; font-size: 24px;
}

/* Botón "Limpiar" */
.reset_variations{ color:#2a4f36 !important; font-weight:500; font-size:14px; text-decoration:underline dotted; transition:color .3s; }
.reset_variations:hover{ color:#1b3526 !important; }

/* ================= VALORACIONES CON HOJAS DE CANNABIS ================= */
.woocommerce .star-rating, .woocommerce p.stars a{
  position:relative; display:inline-block; width:auto; height:1.6em; line-height:1; font-size:1.6em; background:none !important;
}
.woocommerce .star-rating{
  width:5.5em; background-image:url("https://cbdperejil.es/wp-content/uploads/2025/06/hoja-estrella.png");
  background-size:1.1em auto; background-repeat:repeat-x; background-position:left center; filter:grayscale(60%) brightness(1.1);
}
.woocommerce .star-rating span{
  display:block; height:100%; background-image:url("https://cbdperejil.es/wp-content/uploads/2025/06/hoja-estrella.png");
  background-size:1.1em auto; background-repeat:repeat-x; background-position:left center; filter:none;
}
.woocommerce .star-rating::before,
.woocommerce .star-rating span::before,
.woocommerce p.stars::before,
.woocommerce p.stars span::before,
.woocommerce p.stars a::before{ content:none !important; display:none !important; }
.woocommerce p.stars a{
  text-indent:-9999px; width:1.1em; height:1.6em; margin-right:.15em; display:inline-block; border:none !important; outline:none !important;
}
.woocommerce p.stars a::after{
  content:''; position:absolute; top:0; left:0; width:100%; height:100%;
  background-image:url("https://cbdperejil.es/wp-content/uploads/2025/06/hoja-estrella.png");
  background-repeat:no-repeat; background-size:contain; background-position:center; filter:grayscale(60%) brightness(1.1); z-index:1;
}
.woocommerce p.stars a:hover::after, .woocommerce p.stars a.active::after{ filter:none; }

/* ================= CARRITO DE COMPRA ================= */
.woocommerce-cart table.cart{
  font-family:'Montserrat', sans-serif !important; color:#2a4f36; border-collapse:separate; border-spacing:0 10px; width:100%;
}
.woocommerce-cart table.cart td, .woocommerce-cart table.cart th{ vertical-align:middle; padding:16px; font-size:14px; }
.woocommerce-cart table.cart img{ width:100px; border-radius:12px; box-shadow:0 2px 8px rgba(0,0,0,.08); }
.woocommerce-cart table.cart a{ color:#2a4f36 !important; font-weight:600; font-size:15px; }
.woocommerce input.qty{ border-radius:8px; border:1px solid #2a4f36; text-align:center; padding:4px 8px; width:50px; }
.woocommerce .cart .button,
.woocommerce .cart input.button,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
.woocommerce-page a.button.alt,
.woocommerce-page input.button.alt{
  background:#2a4f36 !important; color:#fff !important; font-weight:600; font-size:14px; padding:10px 20px; border:none; border-radius:8px; transition:.3s;
}
.woocommerce .cart .button:hover,
.woocommerce .cart input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce-page a.button.alt:hover,
.woocommerce-page input.button.alt:hover{ background:#1b3526 !important; }
.woocommerce-cart .cart-collaterals{ margin-top:30px; background:#f3f7f5; padding:20px; border-radius:16px; font-size:15px; color:#2a4f36; }
.woocommerce-cart h2{ font-family:'Montserrat', sans-serif !important; color:#2a4f36; font-size:20px; font-weight:700; margin-bottom:10px; }
a.remove, .woocommerce-cart .product-remove a{ color:#a94442 !important; font-size:20px; }
a.remove:hover{ color:#7a1f1f !important; }
.woocommerce-shipping-calculator a{ color:#99b39f !important; font-weight:600; text-decoration:underline dotted; transition:color .3s; }
body .woocommerce .woocommerce-result-count{ font-size:14px !important; color:#6b7a6f !important; font-weight:500 !important; margin:10px 0 20px; text-align:left; }
.woocommerce-ordering select{
  font-family:'Montserrat', sans-serif; font-size:14px; color:#2a4f36; background:#f4f8f5; border:1px solid #99b39f; border-radius:6px; padding:6px 10px; box-shadow:none; transition:.2s;
}

/* Eliminar floating badge CusRev */
#cr_floatingtrustbadge, #cr_floatingtrustbadge *{ display:none !important; visibility:hidden !important; height:0 !important; width:0 !important; opacity:0 !important; position:absolute !important; z-index:-9999 !important; }

/* ================= FOOTERS ================= */
.footer-principal{ padding:30px 0; }
.footer-principal .et_pb_row{ row-gap:20px; }
.footer-principal .et_pb_text{ font-size:16px; line-height:1.6em; color:#fff; }
.footer-principal .et_pb_text a{ color:#99b39f; font-weight:500; text-decoration:none; transition:color .3s; }
.footer-principal .et_pb_text a:hover{ color:#c79259; }
.footer-principal .et_pb_blurb .et-pb-icon, .footer-principal .et_pb_text i{ color:#99b39f; }
@media (max-width:768px){
  .footer-principal{ padding:24px 0; }
  .footer-principal .et_pb_text{ font-size:15px; line-height:1.5em; text-align:center; }
  .footer-principal .et_pb_column:last-child{ margin-top:12px; }
}
.footer-inferior{ background:#1c1c1c; padding:24px 0; }
.footer-inferior .et_pb_row{ row-gap:16px; }
.footer-inferior .et_pb_text{ font-size:14.5px; line-height:1.5em; color:#c79259; text-align:center; }
.footer-inferior .et_pb_text a{ color:#c79259; font-weight:500; text-decoration:none; transition:color .3s; }
.footer-inferior .et_pb_text a:hover{ color:#e4b679; }
.footer-inferior .et_pb_text i{ font-size:20px; margin:0 8px; }
.footer-inferior .footer-legales{ color:#c79259 !important; margin-bottom:12px; text-align:center; }
.footer-inferior .footer-legales a{ color:#c79259 !important; font-weight:500; text-decoration:none; transition:color .3s; }
.footer-inferior .footer-legales a:hover{ color:#e4b679 !important; }
@media (min-width:769px){ .footer-inferior .footer-legales{ text-align:left !important; } }
.footer-inferior .footer-social{ display:flex; justify-content:flex-end; align-items:center; gap:16px; }
.footer-inferior .footer-social a{ color:#c79259 !important; font-size:26px; display:inline-flex; align-items:center; transition:color .3s; }
.footer-inferior .footer-social i{ color:#c79259 !important; font-size:26px; display:inline-block; vertical-align:middle; transition:transform .2s; }
.footer-inferior .footer-social a:hover i{ transform:scale(1.15); }
@media (max-width:768px){
  .footer-inferior .footer-legales{ text-align:center !important; margin-bottom:12px; }
  .footer-inferior .footer-social{ justify-content:center !important; text-align:center; margin-top:12px; }
}

.footer-aviso{ background:#111; padding:14px 0; }
.footer-aviso .et_pb_text{
  font-size:14px; line-height:1.5em; color:#ddd; text-align:center; display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:6px; padding:0 20px; max-width:100%;
}
.footer-aviso .mayores-18{ font-size:24px; vertical-align:middle; display:inline-block; margin-right:6px; line-height:1; transform:translateY(-1px); }
@media (max-width:768px){
  .footer-aviso{ padding:12px 0; }
  .footer-aviso .et_pb_text{ font-size:13px; line-height:1.4em; flex-direction:column; gap:8px; padding:0 16px; }
  .footer-aviso .mayores-18{ font-size:22px; margin-right:0; }
}

/* ================= BOTÓN "Volver a la tienda" ================= */
.woocommerce-cart .wc-backward{
  display:inline-block; background:#2a4f36 !important; color:#fff !important; font-family:'Montserrat', sans-serif; font-weight:600; font-size:16px;
  padding:12px 24px; border:2px solid #2a4f36 !important; border-radius:10px; text-decoration:none !important; text-align:center; transition:.3s; margin-top:20px; position:relative; box-shadow:none;
}
.woocommerce-cart .wc-backward::after{ content:none !important; }
.woocommerce-cart .wc-backward:hover{ background:#fff !important; color:#2a4f36 !important; }

/* ================= CHECKOUT ================= */
.page-id-53426 #main-content{ background:#fff; padding-top:60px; padding-bottom:60px; }
.page-id-53426 #main-content .container{ width:100% !important; max-width:1200px !important; }
.page-id-53426 #main-content .et_pb_row{ width:100% !important; max-width:100% !important; padding-left:0 !important; padding-right:0 !important; }
.woocommerce-checkout{ font-family:'Montserrat', sans-serif; padding:0; margin:0 auto; max-width:100%; box-shadow:none !important; background:transparent !important; border-radius:0; }
.woocommerce form.checkout{ background:transparent !important; padding:0 !important; border-radius:0 !important; box-shadow:none !important; }
.woocommerce-checkout input, .woocommerce-checkout textarea, .woocommerce-checkout select{
  border-radius:8px; border:1px solid #ccc; padding:10px; font-size:16px; background:#fff; width:100%; box-sizing:border-box;
}
.woocommerce-checkout button.button{
  background:#2a4f36 !important; border-radius:8px; padding:12px 20px; font-size:16px; color:#fff !important; font-weight:600; transition:.3s; margin-top:20px;
}
.woocommerce-checkout button.button:hover{ background:#1b3526 !important; }
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields{ margin-bottom:30px; }

/* Checkboxes / Radios */
input[type="checkbox"], input[type="radio"]{
  appearance:none !important; -webkit-appearance:none !important; -moz-appearance:none !important;
  width:16px; height:16px; border:2px solid #2a4f36; position:relative; margin-right:10px; background:#fff; cursor:pointer; transition:.2s; vertical-align:middle;
}
input[type="radio"]{ border-radius:50%; }
input[type="checkbox"]:checked, input[type="radio"]:checked{ background:#2a4f36; border-color:#2a4f36; }
input[type="checkbox"]:checked::after{
  content:"✓"; color:#fff; font-size:12px; position:absolute; left:2px; top:0px;
}
input[type="radio"]:checked::after{
  content:""; position:absolute; width:6px; height:6px; background:#fff; border-radius:50%; top:4px; left:4px;
}

/* Ajustes finales campos checkout */
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout input[type="search"],
.woocommerce-checkout textarea,
.woocommerce-checkout select{
  border-radius:6px !important; border:1px solid #2a4f36 !important; background:#fff !important; color:#000 !important; font-size:16px !important; padding:12px 16px !important; box-shadow:none !important;
}
.woocommerce-checkout input:focus, .woocommerce-checkout textarea:focus, .woocommerce-checkout select:focus{ border-color:#1b3526 !important; outline:none !important; }
.woocommerce-checkout button.button{ border-radius:8px !important; background:#2a4f36 !important; padding:14px 24px !important; font-size:18px !important; font-weight:600; color:#fff !important; text-transform:uppercase; transition:.3s; }
.woocommerce-checkout button.button:hover{ background:#1b3526 !important; }

/* Mensaje de cuenta */
.woocommerce-checkout .woocommerce-privacy-policy-text{
  background:#f9f9f9; border-left:4px solid #2a4f36; padding:16px; border-radius:8px; margin-bottom:20px; font-size:14px; color:#333; line-height:1.5;
}
.mensaje-agradecimiento-cbd{ background:#f0f8f4; border:2px solid #2a4f36; padding:25px; border-radius:16px; margin-bottom:30px; text-align:center; }
.mensaje-agradecimiento-cbd h2{ color:#2a4f36; font-size:24px; font-weight:700; }
.mensaje-agradecimiento-cbd p{ color:#333; font-size:16px; font-weight:500; }

/* ================= ENLACES INTERNOS ================= */
.single-post .et_pb_text a{ color:#99b39f; text-decoration:underline; font-weight:600; }
.single-post .et_pb_text a:hover{ color:#2a4f36; text-decoration:underline; }
.woocommerce div.product .woocommerce-Tabs-panel a,
.woocommerce div.product .product_meta a,
.woocommerce div.product .woocommerce-product-details__short-description a{
  color:#60cf3d; text-decoration:underline; font-weight:600;
}
.woocommerce div.product .woocommerce-Tabs-panel a:hover,
.woocommerce div.product .product_meta a:hover,
.woocommerce div.product .woocommerce-product-details__short-description a:hover{ color:#2a4f36; }

/* Paginador Woo */
.woocommerce nav.woocommerce-pagination ul{ border:none; display:flex; justify-content:center; gap:8px; }
.woocommerce nav.woocommerce-pagination ul li{ border:none; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:inline-block; padding:8px 14px; border-radius:8px; background:#f5f5f5; color:#2a4f36; font-weight:600; transition:.3s;
}
.woocommerce nav.woocommerce-pagination ul li a:hover{ background:#2a4f36; color:#fff; }
.woocommerce nav.woocommerce-pagination ul li span.current{ background:#2a4f36; color:#fff; }

/* Migas */
.breadcrumb-wrap{ display:block; max-width:1100px; margin:10px auto 16px; padding:0 12px; }
.woocommerce-breadcrumb{
  display:inline-flex; align-items:center; flex-wrap:wrap; gap:8px; background:#eef5f1; border:1px solid #dfe7e2; border-radius:999px; padding:6px 12px; font-size:14px; color:#2a4f36;
}
.woocommerce-breadcrumb a{ color:#2a4f36; text-decoration:none; border-bottom:1px dotted #cfe0d7; }
.woocommerce-breadcrumb a:hover{ border-bottom-color:#2a4f36; }
.woocommerce-breadcrumb .breadcrumb-sep{ color:#9db5aa; margin:0 6px; }

/* ===== Header CBD Perejil — STICKY + GAP limpio (único bloque) ===== */

/* Gap controlado por variable (ajústala si quieres) */
:root { --hdr-gap: 190px; }
@media (max-width: 980px) {
  :root { --hdr-gap: 170px; }
}

/* Apaga header clásico sólo con Theme Builder */
body.et-tb #main-header,
body.et-tb #top-header {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Header del Theme Builder sticky */
body.et-tb .et-l--header {
  position: sticky !important;
  top: 0 !important;
  z-index: 10000 !important;
}
body.admin-bar.et-tb .et-l--header { top: 32px !important; }

/* Empuje del contenido con fallback */
#et-main-area { padding-top: var(--hdr-gap, 190px) !important; }

/* Evitar recortes dentro del header */
body.et-tb .et-l--header .et_pb_section,
body.et-tb .et-l--header .et_pb_row { overflow: visible !important; }

/* Hamburguesa ETmodules y contador carrito siempre visibles */
.mobile_menu_bar:before { font-family: 'ETmodules' !important; }
.et_pb_menu__cart-count {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Píldora carrito (módulo Texto) */
.cbd-cart-pill, .cbd-cart-pill * {
  font-size: 16px !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.cbd-cart-pill {
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 40px;
  background: #2a4f36;
  color: #fff;
  font-weight: 800;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}
.cbd-cart-pill > * + * { margin-left: 10px; }
.cbd-cart-icon { font-family: "ETmodules" !important; line-height: 1; }
.cbd-cart-icon:before { content: "\e07a"; font-size: 22px; color: #fff; }
.cbd-cart-total,
.cbd-cart-total .amount,
.cbd-cart-total bdi { color: #fff !important; font-weight: 800 !important; }
.cbd-cart-count {
  background: #f5c94c !important;
  color: #1c1c1c !important;
  border: 1px solid #d9a72c !important;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.06);
  border-radius: 999px;
  font-weight: 800;
  padding: 3px 7px;
  line-height: 1;
}

/* Si también usas el icono carrito del módulo Menú, muestra su contador */
.et_pb_menu__cart-button { position: relative !important; }
.et_pb_menu__cart-count {
  position: absolute !important;
  top: -6px !important;
  right: -6px !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 4px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  background: #f5c94c !important;
  color: #1c1c1c !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Fija el menú y carrito a la derecha en móvil y tablet */
@media (max-width: 980px) {
  /* Alinea la fila que contiene el menú a la derecha */
  .et-l--header .et_pb_row {
    display: flex !important;
    justify-content: flex-end !important;
  }
  /* Asegura que el contenedor de menú se alinee a la derecha */
  .et-l--header .et_pb_menu__wrap {
    justify-content: flex-end !important;
  }
  /* Corrige el orden de los elementos */
  .et-l--header .mobile_menu_bar {
    order: 1 !important;
  }
  .et-l--header .cbd-cart-pill {
    order: 2 !important;
  }
  /* Elimina el centrado de los módulos dentro de la fila */
  .et-l--header .et_pb_column {
    text-align: unset !important;
  }
}
/* Variation Swatches (Emran Ahmed) – quitar flechas/marcadores en los botones */
.variations .variable-items-wrapper,
.variations .variable-items-wrapper * { 
  background-image: none !important;
}

/* Si el plugin pinta <ul><li>, quita bullets/markers del li */
.variations .variable-items-wrapper,
.variations .variable-items-wrapper ul,
.variations .variable-items-wrapper li {
  list-style: none !important;
}

/* El texto del botón va en .variable-item-span → aquí suele venir la “flecha” (::after) */
.variations .button-variable-item .variable-item-span::before,
.variations .button-variable-item .variable-item-span::after,
.variations .variable-item .variable-item-span::before,
.variations .variable-item .variable-item-span::after {
  content: none !important;
  display: none !important;
}

/* Por si Select2 se cuela en alguna variación, oculta su flecha */
.variations .select2-container .select2-selection--single .select2-selection__arrow {
  display: none !important;
}
/* CBD Perejil Blog Visual Enhancements */
.cp-callout{
  border:1px solid rgba(0,0,0,.08);
  border-left:6px solid #60cf3d;
  background:#f7fbf8;
  padding:18px 18px 10px;
  border-radius:14px;
  margin:18px 0 22px;
}
.cp-callout h3{ margin:0 0 10px; }
.cp-callout ul{ margin:0 0 8px; padding-left:18px; }

.cp-toc{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
  padding:14px;
  border-radius:14px;
  margin:10px 0 24px;
}
.cp-toc strong{ margin-right:6px; }
.cp-toc a{
  color:#2a4f36;
  text-decoration:none;
  border:1px solid rgba(0,0,0,.10);
  padding:6px 10px;
  border-radius:999px;
  background:#fafafa;
  font-weight:600;
}
.cp-toc a:hover{
  background:#f2fff6;
  border-color:#60cf3d;
}

.cp-grid2{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  margin:16px 0 22px;
}
@media(min-width: 820px){
  .cp-grid2{ grid-template-columns:1fr 1fr; }
}

.cp-card{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  padding:16px 16px 10px;
  background:#fff;
}
.cp-card h4{ margin:0 0 10px; }
.cp-card ul{ margin:0; padding-left:18px; }
.cp-card--ok{ border-left:6px solid #60cf3d; }
.cp-card--warn{ border-left:6px solid #f2b01e; background:#fffdf6; }

article table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  margin:16px 0 24px;
}
article table thead th{
  background:#f7fbf8;
  text-align:left;
  padding:12px 12px;
  border-bottom:1px solid rgba(0,0,0,.08);
}
article table td{
  padding:12px 12px;
  border-bottom:1px solid rgba(0,0,0,.06);
  vertical-align:top;
}
article table tbody tr:nth-child(even) td{
  background:#fcfcfc;
}

.cp-acc{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  padding:10px 12px;
  background:#fff;
  margin:10px 0;
}
.cp-acc summary{
  cursor:pointer;
  font-weight:700;
  color:#2a4f36;
  list-style:none;
}
.cp-acc summary::-webkit-details-marker{ display:none; }
.cp-acc summary:after{
  content:"＋";
  float:right;
  font-weight:800;
}
.cp-acc[open] summary:after{ content:"−"; }
.cp-acc > div{ padding:10px 2px 2px; }
