/* Public selector */
.es-audience-switcher,
.es-audience-switcher * {
	box-sizing: border-box;
}

.es-audience-switcher {
	--es-switch-bg: #ffffff;
	--es-switch-panel: #ffffff;
	--es-switch-text: #242424;
	--es-switch-muted: #707070;
	--es-switch-accent: #00aac1;
	--es-switch-accent-dark: #007e8f;
	--es-switch-line: #d9e0e4;
	--es-switch-soft: #f4f6f7;
	--es-switch-focus: #f4c542;
	position: fixed;
	z-index: 99985;
	left: 20px;
	bottom: 20px;
	color: var(--es-switch-text);
	font-family: Roboto, Arial, sans-serif;
}

.es-audience-switcher [data-lang="ar"] {
	display: none;
}

.es-audience-switcher .screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	border: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

html[lang^="ar"] .es-audience-switcher [data-lang="fr"] {
	display: none;
}

html[lang^="ar"] .es-audience-switcher [data-lang="ar"] {
	display: inline;
}

.es-audience-switcher__trigger {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	gap: 9px;
	padding: 9px 16px 9px 10px;
	border: 1px solid rgb(0 170 193 / 24%);
	border-radius: 999px;
	background: var(--es-switch-bg);
	box-shadow: 0 12px 34px rgb(36 36 36 / 14%);
	color: var(--es-switch-accent-dark);
	font: inherit;
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
	transition: transform 160ms ease, box-shadow 160ms ease;
}

.es-audience-switcher__trigger:hover {
	box-shadow: 0 15px 40px rgb(36 36 36 / 20%);
	transform: translateY(-2px);
}

.es-audience-switcher__palette {
	display: flex;
	width: 30px;
	height: 30px;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: 50%;
}

.es-audience-switcher__palette i {
	width: 10px;
	height: 30px;
}

.es-audience-switcher__palette i:nth-child(1) {
	background: #00aac1;
}

.es-audience-switcher__palette i:nth-child(2) {
	background: #f4c542;
}

.es-audience-switcher__palette i:nth-child(3) {
	background: #242424;
}

.es-audience-switcher__panel[hidden] {
	display: none !important;
}

.es-audience-switcher__panel {
	position: absolute;
	bottom: 60px;
	left: 0;
	width: min(340px, calc(100vw - 28px));
	padding: 19px;
	border: 1px solid var(--es-switch-line);
	border-radius: 18px;
	background: var(--es-switch-panel);
	box-shadow: 0 22px 70px rgb(36 36 36 / 24%);
}

html[dir="rtl"] .es-audience-switcher__panel {
	direction: rtl;
	text-align: right;
}

.es-audience-switcher__heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 15px;
	margin-bottom: 16px;
}

.es-audience-switcher__heading p {
	margin: 0 0 4px;
	color: var(--es-switch-accent-dark);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.es-audience-switcher__heading h2 {
	margin: 0;
	color: var(--es-switch-text);
	font-size: 20px;
	line-height: 1.2;
	letter-spacing: -.02em;
}

.es-audience-switcher__close {
	display: grid;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	place-items: center;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--es-switch-soft);
	color: var(--es-switch-text);
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}

.es-audience-switcher__options {
	display: grid;
	gap: 8px;
}

.es-audience-switcher__option {
	display: grid;
	width: 100%;
	min-height: 68px;
	grid-template-columns: 70px 1fr 24px;
	align-items: center;
	gap: 12px;
	padding: 9px 11px;
	border: 1px solid var(--es-switch-line);
	border-radius: 13px;
	background: var(--es-switch-bg);
	color: var(--es-switch-text);
	font: inherit;
	text-align: left;
	cursor: pointer;
	transition: border-color 150ms ease, background-color 150ms ease, transform 150ms ease;
}

html[dir="rtl"] .es-audience-switcher__option {
	text-align: right;
}

.es-audience-switcher__option:hover {
	border-color: var(--es-switch-accent);
	transform: translateX(2px);
}

html[dir="rtl"] .es-audience-switcher__option:hover {
	transform: translateX(-2px);
}

.es-audience-switcher__option[aria-checked="true"] {
	border-color: var(--es-switch-accent);
	background: color-mix(in srgb, var(--es-switch-accent) 10%, var(--es-switch-bg));
	box-shadow: inset 0 0 0 1px var(--es-switch-accent);
}

.es-audience-switcher__swatches {
	display: flex;
	height: 45px;
	overflow: hidden;
	border: 2px solid rgb(255 255 255 / 80%);
	border-radius: 10px;
	box-shadow: 0 3px 12px rgb(36 36 36 / 12%);
}

.es-audience-switcher__swatches i {
	width: 34%;
	background: var(--es-swatch);
}

.es-audience-switcher__option-copy {
	display: grid;
	min-width: 0;
	gap: 3px;
}

.es-audience-switcher__option-copy strong {
	color: var(--es-switch-text);
	font-size: 13px;
}

.es-audience-switcher__option-copy small {
	color: var(--es-switch-muted);
	font-size: 10px;
	line-height: 1.25;
}

.es-audience-switcher__check {
	display: grid;
	width: 22px;
	height: 22px;
	place-items: center;
	border: 1px solid var(--es-switch-line);
	border-radius: 50%;
	color: transparent;
	font-size: 12px;
}

.es-audience-switcher__option[aria-checked="true"] .es-audience-switcher__check {
	border-color: var(--es-switch-accent);
	background: var(--es-switch-accent);
	color: #ffffff;
}

.es-audience-switcher__privacy {
	margin: 14px 3px 0;
	color: var(--es-switch-muted);
	font-size: 9px;
	line-height: 1.45;
}

.es-audience-switcher button:focus-visible {
	outline: 3px solid var(--es-switch-focus);
	outline-offset: 3px;
}

/* Pop Color selector */
html[data-es-audience-theme="pop"] .es-audience-switcher {
	--es-switch-bg: #fffdfb;
	--es-switch-panel: #fff9fc;
	--es-switch-text: #2d123d;
	--es-switch-muted: #684c74;
	--es-switch-accent: #ff3cac;
	--es-switch-accent-dark: #7b2cff;
	--es-switch-line: #e4c9f2;
	--es-switch-soft: #fff0f8;
	--es-switch-focus: #00c2ff;
}

html[data-es-audience-theme="pop"] .es-audience-switcher__trigger {
	border-color: transparent;
	background: linear-gradient(#ffffff, #ffffff) padding-box,
		linear-gradient(120deg, #ff3cac, #ff7a00, #00c2ff) border-box;
	box-shadow: 0 14px 38px rgb(123 44 255 / 22%);
}

html[data-es-audience-theme="pop"] .es-audience-switcher__palette i:nth-child(1) {
	background: #ff3cac;
}

html[data-es-audience-theme="pop"] .es-audience-switcher__palette i:nth-child(2) {
	background: #ff7a00;
}

html[data-es-audience-theme="pop"] .es-audience-switcher__palette i:nth-child(3) {
	background: #00c2ff;
}

/* Gen Z selector */
html[data-es-audience-theme="genz"] .es-audience-switcher {
	--es-switch-bg: #171222;
	--es-switch-panel: #100c19;
	--es-switch-text: #f8f7ff;
	--es-switch-muted: #bbb3ca;
	--es-switch-accent: #c7ff00;
	--es-switch-accent-dark: #c7ff00;
	--es-switch-line: #393048;
	--es-switch-soft: #241b31;
	--es-switch-focus: #ff4fd8;
}

html[data-es-audience-theme="genz"] .es-audience-switcher__trigger {
	border-color: #c7ff00;
	background: #0b0812;
	box-shadow: 0 0 0 1px rgb(199 255 0 / 30%), 0 0 30px rgb(168 85 247 / 38%);
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .es-audience-switcher__palette {
	border: 1px solid #4c3d60;
}

html[data-es-audience-theme="genz"] .es-audience-switcher__palette i:nth-child(1) {
	background: #0b0812;
}

html[data-es-audience-theme="genz"] .es-audience-switcher__palette i:nth-child(2) {
	background: #c7ff00;
}

html[data-es-audience-theme="genz"] .es-audience-switcher__palette i:nth-child(3) {
	background: #a855f7;
}

html[data-es-audience-theme="genz"] .es-audience-switcher__option[aria-checked="true"] {
	background: #21172e;
}

html[data-es-audience-theme="genz"] .es-audience-switcher__option[aria-checked="true"] .es-audience-switcher__check {
	color: #0b0812;
}

/* ---------------------------------------------------------
   POP COLOR — intentionally multicolored and outside charter
   --------------------------------------------------------- */
html[data-es-audience-theme="pop"] {
	color-scheme: light;
	--white: #fffdf9;
	--charcoal: #2d123d;
	--navy: #6f2bd9;
	--blue: #ff3cac;
	--turquoise: #00aee8;
	--turquoise-dark: #7b2cff;
	--yellow: #ffc928;
	--aqua: #eafcff;
	--soft: #fff2f8;
	--line: #e4cbed;
	--gray: #654d70;
	--shadow: 0 24px 70px rgb(123 44 255 / 14%);
}

html[data-es-audience-theme="pop"] body {
	background: #fffdf9;
	color: #2d123d;
}

html[data-es-audience-theme="pop"] .site-header {
	border-bottom: 3px solid transparent;
	background:
		linear-gradient(rgb(255 255 255 / 94%), rgb(255 255 255 / 94%)) padding-box,
		linear-gradient(90deg, #ff3cac, #ff7a00, #ffc928, #00c2ff, #7b2cff) border-box;
	box-shadow: 0 12px 38px rgb(123 44 255 / 8%);
}

html[data-es-audience-theme="pop"] .nav > a {
	color: #5c238e;
	font-weight: 700;
}

html[data-es-audience-theme="pop"] .nav > a::after {
	height: 3px;
	background: linear-gradient(90deg, #ff3cac, #ff7a00);
}

html[data-es-audience-theme="pop"] .header-cta,
html[data-es-audience-theme="pop"] .button-primary {
	border-color: transparent;
	background: linear-gradient(120deg, #ff3cac, #7b2cff);
	box-shadow: 0 14px 32px rgb(255 60 172 / 25%);
	color: #ffffff;
}

html[data-es-audience-theme="pop"] .button-outline {
	border-color: #7b2cff;
	background: #ffffff;
	color: #6517b8;
}

html[data-es-audience-theme="pop"] .hero {
	background:
		radial-gradient(circle at 8% 18%, rgb(255 201 40 / 38%), transparent 20%),
		radial-gradient(circle at 88% 18%, rgb(0 194 255 / 24%), transparent 25%),
		radial-gradient(circle at 82% 78%, rgb(255 60 172 / 22%), transparent 24%),
		linear-gradient(145deg, #fffdf9 25%, #fff0f8 100%);
}

html[data-es-audience-theme="pop"] .hero h1 {
	color: #2d123d;
}

html[data-es-audience-theme="pop"] .hero h1 em {
	background: linear-gradient(90deg, #ff3cac, #ff7a00, #7b2cff);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

html[data-es-audience-theme="pop"] .hero-lead {
	color: #5b3768;
}

html[data-es-audience-theme="pop"] .bubble-a {
	border-color: rgb(255 60 172 / 20%);
}

html[data-es-audience-theme="pop"] .bubble-b {
	border-color: rgb(255 122 0 / 20%);
}

html[data-es-audience-theme="pop"] .bubble-c {
	border-color: rgb(0 194 255 / 20%);
}

html[data-es-audience-theme="pop"] .phone {
	border-color: #5e238e;
	box-shadow: 0 35px 95px rgb(123 44 255 / 28%);
}

html[data-es-audience-theme="pop"] .phone::before {
	background: #5e238e;
}

html[data-es-audience-theme="pop"] .phone-step.done > span {
	border-color: #ff3cac;
	background: linear-gradient(135deg, #ff3cac, #7b2cff);
}

html[data-es-audience-theme="pop"] .floating-proof {
	border-color: rgb(255 60 172 / 22%);
	box-shadow: 0 15px 36px rgb(123 44 255 / 16%);
	color: #4b176f;
}

html[data-es-audience-theme="pop"] .proof-a span {
	background: #ffe4f4;
	color: #c31478;
}

html[data-es-audience-theme="pop"] .proof-b span {
	background: #fff0d6;
	color: #a94e00;
}

html[data-es-audience-theme="pop"] .proof-c span {
	background: #ddf8ff;
	color: #006b91;
}

html[data-es-audience-theme="pop"] .all-in-one {
	background:
		linear-gradient(180deg, #fffdf9, #ffffff),
		#ffffff;
}

html[data-es-audience-theme="pop"] .all-in-one > p:first-child,
html[data-es-audience-theme="pop"] .section-kicker,
html[data-es-audience-theme="pop"] .eyebrow {
	color: #c31478;
}

html[data-es-audience-theme="pop"] .benefit-art {
	background: linear-gradient(145deg, #ffddf1, #ffc0e3);
}

html[data-es-audience-theme="pop"] .benefit-art.art-2 {
	background: linear-gradient(145deg, #dff8ff, #a9ecff);
}

html[data-es-audience-theme="pop"] .benefit-art.art-3 {
	background: linear-gradient(145deg, #fff1a8, #ffd84d);
}

html[data-es-audience-theme="pop"] .benefit-art.art-4 {
	background: linear-gradient(145deg, #eadcff, #c5a0ff);
}

html[data-es-audience-theme="pop"] .benefit-art svg {
	color: #5c238e;
}

html[data-es-audience-theme="pop"] .services-section,
html[data-es-audience-theme="pop"] .resources-section {
	background:
		radial-gradient(circle at 12% 18%, rgb(255 201 40 / 26%), transparent 20%),
		radial-gradient(circle at 88% 80%, rgb(0 194 255 / 20%), transparent 25%),
		#fff2f8;
}

html[data-es-audience-theme="pop"] .service-tabs button {
	border-color: #dec4eb;
	background: #ffffff;
	color: #654d70;
}

html[data-es-audience-theme="pop"] .service-tabs button.active,
html[data-es-audience-theme="pop"] .service-tabs button:hover,
html[data-es-audience-theme="pop"] .region-tabs button.active {
	border-color: transparent;
	background: linear-gradient(110deg, #ff3cac, #7b2cff);
	color: #ffffff;
}

html[data-es-audience-theme="pop"] .service-panel {
	border: 2px solid rgb(123 44 255 / 15%);
	background: #ffffff;
}

html[data-es-audience-theme="pop"] .service-panel h3 {
	color: #5e238e;
}

html[data-es-audience-theme="pop"] .service-illustration,
html[data-es-audience-theme="pop"] .service-2,
html[data-es-audience-theme="pop"] .service-3,
html[data-es-audience-theme="pop"] .service-4 {
	background: linear-gradient(145deg, #ffe1f2 0%, #ffefb8 45%, #dff8ff 100%);
}

html[data-es-audience-theme="pop"] .parcel {
	color: #7b2cff;
	box-shadow: 0 30px 65px rgb(123 44 255 / 22%);
}

html[data-es-audience-theme="pop"] .tracking-card {
	background:
		radial-gradient(circle at 85% 20%, rgb(0 194 255 / 30%), transparent 25%),
		linear-gradient(135deg, #4e167d, #a51f9b 55%, #ff4c71);
	box-shadow: 0 32px 75px rgb(91 24 139 / 28%);
}

html[data-es-audience-theme="pop"] .tracking-card form button {
	background: linear-gradient(135deg, #ff7a00, #ff3cac);
}

html[data-es-audience-theme="pop"] .network-section {
	background:
		radial-gradient(circle at 10% 20%, rgb(255 60 172 / 18%), transparent 22%),
		linear-gradient(135deg, #e3faff, #f4e8ff 52%, #fff4ca);
}

html[data-es-audience-theme="pop"] .network-map {
	border-color: rgb(123 44 255 / 18%);
	background-color: rgb(255 255 255 / 66%);
	background-image: radial-gradient(rgb(123 44 255 / 18%) 1px, transparent 1px);
}

html[data-es-audience-theme="pop"] .map-pin {
	background: #ff3cac;
	box-shadow: 0 0 0 7px rgb(255 60 172 / 16%);
}

html[data-es-audience-theme="pop"] .agency-finder {
	border: 2px solid rgb(123 44 255 / 12%);
}

html[data-es-audience-theme="pop"] .experience-section {
	background:
		radial-gradient(circle at 10% 10%, rgb(255 201 40 / 20%), transparent 24%),
		radial-gradient(circle at 90% 85%, rgb(0 194 255 / 22%), transparent 25%),
		linear-gradient(135deg, #35105c, #71198c 52%, #c72c86);
}

html[data-es-audience-theme="pop"] .experience-grid article {
	border-color: rgb(255 255 255 / 20%);
	background: rgb(255 255 255 / 9%);
}

html[data-es-audience-theme="pop"] .experience-grid article:nth-child(2) {
	background: rgb(0 194 255 / 13%);
}

html[data-es-audience-theme="pop"] .experience-grid article:nth-child(3) {
	background: rgb(255 201 40 / 13%);
}

html[data-es-audience-theme="pop"] .faq-list article > button i {
	background: linear-gradient(135deg, #ffe0f2, #e9dbff);
	color: #7b2cff;
}

html[data-es-audience-theme="pop"] .resource-grid article {
	border: 1px solid rgb(123 44 255 / 10%);
	box-shadow: 0 16px 42px rgb(123 44 255 / 10%);
}

html[data-es-audience-theme="pop"] .resource-art {
	background: linear-gradient(135deg, #ffddf1, #ffc1e4);
}

html[data-es-audience-theme="pop"] .resource-2 {
	background: linear-gradient(135deg, #dff8ff, #aeeeff);
}

html[data-es-audience-theme="pop"] .resource-3 {
	background: linear-gradient(135deg, #fff3b3, #ffdc54);
}

html[data-es-audience-theme="pop"] .stay-section {
	background:
		radial-gradient(circle at 90% 20%, rgb(255 60 172 / 23%), transparent 25%),
		linear-gradient(120deg, #dff9ff, #fff1bf 48%, #ffe0f2);
}

html[data-es-audience-theme="pop"] .stay-section h2 {
	color: #4c176f;
}

html[data-es-audience-theme="pop"] footer {
	border-top: 3px solid transparent;
	background:
		linear-gradient(#fffdfb, #fffdfb) padding-box,
		linear-gradient(90deg, #ff3cac, #ff7a00, #00c2ff, #7b2cff) border-box;
}

html[data-es-audience-theme="pop"] .request-modal {
	border: 2px solid rgb(123 44 255 / 18%);
	background: #fffdfb;
}

html[data-es-audience-theme="pop"] .request-modal h2 {
	color: #5e238e;
}

html[data-es-audience-theme="pop"] .consent-banner {
	border-color: rgb(255 60 172 / 30%);
	box-shadow: 0 24px 70px rgb(123 44 255 / 18%);
}

html[data-es-audience-theme="pop"] .es-feedback {
	--es-feedback-turquoise: #ff3cac;
	--es-feedback-turquoise-dark: #7b2cff;
	--es-feedback-aqua: #fff0f8;
	--es-feedback-yellow: #ffc928;
}

html[data-es-audience-theme="pop"] .es-tarifs {
	--es-tarifs-turquoise: #ff3cac;
	--es-tarifs-turquoise-dark: #7b2cff;
	--es-tarifs-yellow: #ffc928;
	--es-tarifs-aqua: #fff0f8;
	--es-tarifs-soft: #fff6d9;
}

html[data-es-audience-theme="pop"] .es-tarifs__hero h1 {
	background: linear-gradient(90deg, #7b2cff, #ff3cac, #ff7a00);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

/* ---------------------------------------------------------
   GEN Z — dark, neon, playful, mobile-first
   --------------------------------------------------------- */
html[data-es-audience-theme="genz"] {
	color-scheme: dark;
	--white: #171222;
	--charcoal: #f8f7ff;
	--navy: #c7ff00;
	--blue: #a855f7;
	--turquoise: #c7ff00;
	--turquoise-dark: #d9ff57;
	--yellow: #ff4fd8;
	--aqua: #21192f;
	--soft: #100c19;
	--line: #3b304b;
	--gray: #c2bbcd;
	--shadow: 0 28px 80px rgb(0 0 0 / 34%);
}

html[data-es-audience-theme="genz"] body {
	background:
		radial-gradient(circle at 15% 0%, rgb(168 85 247 / 16%), transparent 25%),
		#0b0812;
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .site-header {
	border-bottom: 1px solid #2d243a;
	background: rgb(11 8 18 / 94%);
	box-shadow: 0 12px 38px rgb(0 0 0 / 24%);
	backdrop-filter: blur(16px);
}

html[data-es-audience-theme="genz"] .brand {
	padding: 5px 10px;
	border-radius: 12px;
	background: #f8f7ff;
}

html[data-es-audience-theme="genz"] .nav > a {
	color: #f8f7ff;
	font-weight: 700;
}

html[data-es-audience-theme="genz"] .nav > a::after {
	height: 3px;
	background: #c7ff00;
	box-shadow: 0 0 12px rgb(199 255 0 / 70%);
}

html[data-es-audience-theme="genz"] .menu-toggle span {
	background: #f8f7ff;
}

html[data-es-audience-theme="genz"] .language-switcher,
html[data-es-audience-theme="genz"] .language-switcher button {
	color: #8f849d;
}

html[data-es-audience-theme="genz"] .language-switcher button.active {
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .header-cta,
html[data-es-audience-theme="genz"] .button-primary {
	border-color: #c7ff00;
	background: #c7ff00;
	box-shadow: 0 0 30px rgb(199 255 0 / 23%);
	color: #0b0812;
}

html[data-es-audience-theme="genz"] .button-outline {
	border-color: #a855f7;
	background: #171222;
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .hero {
	background:
		linear-gradient(rgb(255 255 255 / 3%) 1px, transparent 1px),
		linear-gradient(90deg, rgb(255 255 255 / 3%) 1px, transparent 1px),
		radial-gradient(circle at 20% 25%, rgb(168 85 247 / 25%), transparent 26%),
		radial-gradient(circle at 82% 72%, rgb(255 79 216 / 18%), transparent 24%),
		#0b0812;
	background-size: 30px 30px, 30px 30px, auto, auto, auto;
}

html[data-es-audience-theme="genz"] .eyebrow,
html[data-es-audience-theme="genz"] .section-kicker {
	display: inline-flex;
	padding: 7px 11px;
	border: 1px solid #514064;
	border-radius: 999px;
	background: #171222;
	color: #c7ff00;
	letter-spacing: .1em;
}

html[data-es-audience-theme="genz"] .hero h1 {
	color: #f8f7ff;
	text-shadow: 0 0 42px rgb(168 85 247 / 28%);
}

html[data-es-audience-theme="genz"] .hero h1 em {
	color: #c7ff00;
	text-shadow: 0 0 24px rgb(199 255 0 / 32%);
}

html[data-es-audience-theme="genz"] .hero-lead,
html[data-es-audience-theme="genz"] .section-lead {
	color: #c2bbcd;
}

html[data-es-audience-theme="genz"] .bubble {
	border-color: rgb(168 85 247 / 22%);
}

html[data-es-audience-theme="genz"] .bubble-b {
	border-color: rgb(199 255 0 / 17%);
}

html[data-es-audience-theme="genz"] .bubble-c {
	border-color: rgb(255 79 216 / 17%);
}

html[data-es-audience-theme="genz"] .phone {
	border-color: #30233e;
	background: #f8f7ff;
	box-shadow: 0 0 0 1px #a855f7, 0 35px 100px rgb(168 85 247 / 28%);
	color: #171222;
}

html[data-es-audience-theme="genz"] .phone::before {
	background: #171222;
}

html[data-es-audience-theme="genz"] .phone-top,
html[data-es-audience-theme="genz"] .phone-step,
html[data-es-audience-theme="genz"] .phone-title {
	color: #171222;
}

html[data-es-audience-theme="genz"] .phone-title strong {
	color: #6d28d9;
}

html[data-es-audience-theme="genz"] .phone-title small {
	color: #5f536b;
}

html[data-es-audience-theme="genz"] .phone-step.done > span {
	border-color: #6d28d9;
	background: #6d28d9;
}

html[data-es-audience-theme="genz"] .phone-step.done > i {
	background: #ff4fd8;
}

html[data-es-audience-theme="genz"] .floating-proof {
	border-color: #4f3e61;
	background: rgb(23 18 34 / 94%);
	box-shadow: 0 15px 45px rgb(0 0 0 / 35%);
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .floating-proof span {
	background: #2b2039;
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .all-in-one,
html[data-es-audience-theme="genz"] .faq-section {
	background: #0b0812;
}

html[data-es-audience-theme="genz"] .all-in-one > p:first-child {
	color: #ff4fd8;
}

html[data-es-audience-theme="genz"] .all-in-one h2,
html[data-es-audience-theme="genz"] .services-section > h2,
html[data-es-audience-theme="genz"] .faq-section > h2,
html[data-es-audience-theme="genz"] .resources-section > h2,
html[data-es-audience-theme="genz"] .tracking-copy h2,
html[data-es-audience-theme="genz"] .network-copy h2,
html[data-es-audience-theme="genz"] .experience-section h2 {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .benefit-grid article {
	padding: 12px;
	border: 1px solid #2f263b;
	border-radius: 22px;
	background: #100c19;
}

html[data-es-audience-theme="genz"] .benefit-grid article:nth-child(odd) {
	transform: rotate(-.45deg);
}

html[data-es-audience-theme="genz"] .benefit-grid article:nth-child(even) {
	transform: rotate(.45deg);
}

html[data-es-audience-theme="genz"] .benefit-art {
	border-radius: 22px;
	background: linear-gradient(145deg, #542080, #261437);
}

html[data-es-audience-theme="genz"] .benefit-art.art-2 {
	background: linear-gradient(145deg, #123b3b, #102426);
}

html[data-es-audience-theme="genz"] .benefit-art.art-3 {
	background: linear-gradient(145deg, #4d4520, #24200d);
}

html[data-es-audience-theme="genz"] .benefit-art.art-4 {
	background: linear-gradient(145deg, #4b143d, #281020);
}

html[data-es-audience-theme="genz"] .benefit-art svg {
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .benefit-grid h3 {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .benefit-grid p {
	color: #bbb3c7;
}

html[data-es-audience-theme="genz"] .services-section,
html[data-es-audience-theme="genz"] .resources-section {
	background:
		radial-gradient(circle at 85% 15%, rgb(168 85 247 / 14%), transparent 25%),
		#100c19;
}

html[data-es-audience-theme="genz"] .service-tabs button,
html[data-es-audience-theme="genz"] .region-tabs button {
	border-color: #40334f;
	background: #171222;
	color: #c2bbcd;
}

html[data-es-audience-theme="genz"] .service-tabs button.active,
html[data-es-audience-theme="genz"] .service-tabs button:hover,
html[data-es-audience-theme="genz"] .region-tabs button.active {
	border-color: #c7ff00;
	background: #c7ff00;
	color: #0b0812;
}

html[data-es-audience-theme="genz"] .service-panel {
	border: 1px solid #3f3150;
	background: #171222;
	box-shadow: 0 28px 75px rgb(0 0 0 / 38%);
}

html[data-es-audience-theme="genz"] .service-panel h3 {
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .service-panel-copy > p,
html[data-es-audience-theme="genz"] .service-panel li {
	color: #c2bbcd;
}

html[data-es-audience-theme="genz"] .service-panel li::before,
html[data-es-audience-theme="genz"] .text-link {
	color: #ff4fd8;
}

html[data-es-audience-theme="genz"] .service-illustration,
html[data-es-audience-theme="genz"] .service-2,
html[data-es-audience-theme="genz"] .service-3,
html[data-es-audience-theme="genz"] .service-4 {
	background:
		radial-gradient(circle at 75% 20%, rgb(199 255 0 / 18%), transparent 23%),
		linear-gradient(145deg, #59228a, #24152f 55%, #571542);
}

html[data-es-audience-theme="genz"] .parcel {
	background: #0b0812;
	box-shadow: 0 0 0 1px #c7ff00, 0 25px 65px rgb(0 0 0 / 40%);
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .parcel::after {
	background: #ff4fd8;
}

html[data-es-audience-theme="genz"] .service-illustration > b {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .tracking-section {
	background: #0b0812;
}

html[data-es-audience-theme="genz"] .tracking-copy > p:last-child,
html[data-es-audience-theme="genz"] .network-copy > p:not(.section-kicker),
html[data-es-audience-theme="genz"] .stay-section p:not(.section-kicker) {
	color: #c2bbcd;
}

html[data-es-audience-theme="genz"] .tracking-card {
	border: 1px solid #c7ff00;
	background:
		linear-gradient(rgb(255 255 255 / 4%) 1px, transparent 1px),
		linear-gradient(90deg, rgb(255 255 255 / 4%) 1px, transparent 1px),
		#100c19;
	background-size: 24px 24px;
	box-shadow: 0 0 50px rgb(199 255 0 / 12%);
}

html[data-es-audience-theme="genz"] .tracking-card form > div {
	background: #f8f7ff;
}

html[data-es-audience-theme="genz"] .tracking-card input {
	color: #171222;
}

html[data-es-audience-theme="genz"] .tracking-card form button {
	background: #c7ff00;
	color: #0b0812;
}

html[data-es-audience-theme="genz"] .network-section {
	background:
		radial-gradient(circle at 8% 12%, rgb(199 255 0 / 10%), transparent 20%),
		linear-gradient(145deg, #110d1a, #21142c);
}

html[data-es-audience-theme="genz"] .network-map {
	border-color: #473757;
	background-color: rgb(23 18 34 / 75%);
	background-image: radial-gradient(rgb(199 255 0 / 17%) 1px, transparent 1px);
}

html[data-es-audience-theme="genz"] .map-shape {
	border-color: rgb(168 85 247 / 45%);
}

html[data-es-audience-theme="genz"] .map-pin {
	border-color: #171222;
	background: #c7ff00;
	box-shadow: 0 0 0 7px rgb(199 255 0 / 13%);
}

html[data-es-audience-theme="genz"] .map-pin b {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .agency-finder {
	border: 1px solid #40334f;
	background: #171222;
	box-shadow: 0 28px 75px rgb(0 0 0 / 34%);
}

html[data-es-audience-theme="genz"] .agency-search {
	border-color: #40334f;
	background: #100c19;
}

html[data-es-audience-theme="genz"] .agency-search input {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .agency-list {
	border-color: #40334f;
}

html[data-es-audience-theme="genz"] .agency-list article {
	border-color: #40334f;
}

html[data-es-audience-theme="genz"] .agency-list h3 {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .agency-list p,
html[data-es-audience-theme="genz"] .data-note {
	color: #aaa1b8;
}

html[data-es-audience-theme="genz"] .experience-section {
	background:
		radial-gradient(circle at 90% 15%, rgb(255 79 216 / 14%), transparent 23%),
		#0d0914;
}

html[data-es-audience-theme="genz"] .experience-grid article {
	border-color: #433452;
	background: #171222;
}

html[data-es-audience-theme="genz"] .experience-grid article:nth-child(1),
html[data-es-audience-theme="genz"] .experience-grid article:nth-child(4) {
	box-shadow: inset 0 3px 0 #c7ff00;
}

html[data-es-audience-theme="genz"] .experience-grid article:nth-child(2),
html[data-es-audience-theme="genz"] .experience-grid article:nth-child(3) {
	box-shadow: inset 0 3px 0 #ff4fd8;
}

html[data-es-audience-theme="genz"] .experience-grid span {
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .experience-grid p {
	color: #bbb3c7;
}

html[data-es-audience-theme="genz"] .faq-list {
	border-color: #3b304b;
}

html[data-es-audience-theme="genz"] .faq-list article {
	border-color: #3b304b;
}

html[data-es-audience-theme="genz"] .faq-list article > button {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .faq-list article > button i {
	background: #21172e;
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .faq-list article > div p {
	color: #bbb3c7;
}

html[data-es-audience-theme="genz"] .resource-grid article {
	border: 1px solid #3f3150;
	background: #171222;
	box-shadow: 0 18px 50px rgb(0 0 0 / 28%);
}

html[data-es-audience-theme="genz"] .resource-art {
	background: linear-gradient(145deg, #542080, #25142f);
}

html[data-es-audience-theme="genz"] .resource-2 {
	background: linear-gradient(145deg, #164047, #101f24);
}

html[data-es-audience-theme="genz"] .resource-3 {
	background: linear-gradient(145deg, #4b173d, #21101d);
}

html[data-es-audience-theme="genz"] .resource-art svg {
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .resource-grid h3 {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .resource-grid p {
	color: #bbb3c7;
}

html[data-es-audience-theme="genz"] .stay-section {
	background:
		linear-gradient(rgb(255 255 255 / 4%) 1px, transparent 1px),
		linear-gradient(90deg, rgb(255 255 255 / 4%) 1px, transparent 1px),
		linear-gradient(135deg, #221330, #0f0b17);
	background-size: 28px 28px, 28px 28px, auto;
}

html[data-es-audience-theme="genz"] .stay-section h2 {
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] footer {
	border-color: #33263f;
	background: #09060e;
	color: #c2bbcd;
}

html[data-es-audience-theme="genz"] .footer-brand img {
	box-sizing: content-box;
	padding: 8px 12px;
	border-radius: 12px;
	background: #f8f7ff;
}

html[data-es-audience-theme="genz"] footer strong {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] footer > div:not(.footer-brand),
html[data-es-audience-theme="genz"] footer button,
html[data-es-audience-theme="genz"] .footer-brand p {
	color: #aaa1b8;
}

html[data-es-audience-theme="genz"] .copyright {
	border-color: #33263f;
	color: #766d82;
}

html[data-es-audience-theme="genz"] .modal-backdrop {
	background: rgb(4 2 8 / 84%);
}

html[data-es-audience-theme="genz"] .request-modal {
	border: 1px solid #4a3859;
	background: #171222;
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .request-modal h2 {
	color: #c7ff00;
}

html[data-es-audience-theme="genz"] .request-modal > p:not(.section-kicker),
html[data-es-audience-theme="genz"] .request-modal label {
	color: #bbb3c7;
}

html[data-es-audience-theme="genz"] .request-modal input,
html[data-es-audience-theme="genz"] .request-modal textarea,
html[data-es-audience-theme="genz"] .request-modal select,
html[data-es-audience-theme="genz"] .consent-check {
	border-color: #433452;
	background: #100c19;
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .consent-banner {
	border-color: #514064;
	background: rgb(16 12 25 / 97%);
	box-shadow: 0 24px 70px rgb(0 0 0 / 40%);
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .consent-banner p {
	color: #bbb3c7;
}

html[data-es-audience-theme="genz"] .consent-necessary {
	border-color: #a855f7;
	background: #171222;
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .consent-accept {
	border-color: #c7ff00;
	background: #c7ff00;
	color: #0b0812;
}

html[data-es-audience-theme="genz"] .es-content-shell h1,
html[data-es-audience-theme="genz"] .es-content-shell h2 {
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .es-content-shell .entry-content {
	color: #c2bbcd;
}

html[data-es-audience-theme="genz"] .es-feedback {
	--es-feedback-turquoise: #c7ff00;
	--es-feedback-turquoise-dark: #d9ff57;
	--es-feedback-aqua: #21172e;
	--es-feedback-charcoal: #f8f7ff;
	--es-feedback-gray: #bbb3c7;
	--es-feedback-light: #100c19;
	--es-feedback-yellow: #ff4fd8;
	--es-feedback-white: #171222;
}

html[data-es-audience-theme="genz"] .es-feedback__dialog,
html[data-es-audience-theme="genz"] .es-feedback__rating-card,
html[data-es-audience-theme="genz"] .es-feedback__field input,
html[data-es-audience-theme="genz"] .es-feedback__field textarea {
	background: #171222;
}

html[data-es-audience-theme="genz"] .es-feedback__rating input:checked + .es-feedback__rating-card {
	background: #21172e;
}

html[data-es-audience-theme="genz"] .es-feedback__notice--error {
	border-color: #ff4fd8;
	background: #2a1626;
	color: #f8f7ff;
}

html[data-es-audience-theme="genz"] .es-feedback__trigger,
html[data-es-audience-theme="genz"] .es-feedback__submit {
	color: #0b0812;
}

html[data-es-audience-theme="genz"] .es-tarifs {
	--es-tarifs-white: #171222;
	--es-tarifs-charcoal: #f8f7ff;
	--es-tarifs-turquoise: #c7ff00;
	--es-tarifs-turquoise-dark: #d9ff57;
	--es-tarifs-yellow: #ff4fd8;
	--es-tarifs-aqua: #21172e;
	--es-tarifs-soft: #100c19;
	--es-tarifs-gray: #bbb3c7;
}

html[data-es-audience-theme="genz"] .es-tarifs__card {
	border-color: #40334f;
	background: #171222;
	box-shadow: 0 20px 60px rgb(0 0 0 / 28%);
}

html[data-es-audience-theme="genz"] .es-tarifs__card--featured {
	border-color: #c7ff00;
	box-shadow: 0 0 45px rgb(199 255 0 / 10%);
}

html[data-es-audience-theme="genz"] .es-tarifs__button {
	color: #0b0812 !important;
}

html[data-es-audience-theme="genz"] .es-tarifs__button--outline {
	color: #d9ff57 !important;
}

html[data-es-audience-theme="genz"] .es-tarifs__button--outline:hover {
	color: #0b0812 !important;
}

/* Mobile placement and theme-specific menu */
@media (max-width: 820px) {
	html[data-es-audience-theme="genz"] .nav {
		border-bottom: 1px solid #33263f;
		background: #100c19;
		box-shadow: 0 25px 50px rgb(0 0 0 / 38%);
	}

	html[data-es-audience-theme="genz"] .nav > a {
		border-color: #33263f;
	}

	html[data-es-audience-theme="pop"] .nav {
		background: #fffdfb;
		box-shadow: 0 25px 50px rgb(123 44 255 / 16%);
	}
}

@media (max-width: 560px) {
	.es-audience-switcher {
		left: 12px;
		bottom: 12px;
	}

	.es-audience-switcher__trigger {
		width: 48px;
		padding: 8px;
		justify-content: center;
	}

	.es-audience-switcher__trigger-label {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
		white-space: nowrap;
	}

	.es-audience-switcher__panel {
		width: min(330px, calc(100vw - 24px));
	}

	html[data-es-audience-theme="genz"] .benefit-grid article:nth-child(odd),
	html[data-es-audience-theme="genz"] .benefit-grid article:nth-child(even) {
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.es-audience-switcher *,
	.es-audience-switcher *::before,
	.es-audience-switcher *::after,
	html[data-es-audience-theme="pop"] *,
	html[data-es-audience-theme="pop"] *::before,
	html[data-es-audience-theme="pop"] *::after,
	html[data-es-audience-theme="genz"] *,
	html[data-es-audience-theme="genz"] *::before,
	html[data-es-audience-theme="genz"] *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
	}
}
