/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 16 2026 | 19:05:56 */
.owl-carousel .owl-nav {
	display: flex;
    justify-content: space-between;
	position: absolute;	
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
}
.owl-carousel .owl-dots {
    align-items: center;
	display: flex;
    justify-content: center;
	position: relative;
}
.owl-carousel button.owl-dot {
	background-color: transparent !important;
	border: 1px solid var(--contrast) !important;
	border-radius: 8px;
	height: 12px;
	margin: 0 8px;
	width: 12px;
}
.owl-carousel button.owl-dot.active {
	background-color: var(--contrast) !important;
}

/* HEADER SLIDER */
.owl-carousel.header-slider .pelicula {
	position: relative;
}
.owl-carousel.header-slider .pelicula > .gb-container:before {
	content: ' ';
	display: inline-block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 55%;
	width: 100%;
	z-index: 1;
	
	background: rgba(0,0,0,1);
	background: linear-gradient(90deg, rgba(0,0,0,1) 75%, rgba(0,0,0,0) 90%);
	background: -webkit-linear-gradient(90deg, rgba(0,0,0,1) 75%, rgba(0,0,0,0) 90%);
	background: -o-linear-gradient(90deg, rgba(0,0,0,1) 75%, rgba(0,0,0,0) 90%);
	background: -ms-linear-gradient(90deg, rgba(0,0,0,1) 75%, rgba(0,0,0,0) 90%);
}
@media (min-width: 1024px) {
  	.owl-carousel.header-slider .pelicula > .gb-container:before {
		top: 0;

		background: rgba(0,0,0,1);
		background: linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 30%);
		background: -webkit-linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 30%);
		background: -o-linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 30%);
		background: -ms-linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 30%);
	}
}


.owl-carousel.header-slider .owl-nav .owl-next,
.owl-carousel.header-slider .owl-nav .owl-prev,
.owl-carousel.product-gallery-slider .owl-nav .owl-next,
.owl-carousel.product-gallery-slider .owl-nav .owl-prev{
	font-size: 40px !important;
	line-height: 26px !important;
	padding: 10px !important;
}

.owl-carousel.header-slider .owl-dots,
.owl-carousel.product-gallery-slider .owl-dots {
    top: -40px;
}
.owl-carousel.header-slider button.owl-dot,
.owl-carousel.product-gallery-slider button.owl-dot {
	background-color: var(--contrast);
}

/* NOMES PER MALPASO */ /* LA INFO JA NO ES POSA SOBRE LA IMATGE */

/*.owl-carousel.header-slider:before {
	background-color: #78b1ba;
    bottom: 0;
	content: ' ';
	display: inline-block;
	height: 25%;
	position: absolute;
	width: 100%;
}
@media (max-width: 767px) {
	.owl-carousel.header-slider:before {
		height: 55%;
	}
} */
.owl-carousel.header-slider .slider-image figure {
	height: 100%;
	width: fit-content;
}
@media (max-width: 767px) {
	.owl-carousel.header-slider .extracto-carousel {
		width:100%;
		overflow: hidden;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
	}
}


/* BODY CAROUSEL */
.owl-carousel.body-carousel .owl-stage {
	margin: auto;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.owl-carousel.body-carousel .owl-stage-outer {
  overflow: unset; /* Desborda els items del container */	
}
.gb-query-loop-wrapper .product .slider-image img,
.wp-block-query .wp-block-post .slider-image img {
    aspect-ratio: 3/4;
	object-fit: contain;
}
/* Exclusiu Top Ventes */
.sales_query .wc-product-image {
    overflow-x: hidden;
    overflow-y: hidden;
    border-radius: 10px;
    background-color: var(--base-2);
}
.sales_query .wc-product-image .inside-wc-product-image {
	display: block;
    width: 100%;
}
.sales_query .wc-product-image img {
	object-fit: cover;
	aspect-ratio: 3/4;
    width: 100%;
}
.sales_query .product {
	list-style-type: none;
}
.sales_query .product .woocommerce-loop-product__title {
	font-size: 24px;
    line-height: 26px;
    margin-bottom: 10px;
	padding-top: 20px;
}
.sales_query .product .woocommerce-loop-product__autors {
	font-size: 20px;
    line-height: 24px;
    color: var(--contrast-4);
}
.sales_query .product .price {
	display: block;
    font-size: .857em;
    font-weight: 700;
    margin-top: 10px;
}


/* PRODUCT SLIDER */
.owl-carousel.product-gallery-slider {
	max-height: 80vh;
	height: 70vh;
	min-height: 50vh;
}
@media (max-width: 767px) {
	.owl-carousel.product-gallery-slider {
		max-height: 60vh;
	}
}
.owl-carousel.product-gallery-slider .owl-stage-outer,
.owl-carousel.product-gallery-slider .owl-stage,
.owl-carousel.product-gallery-slider .owl-item,
.owl-carousel.product-gallery-slider .owl-item img {
	height: 100%;
}
.owl-carousel.product-gallery-slider .owl-stage-outer {
}
	
.owl-carousel.product-gallery-slider .owl-item {
	border-radius: 10px;
	background-color: var(--base-2);
	padding: 40px;
	display: flex;
}
.owl-carousel.product-gallery-slider .owl-item img {
	border-radius: 0;
   	margin: auto;
	height: 100%;
	width: auto;
	height: 100%;
    max-height: 100%;
    object-fit: contain;
}

/* ===== CLS FIX (2026-09): render the first slide while Owl initializes ===== */
.owl-carousel.header-slider:not(.owl-loaded),
.owl-carousel.body-carousel:not(.owl-loaded),
.owl-carousel.text-slider:not(.owl-loaded) {
	display: block;
}
.owl-carousel.header-slider:not(.owl-loaded) > .gb-grid-column:not(:first-child),
.owl-carousel.body-carousel:not(.owl-loaded) > li:not(:first-child),
.owl-carousel.text-slider:not(.owl-loaded) > *:not(:first-child) {
	display: none;
}
.owl-carousel.body-carousel:not(.owl-loaded) > li {
	width: 100%;
}


/* ===== CARRUSELES MANUALES — 2026-09-15 =====
   Flechas de 44px para descubrir libros sin depender del gesto de arrastre. */
.owl-carousel.body-carousel .owl-nav { display: none; }
.owl-carousel .owl-nav button:focus-visible, .owl-carousel .owl-dot:focus-visible { outline: 3px solid #111; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
    .owl-carousel .owl-stage { transition-duration: 0s !important; }
    .owl-carousel .animated { animation: none !important; }
}


/* Stable hero height: pagination overlays the slide instead of adding 12px. */
.owl-carousel.header-slider { position: relative; }
.owl-carousel.header-slider .owl-dots { position: absolute; top: auto; bottom: 28px; left: 0; width: 100%; }
