/*
Theme Name: Lyne Mariage
Theme URI: https://www.lyne-mariage.fr/
Template: generatepress
Author: Com Maker
Author URI: https://com-maker.fr/
Description: Alexis Maker est passé par là
Version: 3.6.0.1750681808
Updated: 2025-06-23 12:30:08

*/

div.pum-container {
    max-width: 90vw !important;
}

/*******************************************
* STYLES GLOBAUX 
*******************************************/
mark {
	background-color: var(--noir);
	color: var(--blanc);
}
hr.wp-block-separator {
	border-top-width: 1px;
}
.page-header,.sidebar .widget,.site-main>* {
	margin-bottom: 0px;
}
/* CONTAINER DE LA PAGE */
.grid-container {
	max-width: 100%;
}
.one-container .site-content {
	padding: 0;
}
/* SÉLECTEUR */
::selection {
	background: var(--noir);
	color: var(--blanc);
	fill: var(--blanc);
}
/* FILET */
.after--filet:after {
	content: "";
	display: block;
	width: 50px;
	height: 1px;
	background: var(--noir);
	margin-top: 20px
}
.after--filet.white:after {
	background: var(--blanc);
}
.after--filet.gris:after {
	background: var(--gris);
}
.after--filet.gris-clair:after {
	background: var(--gris-clair);
}
.after--filet.center:after {
	margin-left: auto;
	margin-right: auto;
}
@media screen and (max-width: 768px) {
	.after--filet.mobile-center:after {
		margin-left: auto;
		margin-right: auto;
	}
}
/* BOUTONS | PRIMARY */
.lm-primary-btn, 
button#booking-maker-submit {
	position: relative;
	z-index: 1
}
.lm-primary-btn:before, 
button#booking-maker-submit:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	right: -10px;
	bottom: -10px;
	border: 1px solid black;
	transition: all 200ms linear;
}
.lm-primary-btn:hover:before, 
button#booking-maker-submit:hover:before {
	right: -5px;
	bottom: -5px;
}
/* BOUTONS | RETOUR */
a.go-back-btn {
	align-items: center;
	background-color: var(--noir);
	color: #ffffff;
	display: flex;
	font-family: var(--gp-font--quattrocento);
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
	transition: all 0.3s linear 0s;
	padding: 10px 20px;
}
/* LISTINGS JETENGINE */
.jet-listing-grid--blocks {
	width: 100%;
}
.jet-listing-grid__slider-icon.slick-arrow {
	background: transparent;
	width: auto;
	height: auto;
	line-height: 0;
	color: var(--noir);
}
.catalogue-suggestions-container .jet-listing-grid__slider-icon.slick-arrow {
	color: var(--blanc);
}
.jet-listing-grid__slider-icon.slick-arrow svg {
	height: 50px;
}
.jet-listing-grid__slider-icon.prev-arrow.slick-arrow {
	left: -30px;
}
.jet-listing-grid__slider-icon.next-arrow.slick-arrow {
	right: -30px;
}
.jet-listing-grid__slider-icon.slick-arrow.slick-disabled {
	opacity: 0.3;
	cursor: auto;
}
@media (max-width: 768px) {
	.jet-listing-grid__slider-icon.slick-arrow svg {
		height: 40px;
	}
	.jet-listing-grid__slider-icon.prev-arrow.slick-arrow {
		left: -10px;
	}
	.jet-listing-grid__slider-icon.next-arrow.slick-arrow {
		right: -10px;
	}
}
/* FIL D'ARIANNE */
ol.breadcrumb a {
	text-decoration: none;
}
.wp-block-wpseopress-breadcrumbs {
	width: 100%;
}
@media screen and (max-width: 768px) {
	.wp-block-wpseopress-breadcrumbs {
		text-align: center;
	}
}
/* IFRAME VIDÉO YOUTUBE */
.lm-ytb-video {
	width: 100vw !important;
}
.lm-ytb-video iframe {
	height: auto !important;
	max-height: 700px !important;
	width: 100vw !important;
	aspect-ratio: 16 / 9 !important;
}
/* ANIMATIONS */
.zoom-in {
	transition: all 300ms linear;
}
*:hover > .zoom-in {
	transform: scale(1.03);
}

/*******************************************
* HEADER
*******************************************/
#site-header, #site-header img.custom-logo {
	transition: all 100ms linear;
}
#site-header img.custom-logo {
	height: 50px;
	width: 100%;
	object-fit: contain;
}
@media screen and (max-width: 768px) {
	.gb-element-4abb6144 > * {
		width: 100% !important;
	}
	a.custom-logo-link {
		display: flex;
	}
}
/* EFFET STICKY */
#site-header.is-stuck {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0);
	left: 0;
	right: 0;
	z-index: 9999;
	box-shadow: 0 2px 5px rgba(0,0,0,0.1);
	padding-top: 25px;
	padding-bottom: 25px;
}
#site-header.is-stuck img.custom-logo {
	height: 40px;
}
@media screen and (max-width: 1024px) {
	#site-header.is-stuck {
		padding-top: 0;
		padding-bottom: 0;
	}
	#site-header.is-stuck img.custom-logo {
		height: 40px;
	}
	#site-header.is-stuck .header-cta-rdv-mobile {
		padding: 30px;
	}
}
@media screen and (max-width: 768px) {
	#site-header.is-stuck .header-cta-rdv-mobile {
		padding: 30px 20px;
	}
}
/* MODALE DE RECHERCHE */
.gp-search-modal .gp-modal__overlay {
	padding-top: 0;
	align-items: center;
	background: var(--blanc);
}
div#gp-search {
	width: 100%;
}
.gp-search-modal .gp-modal__overlay:after {
	content: "";
	position: absolute;
	top: calc(var(--wp-admin--admin-bar--height, 0) + 100px);
	right: 100px;
	display: block;
	width: 24px;
	height: 24px;
	background: url(/wp-content/uploads/2025/07/ic-burger-menu-close.svg);
	cursor: pointer;
}
.search-modal-fields {
	border: 1px solid var(--noir);
}
.search-modal-form .search-field, .search-modal-form .search-field:focus {
	height: auto;
	font-size: 24px;
	outline: none;
}
.search-modal-form .search-field::-webkit-search-cancel-button {
	-webkit-appearance: none;
	width: 24px;
	height: 24px;
	background: url(/wp-content/uploads/2025/07/ic-burger-menu-close.svg);
	cursor: pointer;
}
.search-modal-fields button {
	width: auto;
	background: var(--noir);
	transition: all 300ms linear;
}
.search-modal-fields button:hover {
	width: auto;
	background: var(--noir);
	opacity: 0.85;
}
.search-modal-fields button:hover svg {
	transform: rotate(-5deg)
}
.search-modal-fields button svg {
	width: 24px;
	height: 24px;
	fill: var(--blanc);
	transition: all 300ms linear;
}
@media (max-width: 1024px) {
	.gp-search-modal .gp-modal__overlay:after {
		top: calc(var(--wp-admin--admin-bar--height, 0) + 50px);
		right: 50px;
	}
}
@media (max-width: 768px) {
	.gp-search-modal .gp-modal__overlay:after {
		top: calc(var(--wp-admin--admin-bar--height, 0) + 20px);
		right: 20px;
	}
}


/*******************************************
* HEADER | MENU BURGER 
*******************************************/
/* ICONE D'OUVERTURE */
.cmaker-burger-icon {
	width: 30px;
	height: 25px;
	position: relative;
	cursor: pointer;
	display: inline-block;
}
.cmaker-burger-icon span {
	display: block;
	position: absolute;
	height: 3px;
	width: 100%;
	background: var(--noir);
	border-radius: 3px;
	opacity: 1;
	left: 0;
	transform: rotate(0deg);
	transition: .25s ease-in-out;
}
.cmaker-burger-icon span:nth-child(1) {
	top: 0px;
}
.cmaker-burger-icon span:nth-child(2) {
	top: 10px;
}
.cmaker-burger-icon span:nth-child(3) {
	top: 20px;
}
/* MENU BURGER */
.cmaker-burger-menu-content {
	position: fixed;
	top: var(--wp-admin--admin-bar--height, 0);
	left: -100%;
	width: 20%;
	min-width: 400px;
	height: 100vh;
	background: var(--blanc);
	box-shadow: 2px 0 5px rgba(0,0,0,0.1);
	transition: left 0.3s ease-in-out;
	z-index: 10000;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
}
.cmaker-burger-menu-content.active {
	left: 0;
}
/* HEADER DU MENU */
.cmaker-burger-menu-header {
	padding: 20px 50px;
	border-bottom: 1px solid var(--gris-clair);
	display: flex;
	justify-content: flex-start;
	align-items: center;
	height: 70px;
}
.cmaker-burger-close {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 1002;
}
.cmaker-burger-close svg {
	fill: var(--noir);
	width: 24px;
	height: 24px;
}
/* BODY DU MENU */
li.menu-item {
	position: relative;
}
li.menu-item:not(:last-of-type):after {
	content: "";
	display: block;
	width: 30px;
	height: 1px;
	background: var(--noir);
	margin: 10px 0;
}
/* ANIMATION BURGER ACTIF */
.cmaker-burger-icon.active span:nth-child(1) {
	top: 10px;
	transform: rotate(135deg);
}
.cmaker-burger-icon.active span:nth-child(2) {
	opacity: 0;
	left: -60px;
}
.cmaker-burger-icon.active span:nth-child(3) {
	top: 10px;
	transform: rotate(-135deg);
}
/* OVERLAY */
.burger-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s;
	z-index: 9998;
}
.burger-overlay.active {
	opacity: 1;
	visibility: visible;
}
@media screen and (max-width: 1024px) {
	.cmaker-burger-menu-content {
		width: 80%;
	}
}
@media screen and (max-width: 768px) {
	.cmaker-burger-menu-content {
		width: 100%;
		min-width: 0;
	}
}


/*******************************************
* FOOTER
*******************************************/
nav.blog-categories-nav.footer-brands-list {
	justify-content: flex-start;
}
nav.footer-brands-list a.blog-categories-nav--link {
	width: calc(100% / 3 - 20px * 2 / 3);
	padding: 0;
	font-size: 18px;
	text-align: left;
}
@media screen and (max-width:768px) {
	nav.footer-brands-list a.blog-categories-nav--link {
		width: 100%;
		text-align: center;
	}
}


/*******************************************
* WIDGET | BOOKING MAKER
*******************************************/
.booking-maker-container {
	width: 100%;
}
.booking-maker-form-container {
	padding: 0;
	background: none;
	align-items: center;
}
form#booking-maker-form {
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}
form#booking-maker-form input, form#booking-maker-form select {
	text-transform: uppercase;
}
input#booking-maker-mail, input#booking-maker-phone {
	width: calc(100% / 2 - 1rem / 2);
}
input#booking-maker-name, .booking-maker-form-field {
	width: 100%;
}
input#booking-maker-date {
	border-radius: 0;
	border-width: 1px;
	border-color: var(--noir);
	background: transparent;
}
.booking-maker-form-field.rgpd {
	justify-content: center;
}
/* CHECKBOX | MASQUER LA NATIVE */
.booking-maker-form-container input#booking-maker-accept {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}
.booking-maker-form-container input#booking-maker-accept + label::before {
	content: '';
	display: flex;
	width: 1em;
	height: 1em;
	border: 1px solid var(--noir);
	border-radius: 0px;
	margin-right: 0.5em;
	vertical-align: middle;
	background: var(--noir);
	transition: all 0.3s;
}
.booking-maker-form-container input#booking-maker-accept + label {
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 3px;
}
/* CKECKBOX | STYLE QUAND COCHÉE */
.booking-maker-form-container input#booking-maker-accept:checked + label::before {
	background: var(--noir);
	border-color: var(--noir);
}
/* CHECKBOX | AJOUTER UNE COCHE */
.booking-maker-form-container input#booking-maker-accept:checked + label::after {
	content: '✓';
	position: absolute;
	left: 2px;
	color: white;
	font-size: 1em;
}
/* BOUTON DE SOUMISSION */
button#booking-maker-submit {
	align-items: center;
	background-color: var(--noir);
	color: #ffffff;
	display: flex;
	font-family: var(--gp-font--quattrocento);
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
	transition: all 0.3s linear 0s;
	padding: 10px 20px;
}
/* MESSAGE D'ERREUR */
.booking-maker-container > .booking-maker-error-container {
	display: none !important;
}
.booking-maker-error-container {
	width: 100%;
}
/* CALENDRIER */
.flatpickr-calendar.animate.inline, .flatpickr-rContainer, .flatpickr-days {
	width: 100% !important;
}
.dayContainer {
	width: 100%;
	max-width: 100%;
}
span.flatpickr-day {
	width: calc(100% / 7) !important;
	max-width: calc(100% / 7) !important;
}


/*******************************************
* WIDGET | TESTIMONIALS MAKER 
*******************************************/
.testimonial-simple-item {
	display: flex !important;
	background-color: transparent;
	border-radius: 0;
	align-items: center;
	gap: 20px;
	min-height: 0;
	padding: 20px 40px;
}
.testimonial-rating .dashicons-star-filled {
	color: var(--blanc);
}
.testimonial-simple-item .testimonial-message {
	text-align: center;
	color: var(--blanc);
	margin-bottom: 0;
}
.testimonial-simple-item .testimonial-author {
	padding-top: 0;
	order: -1;
}
span.author-avatar {
	display: none;
}
span.author-name {
	color: var(--blanc);
	text-transform: uppercase;
	font-weight: bold;
}
.testimonial-rating {
	margin-bottom: 0;
}
/* SLIDER */
.testimonials-slider .swiper-button-prev,
.testimonials-slider .swiper-button-next {
	color: var(--blanc);
	width: 40px;
	height: 40px;
	background: transparent !important;
	box-shadow: none;
	margin-top: -20px;
}
.testimonials-slider .swiper-button-prev:after, .testimonials-slider .swiper-button-next:after {
	font-size: 40px;
}
.testimonials-slider .swiper-button-prev {
	left: -10px;
}
.testimonials-slider .swiper-button-next {
	right: -10px;
}


/*******************************************
* WIDGET | FLOATING BUTTONS
*******************************************/
.floating-container {
	position: fixed;
	display: flex;
	z-index: 9999;
	gap: 15px;
}
@media (min-width: 769px) {
	.floating-container {
		right: 20px;
		top: 70%;
		transform: translateY(-70%);
		flex-direction: column;
	}
}
@media (max-width: 768px) {
	.floating-container {
		bottom: 20px;
		left: 50%;
		transform: translateX(-50%);
		flex-direction: row;
	}
}
/* BOUTONS FLOTTANTS */
.floating-button {
	width: 50px;
	height: 50px;
	background-color: #000000;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
	transition: all 0.3s ease;
	position: relative;
	border: none;
	text-decoration: none;
}
.floating-button:hover {
	transform: scale(1.05);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
.floating-button svg {
	width: 24px;
	height: 24px;
	fill: #ffffff;
}
/* POPUP DU CONTACT FORM */
.contact-form-container {
	position: absolute;
	background: #ffffff;
	border-radius: 12px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
	padding: 0;
	width: 450px;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	overflow: hidden;
}
.contact-form-container.active {
	opacity: 1;
	visibility: visible;
}
@media (min-width: 769px) {
	.contact-form-container {
		right: 60px;
		top: 50%;
		transform: translateY(-50%);
	}
}
@media (max-width: 768px) {
	.contact-form-container {
		bottom: 60px;
		left: 50%;
		transform: translateX(-50%);
		max-width: 90vw;
	}
}
.contact-form-header {
	background-color: #000000;
	color: #ffffff;
	padding: 15px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 16px;
	font-weight: 500;
}
.contact-form-close {
	background: none;
	border: none;
	color: #ffffff;
	font-size: 24px;
	cursor: pointer;
	padding: 0;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.3s ease;
}
.contact-form-close:hover {
	opacity: 0.7;
}
.contact-form-body {
	padding: 20px;
	background: var(--blanc);
}
/* FORMULAIRE */
form.wpcf7-form {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 20px;
	justify-content: center;
	align-items: center;
}
span[data-name="lm-name"], span[data-name="lm-subject"], span[data-name="lm-message"], span[data-name="lm-rgpd"] {
	width: 100%;
}
span[data-name="lm-email"], span[data-name="lm-phone"] {
	width: calc(100% / 2 - 20px * 1 / 2);
}
form.wpcf7-form input:not([type="submit"], [type="checkbox"]), form.wpcf7-form.init textarea {
	width: 100%;
}
span.wpcf7-not-valid-tip {
	position: absolute;
	bottom: -8px;
	right: -8px;
	font-size: 12px;
	padding: 2px 5px;
	background-color: #dc3232;
	color: var(--blanc);
	border-radius: 5px;
	text-align: center;
}
input.lm-submit {
	background-color: var(--noir) !important;
	color: var(--blanc);
	transition: all 300ms linear;
}
input.lm-submit:hover {
	opacity: 0.85;
}
span.wpcf7-spinner {
	margin: 0;
}
.wpcf7-response-output {
	margin: 0 !important;
	padding: 0px 10px !important;
	border-width: 0px 0px 0px 3px !important;
}
@media (max-width: 768px) {
	span.wpcf7-not-valid-tip {
		font-size: 10px;
	}
}
/* TOOLTIPS DES BOUTONS */
.floating-button::before {
	content: attr(data-tooltip);
	position: absolute;
	background: #000000;
	color: #ffffff;
	padding: 8px 12px;
	border-radius: 6px;
	font-size: 13px;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
}
@media (min-width: 769px) {
	.floating-button::before {
		right: 60px;
		top: 50%;
		transform: translateY(-50%);
	}
}
@media (max-width: 768px) {
	.floating-button::before {
		bottom: 60px;
		left: 50%;
		transform: translateX(-50%);
	}
}
.floating-button:hover::before {
	opacity: 1;
}
/* ANIMATIONS */
@keyframes slideIn {
	from {
		opacity: 0;
		transform: translateX(100px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}
@media (min-width: 769px) {
	.floating-element-wrapper {
		animation: slideIn 0.5s ease-out;
	}
	.floating-element-wrapper:nth-child(2) {
		animation-delay: 0.1s;
	}
	.floating-element-wrapper:nth-child(3) {
		animation-delay: 0.2s;
	}
}


/*******************************************
* BLOG | ARCHIVE
*******************************************/
/* LISTING */
a.blog-item-bloc {
	text-decoration: none;
}
/* PAGINATION */
span.page-numbers.current:after {
	content: "";
	display: block;
	width: 80%;
	height: 80%;
	position: absolute;
	right: -5px;
	bottom: -5px;
	border: 1px solid var(--noir);
	transition: all 200ms linear;
}


/*******************************************
* BLOG | SINGLE
*******************************************/
/* TABLE DES MATIÈRES */
.lwptoc {
	margin: 0 !important;
	width: 100%;
	background: var(--gris-clair);
}
.lwptoc_header {
	margin-bottom: 0 !important;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
.lwptoc_items {
	border-top: 1px solid var(--gris);
	margin-top: 10px;
	padding-top: 10px;
}
/* ASIDE | BOUTONS D'ACCÈS AUX CATÉGORIES */
.blog-categories-wrapper {
	width: 100%;
}
nav.blog-categories-nav {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 20px;
}
a.blog-categories-nav--link {
	text-decoration: none;
	padding: 10px 20px;
	background: var(--noir);
	color: var(--blanc);
	text-align: center;
	transition: all 200ms linear;
}
a.blog-categories-nav--link:hover {
	opacity: 0.85;
}
nav.blog-categories-nav.blog-categories-suggest-container a.blog-categories-nav--link {
	width: 100%;
}
@media (min-width: 769px) and (max-width: 1024px) {
	nav.blog-categories-nav.blog-categories-suggest-container a.blog-categories-nav--link {
		width: calc(100% / 2 - 20px * 1 / 2);
	}
}
select.blog-categories-select {
	width: 100%;
	appearance: none;
	padding: 10px 20px;
	padding-right: 2.5rem;
	background: var(--noir);
	border: 0;
	border-radius: 0;
	color: var(
		--blanc);
	font-weight: bold;
	font-size: 16px;
	outline: none;
}
.blog-categories-select-wrapper {
	position: relative;
}
.blog-categories-select-wrapper::after {
	content: "\203A";
	position: absolute;
	top: 50%;
	right: 1rem;
	transform: translateY(-50%) rotate(90deg);
	pointer-events: none;
	font-size: 26px;
	color: var(--blanc);
}
/* ASIDE | ARTICLES RÉCENTS */
ul.blog-suggested-posts {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 0;
	gap: 10px 20px;
}
ul.blog-suggested-posts li {
	width: 100%;
	display: flex;
	flex-direction: row;
	align-items: center;
	padding: 20px;
	background: var(--noir);
	gap: 10px;
	transition: all 300ms linear;
}
ul.blog-suggested-posts li:hover {
	opacity: 0.85;
}
ul.blog-suggested-posts li .wp-block-latest-posts__featured-image {
	margin: 0;
	width: 28%;
}
ul.blog-suggested-posts li .wp-block-latest-posts__featured-image a {
	display: flex;
}
ul.blog-suggested-posts li .wp-block-latest-posts__featured-image img {
	aspect-ratio: 4/3;
	object-fit: cover;
}
ul.blog-suggested-posts li a.wp-block-latest-posts__post-title {
	width: 72%;
	color: var(--blanc);
	text-decoration: none;
}
@media (min-width: 769px) and (max-width: 1024px) {
	ul.blog-suggested-posts li {
		width: calc(100% / 2 - 20px * 1 / 2);
	}
}
/* ASIDE | BOUTONS DE PARTAGE */
.esb-wrapper {
	margin: 0;
}
button.esb-button {
	border-radius: 0;
}
@media (max-width: 768px) {
	.esb-container {
		width: 100%;
		flex-direction: column;
		justify-content: stretch;
		align-items: stretch;
	}
}
@media (min-width: 1025px) {
	.esb-container {
		width: 100%;
		flex-direction: column;
		justify-content: stretch;
		align-items: stretch;
	}
}


/*******************************************
* PAGE | CONTACT
*******************************************/
.contact-container-with-img {
	background-size: 40% !important;
}
@media (max-width: 1660px) {
	.contact-container-with-img {
		background-position-x: -10% !important;
	}
}
@media (max-width: 1520px) {
	.contact-container-with-img {
		background-size: 50% !important;
		background-position-x: -30% !important;
	}
}
@media (max-width: 1230px) {
	.contact-container-with-img {
		background-size: 65% !important;
		background-position-x: -90% !important;
	}
}
@media (max-width: 1024px) {
	.contact-container-with-img {
		background: none !important;
	}
}


/*******************************************
* PAGE | SOLDES & VENTES PRIVÉES
*******************************************/
.rating-widget {
	display: flex;
	justify-content: center;
	width: 100%;
	margin-bottom: 50px;
}
.rating {
	display:inline-flex;
	align-items:center;
	gap: 10px;
}
.rating-agg strong {
	font-weight:700
}
.rating-agg .count {
	opacity:.9
}
/* Texte */
span.rating-agg {
	font-size: 28px;
	line-height: 1;
}
/* Etoiles */
.stars{
	--size: 28px;
	--gap: 4px;
	--rating: 0;
	--star: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1920 1920'><path d='M1915.918 737.475c-10.955-33.543-42.014-56.131-77.364-56.131h-612.029l-189.063-582.1v-.112C1026.394 65.588 995.335 43 959.984 43c-35.237 0-66.41 22.588-77.365 56.245L693.443 681.344H81.415c-35.35 0-66.41 22.588-77.365 56.131-10.955 33.544.79 70.137 29.478 91.03l495.247 359.831-189.177 582.212c-10.955 33.657 1.13 70.25 29.817 90.918 14.23 10.278 30.946 15.487 47.66 15.487 16.716 0 33.432-5.21 47.775-15.6l495.134-359.718 495.021 359.718c28.574 20.781 67.087 20.781 95.662.113 28.687-20.668 40.658-57.261 29.703-91.03l-189.176-582.1 495.36-359.83c28.574-20.894 40.433-57.487 29.364-91.03'/></svg>");
	display:inline-flex;
	align-items:center;
	gap:var(--gap);
	white-space:nowrap;
	line-height:1;
	direction:ltr;
}
.star{
	position:relative;
	width:var(--size);
	height:var(--size);
	background:rgba(0,0,0,.35);
	-webkit-mask-image: var(--star);
	mask-image: var(--star);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: var(--size) var(--size);
	mask-size: var(--size) var(--size);
	-webkit-mask-position: center;
	mask-position: center;
}
/* Couche de remplissage : même masque, ANCRÉ À GAUCHE, largeur rognée */
.star::after{
	content:"";
	position:absolute;
	top:0; 
	bottom:0; 
	left:0;
	background:#000;
	overflow:hidden;
	-webkit-mask-image: var(--star);
	mask-image: var(--star);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: var(--size) var(--size);
	mask-size: var(--size) var(--size);
	-webkit-mask-position: left center;
	mask-position: left center;
	width:0;
}
/* Fraction par étoile (0→100% du fond) */
.stars .star:nth-child(1)::after{ 
	width: calc(clamp(var(--rating) - 0, 0, 1) * 100%); 
}
.stars .star:nth-child(2)::after{ 
	width: calc(clamp(var(--rating) - 1, 0, 1) * 100%); 
}
.stars .star:nth-child(3)::after{ 
	width: calc(clamp(var(--rating) - 2, 0, 1) * 100%); 
}
.stars .star:nth-child(4)::after{ 
	width: calc(clamp(var(--rating) - 3, 0, 1) * 100%); 
}
.stars .star:nth-child(5)::after{ 
	width: calc(clamp(var(--rating) - 4, 0, 1) * 100%); 
}
@media (max-width: 1024px) {
	.rating-widget {
		margin-bottom: 40px;
	}
}
@media (max-width: 768px) {
	.rating-widget {
		margin-bottom: 30px;
	}
}


/*******************************************
* ARCHIVES | CATÉGORIES CATALOGUE
*******************************************/
/* FORMULAIRE DE RECHERCHE */
.search-form-catalogue-archive .wp-block-search__inside-wrapper {
	border: 1px solid var(--noir);
	padding: 0;
}
.search-form-catalogue-archive button.wp-block-search__button {
	margin: 0;
	width: auto;
	background: var(--noir);
	transition: all 300ms linear;
	padding: 10px;
}
.search-form-catalogue-archive .wp-block-search__input {
	border: 0;
}
.search-form-catalogue-archive button.wp-block-search__button svg {
	width: 34px;
	height: 34px;
	transition: all 300ms linear;
	transform: rotate(-90deg);
}
.search-form-catalogue-archive:hover button.wp-block-search__button {
	opacity: 0.85;
}
.search-form-catalogue-archive:hover button.wp-block-search__button svg {
	transform: rotate(-95deg);
}
/* LISTE DES MARQUES */
.catalogue-marques-liste a {
	width: 100%;
	text-transform: uppercase;
}
/* LISTING */
.listing-catalogue-archive .jet-listing-grid__item {
	padding: 0px 10px 40px 10px;
}
/* PAGINATION */
.jet-smart-filters-pagination, .jet-filters-pagination {
	width: 100%;
}
.jet-filters-pagination {
	margin: 0;
	justify-content: center;
}
.jet-filters-pagination__link {
	display: inline-flex ;
	text-decoration: none;
	line-height: 1;
	font-size: 16px;
	transition: all 0.3s ease 0s;
	padding: 1rem !important;
}
.jet-filters-pagination__item.jet-filters-pagination__current .jet-filters-pagination__link, .jet-filters-pagination__item:not(.prev-next):hover .jet-filters-pagination__link {
	background-color: var(--noir);
	color: var(--blanc);
	position: relative;   
}
.jet-filters-pagination__item.jet-filters-pagination__current .jet-filters-pagination__link:after {
	content: "";
	display: block;
	width: 80%;
	height: 80%;
	position: absolute;
	right: -5px;
	bottom: -5px;
	border: 1px solid var(--noir);
	transition: all 200ms linear;
}


/*******************************************
* CATALOGUE | SINGLE
*******************************************/
/* GALERIE */
span.jet-product-gallery-icon {
	padding: 10px;
}
.jet-product-gallery-icon svg {
	width: 24px !important;
	height: 24px !important;
	fill: var(--noir) !important;
}
.jet-gallery-swiper-slider .jet-woo-product-gallery__image-item {
	width: 100% !important;
}
.jet-woo-product-gallery__image-item img {
	aspect-ratio: 1;
	object-fit: cover;
}
.jet-woo-swiper-control-thumbs__item img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
}
.jet-woo-swiper-control-thumbs__item.swiper-slide {
	width: calc(100% / 4) !important;
}


/*******************************************
* LISTING | CATALOGUE
*******************************************/
a.listing-catalogue-item-container {
	text-decoration: none;
}
.listing-catalogue-item-decoration {
	transition: all 300ms linear;
}
.listing-catalogue-item:hover .listing-catalogue-item-decoration {
	top: -5px;
	left: 5px;
}


/*******************************************
* LISTING | EVENTS HOME
*******************************************/
.listing-events-home .jet-listing-grid__items {
	display: flex;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	margin: 0;
	width: 100%;
	gap: 40px;
}
.listing-events-home .jet-listing-grid__items .jet-listing-grid__item {
	padding: 0;
}
@media screen and (min-width: 769px) {
	.listing-events-home .jet-listing-grid__items .jet-listing-grid__item:first-of-type {
		width: 100%;
	}
	.listing-events-home .jet-listing-grid__items .jet-listing-grid__item {
		flex: unset;
		max-width: unset;
		width: calc(100% / 2 - 40px * 1 / 2);
	}
	.listing-events-home .jet-listing-grid__items .jet-listing-grid__item:first-of-type .listing-events-home-item-container {
		flex-direction: row;
	}
	.listing-events-home .jet-listing-grid__items .jet-listing-grid__item:first-of-type .listing-events-home-item-container img {
		width: 60%;
	}
	.listing-events-home .jet-listing-grid__items .jet-listing-grid__item:first-of-type .listing-events-home-item-container div {
		width: 40%;
		align-content: center;
	}
}
@media (min-width: 769px) and (max-width: 1024px) {
	.listing-events-home .jet-listing-grid__items .jet-listing-grid__item {
		width: calc(100% / 2 - 20px * 1 / 2);
	}
}
@media screen and (max-width: 1024px) {
	.listing-events-home .jet-listing-grid__items {
		gap: 20px;
	}
}


/*******************************************
* LISTING | BLOG
*******************************************/
.blog-listing-img img {
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

/*******************************************
* LISTING | PARTENAIRES
*******************************************/
.partner-item {
	position: relative;
}
.partner-link-container, .partner-link-container * {
	width: 100%;
	height: 100%;
	display: flex;
}
.partner-link-container {
	position: absolute;
	left: 0;
	top: 0;
}
.partner-img-container {
	padding: 0 10px;
}
.partner-img-container img {
	max-height: 80px;
	max-width: 100%;
	width: auto;
}
@media screen and (max-width: 768px) {
	.partner-img-container img {
		max-height: 60px;
	}
}

/*******************************************
* LISTING | MARQUES
*******************************************/
.brand-image img {
	max-height: 80px;
}
@media screen and (max-width: 768px) {
	.brand-image img {
		max-height: 60px;
	}
}


/*******************************************
* LISTING | CATÉGORIES DU CATALOGUE
*******************************************/
.item-categorie-catalogue-container:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(0deg,rgba(0,0,0,0.6) 0%,rgba(255,255,255,0) 100%);
}