 @font-face {
    font-family: 'Caladea-Bold';
    src: url('../fonts/Caladea-Bold.eot');
    src: url('../fonts/Caladea-Bold.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Caladea-Bold.svg#Caladea-Bold') format('svg'),
         url('../fonts/Caladea-Bold.ttf') format('truetype'),
         url('../fonts/Caladea-Bold.woff') format('woff'),
         url('../fonts/Caladea-Bold.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Caladea-BoldItalic';
    src: url('../fonts/Caladea-BoldItalic.eot');
    src: url('../fonts/Caladea-BoldItalic.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Caladea-BoldItalic.svg#Caladea-BoldItalic') format('svg'),
         url('../fonts/Caladea-BoldItalic.ttf') format('truetype'),
         url('../fonts/Caladea-BoldItalic.woff') format('woff'),
         url('../fonts/Caladea-BoldItalic.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Caladea-Italic';
    src: url('../fonts/Caladea-Italic.eot');
    src: url('../fonts/Caladea-Italic.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Caladea-Italic.svg#Caladea-Italic') format('svg'),
         url('../fonts/Caladea-Italic.ttf') format('truetype'),
         url('../fonts/Caladea-Italic.woff') format('woff'),
         url('../fonts/Caladea-Italic.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Caladea-Regular';
    src: url('../fonts/Caladea-Regular.eot');
    src: url('../fonts/Caladea-Regular.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Caladea-Regular.svg#Caladea-Regular') format('svg'),
         url('../fonts/Caladea-Regular.ttf') format('truetype'),
         url('../fonts/Caladea-Regular.woff') format('woff'),
         url('../fonts/Caladea-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Inter-Bold';
    src: url('../fonts/Inter-Bold.eot');
    src: url('../fonts/Inter-Bold.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Inter-Bold.svg#Inter-Bold') format('svg'),
         url('../fonts/Inter-Bold.ttf') format('truetype'),
         url('../fonts/Inter-Bold.woff') format('woff'),
         url('../fonts/Inter-Bold.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Inter-BoldItalic';
    src: url('../fonts/Inter-BoldItalic.eot');
    src: url('../fonts/Inter-BoldItalic.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Inter-BoldItalic.svg#Inter-BoldItalic') format('svg'),
         url('../fonts/Inter-BoldItalic.ttf') format('truetype'),
         url('../fonts/Inter-BoldItalic.woff') format('woff'),
         url('../fonts/Inter-BoldItalic.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Inter-Italic';
    src: url('../fonts/Inter-Italic.eot');
    src: url('../fonts/Inter-Italic.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Inter-Italic.svg#Inter-Italic') format('svg'),
         url('../fonts/Inter-Italic.ttf') format('truetype'),
         url('../fonts/Inter-Italic.woff') format('woff'),
         url('../fonts/Inter-Italic.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Inter-Medium';
    src: url('../fonts/Inter-Medium.eot');
    src: url('../fonts/Inter-Medium.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Inter-Medium.svg#Inter-Medium') format('svg'),
         url('../fonts/Inter-Medium.ttf') format('truetype'),
         url('../fonts/Inter-Medium.woff') format('woff'),
         url('../fonts/Inter-Medium.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Inter-MediumItalic';
    src: url('../fonts/Inter-MediumItalic.eot');
    src: url('../fonts/Inter-MediumItalic.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Inter-MediumItalic.svg#Inter-MediumItalic') format('svg'),
         url('../fonts/Inter-MediumItalic.ttf') format('truetype'),
         url('../fonts/Inter-MediumItalic.woff') format('woff'),
         url('../fonts/Inter-MediumItalic.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Inter-Regular';
    src: url('../fonts/Inter-Regular.eot');
    src: url('../fonts/Inter-Regular.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Inter-Regular.svg#Inter-Regular') format('svg'),
         url('../fonts/Inter-Regular.ttf') format('truetype'),
         url('../fonts/Inter-Regular.woff') format('woff'),
         url('../fonts/Inter-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Inter-SemiBold';
    src: url('../fonts/Inter-SemiBold.eot');
    src: url('../fonts/Inter-SemiBold.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Inter-SemiBold.svg#Inter-SemiBold') format('svg'),
         url('../fonts/Inter-SemiBold.ttf') format('truetype'),
         url('../fonts/Inter-SemiBold.woff') format('woff'),
         url('../fonts/Inter-SemiBold.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Inter-SemiBoldItalic';
    src: url('../fonts/Inter-SemiBoldItalic.eot');
    src: url('../fonts/Inter-SemiBoldItalic.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Inter-SemiBoldItalic.svg#Inter-SemiBoldItalic') format('svg'),
         url('../fonts/Inter-SemiBoldItalic.ttf') format('truetype'),
         url('../fonts/Inter-SemiBoldItalic.woff') format('woff'),
         url('../fonts/Inter-SemiBoldItalic.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

a,
a:hover,
body,
main#content,
#content.site-content,
.btn,
.btn:hover,
.btn:focus,
.btn > i,
.btn:hover > i,
.btn:focus > i,
.btn-primary,
.btn-primary:hover,
.btn-secondary,
.btn-secondary:hover,
.btn-outline-primary:before,
.btn-outline-primary:hover:before,
.btn-outline-secondary:before,
.btn-outline-secondary:hover:before,
.product .cart > .button,
.product .cart > .button:hover,
.product .cart > .button:after,
.product .cart > .button:hover:after,
.product .cart > .button:before,
.product .cart > .button:hover:before,
.bloque .product .cart > .quantity + .button.loading,
.bloque .product .cart > .quantity + .button.loading:hover,
.bloque .product .cart > .quantity + .button.loading:after,
.bloque .product .cart > .quantity + .button.loading:hover:after,
.bloque .product .cart > .quantity + .button.added,
.bloque .product .cart > .quantity + .button.added:hover,
.bloque .product .cart > .quantity + .button.added:after,
.bloque .product .cart > .quantity + .button.added:hover:after,
.woocommerce div.product form.cart .button.loading,
.woocommerce div.product form.cart .button.loading:hover,
.woocommerce div.product form.cart .button.loading:after,
.woocommerce div.product form.cart .button.loading:hover:after,
.woocommerce div.product form.cart .button.added,
.woocommerce div.product form.cart .button.added:hover,
.woocommerce div.product form.cart .button.added:after,
.woocommerce div.product form.cart .button.added:hover:after,
.product .cart > .button.loading,
.product .cart > .button.loading:hover,
.product .cart > .button.loading:after,
.product .cart > .button.loading:hover:after,
.product .cart > .button.added,
.product .cart > .button.added:hover,
.product .cart > .button.added:after,
.product .cart > .button.added:hover:after,
.product.onbackorder .ficha-botones form.cart .button,
.product.onbackorder .ficha-botones form.cart .button:hover,
.product.onbackorder .ficha-botones form.cart .button:after,
.product.onbackorder .ficha-botones form.cart .button:hover:after,
.facetwp-template div.product.onbackorder form.cart .button,
.facetwp-template div.product.onbackorder form.cart .button:hover,
.facetwp-template div.product.onbackorder form.cart .button:after,
.facetwp-template div.product.onbackorder form.cart .button:hover:after,
.bloque .product.onbackorder .cart > .button,
.bloque .product.onbackorder .cart > .button:hover,
.bloque .product.onbackorder .cart > .button:after,
.bloque .product.onbackorder .cart > .button:hover:after,
.breadcrumb > li > a,
.breadcrumb > li > a:hover,
.breadcrumb > li > a:before,
.breadcrumb > li > a:hover:before,
.bloque-desplegable .subtitulos a,
.bloque-desplegable .subtitulos a:hover,
.bloque-desplegable .the_content a,
.bloque-desplegable .the_content a:hover,
.bloque-texto-en-columnas .subtitulos a,
.bloque-texto-en-columnas .subtitulos a:hover,
.bloque-texto-en-columnas .the_content a.enlace,
.bloque-texto-en-columnas .the_content a.enlace:hover,
.bloque-video .subtitulos a,
.bloque-video .subtitulos a:hover,
.bloque-texto-con-imagen .the_content a,
.bloque-texto-con-imagen .the_content a:hover,
.bloque-texto .the_content a,
.bloque-texto .the_content a:hover,
.modal .btn-close,
.modal .btn-close:hover,
.modal-backdrop,
.footer a,
.footer a:hover,
.footer .nav-link,
.footer .nav-link:hover,
.footer li a,
.footer li a:hover,
footer {
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

* {
    margin: 0;
    padding: 0; 
}

html,
html.no-js {
    margin-top: 0 !important;
}

html {
    background-color: #F9F9F9;
}

body {
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
    font-size: 1rem !important;
    font-weight: normal;
    line-height: 1.5;
    color: #000000;
    background-color: #F9F9F9 !important;
}

input:placeholder,
input::placeholder,
textarea:placeholder,
textarea::placeholder,
select:placeholder,
select::placeholder {
    opacity: .7 !important;
}

strong,
b {
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
    font-weight: 700;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Lilita One', Georgia, Times, Times New Roman, serif;
    font-weight: normal;
    line-height: 1.2;
    margin-bottom: 1.5rem;
}
main.site-main .page-header > .entry-title {
    line-height: 1 !important;
    margin-bottom: 1.5rem !important;
    margin-top: 0 !important;
}

.woocommerce-loop-product__title {
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
    font-weight: 700;
    margin-bottom: .25rem;
}
.woocommerce-mini-cart__empty-message {
    visibility: hidden;
    position: relative;
}
.woocommerce-mini-cart__empty-message:after {
    visibility: visible;
    position: absolute;
    top: 0;
    left: 0;
    content: "El carrito se encuentra vacío.";
	text-align:center;
	width:100%;
}
html[lang="ca"] .woocommerce-mini-cart__empty-message:after {
    content: "El carret està buit.";
}
html[lang="en"] .woocommerce-mini-cart__empty-message:after,
html[lang="en-US"] .woocommerce-mini-cart__empty-message:after,
html[lang="en-UK"] .woocommerce-mini-cart__empty-message:after {
    content: "The shopping cart is empty.";
}
html[lang="pt"] .woocommerce-mini-cart__empty-message:after {
    content: "O carrinho de compras está vazio.";
}
html[lang="pt-br"] .woocommerce-mini-cart__empty-message:after {
    content: "O carrinho de compras está vazio.";
}
.elementor-widget-woocommerce-cart .woocommerce table.cart img {
    width: 145px !important;
    min-width: 145px !important;
    max-width: none !important;
}
.elementor-widget-woocommerce-cart .woocommerce .remove {
    margin-right: 1rem;
}

a,
a:focus {
    color: #ED1B2F;
    text-decoration: none;
}
a:hover {
    color: #BD0F20;
    text-decoration: none !important;
}

*:focus,
*:active,
.nav-tabs .open .dropdown-toggle,
.nav-pills .open .dropdown-toggle,
.nav>li.dropdown.open.active>a:hover {
    outline: none !important;
    outline: 0 !important;
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
    box-shadow: none !important;
}

.modal-back {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  z-index: 2;
  background: rgba(0, 0, 0, 0.3);
}

.underlined {
    text-decoration: underline !important;
}

.text-left {
    text-align: left !important;
}

.text-right {
    text-align: right !important;
}

.text-center {
    text-align: center !important;
}

.text-justify {
    text-align: justify !important;
}

.titulos {
    margin-top: 0;
}
.subtitulos {
    margin-top: 0;
}

.elementor-message.elementor-message-danger {
    display: flex !important;
    align-items: center !important;
    position: relative !important;
    padding: 1rem 1rem !important;
    margin-bottom: 1rem !important;
    border: 1px solid #f5c2c7 !important;
    color: #842029 !important;
    background-color: #f8d7da !important;
    -moz-border-radius: .25rem !important;
    -webkit-border-radius: .25rem !important;
    border-radius: .25rem !important;
}
.elementor-message.elementor-message-danger,
.elementor-message.elementor-message-danger strong,
.elementor-message.elementor-message-danger b {
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
    font-weight: normal !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1.1 !important;
}
.alert p:last-child {
    margin-bottom: 0;
}

.elementor-message.elementor-message-danger:before {
    content: "" !important;
    display: inline-block !important;
    margin-right: .5rem !important;
    vertical-align: middle !important;
    background-image: url('/wp-content/themes/smb2b/images/iconos/alert2.png') !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    width: 28px !important;
    height: 28px !important;
}
.elementor-button.loading,
.elementor-button.cargando {
    position: relative !important;
}
.elementor-button.loading:after,
.elementor-button.cargando:after {
    position: absolute;
    top: 0.75rem !important;
    right: -2rem !important;
    content: "" !important;
    background-image: url('/wp-content/themes/smb2b/images/iconos/loading3.gif') !important;
    background-repeat: no-repeat !important;
    background-size: 18px !important;
    width: 18px !important;
    height: 18px !important;
}

.titular-dos-lineas .elementor-heading-title {
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

header .widget_product_search button,
header .widget_product_search .search-field + button,
.aviso .elementor-widget-woocommerce-notices .woocommerce-message .button,
.product .cart > .button,
.ficha-producto div.product form.cart div.quantity + .single_add_to_cart_button,
#modal-add-to-cart .single_add_to_cart_button,
.bloque .product .cart > .quantity + .button,
div.product .button.add_to_cart_button,
.woocommerce div.product form.cart .button {
    padding: 0 1rem !important;
    min-width: fit-content !important;
    height: 44px;
    display: flex;
    align-items: center;  
    text-align: left !important;
    margin-left: 0 !important;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
}
/**/
.mensaje_stock {
    font-size: .8em;
    margin-top: 1.5rem;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
}
.mensaje_stock p {
    margin: 0 !important;
}
.mensaje_stock span.mensaje {
    display: block;
    padding: 1rem 1rem;
}
/**/
.bloque-relacionados div.product.outofstock,
.bloque-novedades div.product.outofstock,
.bloque-mas-vendidos div.product.outofstock,
.bloque-destacados div.product.outofstock,
.facetwp-template div.product.outofstock {
	/*opacity: .5 !important;*/
}
.bloque-relacionados div.product.outofstock .cart > a.button,
.bloque-relacionados div.product.outofstock .cart > a.button:hover,
.bloque-relacionados div.product.outofstock .cart > a.button:focus,
.bloque-relacionados div.product.outofstock .cart > a.button:active,
.bloque-novedades div.product.outofstock .cart > a.button,
.bloque-novedades div.product.outofstock .cart > a.button:hover,
.bloque-novedades div.product.outofstock .cart > a.button:focus,
.bloque-novedades div.product.outofstock .cart > a.button:active,
.bloque-mas-vendidos div.product.outofstock .cart > a.button,
.bloque-mas-vendidos div.product.outofstock .cart > a.button:hover,
.bloque-mas-vendidos div.product.outofstock .cart > a.button:focus,
.bloque-mas-vendidos div.product.outofstock .cart > a.button:active,
.bloque-destacados div.product.outofstock .cart > a.button,
.bloque-destacados div.product.outofstock .cart > a.button:hover,
.bloque-destacados div.product.outofstock .cart > a.button:focus,
.bloque-destacados div.product.outofstock .cart > a.button:active,
.facetwp-template div.product.outofstock .cart > a.button,
.facetwp-template div.product.outofstock .cart > a.button:hover,
.facetwp-template div.product.outofstock .cart > a.button:focus,
.facetwp-template div.product.outofstock .cart > a.button:active {
    cursor: default !important;
    pointer-events: none !important;
    background-color: #b9b9b9 !important;
}
.bloque-relacionados div.product.outofstock form.cart input.qty,
.bloque-novedades div.product.outofstock form.cart input.qty,
.bloque-mas-vendidos div.product.outofstock form.cart input.qty,
.bloque-destacados div.product.outofstock form.cart input.qty,
.facetwp-template div.product.outofstock form.cart input.qty {
    pointer-events: none !important;
}
.bloque-relacionados div.product.outofstock .elementor-widget-image img,
.bloque-relacionados div.product.outofstock img.size-woocommerce_thumbnail,
.bloque-novedades div.product.outofstock .elementor-widget-image img,
.bloque-novedades div.product.outofstock img.size-woocommerce_thumbnail,
.bloque-mas-vendidos div.product.outofstock .elementor-widget-image img,
.bloque-mas-vendidos div.product.outofstock img.size-woocommerce_thumbnail,
.bloque-destacados div.product.outofstock .elementor-widget-image img,
.bloque-destacados div.product.outofstock img.size-woocommerce_thumbnail,
.facetwp-template div.product.outofstock .elementor-widget-image img,
.facetwp-template div.product.outofstock img.size-woocommerce_thumbnail {
    filter: grayscale(1) !important;
    opacity: .5;
}

div.product.outofstock > .elementor-element > .elementor-element:not(:first-child) {
    opacity: .5;
}
/**/

header.elementor-location-header form.woocommerce-product-search select,
header.elementor-location-header .woocommerce form.woocommerce-product-search input.search-field,
.quantity .qty,
div.quantity input[type="number"],
table td .quantity .qty,
table td div.quantity input[type="number"],
.elementor-widget-woocommerce-cart .woocommerce .input-text.qty,
.elementor-widget-woocommerce-cart .woocommerce input[type="number"],
div.product form.cart div.quantity .qty {
    height: 44px;
}
.elementor-widget-woocommerce-cart .woocommerce .cart_totals table.shop_table_responsive tr td:before {
    text-transform: capitalize !important;
}

.elementor-widget-woocommerce-cart .woocommerce table.cart tbody small.tax_label {
    display: none;
}
table td .input-text.qty,
table td input[type="number"],
.woocommerce-cart-form .input-text.qty,
.woocommerce-cart-form input[type="number"],
.elementor-widget-woocommerce-cart .woocommerce .input-text.qty,
.elementor-widget-woocommerce-cart .woocommerce input[type="number"] {
    height: 44px !important;
    max-height: unset !important;
    min-height: unset !important;
    margin-right: 0 !important;
    vertical-align: top !important;
    padding: 0.5rem 1rem !important;
    /**/
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
    margin: 0 !important;
}

.woocommerce-cart-form table,
.woocommerce-cart-form table th,
.woocommerce-cart-form table th a,
.woocommerce-cart-form table td,
.woocommerce-cart-form table td a,
.woocommerce-cart-form table td span,
.woocommerce-cart-form table td span a,
.woocommerce-cart-form .product-thumbnail,
.woocommerce-cart-form .product-thumbnail a,
.woocommerce-cart-form .product-name,
.woocommerce-cart-form .product-name a,
.woocommerce-cart-form .product-price,
.woocommerce-cart-form .product-price a,
.woocommerce-cart-form .product-quantity,
.woocommerce-cart-form .product-quantity a,
.woocommerce-cart-form .product-subtotal,
.woocommerce-cart-form .product-subtotal a,
.e-cart-totals * {
    font-size: 1rem !important;
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
}
.e-cart-totals .order-total .woocommerce-Price-amount.amount bdi {
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    font-size: 2rem !important;
}
.e-cart-totals .order-total.adp-discount .woocommerce-Price-amount.amount bdi {
    font-size: 1.4rem !important;display: 
}

.woocommerce-cart-form .product-remove,
.woocommerce-cart-form .product-remove a {
    font-size: 1.5rem !important;
}

.product .cart > .button,
.btn {
    color: #FFFFFF;
    background-color: #ED1B2F;
}

.product.onbackorder .ficha-botones form.cart .button:not(.btn-consultar), 
.facetwp-template div.product.onbackorder form.cart .button:not(.btn-consultar), 
/*.bloque.bloque-novedades .product.onbackorder .cart > .button,*/
.bloque.bloque-mas-vendidos .product.onbackorder .cart > .button:not(.btn-consultar),
.bloque.bloque-destacados .product.onbackorder .cart > .button:not(.btn-consultar),
.bloque.bloque-relacionados .product.onbackorder .cart > .button:not(.btn-consultar) {
    color: #FFFFFF;
    background-color: #7538A3; /*#a672cd;*/
}
.onbackorder .add_to_cart_flotante .cart > .button {
    color: #FFFFFF !important;
    background-color: #7538A3 !important; /* #a672cd !important; */
}
.onbackorder .add_to_cart_flotante form.cart .button,
.carousel-block-novedades .product .cart > .button {
    background-color: #000000;
}
div.product .button.add_to_cart_button,
.woocommerce div.product form.cart .button {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 1rem !important;
}
.product .added_to_cart {
    display: none !important;
}

.text-bg-info {
    display: block !important;
    max-width: fit-content !important;
    margin-bottom: 0 !important;
    margin-block-end: 0 !important;
    margin-top: 0.25rem;
}
.text-bg-info.text-bg-backorder {
    color: #FFFFFF !important;
    background-color: #7538A3 !important; /* #a672cd !important; */
}

/**/
.btn,
.btn:hover,
.btn:focus,
.btn:active {
    border: none !important;
}
.btn,
.btn-primary,
.btn-secondary,
.btn-outline-primary,
.btn-outline-secondary {
    padding: 0 1.5rem;
    width: fit-content;
    min-width: fit-content;
    height: 44px;
    display: flex;
    align-items: center;
}
.btn-primary {
}
.btn-secondary {
}
.btn-outline-primary {
}
.btn-outline-secondary {
}
div#page.site .btn.btn-primary {
    background-color: #ED1B2F;
}
div#page.site .bloque.bloque-novedades-productos .btn.btn-primary {
    background-color: #000000;
}
div#page.site .btn.btn-secondary {
}
div#page.site .btn.btn-outline-primary {
}
div#page.site .btn.btn-outline-secondary {
}

ol,
ul {
    margin: 0;
    padding: 0;
}

.ratio {
    border: none;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    overflow: hidden;    
}
.ratio > iframe {
    width: 100%;
    min-width: 100%;
}
lite-youtube {
    max-width: 100% !important;
    width: 100% !important;
    max-width: none !important;
}
lite-youtube:before {
    content: none !important;
}

.hidden {
    display: none !important;
}
.sr-only {
    display: none !important;
    border: 0 !important;
    clip: rect(0,0,0,0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
}

.top-bar-widget,
.top-bar-widget * {
    margin-bottom: 0;
}

.elementor .e-con-inner > .elementor-element:last-child .bloque {
    margin-bottom: 0;
}

/**/
header {
}
header .navbar,
header .navbar-brand,
header ul,
header ol {
    margin: 0;
    padding: 0;
}
header .custom-logo-link {
    display: block;
}
header img.custom-logo {
    max-width: 100%;
    height: auto;
}
header .div_buscador > * {
    display: inline-block;
}
header .div_buscador .input-group input {
    padding: 0.5rem 1.5rem;
    border: 1px solid #dde4ec;
    background-color: #f3f6fa;
}
header .div_buscador .input-group button {
    color: #FFFFFF;
    background-color: #ED1B2F;
}
header .div_buscador .buscador-avanzado {
    color: #000000;
    text-decoration: none;
}
header .div_acciones .btn,
header .div_acciones button {
    padding: 0 0;
}
header .div_acciones .btn,
header .div_acciones .btn:hover,
header .div_acciones .btn:focus,
header .div_acciones .btn:active,
header .div_acciones button,
header .div_acciones button:hover,
header .div_acciones button:focus,
header .div_acciones button:active {
    color: #000000;
    background-color: transparent;
}
header .div_acciones .btn i,
header .div_acciones button i {
    font-size: 1.5rem;
}
header + .container {
    margin-top: 1.5rem;
}

header .widget_product_search button {
}
header .widget_product_search button:before {
    display: inline-block;
    float: left;
    content: "";
    margin-top: 0;
    margin-right: 0.5rem;
    background-image: url(/wp-content/themes/smb2b/images/iconos/search.png);
    background-repeat: no-repeat;
    background-size: 18px;
    width: 18px;
    height: 18px;
}
header .widget_product_search .search-field + button {
    margin-left: -1rem;
    text-align: left;
    min-width: fit-content;
}
header .opciones .buscador-avanzado,
header .opciones .buscador-avanzado:hover,
header .opciones .buscador-avanzado:focus,
header .opciones .buscador-avanzado:active {
    color: #000000;
    text-decoration: none;
}

.elementor-menu-cart__product-remove,
.elementor-menu-cart__product-remove:hover,
.elementor-menu-cart__product-remove:focus,
.elementor-menu-cart__product-remove:active {
    border: none !important;
    width: 35px !important;
}

.elementor-menu-cart__subtotal {
    padding: .7rem 0 !important;
    font-size: .8rem !important;
}

.elementor-bloque-total-extra {
    text-align: center;
    font-size: 1.1rem !important;
    padding: 1.5rem 0 0 !important;
    font-weight: bold;
}
.elementor-cupones-aplicados {
    color: green;
    font-size: .7rem;
    padding-top: .2rem;
}
.elementor-menu-cart__footer-buttons {
    padding-top: 1.4rem !important;
}

/**/
main.site-main,
main#content {
    background-color: #F9F9F9 !important;
}
main#content .widget-area,
main#content .content-area,
main#content .right-sidebar .content-area,
main#content .storefront-full-width-content .content-area {
    width: auto !important;
    float: initial !important;
}

.bloque {
	margin-bottom: 1.5em !important;
}
footer .bloque {
	margin-bottom: 0 !important;
}

.ficha-producto .ficha-descripcion dl,
.ficha-producto .ficha-descripcion ol,
.ficha-producto .ficha-descripcion ul,
.bloque .the_content dl,
.bloque .the_content ol,
.bloque .the_content ul {
    padding-left: 1rem;
    margin-bottom: 1rem;
}
.ficha-producto .ficha-descripcion dl li:before,
.ficha-producto .ficha-descripcion ol li:before,
.ficha-producto .ficha-descripcion ul li:before,
.bloque .the_content dl li:before,
.bloque .the_content ol li:before,
.bloque .the_content ul li:before {
    color: #ED1B2F;
}
.ficha-producto .ficha-descripcion ul li,
.bloque .the_content ul li {
    list-style-type: none;
    position: relative;
}
.ficha-producto .ficha-descripcion ul li:before,
.bloque .the_content ul li:before {
    position: absolute;
    content: "";
    display: inline-block;
    margin-left: -1.25rem;
    margin-top: 8px;
    background-color: #ED1B2F;
    width: 9px;
    height: 9px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}
.ficha-producto .ficha-descripcion ol,
.bloque .the_content ol {
    counter-reset: numeracion;
}
.ficha-producto .ficha-descripcion ol li,
.bloque .the_content ol li {
    list-style-type: none;
    position: relative;
}
.ficha-producto .ficha-descripcion ol li:before,
.bloque .the_content ol li:before {
    position: absolute;
    counter-increment: numeracion;
    content: "" counter(numeracion) "";
    display: inline-block;
    width: 1em;
    font-weight: 700;
    margin-left: -1.7rem;
    text-align: right;
    direction: ltr;
}
.ficha-producto .ficha-descripcion dl > li,
.ficha-producto .ficha-descripcion ol > li,
.ficha-producto .ficha-descripcion ul > li,
.bloque .the_content dl > li,
.bloque .the_content ol > li,
.bloque .the_content ul > li {
    margin: 0 0 .5rem 0;
    padding: 0 0 0 7px;
}
.ficha-producto .ficha-descripcion dl > li:last-child,
.ficha-producto .ficha-descripcion ol > li:last-child,
.ficha-producto .ficha-descripcion ul > li:last-child,
.bloque .the_content dl > li:last-child,
.bloque .the_content ol > li:last-child,
.bloque .the_content ul > li:last-child {
    margin-bottom: 0;
}

.bloque-texto {
}
.bloque-desplegable .subtitulos a,
.bloque-desplegable .the_content a,
.bloque-texto-en-columnas .subtitulos a,
.bloque-texto-en-columnas .the_content a.enlace,
.bloque-video .subtitulos a,
.bloque-texto-con-imagen .the_content a,
.bloque-texto .the_content a {
    font-weight: 500 !important;
}
.bloque-desplegable .subtitulos a:hover,
.bloque-desplegable .the_content a:hover,
.bloque-texto-en-columnas .subtitulos a:hover,
.bloque-texto-en-columnas .the_content a.enlace:hover,
.bloque-video .subtitulos a:hover,
.bloque-texto-con-imagen .the_content a:hover,
.bloque-texto .the_content a:hover {
    text-decoration: underline !important;
}

.bloque-texto-en-columnas {
}
.bloque-texto-en-columnas ul.list-group li h3,
.bloque-texto-en-columnas ul.list-group li .subtitulos,
.bloque-texto-en-columnas ul.list-group li h3.subtitulos {
    font-family: 'Lilita One', Georgia, Times, Times New Roman, serif !important;
    font-size: 1.5rem !important;
    font-weight: normal !important;
    margin-bottom: 1rem;
}
.bloque-texto-en-columnas > .container > ul,
.bloque-texto-en-columnas > .container > .row > div > ul > li {
    border: none !important;
    background-color: transparent !important;
}
.bloque-texto-en-columnas ul.list-group {
    margin-left: -1rem;
    margin-right: -1rem;
    margin-bottom: -1.5rem;
}
.bloque-texto-en-columnas ul.list-group > li {
    padding-left: 1rem;
    padding-right: 1rem;
    margin-bottom: 1.5rem;
}
.bloque-texto-en-columnas ul.list-group > li > svg,
.bloque-texto-en-columnas ul.list-group > li > img {
    max-height: 50px;
    margin-bottom: 1rem;
}

.bloque-imagen {
}
.bloque-imagen .image img {
    margin-bottom: 0;
}
.bloque .image + .figure-caption {
    margin-top: .5rem;
}

.bloque-texto-con-imagen {
}

.bloque-video {
}

.bloque-desplegable {
}

.bloque-carrusel {
}
/**/
.bloque-carrusel .carousel-item > .container > .dark-bg {
    /*position: relative;*/
}
.bloque-carrusel .carousel-item > .container > .dark-bg:before {
    /*content: "";*/
    /*position: absolute;*/
    /*top: 0;*/
    /*left: 0;*/
    /*width: 100%;*/
    /*height: 100%;*/
    /*background: rgba(0,0,0,.5);*/
}
.bloque-carrusel .carousel-item > .container > .dark-bg > div {
    z-index: 1;
    text-align: center !important;
}
.bloque-carrusel .carousel-item > .container > .dark-bg > div > p,
.bloque-carrusel .carousel-item > .container > .dark-bg > div > h2,
.bloque-carrusel .carousel-item > .container > .dark-bg > div > .titular,
.bloque-carrusel .carousel-item > .container > .dark-bg > div > h2.titular {
    padding: 0 0 !important;
}
.bloque-carrusel .carousel-item > .container > .dark-bg > div > .btn,
.bloque-carrusel .carousel-item > .container > .dark-bg > div > .btn-primary {
    margin-left: auto !important;
    margin-right: auto !important;
}
/**/
.bloque-carrusel .carousel-indicators [data-bs-target] {
    width: 9px;
    height: 9px;
    margin: 0 3px;
    padding: 0;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #DDDDDD;
    border: 0;
}
.bloque-carrusel .carousel-indicators .active {
    background: #000000;
}
.bloque-carrusel .carousel-item > .container > .row > div > p {
    line-height: 1.5;
    margin-bottom: 1.5rem;
}
.bloque-carrusel a.btn,
.bloque-carrusel a.btn.btn-primary {
    color: #FFFFFF;
}

.bloque-novedades-productos {
}
.tab-content .product > a {
    display: block;
}

.product a {
	text-decoration: none;
}
.product .card-body .woocommerce-loop-product__title {
	color: #000;
	text-decoration: none;
}
.bloque-novedades-productos .product .card-body .woocommerce-loop-product__title,
.bloque-novedades-productos .product .card-body .isbn,
.bloque-novedades-productos .product .card-body .price, 
.bloque-novedades-productos .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
	color: #fff !important;
}
.elementor-widget-shortcode span.isbn,
.product .card-body .isbn {
    display: block;
	color: #000000;
}
.product .card-body .stock {
	display: none !important;
}

.facetwp-template .product.outofstock {
	/*opacity: .5;*/
}
.facetwp-template .product.outofstock a.product_type_simple.btn {
	display: none;
}
.product .card-body .stock.out-of-stock {
	display: block !important;
}
.product .card-body .price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
    display: block;
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
    font-weight: 700;
    padding: .25rem 0;
	color: #000 !important;
}
.bloque.bloque-novedades.texto-blanco .elementor-widget-shortcode span.isbn,
.bloque.bloque-novedades.texto-blanco .product .isbn,
.bloque.bloque-novedades.texto-blanco div.product span.price,
.bloque.bloque-novedades.texto-blanco .product .price {
	color: #FFFFFF !important;
}
.bloque.bloque-novedades.texto-negro .elementor-widget-shortcode span.isbn,
.bloque.bloque-novedades.texto-negro .product .isbn,
.bloque.bloque-novedades.texto-negro div.product span.price,
.bloque.bloque-novedades.texto-negro .product .price {
	color: #000 !important;
}
.product .price {
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
    font-size: 1.4rem !important;
    font-weight: 700 !important;
}
.product .price del,
.widget_shopping_cart_content del,
.cart_item del,
.cart_item td del span {
    font-size: .9rem !important;
    opacity: .45 !important;
    text-decoration: line-through;
    padding-right: .2rem;
}
.product .price ins,
.widget_shopping_cart_content ins,
.cart_item ins,
.cart_item ins dbi,
.elementor-widget-woocommerce-cart .woocommerce table.cart td ins span{
    color: #ee1d23;
    text-decoration: none;
    font-size: 1.4rem;
}
.widget_shopping_cart_content ins, .cart_item ins {
    font-size: 1rem !important;
    font-weight: bold !important;
}
.woocommerce.single .ficha-botones .price del {
    font-size: 0.9rem !important;
    text-align: left !important;
}
.woocommerce.single .ficha-botones .price,
.woocommerce.single .ficha-botones .price ins {
    font-size: 2.2rem !important;
    line-height: 1.8rem !important;
}
.bloque-novedades-productos .card-body .mt-auto {
    margin-top: 0 !important;
}
.bloque-novedades .product .price ins {
    color: #fff;
    background: #ee1d23;
    padding: .3rem .7rem;
    border-radius: 8px;
}

.bloque-mas-vendidos-productos {
}
.product > a {
    margin-bottom: 1rem;
}

.bloque-destacados-productos {
}
.destacados {
}
.destacados .elementor-widget-loop-carousel.elementor-pagination-position-outside > .elementor-widget-container .swiper-pagination-bullet {
    vertical-align: bottom;
    width: 9px;
    height: 9px;
}
.destacados .elementor-element .swiper ~ .swiper-pagination-bullets.swiper-pagination-horizontal {
    display: block !important;
    position: initial;
    text-align: center;
    width: 100%;
    margin: 1.5rem auto 1.5rem auto;
    transform: none;
}

.bloque.bloque-novedades-productos .nav-tabs,
.bloque.bloque-mas-vendidos-productos .nav-tabs,
.bloque.bloque-destacados-productos .nav-tabs {
    border: none;
}
.bloque.bloque-novedades-productos .nav-tabs .nav-item > .nav-link,
.bloque.bloque-mas-vendidos-productos .nav-tabs .nav-item > .nav-link,
.bloque.bloque-destacados-productos .nav-tabs .nav-item > .nav-link {
    padding: .5rem 1.5rem;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
    border: none !important;
}
.bloque.bloque-novedades-productos .nav-tabs .nav-item > .nav-link {
    color: #FFFFFF;
}
.bloque.bloque-mas-vendidos-productos .nav-tabs .nav-item > .nav-link,
.bloque.bloque-destacados-productos .nav-tabs .nav-item > .nav-link {
    color: #000000;
}
.bloque.bloque-novedades-productos .nav-tabs .nav-item > .nav-link.active,
.bloque.bloque-novedades-productos .nav-tabs .nav-item > .nav-link:active,
.bloque.bloque-mas-vendidos-productos .nav-tabs .nav-item > .nav-link.active,
.bloque.bloque-mas-vendidos-productos .nav-tabs .nav-item > .nav-link:active,
.bloque.bloque-destacados-productos .nav-tabs .nav-item > .nav-link.active,
.bloque.bloque-destacados-productos .nav-tabs .nav-item > .nav-link:active {
    color: #000000;
    background-color: #f3f6fa;
}
.bloque.bloque-novedades-productos .nav-tabs .nav-item > .nav-link,
.bloque.bloque-novedades-productos .nav-tabs .nav-item > .nav-link:hover,
.bloque.bloque-novedades-productos .nav-tabs .nav-item > .nav-link:focus,
.bloque.bloque-novedades-productos .nav-tabs .nav-item > .nav-link:active,
.bloque.bloque-mas-vendidos-productos .nav-tabs .nav-item > .nav-link,
.bloque.bloque-mas-vendidos-productos .nav-tabs .nav-item > .nav-link:hover,
.bloque.bloque-mas-vendidos-productos .nav-tabs .nav-item > .nav-link:focus,
.bloque.bloque-mas-vendidos-productos .nav-tabs .nav-item > .nav-link:active,
.bloque.bloque-destacados-productos .nav-tabs .nav-item > .nav-link,
.bloque.bloque-destacados-productos .nav-tabs .nav-item > .nav-link:hover,
.bloque.bloque-destacados-productos .nav-tabs .nav-item > .nav-link:focus,
.bloque.bloque-destacados-productos .nav-tabs .nav-item > .nav-link:active {
    border: none;
}
.bloque-relacionados .elementor-heading-title,
.bloque-novedades .elementor-heading-title,
.bloque-mas-vendidos .elementor-heading-title,
.bloque-destacados .elementor-heading-title {
    font-family: 'Lilita One', Georgia, Times, Times New Roman, serif !important;
    font-weight: normal !important;
    line-height: 1.2 !important;
}
h1.elementor-heading-title {
    line-height: 1.2 !important;
}
.bloque-relacionados .product.type-product h2.elementor-heading-title,
.bloque-novedades .product.type-product h2.elementor-heading-title,
.bloque-mas-vendidos .product.type-product h2.elementor-heading-title,
.bloque-destacados .product.type-product h2.elementor-heading-title {
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
    font-size: 1.09rem !important;
    font-weight: 700 !important;
}
.bloque-relacionados .swiper ~ .swiper-pagination-bullets.swiper-pagination-horizontal,
.bloque-novedades .swiper ~ .swiper-pagination-bullets.swiper-pagination-horizontal,
.bloque-mas-vendidos .swiper ~ .swiper-pagination-bullets.swiper-pagination-horizontal,
.bloque-destacados .swiper ~ .swiper-pagination-bullets.swiper-pagination-horizontal {
    display: block;
    width: 100%;
    padding: 1rem 0;
    position: initial;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    transform: none;
}
.bloque-relacionados .elementor-widget-loop-carousel .swiper-pagination-bullet,
.bloque-novedades .elementor-widget-loop-carousel .swiper-pagination-bullet,
.bloque-mas-vendidos .elementor-widget-loop-carousel .swiper-pagination-bullet,
.bloque-destacados .elementor-widget-loop-carousel .swiper-pagination-bullet {
    height: 9px;
    width: 9px;
}
div.product .button.add_to_cart_button:before,
.ficha-producto div.product form.cart div.quantity + .single_add_to_cart_button:before,
#modal-add-to-cart .single_add_to_cart_button:before,
.product .cart > .button:before,
.bloque-relacionados .product .cart > .button:before,
.bloque-novedades .product .cart > .button:before,
.bloque-mas-vendidos .product .cart > .button:before,
.bloque-destacados .product .cart > .button:before {
    content: '';
    display: inline-block;
    margin-top: -2px;
    margin-right: .6rem;
    -webkit-mask-image: url('../images/iconos/bolsa.svg');
    mask-image: url('../images/iconos/bolsa.svg');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-color: white; /* color */
    width: 17px;
    height: 17px;
}

div.product .icono_carrito .button.add_to_cart_button:before,
.ficha-producto div.product .icono_carrito form.cart div.quantity + .single_add_to_cart_button:before,
#modal-add-to-cart .icono_carrito .single_add_to_cart_button:before,
.product .icono_carrito .cart > .button:before,
.bloque-relacionados .product .icono_carrito .cart > .button:before,
.bloque-novedades .product .icono_carrito .cart > .button:before,
.bloque-mas-vendidos .product .icono_carrito .cart > .button:before,
.bloque-destacados .product .icono_carrito .cart > .button:before {
    content: '';
    display: inline-block;
    margin-top: -2px;
    margin-right: .6rem;
    -webkit-mask-image: url('../images/iconos/carrito.svg');
    mask-image: url('../images/iconos/carrito.svg');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-color: white; /* color */
    width: 18px;
    height: 18px;
}
.btn-consultar:before {
    display: inline-block;
    float: left;
    content: "";
    margin-top: -2px;
    margin-right: .6rem;
    background-image: url('/wp-content/themes/smb2b/images/iconos/search.png') !important;
    background-repeat: no-repeat;
    background-size: 17px;
    width: 17px;
    height: 18px;
}
form.cart .quantity:has(~ .cart) {
  display: none !important;
}
.product .cart > .quantity + .button,
.bloque .product .cart > .quantity + .button {
    position: relative;
}
.woocommerce div.product form.cart .button.loading:before,
.woocommerce div.product form.cart .button.added:before,
.product .cart .add_to_cart_button.loading:before,
.product .cart .add_to_cart_button.added:before,
.product .cart > .button.loading:before,
.product .cart > .button.added:before {
    content: none !important;
    display: none !important;
}
.product .cart .add_to_cart_button {
    padding-left: 35px !important;
}
.bloque .product .cart > .quantity + .button.loading,
.bloque .product .cart > .quantity + .button.added,
.woocommerce div.product form.cart .button.loading,
.woocommerce div.product form.cart .button.added,
.product .cart > .button.loading,
.product .cart > .button.added {
    padding-left: 42px !important;
}
.product .cart .add_to_cart_button.added:after,
.product .cart > .button.added:after {
    display: inline-block !important;
    float: left !important;
    content: "" !important;
    margin-top: -2px !important;
    margin-right: .6rem !important;
    margin-left: 0 !important;
    background-image: url('/wp-content/themes/smb2b/images/iconos/check.png') !important;
    background-repeat: no-repeat !important;
    background-size: 18px !important;
    width: 18px !important;
    height: 18px !important;
    position: absolute;
    left: 12px;
    top: 14px;
}
.product .cart .add_to_cart_button.loading:after,
.product .cart > .button.loading:after {
    display: inline-block !important;
    float: left !important;
    content: "" !important;
    margin-top: -1px !important;
    margin-right: .6rem !important;
    margin-left: 0 !important;
    background-image: url('/wp-content/themes/smb2b/images/iconos/loading3.gif') !important;
    background-repeat: no-repeat !important;
    background-size: 18px !important;
    width: 18px !important;
    height: 18px !important;
    position: absolute;
    left: 12px;
    top: 14px;
}
.product .cart .add_to_cart_button.added:hover:after,
.product .cart .add_to_cart_button.loading:hover:after,
.product .cart > .button.added:hover:after,
.product .cart > .button.loading:hover:after {
    background-color: #BD0F20 !important;
}

.ficha-producto .ficha-datos .sm-product-ficha a,
.ficha-producto .ficha-datos .sm-product-ficha a:hover,
.ficha-producto .ficha-datos .sm-product-ficha a:focus,
.ficha-producto .ficha-datos .sm-product-ficha a:active {
    color: #000000 !important;
}
.ficha-producto .ficha-datos .posted_in a:hover,
.ficha-producto .ficha-datos .posted_in a:active {
    text-decoration: underline !important;
}
.ficha-producto .leer-capitulo {
}
.ficha-producto .leer-capitulo .btn {
    color: #ED1B2F !important;
    background-color: transparent !important;
    border: 1px solid #ED1B2F !important;
}
.ficha-producto .out_of_stock {
    display: block;
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
    font-size: .76rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #FFFFFF;
    background-color: #fa3110;
    padding: 1rem 1rem;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
    border: none !important;
    text-align: center;
}

.producto-descargables {
}
.producto-descargables .descargables {
    border: 1px solid #f3f3f3;
    background-color: #FFFFFF !important;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
}
.producto-descargables .descargables h4 {
    font-family: 'Lilita One', Georgia, Times, Times New Roman, serif;
    font-weight: normal;
    line-height: 1;
    margin-top: 0;
    margin-bottom: 2rem;
    color: #000000 !important;
}
.producto-descargables .descargables .listado-enlaces ul > li {
    padding: 0.5rem 0;
    list-style-type: none;
}
.producto-descargables .descargables .listado-enlaces ul > li:first-child {
    padding-top: 0;
}
.producto-descargables .descargables .listado-enlaces ul > li:last-child {
    padding-bottom: 0;
}
.descargables .listado-enlaces ul li a {
    position: relative;
    padding-left: 2.5rem !important;
}
.descargables .listado-enlaces ul li a > span {
    float: right;
    display: block;
    width: calc(100% - 40px);
    vertical-align: top;
    text-align: left;
}
.descargables .listado-enlaces ul li a:before {
    float: left;
    display: block;
    content: url(../images/iconos/descarga-enlace.png);
    position: absolute;
    top: -8px;
    left: 0;
    width: 24px;
    height: 24px;
    transform: scale(.5);
}
.descargables .listado-enlaces ul li a[href$=".pdf"],
.descargables .listado-enlaces ul li a[href$=".doc"],
.descargables .listado-enlaces ul li a[href$=".docx"],
.descargables .listado-enlaces ul li a[href$=".txt"],
.descargables .listado-enlaces ul li a[href$=".zip"] {
}
.descargables .listado-enlaces ul li a[href$=".pdf"]:before,
.descargables .listado-enlaces ul li a[href$=".doc"]:before,
.descargables .listado-enlaces ul li a[href$=".docx"]:before,
.descargables .listado-enlaces ul li a[href$=".txt"]:before,
.descargables .listado-enlaces ul li a[href$=".zip"]:before {
    content: url(../images/iconos/descarga-documento.png);
}
.descargables .listado-enlaces ul li a[href$=".mp4"],
.descargables .listado-enlaces ul li a[href$=".avi"],
.descargables .listado-enlaces ul li a[href$=".mov"],
.descargables .listado-enlaces ul li a[href*="youtube"] {
}
.descargables .listado-enlaces ul li a[href$=".mp4"]:before,
.descargables .listado-enlaces ul li a[href$=".avi"]:before,
.descargables .listado-enlaces ul li a[href$=".mov"]:before,
.descargables .listado-enlaces ul li a[href*="youtube"]:before {
    content: url(../images/iconos/descarga-video.png);
}

.product .cart > .button {
}
product .cart > .button:before {
    margin-top: 0 !important;
}
/*.bloque.bloque-novedades .product .cart > .button {
    background-color: #000000 !important;
}*/
/*.bloque.bloque-novedades .product.onbackorder .cart > .button {
    background-color: #7538A3 !important;
}*/
.bloque.bloque-novedades .product .cart > .button:after,
.bloque.bloque-novedades .product .cart > .button:before {
    /*background-color: transparent !important;*/
}

.bloque.bloque-novedades .elementor-widget-n-tabs .swiper-wrapper > .swiper-slide > .elementor-element:first-child > .elementor-element.e-child:first-child {
    position: relative;
}
.bloque.bloque-novedades .elementor-widget-n-tabs .swiper-wrapper > .swiper-slide > .elementor-element:first-child > .elementor-element.e-child:first-child:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -50px;
    background-image: url('../images/fondo-novedades-peana.png');
    background-repeat: no-repeat;
    background-size: 100%;
    width: 100%;
    height: 100%;
    background-position: center bottom;
    z-index: -1;
}
.bloque.bloque-novedades .elementor-widget-n-tabs .elementor-widget-image {
    padding-bottom: 1.5rem;
}

.bloque-banners {
}
.bloque-banners a.banner-content,
.bloque-banners a.banner-content:hover,
.bloque-banners a.banner-content:focus,
.bloque-banners a.banner-content:active {
    color: #000000;
    height: 100%;
}
.bloque-banners .image > .image-content {
    overflow: hidden;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}
.bloque-banners .image > .image-content > img {
    width: 100%;
    max-width: none;
}
.bloque-banners .banner-content h3,
.bloque-banners .banner-content .titulos,
.bloque-banners .banner-content h3.titulos {
    font-family: 'Lilita One', Georgia, Times, Times New Roman, serif;
    font-weight: normal;
    font-size: 1.6rem;
}

.elementor-widget-woocommerce-cart .woocommerce .coupon-col-start {
    align-content: center;
}

.elementor-widget-woocommerce-cart .woocommerce .coupon-col-start .input-text {
    padding: 1.2em .8em;
    background-color: #FFFFFF !important;
    border: 1px solid #C8D5DC !important;
    border-radius: 8px !important;
}

.elementor-widget-woocommerce-cart .woocommerce .wt_coupon_wrapper {
    margin-bottom: 0;
}

.elementor-widget-woocommerce-cart .woocommerce .wt_sc_pagination {
    width: 100%;
    clear: both;
    margin-bottom: 0;
    text-align: right;
}

.wt_sc_single_coupon {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    box-shadow:0 0 0 4px #ee1d23,2px 1px 6px 4px rgba(10,10,0,0);
    transition: all .3s;
    opacity: 1;
}
.wt_sc_single_coupon:hover {
    scale: 1.02;
    opacity: 1;
}
.wt_sc_single_coupon:hover,
.wt_sc_single_coupon:focus,
.wt_sc_single_coupon:active {
    box-shadow:0 0 0 4px #ee1d23,2px 1px 6px 4px rgba(10,10,0,0) !important;
} 
.wt_sc_single_coupon:focus,
.wt_sc_single_coupon:active {
    scale: .98;
}
.wt_sc_single_coupon .sidebar-coupon {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 60px;
    background: #fff;
}
.wt_sc_single_coupon .sidebar-coupon img {
    transform: rotate(-90deg) translateY(-50%);
    position: absolute;
    left: 10px;
    top: 42%;
    width: 60px;
    height: 25px;
}
.wt_sc_single_coupon .wt_sc_coupon_content {
    padding: 10px 10px 5px 65px;
    float: left;
    width: 100%;
}
.code-title {
    font-size: 17px;
    font-family: 'Avenir LT Std';
    font-weight: 700;
    text-transform: uppercase;
  /*  background: #fff;*/
    display: inline-block;
    /*color: #ee1d23;*/
    padding: 2px 5px;
    margin-bottom: 7px;
}
.more-info {
    font-size: 1rem;
    line-height: 1.2rem;
}
.wt_sc_coupon_start.wt-coupon-start,
.wt_sc_coupon_expiry.wt-coupon-expiry {
    font-size: 0.7rem;
}

.bloque-formulario {
}
.bloque-formulario .gform-theme--foundation .gform_fields {
    grid-row-gap: 15px;
    row-gap: 15px;
}

.bloque-formulario .gform_wrapper .gfield_label,
.bloque-formulario .gform_wrapper .gfield {
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
    text-transform: none !important;
    font-style: normal !important;
    text-decoration: none !important;
    line-height: 1.2em !important;
    letter-spacing: 0px !important;
    margin-bottom: 1rem !important;
}
.bloque-formulario .gform_wrapper .gfield_label {
    font-family: "Avenir LT Std", Sans-serif !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    text-transform: none !important;
    font-style: normal !important;
    text-decoration: none !important;
    letter-spacing: 0px !important;
    margin-bottom: 0.2rem;
}
.bloque-formulario .gform_wrapper .gfield input[type="tel"],
.bloque-formulario .gform_wrapper .gfield input[type="text"],
.bloque-formulario .gform_wrapper .gfield input[type="password"],
.bloque-formulario .gform_wrapper .gfield input[type="email"],
.bloque-formulario .gform_wrapper .gfield select {
    background-color: #FFFFFF !important;
    border: 1px solid #C8D5DC !important;
    flex-grow: 1 !important;
    max-width: 100% !important;
    vertical-align: middle !important;
    width: 100% !important;
    min-height: 40px !important;
    padding: .5rem 1rem !important;
    -moz-border-radius: 8px 8px 8px 8px !important;
    -webkit-border-radius: 8px 8px 8px 8px !important;
    border-radius: 8px 8px 8px 8px !important;
}
.bloque-formulario .gform_wrapper .gfield select {
    background-repeat: no-repeat;
    background-position: calc(100% - 14px) center;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='25' viewBox='0 0 24 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.7101 10.3216C17.8038 10.2286 17.8782 10.118 17.929 9.99615C17.9797 9.87429 18.0059 9.74358 18.0059 9.61157C18.0059 9.47956 17.9797 9.34885 17.929 9.227C17.8782 9.10514 17.8038 8.99454 17.7101 8.90157L12.7101 3.90157C12.6171 3.80784 12.5065 3.73345 12.3846 3.68268C12.2628 3.63191 12.1321 3.60577 12.0001 3.60577C11.868 3.60577 11.7373 3.63191 11.6155 3.68268C11.4936 3.73345 11.383 3.80784 11.2901 3.90157L6.29006 8.90157C6.19633 8.99453 6.12194 9.10514 6.07117 9.22699C6.0204 9.34885 5.99426 9.47956 5.99426 9.61157C5.99426 9.74358 6.0204 9.87429 6.07117 9.99615C6.12194 10.118 6.19633 10.2286 6.29006 10.3216C6.38302 10.4153 6.49362 10.4897 6.61548 10.5405C6.73734 10.5912 6.86805 10.6174 7.00006 10.6174C7.13207 10.6174 7.26278 10.5912 7.38464 10.5405C7.5065 10.4897 7.6171 10.4153 7.71006 10.3216L12.0001 6.02157L16.2901 10.3216C16.383 10.4153 16.4936 10.4897 16.6155 10.5405C16.7373 10.5912 16.868 10.6174 17.0001 10.6174C17.1321 10.6174 17.2628 10.5912 17.3846 10.5405C17.5065 10.4897 17.6171 10.4153 17.7101 10.3216ZM12.7101 21.3216L17.7101 16.3216C17.8033 16.2283 17.8773 16.1176 17.9277 15.9958C17.9782 15.874 18.0042 15.7434 18.0042 15.6116C18.0042 15.3453 17.8984 15.0899 17.7101 14.9016C17.6168 14.8083 17.5061 14.7344 17.3843 14.6839C17.2625 14.6335 17.1319 14.6075 17.0001 14.6075C16.7338 14.6075 16.4784 14.7133 16.2901 14.9016L12.0001 19.2016L7.71006 14.9016C7.6171 14.8078 7.5065 14.7334 7.38464 14.6827C7.26278 14.6319 7.13207 14.6058 7.00006 14.6058C6.86805 14.6058 6.73734 14.6319 6.61548 14.6827C6.49362 14.7334 6.38302 14.8078 6.29006 14.9016C6.19633 14.9945 6.12194 15.1051 6.07117 15.227C6.0204 15.3489 5.99426 15.4796 5.99426 15.6116C5.99426 15.7436 6.0204 15.8743 6.07117 15.9961C6.12194 16.118 6.19633 16.2286 6.29006 16.3216L11.2901 21.3216C11.383 21.4153 11.4936 21.4897 11.6155 21.5405C11.7373 21.5912 11.868 21.6174 12.0001 21.6174C12.1321 21.6174 12.2628 21.5912 12.3846 21.5405C12.5065 21.4897 12.6171 21.4153 12.7101 21.3216Z' fill='%234E5968'/%3E%3C/svg%3E%0A");
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    padding: 0 1rem !important;
}
.bloque-formulario .gform_wrapper h3,
.bloque-formulario .gform_wrapper .gsection_title,
.bloque-formulario .gform_wrapper h3.gsection_title {
    font-size: 1.25rem !important;
    font-family: 'Lilita One', Georgia, Times, Times New Roman, serif !important;
    font-weight: normal !important;
    line-height: 1.2 !important;
    margin-bottom: 1rem !important;
}
.bloque-formulario .gform_wrapper .gfield_description {
    font-size: 80% !important;
}
.bloque-formulario .gform_wrapper .gform-footer input.button,
.bloque-formulario .gform_wrapper .gform-footer input.gform_button {
    font-family: "Avenir LT Std", Sans-serif !important;
    font-size: 1rem !important;
    font-weight: normal !important;
    margin-bottom: 0 !important;
    padding: 12px 24px !important;
    background-color: var(--e-global-color-primary) !important;
    font-family: "Avenir LT Std", Sans-serif;
    font-size: 1rem;
    font-weight: 400;
    color: var(--e-global-color-1efbf77);
    border-style: none;
    border-radius: 7px 7px 7px 7px !important;
}
.bloque-formulario .gform_wrapper .gform-footer input.button:hover,
.bloque-formulario .gform_wrapper .gform-footer input.gform_button:hover {
    background-color:var(--e-global-color-secondary) !important;
}
.elementor-field-type-checkbox .elementor-remember-me > label,
.elementor-field-type-checkbox .elementor-field-type-checkbox > label,
body.page-login .elementor-form-fields-wrapper .elementor-field-type-checkbox label,
.bloque-formulario .gform_wrapper .gfield_checkbox, 
.bloque-formulario .gform_wrapper .gfield_checkbox label {
    font-size: .9rem !important;
}
.bloque-formulario .gform_wrapper .gfield_validation_message,
.bloque-formulario .gform_wrapper .validation_message {
    background: transparent !important;
    border: none !important;
    font-size: .7rem !important;
    padding: 0 0 !important;
}
.bloque-formulario .gform_wrapper .gform-footer {
}
.bloque-formulario .gform_wrapper .gform-footer .gform-loader {
    font-size: 0px !important;
    margin-left: .5rem !important;
    background-image: url('/wp-content/themes/smb2b/images/iconos/loading3.gif') !important;
    background-repeat: no-repeat !important;
    background-size: 18px !important;
    width: 18px !important;
    height: 18px !important;
}
body.page-login .elementor-message.elementor-message-danger,
.gform_wrapper .gform_validation_errors {
    background-color: #fff9f9 !important;
    border-radius: 5px !important;
    border: 1.5px solid #c02b0a !important;
    box-shadow: 0 1px 4px rgba(0,0,0,.11), 0 0 4px rgba(18,25,97,.0405344) !important;
    margin-block-end: 8px;
    margin-block-start: 8px;
    padding-block: 16px;
    padding-inline-end: 16px;
    padding-inline-start: 48px;
    position: relative;
    width: 100%;
}

.coupon-error-notice {
    background-color: #fff9f9 !important;
    border-radius: 5px !important;
    border: 1.5px solid #c02b0a !important;
    color: #c02b0a;
    margin: 1rem 0;
    padding: 1em;
}
body.page-login .elementor-message.elementor-message-danger,
body.page-login .elementor-message.elementor-message-danger strong,
.gform_wrapper .gform_validation_errors,
.gform_wrapper .gform_validation_errors > h2 {
    font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
    font-size: .8rem !important;
    color: #c02b0a;
}

.bloque-relacionados {
}

.bloque-info-footer {
    background-color: #FFFFFF;
    margin: 0 0 !important;
}
.bloque-info-footer,
.bloque-info-footer p,
.bloque-info-footer div {
    line-height: 1.5;
}
.bloque-info-footer .info-footer a {
    color: #ED1B2F !important;
    text-decoration: none !important;
}
.bloque-info-footer .info-footer > img + p {
    margin-bottom: 0;
}
.bloque-info-footer .img-fluid {
    max-height: 50px;
}


.accordion {
    border-top: 1px solid #d9dcde !important;
}
.accordion .accordion-item {
    border-bottom: 1px solid #d9dcde !important;
}
.accordion .accordion-header {
    margin-top: 0;
    margin-bottom: 0;
}
.accordion .accordion-item,
.accordion .accordion-item .accordion-header .accordion-button {
    border: none;
    background-color: transparent;
    box-shadow: none;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}
.accordion .accordion-item .accordion-header .accordion-button {
    position: relative;
    width: 100%;
    text-align: left;
    padding: 1rem 0;
    padding-right: 3rem;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #000000;
    white-space: normal;
}
.accordion .accordion-item .accordion-header .accordion-button:after {
    content: "";
    position: absolute;
    right: 0;
    top: 22px;
    /**/
    background-image: url('/wp-content/themes/smb2b/images/iconos/arrow.svg');
    background-repeat: no-repeat;
    background-size: 16px;

}
.accordion .accordion-body {
    padding: 0 0 1rem 0;
}

.accordion .facetwp-checkbox {
    background: url('/wp-content/plugins/facetwp/assets/images/checkbox.png') 0 5px no-repeat;
    background-size: 14px 14px;
}
/*.accordion .facetwp-facet {
  margin-bottom: 1rem;
}*/

.elementor-widget-n-accordion {
}
.elementor-widget-n-accordion .e-n-accordion-item-title {
    position: relative !important;
    /*padding: .5rem 0 !important;*/
}
.elementor-widget-n-accordion .e-n-accordion-item-title-icon {
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translate(0,-50%) !important;
}
.elementor-widget-n-accordion .e-n-accordion-item-title-text {
    font-weight: 500 !important;
    text-transform: none !important;
}

.facetwp-facet {
	margin-bottom: 0 !important;
}

.aviso .woocommerce-error,
.aviso .woocommerce-info,
.aviso .woocommerce-message {
    padding: 1rem 1rem;
}
.aviso .woocommerce-error:before,
.aviso .woocommerce-info:before,
.aviso .woocommerce-message:before,
.aviso .woocommerce-error:after,
.aviso .woocommerce-info:after,
.aviso .woocommerce-message:after {
    content: none;
    display: none;
}
.aviso .elementor-widget-woocommerce-notices .woocommerce-message {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    /**/
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
}
.aviso .elementor-widget-woocommerce-notices .woocommerce-message .button {
    border: none !important;
    font-size: 1rem !important;
    margin-left: 1rem;
}

/**/
.footer {
    background-color: #d7e0e9;
}
.footer,
.footer .list-group {
   /* font-size: 13px;*/
}
.footer .claim,
.footer .telefono {
    font-family: 'Lilita One', Georgia, Times, Times New Roman, serif;
    font-weight: normal;
}
.footer .telefono {
    font-size: 1.5rem;
}
.footer,
.footer a {
    color: #000000;
}
.footer ul,
.footer ol {
    margin: 0;
    padding: 0;
}
.footer ul li,
.footer ol li {
    list-style-type: none !important;
}
.footer .custom-logo-link {
    display: inline-block;
}
.footer img.custom-logo {
    max-width: 100%;
    height: auto;
}
.footer .copyright small {
    font-size: .95em;
}

.woocommerce-LoopProduct-link {
	display: flex !important;
	align-items: flex-end !important;
	flex-direction: column !important;
	justify-content: flex-end;
}
.card-body .woocommerce-LoopProduct-link {
	text-align: left
}

table td .quantity .qty,
table td div.quantity input[type="number"],
.elementor-widget-woocommerce-cart .woocommerce .input-text.qty,
.elementor-widget-woocommerce-cart .woocommerce input[type="number"],
.quantity .input-group,
div.product form.cart div.quantity {
	/*width: 84px !important;*/
	width: fit-content !important;
}
div.product form.cart div.quantity + .single_add_to_cart_button {
    margin-left: 0 !important;
    font-size: 1rem !important;
}
div.product form.cart div.quantity + button:hover,
div.product form.cart div.quantity + .button:hover,
div.product form.cart div.quantity + .single_add_to_cart_button:hover {
    color: #FFFFFF !important;
    background-color: #BD0F20 !important;
}
table td .quantity .qty,
table td div.quantity input[type="number"],
.elementor-widget-woocommerce-cart .woocommerce .input-text.qty,
.elementor-widget-woocommerce-cart .woocommerce input[type="number"],
.woocommerce .quantity .qty,
div.quantity input[type="number"],
div.product form.cart div.quantity .qty {
    width: 4.8rem !important;
    padding: .4rem !important;
    text-align: center !important;
    color: #000000;
    border: 1px solid #767474;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
    margin-right: .3rem !important;
}
.elementor-widget-woocommerce-cart .woocommerce .input-text.qty,
.elementor-widget-woocommerce-cart .woocommerce input[type="number"],
.woocommerce-cart-form table td .qty {
    margin-right: 0 !important;
}
.quantity .input-group .input-group-text {
}

.product .cart {
	display: flex !important;
	align-items: flex-end !important;
	flex-direction: row !important;
	justify-content: flex-start;
}
button.single_add_to_cart_button {
	width: auto !important;
	flex-grow: 0 !important;
}
.product .cart > .button:before,
.woocommerce div.product form.cart .button:before,
div.product form.cart div.quantity + .single_add_to_cart_button:before,
button.single_add_to_cart_button:before {
    content: '';
    display: inline-block;
    margin-top: -2px;
    margin-right: .6rem;
    -webkit-mask-image: url('../images/iconos/bolsa.svg');
    mask-image: url('../images/iconos/bolsa.svg');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-color: white; /* color */
    width: 17px;
    height: 17px;
}

.product .icono_carrito .cart > .button:before,
.woocommerce div.product .icono_carrito form.cart .button:before,
div.product .icono_carrito  form.cart div.quantity + .single_add_to_cart_button:before,
.icono_carrito  button.single_add_to_cart_button:before {
    content: '';
    display: inline-block;
    margin-top: -2px;
    margin-right: .6rem;
    -webkit-mask-image: url('../images/iconos/carrito.svg');
    mask-image: url('../images/iconos/carrito.svg');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-color: white; /* color */
    width: 18px;
    height: 18px;
}

button.facetwp-load-more {
	height: auto;
	width: auto !important;
	flex-grow: 0 !important;
}
button.facetwp-load-more,
button.facetwp-load-more:hover,
button.facetwp-load-more:focus,
button.facetwp-load-more:active {
    color: #000000 !important;
    background-color: transparent !important;
    border: 1px solid #BEBEBE !important;
}
button.facetwp-load-more:hover {
    opacity: .85;
}
button.facetwp-load-more:before {
    display: inline-block;
    font-family: FontAwesome;
    float: left;
    content: "";
    margin-right: .5rem;
    /**/
    background-image: url('/wp-content/themes/smb2b/images/iconos/plus.svg');
    background-repeat: no-repeat;
    background-size: 16px;
    width: 16px;
    height: 16px;
    filter: invert(0);
    margin-top: 3px;
}
.is-loading button.facetwp-load-more:before {
    content: "none";
    display: none;
}

.woocommerce #content div.product div.images,
div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images {
	float: none;
	width: unset;
}

.woocommerce .cart-collaterals .cross-sells,
.woocommerce-page .cart-collaterals .cross-sells {
	float: none;
	width: auto;
}
.woocommerce table.shop_table td small {
    white-space: nowrap;
}

.cart_totals .includes_tax {
    white-space: nowrap;
    display: block;
    padding-top: .5em;
    border-top: 1px solid #ccc;
    margin-top: .5em;
} 
/*
.cart_totals .cart-subtotal {
    display: none !important;
} */

.elementor-widget-woocommerce-cart .woocommerce table.shop_table.cart .input-group-text {
   display: none !important;
}

.submenu li {
	width: 100% !important;
}

.facetwp-selections ul:before {
	content: "Seleccionado";
	font-family: 'Lilita One';
	font-size: 1.4em;
	color: #000;
	margin-bottom: .3em;
	display: block;
}

html[lang="ca"] .facetwp-selections ul:before {
	content: "Seleccionat";
}
html[lang="en"] .facetwp-selections ul:before,
html[lang="en-US"] .facetwp-selections ul:before,
html[lang="en-UK"] .facetwp-selections ul:before {
    content: "Selected";
}

html[lang="pt"] .facetwp-selections ul:before {
	content: "Selecionado";
}

html[lang="pt-br"] .facetwp-selections ul:before {
	content: "Selecionado";
}

.facetwp-selections ul {
	padding:1em 1em 0.7em 1em;
	background:#FFFFFF;
	border-radius:8px;
	font-size: 0.93rem;
	font-family: 'Lilita One';
}

.facetwp-selections ul li {
	display: block;
	width: 100%;
}
.facetwp-selections ul li,
.facetwp-selections ul li > span {
	margin-bottom: 0.3em;
}
.facetwp-selections ul li > span:last-child,
.facetwp-selections ul li > span:only-child {
	margin-bottom: 0;
}

.facetwp-selections ul li .facetwp-selection-value {
	background-position: calc(100% - 1em) center;
	display: block;
	width: 100%;
	background-color: #f3f6fa;
	padding: 0.5em 2.2em 0.5em 1em;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
	border-radius: 8px;
}

.facetwp-selections ul li .facetwp-selection-value:hover {
	background-color: #dadde1;
}

.facetwp-selections .facetwp-selection-label {
	display: none;
}
.facet-resultados {
    padding-right: 1rem;
    border-right: 1px solid #9a9a9a;
}
.facetwp-facet,
.facetwp-facet select {
	font-size: .9rem;
	font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
}
.facetwp-facet select {
    border: 0;
    width: auto;
    background-color: transparent;
}
.facetwp-checkbox:hover {
	color: #ED1B2F !important;
}

.facetwp-toggle {
    margin-top: .5rem !important;
	color: #62666d !important;
}
.facetwp-expand {
	display: none;
}

.facetwp-toggle:hover, 
.facetwp-toggle:active {
	color: #000 !important;
}

.facetwp-reset {
	display: block;
	width: 100% !important;
	font-size: .95rem !important;
	color: #FFFFFF;
	background: #ED1B2F !important;
	border: 0 !important;
    -moz-border-radius: 8px !important;
    -webkit-border-radius: 8px !important;
	border-radius: 8px !important;
	font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif !important;
	text-align: center;
	margin-top: 1em;
}

.filtros-facetwp {
	--gap: 3px !important;
    --row-gap: 3px !important;
}

.facetwp-reset:hover, .facetwp-reset:active {
	background: #BD0F20 !important;
}

.facetwp-type-slider .facetwp-slider {
	background: #d6dfe8;
	height: .25rem;
	border: none;
}
.facetwp-slider .noUi-connect{
	background-color: #ED1B2F;
}
.facetwp-type-slider .facetwp-slider .noUi-handle-lower,
.facetwp-type-slider .facetwp-slider .noUi-handle-upper{
	background: #ED1B2F;
	border: none;
	border-radius: 50%;
	height: .970rem;
	width: .970rem;
	top: -6px;
	right: -5px;
}
.facetwp-type-slider .facetwp-slider .noUi-handle-upper{
	right: -10px;
}
.facetwp-slider-reset {
	box-shadow: none !important;
	margin-top: .5em;
	font-size: .95rem !important;
	padding: 8px 16px !important;
    -moz-border-radius: 8px !important;
    -webkit-border-radius: 8px !important;
	border-radius: 8px !important;
}

.facetwp-checkbox {
    background-image: url('/wp-content/themes/smb2b/images/iconos/checkbox.svg') !important;
    background-size: 16px 16px !important;
    /*margin-bottom: .1rem !important;*/
    padding-left: 1.75rem !important;
    cursor: pointer !important;
    background-repeat: no-repeat !important;
    background-position: 0 2px !important;
}

.facetwp-checkbox.checked {
    background-image: url('/wp-content/themes/smb2b/images/iconos/checkbox-on.svg') !important;
}

.facetwp-facet.facetwp-facet-precio.facetwp-type-slider {
    width: 98%;
    margin: .5em auto;
}
.facetwp-pager .facetwp-page.prev,
.facetwp-pager .facetwp-page.next {
  font-family: "Avenir LT Std", Sans-serif !important;
  color: #62666d;
  font-weight: bold;
  opacity: .75;
}
.facetwp-pager .facetwp-page.prev {
  padding-right: 1.5rem;
}
.facetwp-pager .facetwp-page.next {
  padding-left: 1.5rem;
}

.woocommerce-cart .icono-carrito {
	display: none;
}


#modal-add-to-cart {
	opacity: 0;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	position: fixed;
	bottom: -200px;
	width: 50%;
	transform: translateX(-50%);
	left: 50%;
	/*z-index: 99;*/
	z-index: 10;
}

#modal-add-to-cart.visible {
	bottom: 2rem;
	opacity: 1;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

#modal-add-to-cart .stock {
	display: none;
}

/**/
body.page-login {
}
body.page-registro .bloque-info-footer,
body.page-login .bloque-info-footer {
    display: none !important;
    border: 0 !important;
    clip: rect(0,0,0,0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
}
body.page-registro .elementor-login.elementor-login__logged-in-message,
body.page-login .elementor-login.elementor-login__logged-in-message {
    text-align: center;
    display: block;
}

.e-loop-nothing-found-message {
    margin-top: 2em;
    background-image: url('/wp-content/themes/smb2b/images/error-carrito-vacio.png') !important;
    background-repeat: no-repeat !important;
    background-size: 280px !important;
    background-position: center top !important;
}
.bloque .e-loop-nothing-found-message,
.bloque-novedades .e-loop-nothing-found-message,
.bloque-mas-vendidos .e-loop-nothing-found-message,
.bloque-destacados .e-loop-nothing-found-message,
.bloque-relacionados .e-loop-nothing-found-message {
    background-image: url('/wp-content/themes/smb2b/images/error-carrito-vacio-bloques.png') !important;
}
.e-loop-nothing-found-message .btn,
.e-loop-nothing-found-message .btn-primary,
.e-loop-nothing-found-message .btn.btn-primary {
    margin-left: auto !important;
    margin-right: auto !important;
    color: #FFFFFF !important;
    font-weight: 600 !important;
}
.e-loop-nothing-found-message .titulos {
    margin-bottom: 37px !important;
    font-weight: 700 !important;
}
.bloque .e-loop-nothing-found-message {
    margin-left: 0;
    font-family: "Lilita One", Sans-serif;
    margin-top: 2em;
}
.bloque .e-loop-nothing-found-message:after {
    content: "¡Vaya! Ahora mismo no tenemos nada por aquí";
    display: block;
    font-size: 2rem;
    color: #000;
    text-align: center;
    width: 100%;
    margin-bottom: 2em;
    font-family: "Lilita One", Sans-serif
}
html[lang="ca"] .bloque .e-loop-nothing-found-message:after {
    content: "Oh! Ara mateix no tenim res al voltant";
}

html[lang="en"] .bloque .e-loop-nothing-found-message:after,
html[lang="en-US"] .bloque .e-loop-nothing-found-message:after,
html[lang="en-UK"] .bloque .e-loop-nothing-found-message:after {
    content: "Oh! We haven't found what you're looking for";
}

html[lang="pt"] .bloque .e-loop-nothing-found-message:after {
    content: "Oh! Agora não temos nada por perto";
}

html[lang="pt-br"] .bloque .e-loop-nothing-found-message:after {
    content: "Oh! Agora não temos nada por perto";
}

.bloque.bloque-novedades.texto-blanco .e-loop-nothing-found-message:after {
    color: #FFFFFF;
}
.bloque.bloque-novedades.texto-negro .e-loop-nothing-found-message:after {
    color: #000;
}
.elementor-widget-woocommerce-cart .elementor-cta__content {
    padding: 35px !important;
}
.elementor-widget-woocommerce-cart .elementor-cta__content-item,
.elementor-widget-woocommerce-cart .elementor-cta__content-item:not(:last-child) {
  margin-bottom: 15px !important;
}

/* CONTRASEÑA */
form.woocommerce-ResetPassword.lost_reset_password {
    width: 70%;
}
form.woocommerce-ResetPassword.lost_reset_password input[type="text"],
.woocommerce-lost-password .woocommerce-ResetPassword.lost_reset_password input[type="text"],
.woocommerce-lost-password .woocommerce-ResetPassword.lost_reset_password input[type="password"] {
    margin: 0 auto;
    border-radius: 8px !important;
    border: 1px solid #C8D5DC !important;
    padding: .5rem 1rem !important;
    width: 100%;
}

form.woocommerce-ResetPassword.lost_reset_password .button {
    font-weight: normal;
}

.elementor-login.elementor-form label,
form.woocommerce-ResetPassword.lost_reset_password label {
    padding-bottom: .4rem !important;
    font-weight: 500;
}

body.woocommerce-lost-password .e-my-account-tab {
    width: 60%;
    margin: 0 auto;
    text-align: justify;
    color: #000;
}

.woocommerce-lost-password .woocommerce-ResetPassword.lost_reset_password {
    width: 100% !important;
    border-radius: 8px !important;
    border: 1px solid #C8D5DC !important;
}

.woocommerce-lost-password .woocommerce-ResetPassword.lost_reset_password button.woocommerce-Button[type="submit"] {
    background-color: var(--e-global-color-primary) !important;
    color: var(--e-global-color-d6cea4e) !important;
    border-radius: 8px !important;
}
.woocommerce-lost-password .woocommerce-ResetPassword.lost_reset_password button.woocommerce-Button[type="submit"]:hover,
.woocommerce-lost-password .woocommerce-ResetPassword.lost_reset_password button.woocommerce-Button[type="submit"]:active {
    background-color: var(--e-global-color-secondary) !important;
    color: var(--e-global-color-d6cea4e) !important;
}
.show-password-input:hover,
.show-password-input:active {
    background: none !important;
    color: var(--e-global-color-secondary) !important;
}

.info_digital {
    font-size: 0.8rem;
    color: var(--e-global-color-primary);
    margin-bottom: 1.5em;
    display: inline-block;
    cursor: default;
}

.info_digital .badge {
    font-weight: 700;
    font-size: 0.75rem;
    padding: 0.5rem .7rem;
}

.info_digital .elementor-icon-list-text {
    display: inline-block;
    vertical-align: middle;
}

.info_digital .elementor-icon-list-icon svg {
    height: 1.2rem;
    fill: var(--e-global-color-primary);
    margin-right: .5em;
    display: inline-block;
    vertical-align: middle;
}

.badge {
    cursor: default;
}

.detalle_badges {
    text-align: center;
}
.digital-product a {
    position: relative;
}
.digital-product a:before {
    content: "Producto digital";
    display: inline-block;
    padding: .2rem .5rem;
    background: RGBA(var(--bs-info-rgb),var(--bs-bg-opacity,1))!important;
    font-weight: 700;
    color: #000;
    font-size: .7rem;
    position: absolute;
    left: 10px;
    bottom: 10px;
    border-radius: 6px;
    z-index: 3;
}

html[lang="ca"] .digital-product a:before {
    content: "Producte digital";
}
html[lang="en"] .digital-product a:before,
html[lang="en-US"] .digital-product a:beforer,
html[lang="en-UK"] .digital-product a:before {
    content: "Digital Product";
}

html[lang="pt"] .digital-product a:before {
    content: "Produto digital";
}

html[lang="pt-br"] .digital-product a:before {
    content: "Produto digital";
}

.gform-theme--foundation .gform_fields {
  grid-row-gap: 15px !important;
}

#form-vaciar-carrito,
.wc-proceed-to-checkout .button {
    width: 100% !important;
}

.btn_vaciar {
    width: 100% !important;
    margin-top: 10px !important;
    opacity: 0;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;  
}
.e-loop-item .soporte-no-disponible {
    display: none;
}

#login-page .elementor-message.elementor-message-danger {
    position: absolute !important;
    width: 100%;
    top: 260px;
}
#login-page .mi-login-dos-botones {
    margin-top: -96px; 
    margin-left:120px; 
    pointer-events: none;
}
#login-page .mi-login-dos-botones form.woocommerce-form .form-row:last-child {
    display: flex !important;
    gap: 16px !important;       
    align-items: center !important;
    flex-wrap: wrap;         
}
#login-page .mi-login-dos-botones .button.alt.crear-cuenta-boton {
    background-color: transparent !important;
    border-color: transparent !important;
    color: var(--e-global-color-primary); !important;
    font-weight: bold;
    height: 42px !important;      
    line-height: 42px !important;
    padding: 0 10px !important;
    margin: 0!important;
    border-radius: 0px;
    white-space: nowrap;
    display: inline-block;
    width: auto !important;
}
#login-page .mi-login-dos-botones .button.alt.crear-cuenta-boton:hover {
    color: var(--e-global-color-secondary); !important;
}

dl.variation dt.variation-bx,
.elementor-menu-cart__product .variation-bx {
  display: none !important;
}

.elementor-widget-woocommerce-cart .woocommerce .product-name .variation {
    margin: 5px 0 !important;
}

dl.variation dd.variation-bx {
    margin-left: 0 !important;
}
.elementor-widget-woocommerce-cart dl.variation > dd.variation-bx:nth-of-type(n+2){
    margin-top: 5px !important;
}

dd.variation-bx p {
    background-color: #000;
    color: #fff;
    display: inline-block;
    border-radius: 4px;
    font-size: 0.7em;
    padding: 0.1em 0.5em;
}

.sm-box-cart .sm-box-cart__label {
    margin-top: 2em;
    margin-bottom: 1em;
    font-size: .92em;
}
.sm-box-cart .sm-box-cart__label span {
    display: block;
    padding-top: .5em;
} 

button.single_add_to_cart_button.button.alt {
    background-color: var(--e-global-color-primary);
    font-weight: normal;
}

.wpml-ls-legacy-list-horizontal {
    padding: 0 !important;
    border: 0 !important;
}
.wpml-ls-legacy-list-horizontal>ul {
    vertical-align: text-bottom;
    display: block;
}
.wpml-ls-legacy-list-horizontal a {
    padding: 0 !important;
    font-size: .7em;
    color: var(--e-global-color-text) !important;
}
.wpml-ls-legacy-list-horizontal a:hover {
    color: var(--e-global-color-primary) !important;
}

.login-form label {
    margin-bottom: .5em;
}

.login-form input[type="text"],
.login-form input[type="password"] {
    background-color: #fff;
    border-radius: 8px;
    border: 1px solid #C8D5DC;
}


@media (max-width: 767px) {
    #login-page .mi-login-dos-botones form.woocommerce-form .form-row:last-child {
        flex-direction: column !important;
    }
    body.woocommerce-lost-password .e-my-account-tab {
        width: 100%;
    }
}


.woocommerce-lost-password .woocommerce-ResetPassword.lost_reset_password {
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
}

.woocommerce-lost-password .woocommerce-ResetPassword.lost_reset_password button {
    font-weight: normal !important;
}

.woocommerce-lost-password input#user_login {
    background: #fff !important;
    padding: .7rem 1rem !important;
}

/**/
@media (min-width: 576px) {
    .woocommerce-page div.product div.images.col-sm-5 {
        flex: 0 0 auto;
        width: 41.66666667% !important;
    }
    .bloque.bloque-banners > .container {
        max-width: 100%;
    }
}

/**/
@media only screen and (min-width: 545px) and (max-width: 575px) {
}

/**/
@media only screen and (min-width: 545px) and (max-width: 766px) {
    .proyecto .image img.d-sm-none {
        display: block !important;
    }

    .bloque.bloque-carrusel {
    }
    .bloque.bloque-carrusel .carousel-inner {
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
    }
    .bloque.bloque-carrusel .carousel .carousel-item > .container {
        min-width: 100%;
        padding-left: 0;
        padding-right: 0;
    }
    .bloque.bloque-carrusel .carousel-inner:after {
        display: none !important;
        content: none !important;
    }
    .bloque.bloque-carrusel .carousel-item > .container > a {
        display: block !important;
        height: 480px !important;
        min-height: 480px !important;
        overflow: hidden !important;
    }
    .bloque.bloque-carrusel .carousel-item > .container > .row.d-flex {
        height: 480px !important;
        min-height: 480px !important;
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }
    .bloque.bloque-carrusel .carousel-item > .container > .row > div > img.image {
        max-width: 240px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .bloque.bloque-carrusel .carousel-item .image.d-sm-none {
        display: block !important;
        position: absolute !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    .bloque.bloque-carrusel .carousel-item .image.d-sm-block {
        display: none !important;
    }
    .bloque.bloque-carrusel .carousel-item > .container > .row > div {
        width: 100% !important;
        padding-left: 3rem !important;
        padding-right: 3rem !important;
    }

    .bloque.bloque-banners > .container {
        max-width: none !important;
    }
    .bloque.bloque-banners > .container > .row.listado > div {
        width: 100% !important;
    }
    form.woocommerce-ResetPassword.lost_reset_password {
        width: 100%;
    }
    form.woocommerce-ResetPassword.lost_reset_password input[type="text"] {
        width: 100%;
    }    
}

/**/
@media only screen and (min-width: 767px) and (max-width: 767px) {
    #login-page .mi-login-dos-botones {
        margin-top: -96px; 
        margin-left:120px; 
        pointer-events: none;
    }
    main.site-main .bloque.bloque-carrusel {
    }
    main.site-main .bloque.bloque-carrusel .carousel-item > .container {
        max-width: none !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-item > .container > a {
        position: relative !important;
        display: block !important;
        overflow: hidden !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-item > .container > a > .image.d-sm-none {
        display: block !important;
        position: absolute !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-item a > img,
    main.site-main .bloque.bloque.bloque-carrusel .carousel .carousel-item img.image {
        margin: 0 0 !important;
        width: 100% !important;
        height: auto !important;
        max-width: none !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-item a > img.d-sm-block {
        display: none !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-item a > img.d-sm-none {
        display: block !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-item .btn,
    main.site-main .bloque.bloque-carrusel .carousel-item .primary,
    main.site-main .bloque.bloque-carrusel .carousel-item .btn.primary {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-inner {
        position: initial !important;
        width: 100% !important;
        display: block !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-indicators {
        position: initial !important;
        margin: 1rem 0 0 0 !important;
        display: block !important;
        width: 100% !important;
        text-align: center;
    }
    main.site-main .bloque.bloque-carrusel .carousel-item > .container > .row > div {
        width: 100% !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-item > .container > a,
    main.site-main .bloque.bloque-carrusel .carousel-item > .container > .row.d-flex {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }
    main.site-main .bloque.bloque-carrusel .carousel-item > .container > .row > div > img.image {
        max-width: 160px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/**/
@media only screen and (min-width: 767px) and (max-width: 870px) {
    .woocommerce div.product form.cart .button, 
    body .bloque.bloque-novedades .product .cart > .button,
    body .bloque.bloque-mas-vendidos .product .cart > .button,
    body .bloque.bloque-destacados .product .cart > .button,
    body .bloque.bloque-relacionados .product .cart > .button,
    body .woocommerce div.product form.cart .button,
    body .product .cart > .button {
        min-width: 50px !important;
    }
    .woocommerce div.product form.cart .button.loading,
    .woocommerce div.product form.cart .button.added, 
    body .bloque.bloque-novedades .product .cart > .button.loading,
    body .bloque.bloque-novedades .product .cart > .button.added,
    body .bloque.bloque-mas-vendidos .product .cart > .button.loading,
    body .bloque.bloque-mas-vendidos .product .cart > .button.added,
    body .bloque.bloque-destacados .product .cart > .button.loading,
    body .bloque.bloque-destacados .product .cart > .button.added,
    body .bloque.bloque-relacionados .product .cart > .button.loading,
    body .bloque.bloque-relacionados .product .cart > .button.added,
    body .woocommerce div.product form.cart .button.loading,
    body .woocommerce div.product form.cart .button.added,
    body .product .cart > .button.loading,
    body .product .cart > .button.added {
        padding-left: 34px !important;
    }
    /*body.single .product .cart > .button,*/
    /*body.single .woocommerce div.product form.cart .button,*/
    body.archive .product .cart > .button,
    body.archive .woocommerce div.product form.cart .button {
        text-indent: -9999px !important;
        overflow: hidden !important;
    }
    /* body.single .product .cart > .button:before,
    body.single .woocommerce div.product form.cart .button:before, */
    body.archive .product .cart > .button:before,
    body.archive .woocommerce div.product form.cart .button:before {
        margin-right: 0 !important;
    }
}

/**/
@media (max-width: 767px) {    
    .bloque.bloque-novedades .product .price del {
        display: block;
        padding-bottom: .4rem;
    }
    .info_digital {
        margin-bottom: 2.5em;
    }
    form.woocommerce-ResetPassword.lost_reset_password {
        width: 100%;
    }
    form.woocommerce-ResetPassword.lost_reset_password input[type="text"] {
        width: 100%;
    }    

    .elementor-widget-woocommerce-cart .woocommerce table.cart img {
        width: 85px !important;
        min-width: 85px !important;
    }

    .bloque.bloque-banners > .container,
    .bloque.bloque-texto > .container,
    .bloque.bloque-texto-en-columnas > .container,
    .bloque.bloque-imagen > .container,
    .bloque.bloque-texto-con-imagen > .container,
    .bloque.bloque-video > .container,
    .bloque.bloque-formulario > .container,
    .bloque.bloque-desplegable > .container {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    header > header.elementor-element {
        margin-bottom: -4px;
    }
    header .dropdown-item.active,
    header .dropdown-item:active {
        color: #000000 !important;
        background-color: transparent !important;
    }
    header .elementor-widget-off-canvas .e-off-canvas__content {
        overflow-x: hidden !important;
    }
    #wpadminbar {
        display: none !important;
    }

    html {
        background-color: #F9F9F9;
        overflow-x: hidden !important;
    }
    body {
        overflow-x: hidden !important;
		background-color: #F9F9F9 !important;
    }

	header .opciones,
	header .buscador {
		background: #f9f9f9;
	}	
	header .opciones {
        display: none !important;
        border: 0 !important;
        clip: rect(0,0,0,0) !important;
        height: 1px !important;
        margin: -1px !important;
        overflow: hidden !important;
        padding: 0 !important;
        position: absolute !important;
        width: 1px !important;
	}
	
	header input[type=search] {
        width: calc(100% - 100px);
        background: #f3f6fa;
        border: 1px solid #dde4ec;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
        padding: 0 1rem 0 1rem;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
	}
	header input[type=search],
    header .widget_product_search .search-field + button {
        font-size: .9rem !important;
    }
    header .widget_product_search .search-field + button {
        max-width: fit-content;
    }
	
	header .buscador button {
		width: 32%;
		position: absolute;
		right: 0;
		top: 0;
		z-index: 4;
	}
	
	header .buscador-avanzado {
		text-align: center;
		display: block;
		font-size: .9rem;
	}

    .woocommerce div.product div.images .woocommerce-product-gallery__trigger {
        z-index: 10 !important;
    }

    a,
    a:hover,
    a:focus,
    a:active {
        color: #ED1B2F;
        text-decoration: none;
    }

    .h1,
    .h2,
    .h3,
    .h4,
    .h5,
    .h6,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
    }

    .text-left-xs {
        text-align: left !important;
    }

    .text-right-xs {
        text-align: right !important;
    }

    .text-center-xs {
        text-align: center !important;
    }

    .text-justify-xs {
        text-align: justify !important;
    }

    .hidden-xs {
        display: none !important;
    }

    .titulos {
    }
    .subtitulos {
    }

    .product .elementor-widget-image img,
    .product img.size-woocommerce_thumbnail {
        max-height: 220px;
    }

    .product .cart > .button,
    .btn {
        font-size: 1rem !important;
    }
    .product .cart > .button,
    .product .cart > .button:hover,
    .product .cart > .button:focus,
    .product .cart > .button:active,
    .btn,
    .btn:hover,
    .btn:focus,
    .btn:active {
        color: #FFFFFF;
        background-color: #ED1B2F;
    }
    .btn-primary {
    }
    .btn-secondary {
    }
    .btn-outline-primary {
    }
    .btn-outline-secondary {
    }

    .product .cart {
    }
    .ficha-botones .product .cart,
    .ficha-botones :is(.elementor-widget-woocommerce-product-add-to-cart,
    .ficha-botones .woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart,
    .ficha-botones .elementor-widget-wc-add-to-cart,
    .ficha-botones .woocommerce div.product .elementor-widget-wc-add-to-cart).elementor-add-to-cart-mobile--align-center:not([class*="--layout-stacked"]):not([class*="--layout-auto"]) form.cart:not(.grouped_form):not(.variations_form) {
        justify-content: left;
        text-align: left;
    }
    table td .quantity .qty,
    table td div.quantity input[type="number"],
    .elementor-widget-woocommerce-cart .woocommerce .input-text.qty,
    .elementor-widget-woocommerce-cart .woocommerce input[type="number"],
    .product div.quantity input[type="number"],
    div.product form.cart div.quantity .qty {
        width: 6rem !important;
		max-width: 100%;
        font-size: 1rem !important;
        padding: .5rem .5rem .5rem .1rem;
        margin-right: .3rem;
    }
    .bloque div.product form.cart div.quantity .qty {
        width: 4rem !important;
    }
    body:not(.single) .product .cart > .button {
        text-indent: -9999px !important;
        margin-left: 0 !important;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
    }

    .bloque.bloque-novedades .product .cart > .button,
    .bloque.bloque-mas-vendidos .product .cart > .button,
    .bloque.bloque-destacados .product .cart > .button,
    .bloque.bloque-relacionados .product .cart > .button,
    .woocommerce div.product form.cart .button,
    .product .cart > .button {
        min-width: 50px !important;
    }
    .bloque.bloque-novedades .product .cart > .button.loading,
    .bloque.bloque-novedades .product .cart > .button.added,
    .bloque.bloque-mas-vendidos .product .cart > .button.loading,
    .bloque.bloque-mas-vendidos .product .cart > .button.added,
    .bloque.bloque-destacados .product .cart > .button.loading,
    .bloque.bloque-destacados .product .cart > .button.added,
    .bloque.bloque-relacionados .product .cart > .button.loading,
    .bloque.bloque-relacionados .product .cart > .button.added,
    .woocommerce div.product form.cart .button.loading,
    .woocommerce div.product form.cart .button.added,
    .product .cart > .button.loading,
    .product .cart > .button.added {
        padding-left: 34px !important;
    }
    .product .cart .add_to_cart_button.added:after,
    .product .cart > .button.added:after {
        margin-right: 0 !important;
        left: 15px;
        top: 14px;
    }
    .product .cart .add_to_cart_button.loading:after,
    .product .cart > .button.loading:after {
        margin-right: 0 !important;
        left: 15px;
        top: 15px;
    }

    .mostrar-filtros-xs {
    }
    .mostrar-filtros-xs a#mostrar-filtros {
        font-size: .9rem !important;
        margin-top: -0 !important;
        padding-top: 0;
        padding-bottom: 0;
        top: -1rem !important;
        position: relative;
    }
    .mostrar-filtros-xs a#mostrar-filtros,
    .mostrar-filtros-xs a#mostrar-filtros:hover,
    .mostrar-filtros-xs a#mostrar-filtros:focus,
    .mostrar-filtros-xs a#mostrar-filtros:active {
        color: #000000 !important;
        background-color: transparent !important;
        text-decoration: underline !important;
    }
    .mostrar-filtros-xs a#mostrar-filtros .elementor-button-icon svg {
        filter: invert(1);
        opacity: .7;
    }


    body.archive .bloque-resultados .facet-wrap {
        margin-top: -1rem;
    }
    .facet-resultados {
        padding: 0 !important;
        border: none !important;
        text-align: center !important;
        margin-top: -2rem;
    }
    .facet-orden {
        display: none !important;
        height: 0 !important;
    }
    .facetwp-facet,
    .facetwp-facet select {
        font-size: .9rem;
    }
    .facetwp-facet select {
        margin: -2rem 0 0 0;
    }

    /**/
    header {
    }
    header .custom-logo-link {
        max-width: 80px;
    }
    /**/
    header > .navbar {
        margin: 0 0 1rem 0;
        padding: 0 0;
    }
    /**/
    header .div_acciones .btn + .btm,
    header .div_acciones button + button {
        margin-left: 1rem;
    }

    header.elementor-location-header form.woocommerce-product-search select {
        display: none !important;
    }

    .icono-mi.cuenta {
    }
    .icono-carrito {
    }

    /**/
    main.site-main,
    main#content {
    }
    main.site-main {
        padding-bottom: 1rem;
    }
    /* Mismo ajuste que en el bloque de escritorio (min-width: 768px), ver
       comentario junto a .page-inicio ahi abajo. */
    .page-inicio main.site-main,
    .page-inicio main#content {
        padding-bottom: 0;
    }
    /* Mismo patron que .page-inicio: las 6 paginas tematicas del rediseño
       (edad 0-2/3-5/6-9/10-12, Barco de Vapor, Juvenil) tienen secciones a
       sangre completa hasta la onda del footer (data-lij-theme), asi que
       este padding-bottom del tema deja la misma franja de fondo #F9F9F9
       de <main> entre la ultima seccion y el footer. Ver comentario
       completo junto a .page-inicio en el bloque de escritorio (2026-09-23). */
    .page-0-2 main.site-main,
    .page-0-2 main#content,
    .page-3-5 main.site-main,
    .page-3-5 main#content,
    .page-6-9 main.site-main,
    .page-6-9 main#content,
    .page-10-12 main.site-main,
    .page-10-12 main#content,
    .page-barco-de-vapor main.site-main,
    .page-barco-de-vapor main#content,
    .page-juvenil main.site-main,
    .page-juvenil main#content {
        padding-bottom: 0;
    }
    main.site-main .page-header > .entry-title {
        max-width: calc(100% - 3rem);
        padding: 0 0;
    }

    .descargables,
    .bloque {
        margin-bottom: 1.5em !important;
    }
	footer .bloque {
		margin-bottom: 0 !important;
	}
    .bloque .titulos,
    .bloque .subtitulos {
        margin-bottom: 1rem;
    }

    .bloque-texto {
    }

    .bloque-texto-en-columnas {
    }

    .bloque-imagen {
    }
    .bloque-imagen > .container > .row > div + div {
        margin-top: 1.5rem;
    }

    .bloque-texto-con-imagen {
    }
    .bloque-texto-con-imagen .order-1 {
        margin-bottom: 1rem;
    }

    .bloque-video {
    }

    .bloque-desplegable {
    }

    .bloque-carrusel {
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
        overflow: hidden;
    }
    .bloque-carrusel .carousel-item {
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
        overflow: hidden;
        margin-bottom: 0;
        padding: 0 0;
        text-align: center;
    }
    .bloque.bloque-carrusel .carousel .carousel-item > .container {
        padding-left: 0;
        padding-right: 0;
    }
    .bloque-carrusel .carousel-item a > img,
    .bloque.bloque-carrusel .carousel .carousel-item img.image {
        margin: 0 0;
        width: 100%;
        height: auto;
        max-width: none;
    }
    .bloque-carrusel .carousel-item .btn,
    .bloque-carrusel .carousel-item .primary,
    .bloque-carrusel .carousel-item .btn.primary {
        margin-left: auto;
        margin-right: auto;
    }
    .bloque-carrusel .carousel-inner {
        position: initial;
        width: 100%;
        display: block !important;
    }
    .bloque-carrusel .carousel-indicators {
        position: initial !important;
        margin: 1rem 0 0 0;
        display: block !important;
        width: 100%;
        text-align: center;
    }
    .bloque-carrusel .carousel-item > .container > .row > div {
        padding-left: 3rem;
        padding-right: 3rem;
    }
    .bloque-carrusel .carousel-item > .container > a,
    .bloque-carrusel .carousel-item > .container > .row.d-flex {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > img.image {
        max-width: 160px;
        margin-left: auto;
        margin-right: auto;
    }
    /**/
    .bloque.bloque-carrusel .carousel .carousel-item > .container.text-center {
        /*background-color: #000000 !important;*/
    }
    .bloque.bloque-carrusel .carousel .carousel-item img.image-dark {
        /*opacity: .5 !important;*/
    }
    .bloque-carrusel .carousel-item > .container > .dark-bg {
        position: absolute;
        z-index: 2;
        top: 0;
        width: 100%;
        height: 100%;
    }
    .bloque-carrusel .carousel-item > .container > .dark-bg:before {
        content: none !important;
        display: none !important;
    }
    /**/

    .bloque-novedades-productos {
    }

    .bloque.bloque-novedades {
    }
    .bloque.bloque-novedades .elementor-widget-n-tabs .swiper-wrapper > .swiper-slide > .elementor-element:first-child > .elementor-element.e-child:first-child::after {
        content: none;
        display: none;
    }
    .bloque.bloque-novedades .elementor-widget-image {
    }
    .bloque.bloque-novedades .elementor-widget-n-tabs .elementor-widget-image {
        padding-bottom: 0;
    }


    .bloque-mas-vendidos-productos {
    }

    .bloque-destacados-productos {
    }

    .badge.new {
        font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
        font-weight: 700;
        padding: .35rem 1rem;
        color: #FFFFFF !important;
        background-color: #000000 !important;
        border-bottom-right-radius: 0 !important;
        border-bottom-left-radius: 0 !important;
		margin: 0 auto;
		font-size: .8rem;
        z-index: 1;
    }
	.badge.destacado {
        font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
        font-weight: 700;
        padding: .35rem 1rem;
        color: #FFFFFF !important;
        background-color: #6f7580 !important;
        border-bottom-right-radius: 0 !important;
        border-bottom-left-radius: 0 !important;
		margin: 0 auto;
		font-size: .8rem;
        z-index: 1;
    }
	.badge.best {
        font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
        font-weight: 700;
        padding: .35rem 1rem;
        color: #FFFFFF !important;
        background-color: #6f7580 !important;
        border-bottom-right-radius: 0 !important;
        border-bottom-left-radius: 0 !important;
		margin: 0 auto;
		font-size: .8rem;
        z-index: 1;
    }

    .bloque-banners {
    }
    .bloque-banners .row.listado > div {
        margin-bottom: 1.5rem;
    }
    .bloque-banners .row.listado > div:last-child {
        margin-bottom: 0;
    }
    .bloque-banners .banner-content {
        padding: 30px 30px;
        display: block;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
        text-align: center;
    }
    .bloque-banners .image {
        position: relative;
        margin-bottom: 40px;
    }
    .bloque-banners .image > .image-content {
        margin-left: auto;
        margin-right: auto;
        max-width: 120px;
        text-align: center;
    }
    .bloque-banners .image > .image-content > img {
        width: 120px;
        height: 120px;
    }
    .bloque-banners .image:after {
        content: "";
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        bottom: -25px;
        background-image: url('../images/sombra.png');
        background-repeat: no-repeat;
        background-size: 120px;
        width: 120px;
        height: 11px;
    }
    .bloque-banners .banner-content .btn,
    .bloque-banners .banner-content .btn-primary,
    .bloque-banners .banner-content .btn.btn-primary {
        margin: 0 auto;
    }

    .elementor-widget-shortcode span.isbn,
    .product .card-body .isbn {
        font-size: 12px;
		text-align: left;
		display: block;
		width: 100%;
    }

    .bloque-formulario {
    }

    .bloque-relacionados {
    }

    .ficha-producto {
    }
    .elementor-element.ficha-producto + .elementor-element {
    }
  /*  .ficha-producto .ficha-imagen {
        max-width: 50%;
        margin-left: auto;
        margin-right: auto;
    }*/
    .ficha-producto .ficha-imagen div.images {
        margin-bottom: 0 !important;
    }
    .ficha-producto .ficha-datos .sm-product-ficha .sm-product-ficha__label {
        font-weight: 700;
        margin-right: .75rem;
    }
    .ficha-producto .ficha-imagen,
    .ficha-producto .ficha-datos,
    .ficha-producto .ficha-botones {
        --row-gap: 15px;
    }
    .ficha-producto .ficha-datos h1.elementor-heading-title {
        font-size: 1.5rem;
        font-weight: 700;
        line-height: 1.2;
    }
    .ficha-producto .ficha-botones {
        --row-gap: 10px;
        padding: 2rem 2rem;
        border: 1px solid #f3f3f3;
        background-color: #FFFFFF;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
        margin-top: .75rem;
        margin-bottom: 2rem;
    }
    .ficha-producto .ficha-botones p {
        margin-bottom: 0;
    }
    .ficha-producto .ficha-botones .stock,
    .ficha-producto .ficha-botones .stock.available-on-backorder,
    .ficha-producto .ficha-botones .stock.in-stock,
    .ficha-producto .ficha-botones .stock.out-of-stock {
        margin-bottom: .75rem;
    }
    .ficha-producto .ficha-botones .elementor-add-to-cart.elementor-product-simple {
        margin-top: -1rem;        
    }
    table td .quantity .qty,
    table td div.quantity input[type="number"],
    .elementor-widget-woocommerce-cart .woocommerce .input-text.qty,
    .elementor-widget-woocommerce-cart .woocommerce input[type="number"],
    .ficha-producto .ficha-botones .quantity input[type="number"],
    .ficha-producto .ficha-botones .quantity .qty {
        color: #000000 !important;
        border: 1px solid #767474 !important;
        -moz-border-radius: 7px !important;
        -webkit-border-radius: 7px !important;
        border-radius: 7px !important;
        padding: .4rem !important;
        margin-right: .3rem;
        
    }
    .ficha-producto .ficha-botones .stock {
        position: relative;
        font-size: .9rem;
        line-height: 1;
        color: #000000 !important;
        margin-bottom: 1rem !important;
    }
    .ficha-producto .ficha-botones .stock.available-on-backorder,
    .ficha-producto .ficha-botones .stock.in-stock,
    .ficha-producto .ficha-botones .stock.out-of-stock {
        padding-left: 1.25rem;
    }
    .ficha-producto .ficha-botones .stock.available-on-backorder:before,
    .ficha-producto .ficha-botones .stock.in-stock:before,
    .ficha-producto .ficha-botones .stock.out-of-stock:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 14px;
        height: 14px;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        border-radius: 50%;
    }
    .ficha-producto .ficha-botones .stock.in-stock:before {
        background-color: #00ff18;
    }
    .ficha-producto .ficha-botones .stock.in-stock.low-stock:before {
        background-color: #FFCC00;
    }
    .ficha-producto .ficha-botones .stock.out-of-stock:before {
        background-color: #fa3110;
    }
    .ficha-producto .ficha-botones .stock.available-on-backorder:before {
        background-color: #7538A3; /*#a672cd;*/
    }
    .ficha-producto .leer-capitulo {
    }
    .ficha-producto .leer-capitulo .btn {
        font-size: .85rem !important;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 2rem;
        border: 1px solid #ED1B2F !important;
    }
    .producto-descargables {
    }
    .producto-descargables .descargables {
        padding: 2rem 2rem;
    }
    .producto-descargables .descargables h4 {
        margin-bottom: 1.5rem;
    }


    .bloque-info-footer {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .bloque-info-footer .info-footer > img {
        max-height: 40px;
        margin-bottom: 0.5rem;
    }
    .bloque-info-footer .row.listado > div {
        margin-bottom: 30px;
    }
    .bloque-info-footer .row.listado > div:last-child {
        margin-bottom: 0;
    }

    .accordion {
    }

    .elementor-widget-n-accordion {
    }

    .facetwp-pager .facetwp-page.prev {
      padding-right: 1rem;
    }
    .facetwp-pager .facetwp-page.next {
      padding-left: 1rem;
    }

    .aviso .elementor-widget-woocommerce-notices .woocommerce-message {
        display: block !important;
        padding: 1rem 1.5rem 60px 1.5rem !important;
        position: initial !important;
        height: fit-content;
        min-height: unset;
        max-height: none;
        text-align: center !important;
    }
    .aviso .elementor-widget-woocommerce-notices .woocommerce-message .button {
        border: none !important;
        font-size: 1rem !important;
        margin-top: 1rem;
        margin-bottom: 1rem;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 0 !important;
        min-width: fit-content !important;
        height: auto;
        display: block !important;
        align-items: center;
        text-align: center !important;
        margin-left: 0 !important;
        width: 100%;
        font-weight: 700;
    }
    .aviso .elementor-widget-woocommerce-notices .woocommerce-message .button,
    .aviso .elementor-widget-woocommerce-notices .woocommerce-message .button:hover,
    .aviso .elementor-widget-woocommerce-notices .woocommerce-message .button:focus,
    .aviso .elementor-widget-woocommerce-notices .woocommerce-message .button:active {
        color: #ED1B2F;
        background-color: transparent;
    }

    /**/
    .footer {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 1.5rem;
    }
    .footer .custom-logo-link {
        max-width: 80px;
    }
    .footer .claim {
        margin-top: .5rem;
    }
    .footer .d-flex {
        display: block !important;
    }
    .footer .logo-claim-tel {
        margin-bottom: 1rem;
    }
    footer .cooficiales .logos {
        display: block !important;
        text-align: center;
    }
    footer .cooficiales .logos > div {
        display: inline-block !important;
        margin-left: 0;
        margin-right: 0;
        width: fit-content !important;
    }
    footer .cooficiales .logos .bloque.bloque-imagen > .container > .row > div {
        padding-right: .25rem !important;
        padding-left: .25rem !important;
    }
    footer .cooficiales .logos img,
    footer .cooficiales .logos .img-fluid {
        max-height: 40px !important;
    }
	footer .bloque-imagen .container {
        padding-left: .75rem !important;
        padding-right: .75rem !important;
	}
    .footer ul.list-group-horizontal {
        display: block;
        flex-direction: unset !important;
        justify-content: unset !important;
    }
    footer .logo-footer figure + div {
        display: block;
        margin-top: 1rem;
    }
    footer .bloque-info-footer > div {
        text-align: center;
    }
    footer .bloque-info-footer img.img-fluid {
        max-height: 40px;
    }
    footer .bloque-info-footer h2 {
        font-size: 1.5rem;
        margin: -0.5rem 0 0.25rem 0;
    }
    footer .logo-footer .elementor-image-box-wrapper .elementor-image-box-img {
        max-width: 120px;
    }

    /**/
    .facetwp-flyout {
        width: 90% !important;
        top: 0 !important;
        height: 100% !important;
        border: none !important;
        padding-left: 1em !important;
        padding-right: 1em !important;
    }
	.facetwp-flyout-wrap {
		padding-top: 1.5em;
	}
    .facetwp-flyout .flyout-row,
    .facetwp-flyout .flyout-row h3,
    .facetwp-flyout .name-categorias,
    .facetwp-flyout .name-categorias h3 {
        font-family: 'Lilita One', Georgia, Times, Times New Roman, serif;
        font-weight: normal;
        font-size: 1.25rem;
    }
    .facetwp-flyout .flyout-row h3,
    .facetwp-flyout .name-categorias h3 {
        margin: 1rem 0 .5rem 0;
    }
    .facetwp-flyout .facetwp-checkbox {
        height: auto !important;
        line-height: 1.5 !important;
        margin-bottom: 0.2rem !important;
        background-position: 0 2px !important;
    }
    .facetwp-flyout .flyout-row.name-orden > h3 {
        display: none !important;
    }
    .facetwp-flyout .facetwp-facet select {
        margin: 0 0 0 -.35rem;
        padding: 0 .5rem 0 0;
    }
    .facetwp-flyout .flyout-row.name-precio {
        width: 90%;
    }
	body.admin-bar .facetwp-flyout-wrap {
		height: 100% !important;
		width: 90% !important;
		padding-bottom: 1em;
	}
	.facetwp-flyout-close {
		display: inline-block;
		cursor: pointer;
		float: right;
		text-indent: -9999px;
		z-index: 999;
		position: relative;
		width: 1.5em;
		height: 1.5em;
		color: transparent;
		margin-top: 1.25em;
		background-repeat: no-repeat;
		background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' class='e-font-icon-svg e-fas-times' viewBox='0 0 352 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z'%3E%3C/path%3E%3C/svg%3E");
	}

	.menu-movil .elementor-widget-shortcode {
		width: 99%;
	}
    
    .menu-movil .idioma-xs.elementor-widget.elementor-widget-shortcode {
    margin: 0 !important;
    padding: 0 !important;
}
    .icono-carrito {
        padding: 2px 0 !important;
    }
	.menu-movil .mi-cuenta {
		font-size: 1rem;
		color: #000;
		padding-bottom: 0.5em;
		margin-bottom: .6em;
		display: block;
		border-bottom: 1px solid #9a9a9a;
	}
    .menu-movil .idioma-xs a {
		font-size: 1rem;
		color: #000;
		padding-bottom: 0.5em !important;
		margin-bottom: .6em;
		display: block;
		border-bottom: 1px solid #9a9a9a;
	}
	.menu-movil li {
		display: block;
		width: 100%;
		border: 0 !important;
		margin-right: 0 !important;
		padding-bottom: 0;
	}
	.menu-movil li a {
		font-size: 1rem;
		color: #000000;
	}
	.menu-movil a.nav-link.dropdown-toggle:after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z'/%3E%3C/svg%3E");
		content: " ";
		width: 1em;
		height: 1em;
		display: inline-block;
		border: 0 !important;
		background-repeat: no-repeat;
		background-position: center center;
		float: right;
        margin-top: 3px;
	}
	
	.menu-movil a.nav-link.dropdown-toggle.show:after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M201.4 137.4c12.5-12.5 32.8-12.5 45.3 0l160 160c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 205.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l160-160z'/%3E%3C/svg%3E") !important;
	}
	
	.menu-movil .dropdown-menu.show {
		position: relative !important;
		width: 100%;
	}
	
	.elementor-menu-cart--items-indicator-bubble .elementor-button-icon-qty,
    header.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter] {
        position: relative !important;
        display: inline-block !important;
        top: auto !important;
        left: auto;
        right: auto !important;
        padding: 0.35rem !important;
        font-size: 11px !important;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        border-radius: 50%;
        line-height: 1.4em !important;
        margin: 0 7px 0 0 !important;
        vertical-align: middle;
        min-width: 26px;
        height: 26px;
        font-weight: 700;
        text-align: center;
	}
    .elementor-widget-woocommerce-menu-cart.elementor-menu-cart--empty-indicator-hide .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter="0"], .elementor-widget-woocommerce-menu-cart:not(.elementor-menu-cart--show-subtotal-yes) .elementor-menu-cart__toggle .elementor-button-text {
        display: none !important;
    }
/*.product .cart > .button, .woocommerce div.product form.cart .button,*/
    .bloque.bloque-novedades .product .cart > .button,
    .bloque.bloque-mas-vendidos .product .cart > .button,
    .bloque.bloque-destacados .product .cart > .button,
    .bloque-relacionados .button.add_to_cart_button,
    .product .cart .button.add_to_cart_button,
    
    body.archive 
    body.archive .woocommerce div.product form.cart .button {
        text-indent: -9999px !important;
        overflow: hidden !important;
    }
    .bloque.bloque-novedades .product .cart > .button:before,
    .bloque.bloque-mas-vendidos .product .cart > .button:before,
    .bloque.bloque-destacados .product .cart > .button:before,
    .bloque-relacionados .button.add_to_cart_button:before,
    .product .cart .button.add_to_cart_button:before,
    /* .product .cart > .button:before,
    .woocommerce div.product form.cart .button:before, */
    body.archive .product .cart > .button:before,
    body.archive .woocommerce div.product form.cart .button:before {
        margin-right: 0 !important;
    }

    .bloque-relacionados .elementor-widget-n-tabs .e-n-tabs-heading,
    .bloque-novedades .elementor-widget-n-tabs .e-n-tabs-heading,
    .bloque-mas-vendidos .elementor-widget-n-tabs .e-n-tabs-heading,
    .bloque-destacados .elementor-widget-n-tabs .e-n-tabs-heading {
        display: block !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
        min-width: 100% !important;
    }
    .bloque-relacionados .elementor-widget-n-tabs .e-n-tab-title,
    .bloque-novedades .elementor-widget-n-tabs .e-n-tab-title,
    .bloque-mas-vendidos .elementor-widget-n-tabs .e-n-tab-title,
    .bloque-destacados .elementor-widget-n-tabs .e-n-tab-title {
        display: inline-block !important;
        max-width: fit-content !important;
        margin: 0 !important;
    }
    .bloque-relacionados .elementor-widget-n-tabs .e-n-tab-title:last-child,
    .bloque-novedades .elementor-widget-n-tabs .e-n-tab-title:last-child,
    .bloque-mas-vendidos .elementor-widget-n-tabs .e-n-tab-title:last-child,
    .bloque-destacados .elementor-widget-n-tabs .e-n-tab-title:last-child {
        margin-right: 0 !important;
    }
    .bloque-relacionados .elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"],
    .bloque-novedades .elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"],
    .bloque-mas-vendidos .elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"],
    .bloque-destacados .elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"] {
    }
    .bloque-relacionados .elementor-widget-n-tabs .e-n-tab-title-text,
    .bloque-novedades .elementor-widget-n-tabs .e-n-tab-title-text,
    .bloque-mas-vendidos .elementor-widget-n-tabs .e-n-tab-title-text,
    .bloque-destacados .elementor-widget-n-tabs .e-n-tab-title-text {
    }


	#modal-add-to-cart {
		bottom: -200px;
		width: 90%;
	}
    #modal-add-to-cart.visible {
        bottom: 1rem;
    }
	#modal-add-to-cart * {
        text-align: center;
	}
    .add_to_cart_flotante .elementor-widget-woocommerce-product-add-to-cart {
        display: flex;
        justify-content: center;
        width: 100%;
    }
    .add_to_cart_flotante .elementor-heading-title {
    }
    .add_to_cart_flotante .price {
    }

    /**/
    body.page-login {
    }
    body.page-login .elementor-form-fields-wrapper .elementor-field-group,
    body.page-login .elementor-form-fields-wrapper label {
        margin-bottom: 1rem !important;
    }

     .e-loop-nothing-found-message {
        background-size: 180px !important;
        padding-top: 190px !important;
    }

    .mensaje_stock {
        margin-top: 0;
    }
    .ficha-producto .out_of_stock {
        margin-bottom: 1rem;
    }

    .elementor-widget-woocommerce-cart .woocommerce table.shop_table td,
    .elementor-widget-woocommerce-cart .woocommerce table.shop_table th,
    .elementor-widget-woocommerce-cart .woocommerce table.shop_table tr {
    }
    .elementor-widget-woocommerce-cart .woocommerce table.shop_table tr {
        padding: 1rem 0 !important;
    }
    .woocommerce table.shop_table td small {
        white-space: normal;
    }
    #add_payment_method .wc-proceed-to-checkout, .woocommerce-cart .wc-proceed-to-checkout, .woocommerce-checkout .wc-proceed-to-checkout {
        padding: 0;
        margin: 0;
    }
    .woocommerce #content table.cart .product-thumbnail,
    .woocommerce table.cart .product-thumbnail,
    .woocommerce-page #content table.cart .product-thumbnail,
    .woocommerce-page table.cart .product-thumbnail {
        display: block !important;
    }
    .woocommerce-cart-form table,
    .woocommerce-cart-form table th,
    .woocommerce-cart-form table th a,
    .woocommerce-cart-form table td,
    .woocommerce-cart-form table td a,
    .woocommerce-cart-form table td span,
    .woocommerce-cart-form table td span a,
    .woocommerce-cart-form .product-thumbnail,
    .woocommerce-cart-form .product-thumbnail a,
    .woocommerce-cart-form .product-name,
    .woocommerce-cart-form .product-name a,
    .woocommerce-cart-form .product-price,
    .woocommerce-cart-form .product-price a,
    .woocommerce-cart-form .product-quantity,
    .woocommerce-cart-form .product-quantity a,
    .woocommerce-cart-form .product-subtotal,
    .woocommerce-cart-form .product-subtotal a {
        font-size: 14px !important;
    }
    .woocommerce-cart-form table tr td:before {
        content: none !important;
        display: none !important;
    }
    .woocommerce-page table.shop_table_responsive tr td {
        padding: 0 0 !important;
    }
    .woocommerce-page table.shop_table_responsive tr td.product-remove,
    .woocommerce-page table.shop_table_responsive tr td.product-thumbnail,
    .woocommerce-page table.shop_table_responsive tr td.product-name,
    .woocommerce-page table.shop_table_responsive tr td.product-price,
    .woocommerce-page table.shop_table_responsive tr td.product-quantity,
    .woocommerce-page table.shop_table_responsive tr td.product-subtotal {
        text-align: center !important;
    }
    .woocommerce-page table.shop_table_responsive tr td.product-name,
    .woocommerce-page table.shop_table_responsive tr td.product-name a {
        font-size: 16px !important;
    }
    .woocommerce-page .product-name .text-bg-info {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .woocommerce-page table.shop_table_responsive tr td.product-thumbnail img {
        margin: 0 auto;
    }
    .woocommerce-page table.shop_table_responsive tr td.product-price,
    .woocommerce-page table.shop_table_responsive tr td.product-price span {
        font-weight: 400 !important;
    }
    .woocommerce-page table.shop_table_responsive tr td.product-subtotal,
    .woocommerce-page table.shop_table_responsive tr td.product-subtotal span {
        font-size: 1.2rem !important;
    }
    .order-total > td > strong > span.woocommerce-Price-amount.amount {
        font-size: 1.6rem !important;
    }
    .order-total .includes_tax {
        display: block;
        padding-top: 5px;
    }
    .woocommerce-cart-form .product-remove,
    .woocommerce-cart-form .product-remove a {
        font-size: 2rem !important;
    }
    .woocommerce-cart-form .product-remove {
        position: relative !important;
    }
    .woocommerce-cart-form .product-remove a {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        display: block !important;
    }
    .woocommerce-cart-form .product-thumbnail,
    .woocommerce-cart-form .product-name,
    .woocommerce-page table.shop_table_responsive tr td.product-price,
    .woocommerce-page table.shop_table_responsive tr td.product-quantity {
        margin-bottom: .5rem;
    }
    .woocommerce-page table.shop_table_responsive tr td.product-subtotal {
        margin-top: .5rem;
        display: block !important;
    }
    .ficha-producto .ficha-datos .ficha-descripcion :last-child {
        margin-bottom: 0;
    }
    .ficha-producto .ficha-datos .sm-product-ficha .sm-product-ficha__item {
        margin-bottom: .5rem;
        display: flex;
    }
    .aviso-login {
        max-width: 100%;
        margin: 0 auto 2em auto;
    }
    .bloque .e-loop-nothing-found-message:after {
        font-size: 1.4rem;
        margin-bottom: 1em;
    }
    .elementor-widget-woocommerce-cart .elementor-cta__content {
        padding: 35px 0 !important;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > h2.titular {
        font-size: 2rem;
        font-weight:bold;
		color:#ED1B2F;
    }
}

/**/
@media (min-width: 768px) {
    ul.dropdown-menu.depth_0.row.show {
        display: flex;
    }
    .bloque-carrusel .carousel-inner {
        display: flex;
    }
    
    .bloque-carrusel .carousel-inner .carousel-item {
        display: block !important;
        opacity: 0;
    }
    
    .bloque-carrusel .carousel-inner .carousel-item.active {
        opacity: 1;
    }
    
    .bloque-carrusel .carousel-inner .carousel-item {
        transition-duration: .8s !important;
    }
    .bloque-carrusel .carousel-item > .container,
    .bloque-carrusel .carousel-item > .container > .row.d-flex {
        height: 100%;
    }
    .aviso-login {
        max-width: 100%;
        margin: 0 auto 3em auto;
    }
    .elementor-widget-woocommerce-cart .woocommerce table.cart img {
        width: 75px !important;
        min-width: 75px !important;
    }

    .bloque.bloque-novedades .elementor-widget-n-tabs .elementor-widget-image {
        padding-bottom: 1.1rem;
    }
    #wp-admin-bar-top-secondary {
        display: none !important;
    }

    html {
        overflow-x: hidden;
    }
    body {
        overflow-x: hidden;
        /*padding-top: 180px;*/
        background-color: #F9F9F9 !important;
    }

    #wpadminbar {
        position: fixed !important;
        top: -25px !important;
        -moz-transition: all 0.3s !important;
        -ms-transition: all 0.3s !important;
        -o-transition: all 0.3s !important;
        -webkit-transition: all 0.3s !important;
        transition: all 0.3s !important;
    }
    #wpadminbar:hover {
        -moz-transition: all 0.3s !important;
        -ms-transition: all 0.3s !important;
        -o-transition: all 0.3s !important;
        -webkit-transition: all 0.3s !important;
        transition: all 0.3s !important;
        opacity: 1 !important;
        top: 0 !important;
    }
    #wpadminbar .quicklinks > ul > li > a,
    #wpadminbar .quicklinks > ul > li > a:hover,
    #wpadminbar .quicklinks > ul > li > a:focus,
    #wpadminbar .quicklinks > ul > li > a:active {
        background: #1d2327 !important;
    }

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 720px;
    }

    .bloque.bloque-banners > .container,
    .bloque.bloque-texto > .container,
    .bloque.bloque-texto-en-columnas > .container,
    .bloque.bloque-imagen > .container,
    .bloque.bloque-texto-con-imagen > .container,
    .bloque.bloque-video > .container,
    .bloque.bloque-desplegable > .container {
        margin-left: 0;
        margin-right: 0;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        max-width: none;
    }

    .h1,
    .h2,
    .h3,
    .h4,
    .h5,
    .h6,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
    }

    .titulos {
    }
    .subtitulos {
    }

    .product .elementor-widget-image img,
    .product img.size-woocommerce_thumbnail {
        max-height: 320px;
    }
    
    .bloque-novedades .product img.size-woocommerce_thumbnail {
        max-width: 96% !important;
    }

    .product .cart > .button,
    .btn {
    }
    .product .cart > .button:hover,
    .btn:hover {
        color: #FFFFFF;
        background-color: #BD0F20;
    }
    .product.onbackorder .cart > .button:hover,
    .product.onbackorder .btn:hover {
        color: #FFFFFF;
        background-color: #865ba5 !important;
    }
    .btn-primary {
    }
    .btn-secondary {
    }
    .btn-outline-primary {
    }
    .btn-outline-secondary {
    }

    /**/
    header {
        /* position: fixed;
        top: 0;
        left: 0; */
        width: 100vw;
        background-color: #FFFFFF;
        z-index: 10;
    }
    header > .navbar > .container {
        align-items: unset;
        justify-content: start;
    }
    header .custom-logo-link {
        max-width: 120px;
    }
    /**/
    header > .navbar {
        margin: 0 0 1rem 0;
        padding: 0 0;
    }
    /**/
    header .div_buscador .buscador-avanzado {
        margin-left: 1rem;
    }
    header .div_buscador .buscador-avanzado:hover {
        text-decoration: underline !important;
    }
    header .div_acciones > * {
        margin-left: 1rem;
    }
    header .div_acciones > :first-child {
        margin-left: 0;
    }

    header.elementor-location-header form.woocommerce-product-search select,
    header.elementor-location-header .woocommerce form.woocommerce-product-search input.search-field,
    header.elementor-location-header .woocommerce form.woocommerce-product-search .search-field + button,
    header.elementor-location-header .buscador-avanzado {
        font-size: 1rem;
    }
    header.elementor-location-header .woocommerce form.woocommerce-product-search {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    header.elementor-location-header .woocommerce form.woocommerce-product-search input.search-field {
        width: 360px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        border: 1px solid #dde4ec;
        background-color: #f3f6fa;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
        padding-right: 1.5rem;
    }
    header.elementor-location-header form.woocommerce-product-search select {
        display: none !important;
    }
    header.elementor-location-header .woocommerce form.woocommerce-product-search .search-field + button {
        margin-left: -1rem !important;
    }
    header.elementor-location-header .buscador-avanzado {
        line-height: 1;
        vertical-align: middle;
        margin-left: 1rem;
        /**/
        text-indent: -80px;
        overflow: hidden;
        text-transform: capitalize;
    }
    header.elementor-location-header .e-con > .elementor-widget > .elementor-widget-container > * {
        display: inline-block;
    }
    header.elementor-location-header .elementor-menu-cart__toggle .elementor-button {
        vertical-align: top;
    }
    header.elementor-location-header .elementor-menu-cart__toggle .elementor-button,
    header.elementor-location-header .elementor-menu-cart__toggle .elementor-button:hover,
    header.elementor-location-header .elementor-menu-cart__toggle .elementor-button:focus,
    header.elementor-location-header .elementor-menu-cart__toggle .elementor-button:active {
        background-color: transparent !important;
    }
    .elementor-menu-cart--items-indicator-bubble .elementor-button-icon-qty,
    header.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter] {
        position: absolute;
        right: 1.75rem !important;
        top: 0 !important;
        background-color: #ED1B2F;
        min-width: 26px;
        height: 26px;
        font-size: 11px;
        font-weight: 700;
        line-height: 1.15rem;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        border-radius: 50%;
        padding: 0.3rem 0.25rem;
        text-align: center;
        color: #FFFFFF;
    }
    header.elementor-location-header header {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
    header .opciones .buscador-avanzado:hover {
        opacity: .7;
    }

    .icono-mi.cuenta {
    }
    .icono-carrito {
    }

    .ficha-producto {
    }
    .elementor-element.ficha-producto + .elementor-element {
        margin-top: 1.5rem;
    }
    .ficha-producto .ficha-imagen,
    .ficha-producto .ficha-datos,
    .ficha-producto .ficha-botones {
    }
    .ficha-producto .ficha-datos .posted_in,
    .ficha-producto .ficha-datos .posted_in a {
        font-weight: 500;
        font-size: 1.1rem;
    }
    .ficha-producto .ficha-datos h1,
    .ficha-producto .ficha-datos .product_title,
    .ficha-producto .ficha-datos .entry-title {
        color: #000000;
        font-weight: 400;
        margin-bottom: .5rem;
    }
    .elementor-widget-shortcode span.isbn,
    .ficha-producto .ficha-datos .isbn {
    }
    .ficha-producto .ficha-datos .sm-product-ficha,
    .ficha-producto .ficha-datos .ficha-descripcion {
        display: block;
        margin-top: 1.5rem;
    }
    .ficha-producto .ficha-datos .ficha-descripcion {
        margin-bottom: 2.5rem;
    }
    .ficha-producto .ficha-datos .ficha-descripcion :last-child {
        margin-bottom: 0;
    }
    .ficha-producto .ficha-datos .sm-product-ficha .sm-product-ficha__item {
        margin-bottom: .5rem;
    }
    .ficha-producto .ficha-datos .sm-product-ficha .sm-product-ficha__label,
    .ficha-producto .ficha-datos .sm-product-ficha .sm-product-ficha__content {
        display: inline-block;
        vertical-align: top;
    }
    .ficha-producto .ficha-datos .sm-product-ficha .sm-product-ficha__label {
        font-weight: 600;
        width: 42%;
    }
    .ficha-producto .ficha-datos .sm-product-ficha .sm-product-ficha__content {
        width: 55%;
    }
    .ficha-producto .ficha-botones {
        padding-right: 0;
    }
    .ficha-producto .ficha-botones p.price {
        margin-bottom: 0 !important;
    }
    .ficha-producto .ficha-botones b,
    .ficha-producto .ficha-botones strong {
        font-weight: 500;
    }
    .ficha-producto .ficha-botones .stock {
        color: #000000 !important;
        font-size: 1rem;
        line-height: 1;
        margin-bottom: 1.5rem;
    }
    .ficha-producto .ficha-botones .stock.available-on-backorder,
    .ficha-producto .ficha-botones .stock.in-stock,
    .ficha-producto .ficha-botones .stock.out-of-stock {
        position: relative;
        padding-left: 1.5rem;
    }
    .ficha-producto .ficha-botones .stock.available-on-backorder:before,
    .ficha-producto .ficha-botones .stock.in-stock:before,
    .ficha-producto .ficha-botones .stock.out-of-stock:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 16px;
        height: 16px;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        border-radius: 50%;
    }
    .ficha-producto .ficha-botones .stock.in-stock:before {
        background-color: #00ff18;
    }
    .ficha-producto .ficha-botones .stock.in-stock.low-stock:before {
        background-color: #FFCC00;
    }
    .ficha-producto .ficha-botones .stock.out-of-stock:before {
        background-color: #fa3110;
    }
    .ficha-producto .ficha-botones .stock.available-on-backorder:before {
        background-color: #7538A3; /*#a672cd;*/
    }
    table td .quantity .qty,
    table td div.quantity input[type="number"],
    .elementor-widget-woocommerce-cart .woocommerce .input-text.qty,
    .elementor-widget-woocommerce-cart .woocommerce input[type="number"],
    .ficha-producto .ficha-botones .quantity input[type="number"],
    .ficha-producto .ficha-botones .quantity .qty {
        color: #000000 !important;
        border: 1px solid #767474 !important;
        -moz-border-radius: 7px !important;
        -webkit-border-radius: 7px !important;
        border-radius: 7px !important;
    }
    .ficha-producto .ficha-datos .sm-product-ficha a:hover {
        opacity: .7 !important;
        text-decoration: underline !important;
    }
    .ficha-producto .leer-capitulo {
        justify-content: center;
        display: flex;
        margin-bottom: 1.25rem !important;
    }
    .ficha-producto .leer-capitulo .btn {
    }
    .producto-descargables {
    }
    .producto-descargables .descargables {
        padding: 2rem 2rem;
    }

    /**/
    body.page-login main.site-main > .page-content {
        min-height: calc(100vh - 445px);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    /**/
    main.site-main,
    main#content {
        min-height: calc(100vh - 742px);
        padding-bottom: 1.5rem;
    }
    body.page-login main.site-main,
    body.page-registro main.site-main,
    body.page-login main#content,
    body.page-registro main#content {
        min-height: calc(100vh - 445px);
    }
    main.site-main {
    }
	.page-ayuda main.site-main {
		padding-bottom: 0;
	}
	/* Home (Fase 6): las secciones son a sangre completa hasta la onda del
	   footer; este padding-bottom del tema (pensado para paginas de contenido
	   normales) dejaba una franja de 24px del fondo #F9F9F9 de <main> entre
	   "Nuestros libros premiados" y el footer. Mismo patron que .page-ayuda,
	   pero <main> en esta plantilla tiene ademas id="content" (verificado en
	   el DOM real), y la regla original le gana a .page-inicio main.site-main
	   por especificidad (selector de ID > cualquier cantidad de clases) pese
	   a ir despues en el archivo. Se repite el override tambien para #content
	   dentro del mismo scope .page-inicio para no perder esa pelea. */
	.page-inicio main.site-main,
	.page-inicio main#content {
		padding-bottom: 0;
	}
	/* Mismo patron que .page-inicio/.page-ayuda: las 6 paginas tematicas del
	   rediseño (edad 0-2/3-5/6-9/10-12, Barco de Vapor, Juvenil) tienen
	   secciones a sangre completa hasta la onda del footer (data-lij-theme)
	   — sin este override dejaban la misma franja de 24px de fondo #F9F9F9
	   de <main> entre la ultima seccion y el footer. Encontrado y corregido
	   2026-09-23 al construir Barco de Vapor/Juvenil. */
	.page-0-2 main.site-main,
	.page-0-2 main#content,
	.page-3-5 main.site-main,
	.page-3-5 main#content,
	.page-6-9 main.site-main,
	.page-6-9 main#content,
	.page-10-12 main.site-main,
	.page-10-12 main#content,
	.page-barco-de-vapor main.site-main,
	.page-barco-de-vapor main#content,
	.page-juvenil main.site-main,
	.page-juvenil main#content {
		padding-bottom: 0;
	}
    main.site-main .page-header > .entry-title {
        max-width: calc(100% - 3rem);
    }

    .descargables,
    .bloque {
        margin-bottom: 3em !important;
    }
	footer .bloque {
		margin-bottom: 0 !important;
	}
    .bloque .titulos,
    .bloque .subtitulos {
        margin-bottom: 1.5rem;
    }
    .bloque .product .cart > .quantity + .button {
       /* margin-top: .25rem;*/
        font-size: 1rem !important;
    }

    .bloque-texto {
    }

    .bloque-texto-en-columnas {
    }
    .bloque-texto-en-columnas .listado-item {
        padding: 1.5rem 1.5rem;
        background-color: #FFFFFF;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
        -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
        -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
        box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
    }

    .bloque-imagen {
    }

    .bloque-texto-con-imagen {
    }

    .bloque-video {
    }

    .bloque-desplegable {
    }

    .bloque-carrusel {
        overflow: visible;
    }
    .bloque.bloque-carrusel .carousel .carousel-item > .container {
        width: 100%;
        max-width: none;
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
    }
    .bloque-carrusel .carousel-item > .container,
    .bloque-carrusel .carousel-item > .container > a {
        display: block;
        overflow: hidden;
        position: relative;
    }
    .bloque-carrusel .carousel-item > .container > a > img.image {
    }
    .bloque-carrusel .carousel-item a > img,
    .bloque.bloque-carrusel .carousel .carousel-item img.image {
        width: 100%;
        max-width: none;
        height: auto;
    }
    .bloque-carrusel .carousel-item > .container,
    .bloque-carrusel .carousel-item > .container > a,
    .bloque-carrusel .carousel-item > .container > .row.d-flex {

    }
    .bloque-carrusel .carousel-item > .container > .row > div > img.image {
        max-width: 80%;
    }
    .bloque-carrusel .carousel-inner {
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
    }
    .bloque-carrusel .carousel-indicators {
        position: relative;
        display: block;
        margin: 0;
        padding: 0;
        width: 100%;
        text-align: center;
        margin-top: 1rem;
        margin-bottom: -1rem;
    }
    .bloque-carrusel .carousel-item > .container > .row {
        margin-left: 0;
        margin-right: 0;
    }
    .bloque-carrusel .carousel-item > .container > .row > div {
        padding-left: 0;
        padding-right: 0;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > h2.titular {
        font-size: 1.5rem;
        font-weight:bold;
		color:#ED1B2F;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > p {
        /*display: none;*/
    }

    .bloque-novedades-productos {
        padding: 30px 30px;
        display: block;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
    }
    .bloque-novedades-productos,
    .bloque-novedades-productos a,
    .bloque-novedades-productos .btn,
    .bloque-novedades-productos .titulos {
    }
    .bloque-novedades-productos .btn {
    }
    .bloque-novedades-productos .btn:hover {
    }
    /**/
    .bloque-novedades-productos .carousel-block-novedades {
        display: flex !important;
        align-items: end !important;
        justify-content: start !important;
    }
    .bloque-novedades-productos .carousel-block-novedades > .type-product {
        display: flex !important;
        align-items: end !important;
        justify-content: space-between !important;
        height: 400px;
    }
    .bloque-novedades-productos .tns-carousel > .product > .card-body {
        width: 250px;
        height: 400px;
        justify-content: center;
        margin-left: 1rem;
    }
    /**/
    .bloque-novedades-productos .tns-carousel > .product > a {
        position: relative;
        padding: 30px 0 60px 0;
        width: 265px;
        max-width: 265px;
        text-align: center;
    }
    .bloque-novedades-productos .tns-carousel > .product > a:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        background-image: url('../images/fondo-novedades-peana.png');
        background-repeat: no-repeat;
        background-size: 256px;
        width: 256px;
        height: 375px;
		background-position: center bottom;
    }
    .badge.new {
        font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
        font-weight: 700;
        padding: .5rem 1.5rem;
        color: #FFFFFF !important;
        background-color: #000000 !important;
        border-bottom-right-radius: 0 !important;
        border-bottom-left-radius: 0 !important;
		margin: 0 auto;
        z-index: 1;
    }
	.badge.destacado {
        font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
        font-weight: 700;
        padding: .5rem 1.5rem;
        color: #FFFFFF !important;
        background-color: #666 !important;
        border-bottom-right-radius: 0 !important;
        border-bottom-left-radius: 0 !important;
		margin: 0 auto;
        z-index: 1;
    }
	.badge.best {
        font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
        font-weight: 700;
        padding: .5rem 1.5rem;
        color: #FFFFFF !important;
        background-color: #666 !important;
        border-bottom-right-radius: 0 !important;
        border-bottom-left-radius: 0 !important;
		margin: 0 auto;
        z-index: 1;
    }
    .bloque-novedades-productos .tns-carousel > .product > a > img {
        position: relative;
        width: auto;
		max-height: 295px;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        z-index: 1;
    }
    .product .card-body .woocommerce-loop-product__title {
		text-align: left;
		display: block;
		width: 100%;
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;

		@supports (-webkit-line-clamp: 2) {
		  overflow: hidden;
		  text-overflow: ellipsis;
		  white-space: initial;
		  display: -webkit-box;
		  -webkit-line-clamp: 2;
		  -webkit-box-orient: vertical;
		}
    }
	.bloque-novedades-productos .product .card-body .woocommerce-loop-product__title {
		min-height: auto;
	}
    .elementor-widget-shortcode span.isbn,
    .product .card-body .isbn {
        font-size: 12px;
		text-align: left;
		display: block;
		width: 100%;
    }
    .product .card-body .price,
	.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
        font-size: 20px;
		text-align: left;
		display: block;
		width: 100%;
    }

    .bloque.bloque-novedades {
    }
    .bloque.bloque-novedades .elementor-widget-n-tabs .swiper-wrapper > .swiper-slide > .elementor-element:first-child > .elementor-element.e-child:first-child::after {
        bottom: -8.5%;
    }
    .bloque.bloque-novedades .elementor-widget-image {
        max-width: 130px !important;
    }

    .bloque-mas-vendidos-productos {
        padding: 30px 30px;
        display: block;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
    }
    .product > a {
        position: relative;
        width: auto;
        max-width: 100%;
        min-height: 340px;
		max-height: 340px;
        text-align: center;
    }
	.bloque .product > a {
		min-height: 380px;
	}
	.badge.betstseller{
		font-family: 'Avenir LT Std', Arial, Helvetica, sans-serif;
        font-weight: normal;
        padding: .5rem 1.5rem;
        color: #FFFFFF !important;
        background-color: #6f7580 !important;
        border-bottom-right-radius: 0 !important;
        border-bottom-left-radius: 0 !important;
        z-index: 1;
		margin: 0 auto;
    }
    .product > a > img {
        position: relative;
        width: auto;
		max-height: 340px;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        z-index: 1;
    }

    .bloque-destacados-productos {
        padding: 30px 30px;
        display: block;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
    }

    .bloque.bloque-novedades-productos .tab-content .tns-outer .tns-nav,
    .bloque.bloque-mas-vendidos-productos .tab-content .tns-outer .tns-nav,
    .bloque.bloque-destacados-productos .tab-content .tns-outer .tns-nav {
        position: absolute;
        display: block;
        margin: 0;
        margin-top: 0px;
        padding: 0;
        margin-top: 40px;
        width: calc(100% - 90px);
    }
    .bloque .tns-nav > .tns-nav-active {
        background: #000000;
    }

    .bloque.bloque-novedades-productos > .container > .row:first-child > div,
    .bloque.bloque-mas-vendidos-productos > .container > .row:first-child > div,
    .bloque.bloque-destacados-productos > .container > .row:first-child > div {
        display: flex;
        justify-content: start;
        align-items: start;
    }
    .bloque.bloque-novedades-productos > .container > .row:first-child > div > .titulos,
    .bloque.bloque-mas-vendidos-productos > .container > .row:first-child > div > .titulos,
    .bloque.bloque-destacados-productos > .container > .row:first-child > div > .titulos {
        margin-right: 2rem;
    }

    .bloque-banners {
    }
    .bloque-banners .row.listado {
        margin-bottom: -1.5rem;
    }
    .bloque-banners .row.listado > div {
        margin-bottom: 1.5rem;
    }
    .bloque-banners .banner-content {
        padding: 30px 30px;
        display: block;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
    }
    .bloque-banners .image {
        position: relative;
    }
	.bloque-banners .col-lg-4 .image {
        position: relative;
        margin-bottom: 30px;
    }
    /**/
    .bloque-banners .col-lg-4 .image {
        margin-bottom: 50px;
    }
    .bloque-banners .col-sm-6 .image > .image-content,
    .bloque-banners .col-md-6 .image > .image-content,
    .bloque-banners .col-lg-4 .image > .image-content {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 1.5rem;
    }
    .bloque-banners .col-sm-6 .image:after,
    .bloque-banners .col-md-6 .image:after,
    .bloque-banners .col-lg-4 .image:after {
        left: 50%;
        transform: translate(-50%);
    }
    .bloque-banners .col-md-6 .leftcol,
    .bloque-banners .col-lg-4 .leftcol {
        margin-right: 0;
    }
    /**/
    .bloque-banners .image:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: -25px;
        background-image: url('../images/sombra.png');
        background-repeat: no-repeat;
        background-size: 150px;
        width: 150px;
        height: 14px;
    }
    .bloque-banners .image > .image-content {
        width: 150px;
    }
    .bloque-banners .image > .image-content > img {
        width: 150px;
        height: 150px;
    }
    .bloque-banners .leftcol {
        margin-right: 30px;
    }
    .bloque-banners .rightcol {
    }

    .bloque-formulario {
    }

    .bloque-relacionados {
    }
    .bloque-novedades .swiper-wrapper > .swiper-slide {
        max-width: 50% !important;
    }
    .bloque-mas-vendidos .swiper-wrapper > .swiper-slide,
    .bloque-destacados .swiper-wrapper > .swiper-slide,
    .bloque-relacionados .swiper-wrapper > .swiper-slide {
        max-width: 33% !important;
    }

    .bloque-info-footer {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .bloque-info-footer .info-footer > img {
        max-height: 50px;
        margin-bottom: 0.5rem;
    }
    .bloque-info-footer .info-footer a {
        color: #ED1B2F !important;
        text-decoration: underline !important;
    }

    .accordion {
    }

    .elementor-widget-n-accordion {
    }

    .facetwp-page.active {
        font-weight: normal !important;
        color: #000000 !important;
        padding: 0.5rem 0.85rem;
        border: 1px solid #9a9a9a;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
    }

    /**/
    .footer {
        padding-top: 40px;
        padding-bottom: 1rem;
    }
    .footer,
    .footer .list-group {
     /*   font-size: 12px;*/
    }
    .footer .claim,
    .footer .telefono,
    .footer .custom-logo-link {
        display: inline-block;
        vertical-align: middle;
    }
    .footer .claim {
        margin-top: 1rem;
    }
    .footer .custom-logo-link {
        max-width: 120px;
    }
    .footer .logo-claim-tel > *,
    .footer .list-group > li {
        margin-right: 1rem;
    }
    .footer .logo-claim-tel > :last-child,
    .footer .list-group > li:last-child {
        margin-right: 0;
    }
    footer .footer > .e-con-inner {
        display: flex !important;
        flex-direction: initial !important;
        justify-content: space-between !important;
    }
    footer .logo-footer,
    footer .cooficiales {
    }
    footer .logo-footer figure,
    footer .logo-footer figure + div {
        display: inline-block;
        width: fit-content;
    }
    footer .logo-footer .elementor-image-box-description {
        font-family: 'Lilita One', Georgia, Times, Times New Roman, serif;
        font-weight: normal;
        margin-left: 0;
        margin-top: .5rem;
  }
    footer .cooficiales {
        width: fit-content;
    }
    footer .cooficiales .logos img,
    footer .cooficiales .logos .img-fluid {
        max-height: 50px;
    }
    footer .cooficiales .logos > :first-child {
    }
    footer .cooficiales .logos .bloque-imagen,
    footer .cooficiales .logos .bloque-imagen .container,
    footer .cooficiales .logos .bloque-imagen .container > .row,
    footer .cooficiales .logos .bloque-imagen .container > .row > div {
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
    }
    footer .cooficiales .logos > .elementor-element {
        max-width: none;
        width: 120px;
    }
    footer .menu-legales ul > li:first-child > div {
        padding-left: 0 !important;
    }
    footer .logo-footer .elementor-image-box-description {
        font-family: 'Lilita One', Georgia, Times, Times New Roman, serif;
        font-weight: normal;
        margin-left: 1.5rem;
        margin-top: .35rem;
  	}

	#modal-add-to-cart {
        z-index: 99;
        width: 75%;
    }

    /**/
    body.page-login {
    }
    body.page-login .elementor-form-fields-wrapper .elementor-field-group,
    body.page-login .elementor-form-fields-wrapper label {
        margin-bottom: 1rem !important;
    }

     .e-loop-nothing-found-message {
        margin-left: -49%;
        background-size: 180px !important;
        padding-top: 190px !important;
    }

    .mensaje_stock {
    }
}

/**/
@media only screen and (min-width: 992px) and (max-width: 1024px) {
     .elementor-element .e-loop-nothing-found-message {
        margin-left: -49%;
    }
}

/**/
@media (min-width: 992px) {
    .elementor-widget-woocommerce-cart .woocommerce table.cart img {
        width: 75px !important;
        min-width: 75px !important;
    }

    .bloque.bloque-novedades .elementor-widget-n-tabs .elementor-widget-image {
        padding-bottom: 1.6rem;
    }
    body {
        overflow-x: hidden;
        /*padding-top: 180px;*/
    }

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 960px;
    }

    .titulos {
    }
    .subtitulos {
    }

    .product .elementor-widget-image img,
    .product img.size-woocommerce_thumbnail {
        max-height: 320px;
    }

    .product .cart > .button,
    .btn {
    }
    .btn-primary {
    }
    .btn-secondary {
    }
    .btn-outline-primary {
    }
    .btn-outline-secondary {
    }
	
	footer .logo-footer .elementor-image-box-description {
        font-family: 'Lilita One', Georgia, Times, Times New Roman, serif;
        font-weight: normal;
        margin-left: 2.5rem;
        margin-top: .5rem;
  	}

    /**/
    header {
    }
    header .custom-logo-link {
        max-width: 120px;
    }
    /**/
    header > .navbar {
        margin: 0 0 1.5rem 0;
        padding: 0 0;
    }
    header.elementor-location-header form.woocommerce-product-search select {
        display: block !important;
        border: 1px solid #dde4ec;
        border-right: none !important;
        background-color: #f3f6fa;
        -moz-border-radius: 7px;
        -webkit-border-radius: 7px;
        border-radius: 7px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    header.elementor-location-header .woocommerce form.woocommerce-product-search input.search-field {
        width: 480px;
    }
    header.elementor-location-header .buscador-avanzado {
        margin-left: 2rem;
        /**/
        text-indent: unset;
        overflow: initial;
        text-transform: none;
    }

    .ficha-producto {
    }
    .elementor-element.ficha-producto + .elementor-element {
        margin-top: 2rem;
    }
    .ficha-producto .leer-capitulo {
    }
    .ficha-producto .leer-capitulo .btn {
    }
    .producto-descargables {
    }
    .producto-descargables .descargables {
        padding: 2.5rem 2.5rem;
    }

    /**/
    body.page-login main.site-main > .page-content {
        min-height: calc(100vh - 375px);
    }
    /**/
    main.site-main,
    main#content {
        min-height: calc(100vh - 780px);
    }
    body.page-login main.site-main,
    body.page-registro main.site-main,
    body.page-login main#content,
    body.page-registro main#content {
        min-height: calc(100vh - 375px);
    }
    main.site-main {
    }
    main.site-main .page-header > .entry-title {
        max-width: calc(100% - 3rem);
    }

    .descargables,
    .bloque {
    }
    .bloque .titulos,
    .bloque .subtitulos {
        margin-bottom: 1.5rem;
    }

    .bloque-texto {
    }

    .bloque-texto-en-columnas {
    }

    .bloque-imagen {
    }

    .bloque-texto-con-imagen {
    }

    .bloque-video {
    }

    .bloque-desplegable {
    }

    .bloque-carrusel {
    }
    .bloque-carrusel .carousel-item > .container,
    .bloque-carrusel .carousel-item > .container > a,
    .bloque-carrusel .carousel-item > .container > .row.d-flex {

    }
    .bloque-carrusel .carousel-item > .container > .row > div > img.image {
        max-width: 87%;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > h2.titular {
        font-size: 2rem;
        font-weight:bold;
		color:#ED1B2F;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > p {
        display: block;
    }

    .bloque-novedades-productos {
    }
    .product .card-body .woocommerce-loop-product__title {
        font-size: 16px;
    }
    .elementor-widget-shortcode span.isbn,
    .product .card-body .isbn {
        font-size: 13px;
    }
    .product .card-body .price,
	.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
        font-size: 22px;
    }

    .bloque.bloque-novedades {
    }
    .bloque.bloque-novedades .elementor-widget-n-tabs .swiper-wrapper > .swiper-slide > .elementor-element:first-child > .elementor-element.e-child:first-child::after {
        bottom: -8%;
    }
    .bloque.bloque-novedades .elementor-widget-image {
        max-width: 180px !important;
    }

    .bloque-mas-vendidos-productos {
    }

    .bloque-destacados-productos {
    }

    .bloque-banners {
    }
    .bloque-banners .banner-content {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .bloque-banners .col-md-6 > .banner-content,
    .bloque-banners .col-lg-4 > .banner-content {
        display: block;
        justify-content: unset;
        align-items: unset;
    }
    .bloque-banners .col-lg-4 .image {
        margin-bottom: 50px;
    }
    .bloque-banners .image > .image-content {
        width: 150px;
    }
    .bloque-banners .image > .image-content > img {
        width: 150px;
        height: 150px;
    }
    .bloque-banners .image:after {
        background-size: 150px;
        width: 150px;
        height: 14px;
    }

    .bloque-formulario {
    }

    .bloque-relacionados {
    }
    .bloque-novedades .swiper-wrapper > .swiper-slide {
        max-width: 50% !important;
    }
    .bloque-mas-vendidos .swiper-wrapper > .swiper-slide,
    .bloque-destacados .swiper-wrapper > .swiper-slide,
    .bloque-relacionados .swiper-wrapper > .swiper-slide {
        max-width: 25% !important;
    }

    .bloque-info-footer {
    }

    .accordion {
    }

    .elementor-widget-n-accordion {
    }

    /**/
    .footer {
        padding-top: 50px;
        padding-bottom: 1rem;
    }
    .footer,
    .footer .list-group {
        /*font-size: 13px;*/
    }
    .footer .custom-logo-link {
        max-width: 120px;
    }
    .footer .logo-claim-tel > *,
    .footer .list-group > li {
        margin-right: 2rem;
    }
    footer .cooficiales .logos img,
    footer .cooficiales .logos .img-fluid {
        max-height: 60px;
    }

	#modal-add-to-cart {
        width: 75%;
    }

    body.page-login {
    }

     .e-loop-nothing-found-message {
        margin-left: -33.3333%;
        background-size: 220px !important;
        padding-top: 235px !important;
    }

    .mensaje_stock {
        max-width: 85%;
    }
}

/**/
@media (min-width: 1200px) {
    .aviso-login {
        max-width: 80%;
        margin: 0 auto 3em auto;
    }
    .elementor-widget-woocommerce-cart .woocommerce table.cart img {
        width: 75px !important;
        min-width: 75px !important;
    }

    body {
        /*padding-top: 180px;*/
    }

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1170px;
    }

    .titulos {
    }
    .subtitulos {
    }

    .product .elementor-widget-image img,
    .product img.size-woocommerce_thumbnail {
        max-height: 320px;
    }

    .product .cart > .button,
    .btn {
    }
    .btn-primary {
    }
    .btn-secondary {
    }
    .btn-outline-primary {
    }
    .btn-outline-secondary {
    }

    /**/
    header {
    }
    /**/
    header.elementor-location-header form.woocommerce-product-search select {
    }
    header.elementor-location-header .woocommerce form.woocommerce-product-search input.search-field {
        width: 560px;
    }

    .ficha-producto {
    }
    .elementor-element.ficha-producto + .elementor-element {
        margin-top: 3rem;
    }
    .ficha-producto .leer-capitulo {
    }
    .producto-descargables {
    }

    /**/
    main.site-main,
    main#content {
        min-height: calc(100vh - 780px);
    }
    body.page-login main.site-main,
    body.page-registro main.site-main,
    body.page-login main#content,
    body.page-registro main#content {
        min-height: calc(100vh - 375px);
    }
    main.site-main {
    }
    main.site-main .page-header > .entry-title {
        max-width: calc(100% - 3rem);
    }

    .descargables,
    .bloque {
    }

    .bloque-texto {
    }

    .bloque-texto-en-columnas {
    }

    .bloque-imagen {
    }

    .bloque-texto-con-imagen {
    }

    .bloque-video {
    }

    .bloque-desplegable {
    }

    .bloque-carrusel {
    }
    .bloque-carrusel .carousel-item > .row {
        margin-left: -2rem;
        margin-right: -2rem;
    }
    .bloque-carrusel .carousel-item > .row > div {
        padding-left: 2rem;
        padding-right: 2rem;
    }
    .bloque-carrusel .carousel-item > .container,
    .bloque-carrusel .carousel-item > .container > a,
    .bloque-carrusel .carousel-item > .container > .row.d-flex {
    }
    .bloque-carrusel .carousel-item > .container > .row > div > img.image {
        max-width: 90%;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > h2.titular {
        font-size: 2.3rem;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > h2,
    .bloque-carrusel .carousel-item > .container > .row > div > .titular,
    .bloque-carrusel .carousel-item > .container > .row > div > h2.titular,
    .bloque-carrusel .carousel-item > .container > .row > div > p {
        padding-right: 90px;
    }

    .bloque-novedades-productos {
    }
    .product .card-body .woocommerce-loop-product__title {
        font-size: 18px;
    }
    .elementor-widget-shortcode span.isbn,
    .product .card-body .isbn {
    }
    .product .card-body .price,
	.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
        font-size: 24px;
    }

    .bloque.bloque-novedades {
    }
    .bloque.bloque-novedades .elementor-widget-n-tabs .swiper-wrapper > .swiper-slide > .elementor-element:first-child > .elementor-element.e-child:first-child::after {
        bottom: -11.2%;
    }
    .bloque.bloque-novedades .elementor-widget-image {
        max-width: 220px !important;
    }

    .bloque-mas-vendidos-productos {
    }

    .bloque-destacados-productos {
    }

    .bloque-banners {
    }
    .bloque-banners .image > .image-content {
        width: 220px;
    }
    .bloque-banners .image > .image-content > img {
        width: 220px;
        height: 220px;
    }
    .bloque-banners .image:after {
        background-size: 220px;
        width: 220px;
        height: 20px;
    }

    .bloque-relacionados {
    }
    .bloque-novedades .swiper-wrapper > .swiper-slide {
        max-width: 50% !important;
    }
    .bloque-mas-vendidos .swiper-wrapper > .swiper-slide,
    .bloque-destacados .swiper-wrapper > .swiper-slide,
    .bloque-relacionados .swiper-wrapper > .swiper-slide {
        max-width: 25% !important;
    }

    .bloque-info-footer {
    }
    .bloque-info-footer .info-footer {
        max-width: 90%;
    }

    .accordion {
    }

    .elementor-widget-n-accordion {
    }

    /**/
    .footer {
    }
    .footer .logo-claim-tel > *,
    .footer .list-group > li {
        margin-right: 3.5rem;
    }

	#modal-add-to-cart {
        width: 50%;
    }

    body.page-login {
    }

     .e-loop-nothing-found-message {
        margin-left: -33.3333%;
        background-size: 280px !important;
        padding-top: 295px !important;
    }

    .mensaje_stock {
        max-width: 75%;
    }
}

/**/
@media (min-width: 1400px) {
    .elementor-widget-woocommerce-cart .woocommerce table.cart img {
        width: 85px !important;
        min-width: 85px !important;
    }

    .bloque.bloque-novedades .elementor-widget-n-tabs .elementor-widget-image {
    padding-bottom: 1.5rem;
}    
    body {
        /*padding-top: 180px;*/
    }

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1280px;
    }

    .bloque.bloque-banners > .container,
    .bloque.bloque-texto > .container,
    .bloque.bloque-texto-en-columnas > .container,
    .bloque.bloque-imagen > .container,
    .bloque.bloque-texto-con-imagen > .container,
    .bloque.bloque-video > .container,
    .bloque.bloque-desplegable > .container {
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
        max-width: none;
    }

    .titulos {
    }
    .subtitulos {
    }

    .product .elementor-widget-image img,
    .product img.size-woocommerce_thumbnail {
        max-height: 350px;
    }

    .product .cart > .button,
    .btn {
    }
    .btn-primary {
    }
    .btn-secondary {
    }
    .btn-outline-primary {
    }
    .btn-outline-secondary {
    }

    /**/
    header {
    }
    .ficha-producto {
    }
    .elementor-element.ficha-producto + .elementor-element {
    }
    .ficha-producto .ficha-imagen {
        padding-left: 0;
        padding-right: 4rem;
    }
    .ficha-producto .leer-capitulo {
    }
    .producto-descargables {
    }

    /**/
    main.site-main,
    main#content {
        min-height: calc(100vh - 780px);
    }
    body.page-login main.site-main,
    body.page-registro main.site-main,
    body.page-login main#content,
    body.page-registro main#content {
        min-height: calc(100vh - 375px);
    }
    main.site-main {
    }
    main.site-main .page-header > .entry-title {
        max-width: 1320px;
    }

    .descargables,
    .bloque {
    }

    .bloque-texto {
    }

    .bloque-texto-en-columnas {
    }

    .bloque-imagen {
    }

    .bloque-texto-con-imagen {
    }

    .bloque-video {
    }

    .bloque-desplegable {
    }

    .bloque-carrusel {
    }
    .bloque-carrusel .carousel-item > .container,
    .bloque-carrusel .carousel-item > .container > a,
    .bloque-carrusel .carousel-item > .container > .row.d-flex {

    }
    .bloque-carrusel .carousel-item > .container > .row > div > img.image {
        max-width: 480px;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > h2.titular {
        font-size: 2.6rem;
    }
    .bloque-carrusel .carousel-item > .container > .row > div > h2,
    .bloque-carrusel .carousel-item > .container > .row > div > .titular,
    .bloque-carrusel .carousel-item > .container > .row > div > h2.titular,
    .bloque-carrusel .carousel-item > .container > .row > div > p {
        padding-right: 150px;
    }

    .bloque-novedades-productos {
    }

    .bloque.bloque-novedades {
    }
    .bloque.bloque-novedades .elementor-widget-n-tabs .swiper-wrapper > .swiper-slide > .elementor-element:first-child > .elementor-element.e-child:first-child::after {
        bottom: -50px;
    }
    .bloque.bloque-novedades .elementor-widget-image {
        max-width: 240px !important;
    }

    .bloque-mas-vendidos-productos {
    }

    .bloque-destacados-productos {
    }

    .bloque-banners {
    }
    .bloque-banners .image > .image-content {
        width: 220px;
    }
    .bloque-banners .image > .image-content > img {
        width: 220px;
        height: 220px;
    }
    .bloque-banners .image:after {
        background-size: 220px;
        width: 220px;
        height: 20px;
    }

    .bloque-relacionados {
    }
    .bloque-novedades .swiper-wrapper > .swiper-slide {
        max-width: 50% !important;
    }
    .bloque-mas-vendidos .swiper-wrapper > .swiper-slide,
    .bloque-destacados .swiper-wrapper > .swiper-slide,
    .bloque-relacionados .swiper-wrapper > .swiper-slide {
        max-width: 25% !important;
    }

    .bloque-info-footer {
    }
    .bloque-info-footer .info-footer {
        max-width: 80%;
    }

    .accordion {
    }

    .elementor-widget-n-accordion {
    }

    /**/
    .footer {
    }

	#modal-add-to-cart {
    }

    body.page-login {
    }

     .e-loop-nothing-found-message {
        margin-left: -33.3333%;
        background-size: 280px !important;
        padding-top: 295px !important;
    }
}

/**/
@media print {
    .form-group {
        margin-bottom: 10px;
    }
    form .row > div {
        line-height: 2em;
        text-align: left;
    }
    form {
        line-height: normal;
        padding-bottom: 2rem;
        display: block;
    }
    .col-sm-1,
    .col-sm-2,
    .col-sm-3,
    .col-sm-4,
    .col-sm-5,
    .col-sm-6,
    .col-sm-7,
    .col-sm-8,
    .col-sm-9,
    .col-sm-10,
    .col-sm-11,
    .col-sm-12 {
        float: left
    }
    .col-sm-12 {
        width: 100%
    }
    .col-sm-11 {
        width: 91.66666667%
    }
    .col-sm-10 {
        width: 83.33333333%
    }
    .col-sm-9 {
        width: 75%
    }
    .col-sm-8 {
        width: 66.66666667%
    }
    .col-sm-7 {
        width: 58.33333333%
    }
    .col-sm-6 {
        width: 50%
    }
    .col-sm-5 {
        width: 41.66666667%
    }
    .col-sm-4 {
        width: 33.33333333%
    }
    .col-sm-3 {
        width: 25%
    }
    .col-sm-2 {
        width: 16.66666667%
    }
    .col-sm-1 {
        width: 8.33333333%
    }
    .col-sm-pull-12 {
        right: 100%
    }
    .col-sm-pull-11 {
        right: 91.66666667%
    }
    .col-sm-pull-10 {
        right: 83.33333333%
    }
    .col-sm-pull-9 {
        right: 75%
    }
    .col-sm-pull-8 {
        right: 66.66666667%
    }
    .col-sm-pull-7 {
        right: 58.33333333%
    }
    .col-sm-pull-6 {
        right: 50%
    }
    .col-sm-pull-5 {
        right: 41.66666667%
    }
    .col-sm-pull-4 {
        right: 33.33333333%
    }
    .col-sm-pull-3 {
        right: 25%
    }
    .col-sm-pull-2 {
        right: 16.66666667%
    }
    .col-sm-pull-1 {
        right: 8.33333333%
    }
    .col-sm-pull-0 {
        right: auto
    }
    .col-sm-push-12 {
        left: 100%
    }
    .col-sm-push-11 {
        left: 91.66666667%
    }
    .col-sm-push-10 {
        left: 83.33333333%
    }
    .col-sm-push-9 {
        left: 75%
    }
    .col-sm-push-8 {
        left: 66.66666667%
    }
    .col-sm-push-7 {
        left: 58.33333333%
    }
    .col-sm-push-6 {
        left: 50%
    }
    .col-sm-push-5 {
        left: 41.66666667%
    }
    .col-sm-push-4 {
        left: 33.33333333%
    }
    .col-sm-push-3 {
        left: 25%
    }
    .col-sm-push-2 {
        left: 16.66666667%
    }
    .col-sm-push-1 {
        left: 8.33333333%
    }
    .col-sm-push-0 {
        left: auto
    }
    .col-sm-offset-12 {
        margin-left: 100%
    }
    .col-sm-offset-11 {
        margin-left: 91.66666667%
    }
    .col-sm-offset-10 {
        margin-left: 83.33333333%
    }
    .col-sm-offset-9 {
        margin-left: 75%
    }
    .col-sm-offset-8 {
        margin-left: 66.66666667%
    }
    .col-sm-offset-7 {
        margin-left: 58.33333333%
    }
    .col-sm-offset-6 {
        margin-left: 50%
    }
    .col-sm-offset-5 {
        margin-left: 41.66666667%
    }
    .col-sm-offset-4 {
        margin-left: 33.33333333%
    }
    .col-sm-offset-3 {
        margin-left: 25%
    }
    .col-sm-offset-2 {
        margin-left: 16.66666667%
    }
    .col-sm-offset-1 {
        margin-left: 8.33333333%
    }
    .col-sm-offset-0 {
        margin-left: 0
    }
    a[href]:after {
        content: none !important;
    }
    th {
        border-bottom: 1px solid #CCCCCC !important;
        background-color: #CCCCCC !important;
    }
    .filtros,
    .btn-filtros,
    .relacionados,
    .recomendaciones,
    .title-col a,
    .comentarios,
    .newsletter,
    .options {
        display: none;
    }
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 1.5dppx), only screen and (min-resolution: 144dpi) {
    .bloque .gform_wrapper .chosen-container-single .chosen-single div b {
        background: url(../images/arrow_select.png) !important;
        background-repeat: no-repeat !important;
        background-position: center center !important;
        background-size: auto !important;
    }
}

/* =============================================================================
   Plantilla Elementor 44 "Item producto novedad" (Fase 6, home) — bug real
   encontrado el 2026-09-09 al activar por primera vez la seccion "Descubre
   nuestras novedades" con productos reales (antes siempre estaba vacia, asi
   que esto nunca se habia visto renderizado).

   Causa: el campo "CSS personalizado" por elemento de Elementor Pro, cuando
   el elemento vive dentro de una plantilla usada como Loop Item (Loop
   Carousel/Grid), NO se incluye en el CSS generado de la pagina que la usa
   (post-101.css) ni se genera un post-44.css propio salvo que se visite la
   plantilla directamente en el editor — verificado: `curl` a la home no trae
   ningun <link> a post-44.css, y post-101.css no contiene el selector
   `.elementor-element-3a7c6b9` pese a que el panel de Elementor SI tiene
   guardado ahi el CSS personalizado (visto con `Post_CSS_File::update()`
   forzado a mano). Es una limitacion real de Elementor con estos widgets,
   no una configuracion incorrecta.

   Efecto: la tarjeta (contenedor raiz `3a7c6b9`) dependia de ese CSS
   personalizado para su unico tamano fijo (188x320px); sin el, colapsaba a
   0x0 (el resto de la cadena usa alturas en % que no tienen de que colgar) y
   el carrusel entero se veia vacio aunque SI tuviera slides con productos
   reales.

   Fix: se replica aqui, textual, el CSS COMPLETO que Elementor ya tiene
   guardado para esta plantilla (mismos selectores exactos que genera
   `Post_CSS_File::update()` forzado a mano contra el post 44 — no solo el
   "CSS personalizado" de 3 elementos, sino tambien los estilos nativos del
   panel de cada elemento: display/direccion flex, min-height de la caja de
   imagen, colores y tipografias por Global Font/Color, y los 3 breakpoints
   de ajuste responsive). Si algun dia esta limitacion de Elementor se
   corrige o el panel se edita, estas reglas quedan redundantes pero
   inofensivas (mismo valor); si el panel cambia sin tocar aqui, este archivo
   gana por especificidad/orden y quedaria desincronizado — recordar
   actualizar ambos lados si se ajusta el diseno de la tarjeta desde el
   editor (o volver a generar con `Post_CSS_File(44)->update()` y pegar acá
   el resultado). */
.elementor-44 .elementor-element.elementor-element-3a7c6b9 {
    --display: flex;
    /* column, no row: con row la caja de texto quedaba de ~85px junto a la
       imagen y el titulo (line-clamp:1) se recortaba a 1-2 caracteres. Se
       corrigio tambien en el panel de Elementor (plantilla 44), esto es el
       espejo en teoria redundante - ver comentario grande mas arriba. */
    --flex-direction: column;
    --container-widget-width: calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );
    --container-widget-height: 100%;
    --container-widget-flex-grow: 1;
    --container-widget-align-self: stretch;
    --flex-wrap-mobile: wrap;
    --align-items: center;
}
.elementor-44 .elementor-element.elementor-element-e06ed81 {
    --display: flex;
    --min-height: 180px;
    --justify-content: flex-end;
    --align-items: center;
    --container-widget-width: calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );
    --margin-top: 0px;
    --margin-bottom: 15px;
    --margin-left: 0px;
    --margin-right: 0px;
    --padding-top: 16px;
    --padding-bottom: 16px;
    --padding-left: 16px;
    --padding-right: 16px;
}
.elementor-44 .elementor-element.elementor-element-e06ed81.e-con {
    --align-self: flex-end;
}
.elementor-44 .elementor-element.elementor-element-34d2a35c {
    width: auto;
    max-width: auto;
    text-align: center;
}
.elementor-44 .elementor-element.elementor-element-34d2a35c > .elementor-widget-container {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
.elementor-44 .elementor-element.elementor-element-34d2a35c.elementor-element {
    --align-self: center;
}
.elementor-44 .elementor-element.elementor-element-34d2a35c img {
    width: 100%;
    max-width: 100%;
}
.elementor-44 .elementor-element.elementor-element-6c80e711 {
    --display: flex;
    --flex-direction: column;
    --container-widget-width: 100%;
    --container-widget-height: initial;
    --container-widget-flex-grow: 0;
    --container-widget-align-self: initial;
    --flex-wrap-mobile: wrap;
    --justify-content: center;
}
.elementor-44 .elementor-element.elementor-element-26f68997 {
    --display: flex;
}
.elementor-44 .elementor-element.elementor-element-59afc088 > .elementor-widget-container {
    margin: 0px 0px 3px 0px;
}
.elementor-44 .elementor-element.elementor-element-59afc088 {
    text-align: center;
}
.elementor-44 .elementor-element.elementor-element-59afc088 .elementor-heading-title {
    font-family: var( --e-global-typography-lijttl08-font-family ), Sans-serif;
    /* 18px literal, no la variable global de lijttl08 (24px): v2 (Items.css,
       .item-squared__title) usa --text-m (18px) aqui, pero ese mismo Global
       Font tambien viste "Nuestras colecciones destacadas" (ver bloque
       "Auditoria v2, 2026-09-23" mas abajo) con su propio 24px correcto en
       otros contextos - cambiar el token global habria movido ambas cosas a
       la vez sin control.

       2026-09-23 (2da continuacion) — el !important es obligatorio, no
       decorativo: Elementor SI genera CSS para los widgets de una plantilla
       usada como Loop Item, pero en un archivo aparte
       (wp-content/uploads/elementor/css/loop-44.css, no en post-101.css como
       se penso al escribir este bloque la primera vez), con el mismo
       selector exacto de 4 clases y el mismo valor viejo (var(...)=24px).
       Ese archivo se regenera solo y carga despues que este (mismo motivo
       de siempre: el CSS de Elementor se encola en prioridad 20, este tema
       en la 10) — empate de especificidad a favor de Elementor. Sin
       !important, cualquier edicion de este bloque queda pisada la
       proxima vez que Elementor regenere ese loop-44.css (p. ej. al limpiar
       cache), aunque el archivo se vea bien aqui. */
    font-size: 18px !important;
    font-weight: var( --e-global-typography-lijttl08-font-weight );
    line-height: var( --e-global-typography-lijttl08-line-height );
    letter-spacing: var( --e-global-typography-lijttl08-letter-spacing );
    word-spacing: var( --e-global-typography-lijttl08-word-spacing );
    color: var( --e-global-color-lijacc07 );
    /* v2 trunca el titulo a 2 lineas (Items.css: display:-webkit-box +
       -webkit-box-orient:vertical + -webkit-line-clamp:2 + overflow:hidden
       + text-overflow:ellipsis, las 5 juntas — es una tecnica, no una sola
       propiedad suelta). El -webkit-line-clamp solo (lo unico que habia
       aqui hasta ahora) no hace nada sin display:-webkit-box +
       -webkit-box-orient:vertical: por eso un titulo largo nunca llegaba a
       saltar de linea, se quedaba en una sola sin recortar ni ajustar.
       width:100% asegura que el salto de linea tenga el ancho real de la
       tarjeta para decidir donde cortar, no el ancho del texto sin salto.

       2026-09-23 (3ra continuacion) — el widget "theme-post-title" tiene su
       PROPIO "CSS personalizado" guardado en el panel de Elementor (no es
       la clase generica ".titular-dos-lineas" del tema, que igual sigue
       aplicando 2 pero pierde por especificidad): "selector
       .elementor-heading-title { -webkit-line-clamp: 1; }" — con el mismo
       selector final de 4 clases que loop-44.css regenera solo, y que sigue
       diciendo 1 porque el ajuste vive en el panel del widget, no aqui. Por
       eso el titulo largo se recortaba a 1 sola linea con "…" en vez de
       partir a 2: no era el "-webkit-line-clamp" suelto sin display:
       -webkit-box de antes (eso tambien era cierto, pero esto es lo que de
       verdad estaba ganando), era este segundo -webkit-line-clamp:1
       compitiendo a la misma especificidad y cargando despues. Unico que
       necesita !important: los otros 3 (overflow/text-overflow/box-orient)
       no estan definidos en ningun lado de loop-44.css. */
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    width: 100%;
}
/* Autor (widget nuevo aut0r1sc0, agregado 2026-09-09 — el maestro visual
   muestra el nombre del autor debajo del titulo, la Fase 6 no lo incluyo).
   2026-09-23 (auditoria v2) — usaba el mismo tamano que el titulo via la
   variable de lijttl08 (24px) con un peso 600 elegido a mano; v2
   (Items.css, .item-squared__author) pide 16px (--text-s) y peso 550
   (normalizado a 500, mismo criterio 550/650/750->500/700/900 de toda la
   Fase 3) — un escalon mas chico que el titulo, no el mismo tamano.
   !important por el mismo motivo que el titulo de arriba: loop-44.css
   trae este mismo selector de 4 clases con el "CSS personalizado" viejo
   (24px/600) guardado en el panel del widget, y carga despues. */
.elementor-44 .elementor-element.elementor-element-aut0r1sc0 > .elementor-widget-container {
    margin: 2px 0px 0px 0px;
}
.elementor-44 .elementor-element.elementor-element-aut0r1sc0 .autor {
    display: block;
    font-family: var(--e-global-typography-lijttl08-font-family), sans-serif;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: var(--e-global-typography-lijttl08-line-height);
    color: var(--e-global-color-lijacc07);
    text-align: center;
}
.elementor-44 .elementor-element.elementor-element-478ade2d > .elementor-widget-container {
    margin: 0px 0px 10px 0px;
}
.elementor-44 .elementor-element.elementor-element-1cd48bf4 {
    --display: flex;
    --flex-direction: column;
    --container-widget-width: calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );
    --container-widget-height: initial;
    --container-widget-flex-grow: 0;
    --container-widget-align-self: initial;
    --flex-wrap-mobile: wrap;
    --justify-content: flex-end;
    --align-items: flex-start;
}
.woocommerce .elementor-44 .elementor-element.elementor-element-27c9df4b .price {
    color: var( --e-global-color-text );
    font-family: var( --e-global-typography-e477a4a-font-family ), Sans-serif;
    font-size: var( --e-global-typography-e477a4a-font-size );
    font-weight: var( --e-global-typography-e477a4a-font-weight );
    line-height: var( --e-global-typography-e477a4a-line-height );
    letter-spacing: var( --e-global-typography-e477a4a-letter-spacing );
    word-spacing: var( --e-global-typography-e477a4a-word-spacing );
}
.elementor-44 .elementor-element.elementor-element-4e0ea2c1 .cart button,
.elementor-44 .elementor-element.elementor-element-4e0ea2c1 .cart .button {
    transition: all 0.2s;
}
@media (max-width: 1024px) {
    .elementor-44 .elementor-element.elementor-element-e06ed81 {
        --min-height: 160px;
    }
}
@media (max-width: 767px) {
    .elementor-44 .elementor-element.elementor-element-3a7c6b9 {
        --justify-content: center;
    }
    .elementor-44 .elementor-element.elementor-element-e06ed81 {
        --justify-content: flex-end;
    }
    .elementor-44 .elementor-element.elementor-element-6c80e711 {
        --min-height: 0rem;
    }
}
@media (max-width: 411px) {
    .elementor-44 .elementor-element.elementor-element-e06ed81 {
        --min-height: 150px;
    }
}

/* Las 3 reglas de "CSS personalizado" por elemento (las unicas que no viven
   en variables --* sino como propiedades directas) — mismo texto guardado en
   el panel. La de alto lleva !important: Elementor genera ademas, para ESTE
   carrusel (widget 7a33d18), una regla propia que fuerza `height:100%` en el
   hijo directo de cada slide - `.elementor-101 .elementor-element-7a33d18
   .swiper-slide > .elementor-element` - con 5 clases de especificidad (mas
   que las 3 de esta regla), pensada para que las tarjetas se estiren parejo
   por defecto. Le gana al alto fijo que necesita esta tarjeta en particular
   sin el !important. */
.elementor-44 .elementor-element.elementor-element-3a7c6b9 {
    width: 188px;
    height: 320px !important;
}
.elementor-44 .elementor-element.elementor-element-34d2a35c img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

/* =============================================================================
   Auditoria v2, 2026-09-23 — home (pagina 101): jerarquia H1/H2 y circulos de
   "Nuestras colecciones destacadas".

   1) Jerarquia de titulos aplanada: los 3 titulos de seccion ("Nuestras
      colecciones destacadas", "Descubre nuestras novedades", "Nuestros libros
      premiados") comparten el mismo Global Font que el H1 del hero (lijhdl01,
      40px) — v2 (Sections.css) usa 40px solo para el H1 de pagina y 32px
      (--heading-2) para el H2 de cada banda. No se toca lijhdl01 (lo usa
      tambien el H1, que si debe quedar en 40px): se sobreescribe font-size
      solo en estos 3 widgets por id.

   2026-09-23 (2da continuacion) — este bloque completo (los 3 puntos de
   abajo) no se estaba aplicando: Elementor genera, para cada uno de estos
   widgets, su propia regla con el patron
   ".elementor-101 .elementor-element.elementor-element-{id} ..." — 4 clases
   (incluye la generica ".elementor-element" ademas de la especifica), una
   mas que el patron usado aqui hasta ahora (3 clases), y por lo tanto siempre
   gana por especificidad sin importar el orden de carga. Ademas, el propio
   CSS de Elementor para la pagina se encola en 'wp_enqueue_scripts' con
   prioridad 20 (Frontend::ENQUEUED_STYLES_PRIORITY), despues que
   'sm_b2b_css' (prioridad 10 por defecto) — o sea que ni siquiera hay empate
   de especificidad a favor del orden: Elementor carga despues Y con mas
   especificidad. Unico arreglo robusto sin reescribir cada selector con la
   misma clase generica: !important en las propiedades que de verdad
   necesitan ganarle. Mismo diagnostico aplica a los puntos 2 y 3. */
:is(.elementor-101, .elementor-70) .elementor-element-bd497a9 .elementor-heading-title,
:is(.elementor-101, .elementor-70) .elementor-element-2ff0ab0 .elementor-heading-title,
.elementor-101 .elementor-element-10eaa13 .elementor-heading-title {
    font-size: 32px !important;
}

/* 2) Circulo de cada coleccion (widget Image dentro del Nested Carousel
   90fd609): tenia fondo crema permanente (var(--e-global-color-lijcrm03),
   guardado en el "CSS personalizado" de cada uno de los widgets) y ademas
   heredaba, sin querer, el nombre en 24px del mismo Global Font que el titulo
   de la seccion (lijttl08) en vez de los 18px de v2. v2 (Items.css,
   item-rounded--character) no pinta ningun circulo por defecto: el circulo
   solo aparece al pasar el mouse, y en un tono distinto (durazno, no crema).
   Se sobreescribe aqui en vez de tocar el "CSS personalizado" de cada widget
   por separado (mismo resultado, un solo punto de edicion) — vale tanto para
   los 6 originales como para el 7mo (Pepe y Mila) agregado despues, que ya
   nace con el mismo "CSS personalizado" base (156x156 cover).

   2026-09-23 (continuacion) — la imagen real dentro del circulo se veia
   mucho mas grande que en v2 (y en varias colecciones se recortaba, ej.
   "El pollo Pepe"/"Raton fisgon", el personaje llega hasta el borde del
   PNG original): ahi el circulo (item-rounded__thumb) tiene 16px de relleno
   y el <img> usa "contain" (cabe entera, sin recortar); aqui el <img>
   ocupaba el circulo completo (156x156) con "cover" (recorta y hace zoom).

   2026-09-23 (3ra continuacion) — el primer intento (padding + box-sizing:
   border-box directo sobre el <img>) seguia recortando algunas imagenes:
   el soporte de "object-fit" respetando el padding de un elemento
   reemplazado (<img>, <video>) es inconsistente entre navegadores/versiones
   (bug historico de Chromium) — el padding puede ignorarse y el "contain"
   termina calculandose sobre los 156x156 completos, sin el margen. v2 nunca
   depende de eso: el padding vive en el <span> contenedor (elemento normal,
   sin ambiguedad), y el <img> adentro es simple 100%/100%. Se replica exacto
   ese patron aqui usando el envoltorio que Elementor ya pone a todo widget
   (.elementor-widget-container) en vez del padding sobre el <img>. */
:is(.elementor-101, .elementor-70) .elementor-element-90fd609 .elementor-widget-image .elementor-widget-container {
    width: 156px;
    height: 156px;
    padding: 16px;
    box-sizing: border-box;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    transition: background-color 160ms ease;
}
:is(.elementor-101, .elementor-70) .elementor-element-90fd609 .elementor-widget-image:hover .elementor-widget-container,
:is(.elementor-101, .elementor-70) .elementor-element-90fd609 .elementor-widget-image:focus-within .elementor-widget-container {
    background: #FFE8D6;
}
:is(.elementor-101, .elementor-70) .elementor-element-90fd609 .elementor-widget-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    background: transparent !important;
    border-radius: 0 !important;
}
:is(.elementor-101, .elementor-70) .elementor-element-90fd609 .elementor-heading-title {
    font-size: 18px !important;
}

/* =============================================================================
   Plantilla Elementor 48565 "Item entrada premios" (seccion "Nuestros libros
   premiados", home) — mismo bug real ya documentado para la plantilla 44 mas
   arriba, version corregida: el CSS de un elemento dentro de una plantilla
   usada como Loop Item (aqui vía el Loop Carousel fa6a3ac) SI se genera,
   pero en un archivo aparte (wp-content/uploads/elementor/css/loop-48565.css,
   no en post-101.css) que se regenera solo y carga despues que este —
   confirmado con el mismo "CSS personalizado"/ajustes de panel ya guardados
   en el widget (296x320, imagen 180px "cover" con 8px de radio, titulo
   variable=24px), a igual especificidad de selector (4 clases). Cualquier
   propiedad que cambie un valor que Elementor tambien fije ahi necesita
   !important — si no, la proxima regeneracion de ese archivo (p. ej. al
   limpiar cache) la vuelve a pisar en silencio, aunque este archivo se vea
   bien. No se replican los "--variable" internos de Elementor (--display,
   --gap, etc.): las propiedades CSS finales normales (display, gap...) ya
   ganan solas por especificidad contra la base generica de Elementor
   (.e-con{display:var(--display,...)}), sin necesitar !important ahi. */
/* 2026-09-23 (4ta continuacion) — 3 correcciones mas, todas por el mismo
   motivo (ancho fijo en vez de flexible, imagen con alto fijo en vez de
   llenar el espacio libre, titulo recortado):
   1. v2 (Items.css, .item-squared--premio) no fija 296px: usa
      "flex:1 0 0; min-width:160px", asi que las 3 tarjetas reales se
      reparten TODO el ancho disponible del carrusel entre las 3 (mas
      angostas o mas anchas segun la pantalla) — aqui quedaba angosta y fija
      de mas, cortando el titulo largo real ("Ganadores de los premios SM
      2024. El Barco de Vapor y Gran Angular.") a 2 lineas con "…" porque no
      entraba, cuando en una tarjeta mas ancha si entra completo.
   2. La imagen en v2 no tiene alto fijo: el contenedor de la imagen
      (.item-squared__thumb) usa "flex:1", o sea crece para llenar TODO el
      alto libre de la tarjeta (320px menos el titulo) — de ahi que se vea
      "mucho mas chica" aqui, con 180px fijos (el mismo alto que la tarjeta
      de Novedades, que si es fija en v2) sobraba espacio vacio abajo sin
      usar.
   3. El titulo real es mas largo que el texto de v2 en algunos casos y no
      debe recortarse — se quita el "-webkit-line-clamp:2" que trae la
      clase generica ".titular-dos-lineas" (2 clases, pierde solo contra
      esto por especificidad, no hace falta !important) para que crezca a
      las lineas que necesite en vez de cortar con "…". */
.elementor-48565 .elementor-element.elementor-element-339a5f2 {
    width: 100% !important;
    min-width: 160px !important;
    /* height FIJO a proposito, no auto: "flex:1" en la imagen (mas abajo)
       solo tiene espacio libre para crecer si el contenedor mismo tiene un
       alto definido — con height:auto (lo que se probo primero) no hay
       "espacio extra" que repartir y el flex-grow no hace nada, la imagen
       se queda en su alto minimo. v2 (Items.css) tambien fija 320px aqui;
       lo flexible en v2 es el ANCHO de la tarjeta y el alto de la imagen
       DENTRO de ese alto fijo, no el alto de la tarjeta en si. */
    height: 320px !important;
}
/* 2026-09-23 (5ta continuacion) — el "display:flex;flex-direction:column;
   gap:12px" de mas arriba NUNCA hizo nada: este contenedor tiene
   "content_width" en modo boxed (clase real "e-con-boxed" confirmada en el
   HTML servido), y en ese modo Elementor mete a los 2 widgets (imagen y
   titulo) dentro de un <div class="e-con-inner"> intermedio que NO es el
   mismo elemento que ".elementor-element-339a5f2" — el flex/gap puesto en
   el de afuera no le llega a los hijos de adentro. Mismo patron ya
   documentado antes en este proyecto para el acordeon movil del menu ("el
   gap real vive en un .e-con-inner que Elementor inserta en modo boxed").
   Sin esto, la imagen y el titulo se apilaban con el alto por defecto de
   cada uno (inconsistente entre las 3 tarjetas) y el titulo terminaba
   superpuesto sobre la imagen. Se apunta directo a .e-con-inner en vez de
   replicar el sistema de variables --display/--flex-direction de
   Elementor (mismo resultado, mas simple de verificar). */
.elementor-48565 .elementor-element.elementor-element-339a5f2 > .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    height: 100% !important;
}
/* v2 (Items.css, .item-squared__premio-img) no le pone radio a la imagen
   del premio — aqui se habia agregado 8px de mas, se quita (loop-48565.css
   SI trae ese 8px propio, por eso el !important en border-radius). El alto
   fijo (180px, igual al de Novedades) se cambia por flex:1 en el widget que
   envuelve la imagen para que crezca con el espacio libre real de la
   tarjeta, igual que ".item-squared__thumb" en v2 — ahora si funciona,
   3b05fbc es hijo directo de .e-con-inner (ya flex de verdad).

   2026-09-23 (6ta continuacion) — verificado con Playwright real (por fin
   con acceso, ver notas de sesion): el alto SI era flex, pero cada imagen
   salia de un alto distinto (260px/370px/251px) en vez de parejo. Causa:
   "min-height:auto" es el valor por defecto de un item flex, y para un
   elemento reemplazado (<img>) con aspect-ratio propio, ese "auto" no es 0
   — el flexbox calcula un "tamano minimo automatico" basado en su relacion
   de aspecto real (alto = ancho x su propia proporcion), y ese minimo
   implicito le ganaba a mi min-height:160px explicito en las imagenes mas
   altas de proporcion (por eso 160px nunca fue la restriccion real: el
   automatico ya era mayor). object-fit:cover en el <img> no ayuda aqui
   porque el problema es el tamano de su CONTENEDOR flex, anterior a que
   "cover" entre a recortar. Fix: min-height:0 cancela ese minimo
   automatico — es el mismo gotcha documentado ampliamente para flexbox con
   contenido reemplazado (mismo fix que "min-width:0" en flex-row). */
.elementor-48565 .elementor-element.elementor-element-3b05fbc {
    flex: 1 !important;
    min-height: 0 !important;
}
/* 2026-09-23 (7ma continuacion) — verificado de nuevo con Playwright: el
   contenedor (3b05fbc) ya media parejo en las 3 tarjetas (264.8px, el fix
   de min-height:0 si funciono), pero el <img> seguia saliendo con su alto
   natural (ej. 370px en vez de 264.8px) — el "height:100%" del <img> no
   tenia contra que resolverse: entre 3b05fbc y el <img> hay DOS envoltorios
   mas (.elementor-widget-container y un <a> del enlace) sin alto propio, y
   un porcentaje de alto sobre un ancestro sin alto definido se ignora (cae
   al alto intrinseco de la imagen). Hay que darle alto 100% a TODA la
   cadena, no solo al <img>. */
.elementor-48565 .elementor-element.elementor-element-3b05fbc .elementor-widget-container,
.elementor-48565 .elementor-element.elementor-element-3b05fbc .elementor-widget-container > a {
    display: block !important;
    height: 100% !important;
}
.elementor-48565 .elementor-element.elementor-element-3b05fbc img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 0 !important;
}
.elementor-48565 .elementor-element.elementor-element-c711b83 .elementor-heading-title {
    font-family: var(--e-global-typography-lijttl08-font-family), Sans-serif;
    /* 18px literal (--text-m de v2), no la variable de lijttl08 (24px) —
       mismo criterio que el titulo de "Novedades" mas arriba: ese Global
       Font tambien viste otros contextos con su 24px correcto. */
    font-size: 18px !important;
    font-weight: var(--e-global-typography-lijttl08-font-weight);
    line-height: var(--e-global-typography-lijttl08-line-height);
    color: var(--e-global-color-lijacc07);
    /* Cancela el recorte de 2 lineas de ".titular-dos-lineas" (punto 3
       arriba) — el titulo real debe verse completo, sin importar cuantas
       lineas necesite. */
    display: block !important;
    -webkit-line-clamp: unset !important;
    overflow: visible !important;
}
/* =============================================================================
   v3 (nueva-web-lij-main-v3, 2026-10-06) — Novedades de la home (HomePage.css
   .home__novedades + Items.css .item-squared--carousel)

   Las novedades llenan el hueco entre las flechas del carrusel: un número
   entero de libros, más cuanto más ancha la pantalla (2 por debajo de 800px,
   3 desde 800, 4 desde 1000, 5 desde 1480, 6 desde 1920), a 32px entre sí
   (16 en teléfono). El número decide el ancho de la tarjeta, no al revés,
   así no queda pista vacía junto a las flechas. El número y la separación
   los fija lij-header.js (bloque "Novedades de la home") sobre el Swiper de
   Elementor, porque esos cortes no coinciden con los breakpoints del Kit.

   La cubierta llena el ancho de la tarjeta en un hueco cuadrado, apoyada en
   su suelo, 16px sobre el título: sustituye al alto fijo de 188x320 y a la
   cubierta de 156px de antes.
   ============================================================================= */
.elementor .lij-banda-novedades .elementor-widget-loop-carousel {
    --lij-novedad-flechas: 70px;
}

.elementor .lij-banda-novedades .elementor-widget-loop-carousel > .elementor-widget-container {
    position: relative;
    padding: 0 var(--lij-novedad-flechas);
}

@media (max-width: 599px) {
    .elementor .lij-banda-novedades .elementor-widget-loop-carousel {
        --lij-novedad-flechas: 0px;
    }

    .elementor .lij-banda-novedades .elementor-swiper-button {
        display: none !important;
    }
}

.elementor .lij-banda-novedades .elementor-swiper-button {
    top: 0;
    bottom: 0;
    transform: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--lij-novedad-flechas);
    margin: 0;
    color: var(--lij-red, #ED1B2F);
    font-size: 32px;
}

.elementor .lij-banda-novedades .elementor-swiper-button-prev { left: 0; }
.elementor .lij-banda-novedades .elementor-swiper-button-next { right: 0; }

.elementor .lij-banda-novedades .elementor-swiper-button svg {
    width: 32px;
    height: 32px;
    fill: currentColor;
}

.elementor .lij-banda-novedades .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
}

.elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-3a7c6b9 {
    width: 100%;
    height: auto !important;
}

.elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-e06ed81 {
    --min-height: 0px;
    --padding-top: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
    --padding-bottom: 16px;
    --margin-bottom: 0px;
    aspect-ratio: 1;
    width: 100%;
}

.elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-34d2a35c,
.elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-34d2a35c > .elementor-widget-container,
.elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-34d2a35c a {
    width: 100%;
    height: 100%;
}

.elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-34d2a35c img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center bottom;
}

@media (max-width: 599px) {
    .elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-e06ed81 {
        --padding-bottom: 16px;
    }

    .elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-59afc088 .elementor-heading-title {
        font-size: 16px !important;
    }
}


/* =============================================================================
   "Nuestras colecciones destacadas" / "Otras colecciones destacadas" — hover
   de cada colección en TODAS las páginas donde aparece (v3, 2026-10-06:
   Items.css .item-rounded--character.item-rounded--medium + tokens.css).

   Cada carrusel de colecciones lleva en Elementor la clase
   `lij-carrusel-colecciones` (Avanzado > Clases CSS): home, las 4 páginas de
   edad, Barco de Vapor, Juvenil, resultados de búsqueda (plantilla 35) y la
   plantilla de colección (49985). Hasta ahora solo la home tenía este
   comportamiento, con un selector atado a ella (más arriba, 90fd609); el
   resto mostraba un círculo crema fijo, la imagen recortada a 156px con
   "cover" y sin hover.

   v3: el personaje va sin círculo; al pasar el ratón (o con foco) entra
   detrás un círculo un tono más oscuro que la banda — el durazno #FFE8D6 en
   la paleta de la home, y en una página con tema de sección el tono oscuro
   de ese tema (en durazno se perdería sobre el rosa de 0-2). El nombre va en
   el color de acento de la sección y se subraya. La imagen cabe entera en el
   círculo con 16px de margen (124px), sin recortar.

   !important: cada widget de imagen de las páginas de sección trae su propio
   "CSS personalizado" (156x156, cover, radio 50%) con más especificidad.
   ============================================================================= */
.lij-carrusel-colecciones {
    --lij-hover-circulo: #FFE8D6;
}

[data-lij-theme] .lij-carrusel-colecciones,
.lij-carrusel-colecciones[data-lij-theme] {
    --lij-hover-circulo: var(--lij-page-dark);
}

.lij-carrusel-colecciones .elementor-widget-image .elementor-widget-container {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 156px !important;
    height: 156px !important;
    margin: 0 auto;
    padding: 16px !important;
    box-sizing: border-box;
    border-radius: 50%;
    overflow: hidden;
    background: transparent !important;
    transition: background-color 160ms ease;
}

.lij-carrusel-colecciones .elementor-widget-image a {
    display: flex;
    width: 100%;
    height: 100%;
}

.lij-carrusel-colecciones .elementor-widget-image img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: contain !important;
    background: transparent !important;
    border-radius: 0 !important;
}

.lij-carrusel-colecciones .elementor-heading-title,
.lij-carrusel-colecciones .elementor-heading-title a {
    color: var(--lij-accent, #ED1B2F) !important;
}

.lij-carrusel-colecciones .swiper-slide:focus-within .elementor-widget-image .elementor-widget-container {
    background: var(--lij-hover-circulo) !important;
}

@media (hover: hover) {
    .lij-carrusel-colecciones .swiper-slide:hover .elementor-widget-image .elementor-widget-container {
        background: var(--lij-hover-circulo) !important;
    }

    .lij-carrusel-colecciones .swiper-slide:hover .elementor-heading-title {
        text-decoration: underline;
    }
}

@media (prefers-reduced-motion: reduce) {
    .lij-carrusel-colecciones .elementor-widget-image .elementor-widget-container {
        transition: none;
    }
}

/* El nombre bajo cada colección, a 18px como v3 (.item-rounded__label,
   --text-m, Avenir Black); las páginas de sección lo tenían más grande. */
.lij-carrusel-colecciones .elementor-heading-title {
    font-size: 18px !important;
    line-height: 1.2 !important;
}


/* =============================================================================
   Carrusel v3 — colecciones y categorías (2026-10-06, Carousel.css de
   nueva-web-lij-main-v3). Widgets Nested Carousel con la clase
   `lij-carrusel-v3`; la medición (cuántas caben, separación, recorte a
   tarjetas enteras) la hace lij-header.js, bloque "Carruseles de colecciones
   y categorías".

   Las flechas son las de v3: botón sin fondo de 70px con el chevron de 32px
   del color de acento de la sección, una a cada lado de la fila y centradas
   en su alto. Con todas las tarjetas a la vista se ocultan pero conservan su
   hueco, para que la fila quede donde las demás; en el extremo al que ya se
   llegó se atenúan. En teléfono no hay flechas: la fila se desliza.
   ============================================================================= */
.lij-carrusel-v3 > .elementor-widget-container {
    position: relative;
    padding: 0 70px;
}

.lij-carrusel-v3 .e-n-carousel {
    margin-left: auto;
    margin-right: auto;
}

.lij-carrusel-v3 .e-n-carousel > .swiper-wrapper > .swiper-slide {
    width: 164px !important;
}

/* Cada tarjeta como v3 .item-rounded: 4px de relleno alrededor (el círculo
   no toca el borde de la fila) y 8px entre el círculo y el nombre (los
   contenedores del panel traen 12). */
.lij-carrusel-v3 .e-n-carousel > .swiper-wrapper > .swiper-slide {
    padding: 4px !important;
}

.lij-carrusel-v3 .swiper-slide > .e-con {
    --min-height: 0px;
    min-height: 0 !important;
}

.lij-carrusel-v3 .swiper-slide > .e-con > .e-con-inner {
    gap: 8px !important;
    min-height: 0 !important;
}

.lij-carrusel-v3 .swiper-pagination {
    display: none !important;
}

.lij-carrusel-v3 .elementor-swiper-button {
    position: absolute;
    top: 0 !important;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: auto !important;
    margin: 0;
    padding: 8px 16px;
    transform: none !important;
    cursor: pointer;
}

.lij-carrusel-v3 .elementor-swiper-button-prev { left: 0 !important; right: auto !important; }
.lij-carrusel-v3 .elementor-swiper-button-next { right: 0 !important; left: auto !important; }

.lij-carrusel-v3 .elementor-swiper-button > svg,
.lij-carrusel-v3 .elementor-swiper-button > i {
    display: none;
}

.lij-carrusel-v3 .elementor-swiper-button::before {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    background-color: var(--lij-accent, #ED1B2F);
    -webkit-mask: url('../images/lij/chevron-left.svg') center / 100% 100% no-repeat;
    mask: url('../images/lij/chevron-left.svg') center / 100% 100% no-repeat;
}

.lij-carrusel-v3 .elementor-swiper-button-next::before {
    -webkit-mask-image: url('../images/lij/chevron-right.svg');
    mask-image: url('../images/lij/chevron-right.svg');
}

@media (hover: hover) {
    .lij-carrusel-v3 .elementor-swiper-button:not(.swiper-button-disabled):hover::before {
        opacity: 0.7;
    }
}

.lij-carrusel-v3 .elementor-swiper-button.swiper-button-disabled {
    opacity: 1;
    cursor: default;
}

.lij-carrusel-v3 .elementor-swiper-button.swiper-button-disabled::before {
    opacity: 0.3;
}

.lij-carrusel-v3.lij-carrusel--fijo .elementor-swiper-button {
    visibility: hidden;
}

@media (max-width: 599px) {
    .lij-carrusel-v3 > .elementor-widget-container {
        padding: 0;
    }

    .lij-carrusel-v3 .elementor-swiper-button {
        display: none !important;
    }
}

/* Teléfono: como v3, la fila corre de borde a borde de la pantalla (sale del
   margen de la sección) y empieza y se detiene a 16px del borde; la
   tarjeta siguiente asomando es lo que dice que hay más. Los 16px los pone
   lij-header.js como desplazamiento inicial/final del Swiper. */
@media (max-width: 599px) {
    .lij-carrusel-v3 {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        align-self: center;
    }
}


/* =============================================================================
   Home — anchos e imágenes de las 3 bandas igualados a v3 (2026-10-06),
   medidos lado a lado a 1440/1100/390px.

   - Novedades: la sección pasó a ancho completo en Elementor (estaba
     "boxed" a 1320px y dejaba las flechas 20px más adentro). Cada tarjeta
     lleva los 4px de aire de .item-squared de v3, así entre portada y
     portada quedan 40px (32 de separación + 4 + 4).
   - Premios: como el Carousel de v3, la fila deja a cada lado el hueco de
     las flechas (70px) aunque no se vean; tarjeta de 320px con 4px de aire,
     8px entre imagen y título, y la imagen con 8px de margen
     (.item-squared--premio .item-squared__thumb); 8px entre tarjetas.
   - Teléfono (<600px): títulos de banda a 24px (--heading-2 de v3 en
     teléfono), bandas con 48px arriba/abajo y margen de página de 16px; las
     filas de novedades y premios corren de borde a borde, como la pista de
     v3, y empiezan a 16px del borde.
   ============================================================================= */
.elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-3a7c6b9 {
    padding: 4px !important;
    box-sizing: border-box;
}

.elementor-101 .elementor-element-fa6a3ac > .elementor-widget-container {
    padding: 0 70px;
}

.elementor-48565 .elementor-element.elementor-element-339a5f2 {
    padding: 4px !important;
    box-sizing: border-box;
}

.elementor-48565 .elementor-element.elementor-element-339a5f2 > .e-con-inner {
    gap: 8px !important;
}

.elementor-48565 .elementor-element.elementor-element-3b05fbc {
    padding: 8px !important;
    box-sizing: border-box;
}

@media (max-width: 599px) {
    .elementor-101 :is(.elementor-element-bd497a9, .elementor-element-2ff0ab0, .elementor-element-10eaa13) .elementor-heading-title,
    .elementor-70 :is(.elementor-element-bd497a9, .elementor-element-2ff0ab0) .elementor-heading-title { /* 404 (2026-10-08): mismas bandas que la home */
        font-size: 24px !important;
    }

    .elementor-101 :is(.elementor-element-e68217b, .elementor-element-5e6d1c33, .elementor-element-aa603fd),
    .elementor-70 :is(.elementor-element-e68217b, .elementor-element-5e6d1c33) {
        padding: 48px 16px !important;
    }

    .elementor .lij-banda-novedades .elementor-widget-loop-carousel,
    .elementor-101 .elementor-element-fa6a3ac {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
    }

    .elementor .lij-banda-novedades .elementor-widget-loop-carousel > .elementor-widget-container {
        padding: 0 16px;
    }

    .elementor-101 .elementor-element-fa6a3ac > .elementor-widget-container {
        padding: 0;
    }

    .elementor-101 .elementor-element-fa6a3ac .swiper-slide {
        width: 188px !important;
    }
}

/* Premios: el título se corta a 2 líneas como en v3 (.item-squared__title,
   line-clamp 2). Sin el corte, un título de 3 líneas le quitaba alto a la
   imagen dentro de la tarjeta de 320px (223px en vez de 245 a 1100px). Esto
   revierte a propósito la decisión de v2 de mostrarlo completo. */
.elementor-48565 .elementor-element.elementor-element-c711b83 .elementor-heading-title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2;
    overflow: hidden !important;
    text-overflow: ellipsis;
}

/* Novedades: 8px entre el hueco de la portada y el título (el gap de
   .item-squared en v3); con los 16px bajo la portada, 24px hasta el título. */
.elementor .lij-banda-novedades .elementor-44 .elementor-element.elementor-element-e06ed81 {
    --margin-bottom: 8px;
}

/* Premios: la imagen cabe entera en su hueco, como en v3 (allí gana
   `.item-squared__thumb img { object-fit: contain }` sobre el cover de
   .item-squared__premio-img); antes se recortaba para llenarlo. */
.elementor-48565 .elementor-element.elementor-element-3b05fbc img {
    object-fit: contain !important;
}


/* =============================================================================
   Pie — línea legal como v3 (2026-10-06, Footer.tsx/Footer.css).

   "© SM" (widget de título 44294367) y el menú "Pie de página" (widget
   17fa3e9c) se dibujan como UNA sola fila de enlaces, igual que la lista
   LEGAL_LINKS de v3: los envoltorios del menú se "disuelven"
   (display: contents) para que cada <li> sea hermano directo de "© SM"
   dentro del contenedor 00962af. Así la fila parte y se centra como una
   sola cuando no cabe:
   - un solo separador de 1px y 16px de alto (el alto del texto) entre
     enlace y enlace, con los 8px de relleno de cada enlace a cada lado;
   - por debajo de 1180px parte en filas centradas, a 8px entre filas, y el
     enlace que abre una fila no lleva separador delante (lo marca
     lij-header.js con data-inicio-fila, como v3 con data-row-start; el
     separador solo se oculta, conserva su 1px para no recolocar la fila);
   - en teléfono, un enlace por línea y sin separadores.
   ============================================================================= */
.elementor-location-footer .elementor-element-00962af {
    flex-wrap: nowrap;
    gap: 0 !important;
    row-gap: 8px !important;
    justify-content: center;
}

.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu,
.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu > .elementor-widget-container,
.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu--main,
.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu--main > ul {
    display: contents !important;
}

.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu--dropdown,
.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-menu-toggle {
    display: none !important;
}


/* El separador antes del menú (::before del <nav>) ya no se pinta con el
   <nav> disuelto: cada <li>, también el primero, lleva el suyo. */
.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu > li {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu > li::before {
    content: "" !important;
    display: block !important;
    flex: none;
    width: 1px !important;
    height: 16px !important;
    margin: 0 !important;
    background: var(--lij-pie-divisor, #FFF9F5) !important;
}

.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu > li[data-inicio-fila]::before {
    visibility: hidden;
}

.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu > li > a {
    white-space: nowrap;
}

@media (max-width: 1179px) {
    .elementor-location-footer .elementor-element-00962af {
        flex-wrap: wrap;
    }
}

@media (max-width: 599px) {
    .elementor-location-footer .elementor-element-00962af {
        flex-direction: column !important;
        align-items: center !important;
        row-gap: 0 !important;
    }

    .elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu > li::before {
        display: none !important;
    }
}

/* Pie — "© SM" y los enlaces recortados a la altura de las mayúsculas, como
   v3 (text-box: trim-both cap alphabetic): la fila mide el texto más su
   relleno de 8px (27px), no la caja de línea completa (38px). El relleno de
   "© SM" ya viene de Elementor (8px). */
.elementor-location-footer .elementor-element-44294367 .elementor-heading-title,
.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu > li > a .elementor-item-text,
.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu > li > a {
    line-height: 1.4;
    text-box: trim-both cap alphabetic;
    white-space: nowrap;
}

/* El recorte de caja de texto no actúa sobre un contenedor flex (así pinta
   Elementor cada enlace del menú): el enlace pasa a bloque. */
.elementor-location-footer .elementor-element-00962af .lij-footer-legal-menu .elementor-nav-menu > li > a {
    display: block !important;
}

/* Pie — los separadores (logos y enlaces) toman el tono claro de la sección
   de la página, como en v3 (allí son var(--surface-static-page-light), que
   cambia con data-theme). En WP el tema de sección vive en los contenedores
   de la página (data-lij-theme), no en el pie: se lee con :has(). Mismos
   valores que lij-design-system.css / tokens.css de v3. */
.elementor-location-footer { --lij-pie-divisor: #FFF9F5; }
body:has(main [data-lij-theme='0-2']) .elementor-location-footer { --lij-pie-divisor: #FFE8EB; }
body:has(main [data-lij-theme='3-5']) .elementor-location-footer { --lij-pie-divisor: #FEF3D4; }
body:has(main [data-lij-theme='6-9']) .elementor-location-footer { --lij-pie-divisor: #FFEBD7; }
body:has(main [data-lij-theme='10-12']) .elementor-location-footer { --lij-pie-divisor: #D2F3EF; }
body:has(main [data-lij-theme='barco']) .elementor-location-footer { --lij-pie-divisor: #E4F3FC; }
body:has(main [data-lij-theme='juvenil']) .elementor-location-footer { --lij-pie-divisor: #EAE3FC; }

/* Novedades: todos los libros a la vista (5 desde 1480px) → fila centrada y
   flechas ocultas con su hueco, como el Carousel de v3 (.carousel--static). */
.elementor .lij-banda-novedades .lij-novedades--fija .elementor-swiper-button {
    visibility: hidden;
}

.elementor .lij-banda-novedades .lij-novedades--fija .swiper-wrapper {
    justify-content: center;
}

/* Leyenda "Destacado" (producto marcado como destacado en WooCommerce):
   oculta en tarjetas y ficha a pedido de Francisco (2026-10-07); v3 no la
   tiene. No se borra: la pintan [badge_new] y [badge_detalle]
   (functions-shortcode.php) y basta con quitar esta regla para recuperarla. */
.badge.destacado {
    display: none !important;
}

/* Hovers de v3 (Items.css): el nombre de una categoría y el título de una
   tarjeta de novedad se subrayan al pasar el ratón, como ya hacían las
   colecciones. Las categorías llevan además la mano, como el enlace de v3. */
.lij-carrusel-categorias .swiper-slide {
    cursor: pointer;
}

@media (hover: hover) {
    .lij-carrusel-categorias .swiper-slide:hover .elementor-heading-title,
    .elementor-44 .e-con:hover .elementor-element-59afc088 .elementor-heading-title,
    .e-loop-item:hover .elementor-element-59afc088 .elementor-heading-title {
        text-decoration: underline;
    }
}

/* Toda la tarjeta de una colección es el enlace, como v3 (.item-rounded es
   un <a>): el enlace de la imagen se extiende a la tarjeta entera, nombre
   incluido, con un ::after que la cubre. Los dos contenedores intermedios se
   dejan sin posición propia para que el ::after se mida contra la tarjeta. */
.lij-carrusel-colecciones .swiper-slide .elementor-widget-image,
.lij-carrusel-colecciones .swiper-slide > .e-con {
    position: static !important;
}

.lij-carrusel-colecciones .swiper-slide .elementor-widget-image a::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}

/* Flechas del carrusel de novedades centradas en toda la fila, como v3
   (.carousel__arrow align-self:center): Elementor les ponía su propio top y
   translateY(-50%) y quedaban 14px más arriba. Y, como los demás carruseles
   v3, el chevron baja a 0.7 al pasar el ratón. */
.elementor .lij-banda-novedades .elementor-swiper-button {
    top: 0 !important;
    bottom: 0 !important;
    height: auto !important;
    transform: none !important;
}

@media (hover: hover) {
    .elementor .lij-banda-novedades .elementor-swiper-button:not(.swiper-button-disabled):hover svg {
        opacity: 0.7;
    }
}

/* Teléfono: la fila de novedades llega a los dos bordes de la pantalla, como
   v3 (la pista va de borde a borde con el margen de página dentro), así
   asoma la siguiente tarjeta al deslizar. */
@media (max-width: 599px) {
    .elementor .lij-banda-novedades .elementor-widget-loop-carousel {
        margin-left: -16px !important;
        margin-right: -16px !important;
        width: calc(100% + 32px) !important;
        max-width: none !important;
    }

    .elementor .lij-banda-novedades .elementor-widget-loop-carousel > .elementor-widget-container {
        padding-left: 0 !important;              /* hueco de las flechas, que aquí no hay */
        padding-right: 0 !important;
    }

    .elementor .lij-banda-novedades .elementor-widget-loop-carousel .swiper {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}


/* =============================================================================
   Premios SM (2026-10-08) — listado /premios-sm/ (plantilla Elementor 53537,
   archivo de la categoría) y ficha de entrada (53540). La estructura y los
   tamaños están en Elementor; aquí solo lo que el panel no expresa:
   - el corte de teléfono de v3 (<600px; Elementor solo tiene 411/767):
     bandas a 48/16, la primera conserva 64 arriba, títulos 32/24;
   - el texto del editor nativo de la entrada (H2, listas, imagen, pie);
   - "Otros libros premiados" centrado cuando hay menos de 3 tarjetas.
   ============================================================================= */
@media (max-width: 599px) {
    :is(.lij-premios-listado, .lij-entrada-banda, .lij-premios-otros).e-con {
        padding: 48px 16px !important;
    }

    :is(.lij-premios-listado, .lij-entrada-banda).e-con {
        padding-top: 64px !important;
    }

    .lij-titulo-pagina .elementor-heading-title {
        font-size: 32px !important;
    }

    .lij-titulo-banda .elementor-heading-title {
        font-size: 24px !important;
    }
}

.lij-entrada-contenido :is(h2, h3) {
    margin: 32px 0 16px;
    font-family: "Lilita One", sans-serif;
    font-weight: 400;
    line-height: 1.2;
    color: #ED1B2F !important;
}

.lij-entrada-contenido h2 { font-size: 24px; }
.lij-entrada-contenido h3 { font-size: 20px; }

.lij-entrada-contenido :is(p, ul, ol, figure) {
    margin: 0 0 16px;
}

.lij-entrada-contenido :is(ul, ol) {
    padding-left: 24px;
}

.lij-entrada-contenido > .elementor-widget-container > :last-child {
    margin-bottom: 0;
}

.lij-entrada-contenido figure.wp-block-image {
    margin: 32px 0;
}

.lij-entrada-contenido figure.wp-block-image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 16px;
}

.lij-entrada-contenido figcaption {
    margin-top: 8px;
    font-size: 14px;
    font-style: normal;
    text-align: center;
}

.lij-entrada-contenido a {
    color: #ED1B2F;
    text-decoration: underline;
}

.lij-entrada-contenido a:hover {
    color: #BD0F20;
}

@media (max-width: 599px) {
    .lij-entrada-contenido h2 { font-size: 20px; }
}

@media (min-width: 1025px) {
    .lij-premios-rejilla--otros .elementor-loop-container.elementor-grid {
        grid-template-columns: repeat(auto-fit, calc((100% - 16px) / 3));
        justify-content: center;
    }
}
