/*
Theme Name: Hello elementor Child
Template: hello-elementor
Version: 1.0.0
*/

html, body{
  background:#0d0d0d !important;
}

/* =========================================
   PLACEHOLDER SOLO EN EDITOR (forzado)
   ========================================= */

/* Oculto SIEMPRE por defecto */
.db-products-placeholder{
  display:none !important;
}

/* Solo visible en modo editor de Elementor */
html.elementor-editor-active .db-products-placeholder,
body.elementor-editor-active .db-products-placeholder{
  display:block !important;
  padding:16px 18px;
  border:1px dashed rgba(0,0,0,.28);
  border-radius:12px;
  background:#fff;
  color:#111;
  font-size:13px;
  line-height:1.35;
}
html.elementor-editor-active .db-products-placeholder strong,
body.elementor-editor-active .db-products-placeholder strong{
  display:block;
  margin-bottom:6px;
  font-size:14px;
}



/* =========================
   Don Barbero Preloader (A)
   ========================= */
.db-preloader{
  position: fixed;
  inset: 0;
  z-index: 200000;
  display: grid;
  place-items: center;
  background: #000; /* negro Don Barbero */
  opacity: 1;
  visibility: visible;
  transition: opacity .35s ease, visibility .35s ease;
}

.db-preloader__inner{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:18px;
  padding:24px;
}

.db-preloader__logo{
  width: min(220px, 70vw);
  height: auto;
  display:block;
}

.db-preloader__bar{
  width: min(220px, 70vw);
  height: 3px;
  border-radius: 999px;
  background: rgba(255,255,255,.15);
  overflow:hidden;
  position: relative;
}

.db-preloader__bar::after{
  content:"";
  position:absolute;
  inset:0;
  width:40%;
  background: #C8102E; /* rojo marca */
  border-radius:999px;
  animation: dbPreBar 1s ease-in-out infinite;
}

@keyframes dbPreBar{
  0%   { transform: translateX(-120%); }
  50%  { transform: translateX(130%); }
  100% { transform: translateX(130%); }
}

/* Ocultar */
.db-preloader.is-hidden{
  display:none !important;
}


/* ======================================================
   DON BARBERO — TIPOGRAFÍA PREMIUM
   TITULOS: Playfair Display
   TEXTO / UI: Work Sans
   PRECIOS: Oswald
====================================================== */


/* =========================
   1. BASE GENERAL
========================= */
html,
body,
p,
span,
div,
li,
td,
th,
label,
input,
textarea,
select{
  font-family:'Work Sans',sans-serif !important;
  font-weight:400 !important;
  line-height:1.6 !important;
  letter-spacing:.2px !important;
}


/* =========================
   2. TITULOS (ELEGANCIA)
========================= */
h1,h2,h3,h4,h5,h6,
.elementor-heading-title,
.product_title,
.widget-title,
.entry-title,
.related h2,
.upsells h2,
.cross-sells h2,
.cart_totals h2,
.woocommerce-tabs h2,
footer h1,
footer h2,
footer h3{
  font-family:'Playfair Display',serif !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  line-height:1.15 !important;
}


/* =========================
   3. MENÚ (LIMPIO Y FIRME)
========================= */
.main-navigation a,
.menu a,
.sub-menu a,
.elementor-nav-menu a,
.header-wrap a,
.db-mm a{
  font-family:'Work Sans',sans-serif !important;
  font-weight:600 !important;
  text-transform:uppercase !important;
  letter-spacing:.6px !important;
}


/* =========================
   4. BOTONES (MODERNO)
========================= */
button,
.button,
a.button,
.elementor-button,
.checkout-button,
.single_add_to_cart_button{
  font-family:'Work Sans',sans-serif !important;
  font-weight:700 !important;
  letter-spacing:.6px !important;
  text-transform:uppercase !important;
}


/* =========================
   5. PRECIOS (IMPACTO)
========================= */
.price,
.amount,
.woocommerce-Price-amount,
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.cart-subtotal .amount,
.order-total .amount,
.product-subtotal .amount{
  font-family:'Oswald',sans-serif !important;
  font-weight:600 !important;
  letter-spacing:.5px !important;
}


/* =========================
   6. TITULO PRODUCTOS
========================= */
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:'Playfair Display',serif !important;
  font-weight:700 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  line-height:1.2 !important;
}


/* =========================
   7. MINI CART
========================= */
.woocommerce-mini-cart,
.woocommerce-mini-cart *{
  font-family:'Work Sans',sans-serif !important;
}

.woocommerce-mini-cart .product-name{
  font-family:'Playfair Display',serif !important;
  font-weight:700 !important;
}


/* =========================
   8. TABLAS (CHECKOUT)
========================= */
.shop_table,
.shop_table *,
.woocommerce-checkout-review-order-table *{
  font-family:'Work Sans',sans-serif !important;
}

.shop_table th{
  font-family:'Playfair Display',serif !important;
  font-weight:700 !important;
}


/* =========================
   9. FORMULARIOS
========================= */
input,
textarea,
select{
  font-family:'Work Sans',sans-serif !important;
}

form label{
  font-family:'Work Sans',sans-serif !important;
  font-weight:600 !important;
  text-transform:uppercase !important;
  letter-spacing:.4px !important;
}


/* =========================
   10. FOOTER
========================= */
footer,
footer *{
  font-family:'Work Sans',sans-serif !important;
}

footer h1,
footer h2,
footer h3{
  font-family:'Playfair Display',serif !important;
  font-weight:700 !important;
}


/* =========================
   11. BADGES
========================= */
.onsale,
.stock{
  font-family:'Oswald',sans-serif !important;
  font-weight:600 !important;
  text-transform:uppercase !important;
}

