@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);
  --container-max-width: var(--wp--style--global--wide-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: 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;
  --topbanner-min-height: 42px;
}

/* Map pour tes mixins de génération de classes */
/* Génération automatique de classes utilitaires */
/* Génération automatique de classes utilitaires */
: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-element {
  --e-theme-heading: var(--b-heading, inherit);
  --e-theme-bg: var(--b-bg, inherit);
  --e-theme-text-color: var(--b-text, inherit);
}
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;
}
@media (max-width: 2559.98px) {
  body .elementor-widget-text-editor {
    font-size: var(--fz-xs, 1rem);
    line-height: var(--wp--custom--line-height--body, 1.6);
  }
}
@media (min-width: 2560px) {
  body .elementor-widget-text-editor {
    font-size: var(--fz-xs, 1.6rem);
    line-height: calc(1.2 * var(--wp--custom--line-height--body, 1.8));
  }
}
@media (max-width: 2559.98px) {
  body p, body p span, body p a, body li, body blockquote, body label, body input {
    font-size: var(--fz-xs, 1rem);
    line-height: var(--wp--custom--line-height--body, 1.6);
  }
}
@media (min-width: 2560px) {
  body p, body p span, body p a, body li, body blockquote, body label, body input {
    font-size: var(--fz-xs, 1.6rem);
    line-height: calc(1.05 * var(--wp--custom--line-height--body, 1.8));
  }
}

.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;
}
.e-con.e-con-boxed {
  margin-left: unset;
  margin-right: unset;
}
.e-con.e-con-boxed > .e-con-inner {
  margin-inline: auto;
  width: min(100%, var(--e-con-max-width, var(--content-wide)));
}

.elementor-element .e-con, .elementor .e-con {
  gap: var(--grid-gap, var(--wp--style--block-gap, 0.5rem));
}
.elementor-element .e-con:not(:has(> .e-con)), .elementor .e-con:not(:has(> .e-con)) {
  gap: var(--grid-gap, var(--wp--style--block-gap, 1.5rem));
}
.elementor-element .e-con.e-grid:not([class*=grid-]), .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-element .e-con.e-grid:not([class*=grid-]).is-not-stacked-on-mobile, .elementor .e-con.e-grid:not([class*=grid-]).is-not-stacked-on-mobile {
  flex-wrap: nowrap;
}
.elementor-element .e-con.e-grid[class*=grid-], .elementor .e-con.e-grid[class*=grid-] {
  gap: var(--grid-gap, var(--wp--style--block-gap, 1.5rem));
}
:not([class*=grid-]) > .elementor-element .e-con.e-child, :not([class*=grid-]) > .elementor .e-con.e-child {
  min-width: 0;
  align-self: flex-start;
}
:not([class*=grid-]) > .elementor-element .e-con.e-child[style*=flex-basis], :not([class*=grid-]) > .elementor .e-con.e-child[style*=flex-basis] {
  flex-grow: 0;
}
[class*=grid-] > .elementor-element .e-con.e-child, [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-gradient-from: var(--wp--preset--color--brand);
  --b-btn-gradient-to: var(--wp--preset--color--accent-1);
  --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.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) p:not([class*=card] *):not(.tm-accordion-item *) {
  color: var(--b-text);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) {
  color: var(--b-heading);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) span,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) span {
  color: var(--b-heading-alt);
}
.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 *, .has-gradient *),
.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 *, .has-gradient *) {
  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 *, .has-gradient *):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 *, .has-gradient *):hover {
  color: var(--b-link-hover);
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) nav li::after > a, .e-con:not([class*=is-style-]):not([class*=is-style-] *):focus-within > a, .e-con:not([class*=is-style-]):not([class*=is-style-] *):has(.sub-menu:hover) > a,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) nav li::after > a,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *):focus-within > a,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *):has(.sub-menu:hover) > a {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
.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-link, inherit);
  background-color: var(--b-btn-bg);
}
.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 *):not(.has-gradient *), .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *) {
  border-width: 2px;
  border-style: solid;
}
.e-con:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient), .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient) {
  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(.has-gradient *):not(.is-secondary):not(.has-gradient):hover, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient):hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient):hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient):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 *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary), .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary),
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):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 *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary):hover, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary):hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary):hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):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 *):not(.has-gradient *).is-secondary, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).is-secondary,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *).is-secondary,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).is-secondary:hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *).is-secondary:hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .e-con:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .elementor-button:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover,
.e-con.is-banniere:not([class*=is-style-]):not([class*=is-style-] *) .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *).has-gradient, .has-gradient .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 *).has-gradient, .has-gradient .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 *).has-gradient,
.has-gradient .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 *).has-gradient,
.has-gradient .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-] *) :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-gradient-from: var(--wp--preset--color--brand);
  --b-btn-gradient-to: var(--wp--preset--color--accent-1);
  --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 *) {
  color: var(--b-text);
}
.is-style-switcher-light li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) {
  color: var(--b-heading);
}
.is-style-switcher-light li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) span {
  color: var(--b-heading-alt);
}
.is-style-switcher-light a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, nav *, .has-gradient *) {
  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 *, .has-gradient *):hover {
  color: var(--b-link-hover);
}
.is-style-switcher-light nav li::after > a, .is-style-switcher-light:focus-within > a, .is-style-switcher-light:has(.sub-menu:hover) > a {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
.is-style-switcher-light nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
.is-style-switcher-light nav a *:hover {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
.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 *):not(.has-gradient *), .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.has-gradient *) {
  border-width: 2px;
  border-style: solid;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient), .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient) {
  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(.has-gradient *):not(.is-secondary):not(.has-gradient):hover, .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient):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 *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary), .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary):hover, .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):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 *):not(.has-gradient *).is-secondary, .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary, .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
.is-style-switcher-light .elementor-button:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .is-style-switcher-light .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *).has-gradient, .has-gradient .is-style-switcher-light .elementor-button:not(.my-custom-card *), .is-style-switcher-light .btn-mag:not(.my-custom-card *).has-gradient, .has-gradient .is-style-switcher-light .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.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);
  --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-gradient-from: var(--wp--preset--color--white);
  --b-btn-gradient-to: var(--wp--preset--color--white-dark-40);
  --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 *) {
  color: var(--b-text);
}
.is-style-switcher-dark li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) {
  color: var(--b-heading);
}
.is-style-switcher-dark li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) span {
  color: var(--b-heading-alt);
}
.is-style-switcher-dark a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, nav *, .has-gradient *) {
  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 *, .has-gradient *):hover {
  color: var(--b-link-hover);
}
.is-style-switcher-dark nav li::after > a, .is-style-switcher-dark:focus-within > a, .is-style-switcher-dark:has(.sub-menu:hover) > a {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
.is-style-switcher-dark nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
.is-style-switcher-dark nav a *:hover {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
.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 *):not(.has-gradient *), .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.has-gradient *) {
  border-width: 2px;
  border-style: solid;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient), .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient) {
  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(.has-gradient *):not(.is-secondary):not(.has-gradient):hover, .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient):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 *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary), .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary):hover, .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):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 *):not(.has-gradient *).is-secondary, .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary, .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
.is-style-switcher-dark .elementor-button:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .is-style-switcher-dark .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *).has-gradient, .has-gradient .is-style-switcher-dark .elementor-button:not(.my-custom-card *), .is-style-switcher-dark .btn-mag:not(.my-custom-card *).has-gradient, .has-gradient .is-style-switcher-dark .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.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);
  --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-60);
  --b-btn-text-hover: var(--wp--preset--color--dark);
  --b-btn-gradient-from: var(--wp--preset--color--brand);
  --b-btn-gradient-to: var(--wp--preset--color--accent-1);
  --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 *) {
  color: var(--b-text);
}
.is-style-switcher-brand li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) {
  color: var(--b-heading);
}
.is-style-switcher-brand li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) span {
  color: var(--b-heading-alt);
}
.is-style-switcher-brand a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, nav *, .has-gradient *) {
  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 *, .has-gradient *):hover {
  color: var(--b-link-hover);
}
.is-style-switcher-brand nav li::after > a, .is-style-switcher-brand:focus-within > a, .is-style-switcher-brand:has(.sub-menu:hover) > a {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
.is-style-switcher-brand nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
.is-style-switcher-brand nav a *:hover {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
.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 *):not(.has-gradient *), .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.has-gradient *) {
  border-width: 2px;
  border-style: solid;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient), .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient) {
  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(.has-gradient *):not(.is-secondary):not(.has-gradient):hover, .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient):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 *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary), .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary):hover, .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):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 *):not(.has-gradient *).is-secondary, .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary, .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
.is-style-switcher-brand .elementor-button:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .is-style-switcher-brand .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *).has-gradient, .has-gradient .is-style-switcher-brand .elementor-button:not(.my-custom-card *), .is-style-switcher-brand .btn-mag:not(.my-custom-card *).has-gradient, .has-gradient .is-style-switcher-brand .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.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-gradient-from: var(--wp--preset--color--brand);
  --b-btn-gradient-to: var(--wp--preset--color--accent-1);
  --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 *) {
  color: var(--b-text);
}
.is-style-switcher-accent-1 li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) {
  color: var(--b-heading);
}
.is-style-switcher-accent-1 li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) span {
  color: var(--b-heading-alt);
}
.is-style-switcher-accent-1 a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, nav *, .has-gradient *) {
  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 *, .has-gradient *):hover {
  color: var(--b-link-hover);
}
.is-style-switcher-accent-1 nav li::after > a, .is-style-switcher-accent-1:focus-within > a, .is-style-switcher-accent-1:has(.sub-menu:hover) > a {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
.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-link, inherit);
  background-color: var(--b-btn-bg);
}
.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 *):not(.has-gradient *), .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.has-gradient *) {
  border-width: 2px;
  border-style: solid;
}
.is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient), .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient) {
  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(.has-gradient *):not(.is-secondary):not(.has-gradient):hover, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient):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 *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary), .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):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 *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary):hover, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):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 *):not(.has-gradient *).is-secondary, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *).has-gradient, .has-gradient .is-style-switcher-accent-1 .elementor-button:not(.my-custom-card *), .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *).has-gradient, .has-gradient .is-style-switcher-accent-1 .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
.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;
}
.e-con.e-con-boxed {
  margin-left: unset;
  margin-right: unset;
}
.e-con.e-con-boxed > .e-con-inner {
  margin-inline: auto;
  width: min(100%, var(--e-con-max-width, var(--content-wide)));
}

.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-color: transparent;
  border: none;
  font-family: inherit;
  font-weight: 400;
  text-transform: none;
  line-height: 1.2;
  border-radius: inherit;
  box-shadow: none;
}

.elementor-element {
  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-element.has-titles-font-family p, .elementor-element.has-titles-font-family span, .elementor-element.has-titles-font-family a, .elementor-element.f-family-titles p, .elementor-element.f-family-titles span, .elementor-element.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-element.has-body-font-family p, .elementor-element.has-body-font-family span, .elementor-element.has-body-font-family a, .elementor-element.f-family-body p, .elementor-element.f-family-body span, .elementor-element.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-element.has-system-font-family p, .elementor-element.has-system-font-family span, .elementor-element.has-system-font-family a, .elementor-element.f-family-system p, .elementor-element.f-family-system span, .elementor-element.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: inherit;
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xl);
}

h2.elementor-heading-title, h2 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: inherit;
  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: inherit;
  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: inherit;
  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: inherit;
  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: inherit;
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xs);
}

.elementor-element p, .elementor-element p span, .elementor-element p a, .elementor-element li, .elementor-element blockquote, .elementor-element label, .elementor-element input {
  font-family: var(--wp--preset--font-family--body);
  color: inherit;
}
@media (max-width: 2559.98px) {
  .elementor-element p, .elementor-element p span, .elementor-element p a, .elementor-element li, .elementor-element blockquote, .elementor-element label, .elementor-element input {
    font-size: var(--fz-xs, 1rem);
    line-height: var(--wp--custom--line-height--body, 1.6);
  }
}
@media (min-width: 2560px) {
  .elementor-element p, .elementor-element p span, .elementor-element p a, .elementor-element li, .elementor-element blockquote, .elementor-element label, .elementor-element input {
    font-size: var(--fz-xs, 1.6rem);
    line-height: calc(1.2 * var(--wp--custom--line-height--body, 1.8));
  }
}

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

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

body:not(.elementor-editor-active) {
  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:not(.image-switcher *) {
  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;
}

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;
}

:not(#elementor-panel) select {
  display: block;
}
:not(#elementor-panel) dd, :not(#elementor-panel) dl, :not(#elementor-panel) dt, :not(#elementor-panel) li, :not(#elementor-panel) ol, :not(#elementor-panel) 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-element {
  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-element.has-titles-font-family p, .elementor-element.has-titles-font-family span, .elementor-element.has-titles-font-family a, .elementor-element.f-family-titles p, .elementor-element.f-family-titles span, .elementor-element.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-element.has-body-font-family p, .elementor-element.has-body-font-family span, .elementor-element.has-body-font-family a, .elementor-element.f-family-body p, .elementor-element.f-family-body span, .elementor-element.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-element.has-system-font-family p, .elementor-element.has-system-font-family span, .elementor-element.has-system-font-family a, .elementor-element.f-family-system p, .elementor-element.f-family-system span, .elementor-element.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: inherit;
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xl);
}

h2.elementor-heading-title, h2 {
  font-family: var(--wp--preset--font-family--titles, var(--wp--preset--font-family--titles));
  color: inherit;
  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: inherit;
  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: inherit;
  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: inherit;
  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: inherit;
  font-weight: 400;
  line-height: 1.2;
  font-size: var(--wp--preset--font-size--xs);
}

.elementor-element p, .elementor-element p span, .elementor-element p a, .elementor-element li, .elementor-element blockquote, .elementor-element label, .elementor-element input {
  font-family: var(--wp--preset--font-family--body);
  color: inherit;
}
@media (max-width: 2559.98px) {
  .elementor-element p, .elementor-element p span, .elementor-element p a, .elementor-element li, .elementor-element blockquote, .elementor-element label, .elementor-element input {
    font-size: var(--fz-xs, 1rem);
    line-height: var(--wp--custom--line-height--body, 1.6);
  }
}
@media (min-width: 2560px) {
  .elementor-element p, .elementor-element p span, .elementor-element p a, .elementor-element li, .elementor-element blockquote, .elementor-element label, .elementor-element input {
    font-size: var(--fz-xs, 1.6rem);
    line-height: calc(1.2 * var(--wp--custom--line-height--body, 1.8));
  }
}

.elementor-widget-image, .elementor-widget-site-logo {
  position: relative;
  display: block;
  overflow: hidden;
  line-height: 0;
  border-radius: var(--image-radius, 0px);
}
.elementor-widget-image img,
.elementor-widget-image picture img,
.elementor-widget-image svg, .elementor-widget-site-logo img,
.elementor-widget-site-logo picture img,
.elementor-widget-site-logo svg {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
.elementor-widget-image.img-broken, .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;
}
.elementor-widget-image.img-broken img, .elementor-widget-site-logo.img-broken img {
  contain-intrinsic-size: auto !important;
  min-height: 0 !important;
  height: 0 !important;
  opacity: 0;
}
.elementor-widget-image.img-broken::before, .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;
}

.elementor-widget-html svg {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

.card-theme-default {
  --card-bg: var(--wp--preset--color--white);
  --card-heading: var(--wp--preset--color--text);
  --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--text);
  --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);
  --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);
  --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);
  --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);
  --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);
  --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);
  --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--text);
  --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 {
  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 .card-content p:first-child, .tm-card-item .card-body p:first-child {
  margin-top: 0;
}
.tm-card-item .card-body .card-content p:last-child, .tm-card-item .card-body p:last-child {
  margin-bottom: 0;
}
.tm-card-item .card-body .card-content p:only-child, .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);
}
.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 !important;
  align-items: center !important;
  justify-content: var(--btn-default-align, center);
  text-align: var(--btn-default-text-align, center);
  gap: 10px;
  overflow: visible;
  min-height: var(--header-items-size);
  box-sizing: border-box;
  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)) !important;
  border-radius: var(--btn-default-rd, var(--radius-full)) !important;
  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 !important;
  align-items: center !important;
  justify-content: var(--btn-default-align, center);
  text-align: var(--btn-default-text-align, center);
  gap: 10px;
  overflow: visible;
  min-height: var(--header-items-size);
  box-sizing: border-box;
  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)) !important;
  border-radius: var(--btn-default-rd, var(--radius-full)) !important;
  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);
}

.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-color: 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 !important;
  align-items: center !important;
  justify-content: var(--btn-default-align, center);
  text-align: var(--btn-default-text-align, center);
  gap: 10px;
  overflow: visible;
  min-height: var(--header-items-size);
  box-sizing: border-box;
  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)) !important;
  border-radius: var(--btn-default-rd, var(--radius-full)) !important;
  box-shadow: var(--btn-default-sh, var(--sh-none)) !important;
  height: var(--btn-default-height, auto);
  min-height: var(--header-items-size);
}
.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: 0;
  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(.has-gradient), .social-link:not(.is-secondary):not(.has-gradient), .btn:not(.is-secondary):not(.has-gradient), .wpcf7-response-output:not(.is-secondary):not(.has-gradient), .wpcf7-submit:not(.is-secondary):not(.has-gradient) {
  background-color: var(--b-btn-bg, var(--wp--preset--color--brand));
  color: var(--b-btn-text, var(--wp--preset--color--white));
}
.elementor-button:not(.is-secondary):not(.has-gradient):hover, .social-link:not(.is-secondary):not(.has-gradient):hover, .btn:not(.is-secondary):not(.has-gradient):hover, .wpcf7-response-output:not(.is-secondary):not(.has-gradient):hover, .wpcf7-submit:not(.is-secondary):not(.has-gradient):hover {
  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.has-gradient, .social-link.has-gradient, .btn.has-gradient, .wpcf7-response-output.has-gradient, .wpcf7-submit.has-gradient {
  background-image: var(--b-btn-gradient, linear-gradient(to right, var(--b-btn-gradient-from, var(--wp--preset--color--brand)), var(--b-btn-gradient-to, var(--wp--preset--color--accent-1))));
  background-size: 200% auto;
  background-color: transparent;
  border-color: transparent;
  color: var(--b-btn-gradient-text, var(--wp--preset--color--white));
}
.elementor-button.has-gradient, .elementor-button.has-gradient a, .elementor-button.has-gradient span, .social-link.has-gradient, .social-link.has-gradient a, .social-link.has-gradient span, .btn.has-gradient, .btn.has-gradient a, .btn.has-gradient span, .wpcf7-response-output.has-gradient, .wpcf7-response-output.has-gradient a, .wpcf7-response-output.has-gradient span, .wpcf7-submit.has-gradient, .wpcf7-submit.has-gradient a, .wpcf7-submit.has-gradient span {
  color: var(--b-btn-gradient-text, var(--wp--preset--color--white));
}
.elementor-button.has-gradient:hover, .social-link.has-gradient:hover, .btn.has-gradient:hover, .wpcf7-response-output.has-gradient:hover, .wpcf7-submit.has-gradient:hover {
  background-position: right center;
  background-color: transparent;
  border-color: transparent;
  color: var(--b-btn-gradient-text, var(--wp--preset--color--white));
  filter: brightness(1.05);
  transform: translateY(-4px);
}
.elementor-button.has-gradient, .social-link.has-gradient, .btn.has-gradient, .wpcf7-response-output.has-gradient, .wpcf7-submit.has-gradient {
  box-shadow: var(--btn-default-sh, var(--sh-none));
}
.elementor-button.is-style-outline:not(.is-secondary), .elementor-button.e-btn-border:not(.is-secondary), .social-link.is-style-outline:not(.is-secondary), .social-link.e-btn-border:not(.is-secondary), .btn.is-style-outline:not(.is-secondary), .btn.e-btn-border:not(.is-secondary), .wpcf7-response-output.is-style-outline:not(.is-secondary), .wpcf7-response-output.e-btn-border:not(.is-secondary), .wpcf7-submit.is-style-outline:not(.is-secondary), .wpcf7-submit.e-btn-border:not(.is-secondary) {
  border-width: 2px;
  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, .elementor-button.e-btn-border:not(.is-secondary):hover, .social-link.is-style-outline:not(.is-secondary):hover, .social-link.e-btn-border:not(.is-secondary):hover, .btn.is-style-outline:not(.is-secondary):hover, .btn.e-btn-border:not(.is-secondary):hover, .wpcf7-response-output.is-style-outline:not(.is-secondary):hover, .wpcf7-response-output.e-btn-border:not(.is-secondary):hover, .wpcf7-submit.is-style-outline:not(.is-secondary):hover, .wpcf7-submit.e-btn-border: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, .elementor-button.e-btn-border:not(.is-secondary):hover span, .social-link.is-style-outline:not(.is-secondary):hover span, .social-link.e-btn-border:not(.is-secondary):hover span, .btn.is-style-outline:not(.is-secondary):hover span, .btn.e-btn-border:not(.is-secondary):hover span, .wpcf7-response-output.is-style-outline:not(.is-secondary):hover span, .wpcf7-response-output.e-btn-border:not(.is-secondary):hover span, .wpcf7-submit.is-style-outline:not(.is-secondary):hover span, .wpcf7-submit.e-btn-border:not(.is-secondary):hover span {
  color: inherit;
  filter: none;
}
.elementor-button.is-style-outline:not(.is-secondary) span, .elementor-button.e-btn-border:not(.is-secondary) span, .social-link.is-style-outline:not(.is-secondary) span, .social-link.e-btn-border:not(.is-secondary) span, .btn.is-style-outline:not(.is-secondary) span, .btn.e-btn-border:not(.is-secondary) span, .wpcf7-response-output.is-style-outline:not(.is-secondary) span, .wpcf7-response-output.e-btn-border:not(.is-secondary) span, .wpcf7-submit.is-style-outline:not(.is-secondary) span, .wpcf7-submit.e-btn-border:not(.is-secondary) span {
  color: inherit;
  background: transparent;
}
.elementor-button.is-secondary, .social-link.is-secondary, .btn.is-secondary, .wpcf7-response-output.is-secondary, .wpcf7-submit.is-secondary {
  border-width: 2px;
  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:hover, .social-link.is-secondary:hover, .btn.is-secondary:hover, .wpcf7-response-output.is-secondary:hover, .wpcf7-submit.is-secondary: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, .elementor-button.is-secondary.e-btn-border, .social-link.is-secondary.is-style-outline, .social-link.is-secondary.e-btn-border, .btn.is-secondary.is-style-outline, .btn.is-secondary.e-btn-border, .wpcf7-response-output.is-secondary.is-style-outline, .wpcf7-response-output.is-secondary.e-btn-border, .wpcf7-submit.is-secondary.is-style-outline, .wpcf7-submit.is-secondary.e-btn-border {
  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, .elementor-button.is-secondary.e-btn-border:hover, .social-link.is-secondary.is-style-outline:hover, .social-link.is-secondary.e-btn-border:hover, .btn.is-secondary.is-style-outline:hover, .btn.is-secondary.e-btn-border:hover, .wpcf7-response-output.is-secondary.is-style-outline:hover, .wpcf7-response-output.is-secondary.e-btn-border:hover, .wpcf7-submit.is-secondary.is-style-outline:hover, .wpcf7-submit.is-secondary.e-btn-border: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, .elementor-button.is-secondary.e-btn-border:hover span, .social-link.is-secondary.is-style-outline:hover span, .social-link.is-secondary.e-btn-border:hover span, .btn.is-secondary.is-style-outline:hover span, .btn.is-secondary.e-btn-border:hover span, .wpcf7-response-output.is-secondary.is-style-outline:hover span, .wpcf7-response-output.is-secondary.e-btn-border:hover span, .wpcf7-submit.is-secondary.is-style-outline:hover span, .wpcf7-submit.is-secondary.e-btn-border:hover span {
  color: inherit;
  filter: none;
}
.elementor-button.is-secondary.is-style-outline span, .elementor-button.is-secondary.e-btn-border span, .social-link.is-secondary.is-style-outline span, .social-link.is-secondary.e-btn-border span, .btn.is-secondary.is-style-outline span, .btn.is-secondary.e-btn-border span, .wpcf7-response-output.is-secondary.is-style-outline span, .wpcf7-response-output.is-secondary.e-btn-border span, .wpcf7-submit.is-secondary.is-style-outline span, .wpcf7-submit.is-secondary.e-btn-border span {
  color: inherit;
  background: transparent;
}
.elementor-button.is-secondary.is-style-outline, .elementor-button.is-secondary.e-btn-border, .social-link.is-secondary.is-style-outline, .social-link.is-secondary.e-btn-border, .btn.is-secondary.is-style-outline, .btn.is-secondary.e-btn-border, .wpcf7-response-output.is-secondary.is-style-outline, .wpcf7-response-output.is-secondary.e-btn-border, .wpcf7-submit.is-secondary.is-style-outline, .wpcf7-submit.is-secondary.e-btn-border {
  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, .elementor-button.is-secondary.e-btn-border:hover, .social-link.is-secondary.is-style-outline:hover, .social-link.is-secondary.e-btn-border:hover, .btn.is-secondary.is-style-outline:hover, .btn.is-secondary.e-btn-border:hover, .wpcf7-response-output.is-secondary.is-style-outline:hover, .wpcf7-response-output.is-secondary.e-btn-border:hover, .wpcf7-submit.is-secondary.is-style-outline:hover, .wpcf7-submit.is-secondary.e-btn-border: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, .elementor-button.is-secondary.e-btn-border:hover span, .social-link.is-secondary.is-style-outline:hover span, .social-link.is-secondary.e-btn-border:hover span, .btn.is-secondary.is-style-outline:hover span, .btn.is-secondary.e-btn-border:hover span, .wpcf7-response-output.is-secondary.is-style-outline:hover span, .wpcf7-response-output.is-secondary.e-btn-border:hover span, .wpcf7-submit.is-secondary.is-style-outline:hover span, .wpcf7-submit.is-secondary.e-btn-border:hover span {
  color: inherit;
  filter: none;
}
.elementor-button.is-secondary.is-style-outline span, .elementor-button.is-secondary.e-btn-border span, .social-link.is-secondary.is-style-outline span, .social-link.is-secondary.e-btn-border span, .btn.is-secondary.is-style-outline span, .btn.is-secondary.e-btn-border span, .wpcf7-response-output.is-secondary.is-style-outline span, .wpcf7-response-output.is-secondary.e-btn-border span, .wpcf7-submit.is-secondary.is-style-outline span, .wpcf7-submit.is-secondary.e-btn-border 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;
}

[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 *) {
  color: var(--b-text);
}
[class*=is-style-] li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) {
  color: var(--b-heading);
}
[class*=is-style-] li:not([class*=card] *):not(.tm-accordion-item *):not(.elementor-element-overlay *):not([class*=elementor-editor-] *):not(nav *) span {
  color: var(--b-heading-alt);
}
[class*=is-style-] a:not(.elementor-button, .social-link, [class*=btn], .pastille, .card-link, .tm-card-item *, .tm-accordion-item *, nav *, .has-gradient *) {
  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 *, .has-gradient *):hover {
  color: var(--b-link-hover);
}
[class*=is-style-] nav li::after > a, [class*=is-style-]:focus-within > a, [class*=is-style-]:has(.sub-menu:hover) > a {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
[class*=is-style-] nav a * {
  color: var(--b-link, inherit);
  text-decoration: none;
}
[class*=is-style-] nav a *:hover {
  color: var(--b-link, inherit);
  background-color: var(--b-btn-bg);
}
[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 *):not(.has-gradient *), [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *) {
  border-width: 2px;
  border-style: solid;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient), [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient) {
  background-color: var(--b-btn-bg);
  color: var(--b-btn-text);
  border-color: transparent;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient):hover, [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *):not(.is-secondary):not(.has-gradient):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 *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary), [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary) {
  background-color: transparent;
  color: var(--b-btn-outline);
  border-color: currentColor;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):not(.is-secondary):hover, [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *).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(.has-gradient *):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 *):not(.has-gradient *).is-secondary, [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .elementor-button:not(.my-custom-card *):not(.has-gradient *).is-secondary, [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *).is-secondary.is-style-outline, :is(.elementor-button.e-btn-border, .is-style-outline-parent) [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *).is-secondary {
  background-color: transparent;
  color: var(--b-btn-secondary-outline);
  border-color: currentColor;
}
[class*=is-style-] .elementor-button:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).is-secondary:hover, [class*=is-style-] .btn-mag:not(.my-custom-card *):not(.has-gradient *).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 *):not(.has-gradient *).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 *).has-gradient, .has-gradient [class*=is-style-] .elementor-button:not(.my-custom-card *), [class*=is-style-] .btn-mag:not(.my-custom-card *).has-gradient, .has-gradient [class*=is-style-] .btn-mag:not(.my-custom-card *) {
  border-width: 2px;
  border-style: solid;
}
[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-gradient-2-color,
.e-has-gradient-2-color {
  color: var(--wp--preset--color--gradient-2);
  --e-global-color-text: var(--wp--preset--color--gradient-2);
  --elementor-inline-editing-color: var(--wp--preset--color--gradient-2);
}

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

.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);
}

@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);
  }
}
:root .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-gradient-from: var(--wp--preset--color--brand);
  --b-btn-gradient-to: var(--wp--preset--color--accent-1);
  --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 .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);
  --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-gradient-from: var(--wp--preset--color--white);
  --b-btn-gradient-to: var(--wp--preset--color--white-dark-40);
  --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;
}
:root .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);
  --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-60);
  --b-btn-text-hover: var(--wp--preset--color--dark);
  --b-btn-gradient-from: var(--wp--preset--color--brand);
  --b-btn-gradient-to: var(--wp--preset--color--accent-1);
  --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;
}
:root .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-gradient-from: var(--wp--preset--color--brand);
  --b-btn-gradient-to: var(--wp--preset--color--accent-1);
  --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 .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-gradient-from: var(--wp--preset--color--brand);
  --b-btn-gradient-to: var(--wp--preset--color--accent-1);
  --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--gradient-2-light-10: color-mix(in srgb, var(--wp--preset--color--gradient-2), white 10%);
  --wp--preset--color--gradient-2-dark-10: color-mix(in srgb, var(--wp--preset--color--gradient-2), black 10%);
  --wp--preset--color--gradient-2-light-20: color-mix(in srgb, var(--wp--preset--color--gradient-2), white 20%);
  --wp--preset--color--gradient-2-dark-20: color-mix(in srgb, var(--wp--preset--color--gradient-2), black 20%);
  --wp--preset--color--gradient-2-light-30: color-mix(in srgb, var(--wp--preset--color--gradient-2), white 30%);
  --wp--preset--color--gradient-2-dark-30: color-mix(in srgb, var(--wp--preset--color--gradient-2), black 30%);
  --wp--preset--color--gradient-2-light-40: color-mix(in srgb, var(--wp--preset--color--gradient-2), white 40%);
  --wp--preset--color--gradient-2-dark-40: color-mix(in srgb, var(--wp--preset--color--gradient-2), black 40%);
  --wp--preset--color--gradient-2-light-50: color-mix(in srgb, var(--wp--preset--color--gradient-2), white 50%);
  --wp--preset--color--gradient-2-dark-50: color-mix(in srgb, var(--wp--preset--color--gradient-2), black 50%);
  --wp--preset--color--gradient-2-light-60: color-mix(in srgb, var(--wp--preset--color--gradient-2), white 60%);
  --wp--preset--color--gradient-2-dark-60: color-mix(in srgb, var(--wp--preset--color--gradient-2), black 60%);
  --wp--preset--color--gradient-2-light-70: color-mix(in srgb, var(--wp--preset--color--gradient-2), white 70%);
  --wp--preset--color--gradient-2-dark-70: color-mix(in srgb, var(--wp--preset--color--gradient-2), black 70%);
  --wp--preset--color--gradient-2-light-80: color-mix(in srgb, var(--wp--preset--color--gradient-2), white 80%);
  --wp--preset--color--gradient-2-dark-80: color-mix(in srgb, var(--wp--preset--color--gradient-2), black 80%);
  --wp--preset--color--gradient-2-light-90: color-mix(in srgb, var(--wp--preset--color--gradient-2), white 90%);
  --wp--preset--color--gradient-2-dark-90: color-mix(in srgb, var(--wp--preset--color--gradient-2), 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%);
}

.flex-col-1 {
  flex: 1 !important;
  min-width: 0 !important;
  flex-direction: column !important;
}
.flex-col-1 > * {
  width: auto !important;
}
@media (max-width: 781.98px) {
  .flex-col-1 {
    flex: 1 1 100% !important;
  }
}

.flex-col-1-5 {
  flex: 1.5 !important;
  min-width: 0 !important;
  flex-direction: column !important;
}
.flex-col-1-5 > * {
  width: auto !important;
}
@media (max-width: 781.98px) {
  .flex-col-1-5 {
    flex: 1 1 100% !important;
  }
}

.flex-col-2 {
  flex: 2 !important;
  min-width: 0 !important;
  flex-direction: column !important;
}
.flex-col-2 > * {
  width: auto !important;
}
@media (max-width: 781.98px) {
  .flex-col-2 {
    flex: 1 1 100% !important;
  }
}

.flex-col-2-5 {
  flex: 2.5 !important;
  min-width: 0 !important;
  flex-direction: column !important;
}
.flex-col-2-5 > * {
  width: auto !important;
}
@media (max-width: 781.98px) {
  .flex-col-2-5 {
    flex: 1 1 100% !important;
  }
}

.flex-col-3 {
  flex: 3 !important;
  min-width: 0 !important;
  flex-direction: column !important;
}
.flex-col-3 > * {
  width: auto !important;
}
@media (max-width: 781.98px) {
  .flex-col-3 {
    flex: 1 1 100% !important;
  }
}

.flex-col-auto {
  flex: auto !important;
  min-width: 0 !important;
  flex-direction: column !important;
}
.flex-col-auto > * {
  width: auto !important;
}
@media (max-width: 781.98px) {
  .flex-col-auto {
    flex: 1 1 100% !important;
  }
}

.flex-auto {
  display: flex;
  flex: auto !important;
  min-width: 0 !important;
}
.flex-auto > * {
  display: flex;
  width: auto !important;
  flex: auto !important;
  min-width: 0 !important;
}

.flex-row > .e-con.flex-col-1,
.flex-row > .e-con[class*=flex-col-] {
  width: auto !important;
  max-width: none !important;
  flex: 1 1 0% !important;
  flex-direction: column !important;
}
@media (max-width: 781.98px) {
  .flex-row > .e-con.flex-col-1,
  .flex-row > .e-con[class*=flex-col-] {
    width: 100% !important;
    flex: 1 1 100% !important;
  }
}

.gap-0 {
  gap: var(--wp--preset--spacing--0) !important;
}

.gap-sans {
  gap: var(--wp--preset--spacing--0) !important;
}

.gap-10 {
  gap: var(--wp--preset--spacing--10) !important;
}

.gap-xs {
  gap: var(--wp--preset--spacing--10) !important;
}

.gap-20 {
  gap: var(--wp--preset--spacing--20) !important;
}

.gap-sm {
  gap: var(--wp--preset--spacing--20) !important;
}

.gap-40 {
  gap: var(--wp--preset--spacing--40) !important;
}

.gap-md {
  gap: var(--wp--preset--spacing--40) !important;
}

.gap-60 {
  gap: var(--wp--preset--spacing--60) !important;
}

.gap-lg {
  gap: var(--wp--preset--spacing--60) !important;
}

.gap-80 {
  gap: var(--wp--preset--spacing--80) !important;
}

.gap-xl {
  gap: var(--wp--preset--spacing--80) !important;
}

.gap-100 {
  gap: var(--wp--preset--spacing--100) !important;
}

.gap-xxl {
  gap: var(--wp--preset--spacing--100) !important;
}

.grid-cols-1-1 {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.grid-cols-1-2 {
  display: grid;
  grid-template-columns: 1fr 2fr;
}

.grid-cols-1-3 {
  display: grid;
  grid-template-columns: 1fr 3fr;
}

.grid-cols-2-1 {
  display: grid;
  grid-template-columns: 2fr 1fr;
}

.grid-cols-3-1 {
  display: grid;
  grid-template-columns: 3fr 1fr;
}

.grid-cols-1-1-1 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

.grid-cols-1-2-1 {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
}

.grid-cols-1-1-5-1 {
  display: grid;
  grid-template-columns: 1fr 1.5fr 1fr;
}

.grid-cols-1-2-5-1-5 {
  display: grid;
  grid-template-columns: 1fr 2.5fr 1.5fr;
}

.grid-cols-1-1-2 {
  display: grid;
  grid-template-columns: 1fr 1fr 2fr;
}

.grid-cols-2-1-1 {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
}

.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;
}

.icon-70 {
  width: 70px;
  height: 70px;
  object-fit: cover;
}
.icon-70 svg,
.icon-70 img,
.icon-70 .elementor-icon-wrapper,
.icon-70 .elementor-icon {
  width: 70px !important;
  height: 70px !important;
  object-fit: cover;
}

.icon-90 {
  width: 90px;
  height: 90px;
  object-fit: cover;
}
.icon-90 svg,
.icon-90 img,
.icon-90 .elementor-icon-wrapper,
.icon-90 .elementor-icon {
  width: 90px !important;
  height: 90px !important;
  object-fit: cover;
}

.icon-100 {
  width: 100px;
  height: 100px;
  object-fit: cover;
}
.icon-100 svg,
.icon-100 img,
.icon-100 .elementor-icon-wrapper,
.icon-100 .elementor-icon {
  width: 100px !important;
  height: 100px !important;
  object-fit: cover;
}

.icon-150 {
  width: 150px;
  height: 150px;
  object-fit: cover;
}
.icon-150 svg,
.icon-150 img,
.icon-150 .elementor-icon-wrapper,
.icon-150 .elementor-icon {
  width: 150px !important;
  height: 150px !important;
  object-fit: cover;
}

.center {
  text-align: center;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.is-center {
  --align-items: center!important;
  --justify-content: center!important;
  text-align: center !important;
}
.is-center > * {
  --align-items: center!important;
  --justify-content: center!important;
}

.is-left {
  --align-items: flex-start!important;
  --justify-content: flex-start!important;
  text-align: left !important;
}
.is-left > * {
  --align-items: flex-start!important;
  --justify-content: flex-start!important;
}

.is-right {
  --align-items: flex-end!important;
  --justify-content: flex-end!important;
  text-align: right !important;
}
.is-right > * {
  --align-items: flex-end!important;
  --justify-content: flex-end!important;
}

@media (max-width: 1023px) {
  .is-reverse {
    flex-direction: column-reverse !important;
  }
  .is-reverse > * {
    flex-direction: column-reverse !important;
  }
}

body .is-fit {
  height: fit-content;
  width: fit-content;
  margin: 0 auto;
}

body .is-stretch {
  height: stretch;
}

.margin-auto {
  margin: 0 auto;
}
.margin-auto > * {
  margin: 0 auto;
}

body .is-full {
  width: 100% !important;
  max-width: 100% !important;
}

.reset-padding {
  padding: 0 !important;
}
.reset-padding > * {
  padding: 0 !important;
}

.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;
}

.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 !important;
  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: var(--wp--preset--font-size--xs);
  margin-block-start: 0.5rem;
  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) !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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 > *:not([class*=flex-col]) {
  display: flex !important;
  flex-direction: row !important;
}
@media (max-width: 781.98px) {
  .flex-row > *:not([class*=flex-col]) {
    flex-direction: column !important;
  }
}

.flex-row-reverse > *:not([class*=flex-col]) {
  display: flex !important;
  flex-direction: row-reverse !important;
}
@media (max-width: 781.98px) {
  .flex-row-reverse > *:not([class*=flex-col]) {
    flex-direction: column !important;
  }
}

.flex-col > *:not([class*=flex-col]) {
  display: flex !important;
  flex-direction: column !important;
}
@media (max-width: 781.98px) {
  .flex-col > *:not([class*=flex-col]) {
    flex-direction: column !important;
  }
}

.flex-col-reverse > *:not([class*=flex-col]) {
  display: flex !important;
  flex-direction: column-reverse !important;
}
@media (max-width: 781.98px) {
  .flex-col-reverse > *:not([class*=flex-col]) {
    flex-direction: column !important;
  }
}

@media (max-width: 781.98px) {
  .is-reverse > * {
    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-xl);
  --column-gap: var(--space-xl);
}
@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: 1225.98px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: 1380px) and (max-width: 1545.98px) {
  .e-con.e-con-full > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: 1546px) 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 (max-width: 781.98px) {
  .e-con.e-con-full > .e-con-inner {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-sm);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  .e-con.e-con-full > .e-con-inner {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-md);
  }
}
@media (min-width: 920px) and (max-width: 1225.98px) {
  .e-con.e-con-full > .e-con-inner {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xl);
  }
}
@media (min-width: 1226px) and (max-width: 2559.98px) {
  .e-con.e-con-full > .e-con-inner {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xl);
  }
}
@media (min-width: 2560px) {
  .e-con.e-con-full > .e-con-inner {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xxl);
  }
}
.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);
}
.e-con.e-con-full > .e-con-inner * > .e-con-inner {
  --_padding-block: 0px;
  --padding-block-start: 0px;
  --padding-block-end: 0px;
}
.e-con.e-con-full > .e-con-inner > .e-con.e-grid {
  --_padding-block: 0px;
  --padding-block-start: 0px;
  --padding-block-end: 0px;
}
@media (min-width: 782px) {
  .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: 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: 1226px) {
  .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-xl);
  --column-gap: var(--space-xl);
}
@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: 1225.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: 1380px) and (max-width: 1545.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: 1546px) 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 (max-width: 781.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-sm);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-md);
  }
}
@media (min-width: 920px) and (max-width: 1225.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xl);
  }
}
@media (min-width: 1226px) and (max-width: 2559.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xl);
  }
}
@media (min-width: 2560px) {
  .e-con.e-con-boxed > .e-con-inner {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xxl);
  }
}
.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);
}
.e-con.e-con-boxed > .e-con-inner * > .e-con-inner {
  --_padding-block: 0px;
  --padding-block-start: 0px;
  --padding-block-end: 0px;
}
.e-con.e-con-boxed > .e-con-inner > .e-con.e-grid {
  --_padding-block: 0px;
  --padding-block-start: 0px;
  --padding-block-end: 0px;
}
@media (min-width: 782px) {
  .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: 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: 1226px) {
  .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: 1225.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    max-width: var(--content-narrow);
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    max-width: var(--content-narrow);
  }
}
@media (min-width: 1380px) and (max-width: 1545.98px) {
  .e-con.e-con-boxed > .e-con-inner {
    max-width: var(--content-wide);
  }
}
@media (min-width: 1546px) 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):not(.elementor-widget-image),
.elementor-element .e-con > *:not(.elementor-widget-button):not(.elementor-widget-image) {
  min-width: 0;
  max-width: 100%;
}

.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-xl);
  --column-gap: var(--space-xl);
}
@media (max-width: 599.98px) {
  .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 .e-con {
    --_padding-block: var(--space-md);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-md);
  }
}
@media (min-width: 920px) and (max-width: 1225.98px) {
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: 1380px) and (max-width: 1545.98px) {
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-lg);
  }
}
@media (min-width: 1546px) and (max-width: 1919.98px) {
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-xl);
  }
}
@media (min-width: 1920px) {
  .elementor .e-con.has-parallax .e-con {
    --_padding-block: var(--space-xl);
  }
}
@media (max-width: 781.98px) {
  .elementor .e-con.has-parallax .e-con {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-sm);
  }
}
@media (min-width: 782px) and (max-width: 919.98px) {
  .elementor .e-con.has-parallax .e-con {
    --row-gap: var(--space-sm);
    --column-gap: var(--space-md);
  }
}
@media (min-width: 920px) and (max-width: 1225.98px) {
  .elementor .e-con.has-parallax .e-con {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xl);
  }
}
@media (min-width: 1226px) and (max-width: 2559.98px) {
  .elementor .e-con.has-parallax .e-con {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xl);
  }
}
@media (min-width: 2560px) {
  .elementor .e-con.has-parallax .e-con {
    --row-gap: var(--space-md);
    --column-gap: var(--space-xxl);
  }
}
.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);
}
.elementor .e-con.has-parallax .e-con * > .e-con-inner {
  --_padding-block: 0px;
  --padding-block-start: 0px;
  --padding-block-end: 0px;
}
.elementor .e-con.has-parallax .e-con > .e-con.e-grid {
  --_padding-block: 0px;
  --padding-block-start: 0px;
  --padding-block-end: 0px;
}
@media (min-width: 782px) {
  .elementor .e-con.has-parallax .e-con > .e-con.e-grid {
    --row-gap: var(--space-md);
    --column-gap: var(--space-md);
  }
}
@media (min-width: 920px) {
  .elementor .e-con.has-parallax .e-con > .e-con.e-grid {
    --row-gap: var(--space-md);
    --column-gap: var(--space-md);
  }
}
@media (min-width: 1226px) {
  .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 .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 .e-con p {
  color: inherit;
  background-color: var(--wp--preset--color--transparent);
}

.elementor > * {
  position: relative;
  z-index: 1;
}
.elementor .e-con:not(:has(> .e-con)) > *:has(+ *):first-child {
  margin-block-end: 1em;
}
.elementor .e-con:not(:has(> .e-con)) > *:not(:only-child):last-child {
  margin-block-start: 0;
}
.elementor .elementor-widget-button .elementor-button,
.elementor .elementor-widget-button .elementor-widget-tm-button-secondary,
.elementor .e-con:has(> .elementor-button) .elementor-button,
.elementor .e-con:has(> .elementor-button) .elementor-widget-tm-button-secondary,
.elementor .e-con:has(> .elementor-widget-tm-button-secondary) .elementor-button,
.elementor .e-con:has(> .elementor-widget-tm-button-secondary) .elementor-widget-tm-button-secondary {
  margin: 0;
}

.site-topbar {
  position: relative;
  z-index: 1000; /* > 999 du .bandeau */
}

/* Sur-spécificité égale à la règle d'origine (0,2,1) — on la matche à l'identique
   pour garantir l'écrasement, sans dépendre de l'ordre de chargement du CSS */
header .bandeau.is-sticky-header:not(.scrolled) {
  inset: var(--topbanner-min-height) 0 auto 0 !important;
}

@media (min-width: 2560px) {
  header#site-header .bandeau.is-sticky-header:not(.is-boxed) #barre-menu {
    margin: 0 auto;
    min-width: var(--content-3xl);
    max-width: var(--content-3xl);
  }
}

header {
  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: -webkit-fill-available;
  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: 1225.98px) {
  header .site-banner .banner-content {
    max-width: var(--content-narrow);
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  header .site-banner .banner-content {
    max-width: var(--content-narrow);
  }
}
@media (min-width: 1380px) and (max-width: 1545.98px) {
  header .site-banner .banner-content {
    max-width: var(--content-wide);
  }
}
@media (min-width: 1546px) 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;
}

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

header#site-header .bandeau.is-sticky-header.is-boxed {
  margin-inline: auto;
  width: 92%;
  max-width: 100%;
}
@media (min-width: 920px) and (max-width: 1225.98px) {
  header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: 100%;
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: var(--content-max);
  }
}
@media (min-width: 1380px) and (max-width: 1545.98px) {
  header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1546px) and (max-width: 1919.98px) {
  header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: var(--content-3xl);
  }
}
@media (min-width: 2560px) {
  header#site-header .bandeau.is-sticky-header.is-boxed {
    max-width: 2400px;
  }
}
@media (max-width: 599.98px) {
  header#site-header .bandeau.is-sticky-header.is-boxed {
    width: 100%;
    padding-inline: 0;
  }
}
@media (max-width: 599.98px) {
  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) {
  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) {
  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: 1225.98px) {
  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: 1226px) and (max-width: 1379.98px) {
  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: 1380px) and (max-width: 1919.98px) {
  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) {
  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) {
  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) {
  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;
  }
  header#site-header .bandeau.is-sticky-header.is-boxed #barre-menu {
    border-radius: var(--block-radius, 0px);
  }
  header#site-header .bandeau.is-sticky-header.is-boxed.scrolled {
    width: 100vw;
    max-width: 100vw;
    border-radius: 0;
    margin-inline: 0;
  }
  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: 1225.98px) {
  body header #banner.is-boxed {
    max-width: 100%;
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  body header #banner.is-boxed {
    max-width: var(--content-max);
  }
}
@media (min-width: 1380px) and (max-width: 1545.98px) {
  body header #banner.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1546px) 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: 1225.98px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  body header #banner.is-boxed {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 1380px) 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;
  }
}

main.is-boxed {
  margin-inline: auto;
  width: 92%;
  max-width: 100%;
}
@media (min-width: 920px) and (max-width: 1225.98px) {
  main.is-boxed {
    max-width: 100%;
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  main.is-boxed {
    max-width: var(--content-max);
  }
}
@media (min-width: 1380px) and (max-width: 1545.98px) {
  main.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1546px) and (max-width: 1919.98px) {
  main.is-boxed {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  main.is-boxed {
    max-width: var(--content-3xl);
  }
}
@media (min-width: 2560px) {
  main.is-boxed {
    max-width: 2400px;
  }
}
@media (max-width: 599.98px) {
  main.is-boxed {
    width: 100%;
    padding-inline: 0;
  }
}
@media (max-width: 599.98px) {
  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) {
  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) {
  main.is-boxed {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--40);
  }
}
@media (min-width: 920px) and (max-width: 1225.98px) {
  main.is-boxed {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  main.is-boxed {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 1380px) and (max-width: 1919.98px) {
  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) {
  main.is-boxed {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 2560px) {
  main.is-boxed {
    padding-block: var(--wp--preset--spacing--100);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 782px) {
  main.is-boxed {
    border-radius: var(--block-radius, 0px);
    overflow: hidden;
  }
}

@media (min-width: 2560px) {
  footer.site-footer:not(.is-boxed) .footer-brand,
  footer.site-footer:not(.is-boxed) .footer-bar {
    margin: 0 auto;
    min-width: var(--content-3xl);
    max-width: var(--content-3xl);
  }
}

footer.site-footer:not(.dynamic-footer) {
  width: -webkit-fill-available;
  max-width: -webkit-fill-available;
}

.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;
}

footer.site-footer.is-boxed:not(.dynamic-footer) {
  margin-inline: auto;
  width: 92%;
  max-width: 100%;
}
@media (min-width: 920px) and (max-width: 1225.98px) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: 100%;
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: var(--content-max);
  }
}
@media (min-width: 1380px) and (max-width: 1545.98px) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1546px) and (max-width: 1919.98px) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: var(--content-2xl);
  }
}
@media (min-width: 1920px) and (max-width: 2559.98px) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: var(--content-3xl);
  }
}
@media (min-width: 2560px) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    max-width: 2400px;
  }
}
@media (max-width: 599.98px) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    width: 100%;
    padding-inline: 0;
  }
}
@media (max-width: 599.98px) {
  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) {
  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) {
  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: 1225.98px) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--40);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 1226px) and (max-width: 1379.98px) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    padding-block: var(--wp--preset--spacing--60);
    gap: var(--wp--preset--spacing--60);
  }
}
@media (min-width: 1380px) and (max-width: 1919.98px) {
  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) {
  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) {
  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) {
  footer.site-footer.is-boxed:not(.dynamic-footer) {
    border-radius: var(--block-radius, 0px);
    overflow: hidden;
  }
  footer.site-footer.is-boxed:not(.dynamic-footer) .footer-brand,
  footer.site-footer.is-boxed:not(.dynamic-footer) .footer-bar {
    max-width: none;
    width: 100%;
    padding: 0;
  }
  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-widget-text-editor ul .elementor-icon-list-item .elementor-icon-list-icon, .elementor-widget-text-editor ul .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-widget-text-editor ul .elementor-icon-list-item .elementor-icon-list-icon svg, .elementor-widget-text-editor ul .elementor-icon-list-item .elementor-icon-list-icon i, .elementor-widget-text-editor ul .elementor-widget-text-editor li .elementor-icon-list-icon svg, .elementor-widget-text-editor ul .elementor-widget-text-editor li .elementor-icon-list-icon i {
  width: 100%;
  height: auto;
  fill: currentColor;
}
.elementor-widget-text-editor ul .elementor-icon-list-item .elementor-icon-list-text, .elementor-widget-text-editor ul .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-widget-text-editor ul .elementor-icon-list-item .elementor-icon-list-text, .elementor-widget-text-editor ul .elementor-widget-text-editor li .elementor-icon-list-text {
    font-size: var(--wp--preset--font-size--xs);
  }
}
@media (min-width: 782px) {
  .elementor-widget-text-editor ul .elementor-icon-list-item .elementor-icon-list-text, .elementor-widget-text-editor ul .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;
}
.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:not(.image-switcher *) {
  position: relative;
  border-radius: var(--image-radius);
  overflow: hidden;
  isolation: isolate;
  line-height: 0;
}
.elementor-widget-image:not(.image-switcher *) 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:not(.image-switcher *) img[src$=".svg"], .elementor-widget-image:not(.image-switcher *) img[src*=".svg?"] {
  background-color: transparent;
}

.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-lightbox-image {
  background-color: var(--wp--preset--color--white);
}

.elementor-widget-tm-flexible-card {
  border-radius: var(--card-radius);
  overflow: hidden;
}
.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;
}

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;
}
header #barre-menu .header-elements-wrapper .btn,
header #barre-menu .header-elements-wrapper .is-primary,
header #barre-menu .header-elements-wrapper .is-secondary {
  overflow: hidden;
  border-radius: var(--btn-default-rd);
  font-size: var(--btn-default-fz);
  padding: var(--btn-default-pv, 12px) var(--btn-default-ph, 12px);
  display: flex;
  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;
}

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

#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;
  flex-shrink: 0;
  width: var(--header-items-size);
  height: var(--header-items-size);
  max-width: var(--header-items-size);
  max-height: var(--header-items-size);
  padding: 0;
  border-radius: var(--btn-default-rd);
  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;
}

@media (max-width: 479.98px) {
  .hdr-btn-hide-text-xs header #barre-menu .header-elements-wrapper .btn-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  .hdr-btn-hide-text-xs header #barre-menu .header-elements-wrapper .dashicons, .hdr-btn-hide-text-xs header #barre-menu .header-elements-wrapper .icon {
    margin: 0;
  }
  .hdr-btn-hide-text-xs header #barre-menu .header-elements-wrapper .btn,
  .hdr-btn-hide-text-xs header #barre-menu .header-elements-wrapper .is-primary,
  .hdr-btn-hide-text-xs header #barre-menu .header-elements-wrapper .is-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--header-items-size);
    height: var(--header-items-size);
    max-width: var(--header-items-size);
    max-height: var(--header-items-size);
    padding: 0;
    border-radius: var(--btn-default-rd);
  }
}

@media (max-width: 599.98px) {
  .hdr-btn-hide-text-sm header #barre-menu .header-elements-wrapper .btn-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  .hdr-btn-hide-text-sm header #barre-menu .header-elements-wrapper .dashicons, .hdr-btn-hide-text-sm header #barre-menu .header-elements-wrapper .icon {
    margin: 0;
  }
  .hdr-btn-hide-text-sm header #barre-menu .header-elements-wrapper .btn,
  .hdr-btn-hide-text-sm header #barre-menu .header-elements-wrapper .is-primary,
  .hdr-btn-hide-text-sm header #barre-menu .header-elements-wrapper .is-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--header-items-size);
    height: var(--header-items-size);
    max-width: var(--header-items-size);
    max-height: var(--header-items-size);
    padding: 0;
    border-radius: var(--btn-default-rd);
  }
}

@media (max-width: 781.98px) {
  .hdr-btn-hide-text-md header #barre-menu .header-elements-wrapper .btn-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  .hdr-btn-hide-text-md header #barre-menu .header-elements-wrapper .dashicons, .hdr-btn-hide-text-md header #barre-menu .header-elements-wrapper .icon {
    margin: 0;
  }
  .hdr-btn-hide-text-md header #barre-menu .header-elements-wrapper .btn,
  .hdr-btn-hide-text-md header #barre-menu .header-elements-wrapper .is-primary,
  .hdr-btn-hide-text-md header #barre-menu .header-elements-wrapper .is-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--header-items-size);
    height: var(--header-items-size);
    max-width: var(--header-items-size);
    max-height: var(--header-items-size);
    padding: 0;
    border-radius: var(--btn-default-rd);
  }
}

@media (max-width: 919.98px) {
  .hdr-btn-hide-text-lg header #barre-menu .header-elements-wrapper .btn-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  .hdr-btn-hide-text-lg header #barre-menu .header-elements-wrapper .dashicons, .hdr-btn-hide-text-lg header #barre-menu .header-elements-wrapper .icon {
    margin: 0;
  }
  .hdr-btn-hide-text-lg header #barre-menu .header-elements-wrapper .btn,
  .hdr-btn-hide-text-lg header #barre-menu .header-elements-wrapper .is-primary,
  .hdr-btn-hide-text-lg header #barre-menu .header-elements-wrapper .is-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--header-items-size);
    height: var(--header-items-size);
    max-width: var(--header-items-size);
    max-height: var(--header-items-size);
    padding: 0;
    border-radius: var(--btn-default-rd);
  }
}

@media (max-width: 1225.98px) {
  .hdr-btn-hide-text-xl header #barre-menu .header-elements-wrapper .btn-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  .hdr-btn-hide-text-xl header #barre-menu .header-elements-wrapper .dashicons, .hdr-btn-hide-text-xl header #barre-menu .header-elements-wrapper .icon {
    margin: 0;
  }
  .hdr-btn-hide-text-xl header #barre-menu .header-elements-wrapper .btn,
  .hdr-btn-hide-text-xl header #barre-menu .header-elements-wrapper .is-primary,
  .hdr-btn-hide-text-xl header #barre-menu .header-elements-wrapper .is-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--header-items-size);
    height: var(--header-items-size);
    max-width: var(--header-items-size);
    max-height: var(--header-items-size);
    padding: 0;
    border-radius: var(--btn-default-rd);
  }
}

@media (max-width: 1379.98px) {
  .hdr-btn-hide-text-xxl header #barre-menu .header-elements-wrapper .btn-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  .hdr-btn-hide-text-xxl header #barre-menu .header-elements-wrapper .dashicons, .hdr-btn-hide-text-xxl header #barre-menu .header-elements-wrapper .icon {
    margin: 0;
  }
  .hdr-btn-hide-text-xxl header #barre-menu .header-elements-wrapper .btn,
  .hdr-btn-hide-text-xxl header #barre-menu .header-elements-wrapper .is-primary,
  .hdr-btn-hide-text-xxl header #barre-menu .header-elements-wrapper .is-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--header-items-size);
    height: var(--header-items-size);
    max-width: var(--header-items-size);
    max-height: var(--header-items-size);
    padding: 0;
    border-radius: var(--btn-default-rd);
  }
}

@media (max-width: 1545.98px) {
  .hdr-btn-hide-text-max header #barre-menu .header-elements-wrapper .btn-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  .hdr-btn-hide-text-max header #barre-menu .header-elements-wrapper .dashicons, .hdr-btn-hide-text-max header #barre-menu .header-elements-wrapper .icon {
    margin: 0;
  }
  .hdr-btn-hide-text-max header #barre-menu .header-elements-wrapper .btn,
  .hdr-btn-hide-text-max header #barre-menu .header-elements-wrapper .is-primary,
  .hdr-btn-hide-text-max header #barre-menu .header-elements-wrapper .is-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--header-items-size);
    height: var(--header-items-size);
    max-width: var(--header-items-size);
    max-height: var(--header-items-size);
    padding: 0;
    border-radius: var(--btn-default-rd);
  }
}

@media (max-width: 1919.98px) {
  .hdr-btn-hide-text-2xl header #barre-menu .header-elements-wrapper .btn-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  .hdr-btn-hide-text-2xl header #barre-menu .header-elements-wrapper .dashicons, .hdr-btn-hide-text-2xl header #barre-menu .header-elements-wrapper .icon {
    margin: 0;
  }
  .hdr-btn-hide-text-2xl header #barre-menu .header-elements-wrapper .btn,
  .hdr-btn-hide-text-2xl header #barre-menu .header-elements-wrapper .is-primary,
  .hdr-btn-hide-text-2xl header #barre-menu .header-elements-wrapper .is-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--header-items-size);
    height: var(--header-items-size);
    max-width: var(--header-items-size);
    max-height: var(--header-items-size);
    padding: 0;
    border-radius: var(--btn-default-rd);
  }
}

.hdr-btn-hide-text-scroll header .bandeau.is-sticky-header.scrolled .btn-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
.hdr-btn-hide-text-scroll header .bandeau.is-sticky-header.scrolled .dashicons, .hdr-btn-hide-text-scroll header .bandeau.is-sticky-header.scrolled .icon {
  margin: 0;
}
.hdr-btn-hide-text-scroll header .bandeau.is-sticky-header.scrolled .header-elements-wrapper .btn,
.hdr-btn-hide-text-scroll header .bandeau.is-sticky-header.scrolled .header-elements-wrapper .is-primary,
.hdr-btn-hide-text-scroll header .bandeau.is-sticky-header.scrolled .header-elements-wrapper .is-secondary {
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: var(--header-items-size);
  height: var(--header-items-size);
  max-width: var(--header-items-size);
  max-height: var(--header-items-size);
  padding: 0;
  border-radius: var(--btn-default-rd);
}

.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: center;
  flex-shrink: 0;
  width: var(--header-items-size);
  height: var(--header-items-size);
  max-width: var(--header-items-size);
  max-height: var(--header-items-size);
  padding: 0;
  border-radius: var(--btn-default-rd);
  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));
}

.site-topbar {
  width: 100%;
  /* La couleur de fond vient de la classe is-style-* déjà définie dans theme.json */
}

.site-topbar-inner {
  padding-inline: var(--container-padding-x);
  min-height: var(--topbanner-min-height);
  margin: 0 auto;
  padding: 6px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-xs);
  font-size: 13px;
}

.site-topbar-content {
  display: flex;
  gap: var(--space-xs);
}

.site-topbar-content img {
  height: 20px !important;
  vertical-align: middle;
  margin-left: 6px;
}

.site-topbar-link-image {
  height: 20px !important;
  width: auto;
  display: block;
}

.site-topbar-nav ul {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-topbar-nav .menu-item[class*=lang-] > a > .nav-link-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

#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__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;
}

.site-header.is-style-switcher-light,
.site-header:has(.site-banner.is-style-switcher-light),
.site-header:has(.bandeau.is-style-switcher-light) {
  --b-heading: var(--wp--preset--color--brand);
  --b-heading-alt: var(--wp--preset--color--brand);
  --b-text: var(--wp--preset--color--text);
}

.site-header.is-style-switcher-light #banner-content,
.site-header .site-banner.is-style-switcher-light #banner-content,
.site-header .bandeau.is-style-switcher-light #banner-content {
  --b-heading: var(--wp--preset--color--brand);
  --b-heading-alt: var(--wp--preset--color--brand);
  --b-text: var(--wp--preset--color--text);
}
.site-header.is-style-switcher-light #banner-content h1.banner-title,
.site-header .site-banner.is-style-switcher-light #banner-content h1.banner-title,
.site-header .bandeau.is-style-switcher-light #banner-content h1.banner-title {
  color: var(--b-heading);
}
.site-header.is-style-switcher-light #banner-content h1.banner-title span,
.site-header .site-banner.is-style-switcher-light #banner-content h1.banner-title span,
.site-header .bandeau.is-style-switcher-light #banner-content h1.banner-title span {
  color: var(--b-heading-alt);
}
.site-header.is-style-switcher-light #banner-content p,
.site-header .site-banner.is-style-switcher-light #banner-content p,
.site-header .bandeau.is-style-switcher-light #banner-content p {
  color: var(--b-text);
}
.site-header.is-style-switcher-light #banner-content p span,
.site-header .site-banner.is-style-switcher-light #banner-content p span,
.site-header .bandeau.is-style-switcher-light #banner-content p span {
  color: var(--b-heading-alt);
}

.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;
}

.site-header.is-style-switcher-dark,
.site-header:has(.site-banner.is-style-switcher-dark),
.site-header:has(.bandeau.is-style-switcher-dark) {
  --b-heading: var(--wp--preset--color--white);
  --b-heading-alt: var(--wp--preset--color--white);
  --b-text: var(--wp--preset--color--white);
}

.site-header.is-style-switcher-dark #banner-content,
.site-header .site-banner.is-style-switcher-dark #banner-content,
.site-header .bandeau.is-style-switcher-dark #banner-content {
  --b-heading: var(--wp--preset--color--white);
  --b-heading-alt: var(--wp--preset--color--white);
  --b-text: var(--wp--preset--color--white);
}
.site-header.is-style-switcher-dark #banner-content h1.banner-title,
.site-header .site-banner.is-style-switcher-dark #banner-content h1.banner-title,
.site-header .bandeau.is-style-switcher-dark #banner-content h1.banner-title {
  color: var(--b-heading);
}
.site-header.is-style-switcher-dark #banner-content h1.banner-title span,
.site-header .site-banner.is-style-switcher-dark #banner-content h1.banner-title span,
.site-header .bandeau.is-style-switcher-dark #banner-content h1.banner-title span {
  color: var(--b-heading-alt);
}
.site-header.is-style-switcher-dark #banner-content p,
.site-header .site-banner.is-style-switcher-dark #banner-content p,
.site-header .bandeau.is-style-switcher-dark #banner-content p {
  color: var(--b-text);
}
.site-header.is-style-switcher-dark #banner-content p span,
.site-header .site-banner.is-style-switcher-dark #banner-content p span,
.site-header .bandeau.is-style-switcher-dark #banner-content p span {
  color: var(--b-heading-alt);
}

.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;
}

.site-header.is-style-switcher-brand,
.site-header:has(.site-banner.is-style-switcher-brand),
.site-header:has(.bandeau.is-style-switcher-brand) {
  --b-heading: var(--wp--preset--color--white);
  --b-heading-alt: var(--wp--preset--color--white);
  --b-text: var(--wp--preset--color--white);
}

.site-header.is-style-switcher-brand #banner-content,
.site-header .site-banner.is-style-switcher-brand #banner-content,
.site-header .bandeau.is-style-switcher-brand #banner-content {
  --b-heading: var(--wp--preset--color--white);
  --b-heading-alt: var(--wp--preset--color--white);
  --b-text: var(--wp--preset--color--white);
}
.site-header.is-style-switcher-brand #banner-content h1.banner-title,
.site-header .site-banner.is-style-switcher-brand #banner-content h1.banner-title,
.site-header .bandeau.is-style-switcher-brand #banner-content h1.banner-title {
  color: var(--b-heading);
}
.site-header.is-style-switcher-brand #banner-content h1.banner-title span,
.site-header .site-banner.is-style-switcher-brand #banner-content h1.banner-title span,
.site-header .bandeau.is-style-switcher-brand #banner-content h1.banner-title span {
  color: var(--b-heading-alt);
}
.site-header.is-style-switcher-brand #banner-content p,
.site-header .site-banner.is-style-switcher-brand #banner-content p,
.site-header .bandeau.is-style-switcher-brand #banner-content p {
  color: var(--b-text);
}
.site-header.is-style-switcher-brand #banner-content p span,
.site-header .site-banner.is-style-switcher-brand #banner-content p span,
.site-header .bandeau.is-style-switcher-brand #banner-content p span {
  color: var(--b-heading-alt);
}

.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 > *:not(.elementor-shape) {
  position: relative;
}

.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-con.e-grid:has(.elementor-widget-tm-accordion-card) {
  align-items: start;
}

.bridge,
.bridge.has-parallax {
  position: relative;
  min-height: var(--block-parallax-height);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.has-parallax {
  position: relative;
  min-height: var(--block-parallax-min-height);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.has-parallax > :not(.parallax),
.has-parallax > .e-con,
.has-parallax > .e-con > .e-con-inner {
  position: relative;
  z-index: 1;
}
.has-parallax .parallax {
  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) {
  .has-parallax .parallax {
    left: 0;
    top: 50%;
    transform: translateY(calc(-35% + var(--parallax-offset, 0px)));
  }
}
@media (min-width: 782px) {
  .has-parallax .parallax {
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(calc(-35% + var(--parallax-offset, 0px)));
  }
}
.has-parallax .parallax {
  width: 100%;
  border-radius: initial;
  overflow: visible;
  top: 0;
}
.has-parallax .parallax img[src$=".svg"],
.has-parallax .parallax img,
.has-parallax .parallax svg {
  border-radius: unset;
  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);
}

[class*=is-style-] .elementor-button,
[class*=is-style-] .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;
}
[class*=is-style-] .elementor-button,
[class*=is-style-] .elementor-button span,
[class*=is-style-] .elementor-button a,
[class*=is-style-] .social-link,
[class*=is-style-] .social-link span,
[class*=is-style-] .social-link a {
  color: inherit;
  fill: currentColor;
  background-color: transparent;
  border: none;
  font-family: inherit;
  font-weight: 400;
  text-transform: none;
  line-height: 1.2;
  border-radius: inherit;
  box-shadow: none;
}
[class*=is-style-] .elementor-button, [class*=is-style-] .social-link, [class*=is-style-] .btn, [class*=is-style-] .wpcf7-response-output, [class*=is-style-] .wpcf7-submit {
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
[class*=is-style-] .elementor-button:hover, [class*=is-style-] .social-link:hover, [class*=is-style-] .btn:hover, [class*=is-style-] .wpcf7-response-output:hover, [class*=is-style-] .wpcf7-submit:hover {
  transform: translateY(-4px);
  filter: brightness(1.1);
}
[class*=is-style-] .elementor-button:active, [class*=is-style-] .social-link:active, [class*=is-style-] .btn:active, [class*=is-style-] .wpcf7-response-output:active, [class*=is-style-] .wpcf7-submit:active {
  transform: translateY(-1px);
}
[class*=is-style-] .elementor-button, [class*=is-style-] .social-link, [class*=is-style-] .btn, [class*=is-style-] .wpcf7-response-output, [class*=is-style-] .wpcf7-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: var(--btn-default-align, center);
  text-align: var(--btn-default-text-align, center);
  gap: 10px;
  overflow: visible;
  min-height: var(--header-items-size);
  box-sizing: border-box;
  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)) !important;
  border-radius: var(--btn-default-rd, var(--radius-full)) !important;
  box-shadow: var(--btn-default-sh, var(--sh-none)) !important;
  height: var(--btn-default-height, auto);
  min-height: var(--header-items-size);
}
[class*=is-style-] .elementor-button .btn-icon, [class*=is-style-] .social-link .btn-icon, [class*=is-style-] .btn .btn-icon, [class*=is-style-] .wpcf7-response-output .btn-icon, [class*=is-style-] .wpcf7-submit .btn-icon {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}
[class*=is-style-] .elementor-button .btn-icon svg, [class*=is-style-] .social-link .btn-icon svg, [class*=is-style-] .btn .btn-icon svg, [class*=is-style-] .wpcf7-response-output .btn-icon svg, [class*=is-style-] .wpcf7-submit .btn-icon svg {
  width: 1em;
  height: 1em;
}
[class*=is-style-] .elementor-button, [class*=is-style-] .social-link, [class*=is-style-] .btn, [class*=is-style-] .wpcf7-response-output, [class*=is-style-] .wpcf7-submit {
  border-width: 0;
  border-style: solid;
  border-radius: var(--btn-default-rd, var(--radius-full));
  box-shadow: var(--btn-default-sh, var(--sh-none));
}
[class*=is-style-] .elementor-button:not(.is-secondary):not(.has-gradient), [class*=is-style-] .social-link:not(.is-secondary):not(.has-gradient), [class*=is-style-] .btn:not(.is-secondary):not(.has-gradient), [class*=is-style-] .wpcf7-response-output:not(.is-secondary):not(.has-gradient), [class*=is-style-] .wpcf7-submit:not(.is-secondary):not(.has-gradient) {
  background-color: var(--b-btn-bg, var(--wp--preset--color--brand));
  color: var(--b-btn-text, var(--wp--preset--color--white));
}
[class*=is-style-] .elementor-button:not(.is-secondary):not(.has-gradient):hover, [class*=is-style-] .social-link:not(.is-secondary):not(.has-gradient):hover, [class*=is-style-] .btn:not(.is-secondary):not(.has-gradient):hover, [class*=is-style-] .wpcf7-response-output:not(.is-secondary):not(.has-gradient):hover, [class*=is-style-] .wpcf7-submit:not(.is-secondary):not(.has-gradient):hover {
  background-color: var(--b-btn-bg-hover, var(--wp--preset--color--brand));
  color: var(--b-btn-text-hover, var(--wp--preset--color--white));
}
[class*=is-style-] .elementor-button.has-gradient, [class*=is-style-] .social-link.has-gradient, [class*=is-style-] .btn.has-gradient, [class*=is-style-] .wpcf7-response-output.has-gradient, [class*=is-style-] .wpcf7-submit.has-gradient {
  background-image: var(--b-btn-gradient, linear-gradient(to right, var(--b-btn-gradient-from, var(--wp--preset--color--brand)), var(--b-btn-gradient-to, var(--wp--preset--color--accent-1))));
  background-size: 200% auto;
  background-color: transparent;
  border-color: transparent;
  color: var(--b-btn-gradient-text, var(--wp--preset--color--white));
}
[class*=is-style-] .elementor-button.has-gradient, [class*=is-style-] .elementor-button.has-gradient a, [class*=is-style-] .elementor-button.has-gradient span, [class*=is-style-] .social-link.has-gradient, [class*=is-style-] .social-link.has-gradient a, [class*=is-style-] .social-link.has-gradient span, [class*=is-style-] .btn.has-gradient, [class*=is-style-] .btn.has-gradient a, [class*=is-style-] .btn.has-gradient span, [class*=is-style-] .wpcf7-response-output.has-gradient, [class*=is-style-] .wpcf7-response-output.has-gradient a, [class*=is-style-] .wpcf7-response-output.has-gradient span, [class*=is-style-] .wpcf7-submit.has-gradient, [class*=is-style-] .wpcf7-submit.has-gradient a, [class*=is-style-] .wpcf7-submit.has-gradient span {
  color: var(--b-btn-gradient-text, var(--wp--preset--color--white));
}
[class*=is-style-] .elementor-button.has-gradient:hover, [class*=is-style-] .social-link.has-gradient:hover, [class*=is-style-] .btn.has-gradient:hover, [class*=is-style-] .wpcf7-response-output.has-gradient:hover, [class*=is-style-] .wpcf7-submit.has-gradient:hover {
  background-position: right center;
  background-color: transparent;
  border-color: transparent;
  color: var(--b-btn-gradient-text, var(--wp--preset--color--white));
  filter: brightness(1.05);
  transform: translateY(-4px);
}
[class*=is-style-] .elementor-button.has-gradient, [class*=is-style-] .social-link.has-gradient, [class*=is-style-] .btn.has-gradient, [class*=is-style-] .wpcf7-response-output.has-gradient, [class*=is-style-] .wpcf7-submit.has-gradient {
  box-shadow: var(--btn-default-sh, var(--sh-none));
}
[class*=is-style-] .elementor-button.is-style-outline:not(.is-secondary), [class*=is-style-] .elementor-button.e-btn-border:not(.is-secondary), [class*=is-style-] .social-link.is-style-outline:not(.is-secondary), [class*=is-style-] .social-link.e-btn-border:not(.is-secondary), [class*=is-style-] .btn.is-style-outline:not(.is-secondary), [class*=is-style-] .btn.e-btn-border:not(.is-secondary), [class*=is-style-] .wpcf7-response-output.is-style-outline:not(.is-secondary), [class*=is-style-] .wpcf7-response-output.e-btn-border:not(.is-secondary), [class*=is-style-] .wpcf7-submit.is-style-outline:not(.is-secondary), [class*=is-style-] .wpcf7-submit.e-btn-border:not(.is-secondary) {
  border-width: 2px;
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-outline, var(--wp--preset--color--brand));
}
[class*=is-style-] .elementor-button.is-style-outline:not(.is-secondary):hover, [class*=is-style-] .elementor-button.e-btn-border:not(.is-secondary):hover, [class*=is-style-] .social-link.is-style-outline:not(.is-secondary):hover, [class*=is-style-] .social-link.e-btn-border:not(.is-secondary):hover, [class*=is-style-] .btn.is-style-outline:not(.is-secondary):hover, [class*=is-style-] .btn.e-btn-border:not(.is-secondary):hover, [class*=is-style-] .wpcf7-response-output.is-style-outline:not(.is-secondary):hover, [class*=is-style-] .wpcf7-response-output.e-btn-border:not(.is-secondary):hover, [class*=is-style-] .wpcf7-submit.is-style-outline:not(.is-secondary):hover, [class*=is-style-] .wpcf7-submit.e-btn-border: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));
}
[class*=is-style-] .elementor-button.is-style-outline:not(.is-secondary):hover span, [class*=is-style-] .elementor-button.e-btn-border:not(.is-secondary):hover span, [class*=is-style-] .social-link.is-style-outline:not(.is-secondary):hover span, [class*=is-style-] .social-link.e-btn-border:not(.is-secondary):hover span, [class*=is-style-] .btn.is-style-outline:not(.is-secondary):hover span, [class*=is-style-] .btn.e-btn-border:not(.is-secondary):hover span, [class*=is-style-] .wpcf7-response-output.is-style-outline:not(.is-secondary):hover span, [class*=is-style-] .wpcf7-response-output.e-btn-border:not(.is-secondary):hover span, [class*=is-style-] .wpcf7-submit.is-style-outline:not(.is-secondary):hover span, [class*=is-style-] .wpcf7-submit.e-btn-border:not(.is-secondary):hover span {
  color: inherit;
  filter: none;
}
[class*=is-style-] .elementor-button.is-style-outline:not(.is-secondary) span, [class*=is-style-] .elementor-button.e-btn-border:not(.is-secondary) span, [class*=is-style-] .social-link.is-style-outline:not(.is-secondary) span, [class*=is-style-] .social-link.e-btn-border:not(.is-secondary) span, [class*=is-style-] .btn.is-style-outline:not(.is-secondary) span, [class*=is-style-] .btn.e-btn-border:not(.is-secondary) span, [class*=is-style-] .wpcf7-response-output.is-style-outline:not(.is-secondary) span, [class*=is-style-] .wpcf7-response-output.e-btn-border:not(.is-secondary) span, [class*=is-style-] .wpcf7-submit.is-style-outline:not(.is-secondary) span, [class*=is-style-] .wpcf7-submit.e-btn-border:not(.is-secondary) span {
  color: inherit;
  background: transparent;
}
[class*=is-style-] .elementor-button.is-secondary, [class*=is-style-] .social-link.is-secondary, [class*=is-style-] .btn.is-secondary, [class*=is-style-] .wpcf7-response-output.is-secondary, [class*=is-style-] .wpcf7-submit.is-secondary {
  border-width: 2px;
  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));
}
[class*=is-style-] .elementor-button.is-secondary:hover, [class*=is-style-] .social-link.is-secondary:hover, [class*=is-style-] .btn.is-secondary:hover, [class*=is-style-] .wpcf7-response-output.is-secondary:hover, [class*=is-style-] .wpcf7-submit.is-secondary: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));
}
[class*=is-style-] .elementor-button.is-secondary.is-style-outline, [class*=is-style-] .elementor-button.is-secondary.e-btn-border, [class*=is-style-] .social-link.is-secondary.is-style-outline, [class*=is-style-] .social-link.is-secondary.e-btn-border, [class*=is-style-] .btn.is-secondary.is-style-outline, [class*=is-style-] .btn.is-secondary.e-btn-border, [class*=is-style-] .wpcf7-response-output.is-secondary.is-style-outline, [class*=is-style-] .wpcf7-response-output.is-secondary.e-btn-border, [class*=is-style-] .wpcf7-submit.is-secondary.is-style-outline, [class*=is-style-] .wpcf7-submit.is-secondary.e-btn-border {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-secondary-outline, var(--wp--preset--color--brand));
}
[class*=is-style-] .elementor-button.is-secondary.is-style-outline:hover, [class*=is-style-] .elementor-button.is-secondary.e-btn-border:hover, [class*=is-style-] .social-link.is-secondary.is-style-outline:hover, [class*=is-style-] .social-link.is-secondary.e-btn-border:hover, [class*=is-style-] .btn.is-secondary.is-style-outline:hover, [class*=is-style-] .btn.is-secondary.e-btn-border:hover, [class*=is-style-] .wpcf7-response-output.is-secondary.is-style-outline:hover, [class*=is-style-] .wpcf7-response-output.is-secondary.e-btn-border:hover, [class*=is-style-] .wpcf7-submit.is-secondary.is-style-outline:hover, [class*=is-style-] .wpcf7-submit.is-secondary.e-btn-border: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));
}
[class*=is-style-] .elementor-button.is-secondary.is-style-outline:hover span, [class*=is-style-] .elementor-button.is-secondary.e-btn-border:hover span, [class*=is-style-] .social-link.is-secondary.is-style-outline:hover span, [class*=is-style-] .social-link.is-secondary.e-btn-border:hover span, [class*=is-style-] .btn.is-secondary.is-style-outline:hover span, [class*=is-style-] .btn.is-secondary.e-btn-border:hover span, [class*=is-style-] .wpcf7-response-output.is-secondary.is-style-outline:hover span, [class*=is-style-] .wpcf7-response-output.is-secondary.e-btn-border:hover span, [class*=is-style-] .wpcf7-submit.is-secondary.is-style-outline:hover span, [class*=is-style-] .wpcf7-submit.is-secondary.e-btn-border:hover span {
  color: inherit;
  filter: none;
}
[class*=is-style-] .elementor-button.is-secondary.is-style-outline span, [class*=is-style-] .elementor-button.is-secondary.e-btn-border span, [class*=is-style-] .social-link.is-secondary.is-style-outline span, [class*=is-style-] .social-link.is-secondary.e-btn-border span, [class*=is-style-] .btn.is-secondary.is-style-outline span, [class*=is-style-] .btn.is-secondary.e-btn-border span, [class*=is-style-] .wpcf7-response-output.is-secondary.is-style-outline span, [class*=is-style-] .wpcf7-response-output.is-secondary.e-btn-border span, [class*=is-style-] .wpcf7-submit.is-secondary.is-style-outline span, [class*=is-style-] .wpcf7-submit.is-secondary.e-btn-border span {
  color: inherit;
  background: transparent;
}
[class*=is-style-] .elementor-button.is-secondary.is-style-outline, [class*=is-style-] .elementor-button.is-secondary.e-btn-border, [class*=is-style-] .social-link.is-secondary.is-style-outline, [class*=is-style-] .social-link.is-secondary.e-btn-border, [class*=is-style-] .btn.is-secondary.is-style-outline, [class*=is-style-] .btn.is-secondary.e-btn-border, [class*=is-style-] .wpcf7-response-output.is-secondary.is-style-outline, [class*=is-style-] .wpcf7-response-output.is-secondary.e-btn-border, [class*=is-style-] .wpcf7-submit.is-secondary.is-style-outline, [class*=is-style-] .wpcf7-submit.is-secondary.e-btn-border {
  background-color: transparent;
  border-color: currentColor;
  color: var(--b-btn-secondary-outline, var(--wp--preset--color--brand));
}
[class*=is-style-] .elementor-button.is-secondary.is-style-outline:hover, [class*=is-style-] .elementor-button.is-secondary.e-btn-border:hover, [class*=is-style-] .social-link.is-secondary.is-style-outline:hover, [class*=is-style-] .social-link.is-secondary.e-btn-border:hover, [class*=is-style-] .btn.is-secondary.is-style-outline:hover, [class*=is-style-] .btn.is-secondary.e-btn-border:hover, [class*=is-style-] .wpcf7-response-output.is-secondary.is-style-outline:hover, [class*=is-style-] .wpcf7-response-output.is-secondary.e-btn-border:hover, [class*=is-style-] .wpcf7-submit.is-secondary.is-style-outline:hover, [class*=is-style-] .wpcf7-submit.is-secondary.e-btn-border: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));
}
[class*=is-style-] .elementor-button.is-secondary.is-style-outline:hover span, [class*=is-style-] .elementor-button.is-secondary.e-btn-border:hover span, [class*=is-style-] .social-link.is-secondary.is-style-outline:hover span, [class*=is-style-] .social-link.is-secondary.e-btn-border:hover span, [class*=is-style-] .btn.is-secondary.is-style-outline:hover span, [class*=is-style-] .btn.is-secondary.e-btn-border:hover span, [class*=is-style-] .wpcf7-response-output.is-secondary.is-style-outline:hover span, [class*=is-style-] .wpcf7-response-output.is-secondary.e-btn-border:hover span, [class*=is-style-] .wpcf7-submit.is-secondary.is-style-outline:hover span, [class*=is-style-] .wpcf7-submit.is-secondary.e-btn-border:hover span {
  color: inherit;
  filter: none;
}
[class*=is-style-] .elementor-button.is-secondary.is-style-outline span, [class*=is-style-] .elementor-button.is-secondary.e-btn-border span, [class*=is-style-] .social-link.is-secondary.is-style-outline span, [class*=is-style-] .social-link.is-secondary.e-btn-border span, [class*=is-style-] .btn.is-secondary.is-style-outline span, [class*=is-style-] .btn.is-secondary.e-btn-border span, [class*=is-style-] .wpcf7-response-output.is-secondary.is-style-outline span, [class*=is-style-] .wpcf7-response-output.is-secondary.e-btn-border span, [class*=is-style-] .wpcf7-submit.is-secondary.is-style-outline span, [class*=is-style-] .wpcf7-submit.is-secondary.e-btn-border span {
  color: inherit;
  background: transparent;
}
[class*=is-style-] .social-link {
  padding-inline: var(--btn-default-pv, var(--space-xs));
}
[class*=is-style-] .social-link svg {
  width: 1em;
  height: 1em;
  display: block;
  flex-shrink: 0;
  fill: currentColor;
  pointer-events: none;
}

body .has-gradient .elementor-button,
body .has-gradient .social-link,
body .has-gradient .btn,
body .has-gradient .wpcf7-submit {
  background-image: var(--b-btn-gradient, linear-gradient(to right, var(--b-btn-gradient-from, var(--wp--preset--color--brand)), var(--b-btn-gradient-to, var(--wp--preset--color--accent-1))));
  background-size: 200% auto;
  background-color: transparent;
  border-color: transparent;
  color: var(--b-btn-gradient-text, var(--wp--preset--color--white));
}
body .has-gradient .elementor-button, body .has-gradient .elementor-button a, body .has-gradient .elementor-button span,
body .has-gradient .social-link,
body .has-gradient .social-link a,
body .has-gradient .social-link span,
body .has-gradient .btn,
body .has-gradient .btn a,
body .has-gradient .btn span,
body .has-gradient .wpcf7-submit,
body .has-gradient .wpcf7-submit a,
body .has-gradient .wpcf7-submit span {
  color: var(--b-btn-gradient-text, var(--wp--preset--color--white));
}
body .has-gradient .elementor-button:hover,
body .has-gradient .social-link:hover,
body .has-gradient .btn:hover,
body .has-gradient .wpcf7-submit:hover {
  background-position: right center;
  background-color: transparent;
  border-color: transparent;
  color: var(--b-btn-gradient-text, var(--wp--preset--color--white));
  filter: brightness(1.05);
  transform: translateY(-4px);
}

html {
  overflow-x: hidden;
}

body {
  line-height: var(--wp--custom--line-height--body, 1.8);
  overflow-x: hidden;
}
body em, body .italic-text {
  font-style: italic;
  font-weight: 500;
}
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 video,
body canvas {
  overflow: clip !important;
  overflow-clip-margin: content-box;
  max-width: 100%;
  height: auto;
}
body 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;
}
body main .container {
  max-width: var(--content-wide);
  margin-inline: auto;
}
body main a {
  transition: color 0.2s ease;
}
body main a:hover, body main a:focus {
  text-decoration: none;
}
body main img, body main figure {
  height: auto;
  display: block;
  margin: 0 auto;
}
