/* =========================================================
   MOLEDORES — ajustes para WordPress y WooCommerce
   ========================================================= */
.md-pad { padding-top: clamp(80px, 10vw, 120px); padding-bottom: clamp(80px, 10vw, 120px); }
.md-pad--sin-arriba { padding-top: 20px; }
.md-pad--xl { padding-top: clamp(100px, 12vw, 160px); padding-bottom: clamp(100px, 12vw, 160px); }
.md-fondo-2 { background: var(--md-bg-2); }
.md-trampa { position: absolute !important; left: -9999px !important; height: 0; width: 0; opacity: 0; }
.screen-reader-text { position: absolute; left: -9999px; }
.screen-reader-text:focus { left: 10px; top: 10px; z-index: 99999; background: #fff; padding: 10px 14px; }
.md-header__nav li { list-style: none; }
.md-header__nav ul { display: contents; }
.md-icono-btn__num[hidden] { display: none; }
.md-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.md-hero__escenas:empty { display: none; }
body.admin-bar .md-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .md-header { top: 46px; } }

/* ---------- Páginas internas ---------- */
.md-interior main { padding-top: 110px; }
.md-pagina__in { max-width: 900px; padding-bottom: 100px; }
.md-pagina__titulo { --md-h-size: 64px; margin-bottom: 30px; }
.md-pagina__txt { font-size: 17px; line-height: 1.7; color: var(--md-ink-2); }
.md-pagina__txt h2, .md-pagina__txt h3 { font-weight: 500; letter-spacing: -.02em; color: var(--md-ink); }
.md-pagina__txt a { color: var(--md-agua-osc); }

/* ---------- WooCommerce general ---------- */
.md-wc { padding-bottom: 100px; }
.md-wc .woocommerce-breadcrumb { font-size: 13px; color: var(--md-gris); margin-bottom: 26px; }
.md-wc .woocommerce-breadcrumb a { color: var(--md-gris); }
.md-wc h1.page-title, .md-wc .product_title { font-weight: 500; letter-spacing: -.04em; line-height: 1; }
.md-wc h1.page-title { font-size: clamp(40px, 6vw, 72px); margin: 0 0 30px; }
.woocommerce .woocommerce-ordering select, .woocommerce select, .woocommerce input.input-text, .woocommerce textarea, .woocommerce-page .select2-container .select2-selection {
  padding: 12px 14px; border-radius: 12px; border: 1.5px solid var(--md-linea); background: #fff; font: 15px var(--md-sans); color: var(--md-ink);
}
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt, .wc-block-components-button:not(.is-link) {
  border-radius: 999px !important; background: var(--md-ink) !important; color: #fff !important; font: 500 15px/1 var(--md-sans) !important; padding: 16px 24px !important; border: 0 !important; transition: background .3s, color .3s;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .wc-block-components-button:not(.is-link):hover { background: var(--md-agua) !important; color: var(--md-ink) !important; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-radius: 14px; border-top: 0 !important; background: var(--md-bg-2) !important; color: var(--md-ink) !important; }
.woocommerce-message::before, .woocommerce-info::before { color: var(--md-agua-osc) !important; }
.woocommerce span.onsale { background: var(--md-agua); color: var(--md-ink); border-radius: 999px; min-height: 0; min-width: 0; padding: 6px 12px; line-height: 1.2; font-weight: 600; }
.woocommerce .price, .woocommerce .price ins { color: var(--md-ink) !important; font-family: var(--md-serif); }

/* ---------- Grilla de productos ---------- */
.woocommerce ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; }
.woocommerce ul.products li.product a img { border-radius: var(--md-radio); background: var(--md-bg-2); aspect-ratio: 1; object-fit: cover; margin-bottom: 14px; transition: transform 1s var(--md-ease); }
.woocommerce ul.products li.product a:hover img { transform: scale(1.03); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font: 500 20px/1.15 var(--md-sans) !important; letter-spacing: -.02em; padding: 0 !important; }
.woocommerce ul.products li.product .price { font-size: 22px !important; margin: 6px 0 14px; display: block; }
@media (max-width: 989px) { .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 549px) { .woocommerce ul.products { grid-template-columns: 1fr; } }

/* ---------- Ficha de producto ---------- */
.woocommerce div.product { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.woocommerce div.product div.images, .woocommerce div.product div.summary { width: auto !important; float: none !important; margin: 0 !important; }
.woocommerce div.product div.images img { border-radius: var(--md-radio); background: var(--md-bg-2); }
.woocommerce div.product div.images .flex-control-thumbs { display: flex; gap: 10px; margin-top: 12px; }
.woocommerce div.product div.images .flex-control-thumbs li { width: 84px !important; }
.woocommerce div.product div.images .flex-control-thumbs img { border-radius: 12px; opacity: .55; }
.woocommerce div.product div.images .flex-control-thumbs img.flex-active { opacity: 1; outline: 2px solid var(--md-agua-osc); }
.woocommerce div.product div.summary { position: sticky; top: 100px; }
.woocommerce div.product .product_title { font-size: clamp(36px, 4.6vw, 58px); margin-bottom: 14px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { font-size: 38px !important; margin-bottom: 18px; }
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--md-ink-2); line-height: 1.6; margin-bottom: 20px; }
.woocommerce div.product form.cart { display: block; margin-bottom: 14px; }
.woocommerce div.product form.cart table.variations { margin-bottom: 14px; border: 0; }
.woocommerce div.product form.cart table.variations th, .woocommerce div.product form.cart table.variations td { display: block; padding: 0 0 8px; text-align: left; border: 0; }
.woocommerce div.product form.cart table.variations label { font-weight: 600; font-size: 14px; }
.woocommerce div.product form.cart table.variations select { width: 100%; max-width: 360px; }
.woocommerce div.product form.cart .reset_variations { font-size: 13px; color: var(--md-gris); }
.woocommerce div.product .woocommerce-variation-price .price { font-size: 30px !important; }
.woocommerce div.product form.cart .quantity .qty { width: 80px; padding: 14px; border-radius: 999px; border: 1.5px solid var(--md-linea); text-align: center; }
.md-pp__grabado select { width: 100%; padding: 12px 14px; border-radius: 12px; border: 1.5px solid var(--md-linea); background: #fff; font: 15px var(--md-sans); margin-bottom: 14px; }
.md-pp__grabado { margin: 6px 0 18px; }
.md-pp__acciones { margin-top: 6px; }
.md-reserva .woocommerce div.product form.cart .quantity,
.md-reserva .woocommerce div.product form.cart .single_add_to_cart_button,
.md-reserva.woocommerce div.product form.cart .quantity,
.md-reserva.woocommerce div.product form.cart .single_add_to_cart_button { display: none !important; }
.woocommerce div.product .woocommerce-tabs { grid-column: 1 / -1; margin-top: 30px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 20px; border: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: 0; background: var(--md-bg-2); border-radius: 999px; margin: 0 6px 0 0; padding: 0 6px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: var(--md-ink); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #fff; }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 760px; color: var(--md-ink-2); line-height: 1.7; }
.woocommerce div.product .woocommerce-tabs .panel h2 { display: none; }
.woocommerce div.product .related, .woocommerce div.product .upsells { grid-column: 1 / -1; margin-top: 40px; }
.woocommerce div.product .related > h2 { font-weight: 500; letter-spacing: -.03em; font-size: 40px; margin-bottom: 24px; }
.woocommerce div.product .product_meta { display: none; }
@media (max-width: 989px) { .woocommerce div.product { grid-template-columns: 1fr; } .woocommerce div.product div.summary { position: static; } }

/* ---------- Carrito y pago (bloques) ---------- */
.wc-block-cart, .wc-block-checkout { font-family: var(--md-sans); }
.wc-block-components-totals-item__value, .wc-block-components-product-price { font-family: var(--md-serif); font-size: 1.1em; }
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { margin-top: 10px; }
