/* ==========================================================================
   Páginas: carrito, pago, cuenta, lista de deseos, textos legales, contacto, 404 (propuesta 3)
   Usa las variables de style.css.
   ========================================================================== */

/* ── Estructura común: contenido centrado, aire y título en la letra de invitación ───────────────────────────────── */
body.hv-pagina .site-content > .ast-container { display: block; max-width: 1180px; padding-left: 24px; padding-right: 24px; }
body.hv-pagina #primary { width: 100%; margin: 0; padding: 0; float: none; }
body.hv-pagina .ast-article-single, body.hv-pagina .ast-separate-container .ast-article-single { background: transparent; padding: 0; border: 0; }
body.hv-pagina .entry-header { margin: 28px 0 22px; text-align: left; }
body.hv-pagina .entry-title, body.hv-pagina h1.page-title {
    font-family: var(--hv-titulos); font-weight: 500; font-size: clamp(32px, 4vw, 46px); line-height: 1.08; color: var(--hv-tinta); margin: 0;
}
body.hv-pagina .entry-content { padding-bottom: 56px; }
body.hv-pagina .entry-content h2, body.hv-pagina .entry-content h3 { font-family: var(--hv-titulos); font-weight: 600; color: var(--hv-tinta); line-height: 1.15; }

/* Páginas de texto (preguntas frecuentes, aviso legal, condiciones…): columna de lectura cómoda */
body.hv-pagina:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) .entry-content { max-width: 800px; font-size: 16px; line-height: 1.75; color: #4F4540; }
body.hv-pagina .entry-content h2 { font-size: 30px; margin: 1.8em 0 .5em; }
body.hv-pagina .entry-content h3 { font-size: 23px; margin: 1.5em 0 .4em; }
body.hv-pagina .entry-content p { margin: 0 0 1em; }
body.hv-pagina .entry-content ul, body.hv-pagina .entry-content ol { margin: 0 0 1.2em 1.2em; }
body.hv-pagina .entry-content li { margin-bottom: .35em; }
body.hv-pagina .entry-content a { color: var(--hv-salvia); text-underline-offset: 3px; }
body.hv-pagina .entry-content a:hover { color: var(--hv-tinta); }
body.hv-pagina .entry-content blockquote { border-left: 2px solid var(--hv-rubor); margin: 1.4em 0; padding: .2em 0 .2em 1.1em; font-family: var(--hv-titulos); font-style: italic; font-size: 1.15em; }
body.hv-pagina .entry-content table { border-collapse: collapse; width: 100%; font-size: 14.5px; margin: 1.2em 0; }
body.hv-pagina .entry-content th, body.hv-pagina .entry-content td { border-bottom: 1px solid var(--hv-linea); padding: 10px 12px; text-align: left; }
body.hv-pagina .entry-content th { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--hv-tinta-suave); }

/* ── Formularios (pago, cuenta, contacto) ─────────────────────────────────────────────────────────────────────── */
html body .woocommerce form .form-row label, html body .wpcf7 label, html body .woocommerce-address-fields label {
    font-size: 13.5px; font-weight: 500; color: var(--hv-tinta); margin-bottom: 5px; line-height: 1.3;
}
html body .woocommerce form .form-row .required, html body .woocommerce form .form-row abbr.required { color: var(--hv-oferta); text-decoration: none; border: 0; }
html body .woocommerce form .form-row input.input-text, html body .woocommerce form .form-row textarea,
html body .woocommerce form .form-row select, html body .wpcf7 input[type=text], html body .wpcf7 input[type=email],
html body .wpcf7 input[type=tel], html body .wpcf7 textarea, html body.woocommerce-cart .coupon .input-text,
html body table.wishlist_table .product-quantity input {
    width: 100%; border: 1px solid var(--hv-linea); border-radius: 10px; background: #fff; padding: 11px 14px; min-height: 46px;
    font: 400 14.5px/1.4 'Montserrat', sans-serif; color: var(--hv-tinta); box-shadow: none; transition: border-color .15s ease, box-shadow .15s ease;
}
html body .woocommerce form .form-row textarea, html body .wpcf7 textarea { min-height: 120px; }
html body .woocommerce form .form-row input.input-text:focus, html body .woocommerce form .form-row textarea:focus, html body .wpcf7 input:focus, html body .wpcf7 textarea:focus {
    border-color: var(--hv-salvia); outline: 0; box-shadow: 0 0 0 3px rgba(94, 110, 90, .14);
}
html body .select2-container--default .select2-selection--single { height: 46px; border: 1px solid var(--hv-linea); border-radius: 10px; background: #fff; }
html body .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 44px; padding-left: 14px; color: var(--hv-tinta); font-size: 14.5px; }
html body .select2-container--default .select2-selection--single .select2-selection__arrow { height: 44px; }
html body .select2-dropdown { border-color: var(--hv-linea); border-radius: 10px; overflow: hidden; }
html body .select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--hv-salvia); }
input[type=checkbox], input[type=radio] { accent-color: var(--hv-salvia); }

/* Botones de las páginas: pastilla de salvia */
html body .woocommerce a.button, html body .woocommerce button.button, html body .woocommerce input.button, html body .woocommerce #respond input#submit,
html body .wpcf7 input[type=submit], html body .woocommerce .button.alt, html body .woocommerce #place_order {
    background: var(--hv-salvia) !important; color: #fff !important; border: 1px solid var(--hv-salvia); border-radius: 999px; padding: 0 28px;
    min-height: 48px; display: inline-flex; align-items: center; justify-content: center; font: 500 14px/1 'Montserrat', sans-serif; text-decoration: none; cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease;
}
html body .woocommerce a.button:hover, html body .woocommerce button.button:hover, html body .woocommerce input.button:hover, html body .wpcf7 input[type=submit]:hover,
html body .woocommerce #place_order:hover { background: var(--hv-tinta) !important; border-color: var(--hv-tinta); }
html body .woocommerce button.button:disabled, html body .woocommerce button.button[disabled], html body .woocommerce button[name=update_cart] { }
html body .woocommerce button[name=update_cart] { background: transparent !important; color: var(--hv-tinta) !important; border: 1px solid var(--hv-tinta); }
html body .woocommerce button[name=update_cart]:hover:not(:disabled) { background: var(--hv-tinta) !important; color: #fff !important; }
html body .woocommerce button[name=update_cart]:disabled { opacity: .45; cursor: default; }

/* Avisos */
html body .woocommerce-message, html body .woocommerce-info, html body .woocommerce-error, html body .woocommerce-notice {
    background: #fff; border: 1px solid var(--hv-linea); border-left: 3px solid var(--hv-salvia); border-radius: 10px; padding: 14px 18px; color: var(--hv-tinta);
    font-size: 14.5px; box-shadow: none; margin-bottom: 20px;
}
html body .woocommerce-error { border-left-color: var(--hv-oferta); }
html body .woocommerce-message::before, html body .woocommerce-info::before, html body .woocommerce-error::before { display: none; }
html body .woocommerce-message a.button { margin-left: 12px; min-height: 40px; }
html body .woocommerce-info a, html body .woocommerce-message a:not(.button) { color: var(--hv-salvia); font-weight: 600; }

/* ── Carrito ─────────────────────────────────────────────────────────────────────────────────────────────────── */
html body .woocommerce-cart-form table.shop_table, html body .woocommerce table.shop_table {
    border: 1px solid var(--hv-linea); border-radius: 14px; border-collapse: separate; border-spacing: 0; background: #fff; overflow: hidden; margin: 0 0 24px;
}
html body .woocommerce table.shop_table th {
    background: var(--hv-papel-2, #F5EEE4); font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; font-weight: 600; color: var(--hv-tinta-suave); padding: 14px 16px; border: 0;
}
html body .woocommerce table.shop_table td { border-top: 1px solid var(--hv-linea); padding: 16px; color: var(--hv-tinta); font-size: 14.5px; vertical-align: middle; background: transparent; }
html body .woocommerce table.shop_table tr:first-child td { border-top: 0; }
html body.woocommerce-cart table.cart img { width: 76px; border-radius: 10px; }
html body .woocommerce table.cart td.product-name a, html body .woocommerce-checkout-review-order-table td.product-name { font-family: var(--hv-titulos); font-size: 1.2rem; font-weight: 600; color: var(--hv-tinta); text-decoration: none; line-height: 1.2; }
html body .woocommerce table.cart td.product-name dl.variation { margin: 6px 0 0; font-size: 13px; color: var(--hv-tinta-suave); }
html body .woocommerce table.cart td.product-name dl.variation dt { font-weight: 600; float: left; margin-right: 4px; clear: left; }
html body .woocommerce table.cart td.product-name dl.variation dd, html body .woocommerce table.cart td.product-name dl.variation p { margin: 0; }
html body .woocommerce a.remove { width: 30px; height: 30px; line-height: 28px; border-radius: 50%; border: 1px solid var(--hv-linea); color: var(--hv-tinta-suave) !important; background: #fff; font-size: 18px; display: inline-flex; align-items: center; justify-content: center; }
html body .woocommerce a.remove:hover { background: var(--hv-oferta) !important; border-color: var(--hv-oferta); color: #fff !important; }
html body.woocommerce-cart table.cart td.actions { padding: 16px; background: transparent; }
html body.woocommerce-cart .coupon { display: inline-flex; gap: 8px; align-items: center; }
html body.woocommerce-cart .coupon .input-text { width: 180px; min-height: 46px; }
html body.woocommerce-cart .cart-collaterals { display: flex; justify-content: flex-end; }
html body.woocommerce-cart .cart-collaterals .cart_totals { width: min(100%, 440px); float: none; background: #fff; border: 1px solid var(--hv-linea); border-radius: 14px; padding: 22px 24px; }
html body .woocommerce .cart_totals h2 { font-family: var(--hv-titulos); font-size: 28px; font-weight: 600; margin: 0 0 12px; background: transparent; padding: 0; border: 0; }
html body .woocommerce .cart_totals table.shop_table { border: 0; border-radius: 0; margin: 0 0 14px; }
html body .woocommerce .cart_totals table.shop_table th { background: transparent; padding-left: 0; text-transform: none; letter-spacing: 0; font-size: 14px; color: var(--hv-tinta); font-weight: 500; }
html body .woocommerce .cart_totals table.shop_table td { padding-right: 0; }
html body .woocommerce .cart_totals .order-total th, html body .woocommerce .cart_totals .order-total td { font-weight: 600; font-size: 16px; }
html body .woocommerce ul#shipping_method { list-style: none; margin: 0; padding: 0; }
html body .woocommerce ul#shipping_method li { margin: 0 0 6px; }
html body .woocommerce ul#shipping_method li label { display: inline; font-weight: 400; font-size: 14px; }
html body .woocommerce .wc-proceed-to-checkout a.checkout-button { width: 100%; min-height: 52px; font-size: 15px; margin: 0; padding: 0 28px; }
html body .woocommerce .quantity .qty { border: 1px solid var(--hv-linea); border-radius: 999px; min-height: 42px; background: #fff; }
.woocommerce-cart .cart-empty, .woocommerce-cart .return-to-shop { text-align: center; }
.woocommerce-cart .cart-empty { font-family: var(--hv-titulos); font-size: 26px; margin: 40px 0 16px; }

/* ── Pago ────────────────────────────────────────────────────────────────────────────────────────────────────── */
html body.woocommerce-checkout h3, html body.woocommerce-checkout #order_review_heading, html body.woocommerce-account h2, html body.woocommerce-account h3 {
    font-family: var(--hv-titulos); font-size: 28px; font-weight: 600; color: var(--hv-tinta); margin: 0 0 14px; line-height: 1.15;
}
html body.woocommerce-checkout #customer_details { margin-bottom: 20px; }
html body.woocommerce-checkout #order_review { background: #fff; border: 1px solid var(--hv-linea); border-radius: 14px; padding: 22px 24px; }
html body.woocommerce-checkout #payment { background: transparent; border-radius: 0; }
html body.woocommerce-checkout #payment ul.payment_methods { border: 1px solid var(--hv-linea); border-radius: 12px; background: var(--hv-papel); padding: 6px 16px; margin-bottom: 14px; }
html body.woocommerce-checkout #payment ul.payment_methods li { border-bottom: 1px solid var(--hv-linea); padding: 12px 0; }
html body.woocommerce-checkout #payment ul.payment_methods li:last-child { border-bottom: 0; }
html body.woocommerce-checkout #payment div.payment_box { background: #fff; color: var(--hv-tinta-suave); border-radius: 8px; font-size: 13.5px; }
html body.woocommerce-checkout #payment div.payment_box::before { display: none; }
html body.woocommerce-checkout #place_order { width: 100%; min-height: 54px; font-size: 15px; float: none; }
html body .woocommerce-privacy-policy-text, html body .woocommerce-terms-and-conditions-wrapper { font-size: 13px; color: var(--hv-tinta-suave); }
html body .woocommerce-checkout-review-order-table th, html body .woocommerce-checkout-review-order-table td { padding: 12px 0 !important; }
html body .woocommerce-checkout-review-order-table tfoot th { font-weight: 500; text-transform: none; letter-spacing: 0; font-size: 14px; color: var(--hv-tinta); background: transparent; }

/* ── Mi cuenta (acceso y registro, panel) ────────────────────────────────────────────────────────────────────── */
html body.woocommerce-account .u-columns { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
html body.woocommerce-account .u-columns .u-column1, html body.woocommerce-account .u-columns .u-column2 { width: auto; float: none; background: #fff; border: 1px solid var(--hv-linea); border-radius: 14px; padding: 26px 28px; }
html body .woocommerce form.login, html body .woocommerce form.register, html body .woocommerce form.lost_reset_password { border: 0; padding: 0; margin: 0; border-radius: 0; }
html body.woocommerce-account .woocommerce-form-login__rememberme { font-size: 13.5px; }
html body.woocommerce-account .lost_password a { color: var(--hv-salvia); font-size: 13.5px; }
html body.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0 0 24px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
/* Astra 4.14 dibuja un recuadro cuadrado alrededor de cada pestaña; las pestañas ya son píldoras con su propio borde */
html body.woocommerce-account .woocommerce-MyAccount-navigation li, html body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child { border: 0; background: transparent; }
html body.woocommerce-account .woocommerce-MyAccount-navigation li a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--hv-linea); background: #fff; text-decoration: none; color: #4F4540; font-size: 14px; }
html body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: var(--hv-tinta); border-color: var(--hv-tinta); color: #fff; }
html body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { border-color: var(--hv-salvia); }
@media (min-width: 922px) { html body.woocommerce-account .woocommerce-MyAccount-navigation, html body.woocommerce-account .woocommerce-MyAccount-content { width: 100%; float: none; } }

/* ── Pedido recibido ─────────────────────────────────────────────────────────────────────────────────────────── */
html body .woocommerce ul.order_details { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; list-style: none; margin: 0 0 28px; padding: 0; }
html body .woocommerce ul.order_details li { border: 1px solid var(--hv-linea); border-radius: 12px; background: #fff; padding: 14px 16px; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--hv-tinta-suave); margin: 0; }
html body .woocommerce ul.order_details li strong { display: block; margin-top: 4px; font-size: 16px; letter-spacing: 0; text-transform: none; color: var(--hv-tinta); font-weight: 600; }
html body .woocommerce-order .woocommerce-notice--success { font-family: var(--hv-titulos); font-size: 26px; border: 0; background: transparent; padding: 0; margin: 0 0 22px; }

/* ── Lista de deseos ─────────────────────────────────────────────────────────────────────────────────────────── */
html body table.wishlist_table { border: 1px solid var(--hv-linea); border-radius: 14px; border-collapse: separate; border-spacing: 0; background: #fff; overflow: hidden; }
html body table.wishlist_table th { background: var(--hv-papel-2, #F5EEE4); font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--hv-tinta-suave); padding: 14px 16px; border: 0; }
html body table.wishlist_table td { border-top: 1px solid var(--hv-linea); padding: 14px 16px; vertical-align: middle; }
html body table.wishlist_table td.product-name a { font-family: var(--hv-titulos); font-size: 1.2rem; font-weight: 600; color: var(--hv-tinta); text-decoration: none; }
html body table.wishlist_table td.product-thumbnail img { width: 76px; border-radius: 10px; }
html body .yith-wcwl-share { display: none; }
html body .wishlist-title h2 { font-family: var(--hv-titulos); font-size: 28px; font-weight: 600; }

/* ── Contacto (hecho con Elementor) ──────────────────────────────────────────────────────────────────────────── */
html body.hv-pagina.page-id-980 .entry-content { max-width: none !important; padding-bottom: 40px; font-size: 15px; }
body.page-id-980 .elementor-widget-heading .elementor-heading-title, body.page-id-980 h2, body.page-id-980 h3 { font-family: var(--hv-titulos) !important; font-weight: 600 !important; color: var(--hv-tinta) !important; letter-spacing: 0; }
body.page-id-980 .elementor-widget-text-editor, body.page-id-980 .elementor-widget-text-editor p, body.page-id-980 .elementor-widget-text-editor a { font-family: 'Montserrat', sans-serif !important; font-size: 15px; line-height: 1.8; color: #4F4540; }
body.page-id-980 .elementor-widget-text-editor a { color: var(--hv-salvia); }
body.page-id-980 .elementor-widget-google_maps iframe { border-radius: 14px; filter: saturate(.8); }
body.page-id-980 .wpcf7 p { margin: 0 0 14px; }
body.page-id-980 .wpcf7-not-valid-tip { color: var(--hv-oferta); font-size: 12.5px; }
body.page-id-980 .wpcf7-response-output { border: 1px solid var(--hv-linea); border-left: 3px solid var(--hv-salvia); border-radius: 10px; font-size: 14px; }

/* ── 404 y búsquedas ─────────────────────────────────────────────────────────────────────────────────────────── */
body.error404 .page-content, body.search-no-results .page-content { text-align: center; padding: 30px 0 60px; }
body.error404 .page-title { text-align: center; }

/* ── Móvil ───────────────────────────────────────────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    body.hv-pagina .site-content > .ast-container { padding-left: 16px; padding-right: 16px; }
    html body.woocommerce-cart .coupon { display: flex; width: 100%; }
    html body.woocommerce-cart .coupon .input-text { flex: 1; width: auto; }
    html body.woocommerce-cart .cart-collaterals .cart_totals { width: 100%; padding: 18px; }
    html body.woocommerce-checkout #order_review { padding: 18px; }
    html body .woocommerce table.shop_table_responsive tr td::before { font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--hv-tinta-suave); font-weight: 600; }
}

/* Ajustes tras la primera revisión */
html body.woocommerce-cart .cart-collaterals .cart_totals > h2, html body.woocommerce-cart .cart-collaterals .cross-sells > h2 {
    background: transparent !important; padding: 0 !important; border: 0 !important; margin: 0 0 12px !important; font-size: 28px; line-height: 1.15;
}
html body.woocommerce-cart .cart-collaterals .cart_totals { padding: 22px 24px !important; }
html body .woocommerce .quantity { display: inline-flex; align-items: center; gap: 4px; }
html body .woocommerce .quantity .minus, html body .woocommerce .quantity .plus, html body .woocommerce .quantity button.ast-qty-btn {
    width: 34px; height: 34px; min-height: 0; padding: 0; border-radius: 50%; border: 1px solid var(--hv-linea) !important; background: #fff !important; color: var(--hv-tinta) !important;
    display: inline-flex; align-items: center; justify-content: center; font-size: 16px; line-height: 1; cursor: pointer;
}
html body .woocommerce .quantity .minus:hover, html body .woocommerce .quantity .plus:hover { border-color: var(--hv-salvia) !important; }
html body .woocommerce .quantity input.qty { width: 54px; min-height: 40px; text-align: center; border-radius: 999px; padding: 0; }

/* Pago: «Tu pedido» y su resumen forman una sola tarjeta */
html body.woocommerce-checkout #order_review_heading {
    background: #fff !important; border: 1px solid var(--hv-linea) !important; border-bottom: 0 !important; border-radius: 14px 14px 0 0 !important;
    margin: 0 !important; padding: 22px 24px 6px !important; font-size: 28px; line-height: 1.15;
}
html body.woocommerce-checkout #order_review { border-top: 0 !important; border-radius: 0 0 14px 14px !important; padding: 6px 24px 22px !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table { border: 0 !important; border-radius: 0 !important; margin: 0 0 14px; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th { background: transparent !important; padding-left: 0 !important; padding-right: 0 !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th, html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td { background: transparent !important; padding-left: 0 !important; padding-right: 0 !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name { font-size: 1.1rem; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th, html body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td { font-size: 17px; font-weight: 600; }
html body.woocommerce-checkout #ship-to-different-address, html body.woocommerce-checkout h3#ship-to-different-address label { font-family: 'Montserrat', sans-serif !important; font-size: 15px; font-weight: 500; }
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info, html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info { padding: 14px 18px; }
html body.woocommerce-checkout .woocommerce-form-coupon, html body.woocommerce-checkout form.woocommerce-form-login { background: #fff; border: 1px solid var(--hv-linea); border-radius: 12px; padding: 18px 20px; }
html body.woocommerce-account .u-columns::before, html body.woocommerce-account .u-columns::after { display: none; }
html body.woocommerce-account .u-columns h2 { margin-top: 0; }

/* Contacto: cabecera en verde salvia claro (en vez de la foto azul), y el formulario en una tarjeta blanca */
html body.page-id-980 .elementor-element-83ca12a {
    background-image: none !important; background-color: var(--hv-salvia-claro) !important; min-height: 190px !important; height: auto !important; border-radius: 14px; margin-bottom: 36px;
}
html body.page-id-980 .elementor-element-83ca12a .elementor-heading-title { font-size: clamp(34px, 5vw, 52px) !important; font-weight: 500 !important; }
html body.page-id-980 .elementor-element-dd6147f {
    background-color: #fff !important; border: 1px solid var(--hv-linea); border-radius: 14px; padding: 40px 28px; margin-top: 8px;
}
html body.page-id-980 .elementor-element-dd6147f .elementor-heading-title { font-size: 30px !important; }
html body.page-id-980 .wpcf7 input[type=submit] { width: auto; min-width: 180px; }
html body.page-id-980 .wpcf7-form-control-wrap input, html body.page-id-980 .wpcf7-form-control-wrap textarea { background: var(--hv-papel) !important; }

/* Textos largos (preguntas frecuentes, aviso legal, condiciones): se ignora el formato antiguo metido en el texto */
body.hv-pagina .entry-content p, body.hv-pagina .entry-content li, body.hv-pagina .entry-content div { text-align: left !important; }
body.hv-pagina .entry-content [style*="font-family"] { font-family: inherit !important; }
body.hv-pagina .entry-content h4, body.hv-pagina .entry-content h5, body.hv-pagina .entry-content h6 {
    font-family: var(--hv-titulos); font-weight: 600; font-size: 1.35rem; line-height: 1.25; letter-spacing: 0; text-transform: none; color: var(--hv-tinta); margin: 1.5em 0 .3em;
}
body.hv-pagina .entry-content strong, body.hv-pagina .entry-content b { font-weight: 600; color: var(--hv-tinta); }
body.hv-pagina .entry-content hr { border: 0; border-top: 1px solid var(--hv-linea); margin: 2em 0; }
body.hv-pagina .entry-content img { border-radius: 12px; height: auto; }

/* Lista de deseos: ancho completo y botón como el resto */
html body table.wishlist_table { width: 100%; }
html body table.wishlist_table a.button, html body table.wishlist_table .add_to_cart_button {
    background: var(--hv-salvia) !important; color: #fff !important; border: 1px solid var(--hv-salvia); border-radius: 999px; padding: 0 22px; min-height: 42px; display: inline-flex; align-items: center; font: 500 13.5px/1 'Montserrat', sans-serif; text-decoration: none;
}
html body table.wishlist_table a.button:hover { background: var(--hv-tinta) !important; border-color: var(--hv-tinta); }
html body table.wishlist_table .remove_from_wishlist { color: var(--hv-tinta-suave) !important; }
html body .wishlist-title { margin: 0 0 14px; }

/* Contacto: mapa con la tarjeta de HAYLOVIU */
.hv-mapa { position: relative; border-radius: 14px; overflow: hidden; border: 1px solid var(--hv-linea); background: var(--hv-papel-2, #F5EEE4); }
.hv-mapa iframe { display: block; width: 100%; height: 420px; border: 0; filter: saturate(.8) sepia(.12); }
.hv-mapa__tarjeta { position: absolute; top: 16px; left: 16px; max-width: 290px; background: #fff; border-radius: 12px; padding: 14px 18px 12px; box-shadow: 0 8px 24px -8px rgba(58, 47, 42, .35); display: grid; gap: 3px; font-size: 13.5px; line-height: 1.45; color: #4F4540; }
.hv-mapa__tarjeta b { font-family: var(--hv-titulos); font-size: 22px; font-weight: 600; color: var(--hv-tinta); line-height: 1.1; }
.hv-mapa__tarjeta a { margin-top: 6px; display: inline-flex; align-items: center; min-height: 36px; color: var(--hv-salvia); font-weight: 600; text-decoration: none; }
.hv-mapa__tarjeta a:hover { color: var(--hv-tinta); }
@media (max-width: 600px) { .hv-mapa iframe { height: 340px; } .hv-mapa__tarjeta { position: static; max-width: none; border-radius: 0; box-shadow: none; border-top: 1px solid var(--hv-linea); } }
.hv-mapa__tarjeta .hv-mapa__donde { white-space: nowrap; font-size: 12.5px; color: var(--hv-tinta-suave); font-style: italic; margin-bottom: 4px; }

/* Página de «gracias»: qué pasa ahora */
.hv-siguiente { margin: 28px 0; padding: 22px 26px; background: var(--hv-salvia-claro, #E5EBE1); border-radius: 14px; }
.hv-siguiente h2 { display: flex; align-items: center; gap: 10px; margin: 0 0 12px; font: 600 24px/1.1 var(--hv-titulos, 'Cormorant Infant', Georgia, serif); }
.hv-siguiente ul { margin: 0; padding-left: 20px; }
.hv-siguiente li { margin: 0 0 8px; color: var(--hv-tinta); }
.hv-siguiente a { color: var(--hv-salvia); font-weight: 600; }
.hv-siguiente__nota { margin: 12px 0 0; font-size: 13px; color: var(--hv-tinta-suave, #7A6B63); }
