/*
 * WinWin : charte du site et page d'accueil.
 * Les blocs Elementor de l'accueil portent des classes ww-* (reglage "Classes CSS") ; un reglage fait dans Elementor
 * reste prioritaire sur ces valeurs par defaut (ses selecteurs sont plus precis).
 * Animations : uniquement si le script a ajoute .ww-js sur <html> (sans JS ou avec "reduire les animations", tout est visible).
 */

:root {
	--ww-sand: #d4b59e;
	--ww-sand-light: #eadbcf;
	--ww-cream: #f8f3ee;
	--ww-ink: #2a2320;
	--ww-ink-soft: #5b4e47;
	--ww-bronze: #8e6b52;
	--ww-serif: "Cormorant Garamond", Georgia, serif;
	--ww-sans: "Jost", "Helvetica Neue", Arial, sans-serif;
	--ww-ease: cubic-bezier(.22, .61, .36, 1);
	--ww-gutter: clamp(20px, 5vw, 48px);
}

/* ---------- En-tete et pied de page (tout le site) ---------- */

#masthead .main-navigation .primary-menu-container > ul > li.menu-item > a,
.mobile-navigation ul li a {
	font-family: var(--ww-sans);
	font-size: 13px;
	letter-spacing: .14em;
	text-transform: uppercase;
}

@media (max-width: 1024px) {
	.mobile-site-branding a.brand img {
		max-width: 64px;
	}
}

/* Menu du telephone (tiroir Kadence) : comme celui du diaporama, un bouton rond et une petite carte blanche qui
   s'ouvre dessous, au lieu du panneau sombre pleine hauteur. Kadence garde la main sur l'ouverture, le clic a cote,
   Echap et le focus ; site.js place la carte sous le bouton (--ww-menu-top / --ww-menu-right). */
#mobile-toggle.menu-toggle-open {
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 12px 30px -14px rgba(42, 35, 32, .55);
	color: var(--ww-ink);
}

/* Page Le Club : le bouton reste en haut de l'ecran au defilement (site.js), a sa distance du bord ; sous la barre
   d'administration quand elle est fixe (administrateurs, ecrans de plus de 600 px) */
#mobile-toggle {
	--ww-menu-haut: 16px;
}

@media (min-width: 601px) {
	.admin-bar #mobile-toggle {
		--ww-menu-haut: 62px;
	}
}

@media (min-width: 783px) {
	.admin-bar #mobile-toggle {
		--ww-menu-haut: 48px;
	}
}

#mobile-toggle.menu-toggle-open.ww-menu-flottant {
	position: fixed;
	top: var(--ww-menu-haut);
	right: var(--ww-menu-droite, 16px);
	z-index: 1000;
}

#mobile-toggle.menu-toggle-open:focus-visible,
#mobile-drawer .drawer-header .menu-toggle-close:focus-visible {
	outline: 2px solid var(--ww-bronze);
	outline-offset: 3px;
}

/* Trois traits fins a la place de l'icone du theme */
#mobile-toggle .kadence-svg-iconset {
	display: none;
}

#mobile-toggle .menu-toggle-icon,
#mobile-toggle .menu-toggle-icon::before,
#mobile-toggle .menu-toggle-icon::after {
	display: block;
	width: 20px;
	height: 1.5px;
	border-radius: 1px;
	background: currentColor;
}

#mobile-toggle .menu-toggle-icon {
	position: relative;
}

#mobile-toggle .menu-toggle-icon::before,
#mobile-toggle .menu-toggle-icon::after {
	content: "";
	position: absolute;
	left: 0;
}

#mobile-toggle .menu-toggle-icon::before {
	top: -6px;
}

#mobile-toggle .menu-toggle-icon::after {
	top: 6px;
}

/* Menu ouvert : pas de voile sombre ; la croix (bouton de fermeture du theme) se pose a la place du bouton */
#mobile-drawer .drawer-overlay {
	background: none;
}

#mobile-drawer .drawer-inner {
	top: var(--ww-menu-top, 16px);
	right: var(--ww-menu-right, 16px);
	bottom: auto;
	left: auto;
	width: auto;
	max-width: calc(100vw - 32px);
	overflow: visible;
	background: none;
	box-shadow: none;
	color: var(--ww-ink);
	transform: none;
}

#mobile-drawer .drawer-header {
	min-height: 0;
	padding: 0;
}

#mobile-drawer .drawer-header .menu-toggle-close {
	width: 48px;
	height: 48px;
	padding: 0;
	border-radius: 50%;
	background: #fff; /* opaque : cache les traits du bouton dessous */
	box-shadow: 0 12px 30px -14px rgba(42, 35, 32, .55);
	color: var(--ww-ink);
}

#mobile-drawer .toggle-close-bar {
	width: 20px;
	height: 1.5px;
	margin: -.75px 0 0 -10px;
}

#mobile-drawer .drawer-content {
	min-width: 210px;
	margin-top: 10px;
	padding: 8px;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 24px 50px -24px rgba(42, 35, 32, .55);
}

#mobile-drawer .mobile-navigation ul li > a {
	display: block;
	padding: 12px 14px;
	border: 0;
	border-radius: 8px;
	font-size: .76rem;
	font-weight: 500;
	letter-spacing: .18em;
	color: var(--ww-ink);
	transition: background-color .3s, color .3s;
}

#mobile-drawer .mobile-navigation ul li > a:is(:hover, :focus-visible),
#mobile-drawer .mobile-navigation ul li.current-menu-item > a {
	background: var(--ww-cream);
	color: var(--ww-bronze);
}

@media (prefers-reduced-motion: no-preference) {
	#mobile-drawer.active .drawer-content {
		animation: ww-rise .4s var(--ww-ease) both;
	}
}

.site-footer .site-bottom-footer-wrap {
	background: var(--ww-ink);
	color: var(--ww-sand-light);
	font-family: var(--ww-sans);
	font-size: 14px;
	letter-spacing: .06em;
}

.site-footer .site-bottom-footer-wrap a {
	color: var(--ww-sand);
}

/* ---------- Accueil : ouverture ---------- */

.elementor .e-con.ww-hero {
	--padding-top: clamp(56px, 10vh, 120px);
	--padding-bottom: clamp(110px, 16vh, 170px);
	--padding-left: var(--ww-gutter);
	--padding-right: var(--ww-gutter);
	--justify-content: center;
	--align-items: center;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	min-height: clamp(560px, calc(100svh - 80px), 900px);
	position: relative;
	overflow: hidden;
	isolation: isolate;
	text-align: center;
	background: var(--ww-sand);
}

/* Halo lumineux qui respire lentement */
.elementor .e-con.ww-hero::before {
	content: "";
	position: absolute;
	inset: -25%;
	z-index: -1;
	opacity: 1;
	background:
		radial-gradient(closest-side at 50% 42%, rgba(255, 255, 255, .38), rgba(255, 255, 255, 0) 75%),
		radial-gradient(closest-side at 12% 88%, rgba(142, 107, 82, .28), rgba(142, 107, 82, 0) 70%),
		radial-gradient(closest-side at 88% 12%, rgba(255, 255, 255, .22), rgba(255, 255, 255, 0) 70%);
}

/* Invitation a defiler */
.elementor .e-con.ww-hero::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: clamp(28px, 6vh, 56px);
	width: 1px;
	height: 64px;
	background: linear-gradient(to bottom, rgba(42, 35, 32, 0), rgba(42, 35, 32, .6));
	transform-origin: top;
}

.elementor .e-con .elementor-widget.ww-hero-logo {
	width: clamp(140px, 17vw, 220px);
	margin-bottom: clamp(28px, 5vh, 52px);
}

.ww-hero-logo img {
	display: block;
	width: 100%;
	height: auto;
}

.ww-hero-title .elementor-heading-title {
	max-width: 19ch;
	margin: 0 auto;
	font-family: var(--ww-serif);
	font-size: clamp(2.4rem, 5.6vw, 5rem);
	font-weight: 500;
	line-height: 1.04;
	letter-spacing: -.01em;
	color: var(--ww-ink);
	text-wrap: balance;
}

.ww-hero-subtitle .elementor-heading-title {
	max-width: 34ch;
	margin: 0 auto;
	font-family: var(--ww-sans);
	font-size: clamp(.82rem, 1.2vw, 1rem);
	font-weight: 400;
	line-height: 1.9;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: rgba(42, 35, 32, .8);
	text-wrap: balance;
}

.ww-hero-subtitle::before {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: clamp(22px, 4vh, 36px) auto;
	background: rgba(42, 35, 32, .45);
}

/* ---------- Accueil : sections texte + photo ---------- */

.elementor .e-con.ww-section {
	--container-max-width: 1180px;
	--padding-top: clamp(80px, 11vw, 150px);
	--padding-bottom: clamp(80px, 11vw, 150px);
	--padding-left: var(--ww-gutter);
	--padding-right: var(--ww-gutter);
	background: #fff;
}

.elementor .e-con.ww-bg-cream {
	background: var(--ww-cream);
}

.elementor .e-con.ww-split > .e-con-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: center;
	gap: clamp(56px, 7vw, 110px);
}

.elementor .e-con.ww-content {
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
	--gap: clamp(22px, 3vw, 34px);
	--row-gap: clamp(22px, 3vw, 34px);
}

.ww-content > .elementor-widget {
	margin-block-end: 0;
}

.ww-title .elementor-heading-title {
	font-family: var(--ww-serif);
	font-size: clamp(2.3rem, 4.4vw, 3.7rem);
	font-weight: 500;
	line-height: 1.05;
	letter-spacing: -.01em;
	color: var(--ww-ink);
	text-wrap: balance;
}

.ww-title::before {
	content: "";
	display: block;
	width: 48px;
	height: 1px;
	margin-bottom: 22px;
	background: var(--ww-bronze);
	transform-origin: left;
}

.ww-lead {
	font-family: var(--ww-sans);
	font-size: clamp(1.25rem, 2.1vw, 1.65rem);
	font-weight: 300;
	line-height: 1.55;
	color: var(--ww-ink-soft);
}

.ww-lead p {
	margin: 0;
}

/* Mots cles : surlignage sable qui se trace a l'apparition */
.ww-lead strong,
.ww-facts strong,
.ww-talent-text strong {
	font-weight: 500;
	color: var(--ww-ink);
	background: linear-gradient(transparent 62%, rgba(212, 181, 158, .6) 62%, rgba(212, 181, 158, .6) 90%, transparent 90%) no-repeat 0 0 / 100% 100%;
	transition: background-size 1.2s var(--ww-ease) .35s;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}

/* Photos : cadre decale et aplat sable derriere */
.elementor .e-con .elementor-widget.ww-photo {
	position: relative;
	isolation: isolate;
	justify-self: center;
	width: 100%;
}

.elementor .e-con .elementor-widget.ww-photo--portrait {
	width: min(340px, 76%);
}

.elementor .e-con .elementor-widget.ww-photo--landscape {
	max-width: 640px;
}

.ww-photo img {
	display: block;
	width: 100%;
	height: auto;
	box-shadow: 0 34px 60px -34px rgba(42, 35, 32, .55);
}

/* Decalages du cadre (--ww-frame) et de l'aplat (--ww-block), vers la droite ; inverses pour les sections .ww-reverse */
.ww-photo {
	--ww-frame: clamp(12px, 2vw, 22px);
	--ww-block: 18%;
}

.ww-photo::before {
	content: "";
	position: absolute;
	inset: var(--ww-frame) calc(var(--ww-frame) * -1) calc(var(--ww-frame) * -1) var(--ww-frame);
	z-index: -1;
	border: 1px solid var(--ww-sand);
	transform: translateY(var(--ww-shift, 0px));
}

.ww-photo--portrait::after {
	content: "";
	position: absolute;
	inset: 14% calc(var(--ww-block) * -1) -10% var(--ww-block);
	z-index: -2;
	background: var(--ww-sand-light);
	transform: translateY(calc(var(--ww-shift, 0px) * -1.5));
}

.ww-bg-cream .ww-photo--portrait::after {
	background: #fff;
}

.ww-reverse .ww-photo::before {
	inset: var(--ww-frame) var(--ww-frame) calc(var(--ww-frame) * -1) calc(var(--ww-frame) * -1);
}

.ww-reverse .ww-photo--portrait::after {
	inset: 14% var(--ww-block) -10% calc(var(--ww-block) * -1);
}

/* Ordre du jour : liste numerotee */
.ww-agenda ol {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: ww-agenda;
}

.ww-agenda li {
	display: flex;
	align-items: baseline;
	gap: 22px;
	padding: 17px 4px;
	border-bottom: 1px solid var(--ww-sand-light);
	font-family: var(--ww-sans);
	font-size: clamp(1.05rem, 1.5vw, 1.2rem);
	color: var(--ww-ink);
	counter-increment: ww-agenda;
	transition: transform .45s var(--ww-ease), background-color .45s;
}

.ww-agenda li:first-child {
	border-top: 1px solid var(--ww-sand-light);
}

.ww-agenda li::before {
	content: counter(ww-agenda, decimal-leading-zero);
	min-width: 2ch;
	font-family: var(--ww-serif);
	font-size: 1.55rem;
	font-style: italic;
	line-height: 1;
	color: var(--ww-bronze);
}

.ww-agenda li:hover {
	transform: translateX(8px);
}

/* Ambition : grand chiffre */
.ww-bignum p {
	margin: 0;
	font-family: var(--ww-serif);
	font-size: clamp(6.5rem, 15vw, 11.5rem);
	font-weight: 500;
	line-height: .8;
	letter-spacing: -.03em;
	color: var(--ww-bronze);
	background: linear-gradient(160deg, var(--ww-sand) 10%, var(--ww-bronze) 85%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	font-variant-numeric: tabular-nums;
}

/* Comment nous travaillons : les cinq verbes, en liste sur mobile, sur deux lignes (3 + 2) comme l'original ailleurs */
.ww-steps ul {
	display: grid;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ww-steps li {
	display: flex;
	align-items: center;
	gap: 16px;
	font-family: var(--ww-serif);
	font-size: clamp(1.75rem, 2.8vw, 2.3rem);
	font-style: italic;
	line-height: 1.3;
	color: var(--ww-ink);
}

.ww-steps li:nth-child(odd) {
	color: var(--ww-bronze);
}

.ww-steps li::before {
	content: "";
	flex: none;
	width: 7px;
	height: 7px;
	background: var(--ww-sand);
	transform: rotate(45deg);
}

@media (min-width: 600px) {
	.ww-steps ul {
		display: flex;
		flex-wrap: wrap;
		gap: 4px 18px;
	}

	.ww-steps li::before {
		content: none;
	}

	.ww-steps li:not(:nth-child(3)):not(:last-child)::after {
		content: "";
		flex: none;
		width: 7px;
		height: 7px;
		background: var(--ww-sand);
		transform: rotate(45deg);
	}

	/* Retour a la ligne force apres le troisieme verbe : element vide pleine largeur place entre le 3e et le 4e */
	.ww-steps ul::after {
		content: "";
		flex-basis: 100%;
		order: 1;
	}

	.ww-steps li:nth-child(n+4) {
		order: 2;
	}
}

/* Comment nous travaillons : les deux regles */
.ww-facts ul {
	display: grid;
	gap: 14px;
	max-width: 540px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ww-facts li {
	position: relative;
	padding: 22px 24px 22px 74px;
	border: 1px solid var(--ww-sand-light);
	border-radius: 4px;
	background: #fff;
	box-shadow: 0 24px 44px -36px rgba(42, 35, 32, .6);
	font-family: var(--ww-sans);
	font-size: 1.03rem;
	line-height: 1.55;
	color: var(--ww-ink-soft);
	transition: transform .5s var(--ww-ease), box-shadow .5s var(--ww-ease);
}

.ww-facts li:hover {
	transform: translateY(-4px);
	box-shadow: 0 30px 50px -34px rgba(42, 35, 32, .65);
}

.ww-facts li::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 26px;
	width: 28px;
	height: 28px;
	margin-top: -14px;
	background: var(--ww-bronze);
	-webkit-mask: var(--ww-icon) center / contain no-repeat;
	mask: var(--ww-icon) center / contain no-repeat;
}

.ww-facts li:nth-child(1) {
	--ww-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 9.5h18M8 3v3M16 3v3'/%3E%3Ccircle cx='12' cy='15' r='1.7' fill='%23000' stroke='none'/%3E%3C/svg%3E");
}

.ww-facts li:nth-child(2) {
	--ww-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12.4l2.7 2.7L16.2 9.6'/%3E%3C/svg%3E");
}

/* ---------- Accueil : un reseau de talent ---------- */

.elementor .e-con.ww-talent {
	--container-max-width: 900px;
	--padding-top: clamp(110px, 17vw, 230px);
	--padding-bottom: clamp(110px, 17vw, 230px);
	--padding-left: var(--ww-gutter);
	--padding-right: var(--ww-gutter);
	--align-items: center;
	--gap: clamp(22px, 3vw, 36px);
	--row-gap: clamp(22px, 3vw, 36px);
	position: relative;
	isolation: isolate;
	text-align: center;
}

.elementor .e-con.ww-talent::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	opacity: 1;
	background: linear-gradient(135deg, rgba(42, 35, 32, .82) 0%, rgba(42, 35, 32, .5) 55%, rgba(142, 107, 82, .45) 100%);
}

.ww-talent-title .elementor-heading-title {
	font-family: var(--ww-serif);
	font-size: clamp(2.8rem, 7.5vw, 6.2rem);
	font-weight: 500;
	font-style: italic;
	line-height: 1;
	color: #fff;
	text-wrap: balance;
}

.ww-talent-text {
	max-width: 30ch;
	margin-inline: auto;
	font-family: var(--ww-sans);
	font-size: clamp(1.2rem, 2.2vw, 1.65rem);
	font-weight: 300;
	line-height: 1.6;
	color: rgba(255, 255, 255, .88);
}

.ww-talent-text p {
	margin: 0;
}

.ww-talent-text strong {
	color: #fff;
	background-image: linear-gradient(transparent 62%, rgba(212, 181, 158, .45) 62%, rgba(212, 181, 158, .45) 90%, transparent 90%);
}

/* ---------- Grands ecrans ---------- */

@media (min-width: 900px) {
	.elementor .e-con.ww-split > .e-con-inner {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.elementor .e-con.ww-split.ww-reverse > .e-con-inner > :first-child {
		order: 2;
	}
}

@media (min-width: 1025px) and (hover: hover) {
	/* Parallaxe de la photo de fond (non supporte par les mobiles) */
	.elementor .e-con.ww-talent {
		background-attachment: fixed;
	}
}

/* ---------- Animations ---------- */

@media (prefers-reduced-motion: no-preference) {
	.elementor .e-con.ww-hero::before {
		animation: ww-breathe 14s ease-in-out infinite alternate;
	}

	.elementor .e-con.ww-hero::after {
		animation: ww-scroll 2.4s var(--ww-ease) infinite;
	}

	.ww-hero-logo {
		animation: ww-rise 1.5s var(--ww-ease) both;
	}

	.ww-hero-title {
		animation: ww-rise 1.5s .2s var(--ww-ease) both;
	}

	.ww-hero-subtitle {
		animation: ww-rise 1.5s .45s var(--ww-ease) both;
	}
}

@keyframes ww-breathe {
	from { transform: scale(1) translate3d(0, 0, 0); }
	to { transform: scale(1.1) translate3d(3%, -2%, 0); }
}

@keyframes ww-scroll {
	0% { transform: scaleY(0); opacity: 0; }
	35% { opacity: 1; }
	70% { transform: scaleY(1); opacity: 1; }
	100% { transform: scaleY(1); opacity: 0; }
}

@keyframes ww-rise {
	from { opacity: 0; transform: translateY(26px); filter: blur(6px); }
	to { opacity: 1; transform: none; filter: none; }
}

/* Apparitions au defilement (.ww-in ajoutee par le script) */
.ww-js :is(.ww-title, .ww-lead, .ww-bignum, .ww-talent-title, .ww-talent-text) {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 1.1s var(--ww-ease), transform 1.1s var(--ww-ease);
}

.ww-js .ww-title::before {
	transform: scaleX(0);
	transition: transform 1.2s var(--ww-ease) .25s;
}

.ww-js :is(.ww-agenda, .ww-steps, .ww-facts) li {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity .9s var(--ww-ease), transform .9s var(--ww-ease), background-color .45s, box-shadow .5s var(--ww-ease);
	transition-delay: calc(var(--ww-i, 0) * 90ms);
}

.ww-js :is(.ww-lead, .ww-facts, .ww-talent-text) strong {
	background-size: 0% 100%;
}

.ww-js .ww-photo img {
	clip-path: inset(100% 0 0 0);
	transform: scale(1.12);
	transition: clip-path 1.5s var(--ww-ease), transform 2s var(--ww-ease);
}

.ww-js .ww-photo::before,
.ww-js .ww-photo::after {
	opacity: 0;
	transition: opacity 1.2s var(--ww-ease) .5s;
}

.ww-js .ww-in:is(.ww-title, .ww-lead, .ww-bignum, .ww-talent-title, .ww-talent-text),
.ww-js .ww-in li {
	opacity: 1;
	transform: none;
}

.ww-js .ww-title.ww-in::before {
	transform: none;
}

.ww-js .ww-in strong {
	background-size: 100% 100%;
}

.ww-js .ww-photo.ww-in img {
	clip-path: inset(0);
	transform: none;
}

.ww-js .ww-photo.ww-in::before,
.ww-js .ww-photo.ww-in::after {
	opacity: 1;
}

.ww-js .ww-agenda.ww-in li:hover {
	transform: translateX(8px);
}

.ww-js .ww-facts.ww-in li:hover {
	transform: translateY(-4px);
}

/* Fenetre (connectez-vous pour participer a un event) : carte creme au centre, voile sombre derriere */
.ww-popup {
	box-sizing: border-box;
	width: min(400px, calc(100% - 32px));
	padding: 36px 28px 28px;
	border: 0;
	border-radius: 14px;
	color: var(--ww-ink);
	background: var(--ww-cream);
	box-shadow: 0 40px 80px -30px rgba(42, 35, 32, .6);
	text-align: center;
	font-family: var(--ww-sans);
}

.ww-popup::backdrop {
	background: rgba(42, 35, 32, .55);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}

.ww-popup[open] {
	animation: ww-popup-entree .35s ease both;
}

@keyframes ww-popup-entree {
	from { opacity: 0; transform: translateY(12px) scale(.98); }
}

@media (prefers-reduced-motion: reduce) {
	.ww-popup[open] {
		animation: none;
	}
}

.ww-popup form {
	margin: 0;
}

.ww-popup .ww-popup-fermer {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid var(--ww-sand);
	border-radius: 50%;
	background: transparent;
	cursor: pointer;
}

.ww-popup .ww-popup-fermer::before,
.ww-popup .ww-popup-fermer::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 1.5px;
	background: var(--ww-ink);
	transform: translate(-50%, -50%) rotate(45deg);
}

.ww-popup .ww-popup-fermer::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.ww-popup .ww-popup-fermer:is(:hover, :focus-visible) {
	border-color: var(--ww-bronze);
	background: var(--ww-sand-light);
}

.ww-popup .ww-popup-surtitre {
	margin: 0 0 10px;
	font-size: .7rem;
	font-weight: 500;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--ww-bronze);
}

.ww-popup .ww-popup-titre {
	margin: 0 0 12px;
	font-family: var(--ww-serif);
	font-size: 1.9rem;
	font-weight: 500;
	line-height: 1.1;
	color: var(--ww-ink);
}

.ww-popup .ww-popup-texte {
	margin: 0 0 22px;
	font-size: .95rem;
	line-height: 1.55;
	color: var(--ww-ink-soft);
}

.ww-popup .ww-popup-bouton {
	display: inline-block;
	padding: 14px 30px;
	border-radius: 999px;
	font-size: .74rem;
	font-weight: 500;
	letter-spacing: .2em;
	text-transform: uppercase;
	text-decoration: none;
	color: #fff;
	background: var(--ww-ink);
	transition: background-color .3s;
}

.ww-popup .ww-popup-bouton:is(:hover, :focus-visible) {
	color: #fff;
	background: var(--ww-bronze);
}

.ww-popup .ww-popup-lien {
	display: block;
	margin-top: 16px;
	font-size: .88rem;
	color: var(--ww-bronze);
}

/* Pas le filet des titres de section de la page Events */
.ww-popup .ww-popup-titre::before,
.ww-popup .ww-popup-titre::after {
	display: none;
}
