.contrast {
    color: var(--white-color)
}

.contrast a:not(.uk-button),
.contrast a:not(.uk-button):hover,
.contrast h1,
.contrast h2,
.contrast h3 {
    color: var(--white-color)
}

.contrast .heading h1,
.contrast .heading h2,
.contrast .heading h3 {
    color: var(--primary-color)
}

.contrast .heading h1 strong,
.contrast .heading h2 strong,
.contrast .heading h3 strong {
    color: var(--white-color)
}

.contrast .bloc-counter .bloc-counter-container .bloc-counter-icon {
    color: var(--white-color)
}

.contrast .bloc-counter .bloc-counter-container .counter {
    font-size: 18px;
    font-size: 1.8rem;
    color: var(--primary-color)
}

.contrast .bloc-counter .bloc-counter-container .bloc-counter-prefix,
.contrast .bloc-counter .bloc-counter-container .bloc-counter-sufix {
    font-weight: 600;
    color: var(--white-color)
}

.primary-background {
    background-color: var(--primary-color)
}

.black-background {
    color: var(--white-color);
    background-color: var(--black-color)
}

.black-background a:not(.uk-button),
.black-background a:not(.uk-button):hover,
.black-background h1,
.black-background h2,
.black-background h3 {
    color: var(--white-color)
}

.black-background .heading h1,
.black-background .heading h2,
.black-background .heading h3 {
    color: var(--primary-color)
}

.black-background .heading h1 strong,
.black-background .heading h2 strong,
.black-background .heading h3 strong {
    color: var(--white-color)
}

.black-background .bloc-counter .bloc-counter-container .bloc-counter-icon {
    color: var(--white-color)
}

.black-background .bloc-counter .bloc-counter-container .counter {
    font-size: 18px;
    font-size: 1.8rem;
    color: var(--primary-color)
}

.black-background .bloc-counter .bloc-counter-container .bloc-counter-prefix,
.black-background .bloc-counter .bloc-counter-container .bloc-counter-sufix {
    font-weight: 600;
    color: var(--white-color)
}

.tertiary-background {
    background-color: var(--tertiary-color)
}

.tertiary-background .heading h1,
.tertiary-background .heading h2,
.tertiary-background .heading h3 {
    color: var(--white-color)
}

.tertiary-background .heading h1 strong,
.tertiary-background .heading h2 strong,
.tertiary-background .heading h3 strong {
    color: var(--white-color)
}

.lightgray-background {
    background-color: var(--lightgray-color)
}

.fullscreen {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.no-padding {
    padding: 0
}

.padding-15 {
    padding: 15px 0
}

.padding-50 {
    padding: 50px 0
}

.padding-100 {
    padding: 100px 0
}

.padding-150 {
    padding: 100px 0
}

@media only screen and (min-width:1200px) {
    .padding-150 {
        padding: 150px 0
    }
}

#cookies {
    -webkit-transition: 0.2s 0.2s;
    transition: 0.2s 0.2s;
    z-index: 9000;
    position: fixed;
    bottom: 25px;
    left: 25px;
    right: 25px;
    padding: 25px;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    background: #fff;
    color: #333
}

#cookies h4 {
    font-size: 11px;
    font-size: 1.1rem;
    font-family: Arial, sans-serif;
    font-weight: bold;
    color: #333
}

#cookies p {
    font-size: 9px;
    font-size: 0.9rem;
    line-height: 25px
}

#cookies .cgu {
    font-size: 7px;
    font-size: 0.7rem
}

#cookies .cgu a {
    color: #aaa
}

#cookies.hide {
    right: -400px
}

@media only screen and (min-width:1200px) {
    #cookies {
        left: auto;
        right: 25px;
        width: 300px
    }
}

.grecaptcha-badge {
    display: none
}

form input[type=email],
form input[type=tel],
form input[type=text],
form textarea {
    border-color: var(--midlightgray-color)
}

form input[type=submit] {
    background-color: var(--secondary-color)
}

#main-menu-container .uk-navbar-container {
    padding: 0 25px;
    background-color: var(--white-color);
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1)
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav {
    gap: 10px
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0 15px;
    min-height: 40px
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li>span.material-symbols-outlined {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    color: var(--primary-color)
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li>a {
    padding: 0 15px;
    min-height: 40px;
    text-transform: initial;
    font-weight: 600
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li:not(.toggle).uk-active,
#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li:not(.toggle):hover {
    background-color: var(--primary-color);
    text-shadow: 2px 2px 0 var(--dark-primary)
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li:not(.toggle).uk-active>span.material-symbols-outlined,
#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li:not(.toggle):hover>span.material-symbols-outlined {
    color: var(--black-color)
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li:not(.toggle).uk-active>a,
#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li:not(.toggle):hover>a {
    color: var(--black-color)
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li.button a {
    color: var(--black-color)
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li.uk-parent {
    position: relative
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li.uk-parent>a {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-right: 35px
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li.uk-parent>a:after {
    content: "\e5cf";
    position: absolute;
    right: 10px;
    font-family: "Material Symbols Outlined"
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li.uk-parent>div.uk-navbar-dropdown {
    top: 100px !important;
    left: unset !important;
    right: 0;
    padding: 0;
    margin: 0;
    min-width: 300px;
    -webkit-box-shadow: unset;
    box-shadow: unset;
    -webkit-box-shadow: 0 15px 15px rgba(0, 0, 0, 0.1);
    box-shadow: 0 15px 15px rgba(0, 0, 0, 0.1)
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li.uk-parent>div.uk-navbar-dropdown>ul.uk-nav>li>a {
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left;
    padding: 15px 10px
}

#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li.uk-parent>div.uk-navbar-dropdown>ul.uk-nav>li.uk-active>a,
#main-menu-container .uk-navbar-container .uk-navbar-right>ul.uk-navbar-nav>li.uk-parent>div.uk-navbar-dropdown>ul.uk-nav>li:hover>a {
    background-color: var(--primary-color);
    color: var(--black-color)
}

#offcanvas-menu .uk-offcanvas-bar {
    padding: 0;
    margin: 0
}

#offcanvas-menu .uk-offcanvas-bar .uk-offcanvas-close {
    color: var(--black-color)
}

#offcanvas-menu .uk-offcanvas-bar .uk-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 25px;
    min-height: 100px
}

#offcanvas-menu .uk-offcanvas-bar .uk-logo a:hover {
    text-decoration: none
}

#offcanvas-menu .uk-offcanvas-bar ul li a {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    padding: 15px;
    font-weight: 600
}

#offcanvas-menu .uk-offcanvas-bar ul li.uk-parent>a {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

#offcanvas-menu .uk-offcanvas-bar ul li.uk-parent>a:after {
    content: "\e5cf";
    position: absolute;
    right: 15px;
    font-family: "Material Symbols Outlined"
}

#offcanvas-menu .uk-offcanvas-bar ul li.uk-parent ul {
    padding: 0;
    margin: 0;
    background-color: var(--primary-color) !important
}

#offcanvas-menu .uk-offcanvas-bar ul li.uk-parent ul li+li {
    border-top: 1px solid var(--dark-primary) !important
}

#offcanvas-menu .uk-offcanvas-bar ul li.uk-parent ul li.uk-ative,
#offcanvas-menu .uk-offcanvas-bar ul li.uk-parent ul li:hover {
    background-color: var(--dark-primary) !important
}

#offcanvas-menu .uk-offcanvas-bar ul li.uk-parent.uk-open>a:after {
    content: "\e5ce"
}

#offcanvas-menu .uk-offcanvas-bar>ul>li>a:hover {
    color: var(--primary-color)
}

#offcanvas-menu .uk-offcanvas-bar>ul>li.uk-active>a,
#offcanvas-menu .uk-offcanvas-bar>ul>li:hover>a {
    color: var(--primary-color)
}

#offcanvas-menu .uk-offcanvas-bar ul.social-links li a {
    color: var(--primary-color)
}

.uk-list-inline>li {
    list-style: none;
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
    margin: 0
}

.uk-list-inline>li.list-separator {
    position: relative
}

.uk-list-inline>li.list-separator:before {
    content: "|";
    color: #fff
}

.buttons {
    margin-top: 50px
}

.uk-button {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    padding-top: 15px;
    padding-bottom: 15px;
    border: none;
    line-height: 30px;
    font-weight: 600
}

.uk-button.uk-button-primary {
    z-index: 0;
    position: relative;
    background-color: transparent;
    text-shadow: 2px 2px 0 var(--dark-primary);
    color: var(--black-color)
}

.uk-button.uk-button-primary:after {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    content: "";
    z-index: -1;
    position: absolute;
    inset: 0;
    background-color: var(--primary-color);
    -webkit-box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
    border: 2px solid var(--black-color);
    -webkit-transform: rotate(0) translate3d(0, 0, 0);
    transform: rotate(0) translate3d(0, 0, 0)
}

.uk-button.uk-button-primary:hover {
    text-shadow: 0 0 0 var(--dark-primary)
}

.uk-button.uk-button-primary:hover:after {
    -webkit-transform: rotate(0);
    transform: rotate(0)
}

@media (min-width:1200px) {
    .uk-button.uk-button-primary:after {
        -webkit-transform: rotate(-2deg);
        transform: rotate(-2deg)
    }
}

.uk-button.uk-button-secondary {
    background-color: var(--secondary-color);
    color: var(--white-color)
}

.uk-button.uk-button-tertiary {
    background-color: var(--tertiary-color);
    color: var(--white-color)
}

.uk-button.uk-button-black {
    background-color: var(--black-color);
    color: var(--white-color)
}

.uk-button.uk-button-light-gray {
    background-color: var(--lightgray-color);
    color: var(--black-color)
}

.uk-button.uk-button-light-gray:hover {
    background-color: var(--midlightgray-color)
}

.uk-button.uk-button-white {
    background-color: var(--white-color);
    color: var(--black-color)
}

.uk-button.button-icon,
.uk-button.uk-button-icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 10px
}

.uk-button.button-icon span.material-symbols-outlined,
.uk-button.uk-button-icon span.material-symbols-outlined {
    display: none
}

@media (min-width:1200px) {

    .uk-button.button-icon,
    .uk-button.uk-button-icon {
        padding-top: 15px;
        padding-bottom: 15px;
        line-height: 25px
    }

    .uk-button.button-icon span.material-symbols-outlined,
    .uk-button.uk-button-icon span.material-symbols-outlined {
        display: block
    }
}

.uk-button+.uk-button {
    margin: 20px 0 0 0
}

@media (min-width:1200px) {
    .uk-button {
        display: inline-block
    }

    .uk-button+.uk-button {
        margin: 0 0 0 20px
    }
}

#mega-menu-container {
    z-index: 100;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: var(--dark-tertiary)
}

#mega-menu-container:after {
    opacity: 0.1;
    mix-blend-mode: luminosity;
    content: "";
    z-index: -1;
    position: absolute;
    inset: 0;
    background-image: url(images/abstract-background.webp);
    background-size: cover;
    background-position: center center
}

#mega-menu-container ul#mega-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    gap: 20px;
    padding: 0;
    margin: 0;
    list-style: none
}

#mega-menu-container ul#mega-menu li a {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    text-decoration: none
}

#mega-menu-container ul#mega-menu>li>a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 15px;
    height: 80px;
    font-weight: 600;
    color: var(--white-color)
}

#mega-menu-container ul#mega-menu>li>a:hover {
    color: var(--primary-color)
}

#mega-menu-container ul#mega-menu>li.uk-active>a,
#mega-menu-container ul#mega-menu>li:hover>a {
    color: var(--primary-color)
}

#mega-menu-container ul#mega-menu>li.parent>a {
    position: relative;
    padding-right: 25px
}

#mega-menu-container ul#mega-menu>li.parent>a:after {
    content: "\e5c5";
    position: absolute;
    right: 5px;
    font-family: "Material Symbols Outlined";
    color: var(--primary-color)
}

#mega-menu-container ul#mega-menu>li>.mega-menu {
    display: none;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 25px 50px;
    margin-top: 80px;
    background-color: var(--white-color);
    -webkit-box-shadow: 0 15px 15px rgba(0, 0, 0, 0.1);
    box-shadow: 0 15px 15px rgba(0, 0, 0, 0.1)
}

#mega-menu-container ul#mega-menu>li>.mega-menu ul li {
    -webkit-transition: all 0.2s;
    transition: all 0.2s
}

#mega-menu-container ul#mega-menu>li>.mega-menu ul li a {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    text-decoration: none
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul {
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 40px;
    padding: 0;
    margin: 0;
    width: 100%;
    line-height: 30px;
    list-style: none
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>a,
#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>strong {
    font-size: 11px;
    font-size: 1.1rem;
    display: block;
    margin-bottom: 15px;
    font-weight: 600;
    color: var(--black-color)
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>strong {
    position: relative;
    display: block;
    margin-bottom: 25px;
    height: 40px
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>strong:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 3px;
    background-color: var(--lightgray-color)
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul {
    padding: 0;
    margin: 0;
    list-style: none
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul>li {
    line-height: 30px
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul>li>a {
    font-size: 9.5px;
    font-size: 0.95rem;
    overflow: hidden;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left;
    text-transform: none;
    font-weight: 400;
    color: var(--darkgray-color)
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul>li>a:before {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    opacity: 0;
    -webkit-transition-delay: 150ms;
    transition-delay: 150ms;
    content: "\e5cc";
    position: absolute;
    left: -30px;
    font-family: "Material Symbols Outlined";
    color: var(--black-color)
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul>li+li {
    border-top: 1px solid var(--lightgray-color)
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul>li.uk-active>a,
#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul>li:hover>a {
    padding-left: 20px;
    color: var(--tertiary-color)
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul>li.uk-active>a:before,
#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul>li:hover>a:before {
    opacity: 1;
    left: 0
}

#mega-menu-container ul#mega-menu>li>.mega-menu>ul>li>ul>li+li {
    margin-top: 5px
}

@media (min-width:480px) {
    #mega-menu-container ul#mega-menu>li>.mega-menu>ul {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr
    }
}

@media (min-width:768px) {
    #mega-menu-container ul#mega-menu>li>.mega-menu>ul {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (min-width:1200px) {
    #mega-menu-container ul#mega-menu>li>.mega-menu>ul {
        -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr)
    }
}

#mega-menu-container ul#mega-menu>li:hover>.mega-menu {
    display: -ms-grid;
    display: grid
}

ul.pdf-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    color: var(--black-color)
}

ul.pdf-list li a:before {
    content: "\e415";
    font-size: 25px;
    font-family: "Material Symbols Outlined";
    color: red
}

body,
html {
    background: var(--white-color);
    font-weight: 400;
    color: var(--darkgray-color)
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Poppins', sans-serif
}

.heading h1,
.heading h2,
.heading h3 {
    font-weight: 500;
    color: var(--dark-primary)
}

.heading h1 strong,
.heading h2 strong,
.heading h3 strong {
    text-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
    font-weight: 600;
    color: var(--black-color)
}

.heading p {
    padding: 0;
    margin: 0
}

.heading .material-symbols-outlined {
    font-size: 40px;
    color: var(--midlightgray-color)
}

.heading p+h2 {
    margin-top: 0
}

.heading h2 {
    font-size: 16px;
    font-size: 1.6rem
}

.heading h2 strong {
    font-size: 24px;
    font-size: 2.4rem
}

.heading p {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 600
}

p {
    line-height: 30px
}

a {
    color: var(--primary-color)
}

a:hover {
    color: var(--primary-color)
}

ul.checklist {
    list-style: none
}

ul.checklist li {
    position: relative;
    padding-left: 25px
}

ul.checklist li:before {
    content: "\e876";
    position: absolute;
    top: 0;
    left: 0;
    font-family: "Material Symbols Outlined"
}

ul.checklist li+li {
    margin-top: 10px
}

footer {
    padding: 100px 0;
    background-color: var(--lightgray-color)
}

footer .logo {
    font-size: 25px;
    font-size: 2.5rem;
    color: var(--black-color)
}

footer * {
    color: var(--black-color)
}

footer a,
footer a:hover {
    color: var(--black-color)
}

#credits {
    font-size: 8px;
    font-size: 0.8rem;
    padding: 25px 75px;
    background-color: var(--tertiary-color);
    color: var(--white-color)
}

#credits * {
    color: var(--white-color)
}

#mobile-cta .left a,
#mobile-cta .left a:active,
#mobile-cta .left a:focus,
#mobile-cta .left a:visited,
#mobile-cta .right a,
#mobile-cta .right a:active,
#mobile-cta .right a:focus,
#mobile-cta .right a:visited {
    background-color: var(--primary-color);
    color: var(--white-color)
}

#page_404 {
    padding: 150px 0
}

.padding-150-300 {
    padding: 150px 0 300px 0
}

.no-products {
    padding: 10px;
    background-color: #EEE;
    border: 1px solid #e1e1e1
}

.wp-block-table table tbody tr td {
    padding: 10px;
    border: 1px solid var(--lightgray-color)
}

.wp-block-table table tbody tr td:first-child {
    font-weight: bold
}

#page-intro {
    color: var(--white-color);
    font-size: 12px;
    font-size: 1.2rem;
    background-color: var(--tertiary-color)
}

#page-intro a:not(.uk-button),
#page-intro a:not(.uk-button):hover,
#page-intro h1,
#page-intro h2,
#page-intro h3 {
    color: var(--white-color)
}

#page-intro .heading h1,
#page-intro .heading h2,
#page-intro .heading h3 {
    color: var(--primary-color)
}

#page-intro .heading h1 strong,
#page-intro .heading h2 strong,
#page-intro .heading h3 strong {
    color: var(--white-color)
}

#page-intro .bloc-counter .bloc-counter-container .bloc-counter-icon {
    color: var(--white-color)
}

#page-intro .bloc-counter .bloc-counter-container .counter {
    font-size: 18px;
    font-size: 1.8rem;
    color: var(--primary-color)
}

#page-intro .bloc-counter .bloc-counter-container .bloc-counter-prefix,
#page-intro .bloc-counter .bloc-counter-container .bloc-counter-sufix {
    font-weight: 600;
    color: var(--white-color)
}

#page-intro .heading {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#page-intro .heading:before {
    content: "\f084";
    position: absolute;
    top: -50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    font-family: "Material Symbols Outlined";
    font-size: 40px;
    color: var(--primary-color)
}

#page-intro .heading h1 {
    font-size: 14px;
    font-size: 1.4rem;
    color: var(--white-color)
}

#page-intro .heading h1 span.services {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 25px 0;
    display: inline-block;
    text-align: center
}

#page-intro .heading h1 span.services em {
    margin: 0 15px;
    font-style: unset;
    color: var(--white-color)
}

#page-intro .heading h1 strong {
    font-size: 14px;
    font-size: 1.4rem;
    color: var(--white-color)
}

#page-intro .section-image {
    opacity: 0.3
}

@media (min-width:1200px) {
    #page-intro .heading h1 {
        font-size: 18px;
        font-size: 1.8rem
    }

    #page-intro .heading h1 strong {
        font-size: 18px;
        font-size: 1.8rem
    }
}

section.banner .section-content {
    border-radius: 0 25px 25px 25px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    z-index: 0;
    position: relative;
    padding: 75px
}

section.banner .section-content p {
    font-size: 12px;
    font-size: 1.2rem
}

section.banner .section-content:after {
    opacity: 0.2;
    content: "";
    z-index: -1;
    position: absolute;
    inset: 0;
    background-image: url(images/abstract-background.webp);
    background-size: cover
}

section.banner.banner-black .section-content {
    color: var(--white-color);
    background-color: var(--tertiary-color);
    -webkit-box-shadow: 10px 10px 0 var(--lightgray-color);
    box-shadow: 10px 10px 0 var(--lightgray-color)
}

section.banner.banner-black .section-content a:not(.uk-button),
section.banner.banner-black .section-content a:not(.uk-button):hover,
section.banner.banner-black .section-content h1,
section.banner.banner-black .section-content h2,
section.banner.banner-black .section-content h3 {
    color: var(--white-color)
}

section.banner.banner-black .section-content .heading h1,
section.banner.banner-black .section-content .heading h2,
section.banner.banner-black .section-content .heading h3 {
    color: var(--primary-color)
}

section.banner.banner-black .section-content .heading h1 strong,
section.banner.banner-black .section-content .heading h2 strong,
section.banner.banner-black .section-content .heading h3 strong {
    color: var(--white-color)
}

section.banner.banner-black .section-content .bloc-counter .bloc-counter-container .bloc-counter-icon {
    color: var(--white-color)
}

section.banner.banner-black .section-content .bloc-counter .bloc-counter-container .counter {
    font-size: 18px;
    font-size: 1.8rem;
    color: var(--primary-color)
}

section.banner.banner-black .section-content .bloc-counter .bloc-counter-container .bloc-counter-prefix,
section.banner.banner-black .section-content .bloc-counter .bloc-counter-container .bloc-counter-sufix {
    font-weight: 600;
    color: var(--white-color)
}

section.outset-content {
    padding-top: 0
}

section.outset-content .section-content {
    margin-top: -150px
}

section.primary-background .heading h2,
section.primary-background .heading h3 {
    color: var(--white-color)
}

section.primary-background.white-container .section-content {
    background-color: var(--white-color);
    -webkit-box-shadow: 0 20px 25px rgba(0, 0, 0, 0.1);
    box-shadow: 0 20px 25px rgba(0, 0, 0, 0.1)
}

section.primary-background.white-container .section-content .heading h2,
section.primary-background.white-container .section-content .heading h3 {
    color: var(--primary-color)
}

section.primary-background.white-container .section-content .bloc-text {
    padding: 75px
}

section .section-separator {
    height: 50px
}

section .section-image.fixed {
    background-attachment: fixed
}

section .section-image.alpha {
    opacity: 0.3
}

.bloc-accordion .uk-accordion li a.uk-accordion-title {
    padding: 10px;
    background-color: var(--lightgray-color)
}

.bloc-accordion .uk-accordion li a.uk-accordion-title:before {
    content: "\e145";
    background-image: unset;
    font-family: "Material Symbols Outlined"
}

.bloc-accordion .uk-accordion li div.uk-accordion-content {
    padding: 15px;
    margin-top: 0
}

.bloc-accordion .uk-accordion li.uk-open a.uk-accordion-title:before {
    content: "\e15b"
}

.bloc-slideshow .uk-slideshow ul.uk-slideshow-items {
    min-height: 700px
}

.bloc-slideshow .uk-slideshow ul.uk-slideshow-items li {
    width: 100%;
    height: 100%
}

.bloc-slideshow .uk-slideshow ul.uk-slideshow-items li .slideshow-video {
    position: relative;
    width: 100%;
    height: 100%
}

.bloc-slideshow .uk-slideshow ul.uk-slideshow-items li .slideshow-video iframe {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.bloc-slideshow .uk-slideshow .slideshow-dotnav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 15px 0
}

.base-holiday {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    opacity: 1;
    z-index: 1000;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 15px;
    background-color: var(--black-color);
    color: var(--white-color)
}

.base-holiday .holiday-container {
    max-width: 100vw
}

.base-holiday .holiday-container .holiday-title {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold
}

.base-holiday .holiday-close {
    position: absolute;
    top: 10px;
    right: 15px
}

.base-holiday .holiday-close:after {
    content: "\e5cd";
    font-family: "Material Symbols Outlined";
    font-size: 20px;
    color: var(--white-color)
}

@media (min-width:1200px) {
    .base-holiday .holiday-container {
        max-width: 70vw
    }
}

.bloc-blocs-grid .bloc-item .bloc-container .bloc-icon {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    margin-bottom: 15px;
    background-color: var(--primary-color);
    border: 2px solid var(--black-color);
    -webkit-box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1)
}

.bloc-blocs-grid .bloc-item .bloc-container .bloc-icon .material-symbols-outlined {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    text-shadow: 3px 3px 0 var(--dark-primary);
    font-size: 40px;
    color: var(--black-color)
}

.bloc-blocs-grid .bloc-item .bloc-container .bloc-content .bloc-title {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 600;
    color: var(--black-color)
}

.bloc-blocs-grid .bloc-item:hover .bloc-container .bloc-icon {
    background-color: var(--tertiary-color)
}

.bloc-blocs-grid .bloc-item:hover .bloc-container .bloc-icon .material-symbols-outlined {
    text-shadow: unset;
    color: var(--white-color)
}

.bloc-blocs-grid-products {
    text-align: center
}

.bloc-blocs-grid-products .bloc-image img {
    height: 250px
}

.bloc-blocs-grid-products .bloc-container .bloc-content {
    padding: 25px
}

.bloc-blocs-grid-products .bloc-container .bloc-content .bloc-title {
    font-weight: 600;
    color: var(--black-color)
}

.bloc-blocs-grid-grid .bloc-item {
    z-index: 0;
    position: relative;
    text-align: center
}

.bloc-blocs-grid-grid .bloc-item .bloc-image {
    display: none;
    z-index: 0;
    position: relative
}

.bloc-blocs-grid-grid .bloc-item .bloc-container .bloc-content .bloc-title {
    font-size: 20px;
    font-size: 2rem;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    font-weight: 400;
    color: var(--white-color)
}

.bloc-blocs-grid-grid .bloc-item .bloc-container .bloc-content .bloc-title .material-symbols-outlined {
    font-size: 30px
}

.bloc-counter {
    color: var(--white-color)
}

.bloc-counter .bloc-counter-container .bloc-counter-icon {
    padding-bottom: 10px
}

.bloc-counter .bloc-counter-container .counter {
    font-size: 22px;
    font-size: 2.2rem;
    color: var(--primary-color)
}

.bloc-counter .bloc-counter-container .bloc-counter-sufix {
    font-weight: 600;
    color: var(--white-color)
}

.bloc-counter .bloc-counter-container .bloc-counter-content {
    font-size: 12px;
    font-size: 1.2rem;
    padding-top: 15px
}

.bloc-slider .uk-slider-items .slide-content {
    display: none
}

.bloc-slider a svg {
    color: var(--white-color)
}

.bloc-categories .categorie-menu {
    padding: 25px;
    width: 100%;
    border-right: 1px solid var(--lightgray-color)
}

.bloc-categories .categorie-menu .title {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    font-size: 15px;
    font-size: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 50px;
    background-color: var(--black-color);
    text-align: center;
    color: var(--white-color)
}

.bloc-categories .categorie-menu .title:hover {
    background-color: var(--primary-color);
    color: var(--black-color)
}

.bloc-categories .categorie-menu ul {
    display: block;
    overflow: auto;
    max-height: 300px;
    margin-top: 0
}

.bloc-categories .categorie-menu ul.hidden {
    display: none
}

.bloc-categories .categorie-menu ul li:first-child {
    margin-bottom: 10px
}

.bloc-categories .categorie-menu ul li:first-child a {
    color: var(--black-color)
}

.bloc-categories .categorie-menu ul li {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    padding: 10px 0;
    margin-top: 0
}

.bloc-categories .categorie-menu ul li a {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    font-size: 9px;
    font-size: 0.9rem;
    color: var(--darkgray-color)
}

.bloc-categories .categorie-menu ul li:not(:first-child).uk-active,
.bloc-categories .categorie-menu ul li:not(:first-child):hover {
    padding-left: 10px;
    border-left: 4px solid var(--tertiary-color)
}

.bloc-categories .categorie-menu ul li:not(:first-child).uk-active a,
.bloc-categories .categorie-menu ul li:not(:first-child):hover a {
    text-decoration: none;
    color: var(--tertiary-color)
}

.bloc-categories .categorie-menu ul li:not(:first-child)+li {
    border-top: 1px solid var(--lightgray-color)
}

@media (min-width:1200px) {
    .bloc-categories .categorie-menu {
        width: calc(100% - 50px)
    }

    .bloc-categories .categorie-menu ul {
        max-height: unset
    }

    .bloc-categories .categorie-menu ul.hidden {
        display: block
    }

    .bloc-categories .categorie-menu .title {
        display: none;
        background-color: transparent;
        -webkit-box-pack: left;
        -ms-flex-pack: left;
        justify-content: left;
        text-align: left;
        color: var(--black-color)
    }

    .bloc-categories .categorie-menu .title:hover {
        background-color: transparent;
        color: var(--black-color)
    }
}

.categories-produits .category-description-container .category-description {
    margin-bottom: 50px
}

.categories-produits .produit a {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    display: block;
    text-decoration: none
}

.categories-produits .produit a:hover {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.categories-produits .produit p strong {
    font-weight: 200
}

.categories-produits .produit .produit-image {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 250px
}

.categories-produits .produit .produit-image img {
    position: absolute;
    height: 100%
}

.categories-produits .produit .produit-titre {
    padding: 15px;
    text-align: center;
    font-weight: 400;
    color: var(--secondary-color)
}

.produit-gallery a.photo {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 100%
}

.produit-gallery a.photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.produit p strong {
    font-weight: 400
}




.gt_float_switcher {
    font-family: Arial;
    font-size: 20px;
    border-radius: 2px;
    color: #555;
    display: inline-block;
    line-height: 20px;
    box-shadow: none !important;
    background: #fff;
    overflow: hidden;
    transition: all .5s cubic-bezier(0.4, 0, 1, 1);
}


@media (max-width:480px){
.gtranslate_wrapper {
    position:absolute;
    top:60px;
    right:0px;
}
}