/* Aspecto telaslacave: ajustes para que The7 12 + WooCommerce 11 se vean EXACTAMENTE como en produccion (The7 9 + WC 4.3.6).
   Cada bloque corrige una diferencia medida (ver centrodieteticoviquez/tools/6-linea-base/visual). Se carga al final del <head>. */

/* Cabecera: importe del carrito 15px (The7 12 lo pone a 19px) */
.masthead .wc-ico-cart,
.masthead .wc-ico-cart .woocommerce-Price-amount,
.masthead .wc-ico-cart .woocommerce-Price-currencySymbol { font-size: 15px; line-height: 15px; }

/* Pie: separacion inferior de listas y textos de los widgets (The7 7 dejaba 10px) */
#footer .widget ul.custom-menu { padding-bottom: 10px; }
#footer .widget .textwidget.custom-html-widget,
#footer .widget p.mail-footer { margin-bottom: 10px; }

/* ===== Listados de productos (categoria, ofertas, relacionados) ===== */
.woocommerce .switcher-wrap, .switcher-wrap { margin-bottom: 40px; }
figure.woocom-project .woo-buttons-on-img { margin-bottom: 20px !important; }
.woocom-list-content .woo-buttons { padding-top: 3px; margin-bottom: 15px; }
.woocom-list-content h4.entry-title { padding-top: 0 !important; }
.woocom-list-content h4.entry-title a { display: inline-block; }
.woocom-list-content span.price { margin-top: 0 !important; }
.dt-css-grid .wf-cell.visible { display: block; }
.woocommerce span.out-stock-label, span.out-stock-label { background: rgba(0,0,0,.65) !important; text-transform: uppercase !important; padding: 20px 25px !important; box-shadow: 0 0 0 1px rgba(255,255,255,.15) !important; }

/* ===== Barra lateral WooCommerce (categorias, filtro de precio) ===== */

/* ===== Paginacion de tienda ===== */

/* ===== Listas en textos (el pie de linea con icono FontAwesome era 1px mas alto) ===== */

/* ===== Home: modulos (Ultimate Addons 3.x anade margen inferior) ===== */
.fila-modulos-home .aio-icon-component { margin-bottom: 0 !important; }

/* ===== Mi cuenta: formularios de acceso / registro ===== */
#customer_login .u-column1, #customer_login .u-column2 { display: flex; flex-direction: column; align-items: flex-start; }
@media (min-width: 971px) {
	#customer_login .u-column1, #customer_login .u-column2 { width: calc(50% - 25px) !important; }
	#customer_login .u-column2 { margin-left: 50px !important; }
}
@media (max-width: 970px) {
	#customer_login { flex-direction: column; }
	#customer_login .u-column1, #customer_login .u-column2 { width: auto !important; float: none; margin-left: 16.5% !important; margin-right: 16.5% !important; }
	#customer_login .u-column2 { margin-top: 60px !important; }
}
@media (max-width: 600px) {
	#customer_login .u-column1, #customer_login .u-column2 { margin-left: 0 !important; margin-right: 0 !important; }
}
#customer_login form.woocommerce-form { width: 100%; }
.woocommerce-account .woocommerce-form-row label, .woocommerce-account form.woocommerce-form label { font-size: 14px; font-weight: 700; line-height: 24px; text-transform: uppercase; margin-bottom: 5px; }
.woocommerce-account .woocommerce-form-row .woocommerce-Input, .woocommerce-account .woocommerce-form-row input.input-text { margin-bottom: 0 !important; }
.woocommerce-account .woocommerce-privacy-policy-text, .woocommerce-account .woocommerce-privacy-policy-text p { font-size: 14px; line-height: 24px; }
.woocommerce-account #customer_login label, .woocommerce-account #customer_login label .required { font-size: 14px !important; line-height: 24px !important; }
.woocommerce-account #customer_login input.woocommerce-Input { display: inline-block !important; }
.woocommerce-account #customer_login form.login p.form-row:not(.woocommerce-form-row) { display: inline-block; }
.woocommerce-account #customer_login label.woocommerce-form__label-for-checkbox { display: inline-block; margin-left: 20px; }
.woocommerce-account form.woocommerce-form-login > p.form-row:not(.woocommerce-form-row) { display: inline-block !important; width: auto !important; }
.woocommerce-account form.woocommerce-form-login p.woocommerce-LostPassword { display: inline-block !important; font-size: 14px !important; line-height: 16px !important; margin: 22px 0 10px !important; }
.woocommerce-account form.woocommerce-form-login p.woocommerce-LostPassword a { font-size: 14px !important; line-height: 16px !important; color: rgb(102,102,102) !important; }
.woocommerce-account #customer_login input.woocommerce-Input { display: inline-block !important; }
.woocommerce-account form.woocommerce-form-login .woocommerce-form-login__submit, .woocommerce-account form.woocommerce-form-login label.woocommerce-form__label-for-checkbox, .woocommerce-account form.woocommerce-form-login p.woocommerce-LostPassword { vertical-align: top; }
.woocommerce-account form.woocommerce-form-login .woocommerce-form-login__submit { display: inline-block; }
.woocommerce-account form.woocommerce-form-login button.woocommerce-form-login__submit { height: 40px !important; min-height: 0 !important; }
.woocommerce-account #customer_login p.form-row:not(.woocommerce-form-row):not(.terms) { display: inline-block !important; width: auto !important; }
.woocommerce-account #customer_login button.woocommerce-Button { height: 40px !important; min-height: 0 !important; line-height: 40px !important; padding-top: 0 !important; padding-bottom: 0 !important; }


/* ===== Insignia de oferta en productos relacionados (el original usaba el icono de fuente dt-icon-the7-magn-004-12) ===== */
.related-product span.onsale::before { content: "\ea16" !important; font-family: "icomoon-the7-font" !important; font-style: normal; background: none !important; -webkit-mask: none !important; mask: none !important; width: auto !important; height: auto !important; display: inline !important; color: #fff; font-size: 20px; line-height: 19px; }

/* ===== Placeholders: opacidad 1 como en el original ===== */
input::placeholder, textarea::placeholder { opacity: 1 !important; }
input::placeholder, textarea::placeholder { color: rgba(102,102,102,.5); }
input.searchform-s::placeholder { color: rgb(102,102,102) !important; }

/* ===== Slider de portada (Slider Revolution 6: capas con borde transparente de 3px y peso distinto) ===== */
rs-layer { border-width: 0 !important; }
rs-layer#slider-1-slide-1-layer-3 { font-weight: 400 !important; }

/* ===== Banner de cookies (Cookie Notice 3.x con los botones de The7; el original 1.3.2 los dejaba como texto) ===== */
#cookie-notice .cn-button.button { padding: 8.5px 10px !important; font-size: 16px !important; line-height: 16px !important; letter-spacing: .25px !important; border: 0 none rgb(255,255,255) !important; box-shadow: none !important; }
#cookie-notice .cn-button.button::after { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: transparent; }
#cookie-notice #cn-close-notice { color: rgb(94,33,41); font: 13px/20px -apple-system, "system-ui", Arial, Roboto, "Helvetica Neue", sans-serif; text-decoration: underline; }
#cookie-notice #cn-close-notice::before, #cookie-notice #cn-close-notice::after { background-color: #fff !important; }

/* ===== Mini carrito desplegable ===== */
.shopping-cart-wrap { top: 34px !important; right: 0 !important; }
.shopping-cart-wrap .shopping-cart-inner { padding: 15px 20px 10px !important; }
.shopping-cart-inner ul.cart_list { margin: 0 0 5px !important; }
.shopping-cart-inner p.buttons.top-position { margin: 0 0 10px !important; }

/* ===== Aviso "anadido al carrito" en la ficha: el original lo ocultaba y desplegaba el mini carrito ===== */
.single-product .woocommerce-message { display: none !important; }

/* ===== Mini carrito con productos (marcado y estilos de The7 7.9) ===== */
.shopping-cart-inner::before { left: 270px !important; right: 20px !important; }
.shopping-cart-wrap ul.cart_list li { display: block !important; padding: 0 !important; position: relative; }
.shopping-cart-wrap ul.cart_list li > a:not(.remove) { display: block !important; width: auto !important; height: auto !important; }
.shopping-cart-wrap ul.cart_list li img { float: left; margin: 5px 20px 5px 0 !important; }
.shopping-cart-wrap ul.cart_list li a.remove { position: absolute !important; top: 5px !important; left: 0 !important; width: 20px !important; height: 20px !important; margin: 0 !important; font: 400 20px/20px Poppins, Helvetica, Arial, Verdana, sans-serif !important; color: rgb(94,33,41) !important; background: transparent !important; z-index: 2; }
.shopping-cart-wrap ul.cart_list li .quantity { display: block !important; width: auto !important; font-size: 14px !important; font-weight: 700 !important; line-height: 24px !important; color: rgba(102,102,102,.5) !important; }
.shopping-cart-wrap .shopping-cart-bottom p.total { margin: 0 0 20px !important; }
.shopping-cart-wrap .shopping-cart-bottom p.buttons { margin: 0 0 10px !important; overflow: visible !important; height: auto; }
.shopping-cart-wrap .shopping-cart-bottom p.buttons a.button { float: left; margin: 0 10px 15px 0 !important; box-shadow: none !important; }
.shopping-cart-inner ul.cart_list:not(.empty) { margin-bottom: 15px !important; }
.shopping-cart-wrap ul.cart_list li a.remove { font-weight: 700 !important; }

/* ===== Botones: The7 12 los hace inline-flex (texto a la izquierda si el boton es mas ancho); el original era inline-block con texto centrado ===== */
a.button, button.button, input.button, .btn-shortcode, .dt-btn, input[type="submit"], a.added_to_cart, .woo-buttons a, .woocom-list-content .woo-buttons a { justify-content: center; }

/* ===== Precio: WooCommerce 11 mete el importe en <bdi> con color propio; el hover rojo del original coloreaba el importe entero ===== */
.woocommerce-Price-amount bdi, .price .woocommerce-Price-amount bdi { color: inherit !important; }

/* ===== Cesta con productos (plantilla cart.php de The7 7.9 en el hijo; estilos de The7 7.9) ===== */
.woocommerce-cart-wrap .woocommerce-cart-form .shop_table_responsive, .woocommerce-cart-wrap .woocommerce-cart-form table.shop_table { width: 100% !important; }
@media (max-width: 970px) {
	.woocommerce-cart-wrap .woocommerce-cart-form { width: 100% !important; }
}
@media (min-width: 971px) {
	.woocommerce-cart-wrap .woocommerce-cart-form { width: calc(100% - 30% - 50px); }
	.woocommerce-cart-wrap .cart-collaterals { margin-left: 50px; }
}
.woocommerce-cart-form table.shop_table thead th { font-size: 14px !important; line-height: 24px !important; text-transform: uppercase !important; font-weight: 400 !important; padding: 0 0 10px !important; text-align: left !important; }
.woocommerce-cart-form table.shop_table td { padding: 25px 10px !important; }
.woocommerce-cart-form td.product-name, .woocommerce-cart-form td.product-name a, .woocommerce-cart-form td.product-subtotal, .woocommerce-cart-form td.product-subtotal .amount, .woocommerce-cart-form td.product-subtotal .woocommerce-Price-currencySymbol { font-weight: 700; }
.woocommerce-cart-form .quantity { display: inline-flex; margin: 0; height: 40px; float: none; font-weight: 700; box-shadow: none; }
.woocommerce-cart-form .quantity input.qty { height: 40px; }
.woocommerce-cart-form td.product-remove a.remove { display: block; width: auto; height: auto; font-size: 16px; line-height: 30px; color: rgba(51,51,51,.2); background: transparent; border-radius: 0; text-align: left; }
.cart_totals .woocommerce-shipping-methods label { font-weight: 700; }
.cart_totals .woocommerce-shipping-methods label .amount, .cart_totals .woocommerce-shipping-methods label .woocommerce-Price-currencySymbol { font-weight: 700; }
.cart_totals tr.cart-subtotal td .amount, .cart_totals tr.cart-subtotal td .woocommerce-Price-currencySymbol { font-weight: 700; }
.cart_totals strong { color: rgb(51,51,51); }

.quantity input.minus.button, .quantity input.plus.button { display: block; width: 20px; height: 40px; font: 400 16px/30px Arial, sans-serif; color: rgba(102,102,102,.5); background: #fff; border: 1px solid rgba(204,204,204,.5); border-radius: 0; padding: 3px 0 7px; margin: 0; box-shadow: none; text-align: center; position: relative; }
.quantity input.plus.button { padding: 5px 0; }
.woocommerce-cart-form .coupon { position: relative; display: flex; padding: 0 10px 10px 0; }
.woocommerce-cart-form .coupon::before { content: "\ea05"; font-family: "icomoon-the7-font"; font-size: 14px; line-height: 40px; color: rgba(102,102,102,.5); position: absolute; top: 0; left: 15px; width: 14px; height: 40px; display: block; }
.woocommerce-cart-form .wc-coupon-field { display: flex; padding: 0 10px 10px 0; }
.woocommerce-cart-form input.wc-coupon-input { height: 40px; width: 200px; margin: 0 10px 0 0; padding: 5px 15px 5px 35px; }
.woocommerce-cart-form .update-cart-button { display: flex; }
.woocommerce-cart-form .update-cart-button input[type="submit"] { font-weight: 700; }
.woocommerce-cart-form .quantity input.qty { width: 40px !important; }
.woocommerce-cart-form .wc-coupon-field { padding: 0 !important; display: block !important; }
.woocommerce-cart-form input.wc-coupon-input { margin: 0 10px 0 0 !important; height: 40px !important; }
.woocommerce-cart-form .update-cart-button input[type="submit"] { display: block; }
.woocommerce-cart-form thead th.product-price, .woocommerce-cart-form thead th.product-quantity { text-align: center !important; }
.woocommerce-cart-form thead th.product-subtotal { text-align: right !important; }
.woocommerce-cart-form .quantity input.qty { font-weight: 700 !important; }
.woocommerce-cart-form .coupon::before { color: rgba(102,102,102,.5) !important; line-height: 40px; height: 40px; }
.woocommerce-cart-form .update-cart-button i, .woocommerce-cart-form .update-cart-button i::before { color: rgba(51,51,51,.25) !important; }
.woocommerce-cart-form td.product-remove a.remove i, .woocommerce-cart-form td.product-remove a.remove i::before { color: rgba(51,51,51,.2) !important; }
.woocommerce-cart-form .coupon { height: 50px; }

/* ===== Iconos de la cesta: fuente de iconos de The7 7.9 (la de The7 12 cambia algunos glifos) ===== */
@font-face { font-family: "icomoon-the7-font-79"; src: url("../fonts/icomoon-the7-font-79.woff") format("woff"); font-weight: normal; font-style: normal; }
.woocommerce-cart-form .coupon::before, .woocommerce-cart-form a.remove i::before, .woocommerce-cart-form .update-cart-button i::before { font-family: "icomoon-the7-font-79" !important; }
.woocommerce-cart-form .update-cart-button::before { display: none !important; }
.woocommerce-cart-form .quantity input.qty { padding: 0 !important; text-align: center; }
.woocommerce-cart-wrap a.remove { -webkit-mask: none !important; mask: none !important; background: transparent !important; }
.woocommerce-cart-form .coupon::before { z-index: 2; }
.woocommerce-cart-form input.wc-coupon-input { display: block !important; }
.woocommerce-cart-form table.shop_table thead th.product-price, .woocommerce-cart-form table.shop_table thead th.product-quantity { text-align: center !important; }
.woocommerce-cart-form table.shop_table thead th.product-subtotal { text-align: right !important; }
.woocommerce-cart-form .wc-coupon-field label { display: none; }
.woocommerce-cart-form .update-cart-button i { padding-right: 5px; }
.woocommerce-cart-form table.shop_table thead th.product-remove { position: relative; }
.woocommerce-cart-form table.shop_table thead th.product-remove::before { content: "Producto"; position: absolute; left: .8px; top: 0; white-space: nowrap; }
.woocommerce-cart-form table.shop_table thead th.product-name { color: transparent !important; }
.woocommerce-cart-form .coupon button.wc-cart-button { padding: 0 44px !important; line-height: 40px !important; height: 40px !important; }
@media (max-width: 970px) {
	.woocommerce-cart-form .coupon { padding-bottom: 50px; height: auto; }
	.woocommerce-cart-form table.shop_table thead th.product-remove::before { left: -1.7px; }
}
@media (max-width: 600px) {
	.woocommerce-cart-form .coupon::before { top: 15px; z-index: 10; }
	.woocommerce-cart-form tr.cart_item, .woocommerce-cart-form tr:not(.cart_item) { padding-top: 25px; padding-bottom: 25px; }
	.woocommerce-cart-form td.product-name a { padding: 0 !important; text-align: start !important; }
}
.cart_totals .shipping-calculator-button { font-weight: 400; }

/* ===== telaslacave: ajustes especificos ===== */
.mini-widgets i, .mini-widgets .mw-icon, .mini-widgets a.wc-ico-cart { line-height: 16px; }
.woocom-list-content h4.entry-title { margin: 0 0 5px !important; }
.woocom-list-content span.price { margin: 0 0 12px !important; }
.products-shortcode .woocom-list-content span.price { margin-bottom: 10px !important; }
.mini-widgets a.wc-ico-cart { font-size: 14px; }
.mini-contacts i.fa-fw, .mini-widgets i.fa-fw { width: auto; text-align: start; margin-right: 5px; }
.mini-widgets .wc-shopping-cart a.wc-ico-cart { font-size: 14px !important; line-height: 16px !important; }

.woocommerce-product-search { margin-bottom: 5px; }
.woocommerce-product-search input.search-field { font-family: Arial, sans-serif; font-weight: 400; line-height: normal; }
.woocommerce-product-search button, .widget_product_search form button { color: rgba(139,141,148,.5) !important; }
.widget_price_filter .price_slider_wrapper { margin-bottom: 10px; }
.widget_price_filter .price_slider_amount button.button { display: block; }
.woocommerce-pagination.paginator a.page-numbers, .woocommerce-pagination.paginator .dots { font-weight: 700; }
.woocommerce-pagination.paginator .nav-prev, .woocommerce-pagination.paginator .nav-next { padding: 0 !important; font-size: 16px !important; line-height: 18px !important; font-weight: 700 !important; }
.wc-shopping-cart a.wc-ico-cart, .wc-shopping-cart a.wc-ico-cart i { line-height: 16px !important; }

/* ===== Ficha de producto (telaslacave) ===== */
@media (min-width: 971px) {
	.product div.images { margin-right: 50px; }
}
/* Botones de compartir: colores y iconos de la fuente 7.9 como el original */
.single-share-box .share-buttons a { display: block; }
.single-share-box .share-buttons a svg, .single-share-box .share-buttons a .soc-font-icon, .single-share-box .share-buttons a .social-text { display: none !important; }
.single-share-box .share-buttons a::before { font-family: "icomoon-the7-font-79"; font-style: normal; font-weight: 400; font-size: 16px; line-height: 30px; font-variant: normal; speak: none; }
.single-share-box .share-buttons a.facebook::before { content: "\f106"; color: rgb(76,105,199); }
.single-share-box .share-buttons a.twitter::before { content: "\f127"; color: rgb(42,190,235); }
.single-share-box .share-buttons a.pinterest::before { content: "\f115"; color: rgb(207,40,52); }
.single-share-box .share-buttons a.linkedin::before { content: "\f113"; color: rgb(0,123,199); }
.single-share-box .share-buttons a.whatsapp::before { content: "\f132"; color: rgb(54,183,77); }
@media (min-width: 971px) {
	.product div.summary { width: calc(50% - 0.4px); }
}
/* Variaciones: etiqueta como celda de bloque (original: td.label) */
.woocommerce div.product form.variations_form table.variations th.label { display: block; padding: 0; margin-bottom: 5px; line-height: 24px; color: rgb(94,33,41); }
/* Cantidad + boton */
.woocommerce div.product form.cart div.quantity.woopq-quantity { margin-right: 15px; border: 0; height: 62px; }
.woopq-quantity-input { height: 42px; }
.woocommerce div.product form.cart .single_add_to_cart_button { padding-top: 0; padding-bottom: 0; margin-left: 0; height: auto; line-height: 40px; }
.woocommerce div.product form.cart .reset_variations { line-height: 24px; }
.single-share-box .share-buttons a.facebook { color: rgb(76,105,199); }
.single-share-box .share-buttons a.twitter { color: rgb(42,190,235); }
.single-share-box .share-buttons a.pinterest { color: rgb(207,40,52); }
.single-share-box .share-buttons a.linkedin { color: rgb(0,123,199); }
.single-share-box .share-buttons a.whatsapp { color: rgb(54,183,77); }
/* Productos relacionados */
.related.products > h2, .upsells.products > h2 { padding-bottom: 10px; }
.related-product .product-title, .upsells .product-title { font-family: Poppins, Helvetica, Arial, Verdana, sans-serif; font-size: 16px; font-weight: 700; line-height: 26px; margin-bottom: 5px; }
.related-product .price, .upsells .price { margin-top: 0; margin-bottom: 10px; }
.related-product .woo-buttons, .upsells .woo-buttons { padding-top: 3px; margin-bottom: 15px; }
/* Boton de envio CF7: 40px como el original */
html body input.wpcf7-form-control.wpcf7-submit { padding: 0 32px !important; line-height: 40px !important; display: inline-block !important; }

/* Mi cuenta: formularios como el original (WC 4.3) */
.woocommerce form .show-password-input, .woocommerce-page form .show-password-input { display: none !important; }
.woocommerce form .password-input { display: inline !important; position: static !important; }
.woocommerce form .password-input input { display: inline-block !important; }
.woocommerce form.woocommerce-form-login input#username { margin-bottom: 10px !important; }
.woocommerce form.woocommerce-form-login .woocommerce-Button, .woocommerce form.woocommerce-form-register .woocommerce-Button { font-weight: 700 !important; }
.woocommerce-account form.woocommerce-form-login p.woocommerce-LostPassword { display: block !important; float: right; margin-left: 0 !important; }
.woocommerce-account form.woocommerce-form-register p.woocommerce-form-row.form-row:not(.woocommerce-form-row--wide) { display: inline-block !important; width: auto !important; }
/* H1 en tablet/movil: el original bajaba tambien el interlineado a 36px */
@media screen and (max-width: 1199px) { :root { --the7-h1-line-height: 36px; } }
a.btn-shortcode.dt-btn-s { display: inline-block; }
a.btn-shortcode.dt-btn-s > span { display: inline; }
p.cart-empty.woocommerce-info { font-weight: 700; }
body .masthead a.wc-ico-cart.text-disable { font-size: 14px !important; line-height: 16px !important; }
/* Resultados de busqueda: margenes de titulo y precio del original */
body.search-results .woocom-list-content h4.entry-title { margin: 0 0 10px !important; }
body.search-results .woocom-list-content span.price { margin: 0 0 10px !important; }
body.search-results .woocom-list-content .woocommerce-product-details__short-description { margin: 0 0 15px !important; padding: 0 !important; }
body.search-results .paginator a.page-numbers, body.search-results .paginator .dots { font-weight: 700; }
body.search-results .paginator .nav-prev, body.search-results .paginator .nav-next { padding: 0 !important; font-size: 16px !important; line-height: 18px !important; font-weight: 700 !important; }

/* ===== Finalizar compra (reglas de The7 9 que The7 12 no trae) ===== */
form.woocommerce-checkout #customer_details label, form.woocommerce-checkout #shipping_method label, form.woocommerce-checkout .payment_methods label, .showcoupon-tag, .showcoupon, .showlogin-tag, .showlogin { font-weight: 700; }
form.woocommerce-checkout .form-row label { text-transform: uppercase; font-size: 14px; line-height: 24px; }
form.woocommerce-checkout .form-row.terms label { font-size: 14px; line-height: 24px; }
.showcoupon-tag, .showlogin-tag, #ship-to-different-address { font-size: 16px; line-height: 26px; color: #5e2129; }
.showcoupon, .showlogin { font-size: 16px; line-height: 26px; color: #5e2129; text-decoration: none; }
.showcoupon-tag, .showlogin-tag { display: inline-block; margin-right: 10px; text-transform: uppercase; }
.showcoupon-tag i, .showlogin-tag i { margin: 2px 5px 0 0; color: #5e2129; }
.wc-coupon-wrap .woocommerce-info, .wc-login-wrap .woocommerce-info { display: flex; align-items: center; justify-content: center; text-align: center; }
.form-row.create-account label.checkbox span:before { display: inline-block; margin: 0 5px; font-family: 'icomoon-the7-font'; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; font-size: inherit; line-height: 1; content: "\e504"; }
