.block.catalogue
{
	
	display:flex;
	flex-wrap: no-wrap;
	padding-top:0px;	
}


.block.catalogue section
{
	
	flex-grow: 1;
	padding:64px 0;
	max-width:100%;
}

#products_container
{
	display:grid;
	grid-template-columns: 1fr 1fr 1fr 1fr ;
	gap:24px;
	list-style: none;
	padding-left:0;
	margin-block-start: 0;

}
#products_container.ghost
{

	pointer-events: none;
}

.product_card
{
	position:relative;
}

@media(max-width:1080px)
{
	#products_container
	{
		grid-template-columns: 1fr 1fr 1fr;
	}
}
@media(max-width:768px)
{
	#products_container
	{
		grid-template-columns: 1fr 1fr;
	}
}
@media(max-width:552px)
{
	#products_container
	{
		grid-template-columns: 1fr;
	}
}
.product_card.splide__slide
{
	background:white;
	padding:24px;
	display:flex;
	flex-direction:column;
	gap:8px;
	border-radius:24px;

}

.product_card.splide__slide .thumbnail
{
	
	max-width:100%;
	margin-bottom:16px;

}

/* Actions superposées en haut à droite de l'image (coup d'oeil + ajout liste). */
.card-thumb-actions
{
	position:absolute;
	top:16px;
	right:16px;
	display:flex;
	gap:4px;
	z-index:1;
	flex-direction:column;
}


.product_card.splide__slide img
{
	
	object-fit: cover;
	width:100%;
	height:100%;
	
}

.product_card.splide__slide .thumbnail img, .product_card.splide__slide .thumbnail svg
{
	
	object-fit: contain;
	max-height:96px;
	
}



.product_card.splide__slide h2
{
	font-size:1em;
	font-weight:400;
	margin-bottom:4px;
	display: -webkit-box;          
  -webkit-box-orient: vertical;   
  -webkit-line-clamp: 3;         
  overflow: hidden;               
  text-overflow: ellipsis; 
	
}




.more-button-container
{
	display:flex;
	justify-content:center;
	padding-top: 32px;
}
#product-details .brand-container
{
	
	padding-bottom:32px!important;
	
}
#product-details .brand-container img
{
	
	max-height:64px;
	
}
 .brand-container img
 {
 	width:auto;
 	height:auto;
 	max-width:100%;
 	max-height:32px;
 	object-fit: contain!important;
 	
 }
.price-container
{
	font-size:14px;
}


 #product-details
 {
 	z-index:14;
 	width:748px;
 	height:100vh;
 
 	position:fixed;
 	top:var(--admin-offset);
 	right:0px;
 	transform:translateX(100%);
 	max-width:calc(100vw - 16px);
 	background:white;
 	transition:transform 0.2s ease-in;

 }


#product-details.active
{
	transform:translateX(0%);
	overflow:auto;
	

}

.product-details-relative
{
	
	position:relative;

}


#product-details-overlay
{
	width:100vw;
	height:100vh;
	position:fixed;
 	top:var(--admin-offset);
 	left:0;
 	z-index:13;
 	background:black;
 	opacity:0.5;
 	max-width:none;
 	transform:translateX(100%);

}

#product-details-overlay.active
{
	
 	transform:translateX(0%);
 	pointer-events: none;


}
#product-details-content
{
	max-width:100%;

	

}

.slide-nav 
{
	
	 padding:24px;
	 display:flex;
	 justify-content:flex-end; 
	 position:sticky;
	 top:0;
	 margin-bottom:-48px;
	 z-index:20;
	 gap:16px;
}

.product-details-container
{
	padding:0 0 64px 0;
	overflow:hidden;

}

.product-details-container .brand-container, .product-details-container .card-content
{
	padding:0 24px;
}

.product-details-container .thumbnail-alone
{
	padding:0 24px;
}

.product-details-container h2
{
	font-size:1.7em;
	font-weight:400;
	margin-top:24px;
	margin-bottom:8px;
}
.product-details-container h3
{
	font-size:1.3em;
	font-weight:400;
	margin-top:16px;
	margin-bottom:8px;
}
.product-details-container p
{
	
	margin-top:0px;
	margin-bottom:0px;
}

.product-details-container .thumbnail
{
	
}
.product-details-container .thumbnail img
{
	width:auto;
	//height:auto;
	max-height:286px!important;

}

.card-text-content
{
	font-size:14px;
	margin-bottom:4px;
	display: -webkit-box;          
  -webkit-box-orient: vertical;   
  -webkit-line-clamp: 4;         
  overflow: hidden;               
  text-overflow: ellipsis; 
  margin-top:12px;
}

.catalogue section ul li .stock
{
	margin-bottom:4px;
}
.stock.onstock
{
	color:green;
	
	font-size:14px;
}

.card-content
{
	display:flex;
	
	flex:1;
	flex-direction:column;
	justify-content:flex-start;

}

.go-product
{

border-radius: 16px;
padding:8px 16px;

background-color: #eb1d24;
border-width: 0;
color: var(--wp--preset--color--white);
font-family: var(--wp--preset--font-family--montserrat);
font-size: 14px;
font-style: normal;
font-weight: 600;
display:flex;
width:auto;
align-self: flex-start;
margin:auto;
align-items:center;
gap:8px;
text-decoration: none;
cursor:pointer;

}

.go-product:hover
{
	
}

/* Les icônes étant passées sur l'image, le CTA occupe toute la largeur. */
.card-actions .go-product
{
	
	justify-content:center;
	margin:0;
}

/* Rangée d'actions de la carte produit : lien « Voir le produit » à gauche,
   icônes (coup d'oeil rapide, ajout à une sélection) groupées à droite. */
.card-actions-icons
{
	display:flex;
	align-items:center;
	gap:8px;
	flex-shrink:0;
}

/* Boutons icônes de la carte (coup d'oeil, ajout à une sélection) : noir du
   design. Classe dédiée plutôt que uk-button-primary, pour ne pas dépendre de
   l'ordre de chargement d'UIKit. */
.uk-icon-button.pmb-icon-dark
{
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	border: 0;
	opacity: 0.85;
	transition: opacity .15s ease;
}
.uk-icon-button.pmb-icon-dark:hover,
.uk-icon-button.pmb-icon-dark:focus
{
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	opacity: 1;
}

.uk-icon-button.pmb-icon-dark:hover
{
	background-color: #eb1d24;
}

.price-suffix
{
	font-size:10px;
}

.nowrap
{
	white-space: nowrap;
}

.stock-price
{
	display:flex;
	gap:16px;
	flex-direction:column;
	line-height:1.5;
	
}

.stock-price a
{
	
	color:#eb1d24!important;
}
.product_card .price-container a
{
	display:none;
}

.stock-price a:hover
{
	color:#eb1d24!important;
	text-decoration: underline!important;
}

#filter-catalogue, #search-catalogue 
{
	display:flex;
	flex-wrap:no-wrap;
	gap:4px;

}

.filters-container
{
	

	width:100%;
	display:flex;
	flex-wrap:nowrap;
	justify-content:space-between;
	gap:4px;
}

.filter-items .filter-inputs ul
{
	margin-top:0;
	margin-bottom:0;
	line-height: 1.8;
	list-style: none;
}

.filter-items details ul
{
	
	padding-left:16px;
	padding-right:0;
	padding-top:0;
	padding-bottom:0;

}
.filter-items details
{
	
	font-weight:600;
	font-size:16px;
	color:black;
	position:relative;
	line-height:1.5;
	padding:4px 8px;
 


}




.filter-items details summary::-webkit-details-marker {
  display:none;
}

.filter-items details summary:after {
position:relative;


content: "";
width: 8px;
aspect-ratio: 1;
display: inline-block;
border-right: 1px solid black;
border-bottom: 1px solid black;
margin-left: 10px;
vertical-align:middle;
transform:translateY(-2px) rotate(45deg) ;
transform-origin:center center;
transition: transform 0.2s ease-in-out;
}

.catalogue-search
{
	
	display:flex;
	justify-content:flex-start;
	padding:16px 24px;
	gap:24px;
	position:sticky;
	top:var(--admin-offset);
	 transition: background-color 0.3s ease;
	 z-index:2;
	 flex-wrap:wrap;
	 max-width:100%;

	 

}


.filter-items details ul li label
{
	font-weight:400;
	font-size:16px;

}
@media(max-width:1180px)
{
	.block.catalogue-search .uk-button .text-container
	{
		font-size:12px;
	}
}
@media(max-width:1080px)
{
	.block.catalogue-search .uk-button .text-container
	{
		font-size:10px;
	}
}

@media(max-width:986px)
{
		.button-hide-mobile
	{
		
		display:none;


	}
	.catalogue-search
	{		
		padding:8px 8px;
	}
}
@media(max-width:722px)
{
	.block.catalogue-search .uk-button 
	{
		padding:0 8px;
	}
}

.filter-items details[open] summary:not(details:not([open]) summary)::after
{
	 transform:translateY(2px)  rotate(225deg)  ; 


}

.filter-items details[open] ul
{
	 border-left:1px solid #f7f7f7;


}

 



.catalogue-search.sticky-active {
  background-color: #f7f7f7; /* Couleur uniquement quand elle est sticky */
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); /* Optionnel pour un effet pro */
}


.input-group {
    margin: 20px 0;
    position: relative;
     pointer-events: none;
}

li.uk-active.active .input-group
{
	pointer-events: auto;
}

.input-group label {
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 15px;
    font-size: 16px;
    pointer-events: none;
    color: rgb(218, 223, 223);
    padding: 0 5px;
    transition: .5s;
}

.input-group input, .input-group select {
    width: 360px;
    height: 60px;
   
    font-size: 16px;
    padding: 0 15px;
    border: 1.2px solid rgb(228, 232, 232);
    background: transparent;
    outline: none;
    border-radius: 5px;
    color:transparent!important;
}



.uk-active:not(.onload) .input-group input:focus~label,
.uk-active:not(.onload) .input-group input:valid~label,
.uk-active:not(.onload) .input-group select:focus~label,
.uk-active:not(.onload) .input-group select:valid~label {
    top: 0;
    background: white;
    font-size: 12px;
}

.input-group input:valid,

.input-group select:valid
{
	color:#333!important;
}

.uk-subnav-pill.drive-switcher
{
	border: 1px solid #eb1d24;
	display:inline-flex;
	border-radius:4px;
	overflow:hidden;
}
.uk-subnav-pill.drive-switcher li
{
	
	padding:0;
}
.uk-subnav-pill.drive-switcher li a
{
	
	padding:8px 18px;
}

.uk-subnav-pill>.uk-active>a
{
	background-color:#eb1d24;
}




li.uk-active.active label
{

	color:black;
}

.uk-button.full
{
	border:1px solid #eb1d24;
	background:white;
	color:#eb1d24;
}

.uk-button.full .full
{
	position:absolute;
	z-index:0;
}

.uk-button:not(.full) .full
{
	display:none;

}

.uk-button.full .unfull
{
	visibility:hidden;

}

.uk-button .full, .uk-button .unfull
{
	text-align:left;
}


.uk-button .text-container
{
	
	 display: grid;
	 position:relative;
	
   
}

.uk-button .text-container .full, .uk-button .text-container .unfull
{
	 grid-column: 1 / -1; /* Prend la première colonne jusqu'à la dernière */
    grid-row: 1 / -1;    /* Prend la première ligne jusqu'à la dernière */
}
.block.catalogue-search .uk-button 
{
	display:flex;
	align-items:center;
	gap:8px;
}

.filter-items.filter-cat .uk-dropdown
{
	width:600px;
}

.uk-dropdown {
    overscroll-behavior: contain!important;
}

.filter-inputs ul
{
	padding-left:0;
}



.number-selected
{
	position:absolute;
	top:9px;
	left:8px;
	background:#eb1d24;
	line-height:1;
	
	display:flex;
	justify-content:center;
	align-items:center;
	color:white;
	border-radius:100%;
	width:auto;
	height:auto;
	width:20px;
	aspect-ratio: 1;
	font-size:12px;
	font-weight:600;
	z-index:1;
	visibility:hidden;
	text-align:center;
	
}

.full .number-selected, .full .refresh
{
	visibility:visible;

}
.refresh
{
	position:absolute;
	top:9px;
	right:8px;
	visibility:hidden;
}
@media(max-width:722px)
{
	.refresh
	{
		
		top:-12px;
		right:-4px;
		background:white;
		padding:4px;
		border-radius:100%;
		
	}
	.number-selected
	{
		font-size:10px;
		width:16px;
		top:-6px;
		left:-4px;

	}

	
}

@media(max-width:522px)
{
	.uk-button .icone-hide-mobile
	{
		display:none;
	}
}


.uk-button
{
	padding:0 38px;
}



#load-more
{
	border-radius: 20px;
	padding-top: 18px;
	padding-right: 20px;
	padding-bottom: 18px;
	padding-left: 20px;
	background:black;
	color:white;
	box-shadow:none!important;
	font-family: var(--wp--preset--font-family--montserrat);
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	cursor:pointer;
	border:0px solid ;
}

#load-more span.spiner, #load-more.onload span.plus
{
	display:none;
	width:20px;
}
#load-more span.spiner svg
{
	height:18px;
}

#load-more.onload span.spiner, #load-more span.plus
{
	display:inline-block;
}

.resut-count, .spiner-container
{
	grid-column: 1 / -1;
	
}

.spiner-container
{
	display:flex;
	justify-content:center;
	padding-bottom:64px;
}

span.spiner
{
	
	color:#eb1d24;
}


.uk-active label span.spiner
{
	display:none;
}

.uk-active.onload label span.spiner
{
	display:inline;
}


.text-container span
{
	white-space:nowrap;
}

.all-text-container
{
	
	overflow:hidden!important;
	max-width:100%;

}


.uk-dropdown.uk-open
{
	padding:24px;
	border-radius:24px;
}

.filter-brand .uk-dropdown li 
{
	white-space:nowrap;
	font-weight: 600;
font-size: 16px;
color: black;
line-height: 1.5;

}

.filter-items .uk-dropdown li input
{
	display:none;
}

.filter-items .uk-dropdown li input
{
	display:none;
}


.filter-items .uk-dropdown li label:before {
   content:"";
    height: 16px;
    width: 16px;
    background-color: white;
    border: 2px solid #ccc;
    border-radius: 50%;
    display: inline-block;
    margin-right: 4px;
    vertical-align: middle;
    transition: background-color 0.2s, border-color 0.2s;
}

.filter-items .uk-dropdown li input:checked+label:before {


border-color: #eb1d24;
 outline: 6px solid #eb1d24;
  outline-offset: -6px;

}

.splide.product-details-galerie
{
	padding-bottom:64px;
}

.product-details-galerie a
{
	
	display:flex;
	justify-content:center;
	cursor:zoom-in;
}

.splide__arrow, .splide__pagination__page, .splide__pagination__page.is-active
{

  background: #eb1d24;
  opacity:1;

}

.splide__arrow svg {

  fill:white;
}

#product-details .uk-close
{
	background:#eb1d24;
	padding:6px;
	border-radius:100%;
	opacity:0.8;
}
#product-details .uk-close:hover
{
	opacity:1;
}

#product-details .uk-close svg
{
	
	color:white;

}

.uk-slidenav, .uk-close-large
{
	background:#eb1d24!important;
	color:white!important;
	border-radius:100%;
	opacity:0.8;
	aspect-ratio: 1;

	
}



.uk-close-large
{
	padding:8px;

}

.uk-slidenav:hover, .uk-close-large:hover
{
	opacity:1;
}

.instructions-content
{
	
	display:flex;
	flex-direction:column;
	gap:24px;
	padding-bottom:24px;
}

.instruction-paragraph
{
	display:flex;
	gap:24px;
}

.instruction-paragraph
{
	display:flex;
	gap:24px;
	align-items:center;
	flex-direction:row;
}

.instruction-paragraph:nth-child(odd)
{

	flex-direction:row-reverse;
}


.instruction-image, .instruction-paragraph p
{
	flex:1;
}

.liv-label
{
	font-size:12px;
}

.text-container.search
{
	min-height:38px;
}

.search-word .uk-dropdown
{
	padding:0 24px;
}

.uk-form-custom {

position: relative;
max-width: 100%;
vertical-align: middle;

}

.search-word .uk-button.submit {
background: #c4191e;
color: white;



}

.uk-button.submit 
{
	font-size:10px;
}


.uk-margin
{
	
	//display:flex;
}


.uk-notification.uk-notification-top-center 
{
	background:white;
	z-index:9999999;
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;

}

.uk-notification.uk-notification-top-center .uk-notification-message
{
	background-color:white;
	font-size:1rem;
	text-align:center;
}

.search-word .input-group input
{
	width:auto;
	height:100%;
	min-width:none!important;
}

@media(max-width:558px)
{
	.instruction-paragraph, .instruction-paragraph:nth-child(odd)
	{
		
		flex-direction:column;
	}
}

@media(max-width:420px)
{
	.catalogue-search
	{
		width:calc(100% + 16px);
		max-width:100vw;
		transform:translateX(-16px);
	}
	.search-word .search-input
	{
		max-width:196px;
	}

}

#product-details-overlay, #product-details
{
	margin-block-start: 0!important;
}



.custom-tooltip-active::before,
.custom-tooltip-active::after {
    display: none !important;
}
