/* Liste FAQ toggle - Comète Elementor (jQuery animation) */
.comete-faq-list {
	--comete-faq-gap: 0.5rem;
}


.comete-child-pages-grid__item--line .comete-child-pages-grid__icon {
    width: 40px!important;
    height: 40px!important;
	padding-right: 10px!important;
}
.comete-child-pages-grid__item--line{
	display: flex;
    flex-direction: row!important;
}
.comete-child-pages-grid__item--line a{
    width: 100%;
}

.comete-child-pages-grid__item--line .comete-child-pages-grid__arrow{
	transform:scale(0.8);
}

.comete-faq-list__items {
	display: flex;
	flex-direction: column;
	gap: var(--comete-faq-gap);
}
.elementor-widget-comete_child_pages_grid_line .comete-child-pages-grid__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.5rem;
}




/* Item = bloc toggle */
.comete-faq-item {
	border: none;
	border-bottom: 2px solid #CBC9B8;
	border-radius: 0;
}

.comete-faq-item:last-child {
	border-bottom: none;
}

/* Clic pour ouvrir/fermer */
.comete-faq-item__summary {
	display: block;
	width: 100%;
	list-style: none;
	cursor: pointer;
	padding: 1rem 1.25rem;
	padding-right: 3.5rem;
	position: relative;
	user-select: none;
	text-align: left;
	background: none;
	border: none;
	font: inherit;
	color: inherit;
}

.comete-faq-item__summary::after {
	content: "";
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
	width: 37px;
	height: 37px;
	background-image: var(--comete-faq-arrow-url);
	background-size: 37px 37px;
	background-repeat: no-repeat;
	background-position: center;
	transition: transform 0.25s ease;
}

.comete-faq-item.is-open .comete-faq-item__summary::after {
	transform: translateY(-50%) rotate(180deg);
}

.comete-faq-item__summary .comete-faq-item__question {
	margin: 0;
	padding: 0;
	font-weight: 600;
	display: inline;
}

/* Réponse masquée par défaut, affichée par jQuery slideToggle */
.comete-faq-item__answer {
	display: none;
	padding: 0 1.25rem 1rem;
	line-height: 1.5;
}

.comete-faq-item__answer p:first-child {
	margin-top: 0;
}

.comete-faq-item__answer p:last-child {
	margin-bottom: 0;
}

.comete-faq-list__empty {
	margin: 0;
	opacity: 0.8;
}

/* --------------------------------------------------------------
 * Slider de sous-pages
 * -------------------------------------------------------------- */

.comete-child-pages-slider {
	position: relative;
}

.comete-child-pages-slider__viewport {
	overflow: hidden;
}

.comete-child-pages-slider__track {
	display: flex;
	transition: transform 0.45s ease;
	will-change: transform;
}

.comete-child-pages-slider__item {
	flex: 0 0 auto;
	box-sizing: border-box;
	padding: 0.5rem;
}

.comete-child-pages-slider__link {
	position: relative;
	display: block;
	border-radius: 18px;
	overflow: hidden;
	min-height: 225px!important;
	color: inherit;
	text-decoration: none;
}
.comete-child-pages-grid__item .comete-child-pages-slider__link {
	position: relative;
	display: block;
	border-radius: 18px;
	overflow: hidden;
	min-height: auto!important;
	color: inherit;
	text-decoration: none;
}
.comete-child-pages-slider__bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
}

.comete-child-pages-slider__overlay {
	position: absolute;
	inset: 0;
}

.comete-child-pages-slider--overlay-green .comete-child-pages-slider__overlay {
	background-color: rgba(105, 116, 82, 0.8); /* #697452 @ 0.8 */
}

.comete-child-pages-slider--overlay-terracotta .comete-child-pages-slider__overlay {
	background-color: #882B1A; /* #B44F33 @ 0.8 */
}

.comete-child-pages-slider__inner {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	min-height: 225px!important;
	padding: 1.5rem 1.5rem;
}
.comete-child-pages-grid__item .comete-child-pages-slider__inner {
	min-height: 100%!important;
}
.comete-child-pages-slider__title {
	margin: 0;
	font-size: 28px;
	line-height: 1.25;
	color: #F0E6C3;
	z-index:9;
}

.comete-child-pages-slider__plus {
	position: absolute;
	right: 27px;
	bottom: 27px;
	width: 60px;
	height: 60px;
	background-image: var(--comete-slider-plus-url);
	background-repeat: no-repeat;
	background-position: top;
	transition: all 0.3s ease;
}

.comete-child-pages-slider__link:hover .comete-child-pages-slider__plus,
.comete-child-pages-slider__link:focus-visible .comete-child-pages-slider__plus {
	transform: scale(1.2);
	transition: all 0.3s ease;
}

.comete-child-pages-slider__next {
	position: absolute;
	top: 50%;
	right: -45px;
	transform: translateY(-50%);
	width: 54px;
	height: 54px;
	border-radius: 50%;
	border: none;
	background: none;
	padding: 0;
	cursor: pointer;
}

.comete-child-pages-slider__next-icon {
	display: block;
	width: 54px;
	height: 54px;
	background-image: var(--comete-slider-arrow-url);
	background-repeat: no-repeat;
	background-position: center;
}

.comete-child-pages-slider__empty {
	margin: 0;
}

.comete-child-pages-slider--static .comete-child-pages-slider__next {
	display: none;
}

@media (max-width: 999.98px) {
	.comete-child-pages-slider__next {
		right: 0;
	}
}

/* --------------------------------------------------------------
 * Grille de sous-pages (même design que le slider)
 * -------------------------------------------------------------- */

.comete-child-pages-grid__list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.5rem;
}

@media (max-width: 1399.98px) {
	.comete-child-pages-grid__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 999.98px) {
	.comete-child-pages-grid__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.comete-child-pages-grid__list {
		grid-template-columns: 1fr;
	}
}

/* Layout spécifique pour les items de la grille
 * (ne modifie pas le slider). */

.comete-child-pages-grid__inner {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.comete-child-pages-grid__item .comete-child-pages-grid__icon {
	align-self: flex-start;
	width: 60px;
	height: 60px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.comete-child-pages-grid__icon--empty {
	opacity: 0;
}

.comete-child-pages-grid__item .comete-child-pages-grid__icon img {
	max-width: 100%;
	max-height: 100%;
	display: block;
	object-fit: contain;
}

.comete-child-pages-grid__bottom {
	display: flex;
    align-content: center;
    align-items: center;
	justify-content: space-between;
}

.comete-child-pages-grid__title {
	margin: 0;
	margin-top:10px;
	font-size: 20px;
	line-height: 1.2;
	width: calc(100% - 50px);
	display: inline-block;
	color:#F5EDE4;
}

.comete-child-pages-grid__plus {
	width: 40px;
	height: 40px;
	display: inline-block;
}

.comete-child-pages-grid__plus img {
	width: 40px;
	height: 40px;
}

.comete-child-pages-slider__link:hover .comete-child-pages-grid__plus,
.comete-child-pages-slider__link:focus-visible .comete-child-pages-grid__plus {
	transform: scale(1.1);
	transition: all 0.2s ease;
}

.comete-child-pages-slider__link .comete-child-pages-grid__plus,
.comete-child-pages-slider__link .comete-child-pages-grid__plus {
	transition: all 0.2s ease;
}

/* Variante "ligne" : picto + titre + flèche sur une seule ligne */
.comete-child-pages-grid__item--line .comete-child-pages-slider__inner.comete-child-pages-grid__inner--line {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	min-height: auto !important;
}

.comete-child-pages-grid__icon--line {
	flex: 0 0 auto;
	align-self: center;
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.comete-child-pages-grid__title--line {
	margin-top: 0;
	flex: 1 1 auto;
	width: auto;
}

.comete-child-pages-grid__arrow {
	flex: 0 0 auto;
	width: 32px;
	height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.comete-child-pages-grid__arrow img {
	width: 100%;
	height: 100%;
	display: block;
}

.comete-child-pages-slider__link:hover .comete-child-pages-grid__arrow,
.comete-child-pages-slider__link:focus-visible .comete-child-pages-grid__arrow {
	transform: scale(1.1);
	transition: all 0.2s ease;
}
/* --------------------------------------------------------------
 * Étapes (colonnes + accordéon mobile)
 * -------------------------------------------------------------- */

.comete-steps__desktop {
	display: block;
}

.comete-steps__mobile {
	display: none;
}

.comete-steps__desktop-layout {
	display: block;
}
.comete-steps__desktop-panel-inner {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	height: 100%;
	text-align: left;
	gap: 0.75rem;
	width: min(70ch, 100%);
	margin-left: auto;
	margin-right: auto;
}

.comete-steps__desktop-panel-inner,
.comete-steps__desktop-panel-inner p {
	line-height: 24px;
	font-size: 18px;
}

.comete-steps__desktop-panel-inner p {
	margin: 0;
}

/* Le contenu venant du WYSIWYG contient souvent des listes : on centre le bloc
   mais on garde les puces lisibles (alignées à gauche). */
.comete-steps__desktop-panel-inner ul,
.comete-steps__desktop-panel-inner ol {
	margin: 0;
	padding-left: 1.25em;
	text-align: left;
}
.comete-steps__desktop-titles {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	margin-bottom: 1.5rem;
}

.comete-steps__desktop-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	border: none;
	background: none;
	font: inherit;
	text-align: left;
	cursor: pointer;
	transition: all 0.2s ease;
	padding: 5px 25px;
	border-bottom: 1px solid #697452;
}

.comete-steps__desktop-title--active{
	border-bottom: 1px solid #B44F33;
}


.comete-steps__desktop-title-arrow {
	margin-left: 0.25rem;
}



.comete-steps__desktop-panels {
	display: block;
}

.comete-steps__desktop-panel {
	border:1px solid #b44f33;
	border-radius: 16px;
	padding: 1rem 1.25rem;
	margin: 0;
	display: block;
}

.comete-steps__desktop-panel + .comete-steps__desktop-panel {
	margin-top: 1rem;
}

.comete-steps--js .comete-steps__desktop-layout {
	display: flex;
}

.comete-steps--js .comete-steps__desktop-titles {
	flex: 0 0 47%;
	margin-right: 5%;
	margin-bottom: 0;
}

.comete-steps--js .comete-steps__desktop-panels {
	flex: 0 0 48%;
	display: flex;
}

.comete-steps--js .comete-steps__desktop-panel {
	flex: 1 1 auto;
	display: flex;
}

.comete-steps--js .comete-steps__desktop-panel + .comete-steps__desktop-panel {
	margin-top: 0;
}
.comete-steps--js .comete-steps__desktop-panel {
	min-height:100%;
}
.comete-steps--js .comete-steps__desktop-panel {
	display: none;
}

.comete-steps--js .comete-steps__desktop-panel--active {
	display: flex;
}

.comete-steps__mobile-item {
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.comete-steps__mobile-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 0.75rem 0;
	border: none;
	background: none;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.comete-steps__mobile-title-text {
	font-weight: 600;
}

.comete-steps__mobile-title-arrow {
	margin-left: 0.5rem;
}

.comete-steps__mobile-content {
	padding-bottom: 0.75rem;
}

.comete-steps--js .comete-steps__mobile-content {
	display: none;
}

/* En mobile, on n'affiche que la version accordéon */
@media (max-width: 767.98px) {
	.comete-steps__desktop {
		display: none;
	}

	.comete-steps__mobile {
		display: block;
	}
}

/* --------------------------------------------------------------
 * Accordéon flexible
 * -------------------------------------------------------------- */

.comete-flex-accordion {
	margin: 1.5rem 0;
}

.comete-flex-accordion__heading {
	margin-bottom: 1rem;
}

.comete-flex-accordion__item {
	border-top: 1px solid #CBC9B8;
}

.comete-flex-accordion__item:last-child {
	border-bottom: 1px solid #CBC9B8;
}

.comete-flex-accordion__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 0.75rem 0;
	border: none;
	background: none;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.comete-flex-accordion__header-icon {
	margin-right: 0.75rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.comete-flex-accordion__header-icon img {
	max-width: 32px;
	max-height: 32px;
	object-fit: contain;
	display: block;
}

.comete-flex-accordion__header-title {
	flex: 1 1 auto;
	margin: 0;
}

.comete-flex-accordion__header-plus {
	flex: 0 0 auto;
	width: 37px;
	height: 37px;
	background-image: var(--comete-faq-arrow-url);
	background-size: 37px 37px;
	background-repeat: no-repeat;
	background-position: center;
	transition: transform 0.2s ease;
}

.comete-flex-accordion__item--open .comete-flex-accordion__header-plus {
	transform: rotate(180deg);
}

.comete-flex-accordion__panel {
	padding-bottom: 0.75rem;
}

.comete-flex-accordion__panel-inner {
	padding-bottom: 0.5rem;
}

/* --------------------------------------------------------------
 * Liste CTA (titre + texte + bouton)
 * -------------------------------------------------------------- */
.comete-cta-list__heading {
	margin-bottom: 1.25rem;
}

.comete-cta-list__items {
	display: grid;
	gap: 4rem;
	align-items: start;
}

.comete-cta-list--cols-1 .comete-cta-list__items {
	grid-template-columns: 1fr;
}

.comete-cta-list--cols-2 .comete-cta-list__items {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.comete-cta-list--cols-3 .comete-cta-list__items {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.comete-cta-list--cols-4 .comete-cta-list__items {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.comete-cta-list__col {
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.comete-cta-list--cols-2 .comete-cta-list__item{
	max-width:635px;
}
/* Responsive des colonnes
 * - 2 colonnes -> 1 colonne sous 1024px
 * - 3 colonnes -> 1 colonne sous 1300px
 * - 4 colonnes -> 2 colonnes sous 1300px, 1 colonne sous 1024px
 */

/* 4 colonnes : passe à 2 colonnes sous 1300px */
@media (max-width: 1300px) {
	.comete-cta-list--cols-4 .comete-cta-list__items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* 2 colonnes & 4 colonnes & 3 colonnes : 1 colonne sous 1024px */
@media (max-width: 1024px) {
	.comete-cta-list--cols-2 .comete-cta-list__items,
	.comete-cta-list--cols-3 .comete-cta-list__items,
	.comete-cta-list--cols-4 .comete-cta-list__items {
		grid-template-columns: 1fr;
	}
	comete-cta-list__item{
		max-width:100%;
	}
}

.comete-cta-list__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	gap: 0.75rem;
	border: none;
	background: none;
	padding: 0;
	margin: 0 0 0.4rem;
	text-align: left;
	font: inherit;
	cursor: pointer;
}

.comete-cta-list__title {
	margin: 0;
	flex: 1;
	min-width: 0;
}

.comete-cta-list__icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.comete-cta-list__plus {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.125rem;
	height: 1.125rem;
}

.comete-cta-list__plus svg{
	display:block;
	width:100%;
	height:100%;
}

.comete-cta-list__panel-inner {
	padding-bottom: 0.5rem;
}

.comete-cta-list__text {
	margin: 0 0 0.8rem;
}

.comete-cta-list__button .elementor-button {
	text-decoration: none;
	background-color: #B44F33;
	border-radius: 500px;
}

.comete-cta-list__button .elementor-button-content-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
}

.comete-cta-list__button .elementor-button-icon {
	order: 1;
}

/* --------------------------------------------------------------
 * Grille d'actualités (news grid) + bandeau catégories
 * -------------------------------------------------------------- */

.comete-category-hero {
	padding: 70px 1.5rem 50px;
	background-color: #050a18;
	/* Pleine largeur à l’intérieur de .wf-wrap sans toucher au thème */
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	width: 100vw;
}

.comete-category-hero__inner {
	max-width: 1100px;
	margin: 0 auto;
	text-align: center;
}

.comete-category-hero__breadcrumb {
	font-size: 14px;
	margin-bottom: 0.75rem;
}

.comete-category-hero__breadcrumb a, .comete-category-hero__breadcrumb span {
	color: #B98E64;
	font-family: "Funnel sans", Sans-serif;
	text-decoration: none;
}

.comete-category-hero__breadcrumb a:hover,
.comete-category-hero__breadcrumb a:focus-visible {
	text-decoration: underline;
}

.comete-category-hero__title {
	margin: 0;
	/* Reprise du style des H1 Elementor (page Actualités) */
	font-family: "Funnel sans", Sans-serif;
	font-size: 54px;
	font-weight: 400;
	line-height: 1.1em;
	color: #f5ede4;
}


.comete-category-intro__inner {
	margin: 0 auto;
	margin-top:25px;
	font-size: 16px;
	line-height: 1.6;
	color: #050a18;
}

.comete-news-grid {
	font-family: inherit;
	color: inherit;
	padding: 2rem 1.5rem;
}

.comete-news-grid__filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 1.5rem;
    justify-content: center;
}

.comete-news-grid__filter {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.4rem 1.2rem;
	border-radius: 999px;
	border: 1px solid #B44F33;
	text-decoration: none;
	color: #050a18;
	background-color: transparent;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.comete-news-grid__filter:hover,
.comete-news-grid__filter:focus-visible {
	background-color: #B44F33;
	color: #fff;
	border-color: #B44F33;
	outline: none;
}

.comete-news-grid__filter--active {
	background-color: #B44F33;
	border-color: #B44F33;
	color: #fff;
}

.comete-news-grid__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
	align-items: stretch;
}

@media (max-width: 900px) {
	.comete-news-grid__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.comete-news-grid__list {
		grid-template-columns: 1fr;
	}
}

.comete-news-grid__item {
	margin: 0;
	list-style: none;
	display: flex;
	height: 100%;
}

.comete-news-grid__item[role="link"],
.comete-news-grid__card {
	cursor: pointer;
}
.archive.category #main{
	padding: 0;
}
.tax-fiche_metier_cat #main,
.tax-fiche_conseil_cat #main{
	padding: 0;
}

/* Aligner la largeur des grilles "fiches" sur la page Elementor (≈1380px) */
/* Le thème contraint souvent le contenu à ~1152px. On "sort" le wrapper en 100vw, puis on centre le contenu à 1380px. */
.tax-fiche_metier_cat .comete-news-grid-archive.comete-fiches-metiers-archive,
.tax-fiche_conseil_cat .comete-news-grid-archive.comete-fiches-conseils-archive{
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	width: 100vw;
}

.tax-fiche_metier_cat .comete-news-grid-archive.comete-fiches-metiers-archive .comete-news-grid,
.tax-fiche_conseil_cat .comete-news-grid-archive.comete-fiches-conseils-archive .comete-news-grid{
	max-width: 1380px;
	margin-left: auto;
	margin-right: auto;
}
.comete-news-grid__link,
.comete-news-grid__card {
	position: relative;
	display: block;
	height: 100%;
	text-decoration: none;
	color: inherit;
	border-radius: 0.75rem;
	overflow: hidden;
	background-color: #050a18;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.comete-news-grid__card {
	flex: 1;
	min-height: clamp(320px, 28vw, 460px);
}

.comete-news-grid__media {
	position: relative;
	overflow: hidden;
}

.comete-news-grid__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: brightness(0.7);
	transition: transform 0.3s ease, filter 0.3s ease;
}

.comete-news-grid__link:hover .comete-news-grid__image,
.comete-news-grid__link:focus-visible .comete-news-grid__image,
.comete-news-grid__item:hover .comete-news-grid__image,
.comete-news-grid__item:focus-visible .comete-news-grid__image {
	transform: scale(1.03);
	filter: brightness(0.8);
}

.comete-news-grid__body {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 1.4rem 1.6rem;
	display: flex;
	flex-direction: column;
	gap: 0rem;
	color: #fff;
	z-index: 2;
}
.comete-news-grid__body time{
	font-size: 12px;
    line-height: 14px;
}
.comete-news-grid__link::before,
.comete-news-grid__card::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(
		to top,
		rgba(0, 0, 0, 0.8) 0%,
		rgba(0, 0, 0, 0.25) 45%,
		rgba(0, 0, 0, 0.05) 100%
	);
	z-index: 1;
}

.comete-news-grid__title-link {
	color: inherit;
	text-decoration: none;
}

.comete-news-grid__title-link:hover,
.comete-news-grid__title-link:focus-visible {
	text-decoration: none;
	color: #f5ede4;
}

.comete-news-grid__title {
	font-size: 22px;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1.1em!important;
    color: #f5ede4;
}

.comete-news-grid__excerpt {
	margin: 0.25rem 0 0.4rem;
	font-size: 0.9rem;
	line-height:1em;
	color: #f5f5f5;
}

.comete-news-grid__read-more {
	margin-top: 0.4rem;
    font-family: "Funnel sans", Sans-serif;
    font-size: 16px;
    text-transform: uppercase;
    line-height: 1.6em;
    color: #f0e6c3;
    letter-spacing: 0.08em;
    display: inline-flex;
    align-items: center;
    gap: 0.25em;
}
.comete-news-grid__read-more::after {
    content: ">";
}
.comete-news-grid__pagination {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-top: 2rem;
}

.comete-news-grid__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	height: 2rem;
	padding: 0 0.4rem;
	border-radius: 999px;
	font-size: 0.9rem;
	text-decoration: none;
	color: inherit;
	border: 1px solid transparent;
	border-color: #B44F33;
}
.comete-news-grid__pagination .prev.page-numbers,
.comete-news-grid__pagination .next.page-numbers {
	border-color: transparent;
}
.comete-news-grid__pagination .page-numbers.current {
	background-color: #B44F33;
	color: #fff;
}

.comete-news-grid__pagination .page-numbers:not(.current):hover,
.comete-news-grid__pagination .page-numbers:not(.current):focus-visible {
	background-color: #B44F33;
	color: #fff;
	outline: none;
}

.comete-news-grid__empty {
	grid-column: 1 / -1;
	text-align: center;
	color: #050a18;
}

/* --------------------------------------------------------------
 * Grille fiches conseils (variant simplifié, sans image ni extrait)
 * -------------------------------------------------------------- */



.comete-fiches-grid__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}

@media (max-width: 900px) {
	.comete-fiches-grid__list {
		grid-template-columns: 1fr;
	}
}

/* Dernières fiches conseils : colonnes dynamiques selon le nombre d'éléments */
.comete-last-fiches-grid__list {
	grid-template-columns: repeat(var(--comete-last-count, 2), minmax(0, 1fr));
}

@media (max-width: 900px) {
	.comete-last-fiches-grid__list {
		grid-template-columns: 1fr;
	}
}

.comete-fiches-grid__item {
	margin: 0;
	list-style: none;
}

.comete-fiches-grid__link {
	display: flex;
	align-items: end;
	justify-content: space-between;
	text-decoration: none;
	color: #f5ede4;
	background-color: #b44f33;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
	overflow: hidden;
	border-radius: 16px;
	padding: 1.75rem 1.5rem;
	padding-top: 80px;
	min-height: 490px;
}

.comete-fiches-grid__link::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(5, 10, 24, 0.72) 0%, rgba(5, 10, 24, 0.35) 100%);
	z-index: 1;
}

.comete-fiches-grid__link--no-image::before {
	background: none;
}

.comete-fiches-grid__title {
	margin: 0;
	flex: 1;
	min-width: 0;
	font-family: "Funnel sans", Sans-serif;
	font-size: 22px;
	font-weight: 100;
	line-height: 24px;
	color: #f5ede4;
	position: relative;
	z-index: 2;
}

.comete-fiches-grid__link .comete-child-pages-grid__plus {
	position: relative;
	z-index: 2;
}

.comete-fiches-grid__link:hover .comete-child-pages-grid__plus,
.comete-fiches-grid__link:focus-visible .comete-child-pages-grid__plus {
	transform: scale(1.1);
	transition: transform 0.2s ease;
}

.comete-fiches-grid.is-loading {
	opacity: 0.6;
	pointer-events: none;
	transition: opacity 0.2s ease;
}

/* --------------------------------------------------------------
 * Carrousel témoignages
 * -------------------------------------------------------------- */
.comete-temoignages-carousel {
	position: relative;
}

.comete-temoignages-carousel__swiper {
	/* Met la pagination sous le contenu (sans chevauchement) */
	display: flex;
	flex-direction: column;
}

.comete-temoignages-carousel__swiper > .swiper-wrapper {
	flex: 1 1 auto;
}

.comete-temoignages-carousel .swiper-pagination {
	position: static;
	width: auto;
	text-align: left;
	margin-top: 12px;
}

.comete-temoignages-carousel__slide {
	padding: 0;
}

.comete-temoignages-carousel__quote {
	line-height: 1.6;
}

.comete-temoignages-carousel__author {
	margin: 1rem 0 0.25rem;
	font-weight: 600;
}

.comete-temoignages-carousel__role {
	margin: 0;
	opacity: 0.85;
}

.comete-temoignages-carousel .swiper-pagination-bullet {
	/* Bullets fixes (pas de shift) */
	width: 8px;
	height: 8px;
	margin: 0 6px !important;
	border-radius: 50%;
	background: #F5EDE4;
	opacity: 1;
}

.comete-temoignages-carousel .swiper-pagination-bullet-active {
	background: #050A18;
	opacity: 1;
}

.comete-temoignages-carousel .swiper-pagination {
	/* Réserve une hauteur stable pour éviter tout saut visuel */
	min-height: 8px;
	line-height: 8px;
}

/* --------------------------------------------------------------
 * Grille témoignages
 * -------------------------------------------------------------- */
.comete-temoignages-grid .comete-news-grid__pagination {
	margin-top: 1.5rem;
}

.comete-temoignages-grid.is-loading {
	opacity: 0.6;
	pointer-events: none;
	transition: opacity 0.2s ease;
}

.comete-temoignages-grid__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}

@media (max-width: 900px) {
	.comete-temoignages-grid__list {
		grid-template-columns: 1fr;
	}
}

.comete-temoignages-grid__item {
	margin: 0;
	height: 100%;
}

.comete-temoignages-grid__inner {
	height: 100%;
	display: flex;
	flex-direction: column;
	border: 1px solid #b44f33;
	border-radius: 16px;
	padding: 1.5rem;
}

.comete-temoignages-grid__quote {
	flex: 1 1 auto;
	line-height: 1.6;
}

.comete-temoignages-grid__meta {
	flex: 0 0 auto;
	margin-top: 1rem;
}

.comete-temoignages-grid__author {
	margin: 0 0 0.25rem;
	font-weight: 600;
}

.comete-temoignages-grid__role {
	margin: 0;
	opacity: 0.85;
}

.comete-cta-list__item h3{
	font-size:24px;
}

.comete-cta-list__item{
	padding-top:10px;
	padding-bottom:10px;
	border-bottom:1px solid currentColor;
}

.comete-cta-list__button .elementor-button:hover{
	background-color: #882B1A!important;
	background: #882B1A!important;
}
.comete-cta-list__button .elementor-button{
    background-color: #B44F33!important;
	background: #B44F33!important;
    background-image: none!important;
    font-family: "Funnel sans", Sans-serif!important;
    font-weight: 100!important;
    text-transform: uppercase!important;
    line-height: 1.2em!important;
    border-radius: 500px 500px 500px 500px!important;
    padding: 4px 10px 6px 25px!important;
	transition: all 0.2s ease!important;
}
.comete-cta-list__button .elementor-button .elementor-button-text{
	font-size:16px!important;
	font-family: "Funnel sans", Sans-serif!important;
    font-weight: 100!important;
    text-transform: uppercase!important;
    line-height: 1.4em!important;
}
.comete-cta-list__text, comete-cta-list__text *{
	line-height: 1.5em;
}
.comete-cta-list__plus{
	transition: all 0.2s ease!important;
}
.activCtaList .comete-cta-list__plus{
	transform: rotate(90deg);
	transition: all 0.2s ease!important;
}

/* ==========================================================================
   Widget : Grille Bento (cartes cliquables)
   ========================================================================== */
.comete-bento-grid {
	--bento-cols: 3;
	--bento-cols-tablet: 2;
	--bento-row-min: 240px;
	display: grid;
	grid-template-columns: repeat(var(--bento-cols), minmax(0, 1fr));
	grid-auto-rows: minmax(var(--bento-row-min), auto);
	gap: 16px;
	width: 100%;
}

.comete-bento-grid__item {
	--bento-col-span: 1;
	--bento-row-span: 1;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 16px;
	padding: 32px;
	border-radius: 12px;
	overflow: hidden;
	color: #F5EDE4;
	grid-column: span var(--bento-col-span);
	grid-row: span var(--bento-row-span);
	isolation: isolate;
}

.comete-bento-grid__item--clickable {
	cursor: pointer;
}

/* Couches de fond et de surcouche : pilotées par les Group_Control_Background
   d’Elementor via {{CURRENT_ITEM}} (selectors ciblant ces deux éléments). */
.comete-bento-grid__item-bg,
.comete-bento-grid__item-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	border-radius: inherit;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.comete-bento-grid__item-bg {
	z-index: 0;
}

.comete-bento-grid__item-overlay {
	z-index: 1;
}

.comete-bento-grid__inner,
.comete-bento-grid__icon {
	position: relative;
	z-index: 2;
}

.comete-bento-grid__title {
	margin: 0 0 16px;
	font-family: "Funnel sans", Sans-serif;
	font-weight: 300;
	font-size: clamp(20px, 1.6vw, 30px);
	line-height: 1.15;
	color: inherit;
}

/* Le titre hérite TOUJOURS de la couleur du H3 (qui hérite lui-même de
   l’item ou est forcé via inline-style). On utilise `!important` pour battre
   les règles très spécifiques du thème (ex. `.blanc a { color:#fff !important }`,
   `.elementor-element a { … }`). Les inline-styles avec `!important` posés
   par le PHP gardent toujours la priorité finale. */
.comete-bento-grid__title .comete-bento-grid__title-link,
.comete-bento-grid__title .comete-bento-grid__title-link:hover,
.comete-bento-grid__title .comete-bento-grid__title-link:focus,
.comete-bento-grid__title .comete-bento-grid__title-link:visited,
.elementor-widget-comete_bento_grid .comete-bento-grid__title-link,
.elementor-widget-comete_bento_grid .comete-bento-grid__title-link:hover,
.elementor-widget-comete_bento_grid .comete-bento-grid__title-link:focus,
.elementor-widget-comete_bento_grid .comete-bento-grid__title-link:visited {
	color: inherit !important;
	text-decoration: none !important;
	background: none !important;
	border-bottom: 0 !important;
}

/* Description : idem, on protège l’héritage de couleur (sauf liens inline qui
   ont leur propre contrôle de couleur dans la section Style globale). */
.elementor-widget-comete_bento_grid .comete-bento-grid__title,
.elementor-widget-comete_bento_grid .comete-bento-grid__desc {
	color: inherit;
}

.comete-bento-grid__desc {
	font-family: "Funnel sans", Sans-serif;
	font-size: 15px;
	line-height: 1.5;
	color: inherit;
	max-width: 60ch;
}

.comete-bento-grid__desc a {
	color: inherit;
	text-decoration: underline;
	position: relative;
	z-index: 2;
}

.comete-bento-grid__desc a:hover {
	opacity: 0.85;
}

.comete-bento-grid__icon {
	align-self: flex-end;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid currentColor;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: inherit;
	margin-top: auto;
	flex-shrink: 0;
	transition: transform 0.25s ease;
	transform-origin: center center;
}

.comete-bento-grid__item--clickable:hover .comete-bento-grid__icon {
	transform: scale(1.1);
}

.comete-bento-grid__icon--dot .comete-bento-grid__dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
}

/* --- Responsive --- */
@media (max-width: 1024px) {
	.comete-bento-grid {
		grid-template-columns: repeat(var(--bento-cols-tablet), minmax(0, 1fr));
	}
	.comete-bento-grid__item {
		grid-column: span var(--bento-col-span-tablet, 1);
	}
	/* Sur petits écrans (souvent 2 colonnes), on force la dernière carte à
	   prendre toute la largeur (évite l’effet “50%” sur la dernière ligne). */
	.comete-bento-grid__item:last-child {
		grid-column: 1 / -1;
	}
}

@media (max-width: 600px) {
	.comete-bento-grid {
		grid-template-columns: 1fr;
		--bento-row-min: 180px;
	}
	.comete-bento-grid__item {
		grid-column: span 1 !important;
		grid-row: span 1 !important;
	}
	.comete-bento-grid__title {
		font-size: 22px;
	}
}

/* ==========================================================================
   Widget : CTA Toggle (1 bloc + boutons multiples) — reprend le design de
   .comete-cta-list mais en mono-bloc avec une grille de boutons internes.
   ========================================================================== */
.comete-cta-toggle {
	border-bottom: 1px solid currentColor;
	padding-top: 10px;
	padding-bottom: 10px;
}

.comete-cta-toggle__header {
	display: flex;
	align-items: center;
	gap: 16px;
	width: 100%;
	background: transparent;
	border: 0;
	padding: 0;
	margin: 0;
	cursor: pointer;
	color: inherit;
	text-align: left;
	font: inherit;
}

.comete-cta-toggle__header:focus {
	outline: none;
}

.comete-cta-toggle__header:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

.comete-cta-toggle__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.comete-cta-toggle__icon img {
	display: block;
	max-width: 40px;
	height: auto;
}

.comete-cta-toggle__title {
	flex: 1 1 auto;
	margin: 0;
	color: inherit;
	font-family: "Funnel sans", Sans-serif;
	font-size: 22px;
	font-weight: 100;
	line-height: 1.2em;
}

.comete-cta-toggle__plus {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: inherit;
	transition: transform 0.25s ease;
}

.comete-cta-toggle__header.activCtaToggle .comete-cta-toggle__plus,
.comete-cta-toggle.is-open .comete-cta-toggle__plus {
	transform: rotate(90deg);
}

.comete-cta-toggle__panel {
	overflow: hidden;
}

.comete-cta-toggle__panel-inner {
	padding-top: 16px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.comete-cta-toggle__intro {
	color: inherit;
	font-family: "Funnel sans", Sans-serif;
	line-height: 1.5em;
}

.comete-cta-toggle__intro * {
	line-height: 1.5em;
}

/* --- Liste des boutons --- */
.comete-cta-toggle__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

/* Disposition « auto » : boutons côte à côte, largeur naturelle, wrap si la
   ligne est pleine. Pas de space-between : les boutons restent collés à
   gauche avec un simple gap. */
.comete-cta-toggle__buttons--inline {
	justify-content: flex-start;
	align-items: flex-start;
}

.comete-cta-toggle__buttons--inline .comete-cta-toggle__button {
	flex: 0 0 auto;
}

.comete-cta-toggle__buttons--col-1 {
	flex-direction: column;
	align-items: flex-start;
}

.comete-cta-toggle__buttons--col-2,
.comete-cta-toggle__buttons--col-3 {
	display: grid;
}

.comete-cta-toggle__buttons--col-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.comete-cta-toggle__buttons--col-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.comete-cta-toggle__button {
	min-width: 0;
	display: block;
}

.comete-cta-toggle__button .elementor-element {
	display: block;
}

/* Bouton : même couleurs que .comete-cta-list mais sans icône, texte centré,
   libellé multi-lignes autorisé pour les intitulés longs. */
.comete-cta-toggle__button .elementor-button {
	background-color: #B44F33 !important;
	background: #B44F33 !important;
	background-image: none !important;
	color: #F5EDE4 !important;
	font-family: "Funnel sans", Sans-serif !important;
	font-weight: 100 !important;
	text-transform: uppercase !important;
	line-height: 1.25em !important;
	border-radius: 500px !important;
	padding: 12px 28px !important;
	transition: background-color 0.2s ease !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	text-align: center;
	white-space: normal;
	width: auto;
	min-width: 220px;
	box-sizing: border-box;
}

.comete-cta-toggle__button .elementor-button:hover,
.comete-cta-toggle__button .elementor-button:focus {
	background-color: #882B1A !important;
	background: #882B1A !important;
	color: #F5EDE4 !important;
}

.comete-cta-toggle__button .elementor-button .elementor-button-content-wrapper {
	display: block;
	width: 100%;
}

.comete-cta-toggle__button .elementor-button .elementor-button-text {
	font-size: 12px !important;
	font-family: "Funnel sans", Sans-serif !important;
	font-weight: 100 !important;
	text-transform: uppercase !important;
	line-height: 1.25em !important;
	display: block;
	text-align: center;
}

/* Empilés : largeur auto, alignement à gauche comme dans la maquette. */
.comete-cta-toggle__buttons--col-1 .comete-cta-toggle__button {
	width: auto;
}

/* Colonnes égales : le bouton remplit sa cellule. */
.comete-cta-toggle__buttons--col-2 .comete-cta-toggle__button .elementor-button,
.comete-cta-toggle__buttons--col-3 .comete-cta-toggle__button .elementor-button {
	width: 100%;
}

@media (max-width: 600px) {
	.comete-cta-toggle__buttons {
		gap: 10px;
	}
	.comete-cta-toggle__buttons--inline,
	.comete-cta-toggle__buttons--col-2,
	.comete-cta-toggle__buttons--col-3 {
		display: flex;
		flex-direction: column;
		align-items: stretch;
	}
	.comete-cta-toggle__buttons--inline .comete-cta-toggle__button {
		max-width: 100%;
		width: 100%;
	}
	.comete-cta-toggle__button .elementor-button {
		width: 100%;
		min-width: 0;
	}
}


