html.aj-preloader-due,
html.aj-preloader-due body {
    overflow: hidden;
}

.aj-preloader {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #cc4121;
    opacity: 0;
    visibility: hidden;
}

html.aj-preloader-due .aj-preloader {
    display: flex;
    opacity: 1;
    visibility: visible;
}

.aj-preloader__inner {
    display: flex;
    width: min(68vw, 290px);
    flex-direction: column;
    align-items: center;
    gap: 24px;
}

.aj-preloader__logo,
.aj-preloader__logo svg,
.aj-preloader__logo img {
    display: block;
    width: 100%;
    height: auto;
}

.aj-preloader__logo svg {
    overflow: visible;
}

.aj-preloader__logo svg use,
.aj-preloader__logo svg path,
.aj-preloader__logo svg rect,
.aj-preloader__logo svg circle,
.aj-preloader__logo svg ellipse,
.aj-preloader__logo svg polygon,
.aj-preloader__logo svg polyline,
.aj-preloader__logo svg line {
    fill: #fff;
    stroke: #fff;
    vector-effect: non-scaling-stroke;
}

.aj-preloader__logo svg use,
.aj-preloader__logo svg g path {
    fill-opacity: 0;
    stroke-opacity: 0;
}

.aj-preloader__line {
    display: block;
    width: 72px;
    height: 2px;
    border-radius: 999px;
    background: #4c5c2b;
    transform-origin: center;
}

[data-aj-reveal] {
    will-change: transform, opacity, filter;
}

[data-aj-reveal-image] {
    will-change: transform, opacity;
}

.elementor-location-header .aj-pro-header,
.elementor-location-header .aj-pro-header img,
.elementor-location-header .aj-pro-header .aj-header-tagline,
.elementor-location-header .aj-pro-header .elementor-item,
.elementor-location-header .aj-pro-header .elementor-button,
.elementor-location-header .aj-pro-header .elementor-menu-toggle,
.elementor-location-header .aj-pro-header .elementor-menu-toggle svg {
    transition:
        background-color 320ms ease,
        border-color 320ms ease,
        color 320ms ease,
        fill 320ms ease,
        filter 320ms ease,
        box-shadow 320ms ease;
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled:not(.elementor-motion-effects-element-type-background) {
    --aj-header-scroll-accent: var(--e-global-color-aj-light);
    background-color: var(--e-global-color-aj-red);
    border-color: color-mix(in srgb, var(--e-global-color-aj-white) 20%, transparent);
    box-shadow: 0 12px 30px -22px color-mix(in srgb, var(--e-global-color-aj-charcoal) 70%, transparent);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-widget-image img {
    filter: brightness(0) invert(1);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .aj-header-tagline {
    color: var(--e-global-color-aj-white);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--main .elementor-item {
    color: var(--e-global-color-aj-white);
    fill: var(--e-global-color-aj-white);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--main .elementor-item:hover,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--main .elementor-item:focus,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--main .elementor-item.highlighted,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--main li.current-menu-item > .elementor-item,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--main li.current_page_item > .elementor-item,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--main li.current-menu-ancestor > .elementor-item {
    color: var(--aj-header-scroll-accent);
    fill: var(--aj-header-scroll-accent);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled
.elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item::before,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled
.elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item::after {
    background-color: var(--aj-header-scroll-accent);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-widget-button .elementor-button {
    color: var(--e-global-color-aj-white);
    fill: var(--e-global-color-aj-white);
    background-color: var(--e-global-color-aj-green);
    border-color: var(--e-global-color-aj-light);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-widget-button .elementor-button:hover,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-widget-button .elementor-button:focus {
    color: var(--e-global-color-aj-red);
    fill: var(--e-global-color-aj-red);
    background-color: var(--e-global-color-aj-light);
    border-color: var(--e-global-color-aj-light);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-menu-toggle,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-menu-toggle svg {
    color: var(--e-global-color-aj-white);
    fill: var(--e-global-color-aj-white);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-menu-toggle {
    background-color: color-mix(in srgb, var(--e-global-color-aj-white) 12%, transparent);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-menu-toggle:hover,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-menu-toggle:focus,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-menu-toggle:hover svg,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-menu-toggle:focus svg {
    color: var(--aj-header-scroll-accent);
    fill: var(--aj-header-scroll-accent);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--dropdown {
    background-color: var(--e-global-color-aj-red);
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--dropdown .elementor-item {
    color: var(--e-global-color-aj-white);
    background-color: transparent;
}

.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--dropdown .elementor-item:focus,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--dropdown li.current-menu-item > .elementor-item,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--dropdown li.current_page_item > .elementor-item,
.elementor-kit-1152 .elementor-location-header
.aj-pro-header.aj-header--scrolled .elementor-nav-menu--dropdown li.current-menu-ancestor > .elementor-item {
    color: var(--aj-header-scroll-accent);
    background-color: color-mix(in srgb, var(--e-global-color-aj-white) 8%, transparent);
}

/* Complianz — aligner l'interface de consentement sur la charte 2026. */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept {
    color: var(--e-global-color-aj-white);
    background-color: var(--e-global-color-aj-red);
    border-color: var(--e-global-color-aj-red);
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept:focus {
    color: var(--e-global-color-aj-white);
    background-color: var(--e-global-color-aj-green);
    border-color: var(--e-global-color-aj-green);
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-link,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-always-active,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-banner-checkbox,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-label {
    color: var(--e-global-color-aj-green);
    border-color: var(--e-global-color-aj-green);
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-link:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-link:focus {
    color: var(--e-global-color-aj-red);
}

@media (max-width: 767px) {
    .aj-preloader__inner {
        width: min(64vw, 230px);
        gap: 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html.aj-preloader-due,
    html.aj-preloader-due body {
        overflow: auto;
    }

    html.aj-preloader-due .aj-preloader {
        display: none;
    }

    [data-aj-reveal],
    [data-aj-reveal-image] {
        opacity: 1;
        visibility: visible;
        transform: none;
        filter: none;
    }

    .elementor-location-header .aj-pro-header,
    .elementor-location-header .aj-pro-header img,
    .elementor-location-header .aj-pro-header .elementor-item,
    .elementor-location-header .aj-pro-header .elementor-button,
    .elementor-location-header .aj-pro-header .elementor-menu-toggle,
    .elementor-location-header .aj-pro-header .elementor-menu-toggle svg {
        transition: none;
    }
}
