@charset "UTF-8";
:root {
  --wp--preset--font-size--xs: clamp(1.00rem, 0.85rem + 0.75vw, 1.25rem);
  --wp--preset--font-size--sm: clamp(1.125rem, 0.90rem + 1.10vw, 1.50rem);
  --wp--preset--font-size--md: clamp(1.25rem, 1.00rem + 1.25vw, 1.75rem);
  --wp--preset--font-size--lg: clamp(1.75rem, 1.30rem + 2.25vw, 3.00rem);
  --wp--preset--font-size--xl: clamp(2.25rem, 1.50rem + 3.00vw, 3.50rem);
  --wp--preset--font-size--xxl: clamp(3.00rem, 2.00rem + 4.00vw, 4.50rem);
  --wp--custom--line-height--body: 1.6;
  --wp--preset--spacing--0: 0px;
  --wp--preset--spacing--10: clamp(0.5rem, 0.4rem + 0.5vw, 0.75rem);
  --wp--preset--spacing--20: clamp(1rem, 0.8rem + 1vw, 1.25rem);
  --wp--preset--spacing--40: clamp(1.5rem, 1rem + 2.5vw, 2.5rem);
  --wp--preset--spacing--60: clamp(2rem, 1rem + 5vw, 3rem);
  --wp--preset--spacing--80: clamp(3rem, -2rem + 15vw, 5rem);
  --wp--preset--spacing--100: clamp(5rem, 0rem + 20vw, 8rem);
  --wp--style--global--content-size: 650px;
  --wp--style--global--wide-size: 1140px;
  --width-narrow: 960px;
  --width-default: 1140px;
  --width-wide: 1320px;
  --wp--custom--image-size--square-sm: 200px;
  --wp--custom--image-size--square-md: 400px;
  --wp--custom--image-size--square-lg: 800px;
  --wp--custom--image-size--landscape-43: 800px;
  --wp--custom--image-size--landscape-169: 1280px;
  --wp--custom--image-size--landscape-21: 1400px;
  --wp--custom--image-size--portrait-23: 800px;
  --wp--custom--image-size--portrait-34: 600px;
  --wp--custom--image-size--portrait-916: 720px;
  --wp--custom--image-size--full-width: 1920px;
  --wp--custom--image-size--ratio-square: 1 / 1;
  --wp--custom--image-size--ratio-portrait-23: 2 / 3;
  --wp--custom--image-size--ratio-portrait-34: 3 / 4;
  --wp--custom--image-size--ratio-portrait-916: 9 / 16;
  --wp--custom--image-size--ratio-landscape-21: 2 / 1;
  --wp--custom--image-size--ratio-landscape-32: 3 / 2;
  --wp--custom--image-size--ratio-landscape-43: 4 / 3;
  --wp--custom--image-size--ratio-landscape-169: 16 / 9;
  --wp--custom--image--fit-cover: cover;
  --wp--custom--image--fit-contain: contain;
  --wp--custom--image--anchor-top: top center;
  --wp--custom--image--anchor-center: center center;
  --wp--custom--border-radius--none: var(--wp--preset--spacing--0);
  --wp--custom--border-radius--xs: var(--wp--preset--spacing--10);
  --wp--custom--border-radius--sm: var(--wp--preset--spacing--20);
  --wp--custom--border-radius--md: var(--wp--preset--spacing--40);
  --wp--custom--border-radius--lg: var(--wp--preset--spacing--60);
  --wp--custom--border-radius--full: 9999px;
  --wp--custom--border-radius--round: 50%;
  --wide: var(--wp--style--global--wide-size);
  --content-size: var(--wp--style--global--content-size);
  --content-narrow: calc(var(--wp--style--global--wide-size) * 0.93);
  --content-wide: calc(var(--wp--style--global--wide-size) * 1.05);
  --content-max: calc(var(--wp--style--global--wide-size) * 1.18);
  --content-2xl: 1920px;
  --content-2xl: 1680px;
  --content-3xl: 2000px;
  --grid-gap-row: var(--wp--preset--spacing--10, 0.5rem);
  --grid-gap-column: var(--wp--preset--spacing--20, 1rem);
  --grid-column-gap: var(--grid-gap-column);
  --grid-row-gap: var(--grid-gap-row);
  --grid-gap: var(--grid-gap-row) var(--grid-gap-column);
  --space-0: 0px;
  --space-xs: var(--wp--preset--spacing--10);
  --space-sm: var(--wp--preset--spacing--20);
  --space-md: var(--wp--preset--spacing--40);
  --space-lg: var(--wp--preset--spacing--60);
  --space-xl: var(--wp--preset--spacing--80);
  --space-xxl: var(--wp--preset--spacing--100);
  --fz-xs: var(--wp--preset--font-size--xs);
  --fz-sm: var(--wp--preset--font-size--sm);
  --fz-md: var(--wp--preset--font-size--md);
  --radius-none: 0;
  --radius-xs: var(--wp--preset--spacing--10);
  --radius-sm: var(--wp--preset--spacing--20);
  --radius-md: var(--wp--preset--spacing--40);
  --radius-lg: var(--wp--preset--spacing--60);
  --radius-full: var(--wp--custom--border-radius--full);
  --radius-round: var(--wp--custom--border-radius--round);
  --sh-none: none;
  --sh-light: 0 0 0 1px rgba(15, 23, 42, 0.04), 0 2px 4px 0 rgba(15, 23, 42, 0.12);
  --sh-medium: 0 0 0 1px rgba(15, 23, 42, 0.05), 0 5px 12px -2px rgba(15, 23, 42, 0.14), 0 2px 5px -1px rgba(15, 23, 42, 0.10);
  --sh-strong: 0 0 0 1px rgba(15, 23, 42, 0.06), 0 12px 24px -4px rgba(15, 23, 42, 0.22), 0 5px 10px -3px rgba(15, 23, 42, 0.16);
  --sh-inner: inset 0 2px 4px 0 rgba(0, 0, 0, 0.05);
  --font-titles: var(--wp--preset--font-family--titles);
  --font-body: var(--wp--preset--font-family--body);
  --font-system: var(--wp--preset--font-family--system-ui);
  --stack-gap: var(--space-md);
  --section-px: var(--wp--preset--spacing--20, 1rem);
  --section-pt: var(--wp--preset--spacing--60, 4rem);
  --section-pb: var(--wp--preset--spacing--60, 4rem);
  --header-tolerance-down: var(--wp--custom--header-tolerance-down, 20);
  --header-tolerance-up: var(--wp--custom--header-tolerance-up, 10);
  --parallax-decalage:200px;
}

/*
$breakpoints-map: (
  'xs':  480px,
  'sm':  600px,
  'md':  782px,
  'lg':  920px,
  'xl':  1280px,
  'max': 1440px,
  '2xl': 1920px,  // ← nouveau
);*/
/* Map pour tes mixins de génération de classes */
/*
$content-widths: (
  "content-narrow": 860px,   // défaut jusqu'à xl
  "content-wide":   1080px,  // xl → max (1280px–1440px)
  "content-max":    1200px,  // au-delà de 1440px
  '2xl': 1920px,
);*/
/* Génération automatique de classes utilitaires */
.u-ratio-square {
  aspect-ratio: var(--wp--custom--image-size--ratio-square);
  width: 100%;
}
.u-ratio-square img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.u-ratio-169 {
  aspect-ratio: var(--wp--custom--image-size--ratio-landscape-169);
  width: 100%;
}
.u-ratio-169 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.u-ratio-43 {
  aspect-ratio: var(--wp--custom--image-size--ratio-landscape-43);
  width: 100%;
}
.u-ratio-43 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.u-ratio-32 {
  aspect-ratio: var(--wp--custom--image-size--ratio-landscape-32);
  width: 100%;
}
.u-ratio-32 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.u-ratio-21 {
  aspect-ratio: var(--wp--custom--image-size--ratio-landscape-21);
  width: 100%;
}
.u-ratio-21 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.u-ratio-34 {
  aspect-ratio: var(--wp--custom--image-size--ratio-portrait-34);
  width: 100%;
}
.u-ratio-34 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.u-ratio-916 {
  aspect-ratio: var(--wp--custom--image-size--ratio-portrait-916);
  width: 100%;
}
.u-ratio-916 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.u-ratio-23 {
  aspect-ratio: var(--wp--custom--image-size--ratio-portrait-23);
  width: 100%;
}
.u-ratio-23 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

:root {
  --widgets-spacing: var(--grid-gap-row, var(--wp--preset--spacing--10));
  --widgets-spacing-row: var(--grid-gap-row, var(--wp--preset--spacing--10));
  --widgets-spacing-column: var(--grid-gap-column, var(--wp--preset--spacing--20));
  --background-transition: 0.3s ease;
  --border-transition: 0.3s ease;
  --e-con-transform-transition-duration: 0s;
  --content-width: min(100%, var(--container-max-width, 1280px));
  --e-con-width: var(--content-width, 1000px);
  --e-con-max-width: var(--container-max-width, 1000px);
  --container-default-padding-top: 0;
  --container-default-padding-bottom: 0;
  --container-default-padding-left: 0;
  --container-default-padding-right: 0;
  --wp--style--block-gap: var(--grid-gap-row, var(--wp--preset--spacing--10));
  --e-theme-heading: var(--wp--preset--color--brand);
  --e-theme-bg: var(--wp--preset--color--white);
  --e-theme-text-color: var(--wp--preset--color--text);
  --e-theme-text: var(--wp--preset--color--text);
  --e-theme-accent: var(--wp--preset--color--brand);
  --color-white: var(--wp--preset--color--white);
  --color-brand: var(--wp--preset--color--brand);
  --color-text: var(--wp--preset--color--text);
  --color-dark: var(--wp--preset--color--dark);
}

body .elementor-widget-image, body .elementor-widget-site-logo {
  position: relative;
  display: block;
  overflow: hidden;
  line-height: 0;
  border-radius: var(--image-radius, 0px);
}
body .elementor-widget-image.img-broken, body .elementor-widget-site-logo.img-broken {
  position: relative !important;
  background-color: color-mix(in srgb, var(--wp--preset--color--brand-light-90) 20%, transparent);
  min-height: 80px;
}
body .elementor-widget-image.img-broken img, body .elementor-widget-site-logo.img-broken img {
  contain-intrinsic-size: auto !important;
  min-height: 0 !important;
  height: 0 !important;
  opacity: 0;
}
body .elementor-widget-image.img-broken::before, body .elementor-widget-site-logo.img-broken::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Crect x='2' y='2' width='44' height='44' rx='4' fill='none' stroke='%23a0aab4' stroke-width='2'/%3E%3Ccircle cx='15' cy='16' r='4' fill='none' stroke='%23a0aab4' stroke-width='2'/%3E%3Cpolyline points='2,46 16,30 26,38 36,24 46,36' fill='none' stroke='%23a0aab4' stroke-width='2'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  margin: 3%;
  scale: 0.5;
}
body .elementor-widget-image img, body svg, body picture img,
body .elementor-widget-image svg, body .elementor-widget-html svg {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
body .is-recolor .elementor img,
body .is-recolor .elementor img, body .is-recolor .elementor svg, body .is-recolor .elementor picture img,
body .is-recolor .elementor .elementor-widget-image svg,
body .is-recolor .elementor .elementor-widget-html svg {
  filter: var(--b-icon-filter);
  opacity: var(--b-svg-opacity);
}
body .is-recolor .elementor .tm-card-item img,
body .is-recolor .elementor .tm-card-item .elementor-widget-image svg,
body .is-recolor .elementor .tm-card-item .elementor-widget-html svg {
  filter: none;
  opacity: 1;
}
body .is-recolor-fill .elementor svg,
body .is-recolor-fill .elementor .elementor-widget-image svg *,
body .is-recolor-fill .elementor .elementor-widget-html svg * {
  fill: var(--b-svg-fill);
}
body .is-recolor-fill .elementor .tm-card-item svg *,
body .is-recolor-fill .elementor .tm-card-item .elementor-widget-image svg *,
body .is-recolor-fill .elementor .tm-card-item .elementor-widget-html svg * {
  fill: unset;
}

.tm-card-item {
  display: flex;
  flex-direction: column;
  position: relative;
  box-sizing: border-box;
  height: 100%;
  width: 100%;
  min-width: 0;
}
.tm-card-item .card-title {
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: auto;
}
.tm-card-item .card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  z-index: 2;
  min-width: 0;
  gap: 10px;
}
.tm-card-item .card-body .card-description {
  flex: 1 0 auto;
}
.tm-card-item .card-body p:first-child {
  margin-top: 0;
}
.tm-card-item .card-body p:last-child {
  margin-bottom: 0;
}
.tm-card-item .card-body p:only-child {
  margin-top: 0;
  margin-bottom: 0;
}
.tm-card-item .card-list-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.2em;
}
.tm-card-item .card-list-icon svg, .tm-card-item .card-list-icon i {
  width: 1em;
  height: 1em;
}
.tm-card-item .card-list-icon svg path, .tm-card-item .card-list-icon svg circle, .tm-card-item .card-list-icon svg rect, .tm-card-item .card-list-icon svg polygon, .tm-card-item .card-list-icon svg use, .tm-card-item .card-list-icon i path, .tm-card-item .card-list-icon i circle, .tm-card-item .card-list-icon i rect, .tm-card-item .card-list-icon i polygon, .tm-card-item .card-list-icon i use {
  fill: currentColor;
}
.tm-card-item .card-list {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}
.tm-card-item .card-list .card-list-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding-block: 8px;
}
.tm-card-item .card-list .card-list-text {
  line-height: 1.4;
}
.tm-card-item .card-footer-action {
  margin-top: auto;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  width: var(--card-footer-width, auto);
}

.e-con, .e-con.is-banniere {
  background-color: var(--wp--preset--color--transparent);
  border: none;
  box-shadow: none;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  max-width: none;
}

.e-con {
  width: 100%;
  left: 0;
  margin-left: 0;
  margin-right: 0;
}

.elementor .e-con {
  display: flex;
  flex-wrap: wrap;
  gap: var(--grid-gap, var(--wp--style--block-gap, 0.5rem));
  align-items: center;
}
.elementor .e-con.e-grid:not([class*=grid-]) {
  display: flex;
  flex-wrap: wrap;
  gap: var(--grid-gap, var(--wp--style--block-gap, 1.5rem));
}
.elementor .e-con.e-grid:not([class*=grid-]).is-not-stacked-on-mobile {
  flex-wrap: nowrap;
}
.elementor .e-con.e-grid[class*=grid-] {
  gap: var(--grid-gap, var(--wp--style--block-gap, 1.5rem));
}
:not([class*=grid-]) > .elementor .e-con.e-child {
  min-width: 0;
  align-self: flex-start;
}
:not([class*=grid-]) > .elementor .e-con.e-child[style*=flex-basis] {
  flex-grow: 0;
}
[class*=grid-] > .elementor .e-con.e-child {
  max-width: none;
}

.e-con:not([class*=is-style-]):not([class*=is-style-] *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) {
  --b-bg: var(--wp--preset--color--white);
  --b-bg-alt: var(--wp--preset--color--dark-light-90);
  --b-text: var(--wp--preset--color--text);
  --b-border: var(--wp--preset--color--dark-light-50);
  --b-heading: var(--wp--preset--color--text);
  --b-heading-alt: var(--wp--preset--color--brand);
  --b-link: var(--wp--preset--color--brand);
  --b-link-hover: var(--wp--preset--color--brand-light-60);
  --b-btn-bg: var(--wp--preset--color--brand);
  --b-btn-text: var(--wp--preset--color--white);
  --b-btn-outline: var(--wp--preset--color--brand);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --b-btn-text-hover: var(--wp--preset--color--white);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--brand);
  --b-btn-secondary-outline: var(--wp--preset--color--brand);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-text-hover: var(--wp--preset--color--white);
  --b-svg-fill: var(--wp--preset--color--brand);
  --b-icon-filter: invert(0%) var(--filter-brand);
  --b-svg-opacity: 1;
  background-color: var(--b-bg);
  color: var(--b-text);
  border-color: var(--b-border);
  transition: background-color 0.3s ease, color 0.3s ease;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .e-con, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .e-con-inner,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .e-con,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .e-con-inner {
  background-color: transparent;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) h1:not(.tm-card-item *):not(.tm-accordion-item *), .e-con:not([class*=is-style-]):not([class*=is-style-] *) h2:not(.tm-card-item *):not(.tm-accordion-item *), .e-con:not([class*=is-style-]):not([class*=is-style-] *) h3:not(.tm-card-item *):not(.tm-accordion-item *), .e-con:not([class*=is-style-]):not([class*=is-style-] *) h4:not(.tm-card-item *):not(.tm-accordion-item *), .e-con:not([class*=is-style-]):not([class*=is-style-] *) h5:not(.tm-card-item *):not(.tm-accordion-item *), .e-con:not([class*=is-style-]):not([class*=is-style-] *) h6:not(.tm-card-item *):not(.tm-accordion-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h1:not(.tm-card-item *):not(.tm-accordion-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h2:not(.tm-card-item *):not(.tm-accordion-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h3:not(.tm-card-item *):not(.tm-accordion-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h4:not(.tm-card-item *):not(.tm-accordion-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h5:not(.tm-card-item *):not(.tm-accordion-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h6:not(.tm-card-item *):not(.tm-accordion-item *) {
  color: var(--b-heading);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) h1:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con:not([class*=is-style-]):not([class*=is-style-] *) h2:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con:not([class*=is-style-]):not([class*=is-style-] *) h3:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con:not([class*=is-style-]):not([class*=is-style-] *) h4:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con:not([class*=is-style-]):not([class*=is-style-] *) h5:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con:not([class*=is-style-]):not([class*=is-style-] *) h6:not(.tm-card-item *):not(.tm-accordion-item *) span,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h1:not(.tm-card-item *):not(.tm-accordion-item *) span,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h2:not(.tm-card-item *):not(.tm-accordion-item *) span,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h3:not(.tm-card-item *):not(.tm-accordion-item *) span,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h4:not(.tm-card-item *):not(.tm-accordion-item *) span,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h5:not(.tm-card-item *):not(.tm-accordion-item *) span,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) h6:not(.tm-card-item *):not(.tm-accordion-item *) span {
  color: var(--b-heading-alt);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) p:not([class*=card] *):not(.tm-accordion-item *), .e-con:not([class*=is-style-]):not([class*=is-style-] *) li:not([class*=card] *):not(.tm-accordion-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) p:not([class*=card] *):not(.tm-accordion-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) li:not([class*=card] *):not(.tm-accordion-item *) {
  color: var(--b-text);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *) {
  color: var(--b-link, inherit);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *):hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *):hover {
  color: var(--b-link-hover);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) nav a *,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) nav a *:hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) nav a *:hover {
  color: var(--b-bg);
  background-color: var(--b-heading);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .tm-card-item a:not(.card-link),
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .tm-accordion-item a:not(.card-link),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .tm-card-item a:not(.card-link),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .tm-accordion-item a:not(.card-link) {
  color: inherit;
  text-decoration: none;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *), .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.is-secondary), .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.is-secondary),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.is-secondary),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: var(--b-btn-bg);
  color: var(--b-btn-text);
  border-color: transparent;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.is-secondary):hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.is-secondary):hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.is-secondary), .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.is-secondary),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary),
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.is-secondary),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary),
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.is-secondary):hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover,
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.is-secondary):hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover,
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: var(--b-btn-secondary-bg);
  color: var(--b-btn-secondary-text);
  border-color: var(--b-btn-secondary-outline);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary:hover, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary:hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary:hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline,
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline,
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary:hover, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary:hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline:hover,
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *).is-secondary:hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline:hover,
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) :is(hr, .wp-block-separator, .is-divider),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) :is(hr, .wp-block-separator, .is-divider) {
  background-color: var(--b-text);
  opacity: 0.2;
  height: 1px;
  border: none;
  margin: 2rem auto;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *).is-recolor img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
.e-con:not([class*=is-style-]):not([class*=is-style-] *).is-recolor .wp-block-image svg:not(.tm-card-item *),
.e-con:not([class*=is-style-]):not([class*=is-style-] *).is-recolor .wp-block-html svg:not(.tm-card-item *),
.e-con:not([class*=is-style-]):not([class*=is-style-] *).is-recolor .elementor-widget-image svg:not(.tm-card-item *),
.e-con:not([class*=is-style-]):not([class*=is-style-] *).is-recolor .elementor-widget-html svg:not(.tm-card-item *), body.is-recolor-global .e-con:not([class*=is-style-]):not([class*=is-style-] *) img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
body.is-recolor-global .e-con:not([class*=is-style-]):not([class*=is-style-] *) .wp-block-image svg:not(.tm-card-item *),
body.is-recolor-global .e-con:not([class*=is-style-]):not([class*=is-style-] *) .wp-block-html svg:not(.tm-card-item *),
body.is-recolor-global .e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-widget-image svg:not(.tm-card-item *),
body.is-recolor-global .e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-widget-html svg:not(.tm-card-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *).is-recolor img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *).is-recolor .wp-block-image svg:not(.tm-card-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *).is-recolor .wp-block-html svg:not(.tm-card-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *).is-recolor .elementor-widget-image svg:not(.tm-card-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *).is-recolor .elementor-widget-html svg:not(.tm-card-item *),
body.is-recolor-global .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
body.is-recolor-global .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .wp-block-image svg:not(.tm-card-item *),
body.is-recolor-global .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .wp-block-html svg:not(.tm-card-item *),
body.is-recolor-global .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-widget-image svg:not(.tm-card-item *),
body.is-recolor-global .e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-widget-html svg:not(.tm-card-item *) {
  filter: var(--b-icon-filter);
  opacity: var(--b-svg-opacity);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *).is-recolor-fill .wp-block-image svg *:not(.tm-card-item *),
.e-con:not([class*=is-style-]):not([class*=is-style-] *).is-recolor-fill .wp-block-html svg *:not(.tm-card-item *),
.e-con:not([class*=is-style-]):not([class*=is-style-] *).is-recolor-fill .elementor-widget-image svg *:not(.tm-card-item *),
.e-con:not([class*=is-style-]):not([class*=is-style-] *).is-recolor-fill .elementor-widget-html svg *:not(.tm-card-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *).is-recolor-fill .wp-block-image svg *:not(.tm-card-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *).is-recolor-fill .wp-block-html svg *:not(.tm-card-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *).is-recolor-fill .elementor-widget-image svg *:not(.tm-card-item *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *).is-recolor-fill .elementor-widget-html svg *:not(.tm-card-item *) {
  fill: var(--b-svg-fill);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) body.is-recolor-global .footer-brand img[src$=".svg"].mag-logo,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) body.is-recolor-global .footer-brand img[src$=".svg"].mag-logo {
  filter: var(--b-icon-filter, none);
  opacity: var(--b-svg-opacity, 1);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) body.is-recolor-global .footer-brand .mag-logo svg,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) body.is-recolor-global .footer-brand .mag-logo svg {
  fill: var(--b-svg-fill, currentColor);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .footer-brand img[src$=".svg"].mag-logo,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .footer-brand img[src$=".svg"].mag-logo {
  filter: none;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .footer-brand .mag-logo svg,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .footer-brand .mag-logo svg {
  fill: none;
}

.is-style-switcher-light {
  --b-bg: var(--wp--preset--color--white);
  --b-bg-alt: var(--wp--preset--color--dark-light-90);
  --b-text: var(--wp--preset--color--text);
  --b-border: var(--wp--preset--color--dark-light-50);
  --b-heading: var(--wp--preset--color--text);
  --b-heading-alt: var(--wp--preset--color--brand);
  --b-link: var(--wp--preset--color--brand);
  --b-link-hover: var(--wp--preset--color--brand-light-60);
  --b-btn-bg: var(--wp--preset--color--brand);
  --b-btn-text: var(--wp--preset--color--white);
  --b-btn-outline: var(--wp--preset--color--brand);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --b-btn-text-hover: var(--wp--preset--color--white);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--brand);
  --b-btn-secondary-outline: var(--wp--preset--color--brand);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-text-hover: var(--wp--preset--color--white);
  --b-svg-fill: var(--wp--preset--color--brand);
  --b-icon-filter: invert(0%) var(--filter-brand);
  --b-svg-opacity: 1;
  background-color: var(--b-bg);
  color: var(--b-text);
  border-color: var(--b-border);
  transition: background-color 0.3s ease, color 0.3s ease;
}
.is-style-switcher-light .e-con, .is-style-switcher-light .e-con-inner {
  background-color: transparent;
}
.is-style-switcher-light h1:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-light h2:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-light h3:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-light h4:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-light h5:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-light h6:not(.tm-card-item *):not(.tm-accordion-item *) {
  color: var(--b-heading);
}
.is-style-switcher-light h1:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-light h2:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-light h3:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-light h4:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-light h5:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-light h6:not(.tm-card-item *):not(.tm-accordion-item *) span {
  color: var(--b-heading-alt);
}
.is-style-switcher-light p:not([class*=card] *):not(.tm-accordion-item *), .is-style-switcher-light li:not([class*=card] *):not(.tm-accordion-item *) {
  color: var(--b-text);
}
.is-style-switcher-light a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *) {
  color: var(--b-link, inherit);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.is-style-switcher-light a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *):hover {
  color: var(--b-link-hover);
}
.is-style-switcher-light nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
.is-style-switcher-light nav a *:hover {
  color: var(--b-bg);
  background-color: var(--b-heading);
}
.is-style-switcher-light .tm-card-item a:not(.card-link),
.is-style-switcher-light .tm-accordion-item a:not(.card-link) {
  color: inherit;
  text-decoration: none;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *), .is-style-switcher-light .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *):not(.is-secondary), .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: var(--b-btn-bg);
  color: var(--b-btn-text);
  border-color: transparent;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-light .elementor-button:not(.my-custom-card *):not(.is-secondary), .is-style-switcher-light .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-light .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .is-style-switcher-light .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *).is-secondary, .is-style-switcher-light .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: var(--b-btn-secondary-bg);
  color: var(--b-btn-secondary-text);
  border-color: var(--b-btn-secondary-outline);
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *).is-secondary:hover, .is-style-switcher-light .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-light .elementor-button:not(.my-custom-card *).is-secondary, .is-style-switcher-light .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-light .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-light .elementor-button:not(.my-custom-card *).is-secondary:hover, .is-style-switcher-light .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-light .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.is-style-switcher-light :is(hr, .wp-block-separator, .is-divider) {
  background-color: var(--b-text);
  opacity: 0.2;
  height: 1px;
  border: none;
  margin: 2rem auto;
}
.is-style-switcher-light.is-recolor img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
.is-style-switcher-light.is-recolor .wp-block-image svg:not(.tm-card-item *),
.is-style-switcher-light.is-recolor .wp-block-html svg:not(.tm-card-item *),
.is-style-switcher-light.is-recolor .elementor-widget-image svg:not(.tm-card-item *),
.is-style-switcher-light.is-recolor .elementor-widget-html svg:not(.tm-card-item *), body.is-recolor-global .is-style-switcher-light img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-light .wp-block-image svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-light .wp-block-html svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-light .elementor-widget-image svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-light .elementor-widget-html svg:not(.tm-card-item *) {
  filter: var(--b-icon-filter);
  opacity: var(--b-svg-opacity);
}
.is-style-switcher-light.is-recolor-fill .wp-block-image svg *:not(.tm-card-item *),
.is-style-switcher-light.is-recolor-fill .wp-block-html svg *:not(.tm-card-item *),
.is-style-switcher-light.is-recolor-fill .elementor-widget-image svg *:not(.tm-card-item *),
.is-style-switcher-light.is-recolor-fill .elementor-widget-html svg *:not(.tm-card-item *) {
  fill: var(--b-svg-fill);
}
.is-style-switcher-light body.is-recolor-global .footer-brand img[src$=".svg"].mag-logo {
  filter: var(--b-icon-filter, none);
  opacity: var(--b-svg-opacity, 1);
}
.is-style-switcher-light body.is-recolor-global .footer-brand .mag-logo svg {
  fill: var(--b-svg-fill, currentColor);
}
.is-style-switcher-light .footer-brand img[src$=".svg"].mag-logo {
  filter: none;
}
.is-style-switcher-light .footer-brand .mag-logo svg {
  fill: none;
}

.is-style-switcher-dark {
  --b-bg: var(--wp--preset--color--brand-dark-60);
  --b-bg-alt: var(--wp--preset--color--brand-dark-90);
  --b-text: var(--wp--preset--color--white);
  --b-border: var(--wp--preset--color--brand-dark-50);
  --b-heading: var(--wp--preset--color--white);
  --b-heading-alt: var(--wp--preset--color--white-dark-20);
  --b-link: var(--wp--preset--color--white-dark-20);
  --b-link-hover: var(--wp--preset--color--white);
  --b-btn-bg: var(--wp--preset--color--white);
  --b-btn-text: var(--wp--preset--color--brand-dark-20);
  --b-btn-outline: var(--wp--preset--color--white-dark-80);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --b-btn-text-hover: var(--wp--preset--color--dark);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--white);
  --b-btn-secondary-outline: var(--wp--preset--color--white);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--brand);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--brand);
  --b-btn-secondary-text-hover: var(--wp--preset--color--white);
  --b-svg-fill: var(--wp--preset--color--white);
  --b-icon-filter: invert(100%);
  --b-svg-opacity: 1;
  background-color: var(--b-bg);
  color: var(--b-text);
  border-color: var(--b-border);
  transition: background-color 0.3s ease, color 0.3s ease;
}
.is-style-switcher-dark .e-con, .is-style-switcher-dark .e-con-inner {
  background-color: transparent;
}
.is-style-switcher-dark h1:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-dark h2:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-dark h3:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-dark h4:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-dark h5:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-dark h6:not(.tm-card-item *):not(.tm-accordion-item *) {
  color: var(--b-heading);
}
.is-style-switcher-dark h1:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-dark h2:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-dark h3:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-dark h4:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-dark h5:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-dark h6:not(.tm-card-item *):not(.tm-accordion-item *) span {
  color: var(--b-heading-alt);
}
.is-style-switcher-dark p:not([class*=card] *):not(.tm-accordion-item *), .is-style-switcher-dark li:not([class*=card] *):not(.tm-accordion-item *) {
  color: var(--b-text);
}
.is-style-switcher-dark a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *) {
  color: var(--b-link, inherit);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.is-style-switcher-dark a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *):hover {
  color: var(--b-link-hover);
}
.is-style-switcher-dark nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
.is-style-switcher-dark nav a *:hover {
  color: var(--b-bg);
  background-color: var(--b-heading);
}
.is-style-switcher-dark .tm-card-item a:not(.card-link),
.is-style-switcher-dark .tm-accordion-item a:not(.card-link) {
  color: inherit;
  text-decoration: none;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *), .is-style-switcher-dark .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *):not(.is-secondary), .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: var(--b-btn-bg);
  color: var(--b-btn-text);
  border-color: transparent;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-dark .elementor-button:not(.my-custom-card *):not(.is-secondary), .is-style-switcher-dark .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-dark .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .is-style-switcher-dark .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *).is-secondary, .is-style-switcher-dark .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: var(--b-btn-secondary-bg);
  color: var(--b-btn-secondary-text);
  border-color: var(--b-btn-secondary-outline);
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *).is-secondary:hover, .is-style-switcher-dark .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-dark .elementor-button:not(.my-custom-card *).is-secondary, .is-style-switcher-dark .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-dark .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-dark .elementor-button:not(.my-custom-card *).is-secondary:hover, .is-style-switcher-dark .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-dark .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.is-style-switcher-dark :is(hr, .wp-block-separator, .is-divider) {
  background-color: var(--b-text);
  opacity: 0.2;
  height: 1px;
  border: none;
  margin: 2rem auto;
}
.is-style-switcher-dark.is-recolor img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
.is-style-switcher-dark.is-recolor .wp-block-image svg:not(.tm-card-item *),
.is-style-switcher-dark.is-recolor .wp-block-html svg:not(.tm-card-item *),
.is-style-switcher-dark.is-recolor .elementor-widget-image svg:not(.tm-card-item *),
.is-style-switcher-dark.is-recolor .elementor-widget-html svg:not(.tm-card-item *), body.is-recolor-global .is-style-switcher-dark img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-dark .wp-block-image svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-dark .wp-block-html svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-dark .elementor-widget-image svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-dark .elementor-widget-html svg:not(.tm-card-item *) {
  filter: var(--b-icon-filter);
  opacity: var(--b-svg-opacity);
}
.is-style-switcher-dark.is-recolor-fill .wp-block-image svg *:not(.tm-card-item *),
.is-style-switcher-dark.is-recolor-fill .wp-block-html svg *:not(.tm-card-item *),
.is-style-switcher-dark.is-recolor-fill .elementor-widget-image svg *:not(.tm-card-item *),
.is-style-switcher-dark.is-recolor-fill .elementor-widget-html svg *:not(.tm-card-item *) {
  fill: var(--b-svg-fill);
}
.is-style-switcher-dark body.is-recolor-global .footer-brand img[src$=".svg"].mag-logo {
  filter: var(--b-icon-filter, none);
  opacity: var(--b-svg-opacity, 1);
}
.is-style-switcher-dark body.is-recolor-global .footer-brand .mag-logo svg {
  fill: var(--b-svg-fill, currentColor);
}
.is-style-switcher-dark .footer-brand img[src$=".svg"].mag-logo {
  filter: none;
}
.is-style-switcher-dark .footer-brand .mag-logo svg {
  fill: none;
}

.is-style-switcher-brand {
  --b-bg: var(--wp--preset--color--brand);
  --b-bg-alt: var(--wp--preset--color--brand-dark-90);
  --b-text: var(--wp--preset--color--white);
  --b-border: var(--wp--preset--color--brand-dark-30);
  --b-heading: var(--wp--preset--color--white);
  --b-heading-alt: var(--wp--preset--color--white-dark-20);
  --b-link: var(--wp--preset--color--white-dark-20);
  --b-link-hover: var(--wp--preset--color--brand-light-90);
  --b-btn-bg: var(--wp--preset--color--white);
  --b-btn-text: var(--wp--preset--color--brand-dark-20);
  --b-btn-outline: var(--wp--preset--color--white-dark-80);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-60);
  --b-btn-text-hover: var(--wp--preset--color--dark);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--white);
  --b-btn-secondary-outline: var(--wp--preset--color--white);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--white);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--white);
  --b-btn-secondary-text-hover: var(--wp--preset--color--dark);
  --b-svg-fill: var(--wp--preset--color--white);
  --b-icon-filter: invert(100%);
  --b-svg-opacity: 1;
  background-color: var(--b-bg);
  color: var(--b-text);
  border-color: var(--b-border);
  transition: background-color 0.3s ease, color 0.3s ease;
}
.is-style-switcher-brand .e-con, .is-style-switcher-brand .e-con-inner {
  background-color: transparent;
}
.is-style-switcher-brand h1:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-brand h2:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-brand h3:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-brand h4:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-brand h5:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-brand h6:not(.tm-card-item *):not(.tm-accordion-item *) {
  color: var(--b-heading);
}
.is-style-switcher-brand h1:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-brand h2:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-brand h3:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-brand h4:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-brand h5:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-brand h6:not(.tm-card-item *):not(.tm-accordion-item *) span {
  color: var(--b-heading-alt);
}
.is-style-switcher-brand p:not([class*=card] *):not(.tm-accordion-item *), .is-style-switcher-brand li:not([class*=card] *):not(.tm-accordion-item *) {
  color: var(--b-text);
}
.is-style-switcher-brand a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *) {
  color: var(--b-link, inherit);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.is-style-switcher-brand a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *):hover {
  color: var(--b-link-hover);
}
.is-style-switcher-brand nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
.is-style-switcher-brand nav a *:hover {
  color: var(--b-bg);
  background-color: var(--b-heading);
}
.is-style-switcher-brand .tm-card-item a:not(.card-link),
.is-style-switcher-brand .tm-accordion-item a:not(.card-link) {
  color: inherit;
  text-decoration: none;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *), .is-style-switcher-brand .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *):not(.is-secondary), .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: var(--b-btn-bg);
  color: var(--b-btn-text);
  border-color: transparent;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-brand .elementor-button:not(.my-custom-card *):not(.is-secondary), .is-style-switcher-brand .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-brand .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .is-style-switcher-brand .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *).is-secondary, .is-style-switcher-brand .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: var(--b-btn-secondary-bg);
  color: var(--b-btn-secondary-text);
  border-color: var(--b-btn-secondary-outline);
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *).is-secondary:hover, .is-style-switcher-brand .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-brand .elementor-button:not(.my-custom-card *).is-secondary, .is-style-switcher-brand .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-brand .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-brand .elementor-button:not(.my-custom-card *).is-secondary:hover, .is-style-switcher-brand .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-brand .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.is-style-switcher-brand :is(hr, .wp-block-separator, .is-divider) {
  background-color: var(--b-text);
  opacity: 0.2;
  height: 1px;
  border: none;
  margin: 2rem auto;
}
.is-style-switcher-brand.is-recolor img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
.is-style-switcher-brand.is-recolor .wp-block-image svg:not(.tm-card-item *),
.is-style-switcher-brand.is-recolor .wp-block-html svg:not(.tm-card-item *),
.is-style-switcher-brand.is-recolor .elementor-widget-image svg:not(.tm-card-item *),
.is-style-switcher-brand.is-recolor .elementor-widget-html svg:not(.tm-card-item *), body.is-recolor-global .is-style-switcher-brand img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-brand .wp-block-image svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-brand .wp-block-html svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-brand .elementor-widget-image svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-brand .elementor-widget-html svg:not(.tm-card-item *) {
  filter: var(--b-icon-filter);
  opacity: var(--b-svg-opacity);
}
.is-style-switcher-brand.is-recolor-fill .wp-block-image svg *:not(.tm-card-item *),
.is-style-switcher-brand.is-recolor-fill .wp-block-html svg *:not(.tm-card-item *),
.is-style-switcher-brand.is-recolor-fill .elementor-widget-image svg *:not(.tm-card-item *),
.is-style-switcher-brand.is-recolor-fill .elementor-widget-html svg *:not(.tm-card-item *) {
  fill: var(--b-svg-fill);
}
.is-style-switcher-brand body.is-recolor-global .footer-brand img[src$=".svg"].mag-logo {
  filter: var(--b-icon-filter, none);
  opacity: var(--b-svg-opacity, 1);
}
.is-style-switcher-brand body.is-recolor-global .footer-brand .mag-logo svg {
  fill: var(--b-svg-fill, currentColor);
}
.is-style-switcher-brand .footer-brand img[src$=".svg"].mag-logo {
  filter: none;
}
.is-style-switcher-brand .footer-brand .mag-logo svg {
  fill: none;
}

.is-style-switcher-accent-1 {
  --b-bg: var(--wp--preset--color--accent-1);
  --b-bg-alt: var(--wp--preset--color--accent-1-dark-20);
  --b-text: var(--wp--preset--color--text);
  --b-border: var(--wp--preset--color--accent-1-dark-50);
  --b-heading: var(--wp--preset--color--text);
  --b-heading-alt: var(--wp--preset--color--brand);
  --b-link: var(--wp--preset--color--brand);
  --b-link-hover: var(--wp--preset--color--brand-light-60);
  --b-btn-bg: var(--wp--preset--color--brand);
  --b-btn-text: var(--wp--preset--color--white);
  --b-btn-outline: var(--wp--preset--color--brand);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --b-btn-text-hover: var(--wp--preset--color--white);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--brand);
  --b-btn-secondary-outline: var(--wp--preset--color--brand);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-text-hover: var(--wp--preset--color--white);
  --b-svg-fill: var(--wp--preset--color--brand);
  --b-icon-filter: invert(0%) var(--filter-brand);
  --b-svg-opacity: 1;
  background-color: var(--b-bg);
  color: var(--b-text);
  border-color: var(--b-border);
  transition: background-color 0.3s ease, color 0.3s ease;
}
.is-style-switcher-accent-1 .e-con, .is-style-switcher-accent-1 .e-con-inner {
  background-color: transparent;
}
.is-style-switcher-accent-1 h1:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-accent-1 h2:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-accent-1 h3:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-accent-1 h4:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-accent-1 h5:not(.tm-card-item *):not(.tm-accordion-item *), .is-style-switcher-accent-1 h6:not(.tm-card-item *):not(.tm-accordion-item *) {
  color: var(--b-heading);
}
.is-style-switcher-accent-1 h1:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-accent-1 h2:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-accent-1 h3:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-accent-1 h4:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-accent-1 h5:not(.tm-card-item *):not(.tm-accordion-item *) span, .is-style-switcher-accent-1 h6:not(.tm-card-item *):not(.tm-accordion-item *) span {
  color: var(--b-heading-alt);
}
.is-style-switcher-accent-1 p:not([class*=card] *):not(.tm-accordion-item *), .is-style-switcher-accent-1 li:not([class*=card] *):not(.tm-accordion-item *) {
  color: var(--b-text);
}
.is-style-switcher-accent-1 a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *) {
  color: var(--b-link, inherit);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.is-style-switcher-accent-1 a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *):hover {
  color: var(--b-link-hover);
}
.is-style-switcher-accent-1 nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
.is-style-switcher-accent-1 nav a *:hover {
  color: var(--b-bg);
  background-color: var(--b-heading);
}
.is-style-switcher-accent-1 .tm-card-item a:not(.card-link),
.is-style-switcher-accent-1 .tm-accordion-item a:not(.card-link) {
  color: inherit;
  text-decoration: none;
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *), .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *):not(.is-secondary), .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: var(--b-btn-bg);
  color: var(--b-btn-text);
  border-color: transparent;
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *):not(.is-secondary), .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *).is-secondary, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: var(--b-btn-secondary-bg);
  color: var(--b-btn-secondary-text);
  border-color: var(--b-btn-secondary-outline);
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *).is-secondary:hover, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *).is-secondary, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *).is-secondary:hover, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.is-style-switcher-accent-1 :is(hr, .wp-block-separator, .is-divider) {
  background-color: var(--b-text);
  opacity: 0.2;
  height: 1px;
  border: none;
  margin: 2rem auto;
}
.is-style-switcher-accent-1.is-recolor img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
.is-style-switcher-accent-1.is-recolor .wp-block-image svg:not(.tm-card-item *),
.is-style-switcher-accent-1.is-recolor .wp-block-html svg:not(.tm-card-item *),
.is-style-switcher-accent-1.is-recolor .elementor-widget-image svg:not(.tm-card-item *),
.is-style-switcher-accent-1.is-recolor .elementor-widget-html svg:not(.tm-card-item *), body.is-recolor-global .is-style-switcher-accent-1 img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-accent-1 .wp-block-image svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-accent-1 .wp-block-html svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-accent-1 .elementor-widget-image svg:not(.tm-card-item *),
body.is-recolor-global .is-style-switcher-accent-1 .elementor-widget-html svg:not(.tm-card-item *) {
  filter: var(--b-icon-filter);
  opacity: var(--b-svg-opacity);
}
.is-style-switcher-accent-1.is-recolor-fill .wp-block-image svg *:not(.tm-card-item *),
.is-style-switcher-accent-1.is-recolor-fill .wp-block-html svg *:not(.tm-card-item *),
.is-style-switcher-accent-1.is-recolor-fill .elementor-widget-image svg *:not(.tm-card-item *),
.is-style-switcher-accent-1.is-recolor-fill .elementor-widget-html svg *:not(.tm-card-item *) {
  fill: var(--b-svg-fill);
}
.is-style-switcher-accent-1 body.is-recolor-global .footer-brand img[src$=".svg"].mag-logo {
  filter: var(--b-icon-filter, none);
  opacity: var(--b-svg-opacity, 1);
}
.is-style-switcher-accent-1 body.is-recolor-global .footer-brand .mag-logo svg {
  fill: var(--b-svg-fill, currentColor);
}
.is-style-switcher-accent-1 .footer-brand img[src$=".svg"].mag-logo {
  filter: none;
}
.is-style-switcher-accent-1 .footer-brand .mag-logo svg {
  fill: none;
}

.e-con, .e-con.is-banniere {
  background-color: var(--wp--preset--color--transparent);
  border: none;
  box-shadow: none;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  max-width: none;
}

.e-con {
  width: 100%;
  left: 0;
  margin-left: 0;
  margin-right: 0;
}

.elementor-button,
.social-link {
  text-decoration: none;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  padding: 0;
  width: auto;
  letter-spacing: 0.02em;
  outline: none;
  background-clip: padding-box;
}
.elementor-button,
.elementor-button span,
.elementor-button a,
.social-link,
.social-link span,
.social-link a {
  color: inherit;
  fill: currentColor;
  background: transparent;
  border: none;
  font-family: inherit;
  font-weight: 400;
  text-transform: none;
  line-height: 1.2;
  border-radius: inherit;
  box-shadow: none;
}

.elementor {
  font-family: var(--wp--preset--font-family--body);
  color: var(--e-theme-text-color, inherit);
  line-height: var(--wp--custom--line-height--body, 1.6);
}

.elementor-widget-text-editor ul {
  font-family: var(--wp--preset--font-family--body);
  margin-left: 0;
  padding-left: var(--wp--preset--spacing--20);
}

.has-titles-font-family, .f-family-titles {
  font-family: var(--wp--preset--font-family--titles);
}
.has-titles-font-family p, .has-titles-font-family span, .has-titles-font-family a, .f-family-titles p, .f-family-titles span, .f-family-titles a {
  font-family: var(--wp--preset--font-family--titles);
}

.elementor.has-titles-font-family p, .elementor.has-titles-font-family span, .elementor.has-titles-font-family a, .elementor.f-family-titles p, .elementor.f-family-titles span, .elementor.f-family-titles a {
  font-family: var(--wp--preset--font-family--titles);
}

.has-body-font-family, .f-family-body {
  font-family: var(--wp--preset--font-family--body);
}
.has-body-font-family p, .has-body-font-family span, .has-body-font-family a, .f-family-body p, .f-family-body span, .f-family-body a {
  font-family: var(--wp--preset--font-family--body);
}

.elementor.has-body-font-family p, .elementor.has-body-font-family span, .elementor.has-body-font-family a, .elementor.f-family-body p, .elementor.f-family-body span, .elementor.f-family-body a {
  font-family: var(--wp--preset--font-family--body);
}

.has-system-font-family, .f-family-system {
  font-family: var(--wp--preset--font-family--system);
}
.has-system-font-family p, .has-system-font-family span, .has-system-font-family a, .f-family-system p, .f-family-system span, .f-family-system a {
  font-family: var(--wp--preset--font-family--system);
}

.elementor.has-system-font-family p, .elementor.has-system-font-family span, .elementor.has-system-font-family a, .elementor.f-family-system p, .elementor.f-family-system span, .elementor.f-family-system a {
  font-family: var(--wp--preset--font-family--system);
}

.elementor-size-xs, .elementor-size-xs h1, .elementor-size-xs h2, .elementor-size-xs h3, .elementor-size-xs h4, .elementor-size-xs h5, .elementor-size-xs h6, .elementor-size-xs p, .elementor-size-xs a, .elementor-size-xs .elementor-heading-title, .elementor-size-xs .elementor-button-text, .elementor-size-xs .elementor-icon-list-text, .elementor-size-xs li, .elementor-size-xs span {
  font-size: var(--wp--preset--font-size--xs);
}

.elementor-size-sm, .elementor-size-sm h1, .elementor-size-sm h2, .elementor-size-sm h3, .elementor-size-sm h4, .elementor-size-sm h5, .elementor-size-sm h6, .elementor-size-sm p, .elementor-size-sm a, .elementor-size-sm .elementor-heading-title, .elementor-size-sm .elementor-button-text, .elementor-size-sm .elementor-icon-list-text, .elementor-size-sm li, .elementor-size-sm span {
  font-size: var(--wp--preset--font-size--sm);
}

.elementor-size-md, .elementor-size-md h1, .elementor-size-md h2, .elementor-size-md h3, .elementor-size-md h4, .elementor-size-md h5, .elementor-size-md h6, .elementor-size-md p, .elementor-size-md a, .elementor-size-md .elementor-heading-title, .elementor-size-md .elementor-button-text, .elementor-size-md .elementor-icon-list-text, .elementor-size-md li, .elementor-size-md span {
  font-size: var(--wp--preset--font-size--md);
}

.elementor-size-lg, .elementor-size-lg h1, .elementor-size-lg h2, .elementor-size-lg h3, .elementor-size-lg h4, .elementor-size-lg h5, .elementor-size-lg h6, .elementor-size-lg p, .elementor-size-lg a, .elementor-size-lg .elementor-heading-title, .elementor-size-lg .elementor-button-text, .elementor-size-lg .elementor-icon-list-text, .elementor-size-lg li, .elementor-size-lg span {
  font-size: var(--wp--preset--font-size--lg);
}

.elementor-size-xl, .elementor-size-xl h1, .elementor-size-xl h2, .elementor-size-xl h3, .elementor-size-xl h4, .elementor-size-xl h5, .elementor-size-xl h6, .elementor-size-xl p, .elementor-size-xl a, .elementor-size-xl .elementor-heading-title, .elementor-size-xl .elementor-button-text, .elementor-size-xl .elementor-icon-list-text, .elementor-size-xl li, .elementor-size-xl span {
  font-size: var(--wp--preset--font-size--xl);
}

.elementor-size-xxl, .elementor-size-xxl h1, .elementor-size-xxl h2, .elementor-size-xxl h3, .elementor-size-xxl h4, .elementor-size-xxl h5, .elementor-size-xxl h6, .elementor-size-xxl p, .elementor-size-xxl a, .elementor-size-xxl .elementor-heading-title, .elementor-size-xxl .elementor-button-text, .elementor-size-xxl .elementor-icon-list-text, .elementor-size-xxl li, .elementor-size-xxl span {
  font-size: var(--wp--preset--font-size--xxl);
}

h1.elementor-heading-title, h1 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xxl);
}

h2.elementor-heading-title, h2 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--lg);
}

h3.elementor-heading-title, h3 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--md);
}

h4.elementor-heading-title, h4 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--sm);
}

h5.elementor-heading-title, h5 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xs);
}

h6.elementor-heading-title, h6 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xs);
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

body {
  margin: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 500;
  line-height: 1.2;
  margin-block-start: 0.5rem;
  margin-block-end: 1rem;
  color: inherit;
}

p {
  margin-block-start: 0;
  margin-block-end: 1rem;
}

a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
  transition: color 0.2s ease-in-out;
}
a:hover, a:active {
  text-decoration: none;
}
a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
  outline: 0;
}

abbr[title] {
  border-block-end: none;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: 700;
}

code, kbd, samp, pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 1em;
}

pre {
  white-space: pre-wrap;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border: 0;
  border-top: 1px solid currentColor;
  opacity: 0.25;
}

details {
  display: block;
}

summary {
  display: list-item;
  cursor: pointer;
}

figcaption {
  font-size: 0.875rem;
  font-style: italic;
  line-height: 1.4;
}

[hidden],
template {
  display: none !important;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  margin: 0;
}

input[type=text],
input[type=email],
input[type=password],
input[type=search],
input[type=url],
input[type=tel],
input[type=number],
input[type=date],
input[type=time],
select,
textarea {
  border: 1px solid currentColor;
  background-color: transparent;
  color: inherit;
  width: 100%;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=url]:focus,
input[type=tel]:focus,
input[type=number]:focus,
input[type=date]:focus,
input[type=time]:focus,
select:focus,
textarea:focus {
  outline: 2px solid var(--color-focus, currentColor);
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  width: auto;
}
button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

button,
[type=button],
[type=submit] {
  background-color: transparent;
  border: none;
  padding: 0;
  color: inherit;
}
button:focus:not(:focus-visible),
[type=button]:focus:not(:focus-visible),
[type=submit]:focus:not(:focus-visible) {
  outline: none;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
  resize: vertical;
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

select {
  display: block;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  margin-block-end: 1.5rem;
  width: 100%;
}
table td, table th {
  border: 1px solid currentColor;
  padding: 0.75rem;
  vertical-align: top;
}
table th {
  font-weight: 700;
  text-align: left;
}

dd, dl, dt, li, ol, ul {
  margin-block: 0;
  padding-inline-start: 0;
  list-style: none;
}

@media print {
  *, *::before, *::after {
    background: transparent !important;
    box-shadow: none !important;
    color: #000 !important;
    text-shadow: none !important;
  }
  a {
    text-decoration: underline;
  }
  a[href]::after {
    content: " (" attr(href) ")";
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  blockquote, pre {
    border: 1px solid #ccc;
    break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  img, tr {
    break-inside: avoid;
  }
  h2, h3, p {
    orphans: 3;
    widows: 3;
  }
  h2, h3 {
    break-after: avoid;
  }
}
.e-con > .e-con {
  --padding-left: 0;
  --padding-right: 0;
  padding-inline: 0;
  margin-inline: 0;
  width: 100%;
  max-width: none;
}

.e-con {
  gap: var(--grid-gap);
}

.elementor-button .elementor-button,
.elementor-button .social-link, .social-link .elementor-button,
.social-link .social-link, .btn .elementor-button,
.btn .social-link, .wpcf7-response-output .elementor-button,
.wpcf7-response-output .social-link, .wpcf7-submit .elementor-button,
.wpcf7-submit .social-link {
  text-decoration: none;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  padding: 0;
  width: auto;
  letter-spacing: 0.02em;
  outline: none;
  background-clip: padding-box;
}
.elementor-button .elementor-button,
.elementor-button .elementor-button span,
.elementor-button .elementor-button a,
.elementor-button .social-link,
.elementor-button .social-link span,
.elementor-button .social-link a, .social-link .elementor-button,
.social-link .elementor-button span,
.social-link .elementor-button a,
.social-link .social-link,
.social-link .social-link span,
.social-link .social-link a, .btn .elementor-button,
.btn .elementor-button span,
.btn .elementor-button a,
.btn .social-link,
.btn .social-link span,
.btn .social-link a, .wpcf7-response-output .elementor-button,
.wpcf7-response-output .elementor-button span,
.wpcf7-response-output .elementor-button a,
.wpcf7-response-output .social-link,
.wpcf7-response-output .social-link span,
.wpcf7-response-output .social-link a, .wpcf7-submit .elementor-button,
.wpcf7-submit .elementor-button span,
.wpcf7-submit .elementor-button a,
.wpcf7-submit .social-link,
.wpcf7-submit .social-link span,
.wpcf7-submit .social-link a {
  color: inherit;
  fill: currentColor;
  background: transparent;
  border: none;
  font-family: inherit;
  font-weight: 400;
  text-transform: none;
  line-height: 1.2;
  border-radius: inherit;
  box-shadow: none;
}
.elementor-button, .social-link, .btn, .wpcf7-response-output, .wpcf7-submit {
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.elementor-button:hover, .social-link:hover, .btn:hover, .wpcf7-response-output:hover, .wpcf7-submit:hover {
  transform: translateY(-4px);
  filter: brightness(1.1);
}
.elementor-button:active, .social-link:active, .btn:active, .wpcf7-response-output:active, .wpcf7-submit:active {
  transform: translateY(-1px);
}
.elementor-button, .social-link, .btn, .wpcf7-response-output, .wpcf7-submit {
  display: inline-flex;
  align-items: center;
  justify-content: var(--btn-default-align, center);
  text-align: var(--btn-default-text-align, center);
  gap: 10px;
  overflow: hidden;
  font-family: var(--btn-default-ff, var(--font-body));
  font-size: var(--btn-default-fz, var(--fz-sm));
  padding: var(--btn-default-pv, var(--space-xs)) var(--btn-default-ph, var(--space-md));
  border-radius: var(--btn-default-rd, var(--radius-full));
  box-shadow: var(--btn-default-sh, var(--sh-none)) !important;
}
.elementor-button .btn-icon, .social-link .btn-icon, .btn .btn-icon, .wpcf7-response-output .btn-icon, .wpcf7-submit .btn-icon {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}
.elementor-button .btn-icon svg, .social-link .btn-icon svg, .btn .btn-icon svg, .wpcf7-response-output .btn-icon svg, .wpcf7-submit .btn-icon svg {
  width: 1em;
  height: 1em;
}
.elementor-button, .social-link, .btn, .wpcf7-response-output, .wpcf7-submit {
  border-width: 2px;
  border-style: solid;
  border-radius: var(--btn-default-rd, var(--radius-full));
  box-shadow: var(--btn-default-sh, var(--sh-none));
}
.elementor-button:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), .social-link:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), .btn:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), .wpcf7-response-output:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), .wpcf7-submit:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *) {
  background-color: var(--b-btn-bg, var(--wp--preset--color--brand));
  color: var(--b-btn-text, var(--wp--preset--color--white));
  border-color: transparent;
}
.elementor-button:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, .social-link:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, .btn:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, .wpcf7-response-output:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, .wpcf7-submit:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover {
  background-color: var(--b-btn-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-text-hover, var(--wp--preset--color--white));
  border-color: transparent;
}
.elementor-button.is-style-outline:not(.is-secondary), .social-link.is-style-outline:not(.is-secondary), .btn.is-style-outline:not(.is-secondary), .wpcf7-response-output.is-style-outline:not(.is-secondary), .wpcf7-submit.is-style-outline:not(.is-secondary) {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-outline, var(--wp--preset--color--brand));
}
.elementor-button.is-style-outline:not(.is-secondary):hover, .social-link.is-style-outline:not(.is-secondary):hover, .btn.is-style-outline:not(.is-secondary):hover, .wpcf7-response-output.is-style-outline:not(.is-secondary):hover, .wpcf7-submit.is-style-outline:not(.is-secondary):hover {
  border-color: transparent;
  background-color: var(--b-btn-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-text-hover, var(--wp--preset--color--white));
}
.elementor-button.is-style-outline:not(.is-secondary):hover span, .social-link.is-style-outline:not(.is-secondary):hover span, .btn.is-style-outline:not(.is-secondary):hover span, .wpcf7-response-output.is-style-outline:not(.is-secondary):hover span, .wpcf7-submit.is-style-outline:not(.is-secondary):hover span {
  color: inherit;
  filter: none;
}
.elementor-button.is-style-outline:not(.is-secondary) span, .social-link.is-style-outline:not(.is-secondary) span, .btn.is-style-outline:not(.is-secondary) span, .wpcf7-response-output.is-style-outline:not(.is-secondary) span, .wpcf7-submit.is-style-outline:not(.is-secondary) span {
  color: inherit;
  background: transparent;
}
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .elementor-button:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .social-link:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .btn:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-response-output:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-submit:not(.is-secondary) {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-outline, var(--wp--preset--color--brand));
}
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .elementor-button:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .social-link:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .btn:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-response-output:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-submit:not(.is-secondary):hover {
  border-color: transparent;
  background-color: var(--b-btn-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-text-hover, var(--wp--preset--color--white));
}
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .elementor-button:not(.is-secondary):hover span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .social-link:not(.is-secondary):hover span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .btn:not(.is-secondary):hover span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-response-output:not(.is-secondary):hover span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-submit:not(.is-secondary):hover span {
  color: inherit;
  filter: none;
}
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .elementor-button:not(.is-secondary) span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .social-link:not(.is-secondary) span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .btn:not(.is-secondary) span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-response-output:not(.is-secondary) span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-submit:not(.is-secondary) span {
  color: inherit;
  background: transparent;
}
.elementor-button.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), .social-link.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), .btn.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), .wpcf7-response-output.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), .wpcf7-submit.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *) {
  background-color: var(--b-btn-secondary-bg, transparent);
  color: var(--b-btn-secondary-text, var(--wp--preset--color--brand));
  border-color: var(--b-btn-secondary-outline, var(--wp--preset--color--brand));
}
.elementor-button.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, .social-link.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, .btn.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, .wpcf7-response-output.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, .wpcf7-submit.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover {
  background-color: var(--b-btn-secondary-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-secondary-text-hover, var(--wp--preset--color--white));
  border-color: var(--b-btn-secondary-outline-hover, var(--wp--preset--color--brand));
}
.elementor-button.is-secondary.is-style-outline, .social-link.is-secondary.is-style-outline, .btn.is-secondary.is-style-outline, .wpcf7-response-output.is-secondary.is-style-outline, .wpcf7-submit.is-secondary.is-style-outline {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-secondary-outline, var(--wp--preset--color--brand));
}
.elementor-button.is-secondary.is-style-outline:hover, .social-link.is-secondary.is-style-outline:hover, .btn.is-secondary.is-style-outline:hover, .wpcf7-response-output.is-secondary.is-style-outline:hover, .wpcf7-submit.is-secondary.is-style-outline:hover {
  border-color: transparent;
  background-color: var(--b-btn-secondary-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-secondary-text-hover, var(--wp--preset--color--white));
}
.elementor-button.is-secondary.is-style-outline:hover span, .social-link.is-secondary.is-style-outline:hover span, .btn.is-secondary.is-style-outline:hover span, .wpcf7-response-output.is-secondary.is-style-outline:hover span, .wpcf7-submit.is-secondary.is-style-outline:hover span {
  color: inherit;
  filter: none;
}
.elementor-button.is-secondary.is-style-outline span, .social-link.is-secondary.is-style-outline span, .btn.is-secondary.is-style-outline span, .wpcf7-response-output.is-secondary.is-style-outline span, .wpcf7-submit.is-secondary.is-style-outline span {
  color: inherit;
  background: transparent;
}
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .elementor-button.is-secondary, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .social-link.is-secondary, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .btn.is-secondary, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-response-output.is-secondary, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-submit.is-secondary {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-secondary-outline, var(--wp--preset--color--brand));
}
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .elementor-button.is-secondary:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .social-link.is-secondary:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .btn.is-secondary:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-response-output.is-secondary:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-submit.is-secondary:hover {
  border-color: transparent;
  background-color: var(--b-btn-secondary-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-secondary-text-hover, var(--wp--preset--color--white));
}
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .elementor-button.is-secondary:hover span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .social-link.is-secondary:hover span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .btn.is-secondary:hover span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-response-output.is-secondary:hover span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-submit.is-secondary:hover span {
  color: inherit;
  filter: none;
}
:is(.elementor-button.e-btn-border, .is-style-outline-parent) .elementor-button.is-secondary span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .social-link.is-secondary span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .btn.is-secondary span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-response-output.is-secondary span, :is(.elementor-button.e-btn-border, .is-style-outline-parent) .wpcf7-submit.is-secondary span {
  color: inherit;
  background: transparent;
}

.social-link {
  padding-inline: var(--btn-default-pv, var(--space-xs));
}
.social-link svg {
  width: 1em;
  height: 1em;
  display: block;
  flex-shrink: 0;
  fill: currentColor;
  pointer-events: none;
}

.elementor {
  font-family: var(--wp--preset--font-family--body);
  color: var(--e-theme-text-color, inherit);
  line-height: var(--wp--custom--line-height--body, 1.6);
}

.elementor-widget-text-editor ul {
  font-family: var(--wp--preset--font-family--body);
  margin-left: 0;
  padding-left: var(--wp--preset--spacing--20);
}

.has-titles-font-family, .f-family-titles {
  font-family: var(--wp--preset--font-family--titles);
}
.has-titles-font-family p, .has-titles-font-family span, .has-titles-font-family a, .f-family-titles p, .f-family-titles span, .f-family-titles a {
  font-family: var(--wp--preset--font-family--titles);
}

.elementor.has-titles-font-family p, .elementor.has-titles-font-family span, .elementor.has-titles-font-family a, .elementor.f-family-titles p, .elementor.f-family-titles span, .elementor.f-family-titles a {
  font-family: var(--wp--preset--font-family--titles);
}

.has-body-font-family, .f-family-body {
  font-family: var(--wp--preset--font-family--body);
}
.has-body-font-family p, .has-body-font-family span, .has-body-font-family a, .f-family-body p, .f-family-body span, .f-family-body a {
  font-family: var(--wp--preset--font-family--body);
}

.elementor.has-body-font-family p, .elementor.has-body-font-family span, .elementor.has-body-font-family a, .elementor.f-family-body p, .elementor.f-family-body span, .elementor.f-family-body a {
  font-family: var(--wp--preset--font-family--body);
}

.has-system-font-family, .f-family-system {
  font-family: var(--wp--preset--font-family--system);
}
.has-system-font-family p, .has-system-font-family span, .has-system-font-family a, .f-family-system p, .f-family-system span, .f-family-system a {
  font-family: var(--wp--preset--font-family--system);
}

.elementor.has-system-font-family p, .elementor.has-system-font-family span, .elementor.has-system-font-family a, .elementor.f-family-system p, .elementor.f-family-system span, .elementor.f-family-system a {
  font-family: var(--wp--preset--font-family--system);
}

.elementor-size-xs, .elementor-size-xs h1, .elementor-size-xs h2, .elementor-size-xs h3, .elementor-size-xs h4, .elementor-size-xs h5, .elementor-size-xs h6, .elementor-size-xs p, .elementor-size-xs a, .elementor-size-xs .elementor-heading-title, .elementor-size-xs .elementor-button-text, .elementor-size-xs .elementor-icon-list-text, .elementor-size-xs li, .elementor-size-xs span {
  font-size: var(--wp--preset--font-size--xs);
}

.elementor-size-sm, .elementor-size-sm h1, .elementor-size-sm h2, .elementor-size-sm h3, .elementor-size-sm h4, .elementor-size-sm h5, .elementor-size-sm h6, .elementor-size-sm p, .elementor-size-sm a, .elementor-size-sm .elementor-heading-title, .elementor-size-sm .elementor-button-text, .elementor-size-sm .elementor-icon-list-text, .elementor-size-sm li, .elementor-size-sm span {
  font-size: var(--wp--preset--font-size--sm);
}

.elementor-size-md, .elementor-size-md h1, .elementor-size-md h2, .elementor-size-md h3, .elementor-size-md h4, .elementor-size-md h5, .elementor-size-md h6, .elementor-size-md p, .elementor-size-md a, .elementor-size-md .elementor-heading-title, .elementor-size-md .elementor-button-text, .elementor-size-md .elementor-icon-list-text, .elementor-size-md li, .elementor-size-md span {
  font-size: var(--wp--preset--font-size--md);
}

.elementor-size-lg, .elementor-size-lg h1, .elementor-size-lg h2, .elementor-size-lg h3, .elementor-size-lg h4, .elementor-size-lg h5, .elementor-size-lg h6, .elementor-size-lg p, .elementor-size-lg a, .elementor-size-lg .elementor-heading-title, .elementor-size-lg .elementor-button-text, .elementor-size-lg .elementor-icon-list-text, .elementor-size-lg li, .elementor-size-lg span {
  font-size: var(--wp--preset--font-size--lg);
}

.elementor-size-xl, .elementor-size-xl h1, .elementor-size-xl h2, .elementor-size-xl h3, .elementor-size-xl h4, .elementor-size-xl h5, .elementor-size-xl h6, .elementor-size-xl p, .elementor-size-xl a, .elementor-size-xl .elementor-heading-title, .elementor-size-xl .elementor-button-text, .elementor-size-xl .elementor-icon-list-text, .elementor-size-xl li, .elementor-size-xl span {
  font-size: var(--wp--preset--font-size--xl);
}

.elementor-size-xxl, .elementor-size-xxl h1, .elementor-size-xxl h2, .elementor-size-xxl h3, .elementor-size-xxl h4, .elementor-size-xxl h5, .elementor-size-xxl h6, .elementor-size-xxl p, .elementor-size-xxl a, .elementor-size-xxl .elementor-heading-title, .elementor-size-xxl .elementor-button-text, .elementor-size-xxl .elementor-icon-list-text, .elementor-size-xxl li, .elementor-size-xxl span {
  font-size: var(--wp--preset--font-size--xxl);
}

h1.elementor-heading-title, h1 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xxl);
}

h2.elementor-heading-title, h2 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--lg);
}

h3.elementor-heading-title, h3 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--md);
}

h4.elementor-heading-title, h4 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--sm);
}

h5.elementor-heading-title, h5 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xs);
}

h6.elementor-heading-title, h6 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xs);
}

[class*=is-style-] {
  background-color: var(--b-bg);
  color: var(--b-text);
  border-color: var(--b-border);
  transition: background-color 0.3s ease, color 0.3s ease;
}
[class*=is-style-] .e-con, [class*=is-style-] .e-con-inner {
  background-color: transparent;
}
[class*=is-style-] h1:not(.tm-card-item *):not(.tm-accordion-item *), [class*=is-style-] h2:not(.tm-card-item *):not(.tm-accordion-item *), [class*=is-style-] h3:not(.tm-card-item *):not(.tm-accordion-item *), [class*=is-style-] h4:not(.tm-card-item *):not(.tm-accordion-item *), [class*=is-style-] h5:not(.tm-card-item *):not(.tm-accordion-item *), [class*=is-style-] h6:not(.tm-card-item *):not(.tm-accordion-item *) {
  color: var(--b-heading);
}
[class*=is-style-] h1:not(.tm-card-item *):not(.tm-accordion-item *) span, [class*=is-style-] h2:not(.tm-card-item *):not(.tm-accordion-item *) span, [class*=is-style-] h3:not(.tm-card-item *):not(.tm-accordion-item *) span, [class*=is-style-] h4:not(.tm-card-item *):not(.tm-accordion-item *) span, [class*=is-style-] h5:not(.tm-card-item *):not(.tm-accordion-item *) span, [class*=is-style-] h6:not(.tm-card-item *):not(.tm-accordion-item *) span {
  color: var(--b-heading-alt);
}
[class*=is-style-] p:not([class*=card] *):not(.tm-accordion-item *), [class*=is-style-] li:not([class*=card] *):not(.tm-accordion-item *) {
  color: var(--b-text);
}
[class*=is-style-] a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *) {
  color: var(--b-link, inherit);
  text-decoration: underline;
  text-underline-offset: 3px;
}
[class*=is-style-] a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *):hover {
  color: var(--b-link-hover);
}
[class*=is-style-] nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
[class*=is-style-] nav a *:hover {
  color: var(--b-bg);
  background-color: var(--b-heading);
}
[class*=is-style-] .tm-card-item a:not(.card-link),
[class*=is-style-] .tm-accordion-item a:not(.card-link) {
  color: inherit;
  text-decoration: none;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *), [class*=is-style-] .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *):not(.is-secondary), [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: var(--b-btn-bg);
  color: var(--b-btn-text);
  border-color: transparent;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .elementor-button:not(.my-custom-card *):not(.is-secondary), [class*=is-style-] .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, [class*=is-style-] .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *).is-secondary, [class*=is-style-] .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: var(--b-btn-secondary-bg);
  color: var(--b-btn-secondary-text);
  border-color: var(--b-btn-secondary-outline);
}
[class*=is-style-] .elementor-button:not(.my-custom-card *).is-secondary:hover, [class*=is-style-] .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
[class*=is-style-] .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .elementor-button:not(.my-custom-card *).is-secondary, [class*=is-style-] .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .elementor-button:not(.my-custom-card *).is-secondary:hover, [class*=is-style-] .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
[class*=is-style-] :is(hr, .wp-block-separator, .is-divider) {
  background-color: var(--b-text);
  opacity: 0.2;
  height: 1px;
  border: none;
  margin: 2rem auto;
}
[class*=is-style-].is-recolor img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
[class*=is-style-].is-recolor .wp-block-image svg:not(.tm-card-item *),
[class*=is-style-].is-recolor .wp-block-html svg:not(.tm-card-item *),
[class*=is-style-].is-recolor .elementor-widget-image svg:not(.tm-card-item *),
[class*=is-style-].is-recolor .elementor-widget-html svg:not(.tm-card-item *), body.is-recolor-global [class*=is-style-] img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
body.is-recolor-global [class*=is-style-] .wp-block-image svg:not(.tm-card-item *),
body.is-recolor-global [class*=is-style-] .wp-block-html svg:not(.tm-card-item *),
body.is-recolor-global [class*=is-style-] .elementor-widget-image svg:not(.tm-card-item *),
body.is-recolor-global [class*=is-style-] .elementor-widget-html svg:not(.tm-card-item *) {
  filter: var(--b-icon-filter);
  opacity: var(--b-svg-opacity);
}
[class*=is-style-].is-recolor-fill .wp-block-image svg *:not(.tm-card-item *),
[class*=is-style-].is-recolor-fill .wp-block-html svg *:not(.tm-card-item *),
[class*=is-style-].is-recolor-fill .elementor-widget-image svg *:not(.tm-card-item *),
[class*=is-style-].is-recolor-fill .elementor-widget-html svg *:not(.tm-card-item *) {
  fill: var(--b-svg-fill);
}
[class*=is-style-] body.is-recolor-global .footer-brand img[src$=".svg"].mag-logo {
  filter: var(--b-icon-filter, none);
  opacity: var(--b-svg-opacity, 1);
}
[class*=is-style-] body.is-recolor-global .footer-brand .mag-logo svg {
  fill: var(--b-svg-fill, currentColor);
}
[class*=is-style-] .footer-brand img[src$=".svg"].mag-logo {
  filter: none;
}
[class*=is-style-] .footer-brand .mag-logo svg {
  fill: none;
}

.has-brand-color,
.e-has-brand-color {
  color: var(--wp--preset--color--brand);
  --e-global-color-text: var(--wp--preset--color--brand);
  --elementor-inline-editing-color: var(--wp--preset--color--brand);
}

.has-brand-background-color,
.e-has-brand-bg {
  background-color: var(--wp--preset--color--brand);
  --background-color: var(--wp--preset--color--brand);
}

.has-accent-1-color,
.e-has-accent-1-color {
  color: var(--wp--preset--color--accent-1);
  --e-global-color-text: var(--wp--preset--color--accent-1);
  --elementor-inline-editing-color: var(--wp--preset--color--accent-1);
}

.has-accent-1-background-color,
.e-has-accent-1-bg {
  background-color: var(--wp--preset--color--accent-1);
  --background-color: var(--wp--preset--color--accent-1);
}

.has-gradient-1-color,
.e-has-gradient-1-color {
  color: var(--wp--preset--color--gradient-1);
  --e-global-color-text: var(--wp--preset--color--gradient-1);
  --elementor-inline-editing-color: var(--wp--preset--color--gradient-1);
}

.has-gradient-1-background-color,
.e-has-gradient-1-bg {
  background-color: var(--wp--preset--color--gradient-1);
  --background-color: var(--wp--preset--color--gradient-1);
}

.has-dark-color,
.e-has-dark-color {
  color: var(--wp--preset--color--dark);
  --e-global-color-text: var(--wp--preset--color--dark);
  --elementor-inline-editing-color: var(--wp--preset--color--dark);
}

.has-dark-background-color,
.e-has-dark-bg {
  background-color: var(--wp--preset--color--dark);
  --background-color: var(--wp--preset--color--dark);
}

.has-text-color,
.e-has-text-color {
  color: var(--wp--preset--color--text);
  --e-global-color-text: var(--wp--preset--color--text);
  --elementor-inline-editing-color: var(--wp--preset--color--text);
}

.has-text-background-color,
.e-has-text-bg {
  background-color: var(--wp--preset--color--text);
  --background-color: var(--wp--preset--color--text);
}

.has-white-color,
.e-has-white-color {
  color: var(--wp--preset--color--white);
  --e-global-color-text: var(--wp--preset--color--white);
  --elementor-inline-editing-color: var(--wp--preset--color--white);
}

.has-white-background-color,
.e-has-white-bg {
  background-color: var(--wp--preset--color--white);
  --background-color: var(--wp--preset--color--white);
}

.has-black-color,
.e-has-black-color {
  color: var(--wp--preset--color--black);
  --e-global-color-text: var(--wp--preset--color--black);
  --elementor-inline-editing-color: var(--wp--preset--color--black);
}

.has-black-background-color,
.e-has-black-bg {
  background-color: var(--wp--preset--color--black);
  --background-color: var(--wp--preset--color--black);
}

.has-transparent-color,
.e-has-transparent-color {
  color: var(--wp--preset--color--transparent);
  --e-global-color-text: var(--wp--preset--color--transparent);
  --elementor-inline-editing-color: var(--wp--preset--color--transparent);
}

.has-transparent-background-color,
.e-has-transparent-bg {
  background-color: var(--wp--preset--color--transparent);
  --background-color: var(--wp--preset--color--transparent);
}

.wp-block-group, .wp-block-cover {
  background-color: var(--wp--preset--color--transparent);
  border: none;
  box-shadow: none;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  max-width: none;
}

.wp-block-button__link, .wp-element-button,
.social-link {
  text-decoration: none;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  padding: 0;
  width: auto;
  letter-spacing: 0.02em;
  outline: none;
  background-clip: padding-box;
}
.wp-block-button__link,
.wp-block-button__link span,
.wp-block-button__link a, .wp-element-button,
.wp-element-button span,
.wp-element-button a,
.social-link,
.social-link span,
.social-link a {
  color: inherit;
  fill: currentColor;
  background: transparent;
  border: none;
  font-family: inherit;
  font-weight: 400;
  text-transform: none;
  line-height: 1.2;
  border-radius: inherit;
  box-shadow: none;
}

.entry-content.wp-block-post-content {
  font-family: var(--wp--preset--font-family--body);
  color: var(--e-theme-text-color, inherit);
  line-height: var(--wp--custom--line-height--body, 1.6);
}

.wp-block-list {
  font-family: var(--wp--preset--font-family--body);
  margin-left: 0;
  padding-left: var(--wp--preset--spacing--20);
}

.has-titles-font-family, .f-family-titles {
  font-family: var(--wp--preset--font-family--titles);
}
.has-titles-font-family p, .has-titles-font-family span, .has-titles-font-family a, .f-family-titles p, .f-family-titles span, .f-family-titles a {
  font-family: var(--wp--preset--font-family--titles);
}

.entry-content.wp-block-post-content.has-titles-font-family p, .entry-content.wp-block-post-content.has-titles-font-family span, .entry-content.wp-block-post-content.has-titles-font-family a, .entry-content.wp-block-post-content.f-family-titles p, .entry-content.wp-block-post-content.f-family-titles span, .entry-content.wp-block-post-content.f-family-titles a {
  font-family: var(--wp--preset--font-family--titles);
}

.has-body-font-family, .f-family-body {
  font-family: var(--wp--preset--font-family--body);
}
.has-body-font-family p, .has-body-font-family span, .has-body-font-family a, .f-family-body p, .f-family-body span, .f-family-body a {
  font-family: var(--wp--preset--font-family--body);
}

.entry-content.wp-block-post-content.has-body-font-family p, .entry-content.wp-block-post-content.has-body-font-family span, .entry-content.wp-block-post-content.has-body-font-family a, .entry-content.wp-block-post-content.f-family-body p, .entry-content.wp-block-post-content.f-family-body span, .entry-content.wp-block-post-content.f-family-body a {
  font-family: var(--wp--preset--font-family--body);
}

.has-system-font-family, .f-family-system {
  font-family: var(--wp--preset--font-family--system);
}
.has-system-font-family p, .has-system-font-family span, .has-system-font-family a, .f-family-system p, .f-family-system span, .f-family-system a {
  font-family: var(--wp--preset--font-family--system);
}

.entry-content.wp-block-post-content.has-system-font-family p, .entry-content.wp-block-post-content.has-system-font-family span, .entry-content.wp-block-post-content.has-system-font-family a, .entry-content.wp-block-post-content.f-family-system p, .entry-content.wp-block-post-content.f-family-system span, .entry-content.wp-block-post-content.f-family-system a {
  font-family: var(--wp--preset--font-family--system);
}

.has-small-font-size, .has-small-font-size h1, .has-small-font-size h2, .has-small-font-size h3, .has-small-font-size h4, .has-small-font-size h5, .has-small-font-size h6, .has-small-font-size p, .has-small-font-size a, .has-small-font-size .elementor-heading-title, .has-small-font-size .elementor-button-text, .has-small-font-size .elementor-icon-list-text, .has-small-font-size li, .has-small-font-size span {
  font-size: var(--wp--preset--font-size--xs);
}

.has-small-font-size, .has-small-font-size h1, .has-small-font-size h2, .has-small-font-size h3, .has-small-font-size h4, .has-small-font-size h5, .has-small-font-size h6, .has-small-font-size p, .has-small-font-size a, .has-small-font-size .elementor-heading-title, .has-small-font-size .elementor-button-text, .has-small-font-size .elementor-icon-list-text, .has-small-font-size li, .has-small-font-size span {
  font-size: var(--wp--preset--font-size--sm);
}

.has-medium-font-size, .has-medium-font-size h1, .has-medium-font-size h2, .has-medium-font-size h3, .has-medium-font-size h4, .has-medium-font-size h5, .has-medium-font-size h6, .has-medium-font-size p, .has-medium-font-size a, .has-medium-font-size .elementor-heading-title, .has-medium-font-size .elementor-button-text, .has-medium-font-size .elementor-icon-list-text, .has-medium-font-size li, .has-medium-font-size span {
  font-size: var(--wp--preset--font-size--md);
}

.has-large-font-size, .has-large-font-size h1, .has-large-font-size h2, .has-large-font-size h3, .has-large-font-size h4, .has-large-font-size h5, .has-large-font-size h6, .has-large-font-size p, .has-large-font-size a, .has-large-font-size .elementor-heading-title, .has-large-font-size .elementor-button-text, .has-large-font-size .elementor-icon-list-text, .has-large-font-size li, .has-large-font-size span {
  font-size: var(--wp--preset--font-size--lg);
}

.has-x-large-font-size, .has-x-large-font-size h1, .has-x-large-font-size h2, .has-x-large-font-size h3, .has-x-large-font-size h4, .has-x-large-font-size h5, .has-x-large-font-size h6, .has-x-large-font-size p, .has-x-large-font-size a, .has-x-large-font-size .elementor-heading-title, .has-x-large-font-size .elementor-button-text, .has-x-large-font-size .elementor-icon-list-text, .has-x-large-font-size li, .has-x-large-font-size span {
  font-size: var(--wp--preset--font-size--xl);
}

.has-xxl-font-size, .has-xxl-font-size h1, .has-xxl-font-size h2, .has-xxl-font-size h3, .has-xxl-font-size h4, .has-xxl-font-size h5, .has-xxl-font-size h6, .has-xxl-font-size p, .has-xxl-font-size a, .has-xxl-font-size .elementor-heading-title, .has-xxl-font-size .elementor-button-text, .has-xxl-font-size .elementor-icon-list-text, .has-xxl-font-size li, .has-xxl-font-size span {
  font-size: var(--wp--preset--font-size--xxl);
}

h1.wp-block-heading, h1 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xxl);
}

h2.wp-block-heading, h2 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--lg);
}

h3.wp-block-heading, h3 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--md);
}

h4.wp-block-heading, h4 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--sm);
}

h5.wp-block-heading, h5 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xs);
}

h6.wp-block-heading, h6 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: var(--e-theme-heading);
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xs);
}

body {
  margin: 0;
  padding: 0;
}
body :where(.wp-site-blocks) {
  margin-block: 0;
}
body :where(.wp-block-group .has-background) {
  padding: var(--wp--preset--spacing--30, 1.5rem);
}

main .is-layout-flex {
  display: flex;
  gap: var(--wp--style--block-gap, 1rem);
}
@media (max-width: 599.98px) {
  main .is-layout-flex {
    flex-direction: column;
  }
}
@media (min-width: 600px) {
  main .is-layout-flex {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
main .entry-content.wp-block-post-content {
  width: 100%;
  display: grid;
  grid-template-columns: [full-start] minmax(var(--wp--preset--spacing--20, 1rem), 1fr) [wide-start] minmax(0, calc(( - ) / 2)) [content-start] minmax(0, ) [content-end] minmax(0, calc(( - ) / 2)) [wide-end] minmax(var(--wp--preset--spacing--20, 1rem), 1fr) [full-end];
}
main .entry-content.wp-block-post-content > * {
  grid-column: content;
  width: 100%;
}
main .wp-block-columns {
  --wp--style--block-gap: var(--grid-gap, 1.5rem);
  --widgets-spacing: var(--grid-gap, 1.5rem);
}
main .wp-block-button__link, main .wp-element-button {
  background-color: transparent;
  box-sizing: border-box;
  border-style: solid;
  display: inline-block;
}
main .has-small-font-size,
main .has-small-font-size,
main .has-medium-font-size,
main .has-large-font-size,
main .has-x-large-font-size,
main .has-xxl-font-size {
  line-height: 1.4;
  font-weight: 600;
}
main .aligncenter, main .aligncenter {
  display: block;
  margin-inline: auto;
  clear: both;
}
main .alignleft, main .alignleft {
  float: left;
  margin-inline-end: 1.5rem;
  margin-block-end: 1rem;
}
main .alignright, main .alignright {
  float: right;
  margin-inline-start: 1.5rem;
  margin-block-end: 1rem;
}
main .entry-content.wp-block-post-content > .alignwide,
main .entry-content.wp-block-post-content > .alignwide {
  grid-column: wide;
  max-width: 100%;
}
main .entry-content.wp-block-post-content > .alignfull,
main .entry-content.wp-block-post-content > .alignfull {
  grid-column: full;
  max-width: 100%;
  width: 100%;
}
main .entry-content.wp-block-post-content > .alignfull img,
main .entry-content.wp-block-post-content > .alignfull img {
  width: 100%;
  object-fit: cover;
}
main .wp-block-columns {
  display: flex;
  gap: var(--wp--style--block-gap, 1.5rem);
}
@media (max-width: 599.98px) {
  main .wp-block-columns {
    flex-direction: column;
  }
}
@media (min-width: 600px) {
  main .wp-block-columns {
    flex-wrap: nowrap;
  }
}
main .wp-block-column {
  flex-grow: 1;
  flex-basis: 0;
  min-width: 0;
  word-break: break-word;
}
main figure {
  margin: 0 0 1rem 0;
}
main figcaption, main .wp-caption-text, main .gallery-caption {
  font-size: 0.8125rem;
  text-align: center;
  margin-top: 0.5rem;
  color: var(--color-text-muted, #666);
  line-height: 1.4;
}
main .wp-block-image img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
main .wp-caption {
  margin-block-end: 1.25rem;
  max-width: 100%;
}
main .wp-caption img {
  display: block;
  margin-inline: auto;
}

.wp-block-group > .wp-block-group, .wp-block-group .wp-block-columns, .wp-block-group .wp-block-cover {
  --padding-left: 0;
  --padding-right: 0;
  padding-inline: 0;
  margin-inline: 0;
  max-width: none;
}
.wp-block-group > *:first-child {
  margin-top: 0;
}

.wp-block-group,
.wp-block-columns {
  gap: var(--grid-gap);
}
.wp-block-group.wp-block-columns,
.wp-block-columns.wp-block-columns {
  column-gap: var(--grid-gap-column, var(--grid-gap));
  row-gap: var(--grid-gap-row, var(--grid-gap));
}

@media (max-width: 781.98px) {
  :root {
    --grid-gap-row: var(--wp--preset--spacing--40, 1.5rem);
    --grid-gap-column: var(--wp--preset--spacing--40, 1.5rem);
  }
}
@media (min-width: 782px) {
  :root {
    --grid-gap-row: var(--wp--preset--spacing--40, 2rem);
    --grid-gap-column: var(--wp--preset--spacing--60, 5rem);
  }
}
@media (min-width: 920px) {
  :root {
    --section-px: var(--wp--preset--spacing--40, 2rem);
    --section-pt: var(--wp--preset--spacing--100, 8rem);
    --section-pb: var(--wp--preset--spacing--100, 8rem);
  }
}
.is-style-light {
  --b-bg: var(--wp--preset--color--white);
  --b-bg-alt: var(--wp--preset--color--dark-light-90);
  --b-text: var(--wp--preset--color--text);
  --b-border: var(--wp--preset--color--dark-light-50);
  --b-heading: var(--wp--preset--color--text);
  --b-heading-alt: var(--wp--preset--color--brand);
  --b-link: var(--wp--preset--color--brand);
  --b-link-hover: var(--wp--preset--color--brand-light-60);
  --b-btn-bg: var(--wp--preset--color--brand);
  --b-btn-text: var(--wp--preset--color--white);
  --b-btn-outline: var(--wp--preset--color--brand);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --b-btn-text-hover: var(--wp--preset--color--white);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--brand);
  --b-btn-secondary-outline: var(--wp--preset--color--brand);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-text-hover: var(--wp--preset--color--white);
  --b-svg-fill: var(--wp--preset--color--brand);
  --b-icon-filter: invert(0%) var(--filter-brand);
  --b-svg-opacity: 1;
}

.is-style-dark {
  --b-bg: var(--wp--preset--color--brand-dark-60);
  --b-bg-alt: var(--wp--preset--color--brand-dark-90);
  --b-text: var(--wp--preset--color--white);
  --b-border: var(--wp--preset--color--brand-dark-50);
  --b-heading: var(--wp--preset--color--white);
  --b-heading-alt: var(--wp--preset--color--white-dark-20);
  --b-link: var(--wp--preset--color--white-dark-20);
  --b-link-hover: var(--wp--preset--color--white);
  --b-btn-bg: var(--wp--preset--color--white);
  --b-btn-text: var(--wp--preset--color--brand-dark-20);
  --b-btn-outline: var(--wp--preset--color--white-dark-80);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --b-btn-text-hover: var(--wp--preset--color--dark);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--white);
  --b-btn-secondary-outline: var(--wp--preset--color--white);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--brand);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--brand);
  --b-btn-secondary-text-hover: var(--wp--preset--color--white);
  --b-svg-fill: var(--wp--preset--color--white);
  --b-icon-filter: invert(100%);
  --b-svg-opacity: 1;
}

.is-style-brand {
  --b-bg: var(--wp--preset--color--brand);
  --b-bg-alt: var(--wp--preset--color--brand-dark-90);
  --b-text: var(--wp--preset--color--white);
  --b-border: var(--wp--preset--color--brand-dark-30);
  --b-heading: var(--wp--preset--color--white);
  --b-heading-alt: var(--wp--preset--color--white-dark-20);
  --b-link: var(--wp--preset--color--white-dark-20);
  --b-link-hover: var(--wp--preset--color--brand-light-90);
  --b-btn-bg: var(--wp--preset--color--white);
  --b-btn-text: var(--wp--preset--color--brand-dark-20);
  --b-btn-outline: var(--wp--preset--color--white-dark-80);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-60);
  --b-btn-text-hover: var(--wp--preset--color--dark);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--white);
  --b-btn-secondary-outline: var(--wp--preset--color--white);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--white);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--white);
  --b-btn-secondary-text-hover: var(--wp--preset--color--dark);
  --b-svg-fill: var(--wp--preset--color--white);
  --b-icon-filter: invert(100%);
  --b-svg-opacity: 1;
}

.is-style-accent-1 {
  --b-bg: var(--wp--preset--color--accent-1);
  --b-bg-alt: var(--wp--preset--color--accent-1-dark-20);
  --b-text: var(--wp--preset--color--text);
  --b-border: var(--wp--preset--color--accent-1-dark-50);
  --b-heading: var(--wp--preset--color--text);
  --b-heading-alt: var(--wp--preset--color--brand);
  --b-link: var(--wp--preset--color--brand);
  --b-link-hover: var(--wp--preset--color--brand-light-60);
  --b-btn-bg: var(--wp--preset--color--brand);
  --b-btn-text: var(--wp--preset--color--white);
  --b-btn-outline: var(--wp--preset--color--brand);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --b-btn-text-hover: var(--wp--preset--color--white);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--brand);
  --b-btn-secondary-outline: var(--wp--preset--color--brand);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-text-hover: var(--wp--preset--color--white);
  --b-svg-fill: var(--wp--preset--color--brand);
  --b-icon-filter: invert(0%) var(--filter-brand);
  --b-svg-opacity: 1;
}

.is-style-muted {
  --b-bg: var(--wp--preset--color--gradient-1);
  --b-bg-alt: var(--wp--preset--color--dark-light-80);
  --b-text: var(--wp--preset--color--text);
  --b-border: var(--wp--preset--color--black-light-50);
  --b-heading: var(--wp--preset--color--text);
  --b-heading-alt: var(--wp--preset--color--brand);
  --b-link: var(--wp--preset--color--brand);
  --b-link-hover: var(--wp--preset--color--brand-light-60);
  --b-btn-bg: var(--wp--preset--color--brand);
  --b-btn-text: var(--wp--preset--color--white);
  --b-btn-outline: var(--wp--preset--color--brand);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --b-btn-text-hover: var(--wp--preset--color--white);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--brand);
  --b-btn-secondary-outline: var(--wp--preset--color--brand);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--brand-dark-40);
  --b-btn-secondary-text-hover: var(--wp--preset--color--white);
  --b-svg-fill: var(--wp--preset--color--brand);
  --b-icon-filter: invert(0%) var(--filter-brand);
  --b-svg-opacity: 1;
}

:root {
  --wp--preset--color--brand-light-10: color-mix(in srgb, var(--wp--preset--color--brand), white 10%);
  --wp--preset--color--brand-dark-10: color-mix(in srgb, var(--wp--preset--color--brand), black 10%);
  --wp--preset--color--brand-light-20: color-mix(in srgb, var(--wp--preset--color--brand), white 20%);
  --wp--preset--color--brand-dark-20: color-mix(in srgb, var(--wp--preset--color--brand), black 20%);
  --wp--preset--color--brand-light-30: color-mix(in srgb, var(--wp--preset--color--brand), white 30%);
  --wp--preset--color--brand-dark-30: color-mix(in srgb, var(--wp--preset--color--brand), black 30%);
  --wp--preset--color--brand-light-40: color-mix(in srgb, var(--wp--preset--color--brand), white 40%);
  --wp--preset--color--brand-dark-40: color-mix(in srgb, var(--wp--preset--color--brand), black 40%);
  --wp--preset--color--brand-light-50: color-mix(in srgb, var(--wp--preset--color--brand), white 50%);
  --wp--preset--color--brand-dark-50: color-mix(in srgb, var(--wp--preset--color--brand), black 50%);
  --wp--preset--color--brand-light-60: color-mix(in srgb, var(--wp--preset--color--brand), white 60%);
  --wp--preset--color--brand-dark-60: color-mix(in srgb, var(--wp--preset--color--brand), black 60%);
  --wp--preset--color--brand-light-70: color-mix(in srgb, var(--wp--preset--color--brand), white 70%);
  --wp--preset--color--brand-dark-70: color-mix(in srgb, var(--wp--preset--color--brand), black 70%);
  --wp--preset--color--brand-light-80: color-mix(in srgb, var(--wp--preset--color--brand), white 80%);
  --wp--preset--color--brand-dark-80: color-mix(in srgb, var(--wp--preset--color--brand), black 80%);
  --wp--preset--color--brand-light-90: color-mix(in srgb, var(--wp--preset--color--brand), white 90%);
  --wp--preset--color--brand-dark-90: color-mix(in srgb, var(--wp--preset--color--brand), black 90%);
  --wp--preset--color--accent-1-light-10: color-mix(in srgb, var(--wp--preset--color--accent-1), white 10%);
  --wp--preset--color--accent-1-dark-10: color-mix(in srgb, var(--wp--preset--color--accent-1), black 10%);
  --wp--preset--color--accent-1-light-20: color-mix(in srgb, var(--wp--preset--color--accent-1), white 20%);
  --wp--preset--color--accent-1-dark-20: color-mix(in srgb, var(--wp--preset--color--accent-1), black 20%);
  --wp--preset--color--accent-1-light-30: color-mix(in srgb, var(--wp--preset--color--accent-1), white 30%);
  --wp--preset--color--accent-1-dark-30: color-mix(in srgb, var(--wp--preset--color--accent-1), black 30%);
  --wp--preset--color--accent-1-light-40: color-mix(in srgb, var(--wp--preset--color--accent-1), white 40%);
  --wp--preset--color--accent-1-dark-40: color-mix(in srgb, var(--wp--preset--color--accent-1), black 40%);
  --wp--preset--color--accent-1-light-50: color-mix(in srgb, var(--wp--preset--color--accent-1), white 50%);
  --wp--preset--color--accent-1-dark-50: color-mix(in srgb, var(--wp--preset--color--accent-1), black 50%);
  --wp--preset--color--accent-1-light-60: color-mix(in srgb, var(--wp--preset--color--accent-1), white 60%);
  --wp--preset--color--accent-1-dark-60: color-mix(in srgb, var(--wp--preset--color--accent-1), black 60%);
  --wp--preset--color--accent-1-light-70: color-mix(in srgb, var(--wp--preset--color--accent-1), white 70%);
  --wp--preset--color--accent-1-dark-70: color-mix(in srgb, var(--wp--preset--color--accent-1), black 70%);
  --wp--preset--color--accent-1-light-80: color-mix(in srgb, var(--wp--preset--color--accent-1), white 80%);
  --wp--preset--color--accent-1-dark-80: color-mix(in srgb, var(--wp--preset--color--accent-1), black 80%);
  --wp--preset--color--accent-1-light-90: color-mix(in srgb, var(--wp--preset--color--accent-1), white 90%);
  --wp--preset--color--accent-1-dark-90: color-mix(in srgb, var(--wp--preset--color--accent-1), black 90%);
  --wp--preset--color--gradient-1-light-10: color-mix(in srgb, var(--wp--preset--color--gradient-1), white 10%);
  --wp--preset--color--gradient-1-dark-10: color-mix(in srgb, var(--wp--preset--color--gradient-1), black 10%);
  --wp--preset--color--gradient-1-light-20: color-mix(in srgb, var(--wp--preset--color--gradient-1), white 20%);
  --wp--preset--color--gradient-1-dark-20: color-mix(in srgb, var(--wp--preset--color--gradient-1), black 20%);
  --wp--preset--color--gradient-1-light-30: color-mix(in srgb, var(--wp--preset--color--gradient-1), white 30%);
  --wp--preset--color--gradient-1-dark-30: color-mix(in srgb, var(--wp--preset--color--gradient-1), black 30%);
  --wp--preset--color--gradient-1-light-40: color-mix(in srgb, var(--wp--preset--color--gradient-1), white 40%);
  --wp--preset--color--gradient-1-dark-40: color-mix(in srgb, var(--wp--preset--color--gradient-1), black 40%);
  --wp--preset--color--gradient-1-light-50: color-mix(in srgb, var(--wp--preset--color--gradient-1), white 50%);
  --wp--preset--color--gradient-1-dark-50: color-mix(in srgb, var(--wp--preset--color--gradient-1), black 50%);
  --wp--preset--color--gradient-1-light-60: color-mix(in srgb, var(--wp--preset--color--gradient-1), white 60%);
  --wp--preset--color--gradient-1-dark-60: color-mix(in srgb, var(--wp--preset--color--gradient-1), black 60%);
  --wp--preset--color--gradient-1-light-70: color-mix(in srgb, var(--wp--preset--color--gradient-1), white 70%);
  --wp--preset--color--gradient-1-dark-70: color-mix(in srgb, var(--wp--preset--color--gradient-1), black 70%);
  --wp--preset--color--gradient-1-light-80: color-mix(in srgb, var(--wp--preset--color--gradient-1), white 80%);
  --wp--preset--color--gradient-1-dark-80: color-mix(in srgb, var(--wp--preset--color--gradient-1), black 80%);
  --wp--preset--color--gradient-1-light-90: color-mix(in srgb, var(--wp--preset--color--gradient-1), white 90%);
  --wp--preset--color--gradient-1-dark-90: color-mix(in srgb, var(--wp--preset--color--gradient-1), black 90%);
  --wp--preset--color--dark-light-10: color-mix(in srgb, var(--wp--preset--color--dark), white 10%);
  --wp--preset--color--dark-dark-10: color-mix(in srgb, var(--wp--preset--color--dark), black 10%);
  --wp--preset--color--dark-light-20: color-mix(in srgb, var(--wp--preset--color--dark), white 20%);
  --wp--preset--color--dark-dark-20: color-mix(in srgb, var(--wp--preset--color--dark), black 20%);
  --wp--preset--color--dark-light-30: color-mix(in srgb, var(--wp--preset--color--dark), white 30%);
  --wp--preset--color--dark-dark-30: color-mix(in srgb, var(--wp--preset--color--dark), black 30%);
  --wp--preset--color--dark-light-40: color-mix(in srgb, var(--wp--preset--color--dark), white 40%);
  --wp--preset--color--dark-dark-40: color-mix(in srgb, var(--wp--preset--color--dark), black 40%);
  --wp--preset--color--dark-light-50: color-mix(in srgb, var(--wp--preset--color--dark), white 50%);
  --wp--preset--color--dark-dark-50: color-mix(in srgb, var(--wp--preset--color--dark), black 50%);
  --wp--preset--color--dark-light-60: color-mix(in srgb, var(--wp--preset--color--dark), white 60%);
  --wp--preset--color--dark-dark-60: color-mix(in srgb, var(--wp--preset--color--dark), black 60%);
  --wp--preset--color--dark-light-70: color-mix(in srgb, var(--wp--preset--color--dark), white 70%);
  --wp--preset--color--dark-dark-70: color-mix(in srgb, var(--wp--preset--color--dark), black 70%);
  --wp--preset--color--dark-light-80: color-mix(in srgb, var(--wp--preset--color--dark), white 80%);
  --wp--preset--color--dark-dark-80: color-mix(in srgb, var(--wp--preset--color--dark), black 80%);
  --wp--preset--color--dark-light-90: color-mix(in srgb, var(--wp--preset--color--dark), white 90%);
  --wp--preset--color--dark-dark-90: color-mix(in srgb, var(--wp--preset--color--dark), black 90%);
  --wp--preset--color--text-light-10: color-mix(in srgb, var(--wp--preset--color--text), white 10%);
  --wp--preset--color--text-dark-10: color-mix(in srgb, var(--wp--preset--color--text), black 10%);
  --wp--preset--color--text-light-20: color-mix(in srgb, var(--wp--preset--color--text), white 20%);
  --wp--preset--color--text-dark-20: color-mix(in srgb, var(--wp--preset--color--text), black 20%);
  --wp--preset--color--text-light-30: color-mix(in srgb, var(--wp--preset--color--text), white 30%);
  --wp--preset--color--text-dark-30: color-mix(in srgb, var(--wp--preset--color--text), black 30%);
  --wp--preset--color--text-light-40: color-mix(in srgb, var(--wp--preset--color--text), white 40%);
  --wp--preset--color--text-dark-40: color-mix(in srgb, var(--wp--preset--color--text), black 40%);
  --wp--preset--color--text-light-50: color-mix(in srgb, var(--wp--preset--color--text), white 50%);
  --wp--preset--color--text-dark-50: color-mix(in srgb, var(--wp--preset--color--text), black 50%);
  --wp--preset--color--text-light-60: color-mix(in srgb, var(--wp--preset--color--text), white 60%);
  --wp--preset--color--text-dark-60: color-mix(in srgb, var(--wp--preset--color--text), black 60%);
  --wp--preset--color--text-light-70: color-mix(in srgb, var(--wp--preset--color--text), white 70%);
  --wp--preset--color--text-dark-70: color-mix(in srgb, var(--wp--preset--color--text), black 70%);
  --wp--preset--color--text-light-80: color-mix(in srgb, var(--wp--preset--color--text), white 80%);
  --wp--preset--color--text-dark-80: color-mix(in srgb, var(--wp--preset--color--text), black 80%);
  --wp--preset--color--text-light-90: color-mix(in srgb, var(--wp--preset--color--text), white 90%);
  --wp--preset--color--text-dark-90: color-mix(in srgb, var(--wp--preset--color--text), black 90%);
  --wp--preset--color--white-light-10: color-mix(in srgb, var(--wp--preset--color--white), white 10%);
  --wp--preset--color--white-dark-10: color-mix(in srgb, var(--wp--preset--color--white), black 10%);
  --wp--preset--color--white-light-20: color-mix(in srgb, var(--wp--preset--color--white), white 20%);
  --wp--preset--color--white-dark-20: color-mix(in srgb, var(--wp--preset--color--white), black 20%);
  --wp--preset--color--white-light-30: color-mix(in srgb, var(--wp--preset--color--white), white 30%);
  --wp--preset--color--white-dark-30: color-mix(in srgb, var(--wp--preset--color--white), black 30%);
  --wp--preset--color--white-light-40: color-mix(in srgb, var(--wp--preset--color--white), white 40%);
  --wp--preset--color--white-dark-40: color-mix(in srgb, var(--wp--preset--color--white), black 40%);
  --wp--preset--color--white-light-50: color-mix(in srgb, var(--wp--preset--color--white), white 50%);
  --wp--preset--color--white-dark-50: color-mix(in srgb, var(--wp--preset--color--white), black 50%);
  --wp--preset--color--white-light-60: color-mix(in srgb, var(--wp--preset--color--white), white 60%);
  --wp--preset--color--white-dark-60: color-mix(in srgb, var(--wp--preset--color--white), black 60%);
  --wp--preset--color--white-light-70: color-mix(in srgb, var(--wp--preset--color--white), white 70%);
  --wp--preset--color--white-dark-70: color-mix(in srgb, var(--wp--preset--color--white), black 70%);
  --wp--preset--color--white-light-80: color-mix(in srgb, var(--wp--preset--color--white), white 80%);
  --wp--preset--color--white-dark-80: color-mix(in srgb, var(--wp--preset--color--white), black 80%);
  --wp--preset--color--white-light-90: color-mix(in srgb, var(--wp--preset--color--white), white 90%);
  --wp--preset--color--white-dark-90: color-mix(in srgb, var(--wp--preset--color--white), black 90%);
  --wp--preset--color--black-light-10: color-mix(in srgb, var(--wp--preset--color--black), white 10%);
  --wp--preset--color--black-dark-10: color-mix(in srgb, var(--wp--preset--color--black), black 10%);
  --wp--preset--color--black-light-20: color-mix(in srgb, var(--wp--preset--color--black), white 20%);
  --wp--preset--color--black-dark-20: color-mix(in srgb, var(--wp--preset--color--black), black 20%);
  --wp--preset--color--black-light-30: color-mix(in srgb, var(--wp--preset--color--black), white 30%);
  --wp--preset--color--black-dark-30: color-mix(in srgb, var(--wp--preset--color--black), black 30%);
  --wp--preset--color--black-light-40: color-mix(in srgb, var(--wp--preset--color--black), white 40%);
  --wp--preset--color--black-dark-40: color-mix(in srgb, var(--wp--preset--color--black), black 40%);
  --wp--preset--color--black-light-50: color-mix(in srgb, var(--wp--preset--color--black), white 50%);
  --wp--preset--color--black-dark-50: color-mix(in srgb, var(--wp--preset--color--black), black 50%);
  --wp--preset--color--black-light-60: color-mix(in srgb, var(--wp--preset--color--black), white 60%);
  --wp--preset--color--black-dark-60: color-mix(in srgb, var(--wp--preset--color--black), black 60%);
  --wp--preset--color--black-light-70: color-mix(in srgb, var(--wp--preset--color--black), white 70%);
  --wp--preset--color--black-dark-70: color-mix(in srgb, var(--wp--preset--color--black), black 70%);
  --wp--preset--color--black-light-80: color-mix(in srgb, var(--wp--preset--color--black), white 80%);
  --wp--preset--color--black-dark-80: color-mix(in srgb, var(--wp--preset--color--black), black 80%);
  --wp--preset--color--black-light-90: color-mix(in srgb, var(--wp--preset--color--black), white 90%);
  --wp--preset--color--black-dark-90: color-mix(in srgb, var(--wp--preset--color--black), black 90%);
}

html {
  --wp-admin--admin-bar--height: 0;
  margin-top: 0 !important;
}

#wpadminbar {
  display: none;
}

body {
  line-height: var(--wp--custom--line-height--body, 1.8);
}
body em, body .italic-text {
  font-style: italic;
  font-weight: 500; /* Le navigateur piochera automatiquement dans le fichier Italic */
}
body strong {
  font-weight: 600;
}
body a:focus,
body button:focus {
  outline: 3px solid var(--wp--preset--color--brand-light-40);
  outline-offset: 2px;
  box-shadow: 0 0 0 5px rgba(44, 94, 46, 0.3);
}
body .wp-block-button__link .wp-block-button__link, body .wp-block-button__link .wp-element-button, body .wp-block-button__link .elementor-button,
body .wp-block-button__link .social-link, body .wp-element-button .wp-block-button__link, body .wp-element-button .wp-element-button, body .wp-element-button .elementor-button,
body .wp-element-button .social-link, body .elementor-button .wp-block-button__link, body .elementor-button .wp-element-button, body .elementor-button .elementor-button,
body .elementor-button .social-link, body .social-link .wp-block-button__link, body .social-link .wp-element-button, body .social-link .elementor-button,
body .social-link .social-link, body .btn .wp-block-button__link, body .btn .wp-element-button, body .btn .elementor-button,
body .btn .social-link, body .wpcf7-response-output .wp-block-button__link, body .wpcf7-response-output .wp-element-button, body .wpcf7-response-output .elementor-button,
body .wpcf7-response-output .social-link, body .wpcf7-submit .wp-block-button__link, body .wpcf7-submit .wp-element-button, body .wpcf7-submit .elementor-button,
body .wpcf7-submit .social-link {
  text-decoration: none;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  padding: 0;
  width: auto;
  letter-spacing: 0.02em;
  outline: none;
  background-clip: padding-box;
}
body .wp-block-button__link .wp-block-button__link,
body .wp-block-button__link .wp-block-button__link span,
body .wp-block-button__link .wp-block-button__link a, body .wp-block-button__link .wp-element-button,
body .wp-block-button__link .wp-element-button span,
body .wp-block-button__link .wp-element-button a, body .wp-block-button__link .elementor-button,
body .wp-block-button__link .elementor-button span,
body .wp-block-button__link .elementor-button a,
body .wp-block-button__link .social-link,
body .wp-block-button__link .social-link span,
body .wp-block-button__link .social-link a, body .wp-element-button .wp-block-button__link,
body .wp-element-button .wp-block-button__link span,
body .wp-element-button .wp-block-button__link a, body .wp-element-button .wp-element-button,
body .wp-element-button .wp-element-button span,
body .wp-element-button .wp-element-button a, body .wp-element-button .elementor-button,
body .wp-element-button .elementor-button span,
body .wp-element-button .elementor-button a,
body .wp-element-button .social-link,
body .wp-element-button .social-link span,
body .wp-element-button .social-link a, body .elementor-button .wp-block-button__link,
body .elementor-button .wp-block-button__link span,
body .elementor-button .wp-block-button__link a, body .elementor-button .wp-element-button,
body .elementor-button .wp-element-button span,
body .elementor-button .wp-element-button a, body .elementor-button .elementor-button,
body .elementor-button .elementor-button span,
body .elementor-button .elementor-button a,
body .elementor-button .social-link,
body .elementor-button .social-link span,
body .elementor-button .social-link a, body .social-link .wp-block-button__link,
body .social-link .wp-block-button__link span,
body .social-link .wp-block-button__link a, body .social-link .wp-element-button,
body .social-link .wp-element-button span,
body .social-link .wp-element-button a, body .social-link .elementor-button,
body .social-link .elementor-button span,
body .social-link .elementor-button a,
body .social-link .social-link,
body .social-link .social-link span,
body .social-link .social-link a, body .btn .wp-block-button__link,
body .btn .wp-block-button__link span,
body .btn .wp-block-button__link a, body .btn .wp-element-button,
body .btn .wp-element-button span,
body .btn .wp-element-button a, body .btn .elementor-button,
body .btn .elementor-button span,
body .btn .elementor-button a,
body .btn .social-link,
body .btn .social-link span,
body .btn .social-link a, body .wpcf7-response-output .wp-block-button__link,
body .wpcf7-response-output .wp-block-button__link span,
body .wpcf7-response-output .wp-block-button__link a, body .wpcf7-response-output .wp-element-button,
body .wpcf7-response-output .wp-element-button span,
body .wpcf7-response-output .wp-element-button a, body .wpcf7-response-output .elementor-button,
body .wpcf7-response-output .elementor-button span,
body .wpcf7-response-output .elementor-button a,
body .wpcf7-response-output .social-link,
body .wpcf7-response-output .social-link span,
body .wpcf7-response-output .social-link a, body .wpcf7-submit .wp-block-button__link,
body .wpcf7-submit .wp-block-button__link span,
body .wpcf7-submit .wp-block-button__link a, body .wpcf7-submit .wp-element-button,
body .wpcf7-submit .wp-element-button span,
body .wpcf7-submit .wp-element-button a, body .wpcf7-submit .elementor-button,
body .wpcf7-submit .elementor-button span,
body .wpcf7-submit .elementor-button a,
body .wpcf7-submit .social-link,
body .wpcf7-submit .social-link span,
body .wpcf7-submit .social-link a {
  color: inherit;
  fill: currentColor;
  background: transparent;
  border: none;
  font-family: inherit;
  font-weight: 400;
  text-transform: none;
  line-height: 1.2;
  border-radius: inherit;
  box-shadow: none;
}
body .wp-block-button__link, body .wp-element-button, body .elementor-button, body .social-link, body .btn, body .wpcf7-response-output, body .wpcf7-submit {
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
body .wp-block-button__link:hover, body .wp-element-button:hover, body .elementor-button:hover, body .social-link:hover, body .btn:hover, body .wpcf7-response-output:hover, body .wpcf7-submit:hover {
  transform: translateY(-4px);
  filter: brightness(1.1);
}
body .wp-block-button__link:active, body .wp-element-button:active, body .elementor-button:active, body .social-link:active, body .btn:active, body .wpcf7-response-output:active, body .wpcf7-submit:active {
  transform: translateY(-1px);
}
body .wp-block-button__link, body .wp-element-button, body .elementor-button, body .social-link, body .btn, body .wpcf7-response-output, body .wpcf7-submit {
  display: inline-flex;
  align-items: center;
  justify-content: var(--btn-default-align, center);
  text-align: var(--btn-default-text-align, center);
  gap: 10px;
  overflow: hidden;
  font-family: var(--btn-default-ff, var(--font-body));
  font-size: var(--btn-default-fz, var(--fz-sm));
  padding: var(--btn-default-pv, var(--space-xs)) var(--btn-default-ph, var(--space-md));
  border-radius: var(--btn-default-rd, var(--radius-full));
  box-shadow: var(--btn-default-sh, var(--sh-none)) !important;
}
body .wp-block-button__link .btn-icon, body .wp-element-button .btn-icon, body .elementor-button .btn-icon, body .social-link .btn-icon, body .btn .btn-icon, body .wpcf7-response-output .btn-icon, body .wpcf7-submit .btn-icon {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}
body .wp-block-button__link .btn-icon svg, body .wp-element-button .btn-icon svg, body .elementor-button .btn-icon svg, body .social-link .btn-icon svg, body .btn .btn-icon svg, body .wpcf7-response-output .btn-icon svg, body .wpcf7-submit .btn-icon svg {
  width: 1em;
  height: 1em;
}
body .wp-block-button__link, body .wp-element-button, body .elementor-button, body .social-link, body .btn, body .wpcf7-response-output, body .wpcf7-submit {
  border-width: 2px;
  border-style: solid;
  border-radius: var(--btn-default-rd, var(--radius-full));
  box-shadow: var(--btn-default-sh, var(--sh-none));
}
body .wp-block-button__link:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), body .wp-element-button:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), body .elementor-button:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), body .social-link:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), body .btn:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), body .wpcf7-response-output:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *), body .wpcf7-submit:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *) {
  background-color: var(--b-btn-bg, var(--wp--preset--color--brand));
  color: var(--b-btn-text, var(--wp--preset--color--white));
  border-color: transparent;
}
body .wp-block-button__link:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, body .wp-element-button:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, body .elementor-button:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, body .social-link:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, body .btn:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, body .wpcf7-response-output:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover, body .wpcf7-submit:not(.is-secondary):not(.is-style-outline):not([class*=is-style-outline] *):hover {
  background-color: var(--b-btn-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-text-hover, var(--wp--preset--color--white));
  border-color: transparent;
}
body .wp-block-button__link.is-style-outline:not(.is-secondary), body .wp-element-button.is-style-outline:not(.is-secondary), body .elementor-button.is-style-outline:not(.is-secondary), body .social-link.is-style-outline:not(.is-secondary), body .btn.is-style-outline:not(.is-secondary), body .wpcf7-response-output.is-style-outline:not(.is-secondary), body .wpcf7-submit.is-style-outline:not(.is-secondary) {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-outline, var(--wp--preset--color--brand));
}
body .wp-block-button__link.is-style-outline:not(.is-secondary):hover, body .wp-element-button.is-style-outline:not(.is-secondary):hover, body .elementor-button.is-style-outline:not(.is-secondary):hover, body .social-link.is-style-outline:not(.is-secondary):hover, body .btn.is-style-outline:not(.is-secondary):hover, body .wpcf7-response-output.is-style-outline:not(.is-secondary):hover, body .wpcf7-submit.is-style-outline:not(.is-secondary):hover {
  border-color: transparent;
  background-color: var(--b-btn-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-text-hover, var(--wp--preset--color--white));
}
body .wp-block-button__link.is-style-outline:not(.is-secondary):hover span, body .wp-element-button.is-style-outline:not(.is-secondary):hover span, body .elementor-button.is-style-outline:not(.is-secondary):hover span, body .social-link.is-style-outline:not(.is-secondary):hover span, body .btn.is-style-outline:not(.is-secondary):hover span, body .wpcf7-response-output.is-style-outline:not(.is-secondary):hover span, body .wpcf7-submit.is-style-outline:not(.is-secondary):hover span {
  color: inherit;
  filter: none;
}
body .wp-block-button__link.is-style-outline:not(.is-secondary) span, body .wp-element-button.is-style-outline:not(.is-secondary) span, body .elementor-button.is-style-outline:not(.is-secondary) span, body .social-link.is-style-outline:not(.is-secondary) span, body .btn.is-style-outline:not(.is-secondary) span, body .wpcf7-response-output.is-style-outline:not(.is-secondary) span, body .wpcf7-submit.is-style-outline:not(.is-secondary) span {
  color: inherit;
  background: transparent;
}
:is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-block-button__link:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-element-button:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .elementor-button:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .social-link:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .btn:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-response-output:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-submit:not(.is-secondary) {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-outline, var(--wp--preset--color--brand));
}
:is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-block-button__link:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-element-button:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .elementor-button:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .social-link:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .btn:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-response-output:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-submit:not(.is-secondary):hover {
  border-color: transparent;
  background-color: var(--b-btn-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-text-hover, var(--wp--preset--color--white));
}
:is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-block-button__link:not(.is-secondary):hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-element-button:not(.is-secondary):hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .elementor-button:not(.is-secondary):hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .social-link:not(.is-secondary):hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .btn:not(.is-secondary):hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-response-output:not(.is-secondary):hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-submit:not(.is-secondary):hover span {
  color: inherit;
  filter: none;
}
:is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-block-button__link:not(.is-secondary) span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-element-button:not(.is-secondary) span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .elementor-button:not(.is-secondary) span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .social-link:not(.is-secondary) span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .btn:not(.is-secondary) span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-response-output:not(.is-secondary) span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-submit:not(.is-secondary) span {
  color: inherit;
  background: transparent;
}
body .wp-block-button__link.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), body .wp-element-button.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), body .elementor-button.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), body .social-link.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), body .btn.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), body .wpcf7-response-output.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *), body .wpcf7-submit.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *) {
  background-color: var(--b-btn-secondary-bg, transparent);
  color: var(--b-btn-secondary-text, var(--wp--preset--color--brand));
  border-color: var(--b-btn-secondary-outline, var(--wp--preset--color--brand));
}
body .wp-block-button__link.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, body .wp-element-button.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, body .elementor-button.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, body .social-link.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, body .btn.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, body .wpcf7-response-output.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover, body .wpcf7-submit.is-secondary:not(.is-style-outline):not([class*=is-style-outline] *):hover {
  background-color: var(--b-btn-secondary-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-secondary-text-hover, var(--wp--preset--color--white));
  border-color: var(--b-btn-secondary-outline-hover, var(--wp--preset--color--brand));
}
body .wp-block-button__link.is-secondary.is-style-outline, body .wp-element-button.is-secondary.is-style-outline, body .elementor-button.is-secondary.is-style-outline, body .social-link.is-secondary.is-style-outline, body .btn.is-secondary.is-style-outline, body .wpcf7-response-output.is-secondary.is-style-outline, body .wpcf7-submit.is-secondary.is-style-outline {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-secondary-outline, var(--wp--preset--color--brand));
}
body .wp-block-button__link.is-secondary.is-style-outline:hover, body .wp-element-button.is-secondary.is-style-outline:hover, body .elementor-button.is-secondary.is-style-outline:hover, body .social-link.is-secondary.is-style-outline:hover, body .btn.is-secondary.is-style-outline:hover, body .wpcf7-response-output.is-secondary.is-style-outline:hover, body .wpcf7-submit.is-secondary.is-style-outline:hover {
  border-color: transparent;
  background-color: var(--b-btn-secondary-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-secondary-text-hover, var(--wp--preset--color--white));
}
body .wp-block-button__link.is-secondary.is-style-outline:hover span, body .wp-element-button.is-secondary.is-style-outline:hover span, body .elementor-button.is-secondary.is-style-outline:hover span, body .social-link.is-secondary.is-style-outline:hover span, body .btn.is-secondary.is-style-outline:hover span, body .wpcf7-response-output.is-secondary.is-style-outline:hover span, body .wpcf7-submit.is-secondary.is-style-outline:hover span {
  color: inherit;
  filter: none;
}
body .wp-block-button__link.is-secondary.is-style-outline span, body .wp-element-button.is-secondary.is-style-outline span, body .elementor-button.is-secondary.is-style-outline span, body .social-link.is-secondary.is-style-outline span, body .btn.is-secondary.is-style-outline span, body .wpcf7-response-output.is-secondary.is-style-outline span, body .wpcf7-submit.is-secondary.is-style-outline span {
  color: inherit;
  background: transparent;
}
:is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-block-button__link.is-secondary, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-element-button.is-secondary, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .elementor-button.is-secondary, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .social-link.is-secondary, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .btn.is-secondary, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-response-output.is-secondary, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-submit.is-secondary {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-secondary-outline, var(--wp--preset--color--brand));
}
:is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-block-button__link.is-secondary:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-element-button.is-secondary:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .elementor-button.is-secondary:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .social-link.is-secondary:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .btn.is-secondary:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-response-output.is-secondary:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-submit.is-secondary:hover {
  border-color: transparent;
  background-color: var(--b-btn-secondary-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-secondary-text-hover, var(--wp--preset--color--white));
}
:is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-block-button__link.is-secondary:hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-element-button.is-secondary:hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .elementor-button.is-secondary:hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .social-link.is-secondary:hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .btn.is-secondary:hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-response-output.is-secondary:hover span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-submit.is-secondary:hover span {
  color: inherit;
  filter: none;
}
:is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-block-button__link.is-secondary span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wp-element-button.is-secondary span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .elementor-button.is-secondary span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .social-link.is-secondary span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .btn.is-secondary span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-response-output.is-secondary span, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) body .wpcf7-submit.is-secondary span {
  color: inherit;
  background: transparent;
}
body .social-link {
  padding-inline: var(--btn-default-pv, var(--space-xs));
}
body .social-link svg {
  width: 1em;
  height: 1em;
  display: block;
  flex-shrink: 0;
  fill: currentColor;
  pointer-events: none;
}

.flow > * + *,
.entry-content > * + *,
.section-stack > * + * {
  margin-top: var(--stack-gap);
}

.flow--tight {
  --stack-gap: var(--space-s);
}

.flow--loose {
  --stack-gap: var(--space-xl);
}

html, body {
  overflow-x: hidden;
}
html img,
html video,
html canvas, body img,
body video,
body canvas {
  overflow: clip !important;
  overflow-clip-margin: content-box;
  max-width: 100%;
  height: auto;
}

/*
// admin-body est en niveau 2 ($utils-*) — accessible via fn.get-utils()
body:not(.wp-admin) {
    position:      relative;
    overflow-wrap: anywhere;
    word-break:    break-word;
    margin:        0;
}*/
main {
  margin: 0;
  padding-inline: 0;
  transition: margin-top 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: margin-top;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 400px;
}
main .container {
  margin-inline: auto;
}
main a {
  text-decoration: underline;
  transition: color 0.2s ease;
}
main a:hover, main a:focus {
  text-decoration: none;
}
main img, main figure {
  height: auto;
  display: block;
  margin: 0 auto;
}

.center {
  text-align: center;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.skip-links {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99999;
}
.skip-links:not(:focus-within) {
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  white-space: nowrap;
}
.skip-links:focus-within {
  display: flex;
  justify-content: center;
  gap: 8px;
  padding: 8px 16px;
  background: var(--wp--preset--color--dark);
  height: auto;
  overflow: visible;
  clip: auto;
  clip-path: none;
}

.skip-link {
  background: transparent;
  color: var(--wp--preset--color--white);
  margin: var(--wp--preset--spacing--10) 0;
  padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
  text-decoration: none;
  font-weight: 600;
  font-size: 0.875rem;
  border-radius: var(--btn-default-rd, 4px);
  border: 2px solid var(--wp--preset--color--white);
  white-space: nowrap;
  transition: background-color 0.2s ease;
}
.skip-link:hover {
  background: rgba(255, 255, 255, 0.15);
}
.skip-link:focus, .skip-link:focus-visible {
  outline: 2px solid var(--wp--preset--color--white);
  outline-offset: 3px;
}

.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus, .screen-reader-text:focus-visible {
  clip: auto;
  clip-path: none;
  height: auto;
  width: auto;
  margin: 0;
  overflow: visible;
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 99999;
  padding: 12px 20px;
  background: var(--wp--preset--color--dark);
  color: var(--wp--preset--color--white);
  font-size: 0.875rem;
  font-weight: 600;
  border-radius: var(--btn-default-rd, 4px);
  text-decoration: none;
}

.card-theme-default {
  --card-bg: var(--wp--preset--color--white);
  --card-heading: var(--wp--preset--color--brand);
  --card-text: var(--wp--preset--color--text);
  --card-border: var(--wp--preset--color--dark-light-50);
  --card-list-border: var(--wp--preset--color--brand-light-40);
  --card-list-bullet: var(--wp--preset--color--brand);
  --card-icon: var(--wp--preset--color--brand);
  --card-link: var(--wp--preset--color--brand);
  --card-btn-bg: var(--wp--preset--color--brand);
  --card-btn-text: var(--wp--preset--color--white);
  --card-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --card-btn-text-hover: var(--wp--preset--color--white);
  --card-outline: var(--wp--preset--color--brand);
  --card-btn-secondary-bg: var(--wp--preset--color--transparent);
  --card-btn-secondary-text: var(--wp--preset--color--brand);
  --card-btn-secondary-outline: var(--wp--preset--color--brand);
  --card-btn-secondary-bg-hover: var(--wp--preset--color--brand-dark-40);
  --card-btn-secondary-text-hover: var(--wp--preset--color--white);
  --card-svg-fill: var(--wp--preset--color--brand);
  --card-icon-filter: invert(0%) var(--filter-brand);
  --card-svg-opacity: 1;
}

.card-theme-sans-light {
  --card-bg: transparent;
  --card-heading: var(--wp--preset--color--brand);
  --card-text: var(--wp--preset--color--text);
  --card-border: transparent;
  --card-list-border: var(--wp--preset--color--brand-light-40);
  --card-list-bullet: var(--wp--preset--color--brand);
  --card-icon: var(--wp--preset--color--brand);
  --card-link: var(--wp--preset--color--brand);
  --card-btn-bg: var(--wp--preset--color--brand);
  --card-btn-text: var(--wp--preset--color--white);
  --card-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --card-btn-text-hover: var(--wp--preset--color--white);
  --card-outline: var(--wp--preset--color--brand);
  --card-btn-secondary-bg: var(--wp--preset--color--transparent);
  --card-btn-secondary-text: var(--wp--preset--color--brand);
  --card-btn-secondary-outline: var(--wp--preset--color--brand);
  --card-btn-secondary-bg-hover: var(--wp--preset--color--brand-dark-40);
  --card-btn-secondary-text-hover: var(--wp--preset--color--white);
  --card-svg-fill: var(--wp--preset--color--brand);
  --card-icon-filter: invert(0%) var(--filter-brand);
  --card-svg-opacity: 1;
}

.card-theme-sans-dark {
  --card-bg: transparent;
  --card-heading: var(--wp--preset--color--white-dark-20);
  --card-text: var(--wp--preset--color--white);
  --card-border: transparent;
  --card-list-border: var(--wp--preset--color--brand-dark-50);
  --card-list-bullet: var(--wp--preset--color--white);
  --card-icon: var(--wp--preset--color--white-dark-20);
  --card-link: var(--wp--preset--color--white-dark-20);
  --card-btn-bg: var(--wp--preset--color--white);
  --card-btn-text: var(--wp--preset--color--brand-dark-20);
  --card-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --card-btn-text-hover: var(--wp--preset--color--dark);
  --card-outline: var(--wp--preset--color--white-dark-80);
  --card-btn-secondary-bg: var(--wp--preset--color--transparent);
  --card-btn-secondary-text: var(--wp--preset--color--white);
  --card-btn-secondary-outline: var(--wp--preset--color--white);
  --card-btn-secondary-bg-hover: var(--wp--preset--color--brand);
  --card-btn-secondary-text-hover: var(--wp--preset--color--white);
  --card-svg-fill: var(--wp--preset--color--white);
  --card-icon-filter: invert(100%);
  --card-svg-opacity: 1;
}

.card-theme-dark {
  --card-bg: var(--wp--preset--color--brand-dark-60);
  --card-heading: var(--wp--preset--color--white-dark-20);
  --card-text: var(--wp--preset--color--white);
  --card-border: var(--wp--preset--color--brand-dark-50);
  --card-list-border: var(--wp--preset--color--brand-dark-50);
  --card-list-bullet: var(--wp--preset--color--white);
  --card-icon: var(--wp--preset--color--white-dark-20);
  --card-link: var(--wp--preset--color--white-dark-20);
  --card-btn-bg: var(--wp--preset--color--white);
  --card-btn-text: var(--wp--preset--color--brand-dark-20);
  --card-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --card-btn-text-hover: var(--wp--preset--color--dark);
  --card-outline: var(--wp--preset--color--white-dark-80);
  --card-btn-secondary-bg: var(--wp--preset--color--transparent);
  --card-btn-secondary-text: var(--wp--preset--color--white);
  --card-btn-secondary-outline: var(--wp--preset--color--white);
  --card-btn-secondary-bg-hover: var(--wp--preset--color--brand);
  --card-btn-secondary-text-hover: var(--wp--preset--color--white);
  --card-svg-fill: var(--wp--preset--color--white);
  --card-icon-filter: invert(100%);
  --card-svg-opacity: 1;
}

.card-theme-brand {
  --card-bg: var(--wp--preset--color--brand);
  --card-heading: var(--wp--preset--color--white-dark-20);
  --card-text: var(--wp--preset--color--white);
  --card-border: var(--wp--preset--color--brand-dark-30);
  --card-list-border: var(--wp--preset--color--brand-dark-50);
  --card-list-bullet: var(--wp--preset--color--white);
  --card-icon: var(--wp--preset--color--white-dark-20);
  --card-link: var(--wp--preset--color--white-dark-20);
  --card-btn-bg: var(--wp--preset--color--white);
  --card-btn-text: var(--wp--preset--color--brand-dark-20);
  --card-btn-bg-hover: var(--wp--preset--color--brand-light-60);
  --card-btn-text-hover: var(--wp--preset--color--dark);
  --card-outline: var(--wp--preset--color--white-dark-80);
  --card-btn-secondary-bg: var(--wp--preset--color--transparent);
  --card-btn-secondary-text: var(--wp--preset--color--white);
  --card-btn-secondary-outline: var(--wp--preset--color--white);
  --card-btn-secondary-bg-hover: var(--wp--preset--color--white);
  --card-btn-secondary-text-hover: var(--wp--preset--color--dark);
  --card-svg-fill: var(--wp--preset--color--white);
  --card-icon-filter: invert(100%);
  --card-svg-opacity: 1;
}

.card-theme-accent-1 {
  --card-bg: var(--wp--preset--color--accent-1);
  --card-heading: var(--wp--preset--color--brand);
  --card-text: var(--wp--preset--color--text);
  --card-border: var(--wp--preset--color--accent-1-dark-50);
  --card-list-border: var(--wp--preset--color--brand-light-40);
  --card-list-bullet: var(--wp--preset--color--brand);
  --card-icon: var(--wp--preset--color--brand);
  --card-link: var(--wp--preset--color--brand);
  --card-btn-bg: var(--wp--preset--color--brand);
  --card-btn-text: var(--wp--preset--color--white);
  --card-btn-bg-hover: var(--wp--preset--color--brand-light-20);
  --card-btn-text-hover: var(--wp--preset--color--white);
  --card-outline: var(--wp--preset--color--brand);
  --card-btn-secondary-bg: var(--wp--preset--color--transparent);
  --card-btn-secondary-text: var(--wp--preset--color--brand);
  --card-btn-secondary-outline: var(--wp--preset--color--brand);
  --card-btn-secondary-bg-hover: var(--wp--preset--color--brand-dark-40);
  --card-btn-secondary-text-hover: var(--wp--preset--color--white);
  --card-svg-fill: var(--wp--preset--color--brand);
  --card-icon-filter: invert(0%) var(--filter-brand);
  --card-svg-opacity: 1;
}

.card-style-default {
  --card-gap: var(--space-xs);
  --card-shadow: var(--btn-default-sh);
}

.card-style-modern {
  --card-gap: var(--space-xs);
  --card-shadow: none;
}

.tm-card-item {
  background-color: var(--card-bg);
  color: var(--card-text);
  border-width: var(--card-border-width, 1px);
  border-style: var(--card-border-style, solid);
  border-color: var(--card-border);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  padding: var(--card-padding);
  gap: var(--card-gap);
}
.tm-card-item .card-title {
  color: var(--card-heading);
}
.tm-card-item,
.tm-card-item .card-description p {
  color: var(--card-text);
}
.tm-card-item .elementor-icon-list-item, .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-text {
  color: var(--card-text);
}
.tm-card-item .icon-wrapper,
.tm-card-item .card-list-icon {
  color: var(--card-icon);
}
.tm-card-item .icon-wrapper svg, .tm-card-item .icon-wrapper i, .tm-card-item .icon-wrapper path,
.tm-card-item .card-list-icon svg,
.tm-card-item .card-list-icon i,
.tm-card-item .card-list-icon path {
  fill: var(--card-icon);
  color: var(--card-icon);
}
.tm-card-item.is-recolor img[src$=".svg"], body.is-recolor-global .tm-card-item img[src$=".svg"] {
  filter: var(--card-icon-filter);
  opacity: var(--card-svg-opacity);
}
.tm-card-item.is-recolor-fill svg *,
.tm-card-item.is-recolor-fill img[src$=".svg"] * {
  fill: var(--card-svg-fill);
}
.tm-card-item .elementor-icon-list-item, .tm-card-item .elementor-widget-text-editor li {
  border-bottom: 1px solid var(--card-list-border);
}
.tm-card-item .elementor-icon-list-item:last-child, .tm-card-item .elementor-widget-text-editor li:last-child {
  border-bottom: none;
}
.tm-card-item .elementor-icon-list-item, .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-icon {
  color: var(--card-list-bullet);
}
.tm-card-item .elementor-icon-list-item svg, .tm-card-item .elementor-icon-list-item i, .tm-card-item .elementor-icon-list-item path, .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-icon svg, .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-icon i, .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-icon path {
  fill: var(--card-list-bullet);
  color: var(--card-list-bullet);
}
.tm-card-item.card-align-center {
  align-items: center;
  text-align: center;
}
.tm-card-item.card-align-center .card-body img {
  margin: 0 auto;
}
.tm-card-item.card-align-center .card-footer-action {
  justify-content: center;
}
.tm-card-item.card-align-center .card-list .card-list-item {
  text-align: left;
}
.tm-card-item.card-align-right {
  align-items: flex-end;
  text-align: right;
}
.tm-card-item.card-align-right .card-footer-action {
  justify-content: flex-end;
}
.tm-card-item.card-align-right .card-list .card-list-item {
  text-align: left;
}
.tm-card-item.card-align-left {
  align-items: flex-start;
  text-align: left;
}
.tm-card-item .card-list .card-list-item {
  border-bottom: 1px solid var(--card-list-border);
}
.tm-card-item .card-list .card-list-item:last-child {
  border-bottom: none;
}
.tm-card-item .card-list .card-list-item.has-bullet::before {
  content: "•";
  color: var(--card-list-bullet);
  flex-shrink: 0;
  line-height: 1.4;
}
.tm-card-item .card-list .card-list-item .card-list-icon {
  color: var(--card-icon);
}
.tm-card-item .card-list .card-list-item .card-list-icon svg, .tm-card-item .card-list .card-list-item .card-list-icon i, .tm-card-item .card-list .card-list-item .card-list-icon path {
  fill: var(--card-icon);
  color: var(--card-icon);
}
.tm-card-item .card-list .card-list-item .card-list-text {
  color: var(--card-text);
}
.tm-card-item .card-link {
  display: inline-flex;
  align-items: center;
  justify-content: var(--btn-default-align, center);
  text-align: var(--btn-default-text-align, center);
  gap: 10px;
  overflow: hidden;
  font-family: var(--btn-default-ff, var(--font-body));
  font-size: var(--btn-default-fz, var(--fz-sm));
  padding: var(--btn-default-pv, var(--space-xs)) var(--btn-default-ph, var(--space-md));
  border-radius: var(--btn-default-rd, var(--radius-full));
  box-shadow: var(--btn-default-sh, var(--sh-none)) !important;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.tm-card-item .card-link:hover {
  transform: translateY(-4px);
  filter: brightness(1.1);
}
.tm-card-item .card-link:active {
  transform: translateY(-1px);
}
@media (min-width: 782px) {
  .tm-card-item .card-link {
    font-size: var(--btn-default-fz);
  }
}
.tm-card-item .card-link.is-style-filled, .tm-card-item .card-link:not(.is-style-outline):not(.is-style-simple):not(.is-style-secondary) {
  text-decoration: none;
  background-color: var(--card-btn-bg);
  color: var(--card-btn-text);
  border: none;
  border-radius: var(--btn-default-rd);
}
.tm-card-item .card-link.is-style-filled:hover, .tm-card-item .card-link:not(.is-style-outline):not(.is-style-simple):not(.is-style-secondary):hover {
  background-color: var(--card-btn-bg-hover);
  color: var(--card-btn-text-hover);
  transform: translateY(var(--btn-default-hover-translate-y, -4px));
}
.tm-card-item .card-link.is-style-simple {
  background-color: transparent;
  color: var(--card-btn-bg);
  border: none;
  box-shadow: none !important;
  text-decoration: underline;
  text-underline-offset: 4px;
  padding-inline: 0;
}
.tm-card-item .card-link.is-style-simple:hover {
  opacity: 0.8;
  text-decoration-thickness: 2px;
}
.tm-card-item .card-link.is-style-secondary, .tm-card-item .card-link.is-style-outline {
  text-decoration: none;
  background-color: var(--card-btn-secondary-bg);
  color: var(--card-btn-secondary-text);
  border: 2px solid var(--card-btn-secondary-outline);
  border-radius: var(--btn-default-rd);
}
.tm-card-item .card-link.is-style-secondary:hover, .tm-card-item .card-link.is-style-outline:hover {
  background-color: var(--card-btn-secondary-bg-hover);
  color: var(--card-btn-secondary-text-hover);
  border-color: transparent;
}

[class*=is-style-] .tm-card-item {
  background-color: var(--card-bg);
  color: var(--card-text);
  border-width: var(--card-border-width, 1px);
  border-style: var(--card-border-style, solid);
  border-color: var(--card-border);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  padding: var(--card-padding);
  gap: var(--card-gap);
}
[class*=is-style-] .tm-card-item .card-title {
  color: var(--card-heading);
}
[class*=is-style-] .tm-card-item,
[class*=is-style-] .tm-card-item .card-description p {
  color: var(--card-text);
}
[class*=is-style-] .tm-card-item .elementor-icon-list-item, [class*=is-style-] .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-text {
  color: var(--card-text);
}
[class*=is-style-] .tm-card-item .icon-wrapper,
[class*=is-style-] .tm-card-item .card-list-icon {
  color: var(--card-icon);
}
[class*=is-style-] .tm-card-item .icon-wrapper svg, [class*=is-style-] .tm-card-item .icon-wrapper i, [class*=is-style-] .tm-card-item .icon-wrapper path,
[class*=is-style-] .tm-card-item .card-list-icon svg,
[class*=is-style-] .tm-card-item .card-list-icon i,
[class*=is-style-] .tm-card-item .card-list-icon path {
  fill: var(--card-icon);
  color: var(--card-icon);
}
[class*=is-style-] .tm-card-item.is-recolor img[src$=".svg"], body.is-recolor-global [class*=is-style-] .tm-card-item img[src$=".svg"] {
  filter: var(--card-icon-filter);
  opacity: var(--card-svg-opacity);
}
[class*=is-style-] .tm-card-item.is-recolor-fill svg *,
[class*=is-style-] .tm-card-item.is-recolor-fill img[src$=".svg"] * {
  fill: var(--card-svg-fill);
}
[class*=is-style-] .tm-card-item .elementor-icon-list-item, [class*=is-style-] .tm-card-item .elementor-widget-text-editor li {
  border-bottom: 1px solid var(--card-list-border);
}
[class*=is-style-] .tm-card-item .elementor-icon-list-item:last-child, [class*=is-style-] .tm-card-item .elementor-widget-text-editor li:last-child {
  border-bottom: none;
}
[class*=is-style-] .tm-card-item .elementor-icon-list-item, [class*=is-style-] .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-icon {
  color: var(--card-list-bullet);
}
[class*=is-style-] .tm-card-item .elementor-icon-list-item svg, [class*=is-style-] .tm-card-item .elementor-icon-list-item i, [class*=is-style-] .tm-card-item .elementor-icon-list-item path, [class*=is-style-] .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-icon svg, [class*=is-style-] .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-icon i, [class*=is-style-] .tm-card-item .elementor-widget-text-editor li .elementor-icon-list-icon path {
  fill: var(--card-list-bullet);
  color: var(--card-list-bullet);
}
[class*=is-style-] .tm-card-item.card-align-center {
  align-items: center;
  text-align: center;
}
[class*=is-style-] .tm-card-item.card-align-center .card-body img {
  margin: 0 auto;
}
[class*=is-style-] .tm-card-item.card-align-center .card-footer-action {
  justify-content: center;
}
[class*=is-style-] .tm-card-item.card-align-center .card-list .card-list-item {
  text-align: left;
}
[class*=is-style-] .tm-card-item.card-align-right {
  align-items: flex-end;
  text-align: right;
}
[class*=is-style-] .tm-card-item.card-align-right .card-footer-action {
  justify-content: flex-end;
}
[class*=is-style-] .tm-card-item.card-align-right .card-list .card-list-item {
  text-align: left;
}
[class*=is-style-] .tm-card-item.card-align-left {
  align-items: flex-start;
  text-align: left;
}
[class*=is-style-] .tm-card-item .card-list .card-list-item {
  border-bottom: 1px solid var(--card-list-border);
}
[class*=is-style-] .tm-card-item .card-list .card-list-item:last-child {
  border-bottom: none;
}
[class*=is-style-] .tm-card-item .card-list .card-list-item.has-bullet::before {
  content: "•";
  color: var(--card-list-bullet);
  flex-shrink: 0;
  line-height: 1.4;
}
[class*=is-style-] .tm-card-item .card-list .card-list-item .card-list-icon {
  color: var(--card-icon);
}
[class*=is-style-] .tm-card-item .card-list .card-list-item .card-list-icon svg, [class*=is-style-] .tm-card-item .card-list .card-list-item .card-list-icon i, [class*=is-style-] .tm-card-item .card-list .card-list-item .card-list-icon path {
  fill: var(--card-icon);
  color: var(--card-icon);
}
[class*=is-style-] .tm-card-item .card-list .card-list-item .card-list-text {
  color: var(--card-text);
}
[class*=is-style-] .tm-card-item .card-link {
  display: inline-flex;
  align-items: center;
  justify-content: var(--btn-default-align, center);
  text-align: var(--btn-default-text-align, center);
  gap: 10px;
  overflow: hidden;
  font-family: var(--btn-default-ff, var(--font-body));
  font-size: var(--btn-default-fz, var(--fz-sm));
  padding: var(--btn-default-pv, var(--space-xs)) var(--btn-default-ph, var(--space-md));
  border-radius: var(--btn-default-rd, var(--radius-full));
  box-shadow: var(--btn-default-sh, var(--sh-none)) !important;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
[class*=is-style-] .tm-card-item .card-link:hover {
  transform: translateY(-4px);
  filter: brightness(1.1);
}
[class*=is-style-] .tm-card-item .card-link:active {
  transform: translateY(-1px);
}
@media (min-width: 782px) {
  [class*=is-style-] .tm-card-item .card-link {
    font-size: var(--btn-default-fz);
  }
}
[class*=is-style-] .tm-card-item .card-link.is-style-filled, [class*=is-style-] .tm-card-item .card-link:not(.is-style-outline):not(.is-style-simple):not(.is-style-secondary) {
  text-decoration: none;
  background-color: var(--card-btn-bg);
  color: var(--card-btn-text);
  border: none;
  border-radius: var(--btn-default-rd);
}
[class*=is-style-] .tm-card-item .card-link.is-style-filled:hover, [class*=is-style-] .tm-card-item .card-link:not(.is-style-outline):not(.is-style-simple):not(.is-style-secondary):hover {
  background-color: var(--card-btn-bg-hover);
  color: var(--card-btn-text-hover);
  transform: translateY(var(--btn-default-hover-translate-y, -4px));
}
[class*=is-style-] .tm-card-item .card-link.is-style-simple {
  background-color: transparent;
  color: var(--card-btn-bg);
  border: none;
  box-shadow: none !important;
  text-decoration: underline;
  text-underline-offset: 4px;
  padding-inline: 0;
}
[class*=is-style-] .tm-card-item .card-link.is-style-simple:hover {
  opacity: 0.8;
  text-decoration-thickness: 2px;
}
[class*=is-style-] .tm-card-item .card-link.is-style-secondary, [class*=is-style-] .tm-card-item .card-link.is-style-outline {
  text-decoration: none;
  background-color: var(--card-btn-secondary-bg);
  color: var(--card-btn-secondary-text);
  border: 2px solid var(--card-btn-secondary-outline);
  border-radius: var(--btn-default-rd);
}
[class*=is-style-] .tm-card-item .card-link.is-style-secondary:hover, [class*=is-style-] .tm-card-item .card-link.is-style-outline:hover {
  background-color: var(--card-btn-secondary-bg-hover);
  color: var(--card-btn-secondary-text-hover);
  border-color: transparent;
}

.tm-card-item.has-bg-img .card-bg-layer {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.tm-card-item.has-bg-img .card-bg-layer img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.4);
  transition: transform 0.5s ease;
}
.tm-card-item.has-bg-img:hover .card-bg-layer img {
  transform: scale(1.05);
}
.tm-card-item.has-bg-img:hover .card-title,
.tm-card-item.has-bg-img:hover .card-description p {
  color: var(--card-text);
}

@media (min-width: 920px) {
  .tm-card-item.has-media-picto .custom-picto-img {
    position: absolute;
    top: -60px;
    left: -20px;
    z-index: 5;
    width: 120px;
  }
}

.tm-card-item {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.tm-card-item:hover {
  transform: translateY(-4px);
  box-shadow: var(--sh-medium);
}
.tm-card-item:has(a:focus-visible) {
  outline: 2px solid var(--card-border);
  outline-offset: 2px;
  border-radius: var(--card-radius);
}
.tm-card-item .card-link:focus {
  outline: none;
}
.tm-card-item .card-link:focus-visible {
  outline: 2px solid var(--card-border);
  outline-offset: 2px;
  border-radius: var(--btn-default-rd);
}

.tm-accordion-item {
  --acc-bg-header: var(--wp--preset--color--white);
  --acc-bg-header-hover: var(--wp--preset--color--accent-1-light-20);
  --acc-bg-content: var(--wp--preset--color--white);
  --acc-text: var(--wp--preset--color--text);
  --acc-border: var(--wp--preset--color--dark-light-50);
  --acc-svg-fill: var(--wp--preset--color--brand);
  --acc-icon-filter: invert(0%) var(--filter-brand);
  --acc-svg-opacity: 1;
  --acc-radius: var(--card-radius, var(--radius-sm));
  --acc-padding: var(--space-sm);
  --acc-box-shadow: var(--btn-default-sh);
  break-inside: avoid;
  list-style: none;
  transition: box-shadow 0.3s ease, border-color 0.3s ease;
}
.tm-accordion-item::marker,
.tm-accordion-item summary::marker {
  display: none;
}
.tm-accordion-item summary::-webkit-details-marker {
  display: none;
}
.tm-accordion-item summary.tm-accordion-summary {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 10px;
}
.tm-accordion-item summary.tm-accordion-summary .tm-accordion-image {
  flex: 0 0 60px;
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}
.tm-accordion-item summary.tm-accordion-summary .tm-accordion-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.tm-accordion-item summary.tm-accordion-summary .is-picto {
  width: 1em;
  height: 1em;
  display: flex;
  align-items: center;
}
.tm-accordion-item summary.tm-accordion-summary .tm-accordion-title {
  flex: 1;
  margin: 0;
}
.tm-accordion-item summary.tm-accordion-summary::after {
  content: "›";
  transition: transform 0.3s ease;
  transform: rotate(90deg);
  font-size: 1.5rem;
  display: flex;
  align-items: center;
}
.tm-accordion-item .content-wrapper {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.3s ease, padding 0.3s ease;
}
.tm-accordion-item .content-wrapper > div {
  min-height: 0;
}
.tm-accordion-item[open] summary::after {
  transform: rotate(-90deg);
}
.tm-accordion-item[open] .content-wrapper {
  grid-template-rows: 1fr;
}
.tm-accordion-item {
  border-width: var(--card-border-width, 1px);
  border-style: var(--card-border-style, solid);
  border-color: var(--acc-border);
  border-radius: var(--acc-radius);
  box-shadow: var(--acc-box-shadow);
  background-color: var(--acc-bg-content);
}
.tm-accordion-item summary.tm-accordion-summary {
  background-color: var(--acc-bg-header);
  color: var(--acc-text);
  padding: var(--acc-padding);
  border-radius: var(--acc-radius);
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
  cursor: pointer;
  outline: none;
}
.tm-accordion-item summary.tm-accordion-summary svg {
  fill: var(--acc-svg-fill);
  filter: var(--acc-svg-filter);
}
.tm-accordion-item summary.tm-accordion-summary:hover {
  background-color: var(--acc-bg-header-hover);
}
.tm-accordion-item .content-wrapper {
  padding: var(--acc-padding);
}
.tm-accordion-item .inner-content {
  color: var(--acc-text);
}
.tm-accordion-item .inner-content a {
  color: var(--acc-text);
}
.tm-accordion-item .inner-content a:hover {
  text-decoration: underline;
}
.tm-accordion-item summary.tm-accordion-summary:focus {
  outline: none;
}
.tm-accordion-item summary.tm-accordion-summary:focus-visible {
  outline: 2px solid var(--acc-border);
  outline-offset: 2px;
  border-radius: var(--acc-radius);
}
.tm-accordion-item .accordion-title {
  font-size: calc(0.8 * var(--wp--preset--font-size--xs));
  margin-block-end: 0.5rem;
}
.tm-accordion-item .content-wrapper .inner-content ul {
  padding-left: var(--wp--preset--spacing--20);
}
.tm-accordion-item .content-wrapper .inner-content ul li {
  padding: calc(var(--wp--preset--spacing--10) / 2) 0;
}

.tm-accordion-item.theme-light {
  --acc-bg-header: var(--wp--preset--color--white);
  --acc-bg-header-hover: var(--wp--preset--color--accent-1-light-20);
  --acc-bg-content: var(--wp--preset--color--white);
  --acc-text: var(--wp--preset--color--text);
  --acc-border: var(--wp--preset--color--dark-light-50);
  --acc-svg-fill: var(--wp--preset--color--brand);
  --acc-icon-filter: invert(0%) var(--filter-brand);
  --acc-svg-opacity: 1;
}

.tm-accordion-item.theme-muted {
  --acc-bg-header: var(--wp--preset--color--gradient-1);
  --acc-bg-header-hover: var(--wp--preset--color--white-dark-10);
  --acc-bg-content: var(--wp--preset--color--gradient-1);
  --acc-text: var(--wp--preset--color--text);
  --acc-border: var(--wp--preset--color--black-light-50);
  --acc-svg-fill: var(--wp--preset--color--brand);
  --acc-icon-filter: invert(0%) var(--filter-brand);
  --acc-svg-opacity: 1;
}

.tm-accordion-item.theme-dark {
  --acc-bg-header: var(--wp--preset--color--brand-dark-60);
  --acc-bg-header-hover: var(--wp--preset--color--brand-dark-70);
  --acc-bg-content: var(--wp--preset--color--brand-dark-60);
  --acc-text: var(--wp--preset--color--white);
  --acc-border: var(--wp--preset--color--brand-dark-50);
  --acc-svg-fill: var(--wp--preset--color--white);
  --acc-icon-filter: invert(100%);
  --acc-svg-opacity: 1;
}

.tm-accordion-item.theme-brand {
  --acc-bg-header: var(--wp--preset--color--brand-dark-10);
  --acc-bg-header-hover: var(--wp--preset--color--brand-dark-20);
  --acc-bg-content: var(--wp--preset--color--brand);
  --acc-text: var(--wp--preset--color--white);
  --acc-border: var(--wp--preset--color--brand-dark-30);
  --acc-svg-fill: var(--wp--preset--color--white);
  --acc-icon-filter: invert(100%);
  --acc-svg-opacity: 1;
}

.tm-accordion-item.theme-accent-1 {
  --acc-bg-header: var(--wp--preset--color--accent-1-dark-10);
  --acc-bg-header-hover: var(--wp--preset--color--accent-1-dark-20);
  --acc-bg-content: var(--wp--preset--color--accent-1);
  --acc-text: var(--wp--preset--color--text);
  --acc-border: var(--wp--preset--color--accent-1-dark-50);
  --acc-svg-fill: var(--wp--preset--color--brand);
  --acc-icon-filter: invert(0%) var(--filter-brand);
  --acc-svg-opacity: 1;
}

.tm-accordion-item.style-default {
  --acc-radius: var(--card-radius, var(--radius-sm));
  --acc-padding: var(--space-sm);
  --acc-box-shadow: var(--btn-default-sh);
}

.tm-accordion-item.style-modern {
  --acc-radius: var(--card-radius, var(--radius-sm));
  --acc-padding: var(--space-xs);
  --acc-box-shadow: none;
}

.mt-0 {
  margin-top: var(--wp--preset--spacing--0);
}

.mb-0 {
  margin-bottom: var(--wp--preset--spacing--0);
}

.ml-0 {
  margin-left: var(--wp--preset--spacing--0);
}

.mr-0 {
  margin-right: var(--wp--preset--spacing--0);
}

.ms-0 {
  margin-inline-start: var(--wp--preset--spacing--0);
}

.me-0 {
  margin-inline-end: var(--wp--preset--spacing--0);
}

.ma-0 {
  margin: var(--wp--preset--spacing--0);
}

.pt-0 {
  padding-top: var(--wp--preset--spacing--0);
}

.pb-0 {
  padding-bottom: var(--wp--preset--spacing--0);
}

.pl-0 {
  padding-left: var(--wp--preset--spacing--0);
}

.pr-0 {
  padding-right: var(--wp--preset--spacing--0);
}

.pa-0 {
  padding: var(--wp--preset--spacing--0);
}

.mt-sans {
  margin-top: var(--wp--preset--spacing--0);
}

.mb-sans {
  margin-bottom: var(--wp--preset--spacing--0);
}

.ml-sans {
  margin-left: var(--wp--preset--spacing--0);
}

.mr-sans {
  margin-right: var(--wp--preset--spacing--0);
}

.ms-sans {
  margin-inline-start: var(--wp--preset--spacing--0);
}

.me-sans {
  margin-inline-end: var(--wp--preset--spacing--0);
}

.ma-sans {
  margin: var(--wp--preset--spacing--0);
}

.pt-sans {
  padding-top: var(--wp--preset--spacing--0);
}

.pb-sans {
  padding-bottom: var(--wp--preset--spacing--0);
}

.pl-sans {
  padding-left: var(--wp--preset--spacing--0);
}

.pr-sans {
  padding-right: var(--wp--preset--spacing--0);
}

.pa-sans {
  padding: var(--wp--preset--spacing--0);
}

.mt-10 {
  margin-top: var(--wp--preset--spacing--10);
}

.mb-10 {
  margin-bottom: var(--wp--preset--spacing--10);
}

.ml-10 {
  margin-left: var(--wp--preset--spacing--10);
}

.mr-10 {
  margin-right: var(--wp--preset--spacing--10);
}

.ms-10 {
  margin-inline-start: var(--wp--preset--spacing--10);
}

.me-10 {
  margin-inline-end: var(--wp--preset--spacing--10);
}

.ma-10 {
  margin: var(--wp--preset--spacing--10);
}

.pt-10 {
  padding-top: var(--wp--preset--spacing--10);
}

.pb-10 {
  padding-bottom: var(--wp--preset--spacing--10);
}

.pl-10 {
  padding-left: var(--wp--preset--spacing--10);
}

.pr-10 {
  padding-right: var(--wp--preset--spacing--10);
}

.pa-10 {
  padding: var(--wp--preset--spacing--10);
}

.mt-xs {
  margin-top: var(--wp--preset--spacing--10);
}

.mb-xs {
  margin-bottom: var(--wp--preset--spacing--10);
}

.ml-xs {
  margin-left: var(--wp--preset--spacing--10);
}

.mr-xs {
  margin-right: var(--wp--preset--spacing--10);
}

.ms-xs {
  margin-inline-start: var(--wp--preset--spacing--10);
}

.me-xs {
  margin-inline-end: var(--wp--preset--spacing--10);
}

.ma-xs {
  margin: var(--wp--preset--spacing--10);
}

.pt-xs {
  padding-top: var(--wp--preset--spacing--10);
}

.pb-xs {
  padding-bottom: var(--wp--preset--spacing--10);
}

.pl-xs {
  padding-left: var(--wp--preset--spacing--10);
}

.pr-xs {
  padding-right: var(--wp--preset--spacing--10);
}

.pa-xs {
  padding: var(--wp--preset--spacing--10);
}

.mt-20 {
  margin-top: var(--wp--preset--spacing--20);
}

.mb-20 {
  margin-bottom: var(--wp--preset--spacing--20);
}

.ml-20 {
  margin-left: var(--wp--preset--spacing--20);
}

.mr-20 {
  margin-right: var(--wp--preset--spacing--20);
}

.ms-20 {
  margin-inline-start: var(--wp--preset--spacing--20);
}

.me-20 {
  margin-inline-end: var(--wp--preset--spacing--20);
}

.ma-20 {
  margin: var(--wp--preset--spacing--20);
}

.pt-20 {
  padding-top: var(--wp--preset--spacing--20);
}

.pb-20 {
  padding-bottom: var(--wp--preset--spacing--20);
}

.pl-20 {
  padding-left: var(--wp--preset--spacing--20);
}

.pr-20 {
  padding-right: var(--wp--preset--spacing--20);
}

.pa-20 {
  padding: var(--wp--preset--spacing--20);
}

.mt-sm {
  margin-top: var(--wp--preset--spacing--20);
}

.mb-sm {
  margin-bottom: var(--wp--preset--spacing--20);
}

.ml-sm {
  margin-left: var(--wp--preset--spacing--20);
}

.mr-sm {
  margin-right: var(--wp--preset--spacing--20);
}

.ms-sm {
  margin-inline-start: var(--wp--preset--spacing--20);
}

.me-sm {
  margin-inline-end: var(--wp--preset--spacing--20);
}

.ma-sm {
  margin: var(--wp--preset--spacing--20);
}

.pt-sm {
  padding-top: var(--wp--preset--spacing--20);
}

.pb-sm {
  padding-bottom: var(--wp--preset--spacing--20);
}

.pl-sm {
  padding-left: var(--wp--preset--spacing--20);
}

.pr-sm {
  padding-right: var(--wp--preset--spacing--20);
}

.pa-sm {
  padding: var(--wp--preset--spacing--20);
}

.mt-40 {
  margin-top: var(--wp--preset--spacing--40);
}

.mb-40 {
  margin-bottom: var(--wp--preset--spacing--40);
}

.ml-40 {
  margin-left: var(--wp--preset--spacing--40);
}

.mr-40 {
  margin-right: var(--wp--preset--spacing--40);
}

.ms-40 {
  margin-inline-start: var(--wp--preset--spacing--40);
}

.me-40 {
  margin-inline-end: var(--wp--preset--spacing--40);
}

.ma-40 {
  margin: var(--wp--preset--spacing--40);
}

.pt-40 {
  padding-top: var(--wp--preset--spacing--40);
}

.pb-40 {
  padding-bottom: var(--wp--preset--spacing--40);
}

.pl-40 {
  padding-left: var(--wp--preset--spacing--40);
}

.pr-40 {
  padding-right: var(--wp--preset--spacing--40);
}

.pa-40 {
  padding: var(--wp--preset--spacing--40);
}

.mt-md {
  margin-top: var(--wp--preset--spacing--40);
}

.mb-md {
  margin-bottom: var(--wp--preset--spacing--40);
}

.ml-md {
  margin-left: var(--wp--preset--spacing--40);
}

.mr-md {
  margin-right: var(--wp--preset--spacing--40);
}

.ms-md {
  margin-inline-start: var(--wp--preset--spacing--40);
}

.me-md {
  margin-inline-end: var(--wp--preset--spacing--40);
}

.ma-md {
  margin: var(--wp--preset--spacing--40);
}

.pt-md {
  padding-top: var(--wp--preset--spacing--40);
}

.pb-md {
  padding-bottom: var(--wp--preset--spacing--40);
}

.pl-md {
  padding-left: var(--wp--preset--spacing--40);
}

.pr-md {
  padding-right: var(--wp--preset--spacing--40);
}

.pa-md {
  padding: var(--wp--preset--spacing--40);
}

.mt-60 {
  margin-top: var(--wp--preset--spacing--60);
}

.mb-60 {
  margin-bottom: var(--wp--preset--spacing--60);
}

.ml-60 {
  margin-left: var(--wp--preset--spacing--60);
}

.mr-60 {
  margin-right: var(--wp--preset--spacing--60);
}

.ms-60 {
  margin-inline-start: var(--wp--preset--spacing--60);
}

.me-60 {
  margin-inline-end: var(--wp--preset--spacing--60);
}

.ma-60 {
  margin: var(--wp--preset--spacing--60);
}

.pt-60 {
  padding-top: var(--wp--preset--spacing--60);
}

.pb-60 {
  padding-bottom: var(--wp--preset--spacing--60);
}

.pl-60 {
  padding-left: var(--wp--preset--spacing--60);
}

.pr-60 {
  padding-right: var(--wp--preset--spacing--60);
}

.pa-60 {
  padding: var(--wp--preset--spacing--60);
}

.mt-lg {
  margin-top: var(--wp--preset--spacing--60);
}

.mb-lg {
  margin-bottom: var(--wp--preset--spacing--60);
}

.ml-lg {
  margin-left: var(--wp--preset--spacing--60);
}

.mr-lg {
  margin-right: var(--wp--preset--spacing--60);
}

.ms-lg {
  margin-inline-start: var(--wp--preset--spacing--60);
}

.me-lg {
  margin-inline-end: var(--wp--preset--spacing--60);
}

.ma-lg {
  margin: var(--wp--preset--spacing--60);
}

.pt-lg {
  padding-top: var(--wp--preset--spacing--60);
}

.pb-lg {
  padding-bottom: var(--wp--preset--spacing--60);
}

.pl-lg {
  padding-left: var(--wp--preset--spacing--60);
}

.pr-lg {
  padding-right: var(--wp--preset--spacing--60);
}

.pa-lg {
  padding: var(--wp--preset--spacing--60);
}

.mt-80 {
  margin-top: var(--wp--preset--spacing--80);
}

.mb-80 {
  margin-bottom: var(--wp--preset--spacing--80);
}

.ml-80 {
  margin-left: var(--wp--preset--spacing--80);
}

.mr-80 {
  margin-right: var(--wp--preset--spacing--80);
}

.ms-80 {
  margin-inline-start: var(--wp--preset--spacing--80);
}

.me-80 {
  margin-inline-end: var(--wp--preset--spacing--80);
}

.ma-80 {
  margin: var(--wp--preset--spacing--80);
}

.pt-80 {
  padding-top: var(--wp--preset--spacing--80);
}

.pb-80 {
  padding-bottom: var(--wp--preset--spacing--80);
}

.pl-80 {
  padding-left: var(--wp--preset--spacing--80);
}

.pr-80 {
  padding-right: var(--wp--preset--spacing--80);
}

.pa-80 {
  padding: var(--wp--preset--spacing--80);
}

.mt-xl {
  margin-top: var(--wp--preset--spacing--80);
}

.mb-xl {
  margin-bottom: var(--wp--preset--spacing--80);
}

.ml-xl {
  margin-left: var(--wp--preset--spacing--80);
}

.mr-xl {
  margin-right: var(--wp--preset--spacing--80);
}

.ms-xl {
  margin-inline-start: var(--wp--preset--spacing--80);
}

.me-xl {
  margin-inline-end: var(--wp--preset--spacing--80);
}

.ma-xl {
  margin: var(--wp--preset--spacing--80);
}

.pt-xl {
  padding-top: var(--wp--preset--spacing--80);
}

.pb-xl {
  padding-bottom: var(--wp--preset--spacing--80);
}

.pl-xl {
  padding-left: var(--wp--preset--spacing--80);
}

.pr-xl {
  padding-right: var(--wp--preset--spacing--80);
}

.pa-xl {
  padding: var(--wp--preset--spacing--80);
}

.mt-100 {
  margin-top: var(--wp--preset--spacing--100);
}

.mb-100 {
  margin-bottom: var(--wp--preset--spacing--100);
}

.ml-100 {
  margin-left: var(--wp--preset--spacing--100);
}

.mr-100 {
  margin-right: var(--wp--preset--spacing--100);
}

.ms-100 {
  margin-inline-start: var(--wp--preset--spacing--100);
}

.me-100 {
  margin-inline-end: var(--wp--preset--spacing--100);
}

.ma-100 {
  margin: var(--wp--preset--spacing--100);
}

.pt-100 {
  padding-top: var(--wp--preset--spacing--100);
}

.pb-100 {
  padding-bottom: var(--wp--preset--spacing--100);
}

.pl-100 {
  padding-left: var(--wp--preset--spacing--100);
}

.pr-100 {
  padding-right: var(--wp--preset--spacing--100);
}

.pa-100 {
  padding: var(--wp--preset--spacing--100);
}

.mt-xxl {
  margin-top: var(--wp--preset--spacing--100);
}

.mb-xxl {
  margin-bottom: var(--wp--preset--spacing--100);
}

.ml-xxl {
  margin-left: var(--wp--preset--spacing--100);
}

.mr-xxl {
  margin-right: var(--wp--preset--spacing--100);
}

.ms-xxl {
  margin-inline-start: var(--wp--preset--spacing--100);
}

.me-xxl {
  margin-inline-end: var(--wp--preset--spacing--100);
}

.ma-xxl {
  margin: var(--wp--preset--spacing--100);
}

.pt-xxl {
  padding-top: var(--wp--preset--spacing--100);
}

.pb-xxl {
  padding-bottom: var(--wp--preset--spacing--100);
}

.pl-xxl {
  padding-left: var(--wp--preset--spacing--100);
}

.pr-xxl {
  padding-right: var(--wp--preset--spacing--100);
}

.pa-xxl {
  padding: var(--wp--preset--spacing--100);
}

.ai-start > * {
  align-items: flex-start !important;
}

.ai-center > * {
  align-items: center !important;
}

.ai-end > * {
  align-items: flex-end !important;
}

.ai-stretch > * {
  align-items: stretch !important;
}

.ai-baseline > * {
  align-items: baseline !important;
}

@media (min-width: 782px) {
  .ai-md-start > * {
    align-items: flex-start !important;
  }
  .ai-md-center > * {
    align-items: center !important;
  }
  .ai-md-end > * {
    align-items: flex-end !important;
  }
  .ai-md-stretch > * {
    align-items: stretch !important;
  }
  .ai-md-baseline > * {
    align-items: baseline !important;
  }
}
@media (min-width: 920px) {
  .ai-lg-start > * {
    align-items: flex-start !important;
  }
  .ai-lg-center > * {
    align-items: center !important;
  }
  .ai-lg-end > * {
    align-items: flex-end !important;
  }
  .ai-lg-stretch > * {
    align-items: stretch !important;
  }
  .ai-lg-baseline > * {
    align-items: baseline !important;
  }
}
.ac-start > * {
  align-content: flex-start !important;
}

.ac-center > * {
  align-content: center !important;
}

.ac-end > * {
  align-content: flex-end !important;
}

.ac-between > * {
  align-content: space-between !important;
}

.ac-around > * {
  align-content: space-around !important;
}

.ac-stretch > * {
  align-content: stretch !important;
}

.jc-start > * {
  justify-content: flex-start !important;
}

.jc-center > * {
  justify-content: center !important;
}

.jc-end > * {
  justify-content: flex-end !important;
}

.jc-between > * {
  justify-content: space-between !important;
}

.jc-around > * {
  justify-content: space-around !important;
}

.jc-evenly > * {
  justify-content: space-evenly !important;
}

.flex-row > * {
  display: flex;
  flex-direction: row !important;
}

.flex-row-reverse > * {
  display: flex;
  flex-direction: row-reverse !important;
}

.flex-col > * {
  display: flex;
  flex-direction: column !important;
}

.flex-col-reverse > * {
  display: flex;
  flex-direction: column-reverse !important;
}

.as-start {
  align-self: flex-start !important;
}

.as-center {
  align-self: center !important;
}

.as-end {
  align-self: flex-end !important;
}

.as-stretch {
  align-self: stretch !important;
}

.as-baseline {
  align-self: baseline !important;
}

.as-auto {
  align-self: auto !important;
}

@media (min-width: 782px) {
  .as-md-start {
    align-self: flex-start !important;
  }
  .as-md-center {
    align-self: center !important;
  }
  .as-md-end {
    align-self: flex-end !important;
  }
  .as-md-stretch {
    align-self: stretch !important;
  }
  .as-md-baseline {
    align-self: baseline !important;
  }
  .as-md-auto {
    align-self: auto !important;
  }
}
@media (min-width: 920px) {
  .as-lg-start {
    align-self: flex-start !important;
  }
  .as-lg-center {
    align-self: center !important;
  }
  .as-lg-end {
    align-self: flex-end !important;
  }
  .as-lg-stretch {
    align-self: stretch !important;
  }
  .as-lg-baseline {
    align-self: baseline !important;
  }
  .as-lg-auto {
    align-self: auto !important;
  }
}
.e-con.e-con-full > .e-con-inner {
  background-color: var(--wp--preset--color--transparent);
  padding-inline: clamp(16px, 3vw, 60px);
  --_padding-block: var(--space-xl);
  --row-gap: var(--space-sm);
  --column-gap: var(--space-sm);
}
@media (max-width: 599.98px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-sm);
  }
}
@media (min-width: 600px) and (max-width: 781.98px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-md);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-md);
  }
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: var(--content-max)130px-0.02px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: var(--content-max)130px) and (max-width: 1919.98px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-xl);
  }
}
@media (min-width: 1920px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-xl);
  }
}
@media (min-width: 782px) {
  .e-con.e-con-full > .e-con-inner {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-md);
  }
}
@media (min-width: 920px) {
  .e-con.e-con-full > .e-con-inner {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xl);
  }
}
@media (min-width: var(--content-narrow)110px) {
  .e-con.e-con-full > .e-con-inner {
    --row-gap: var(--space-lg);
    --column-gap: var(--space-xl);
  }
}
.e-con.e-con-full > .e-con-inner {
  --padding-top: 0px;
  --padding-bottom: 0px;
  --padding-block-start: var(--_padding-block);
  --padding-block-end: var(--_padding-block);
}
@media (min-width: 782px) {
  .e-con.e-con-full > .e-con-inner .e-con.e-grid {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-sm);
  }
}
@media (min-width: 920px) {
  .e-con.e-con-full > .e-con-inner .e-con.e-grid {
    --row-gap: var(--space-md);
    --column-gap: var(--space-md);
  }
}
@media (min-width: var(--content-narrow)110px) {
  .e-con.e-con-full > .e-con-inner .e-con.e-grid {
    --row-gap: var(--space-lg);
    --column-gap: var(--space-lg);
  }
}
.e-con.e-con-full > .e-con-inner .e-con.e-grid .e-con.e-child {
  --row-gap: var(--space-sm);
  --column-gap: var(--space-sm);
}
.e-con.e-con-full > .e-con-inner p {
  color: inherit;
  background-color: var(--wp--preset--color--transparent);
}

.e-con.e-con-boxed > .e-con-inner {
  background-color: var(--wp--preset--color--transparent);
  padding-inline: clamp(16px, 3vw, 60px);
  --_padding-block: var(--space-xl);
  --row-gap: var(--space-sm);
  --column-gap: var(--space-sm);
}
@media (max-width: 599.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-sm);
  }
}
@media (min-width: 600px) and (max-width: 781.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-md);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-md);
  }
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: var(--content-max)130px-0.02px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: var(--content-max)130px) and (max-width: 1919.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-xl);
  }
}
@media (min-width: 1920px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-xl);
  }
}
@media (min-width: 782px) {
  .e-con.e-con-boxed > .e-con-inner {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-md);
  }
}
@media (min-width: 920px) {
  .e-con.e-con-boxed > .e-con-inner {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xl);
  }
}
@media (min-width: var(--content-narrow)110px) {
  .e-con.e-con-boxed > .e-con-inner {
    --row-gap: var(--space-lg);
    --column-gap: var(--space-xl);
  }
}
.e-con.e-con-boxed > .e-con-inner {
  --padding-top: 0px;
  --padding-bottom: 0px;
  --padding-block-start: var(--_padding-block);
  --padding-block-end: var(--_padding-block);
}
@media (min-width: 782px) {
  .e-con.e-con-boxed > .e-con-inner .e-con.e-grid {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-sm);
  }
}
@media (min-width: 920px) {
  .e-con.e-con-boxed > .e-con-inner .e-con.e-grid {
    --row-gap: var(--space-md);
    --column-gap: var(--space-md);
  }
}
@media (min-width: var(--content-narrow)110px) {
  .e-con.e-con-boxed > .e-con-inner .e-con.e-grid {
    --row-gap: var(--space-lg);
    --column-gap: var(--space-lg);
  }
}
.e-con.e-con-boxed > .e-con-inner .e-con.e-grid .e-con.e-child {
  --row-gap: var(--space-sm);
  --column-gap: var(--space-sm);
}
.e-con.e-con-boxed > .e-con-inner p {
  color: inherit;
  background-color: var(--wp--preset--color--transparent);
}
.e-con.e-con-boxed > .e-con-inner {
  margin-inline: auto;
}
@media (max-width: 919.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    width: 100%;
    max-width: var(--content-narrow);
  }
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  .e-con.e-con-boxed > .e-con-inner {
    max-width: var(--content-narrow);
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  .e-con.e-con-boxed > .e-con-inner {
    max-width: var(--content-narrow);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: var(--content-max)130px-0.02px) {
  .e-con.e-con-boxed > .e-con-inner {
    max-width: var(--content-wide);
  }
}
@media (min-width: var(--content-max)130px) and (max-width: 1919.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    max-width: var(--content-wide);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    max-width: var(--content-max);
  }
}
@media (min-width: 2560px) {
  .e-con.e-con-boxed > .e-con-inner {
    max-width: var(--content-2xl);
  }
}

.e-con > .e-con-inner > *:not(.elementor-widget-button),
.elementor .e-con > *:not(.elementor-widget-button) {
  width: 100%;
}

.e-con.e-child:has(.elementor-widget-button) {
  gap: var(--wp--preset--spacing--20);
}

.elementor .e-con.has-parallax .elementor-heading-title,
.elementor .e-con.has-parallax .e-con {
  background-color: var(--wp--preset--color--transparent);
  padding-inline: clamp(16px, 3vw, 60px);
  --_padding-block: var(--space-xl);
  --row-gap: var(--space-sm);
  --column-gap: var(--space-sm);
}
@media (max-width: 599.98px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-sm);
  }
}
@media (min-width: 600px) and (max-width: 781.98px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-md);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-md);
  }
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: var(--content-max)130px-0.02px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: var(--content-max)130px) and (max-width: 1919.98px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-xl);
  }
}
@media (min-width: 1920px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-xl);
  }
}
@media (min-width: 782px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-md);
  }
}
@media (min-width: 920px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xl);
  }
}
@media (min-width: var(--content-narrow)110px) {
  .elementor .e-con.has-parallax .elementor-heading-title,
  .elementor .e-con.has-parallax .e-con {
    --row-gap: var(--space-lg);
    --column-gap: var(--space-xl);
  }
}
.elementor .e-con.has-parallax .elementor-heading-title,
.elementor .e-con.has-parallax .e-con {
  --padding-top: 0px;
  --padding-bottom: 0px;
  --padding-block-start: var(--_padding-block);
  --padding-block-end: var(--_padding-block);
}
@media (min-width: 782px) {
  .elementor .e-con.has-parallax .elementor-heading-title .e-con.e-grid,
  .elementor .e-con.has-parallax .e-con .e-con.e-grid {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-sm);
  }
}
@media (min-width: 920px) {
  .elementor .e-con.has-parallax .elementor-heading-title .e-con.e-grid,
  .elementor .e-con.has-parallax .e-con .e-con.e-grid {
    --row-gap: var(--space-md);
    --column-gap: var(--space-md);
  }
}
@media (min-width: var(--content-narrow)110px) {
  .elementor .e-con.has-parallax .elementor-heading-title .e-con.e-grid,
  .elementor .e-con.has-parallax .e-con .e-con.e-grid {
    --row-gap: var(--space-lg);
    --column-gap: var(--space-lg);
  }
}
.elementor .e-con.has-parallax .elementor-heading-title .e-con.e-grid .e-con.e-child,
.elementor .e-con.has-parallax .e-con .e-con.e-grid .e-con.e-child {
  --row-gap: var(--space-sm);
  --column-gap: var(--space-sm);
}
.elementor .e-con.has-parallax .elementor-heading-title p,
.elementor .e-con.has-parallax .e-con p {
  color: inherit;
  background-color: var(--wp--preset--color--transparent);
}

.elementor > * {
  position: relative;
  z-index: 1;
}
.elementor .e-con > *:has(+ *):first-child {
  padding-bottom: 0;
}
.elementor .e-con > *:not(:only-child):last-child {
  padding-top: 0;
}

.has-parallax {
  overflow: hidden;
}

/* Backup de padding
$padding-inline-x:      clamp(16px, 3vw, 60px);
*/
body header#site-header.site-header {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
}

header .site-logo-wrapper {
  display: flex;
  align-items: center;
}
header .mag-logo-wrap {
  display: flex;
  align-items: center;
  height: 100%;
}

header #barre-menu {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1000;
  width: 100%;
}
header #barre-menu .site-navigation-wrapper {
  display: flex;
  align-items: center;
}
header #barre-menu .site-navigation-wrapper .header-elements-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-around;
}

header .bandeau.is-sticky-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 999;
  transition: transform 0.3s ease;
}
header .bandeau.is-sticky-header #barre-menu {
  transition: background-color 0.3s ease, color 0.3s ease;
}
header .bandeau.is-sticky-header::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.2s ease;
}
header .bandeau.is-sticky-header:not(.scrolled) .custom-logo-link {
  position: relative;
}
header .bandeau.is-sticky-header.scrolled {
  transition: transform 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}
header .bandeau.is-sticky-header.scrolled::before {
  opacity: 1;
}
header .bandeau.is-sticky-header.hidden {
  transform: translateY(-100%);
}

body header .site-banner {
  display: flex;
  position: relative;
  overflow: hidden;
  width: 100%;
  transition: margin-top 0.3s ease;
}
@media (max-width: 781.98px) {
  body header .site-banner {
    padding: 0;
    height: auto;
    min-height: 50vh;
    overflow: hidden;
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  body header .site-banner {
    padding: 0;
  }
}
@media (min-width: 782px) {
  body header .site-banner {
    flex-direction: row;
    align-items: stretch;
    padding: 0;
  }
}
body header .site-banner .banner-content {
  z-index: 1;
  inset: 0;
  width: 100%;
  pointer-events: none;
}
body header .site-banner .banner-content a, body header .site-banner .banner-content button, body header .site-banner .banner-content input, body header .site-banner .banner-content [role=button] {
  pointer-events: auto;
}

.site-banner.is-optimized-cover .image-switcher {
  background-color: inherit;
  height: 100%;
}

body.is-recolor-global header #banner.site-banner .image-switcher__item img {
  filter: none;
  fill: none;
}

@media (min-width: 782px) {
  header .site-banner.has-parallax .image-switcher {
    overflow: visible;
    width: 100%;
    margin: 0 auto;
  }
}
@media (min-width: 782px) {
  header .site-banner.has-parallax .image-switcher__item {
    overflow: visible;
  }
}

.site-banner > p {
  margin: 0;
  padding: 0;
  font-size: 0;
}

header .site-banner .banner-content {
  margin-inline: auto;
}
@media (max-width: 919.98px) {
  header .site-banner .banner-content {
    width: 100%;
    max-width: var(--content-narrow);
  }
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  header .site-banner .banner-content {
    max-width: var(--content-narrow);
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  header .site-banner .banner-content {
    max-width: var(--content-narrow);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: var(--content-max)130px-0.02px) {
  header .site-banner .banner-content {
    max-width: var(--content-wide);
  }
}
@media (min-width: var(--content-max)130px) and (max-width: 1919.98px) {
  header .site-banner .banner-content {
    max-width: var(--content-wide);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  header .site-banner .banner-content {
    max-width: var(--content-max);
  }
}
@media (min-width: 2560px) {
  header .site-banner .banner-content {
    max-width: var(--content-2xl);
  }
}
header .site-banner .banner-content .banner-diapo-text p {
  margin: 0;
}

body header#site-header.site-header {
  width: 100%;
  max-width: 100%;
}

body header#site-header .bandeau.is-sticky-header.is-boxed {
  margin-inline: auto;
  width: 92%;
  max-width: 100%;
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: 100%;
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: var(--content-max);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: var(--content-max)130px-0.02px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: var(--content-max)130px) and (max-width: 1919.98px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: var(--content-3xl);
  }
}
@media (min-width: 2560px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: 2400px;
  }
}
@media (max-width: 599.98px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    width: 100%;
    padding-inline: 0;
  }
}
@media (max-width: 599.98px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    padding-block: var(--wp--preset--spacing--20);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 600px) and (max-width: 781.98px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    padding-block: var(--wp--preset--spacing--20);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: 1919.98px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--80);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 2560px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 782px) {
  body header#site-header .bandeau.is-sticky-header.is-boxed {
    border-radius: var(--block-radius, 0px);
    inset: 0 0 auto 0;
    margin-inline: auto;
    transition: transform 0.3s ease, width 0.3s ease, border-radius 0.2s ease;
  }
  body header#site-header .bandeau.is-sticky-header.is-boxed #barre-menu {
    border-radius: var(--block-radius, 0px);
  }
  body header#site-header .bandeau.is-sticky-header.is-boxed.scrolled {
    width: 100vw;
    max-width: 100vw;
    border-radius: 0;
    margin-inline: 0;
  }
  body header#site-header .bandeau.is-sticky-header.is-boxed.hidden {
    transform: translateY(-100%);
  }
}

body header #banner.is-boxed {
  margin-inline: auto;
  width: 92%;
  max-width: 100%;
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  body header #banner.is-boxed {
    max-width: 100%;
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  body header #banner.is-boxed {
    max-width: var(--content-max);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: var(--content-max)130px-0.02px) {
  body header #banner.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: var(--content-max)130px) and (max-width: 1919.98px) {
  body header #banner.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  body header #banner.is-boxed {
    max-width: var(--content-3xl);
  }
}
@media (min-width: 2560px) {
  body header #banner.is-boxed {
    max-width: 2400px;
  }
}
@media (max-width: 599.98px) {
  body header #banner.is-boxed {
    width: 100%;
    padding-inline: 0;
  }
}
@media (max-width: 599.98px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--20);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 600px) and (max-width: 781.98px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--20);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: 1919.98px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--80);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 2560px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
body header #banner.is-boxed {
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 782px) {
  body header #banner.is-boxed {
    border-radius: var(--block-radius, 0px);
    overflow: hidden;
  }
  body header #banner.is-boxed .site-banner,
  body header #banner.is-boxed .banner-content,
  body header #banner.is-boxed .image-switcher__nav {
    max-width: none;
    width: 100%;
  }
  body header #banner.is-boxed .image-switcher,
  body header #banner.is-boxed .image-switcher__item, body header #banner.is-boxed::before {
    border-radius: var(--block-radius, 0px);
    overflow: hidden;
    height: auto;
  }
}

body main.is-boxed {
  margin-inline: auto;
  width: 92%;
  max-width: 100%;
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  body main.is-boxed {
    max-width: 100%;
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  body main.is-boxed {
    max-width: var(--content-max);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: var(--content-max)130px-0.02px) {
  body main.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: var(--content-max)130px) and (max-width: 1919.98px) {
  body main.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  body main.is-boxed {
    max-width: var(--content-3xl);
  }
}
@media (min-width: 2560px) {
  body main.is-boxed {
    max-width: 2400px;
  }
}
@media (max-width: 599.98px) {
  body main.is-boxed {
    width: 100%;
    padding-inline: 0;
  }
}
@media (max-width: 599.98px) {
  body main.is-boxed {
    padding-block: var(--wp--preset--spacing--20);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 600px) and (max-width: 781.98px) {
  body main.is-boxed {
    padding-block: var(--wp--preset--spacing--20);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  body main.is-boxed {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  body main.is-boxed {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  body main.is-boxed {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: 1919.98px) {
  body main.is-boxed {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--80);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  body main.is-boxed {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 2560px) {
  body main.is-boxed {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 782px) {
  body main.is-boxed {
    border-radius: var(--block-radius, 0px);
    overflow: hidden;
  }
}

/* Backup de padding
$padding-inline-x:      clamp(16px, 3vw, 60px);

body footer.site-footer.is-boxed:not(.dynamic-footer),
.site-footer{
    padding-inline: $padding-inline-x;
}*/
body footer.site-footer:not(.dynamic-footer) {
  width: 100%;
  max-width: 100%;
}

.site-footer {
  margin: 0 auto;
  max-width: var(--content-width);
}
.site-footer .footer-brand .mag-logo-text {
  display: flex;
  align-items: center;
}
.site-footer .footer-brand {
  padding-top: 0;
  padding-bottom: 0;
  display: flex;
}
@media (max-width: 781.98px) {
  .site-footer .footer-brand img {
    margin: 0 auto;
  }
}
.site-footer .footer-address {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0;
  position: relative;
}
@media (max-width: 781.98px) {
  .site-footer .footer-address .footer-icon {
    position: absolute;
  }
}
.site-footer .footer-address .footer-icon {
  flex-shrink: 0;
  margin-top: 3px;
}
.site-footer .footer-address .footer-icon svg {
  display: block;
}
.site-footer .footer-tel,
.site-footer .footer-email {
  display: flex;
  align-items: center;
  gap: 6px;
}
.site-footer .footer-tel .footer-icon,
.site-footer .footer-email .footer-icon {
  flex-shrink: 0;
  line-height: 1;
}
.site-footer .footer-bar {
  width: 100%;
  max-width: 100%;
}
.site-footer .footer-bar .footer-nav {
  list-style: none;
  padding: 0;
  margin: 0;
}
.site-footer .footer-bar .footer-signature {
  display: flex;
  align-items: center;
}

body footer.site-footer.is-boxed:not(.dynamic-footer) {
  margin-inline: auto;
  width: 92%;
  max-width: 100%;
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: 100%;
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: var(--content-max);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: var(--content-max)130px-0.02px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: var(--content-2xl);
  }
}
@media (min-width: var(--content-max)130px) and (max-width: 1919.98px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: var(--content-3xl);
  }
}
@media (min-width: 2560px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: 2400px;
  }
}
@media (max-width: 599.98px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    width: 100%;
    padding-inline: 0;
  }
}
@media (max-width: 599.98px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--20);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 600px) and (max-width: 781.98px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--20);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 920px) and (max-width: var(--content-narrow)110px-0.02px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: var(--content-narrow)110px) and (max-width: var(--content-wide)120px-0.02px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: var(--content-wide)120px) and (max-width: 1919.98px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--80);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 2560px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 782px) {
  body footer.site-footer.is-boxed:not(.dynamic-footer) {
    border-radius: var(--block-radius, 0px);
    overflow: hidden;
  }
  body footer.site-footer.is-boxed:not(.dynamic-footer) .footer-brand,
  body footer.site-footer.is-boxed:not(.dynamic-footer) .footer-bar {
    max-width: none;
    width: 100%;
    padding: 0;
  }
  body footer.site-footer.is-boxed:not(.dynamic-footer) .footer-bar {
    border-radius: 0 0 var(--block-radius, 0px) var(--block-radius, 0px);
  }
}

.elementor-widget-button {
  width: auto;
}
.elementor-widget-button .elementor-button {
  width: auto;
}

.e-con .e-con .elementor-widget-tm-button-secondary {
  width: auto;
}

.elementor-widget-text-editor ul {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  list-style: none;
  padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--0);
  margin: 0;
  gap: 10px;
  width: 100%;
}
.elementor-widget-text-editor ul li {
  line-height: 1.6;
}

.elementor-icon-list-item, .elementor-widget-text-editor li {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
}

.elementor-icon-list-item .elementor-icon-list-icon, .elementor-widget-text-editor li .elementor-icon-list-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
}
.elementor-icon-list-item .elementor-icon-list-icon svg, .elementor-icon-list-item .elementor-icon-list-icon i, .elementor-widget-text-editor li .elementor-icon-list-icon svg, .elementor-widget-text-editor li .elementor-icon-list-icon i {
  width: 100%;
  height: auto;
  fill: currentColor;
}
.elementor-icon-list-item .elementor-icon-list-text, .elementor-widget-text-editor li .elementor-icon-list-text {
  flex: 1;
  padding-left: var(--wp--preset--spacing--20, 1rem);
  margin-block-end: 0;
  line-height: 1.6;
  width: 100%;
}
@media (max-width: 781.98px) {
  .elementor-icon-list-item .elementor-icon-list-text, .elementor-widget-text-editor li .elementor-icon-list-text {
    font-size: var(--wp--preset--font-size--xs);
  }
}
@media (min-width: 782px) {
  .elementor-icon-list-item .elementor-icon-list-text, .elementor-widget-text-editor li .elementor-icon-list-text {
    font-size: calc(var(--wp--preset--font-size--xs) * 0.8);
  }
}

.elementor-icon, .elementor-social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
}
.elementor-icon svg, .elementor-social-icon svg {
  width: 100%;
  height: auto;
  fill: currentColor;
}

.elementor-widget-image {
  display: block !important;
  flex-direction: unset !important;
}
.elementor-widget-image img:not([class*=no-radius]),
.elementor-widget-image figure img,
.elementor-widget-image .elementor-widget-image img {
  border-radius: var(--image-radius);
}
@media (max-width: 919.98px) {
  .elementor-widget-image {
    width: fit-content;
    margin: 0 auto;
  }
}
.elementor-widget-image.blur {
  filter: blur(8px);
}

.elementor-widget-image {
  position: relative;
  border-radius: var(--image-radius);
  overflow: hidden;
  isolation: isolate;
  line-height: 0;
}
.elementor-widget-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: inherit;
  position: relative;
  z-index: 0;
  background-color: var(--wp--preset--color--brand-light-90);
  display: block;
}

.elementor-widget-image figcaption,
.elementor-widget-image .elementor-image-caption {
  font-size: var(--wp--preset--font-size--xs);
  color: var(--wp--preset--color--contrast);
  margin-top: var(--wp--preset--spacing--10);
  text-align: center;
}

.elementor-widget-image:focus {
  outline: none;
}
.elementor-widget-image:focus-visible {
  outline: 2px solid var(--wp--preset--color--brand);
  outline-offset: 3px;
  border-radius: var(--image-radius);
}
.elementor-widget-image a {
  display: block;
  border-radius: inherit;
}
.elementor-widget-image a:focus {
  outline: none;
}
.elementor-widget-image a:focus-visible {
  outline: 2px solid var(--wp--preset--color--brand);
  outline-offset: 3px;
  border-radius: var(--image-radius);
}

.elementor-widget-tm-flexible-card .tm-card-item.card-structure-editor .card-body img[src$=".svg"] {
  height: auto;
  display: block;
  margin-block-end: 0.9rem;
}

.eco-badge-container-light {
  display: flex;
}
@media (max-width: 599.98px) {
  .eco-badge-container-light {
    justify-content: center;
  }
}
@media (min-width: 600px) {
  .eco-badge-container-light {
    justify-content: start;
  }
}
.eco-badge-container-light {
  font-family: system-ui, -apple-system, sans-serif;
}

.eco-badge-light {
  display: flex;
  align-items: center;
  background: #ffffff;
  border: 1px solid #eeeeee;
  border-radius: 50px;
  padding: 6px 16px 6px 6px;
  text-decoration: none;
  text-align: left;
  color: #2c3e50;
  transition: all 0.25s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.eco-badge-light:hover {
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  border-color: #d1d1d1;
}

.eco-icon-container {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 12px;
}

.eco-svg-icon {
  width: 100%;
  height: 100%;
}

.eco-text-light {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
}

.eco-text-light strong {
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.1px;
  color: #2c3e50;
}

.eco-text-light span {
  font-size: 0.7rem;
  color: #7f8c8d;
}

header .mag-logo-wrap {
  position: relative;
}
header .mag-logo-wrap__default,
header .mag-logo-wrap__scroll {
  display: flex;
  position: absolute;
  align-items: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
header .mag-logo-wrap__default img,
header .mag-logo-wrap__scroll img {
  transition: opacity 0.3s ease, transform 0.3s ease;
}
header .mag-logo-wrap .mag-logo-wrap__default {
  opacity: 1;
  visibility: visible;
}
header .mag-logo-wrap .mag-logo-wrap__scroll {
  align-items: center;
  opacity: 0;
  visibility: hidden;
}
header .mag-logo-wrap .mag-logo-wrap__scroll img {
  width: auto;
}
header .bandeau.is-sticky-header img {
  will-change: opacity, transform;
}
@media (max-width: 781.98px) {
  header .mag-logo-wrap.has-mobile-logo .mag-logo-wrap__default {
    opacity: 0;
    visibility: hidden;
  }
  header .mag-logo-wrap.has-mobile-logo .mag-logo-wrap__scroll {
    opacity: 1;
    visibility: visible;
  }
}
header .bandeau.is-sticky-header.scrolled .mag-logo-wrap.has-scroll-logo .mag-logo-wrap__default {
  opacity: 0;
  visibility: hidden;
}
header .bandeau.is-sticky-header.scrolled .mag-logo-wrap.has-scroll-logo .mag-logo-wrap__scroll {
  opacity: 1;
  visibility: visible;
}
header .bandeau.is-sticky-header.scrolled .mag-logo-wrap:not(.has-scroll-logo):not(.has-mobile-logo) .mag-logo-wrap__default {
  opacity: 1;
  visibility: visible;
}
header .bandeau.is-sticky-header.scrolled .mag-logo-wrap:not(.has-scroll-logo):not(.has-mobile-logo) .mag-logo-wrap__scroll {
  opacity: 0;
  visibility: hidden;
}
@media (min-width: 782px) {
  header .bandeau.is-sticky-header.scrolled .mag-logo-wrap.has-mobile-logo:not(.has-scroll-logo) .mag-logo-wrap__default {
    opacity: 1;
    visibility: visible;
  }
  header .bandeau.is-sticky-header.scrolled .mag-logo-wrap.has-mobile-logo:not(.has-scroll-logo) .mag-logo-wrap__scroll {
    opacity: 0;
    visibility: hidden;
  }
}
header .bandeau.is-sticky-header.scrolled .mag-logo-wrap__scroll {
  display: flex;
  align-items: center;
  position: relative;
}
header .bandeau.is-sticky-header.scrolled .mag-logo-wrap__scroll img {
  width: auto;
}

header #barre-menu .header-elements-wrapper .header-cta {
  display: flex;
  align-items: center;
  flex-direction: row;
}
header #barre-menu .header-elements-wrapper .header-cta .btn-wrap {
  display: flex;
}
@media (max-width: 781.98px) {
  header #barre-menu .header-elements-wrapper .btn-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  header #barre-menu .header-elements-wrapper .dashicons, header #barre-menu .header-elements-wrapper .icon {
    margin: 0;
  }
  header #barre-menu .header-elements-wrapper .btn,
  header #barre-menu .header-elements-wrapper .is-primary,
  header #barre-menu .header-elements-wrapper .is-secondary {
    border-radius: var(--btn-default-rd);
  }
}
header #barre-menu .header-elements-wrapper .btn,
header #barre-menu .header-elements-wrapper .is-primary,
header #barre-menu .header-elements-wrapper .is-secondary {
  font-size: calc(var(--btn-default-fz) * 0.8);
  padding: var(--btn-default-pv, 12px) var(--btn-default-ph, 12px);
  display: flex;
  justify-content: center;
}

header .bandeau.is-sticky-header.scrolled .btn-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
header .bandeau.is-sticky-header.scrolled .dashicons, header .bandeau.is-sticky-header.scrolled .icon {
  margin: 0;
}
header .bandeau.is-sticky-header.scrolled .header-elements-wrapper .btn,
header .bandeau.is-sticky-header.scrolled .header-elements-wrapper .is-primary,
header .bandeau.is-sticky-header.scrolled .header-elements-wrapper .is-secondary {
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

header .site-banner .banner-content h1,
header .site-banner .banner-content .banner-title {
  display: flex;
  flex-direction: column;
  margin: 0;
  width: 100%;
}
header .site-banner .banner-content h1 span,
header .site-banner .banner-content .banner-title span {
  display: block;
  margin-bottom: var(--global-gap);
  padding-left: 0;
}
header .site-banner .banner-content h1 br,
header .site-banner .banner-content .banner-title br {
  display: none;
}

.image-switcher__item {
  background-color: transparent;
  height: auto;
}

.social-links-wrap {
  display: flex;
}
.social-links-wrap a.social-link {
  text-decoration: none;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.social-links-wrap a.social-link:hover {
  transform: translateY(-4px);
  filter: brightness(1.1);
}
.social-links-wrap a.social-link:active {
  transform: translateY(-1px);
}
.social-links-wrap a.social-link {
  display: inline-flex;
  align-items: center;
  justify-content: var(--btn-default-align, center);
  text-align: var(--btn-default-text-align, center);
  gap: 10px;
  overflow: hidden;
  font-family: var(--btn-default-ff, var(--font-body));
  font-size: var(--btn-default-fz, var(--fz-sm));
  padding: var(--btn-default-pv, var(--space-xs)) var(--btn-default-ph, var(--space-md));
  border-radius: var(--btn-default-rd, var(--radius-full));
  box-shadow: var(--btn-default-sh, var(--sh-none)) !important;
  padding-inline: var(--btn-default-pv, var(--space-xs));
  background-color: var(--b-btn-bg, var(--wp--preset--color--brand));
  color: var(--b-btn-text, var(--wp--preset--color--white));
  border: 2px solid transparent;
  border-radius: var(--btn-default-rd, var(--radius-full));
  box-shadow: var(--btn-default-sh, var(--sh-none));
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.social-links-wrap a.social-link:hover {
  background-color: var(--b-btn-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-text-hover, var(--wp--preset--color--white));
}

#barre-menu {
  display: flex;
  align-items: center;
  overflow: visible;
}
#barre-menu #site-navigation {
  flex: 1;
  min-width: 0;
}

.nav-toggle-open,
.nav-toggle-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: var(--btn-default-rd, none);
  box-shadow: var(--btn-default-sh, none);
  padding: var(--btn-default-pv, 12px);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
.nav-toggle-open > svg,
.nav-toggle-close > svg {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}
.nav-toggle-open:hover, .nav-toggle-open:focus,
.nav-toggle-close:hover,
.nav-toggle-close:focus {
  text-decoration: none;
}

.nav-toggle-close {
  display: none;
}

#site-navigation.is-open .nav-toggle-close {
  display: flex;
}

.nav-toggle-open {
  display: none;
}

header .menu-item > a,
header #site-navigation.is-open .sub-menu .menu-item > a {
  display: flex;
  transition: color 0.3s ease, background-color 0.3s ease;
  position: relative;
  color: inherit;
  border-radius: var(--btn-default-rd, 0);
  padding: var(--btn-default-pv, var(--space-xs)) var(--btn-default-ph, var(--space-md));
}
header .menu-item {
  list-style: none;
}
header .menu-item > a {
  display: flex;
  transition: color 0.3s ease, background-color 0.3s ease;
  position: relative;
  color: inherit;
  border-radius: var(--btn-default-rd, 0);
  padding: var(--btn-default-pv, var(--space-xs)) var(--btn-default-ph, var(--space-md));
}
header .menu-item-has-children ul.sub-menu {
  display: none;
}
header .menu-item-has-children:hover ul.sub-menu {
  display: block;
}
header .sub-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}
header .nav-toggle-close {
  position: absolute;
  right: 16px;
  top: 16px;
  z-index: 10;
}
header #site-navigation.is-open {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow-y: auto;
}
header #site-navigation.is-open .menu-item-has-children > a {
  display: none;
}
header #site-navigation.is-open .menu-item-has-children > ul.sub-menu {
  display: flex;
  flex-direction: column;
}
header #site-navigation.is-open .sub-menu {
  position: static;
  box-shadow: none;
  padding: 0;
}
header #site-navigation.is-open .nav-menu {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none;
  width: 100%;
}
header #site-navigation.is-open .menu-item > a {
  width: 100%;
}
header #site-navigation .nav-menu {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding-left: 0;
  list-style: none;
}
header #site-navigation .nav-menu::marker {
  display: none;
}
header #site-navigation .sub-menu {
  position: absolute;
  z-index: 100;
}
header #site-navigation .menu-item-has-children {
  position: relative;
}
header #site-navigation .menu-item-has-children .sub-menu {
  border-radius: var(--card-radius);
  gap: 0;
}
header #site-navigation .menu-item-has-children .sub-menu .menu-item:only-child > a {
  border-radius: var(--btn-default-rd);
}
header #site-navigation .menu-item-has-children .sub-menu .menu-item:has(+ .menu-item) > a {
  border-radius: var(--card-radius) var(--card-radius) 0 0;
}
header #site-navigation .menu-item-has-children .sub-menu .menu-item + .menu-item:last-child > a {
  border-radius: 0 0 var(--card-radius) var(--card-radius);
}
header #site-navigation .menu-item-has-children .sub-menu .menu-item + .menu-item:has(+ .menu-item) > a {
  border-radius: 0;
}

body.mag-nav-hide-home header #site-navigation:not(.is-open) .menu-item.menu-item-home,
body.mag-nav-hide-home header #site-navigation:not(.is-open) .menu-item.current_page_item:first-child {
  display: none;
}

#banner {
  position: relative;
  transition: background-color 400ms ease, color 400ms ease;
}
#banner .diapo-cta-buttons {
  transition: background-color 400ms ease, color 400ms ease, border-color 400ms ease;
}

.image-switcher {
  position: absolute;
  inset: 0;
  width: 100%;
  height: auto;
  display: grid;
  grid-template-rows: 1fr auto;
  z-index: 0;
}

.image-switcher__item {
  grid-row: 1;
  grid-column: 1;
  margin: 0;
  min-height: 0;
  align-self: stretch;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 400ms ease, visibility 0ms 400ms;
}
.image-switcher__item[aria-hidden=false] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 400ms ease, visibility 0ms 0ms;
}
.image-switcher__item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  overflow: visible;
}
.image-switcher__item br {
  display: none;
}

/*
.image-switcher__nav {
    position:        absolute;
    display:         flex;
    justify-content: center;
    padding-block:   1rem;
    width:           100%;
    left:            0;
    bottom:          3vh;
    z-index:         3;
}*/
.image-switcher__dots {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}

.image-switcher__dot {
  border-color: inherit;
  border-width: 1px;
  border-style: solid;
  background: transparent;
  cursor: pointer;
  padding: 0;
  transition: background-color 200ms ease, transform 200ms ease;
}
.image-switcher__dot.is-active, .image-switcher__dot[aria-current=true] {
  background-color: inherit;
  transform: scale(1.25);
}
.image-switcher__dot:focus-visible {
  outline-color: inherit;
  outline-width: 2px;
  outline-style: solid;
  outline-offset: 3px;
}

.cta-switcher {
  position: absolute;
  z-index: 1;
}

.site-header.is-style-switcher-light {
  background-color: var(--wp--preset--color--white);
  position: relative;
}
.site-header.is-style-switcher-light::before {
  content: "";
  position: absolute;
  width: 100%;
  left: 0;
  background-color: var(--wp--preset--color--white);
}
@media (min-width: 782px) {
  .site-header.is-style-switcher-light.is-boxed .bandeau:not(.scrolled) {
    margin-top: var(--wp--preset--spacing--40);
  }
}
.site-header.is-style-switcher-light.is-boxed .bandeau::before {
  display: none;
}

#banner-content h1.banner-title {
  color: var(--wp--preset--color--brand);
}
#banner-content p {
  color: var(--wp--preset--color--text);
}

.site-header .site-banner.is-style-switcher-light .image-switcher__item[aria-hidden=false] img {
  position: relative;
}
@media (max-width: 781.98px) {
  .site-header .site-banner.is-style-switcher-light .image-switcher__item[aria-hidden=false] img {
    opacity: 0.5;
  }
}
.site-header .site-banner.is-style-switcher-light.has-parallax .image-switcher__item[aria-hidden=false] img {
  position: absolute;
}
.site-header .site-banner.is-style-switcher-light .image-switcher__nav .image-switcher__dots button.image-switcher__dot {
  border-color: var(--wp--preset--color--brand);
}
.site-header .site-banner.is-style-switcher-light .image-switcher__nav .image-switcher__dots button.image-switcher__dot.is-active {
  background-color: var(--wp--preset--color--brand);
}

.site-header .bandeau.is-style-switcher-light .mag-logo-wrap img[src$=".svg"],
.site-header .bandeau.is-style-switcher-light.scrolled .mag-logo-wrap img[src$=".svg"] {
  filter: invert(0%) var(--filter-brand);
  opacity: 1;
}

.site-header .bandeau.is-style-switcher-light.scrolled .header-elements-wrapper .social-links-wrap .social-link {
  transition: opacity 0.2s ease;
}

.site-header.is-style-switcher-dark {
  background-color: var(--wp--preset--color--brand);
  position: relative;
}
.site-header.is-style-switcher-dark::before {
  content: "";
  position: absolute;
  width: 100%;
  left: 0;
  background-color: var(--wp--preset--color--brand);
}
@media (min-width: 782px) {
  .site-header.is-style-switcher-dark.is-boxed .bandeau:not(.scrolled) {
    margin-top: var(--wp--preset--spacing--40);
  }
}
.site-header.is-style-switcher-dark.is-boxed .bandeau::before {
  display: none;
}

#banner-content h1.banner-title {
  color: var(--wp--preset--color--white);
}
#banner-content p {
  color: var(--wp--preset--color--white);
}

.site-header .site-banner.is-style-switcher-dark .image-switcher__item[aria-hidden=false] img {
  position: relative;
}
@media (max-width: 781.98px) {
  .site-header .site-banner.is-style-switcher-dark .image-switcher__item[aria-hidden=false] img {
    opacity: 0.5;
  }
}
.site-header .site-banner.is-style-switcher-dark.has-parallax .image-switcher__item[aria-hidden=false] img {
  position: absolute;
}
.site-header .site-banner.is-style-switcher-dark .image-switcher__nav .image-switcher__dots button.image-switcher__dot {
  border-color: var(--wp--preset--color--white);
}
.site-header .site-banner.is-style-switcher-dark .image-switcher__nav .image-switcher__dots button.image-switcher__dot.is-active {
  background-color: var(--wp--preset--color--white);
}

.site-header .bandeau.is-style-switcher-dark .mag-logo-wrap img[src$=".svg"],
.site-header .bandeau.is-style-switcher-dark.scrolled .mag-logo-wrap img[src$=".svg"] {
  filter: invert(100%);
  opacity: 1;
}

.site-header .bandeau.is-style-switcher-dark.scrolled .header-elements-wrapper .social-links-wrap .social-link {
  transition: opacity 0.2s ease;
}

.site-header.is-style-switcher-brand {
  background-color: var(--wp--preset--color--brand);
  position: relative;
}
.site-header.is-style-switcher-brand::before {
  content: "";
  position: absolute;
  width: 100%;
  left: 0;
  background-color: var(--wp--preset--color--brand);
}
@media (min-width: 782px) {
  .site-header.is-style-switcher-brand.is-boxed .bandeau:not(.scrolled) {
    margin-top: var(--wp--preset--spacing--40);
  }
}
.site-header.is-style-switcher-brand.is-boxed .bandeau::before {
  display: none;
}

#banner-content h1.banner-title {
  color: var(--wp--preset--color--white);
}
#banner-content p {
  color: var(--wp--preset--color--white);
}

.site-header .site-banner.is-style-switcher-brand .image-switcher__item[aria-hidden=false] img {
  position: relative;
}
@media (max-width: 781.98px) {
  .site-header .site-banner.is-style-switcher-brand .image-switcher__item[aria-hidden=false] img {
    opacity: 0.5;
  }
}
.site-header .site-banner.is-style-switcher-brand.has-parallax .image-switcher__item[aria-hidden=false] img {
  position: absolute;
}
.site-header .site-banner.is-style-switcher-brand .image-switcher__nav .image-switcher__dots button.image-switcher__dot {
  border-color: var(--wp--preset--color--white);
}
.site-header .site-banner.is-style-switcher-brand .image-switcher__nav .image-switcher__dots button.image-switcher__dot.is-active {
  background-color: var(--wp--preset--color--white);
}

.site-header .bandeau.is-style-switcher-brand .mag-logo-wrap img[src$=".svg"],
.site-header .bandeau.is-style-switcher-brand.scrolled .mag-logo-wrap img[src$=".svg"] {
  filter: invert(100%);
  opacity: 1;
}

.site-header .bandeau.is-style-switcher-brand.scrolled .header-elements-wrapper .social-links-wrap .social-link {
  transition: opacity 0.2s ease;
}

.e-con.e-con-boxed.e-parent {
  width: 100%;
}
.e-con.e-con-boxed.e-parent .e-con-inner > * {
  position: relative;
  z-index: 1;
}

.e-con > :not(.elementor-widget-button):not(.elementor-widget-tm-button-secondary):not(style):not(script) {
  width: 100%;
}

.e-con > .elementor-widget-tm-accordion-card {
  width: 100%;
}
.e-con .elementor-widget-tm-flexible-card {
  width: 100%;
  margin: 0 auto;
}

.e-con > .elementor-widget-tm-accordion-card:has(details.tm-accordion-item) {
  height: max-content;
  box-shadow: none;
}
.e-con > .elementor-widget-tm-accordion-card:has(details.tm-accordion-item) .elementor-widget-container {
  height: max-content;
}

.e-con-full:has(.elementor-widget-tm-accordion-card) {
  height: auto !important;
  min-height: fit-content !important;
}

.e-grid:has(.elementor-widget-tm-accordion-card) {
  align-items: start;
}

.e-con.has-parallax {
  --b-bg: var(--wp--preset--color--brand);
  --b-bg-alt: var(--wp--preset--color--brand-dark-90);
  --b-text: var(--wp--preset--color--white);
  --b-border: var(--wp--preset--color--brand-dark-30);
  --b-heading: var(--wp--preset--color--white);
  --b-heading-alt: var(--wp--preset--color--white-dark-20);
  --b-link: var(--wp--preset--color--white-dark-20);
  --b-link-hover: var(--wp--preset--color--brand-light-90);
  --b-btn-bg: var(--wp--preset--color--white);
  --b-btn-text: var(--wp--preset--color--brand-dark-20);
  --b-btn-outline: var(--wp--preset--color--white-dark-80);
  --b-btn-bg-hover: var(--wp--preset--color--brand-light-60);
  --b-btn-text-hover: var(--wp--preset--color--dark);
  --b-btn-secondary-bg: var(--wp--preset--color--transparent);
  --b-btn-secondary-text: var(--wp--preset--color--white);
  --b-btn-secondary-outline: var(--wp--preset--color--white);
  --b-btn-secondary-bg-hover: var(--wp--preset--color--white);
  --b-btn-secondary-outline-hover: var(--wp--preset--color--white);
  --b-btn-secondary-text-hover: var(--wp--preset--color--dark);
  --b-svg-fill: var(--wp--preset--color--white);
  --b-icon-filter: invert(100%);
  --b-svg-opacity: 1;
  background-color: var(--b-bg);
  color: var(--b-text);
  border-color: var(--b-border);
  transition: background-color 0.3s ease, color 0.3s ease;
}
.e-con.has-parallax .wp-block-group, .e-con.has-parallax .e-con, .e-con.has-parallax .e-con-inner, .e-con.has-parallax .is-layout-constrained > *:not(.alignfull) {
  background-color: transparent;
}
.e-con.has-parallax h1:not(.tm-card-item *):not(.tm-accordion-item *), .e-con.has-parallax h2:not(.tm-card-item *):not(.tm-accordion-item *), .e-con.has-parallax h3:not(.tm-card-item *):not(.tm-accordion-item *), .e-con.has-parallax h4:not(.tm-card-item *):not(.tm-accordion-item *), .e-con.has-parallax h5:not(.tm-card-item *):not(.tm-accordion-item *), .e-con.has-parallax h6:not(.tm-card-item *):not(.tm-accordion-item *) {
  color: var(--b-heading);
}
.e-con.has-parallax h1:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con.has-parallax h2:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con.has-parallax h3:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con.has-parallax h4:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con.has-parallax h5:not(.tm-card-item *):not(.tm-accordion-item *) span, .e-con.has-parallax h6:not(.tm-card-item *):not(.tm-accordion-item *) span {
  color: var(--b-heading-alt);
}
.e-con.has-parallax p:not([class*=card] *):not(.tm-accordion-item *), .e-con.has-parallax li:not([class*=card] *):not(.tm-accordion-item *) {
  color: var(--b-text);
}
.e-con.has-parallax a:not(.wp-block-button__link, .wp-element-button, .elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *) {
  color: var(--b-link, inherit);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.e-con.has-parallax a:not(.wp-block-button__link, .wp-element-button, .elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, .nav-menu *):hover {
  color: var(--b-link-hover);
}
.e-con.has-parallax nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
.e-con.has-parallax nav a *:hover {
  color: var(--b-bg);
  background-color: var(--b-heading);
}
.e-con.has-parallax .tm-card-item a:not(.card-link),
.e-con.has-parallax .tm-accordion-item a:not(.card-link) {
  color: inherit;
  text-decoration: none;
}
.e-con.has-parallax .wp-block-button__link:not(.my-custom-card *), .e-con.has-parallax .wp-element-button:not(.my-custom-card *), .e-con.has-parallax .elementor-button:not(.my-custom-card *), .e-con.has-parallax .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.e-con.has-parallax .wp-block-button__link:not(.my-custom-card *):not(.is-secondary), .e-con.has-parallax .wp-element-button:not(.my-custom-card *):not(.is-secondary), .e-con.has-parallax .elementor-button:not(.my-custom-card *):not(.is-secondary), .e-con.has-parallax .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: var(--b-btn-bg);
  color: var(--b-btn-text);
  border-color: transparent;
}
.e-con.has-parallax .wp-block-button__link:not(.my-custom-card *):not(.is-secondary):hover, .e-con.has-parallax .wp-element-button:not(.my-custom-card *):not(.is-secondary):hover, .e-con.has-parallax .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .e-con.has-parallax .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.e-con.has-parallax .wp-block-button__link:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .wp-block-button__link:not(.my-custom-card *):not(.is-secondary), .e-con.has-parallax .wp-element-button:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .wp-element-button:not(.my-custom-card *):not(.is-secondary), .e-con.has-parallax .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .elementor-button:not(.my-custom-card *):not(.is-secondary), .e-con.has-parallax .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary), :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .btn-mag:not(.my-custom-card *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
.e-con.has-parallax .wp-block-button__link:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .wp-block-button__link:not(.my-custom-card *):not(.is-secondary):hover, .e-con.has-parallax .wp-element-button:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .wp-element-button:not(.my-custom-card *):not(.is-secondary):hover, .e-con.has-parallax .elementor-button:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .elementor-button:not(.my-custom-card *):not(.is-secondary):hover, .e-con.has-parallax .btn-mag:not(.my-custom-card *).is-style-outline:not(.is-secondary):hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .btn-mag:not(.my-custom-card *):not(.is-secondary):hover {
  background-color: var(--b-btn-bg-hover);
  color: var(--b-btn-text-hover);
  border-color: transparent;
}
.e-con.has-parallax .wp-block-button__link:not(.my-custom-card *).is-secondary, .e-con.has-parallax .wp-element-button:not(.my-custom-card *).is-secondary, .e-con.has-parallax .elementor-button:not(.my-custom-card *).is-secondary, .e-con.has-parallax .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: var(--b-btn-secondary-bg);
  color: var(--b-btn-secondary-text);
  border-color: var(--b-btn-secondary-outline);
}
.e-con.has-parallax .wp-block-button__link:not(.my-custom-card *).is-secondary:hover, .e-con.has-parallax .wp-element-button:not(.my-custom-card *).is-secondary:hover, .e-con.has-parallax .elementor-button:not(.my-custom-card *).is-secondary:hover, .e-con.has-parallax .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.e-con.has-parallax .wp-block-button__link:not(.my-custom-card *).is-secondary.is-style-outline, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .wp-block-button__link:not(.my-custom-card *).is-secondary, .e-con.has-parallax .wp-element-button:not(.my-custom-card *).is-secondary.is-style-outline, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .wp-element-button:not(.my-custom-card *).is-secondary, .e-con.has-parallax .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .elementor-button:not(.my-custom-card *).is-secondary, .e-con.has-parallax .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .btn-mag:not(.my-custom-card *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
.e-con.has-parallax .wp-block-button__link:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .wp-block-button__link:not(.my-custom-card *).is-secondary:hover, .e-con.has-parallax .wp-element-button:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .wp-element-button:not(.my-custom-card *).is-secondary:hover, .e-con.has-parallax .elementor-button:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .elementor-button:not(.my-custom-card *).is-secondary:hover, .e-con.has-parallax .btn-mag:not(.my-custom-card *).is-secondary.is-style-outline:hover, :is(.is-style-outline, .elementor-button.e-btn-border, .is-style-outline-parent) .e-con.has-parallax .btn-mag:not(.my-custom-card *).is-secondary:hover {
  background-color: var(--b-btn-secondary-bg-hover);
  color: var(--b-btn-secondary-text-hover);
  border-color: var(--b-btn-secondary-outline-hover);
}
.e-con.has-parallax :is(hr, .wp-block-separator, .is-divider) {
  background-color: var(--b-text);
  opacity: 0.2;
  height: 1px;
  border: none;
  margin: 2rem auto;
}
.e-con.has-parallax.is-recolor img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
.e-con.has-parallax.is-recolor .wp-block-image svg:not(.tm-card-item *),
.e-con.has-parallax.is-recolor .wp-block-html svg:not(.tm-card-item *),
.e-con.has-parallax.is-recolor .elementor-widget-image svg:not(.tm-card-item *),
.e-con.has-parallax.is-recolor .elementor-widget-html svg:not(.tm-card-item *), body.is-recolor-global .e-con.has-parallax img[src$=".svg"]:not(.has-parallax *):not(.tm-card-item *),
body.is-recolor-global .e-con.has-parallax .wp-block-image svg:not(.tm-card-item *),
body.is-recolor-global .e-con.has-parallax .wp-block-html svg:not(.tm-card-item *),
body.is-recolor-global .e-con.has-parallax .elementor-widget-image svg:not(.tm-card-item *),
body.is-recolor-global .e-con.has-parallax .elementor-widget-html svg:not(.tm-card-item *) {
  filter: var(--b-icon-filter);
  opacity: var(--b-svg-opacity);
}
.e-con.has-parallax.is-recolor-fill .wp-block-image svg *:not(.tm-card-item *),
.e-con.has-parallax.is-recolor-fill .wp-block-html svg *:not(.tm-card-item *),
.e-con.has-parallax.is-recolor-fill .elementor-widget-image svg *:not(.tm-card-item *),
.e-con.has-parallax.is-recolor-fill .elementor-widget-html svg *:not(.tm-card-item *) {
  fill: var(--b-svg-fill);
}
.e-con.has-parallax body.is-recolor-global .footer-brand img[src$=".svg"].mag-logo {
  filter: var(--b-icon-filter, none);
  opacity: var(--b-svg-opacity, 1);
}
.e-con.has-parallax body.is-recolor-global .footer-brand .mag-logo svg {
  fill: var(--b-svg-fill, currentColor);
}
.e-con.has-parallax .footer-brand img[src$=".svg"].mag-logo {
  filter: none;
}
.e-con.has-parallax .footer-brand .mag-logo svg {
  fill: none;
}
.e-con.has-parallax {
  position: relative;
  min-height: var(--block-parallax-min-height);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.e-con.has-parallax > :not(.elementor-widget-image) {
  position: relative;
  z-index: 1;
}
.e-con.has-parallax .elementor-widget-image {
  display: block;
  width: 100%;
  min-width: 100%;
  height: 140%;
  position: absolute;
  object-fit: cover;
  object-position: center;
  will-change: transform;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 781.98px) {
  .e-con.has-parallax .elementor-widget-image {
    left: 0;
    top: 50%;
    transform: translateY(calc(-35% + var(--parallax-offset, 0px)));
  }
}
@media (min-width: 782px) {
  .e-con.has-parallax .elementor-widget-image {
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(calc(-35% + var(--parallax-offset, 0px)));
  }
}
.e-con.has-parallax .elementor-widget-image {
  width: 100%;
  border-radius: initial;
  overflow: visible;
  top: 0;
}
.e-con.has-parallax .elementor-widget-image img[src$=".svg"],
.e-con.has-parallax .elementor-widget-image svg {
  border-radius: unset;
  position: absolute;
  background-size: cover;
  filter: none;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 15%, black 85%, transparent 100%);
  mask-image: linear-gradient(to bottom, transparent 0%, black 15%, black 85%, transparent 100%);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.header-social-wrap {
  border-radius: var(--btn-default-rd, var(--radius-full));
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  position: relative;
  z-index: 0;
}
.header-social-wrap .social-links-wrap {
  border-radius: var(--btn-default-rd, var(--radius-full));
}
.header-social-wrap .social-links-wrap .social-link {
  border-radius: var(--btn-default-rd, var(--radius-full));
  text-decoration: none;
}

.footer-social-wrap {
  display: flex;
  text-decoration: none;
}

.eco-icon-container {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 12px;
}

.eco-svg-icon {
  width: 100%;
  height: 100%;
}

.eco-badge-container-light {
  padding: var(--wp--preset--spacing--10);
  background-color: var(--eco-badge-light-background);
  display: flex;
  font-family: system-ui, -apple-system, sans-serif;
}
@media (max-width: 599.98px) {
  .eco-badge-container-light {
    justify-content: center;
  }
}
@media (min-width: 600px) {
  .eco-badge-container-light {
    justify-content: center;
  }
}

.eco-badge-light {
  display: flex;
  align-items: center;
  background: var(--wp--preset--color--white);
  border: 1px solid var(--wp--preset--color--white-dark-20);
  border-radius: 50px;
  padding: 6px 16px 6px 6px;
  text-decoration: none;
  color: #2c3e50;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.eco-badge-light:hover {
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  border-color: #d1d1d1;
}

.eco-text-light {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
}
.eco-text-light strong {
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.1px;
  color: #2c3e50;
}
.eco-text-light span {
  font-size: 0.7rem;
  color: #3d4a4b;
}

.eco-badge-container-dark {
  padding: var(--wp--preset--spacing--10);
  background-color: var(--eco-badge-dark-background);
  display: flex;
  font-family: system-ui, -apple-system, sans-serif;
}
@media (max-width: 599.98px) {
  .eco-badge-container-dark {
    justify-content: center;
  }
}
@media (min-width: 600px) {
  .eco-badge-container-dark {
    justify-content: center;
  }
}

.eco-badge-dark {
  display: flex;
  align-items: center;
  background: var(--wp--preset--color--dark-dark-80);
  border: 1px solid var(--wp--preset--color--white-dark-90);
  border-radius: 50px;
  padding: 6px 16px 6px 6px;
  text-decoration: none;
  color: var(--wp--preset--color--white-dark-40);
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.1);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.eco-badge-dark:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 25px rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.3);
}

.eco-text-dark {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
}
.eco-text-dark strong {
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.2px;
  color: var(--wp--preset--color--white-dark-40);
}
.eco-text-dark span {
  font-size: 0.7rem;
  color: var(--wp--preset--color--white-dark-40);
}
