@font-face {
    font-family: Glacial Indifference;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/glacial-indifference/glacialindifference-regular.woff2) format("woff2"), url(../fonts/glacial-indifference/glacialindifference-regular.woff) format("woff");
    font-display: swap
}

@font-face {
    font-family: Glacial Indifference;
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/glacial-indifference/glacialindifference-bold.woff2) format("woff2"), url(../fonts/glacial-indifference/glacialindifference-bold.woff) format("woff");
    font-display: swap
}

@font-face {
    font-family: Glacial Indifference;
    font-style: italic;
    font-weight: 400;
    src: url(../fonts/glacial-indifference/glacialindifference-italic.woff2) format("woff2"), url(../fonts/glacial-indifference/glacialindifference-italic.woff) format("woff");
    font-display: swap
}

@font-face {
    font-family: Sansation;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/sansation/SansationRegular.woff2) format("woff2"), url(../fonts/sansation/SansationRegular.woff) format("woff");
    font-display: swap
}

@font-face {
    font-family: Sansation;
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/sansation/SansationBold.woff2) format("woff2"), url(../fonts/sansation/SansationBold.woff) format("woff");
    font-display: swap
}

:root {
    --breakpoints: xs 0, sm 570, md 770, lg 990, xl 1250, xxl 1500,
}

@media(max-width:569.98px) {
    :root {
        --current-breakpoint: xs
    }
}

@media(min-width:570px)and (max-width:769.98px) {
    :root {
        --current-breakpoint: sm
    }
}

@media(min-width:770px)and (max-width:989.98px) {
    :root {
        --current-breakpoint: md
    }
}

@media(min-width:990px)and (max-width:1249.98px) {
    :root {
        --current-breakpoint: lg
    }
}

@media(min-width:1250px)and (max-width:1499.98px) {
    :root {
        --current-breakpoint: xl
    }
}

@media(min-width:1500px) {
    :root {
        --current-breakpoint: xxl
    }
}

*,
:after,
:before {
    box-sizing: border-box
}

html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -ms-overflow-style: scrollbar;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    /* smooth scrolling */
    scroll-behavior: smooth;
}

@-ms-viewport {
    width: device-width
}

article,
aside,
dialog,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
    display: block
}

body {
    margin: 0;
    text-align: left
}

[tabindex="-1"]:focus {
    outline: 0 !important
}

dl,
ol,
ul {
    margin-top: 0;
    margin-bottom: 1rem
}

ol ol,
ol ul,
ul ol,
ul ul {
    margin-bottom: 0
}

b,
strong {
    font-weight: bolder
}

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

pre {
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    -ms-overflow-style: scrollbar
}

svg:not(:root) {
    overflow: hidden
}

table {
    border-collapse: collapse
}

th {
    text-align: inherit
}

output {
    display: inline-block
}

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

template {
    display: none
}

.wrapper {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 20px;
    padding-left: 20px
}

@media(min-width:570px) {
    .wrapper {
        max-width: 100%
    }
}

@media(min-width:770px) {
    .wrapper {
        max-width: 100%
    }
}

@media(min-width:990px) {
    .wrapper {
        max-width: 960px
    }
}

@media(min-width:1250px) {
    .wrapper {
        max-width: 1230px
    }
}

@media(min-width:1500px) {
    .wrapper {
        max-width: 1400px
    }
}

@media(min-width:770px) {
    .wrapper {
        padding-right: 15px;
        padding-left: 15px
    }
}

.wrapper-full {
    width: 86vw;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px
}

.embed-responsive {
    display: block;
    position: relative;
    width: 100%;
    padding: 0;
    overflow: hidden
}

.embed-responsive:before {
    content: "";
    display: block;
    padding-top: 56.25%
}

.embed-responsive .embed-responsive-item,
.embed-responsive embed,
.embed-responsive iframe,
.embed-responsive object,
.embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0
}

.embed-responsive-21by9:before {
    padding-top: 42.8571428571%
}

.embed-responsive-4by3:before {
    padding-top: 75%
}

.embed-responsive-1by1:before {
    padding-top: 100%
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
    white-space: nowrap;
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%)
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal;
    -webkit-clip-path: none;
    clip-path: none
}

.icon,
.icon:before {
    display: inline-block
}

@media print {
    body {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background: none;
        color: #000;
        font-family: Garamond, Times New Roman, serif;
        font-size: 14pt;
        line-height: 1.45
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        page-break-after: avoid
    }

    h1 {
        font-size: 19pt
    }

    h2 {
        font-size: 17pt
    }

    h3 {
        font-size: 15pt
    }

    h4,
    h5,
    h6 {
        font-size: 14pt
    }

    h2,
    h3,
    p {
        orphans: 3;
        widows: 3
    }

    code {
        font: 12pt Courier, monospace
    }

    blockquote {
        margin: 1.2em;
        padding: 1em;
        font-size: 12pt
    }

    hr {
        background-color: #ccc
    }

    img {
        max-width: 100% !important;
        margin: 1em 1.5em 1.5em 0;
        float: left
    }

    a img {
        border: none
    }

    a:link,
    a:visited {
        background: transparent;
        color: #333;
        font-weight: 700;
        text-decoration: underline
    }

    a:link[href^="http://"]:after,
    a[href^="http://"]:visited:after {
        content: " (" attr(href) ")";
        font-size: 90%
    }

    abbr[title]:after {
        content: " (" attr(title) ")"
    }

    a[href^="http://"] {
        color: #000
    }

    a[href$=".gif"]:after,
    a[href$=".jpeg"]:after,
    a[href$=".jpg"]:after,
    a[href$=".png"]:after {
        content: " (" attr(href) ")";
        display: none
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: ""
    }

    table {
        margin: 1px;
        text-align: left
    }

    th {
        font-weight: 700
    }

    td,
    th {
        border-bottom: 1px solid #333
    }

    td,
    th {
        padding: 4px 10px 4px 0
    }

    tfoot {
        font-style: italic
    }

    caption {
        margin-bottom: 2em;
        background: #fff;
        text-align: left
    }

    thead {
        display: table-header-group
    }

    img,
    tr {
        page-break-inside: avoid
    }
}

.current-template,
.php_dump {
    display: none
}

:root {
    --scrollbar-width: 0
}

::-moz-selection {
    background: var(--vert);
    color: #fff
}

::selection {
    background: var(--vert);
    color: #fff
}

html {
    position: relative;
    font-size: 10px;
    scroll-padding-top: 110px;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased !important;
    text-rendering: optimizeLegibility !important
}

body,
html {
    height: 100%
}

body {
    min-height: 100%;
    background-color: #fff;
    color: black;
    font-family: Glacial Indifference, sans-serif;
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.5
}

body .main-content {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: 100%
}

body .main-content>* {
    flex: 0 0 auto
}

.asscrollbar.asscrollbar {
    z-index: 400
}

.missing-image {
    background: linear-gradient(to bottom right, #b0de35 0, #739518)
}

button,
input {
    font-family: Glacial Indifference, sans-serif
}

p {
    margin-top: 0
}

/* img {
    width: 100%;
    height: auto
} */

.main-content .section {
    padding-top: 50px;
    padding-bottom: 50px
}

@media(min-width:990px) {
    .main-content .section {
        padding-top: 80px;
        padding-bottom: 80px
    }
}

body.content-image-right .main-content {
    position: relative;
    min-height: 100vh
}

body.content-image-right .main-content .wrapper-left {
    min-height: 100vh
}

@media(min-width:990px) {
    body.content-image-right .main-content .wrapper-left .wrapper {
        padding-right: 350px
    }
}

@media(min-width:1250px) {
    body.content-image-right .main-content .wrapper-left .wrapper {
        padding-right: 500px
    }
}

@media(min-width:1500px) {
    body.content-image-right .main-content .wrapper-left .wrapper {
        padding-right: 550px
    }
}

body.content-image-right .main-content .wrapper-left .page-intro {
    padding-bottom: 2em;
}

body.content-image-right .image-right {
    position: fixed;
    z-index: -15;
    top: 0;
    right: 0;
    width: 35%;
    height: 100vh
}

@media(max-width:989.98px) {
    body.content-image-right .image-right {
        display: none
    }
}

body.content-image-right .image-right img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: left;
    object-position: left
}

.loading-container {
    position: relative
}

.loading-container .loader {
    display: flex;
    position: absolute;
    z-index: 5;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    align-items: center;
    justify-content: center;
    padding: 3rem 0;
    transition: opacity .3s ease;
    opacity: 0;
    background-color: hsla(0, 0%, 100%, .7);
    pointer-events: none
}

@media(min-width:990px) {
    .loading-container .loader {
        top: -5px;
        right: -5px;
        bottom: -5px;
        left: -5px
    }
}

.loading-container .loader.js-loading {
    opacity: 1;
    pointer-events: all
}

.preload * {
    transition: none !important
}

.error404 .page-intro .extra {
    text-align: center
}

@media(min-width:990px) {
    .full-height-section {
        height: 100vh
    }
}

.main-header {
    position: fixed;
    z-index: 500;
    top: 0;
    right: 0;
    left: 0;
    height: 70px;
    padding: 5px 0;
    padding-right: var(--scrollbar-width);
    transition: transform .5s ease, box-shadow .5s ease, background-color .5s ease;
    pointer-events: none
}

@media(min-width:990px) {
    .main-header {
        height: 110px;
        padding: 20px 0
    }
}

.main-header:not(.mobile-menu-visible).hidden-header {
    transform: translateY(-100%)
}

@media(min-width:990px) {
    .main-header.over-reverse-section:not(.js-main-menu-visible) {
        background-color: transparent
    }

    .main-header.over-reverse-section:not(.js-main-menu-visible) .logo-svg path {
        fill: #fff
    }

    .main-header.over-reverse-section:not(.js-main-menu-visible) .menu-actions {
        background-color: transparent
    }
}

@media(min-width:990px)and (max-width:989.98px) {

    .main-header.over-reverse-section:not(.js-main-menu-visible) .menu-actions .burger-icon,
    .main-header.over-reverse-section:not(.js-main-menu-visible) .menu-actions .burger-icon:after,
    .main-header.over-reverse-section:not(.js-main-menu-visible) .menu-actions .burger-icon:before {
        background-color: #fff
    }
}

@media(min-width:990px) {
    .main-header.over-reverse-section:not(.js-main-menu-visible) .menu-actions .tool-btn {
        color: #fff
    }
}

@media(min-width:990px) {
    .main-header.over-reverse-section:not(.js-main-menu-visible) .lang-switcher .language-list {
        background-color: transparent
    }
}

@media(max-width:989.98px) {
    .main-header.over-reverse-section:not(.js-main-menu-visible):not(.not-on-top) {
        background-color: transparent
    }

    .main-header.over-reverse-section:not(.js-main-menu-visible):not(.not-on-top) .logo-svg path {
        fill: #fff
    }

    .main-header.over-reverse-section:not(.js-main-menu-visible):not(.not-on-top) .menu-actions {
        background-color: transparent
    }
}

@media(max-width:989.98px)and (max-width:989.98px) {

    .main-header.over-reverse-section:not(.js-main-menu-visible):not(.not-on-top) .menu-actions .burger-icon,
    .main-header.over-reverse-section:not(.js-main-menu-visible):not(.not-on-top) .menu-actions .burger-icon:after,
    .main-header.over-reverse-section:not(.js-main-menu-visible):not(.not-on-top) .menu-actions .burger-icon:before {
        background-color: #fff
    }
}

@media(max-width:989.98px) {
    .main-header.over-reverse-section:not(.js-main-menu-visible):not(.not-on-top) .menu-actions .tool-btn {
        color: #fff
    }
}

@media(max-width:989.98px) {
    .main-header.over-reverse-section:not(.js-main-menu-visible):not(.not-on-top) .lang-switcher .language-list {
        background-color: transparent
    }
}

.main-header.over-reverse-split-section:not(.js-main-menu-visible) {
    background-color: transparent
}

.main-header.over-reverse-split-section:not(.js-main-menu-visible) .logo-svg path {
    fill: #fff
}

.main-header.nobg {
    background-color: transparent
}

.main-header .wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
}

.main-header .logo-container {
    width: 90px; pointer-events: all;
}

@media(min-width:990px) {
    .main-header .logo-container {width: 107px}
}

.main-header .logo-container .logo-svg {
    display: block;
    width: 100%;
    height: auto
}

.main-header .logo-container .logo-svg path {
    transition: fill .3s ease
}

.main-header .menu-actions {
    display: flex;
    position: relative;
    z-index: 5;
    align-items: center;
    color: black;
    pointer-events: all
}

@media(min-width:990px) {
    .main-header .menu-actions {
        height: 57px;
        padding: 10px 30px;
        transition: background-color .3s ease;
        border-radius: 30px;
        background-color: #9E917E;
        color: #fff
    }
}

@media(max-width:989.98px) {

    .main-header .menu-actions .lang-switcher,
    .main-header .menu-actions .separator {
        opacity: 0;
        pointer-events: none
    }
}

.main-header .menu-actions .separator {
    min-height: 38px;
    margin: 0 0 0 20px;
    border: 0;
    border-right: 1px solid rgba(100, 121, 148, .5)
}

.main-header .menu-actions .lang-switcher {
    margin-top: 2px;
    margin-right: 20px
}

@media(min-width:990px) {
    .main-header .menu-actions .lang-switcher {
        color: #fff
    }
}

.main-header .menu-button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 8px;
    cursor: pointer
}

.main-header .menu-button .burger-icon {
    position: relative;
    margin-top: 7px;
    margin-bottom: 7px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.main-header .menu-button .burger-icon,
.main-header .menu-button .burger-icon:after,
.main-header .menu-button .burger-icon:before {
    display: block;
    width: 21px;
    height: 2px;
    transition-property: background-color, transform;
    transition-duration: .3s;
    transition-timing-function: ease;
    outline: 1px solid transparent;
    background-color: black
}

.main-header .menu-button .burger-icon:after,
.main-header .menu-button .burger-icon:before {
    content: "";
    position: absolute
}

.main-header .menu-button .burger-icon:before {
    top: -7px
}

.main-header .menu-button .burger-icon:after {
    top: 7px
}

@media(min-width:990px) {

    .main-header .menu-button .burger-icon,
    .main-header .menu-button .burger-icon:after,
    .main-header .menu-button .burger-icon:before {
        background-color: #fff
    }
}

.main-header .menu-button.js-active .burger-icon {
    background-color: transparent
}

.main-header .menu-button.js-active .burger-icon:before {
    transform: translateY(7px) rotate(45deg)
}

.main-header .menu-button.js-active .burger-icon:after {
    transform: translateY(-7px) rotate(-45deg)
}

.main-header.js-main-menu-visible .menu-actions {
    background-color: transparent
}

@media(max-width:989.98px) {

    .main-header.js-main-menu-visible .menu-actions .lang-switcher,
    .main-header.js-main-menu-visible .menu-actions .separator {
        opacity: 1;
        pointer-events: all
    }
}

@media(min-width:990px) {

    .main-header.js-main-menu-visible .menu-actions .lang-switcher,
    .main-header.js-main-menu-visible .menu-actions .separator {
        opacity: 0;
        pointer-events: none
    }
}

.main-header.js-main-menu-visible .menu-actions .burger-icon {
    background-color: transparent
}

.main-header.js-main-menu-visible .menu-actions .burger-icon:after,
.main-header.js-main-menu-visible .menu-actions .burger-icon:before {
    background-color: black
}

.main-header.js-main-menu-visible .menu-actions .burger-icon:before {
    transform: translateY(7px) rotate(45deg)
}

.main-header.js-main-menu-visible .menu-actions .burger-icon:after {
    transform: translateY(-7px) rotate(-45deg)
}

.main-header.js-main-menu-visible .menu-actions .tool-btn {
    color: black
}

.main-menu-panel {
    display: flex;
    position: fixed;
    z-index: -1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    align-items: stretch;
    overflow: auto;
    pointer-events: all
}

@media(min-width:990px) {
    .main-menu-panel {
        z-index: 4
    }
}

.main-menu-panel:not(.js-visible) {
    display: none;
    pointer-events: none
}

.main-menu-panel .background {
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform-origin: left center;
    background-color: #fff
}

.main-menu-panel .background.green {
    z-index: -2;
    background-color: #f6f7f9
}

.main-menu-panel .images-container {
    display: none
}

@media(min-width:770px) {
    .main-menu-panel .images-container {
        display: block;
        position: relative;
        flex: 0 0 auto;
        width: 30%;
        overflow: hidden
    }
}

@media(min-width:1250px) {
    .main-menu-panel .images-container {
        width: 38%
    }
}

.main-menu-panel .images-container .image-container {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.main-menu-panel .images-container .image-container .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.main-menu-panel .panel-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: stretch;
    justify-content: space-between;
}

@media(max-height:800px) {
    .main-menu-panel .panel-content { padding-top: 80px !important}
}

@media(min-width:1250px) {
    .main-menu-panel .panel-content { padding-top: 90px }
}

@media(max-width:769.98px) {
    .main-menu-panel .panel-content { overflow: auto}
    .main-menu-panel .panel-content>* { flex: 0 0 auto }
}

.main-menu-panel .panel-content .mains-menus-container {
    display: flex;
    justify-content: space-between
}

.main-menu-panel .main-menu {
    display: flex;
    flex-direction: column;
    /* width: 50% */
}

.main-menu-panel .main-menu:first-child {
    padding-right: 10px
}

@media(max-width:989.98px) {
    .main-menu-panel .main-menu {
        margin-bottom: 30px
    }
}

.main-menu-panel .main-menu .menu-title {
    color: #a4a4a4;
    font-family: Glacial Indifference, sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.14;
    text-transform: uppercase
}

@media(max-width:769.98px) {
    .main-menu-panel .main-menu .menu-title {
        display: none
    }
}

.main-menu-panel .main-menu .menu-link-container:not(:last-child) {
    margin-bottom: 2em;
}

@media(max-height:800px) {
    .main-menu-panel .main-menu .menu-link-container:not(:last-child) {
        margin-bottom: 1em;
    }
}

@media(max-width:1249.98px) {
    .main-menu-panel .main-menu .menu-link-container:not(:last-child) {
        margin-bottom: 1em;
    }
}

@media(min-width:770px) {
    .main-menu-panel .main-menu .products-links-container {
        margin-bottom: 0
    }
}

@media(max-width:769.98px) {
    .main-menu-panel .main-menu .products-links-container {
        margin-bottom: 20px
    }
}

.main-menu-panel .main-menu .products-links-container [data-toggle] {
    margin-bottom: 0
}

.main-menu-panel .main-menu .products-links-container [data-toggle].ouverte .label .icon {
    transform: rotate(-180deg)
}

@media(max-width:769.98px) {
    .main-menu-panel .main-menu .products-links-container [data-toggle-trigger] {
        margin-bottom: 0
    }

    .main-menu-panel .main-menu .products-links-container [data-toggle-trigger] .icon {
        display: inline-block;
        margin-left: 10px;
        transition: transform .5s cubic-bezier(.4, 0, .2, 1);
        color: var(--vert);
        font-size: .5em;
        vertical-align: middle
    }

    .main-menu-panel .main-menu .products-links-container [data-toggle-panel] {
        padding-left: 10px
    }

    .main-menu-panel .main-menu .products-links-container [data-toggle-panel]>:first-child {
        margin-top: 10px
    }

    .main-menu-panel .main-menu .products-links-container [data-toggle-panel]>:last-child {
        margin-bottom: 10px
    }

    .main-menu-panel .main-menu .products-links-container [data-toggle-panel] .menu-link .label {
        font-size: 1.8rem
    }
}

@media(min-width:770px) {
    .main-menu-panel .main-menu .products-links-container [data-toggle-trigger] {
        display: none
    }

    .main-menu-panel .main-menu .products-links-container [data-toggle-panel] {
        height: auto;
        margin-bottom: 30px
    }
}

/* .main-menu-panel .main-menu .menu-link {
    display: inline-flex;
    flex-direction: column;
    transition: color .3s ease;
    color: black;
    text-decoration: none
} */

/* .main-menu-panel .main-menu .menu-link .label {
    font-family: Sansation, sans-serif;
    font-size: 3.4rem
} */

@media(max-width:769.98px) {
    .main-menu-panel .main-menu .menu-link .label {
        font-size: 2.2rem
    }
}

.main-menu-panel .main-menu .menu-link .description {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    transition: opacity .3s ease;
    opacity: .4;
    line-height: 1.4
}

.main-menu-panel .main-menu .menu-link:hover {
    color: var(--vert)
}

.main-menu-panel .main-menu .menu-link:hover .description {
    opacity: 1
}

.main-menu-panel .menu-last {
    display: flex
}

.main-menu-panel .menu-last .menu-link-container {
    width: 50%
}

.main-menu-panel .menu-last .menu-link-container:first-child {
    margin-right: 15px
}

.main-menu-panel .menu-last .menu-link-container .menu-link {
    transition: color .3s ease;
    color: black;
    font-family: Sansation, sans-serif;
    font-size: 3.4rem;
    line-height: 1;
    text-decoration: none
}

@media(max-width:769.98px) {
    .main-menu-panel .menu-last .menu-link-container .menu-link {
        font-size: 2.2rem
    }
}

.main-menu-panel .menu-last .menu-link-container .menu-link:hover {
    color: var(--vert)
}

.main-menu-panel .utils-menu {
    display: flex;
    border-top: 1px solid var(--gris-fonce);
    border-bottom: 1px solid var(--gris-fonce);;
}

@media(min-width:990px) {
    .main-menu-panel .utils-menu {
        margin-top: 20px;
        margin-bottom: 20px
    }
}

@media(max-width:769.98px) {
    .main-menu-panel .utils-menu .menu-link-container {
        flex: 0 0 auto;
        width: 50%;
        padding: 7px;
        text-align: center
    }
}

@media(min-width:770px) {
    .main-menu-panel .utils-menu .menu-link-container:not(:last-child) {
        margin-right: 30px
    }
}

@media(min-width:990px) {

    .main-menu-panel .utils-menu .menu-link:focus,
    .main-menu-panel .utils-menu .menu-link:hover {
        outline: none
    }

    .main-menu-panel .utils-menu .menu-link:focus:after,
    .main-menu-panel .utils-menu .menu-link:hover:after {
        transform: scaleX(1);
        transform-origin: 0 50%
    }
}

.main-menu-panel .utils-menu .menu-link:focus,
.main-menu-panel .utils-menu .menu-link:hover {
    text-decoration: none;
    border-bottom: 1px solid var(--vert);
    /* animate border-bottom */
    transition: border-bottom-color .3s ease;
    position: relative;
    z-index: 1
}

@media(max-width:989.98px) {
    .main-menu-panel .utils-menu .menu-link {
        text-align: center
    }
}

.main-menu-panel .social-container {
    display: flex;
    align-items: flex-end;
    justify-content: space-between
}

@media(max-width:989.98px) {
    .main-menu-panel .social-container {
        flex-direction: column;
        align-items: flex-start;
        margin-top: 20px
    }

    .main-menu-panel .social-container .socials {
        width: 100%;
        margin-top: 10px
    }
}

@media(max-width:989.98px)and (max-width:569.98px) {
    .main-menu-panel .social-container .socials {
        justify-content: space-around
    }
}

.main-menu-panel .surmenu {
    display: flex;
    align-items: center;
    padding: 20px 0
}

.main-menu-panel .surmenu .menu-item:not(:last-child) {
    margin-right: 30px
}

.main-footer {
    position: relative;
    z-index: 50;
    overflow-x: hidden;
    background-color: black;
    color: #fff
}

.main-footer .first-part {
    display: flex;
    position: relative
}

@media(min-width:1250px) {
    .main-footer .first-part {
        align-items: center;
        justify-content: space-between;
        height: 210px
    }
}

@media(max-width:1249.98px) {
    .main-footer .first-part {
        flex-direction: column;
        padding-top: 40px;
        padding-bottom: 40px
    }
}

@media(max-width:989.98px) {
    .main-footer .first-part {
        padding-bottom: 0
    }
}

.main-footer .first-part .first-part-left {
    display: flex;
    align-items: flex-start
}

@media(max-width:1249.98px) {
    .main-footer .first-part .first-part-left {
        flex-direction: column
    }
}

@media(max-width:1249.98px) {
    .main-footer .first-part .first-part-right {
        margin-top: 40px
    }
}

.main-footer .first-part .logo-o-svg {
    flex-shrink: 0;
    width: 50px;
    height: auto
}

@media(min-width:1250px) {
    .main-footer .first-part .logo-o-svg {
        margin-right: 20px;
        transform: translateY(-12px)
    }
}

@media(max-width:1249.98px) {
    .main-footer .first-part .logo-o-svg {
        margin-bottom: 40px
    }
}

.main-footer .first-part .logo-o-svg path {
    fill: var(--vert)
}

.main-footer .first-part .form-newsletter-small .input-button-container .newsletter-submit,
.main-footer .first-part .form-newsletter-small .input-button-container input {
    border-bottom-color: hsla(0, 0%, 100%, .3);
    color: #fff
}

.main-footer .first-part .form-newsletter-small .input-button-container .newsletter-submit:focus,
.main-footer .first-part .form-newsletter-small .input-button-container input:focus {
    border-bottom-color: var(--vert)
}

.main-footer .first-part .form-newsletter-small .input-button-container input::-webkit-input-placeholder {
    color: hsla(0, 0%, 100%, .3)
}

.main-footer .first-part .form-newsletter-small .input-button-container input:-moz-placeholder,
.main-footer .first-part .form-newsletter-small .input-button-container input::-moz-placeholder {
    color: hsla(0, 0%, 100%, .3)
}

.main-footer .first-part .form-newsletter-small .input-button-container input:-ms-input-placeholder {
    color: hsla(0, 0%, 100%, .3)
}

.main-footer .first-part .main-menu {
    margin-bottom: 40px
}

.main-footer .second-part {
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media(min-width:990px) {
    .main-footer .second-part {
        position: relative;
        z-index: 0;
        height: 80px
    }

    .main-footer .second-part:before {
        content: "";
        display: block;
        position: absolute;
        z-index: -1;
        top: 0;
        bottom: 0;
        left: 50%;
        width: 200vw;
        transform: translateX(-50%);
        background-color: #27323f
    }
}

@media(max-width:989.98px) {
    .main-footer .second-part {
        flex-direction: column-reverse;
        align-items: flex-start
    }
}

.main-footer .menu-container {
    display: flex;
    flex-wrap: wrap;
    line-height: 2;
}

.main-footer .menu-container.main-menu [data-toggle] {
    margin-bottom: 0
}

@media(max-width:989.98px) {
    .main-footer .menu-container.main-menu [data-toggle] {
        width: 100%
    }
}

.main-footer .menu-container.main-menu [data-toggle-trigger] {
    display: none
}

.main-footer .menu-container.main-menu [data-toggle-panel] {
    display: flex;
    align-items: center;
    height: auto;
    margin-right: 30px
}

.main-footer .menu-container.main-menu .menu-link-container:not(:last-child) {
    margin-right: 30px
}

.main-footer .menu-container.main-menu .menu-link {
    position: relative;
    text-decoration: none;
    cursor: pointer;
    font-size: 1.6rem
}

.main-footer .menu-container.main-menu .menu-link:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: 100% 50%;
    transition: transform .3s ease;
    border-top: 1px solid;
    line-height: 2;
}

@media(min-width:990px) {

    .main-footer .menu-container.main-menu .menu-link:focus,
    .main-footer .menu-container.main-menu .menu-link:hover {
        outline: none
    }

    .main-footer .menu-container.main-menu .menu-link:focus:after,
    .main-footer .menu-container.main-menu .menu-link:hover:after {
        transform: scaleX(1);
        transform-origin: 0 50%
    }
}

.main-footer .menu-container.main-menu .menu-link:focus,
.main-footer .menu-container.main-menu .menu-link:hover {
    text-decoration: none
}

.main-footer .menu-container.utils-menu .menu-link-container:not(:last-child) {
    margin-right: 20px
}

.main-footer .menu-container.utils-menu .menu-link {
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 1.8;
    position: relative;
    text-decoration: none;
    cursor: pointer;
}

.main-footer .menu-container.utils-menu .menu-link:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: 100% 50%;
    transition: transform .3s ease;
    border-top: 1px solid
}

@media(min-width:990px) {

    .main-footer .menu-container.utils-menu .menu-link:focus,
    .main-footer .menu-container.utils-menu .menu-link:hover {
        outline: none
    }

    .main-footer .menu-container.utils-menu .menu-link:focus:after,
    .main-footer .menu-container.utils-menu .menu-link:hover:after {
        transform: scaleX(1);
        transform-origin: 0 50%
    }
}

.main-footer .menu-container.utils-menu .menu-link:focus,
.main-footer .menu-container.utils-menu .menu-link:hover { text-decoration: none}
.main-footer .menu-container.legals-menu .menu-link-container:not(:last-child) {margin-right: .5em}
.main-footer .menu-container.legals-menu .menu-link { font-size: .6em;}

@media(max-width:989.98px) {
    .main-footer .menu-container.legals-menu {width: 100%;padding-bottom: .5em;}
    .main-footer .menu-container.legals-menu .menu-link { font-size: .5em;}
}

.main-footer .menu-container.legals-menu .menu-link:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: 100% 50%;
    transition: transform .3s ease;
    border-top: 1px solid
}

@media(min-width:990px) {

    .main-footer .menu-container.legals-menu .menu-link:focus,
    .main-footer .menu-container.legals-menu .menu-link:hover {
        outline: none
    }

    .main-footer .menu-container.legals-menu .menu-link:focus:after,
    .main-footer .menu-container.legals-menu .menu-link:hover:after {
        transform: scaleX(1);
        transform-origin: 0 50%
    }
}

.main-footer .menu-container.legals-menu .menu-link:focus,
.main-footer .menu-container.legals-menu .menu-link:hover {
    text-decoration: none
}

@media(min-width:1250px) {
    .main-footer .socials {
        margin-left: 60px
    }
}

@media(max-width:989.98px) {
    .main-footer .socials {
        position: relative;
        z-index: 0;
        padding: 10px 0
    }

    .main-footer .socials:before {
        content: "";
        display: block;
        position: absolute;
        z-index: -1;
        top: 0;
        bottom: 0;
        left: 50%;
        width: 200vw;
        transform: translateX(-50%);
        background-color: #27323f
    }
}

@media(max-width:569.98px) {
    .main-footer .socials {
        justify-content: space-between;
        width: 100%
    }
}

.main-footer .socials .social-link {
    color: #fff
}

.lang-switcher {
    position: relative;
    color: black;
    font-weight: 700;
    cursor: pointer
}

.lang-switcher.full-name .lang-slug,
.lang-switcher:not(.full-name) .lang-name {
    display: none
}

.lang-switcher.to-top .language-list {
    top: auto;
    bottom: 100%;
    padding: 0 0 10px;
    transform: translateY(5px)
}

.lang-switcher .link {
    display: block;
    text-decoration: none
}

.lang-switcher .lang-slug {
    display: block;
    font-size: 1.1rem;
    letter-spacing: .1em;
    text-transform: uppercase
}

.lang-switcher .lang-name {
    font-size: 1.3rem
}

.lang-switcher .current-language {
    display: flex;
    position: relative;
    z-index: 1;
    align-items: center
}

.lang-switcher .current-language .lang-slug {
    transition: opacity .3s ease
}

.lang-switcher .current-language .icon {
    margin-left: 7px;
    transition: transform .3s ease;
    color: currentColor;
    font-size: 1rem;
    vertical-align: middle
}

.lang-switcher .language-list {
    display: flex
}

.lang-switcher .language-list .link {
    padding: 10px 5px;
    color: currentColor
}

.lang-switcher .language-list .link:first-of-type {
    margin-left: -5px
}

.lang-switcher .language-list .link:last-of-type {
    margin-right: -5px
}

.lang-switcher .language-list .link.current-language {
    pointer-events: none
}

.lang-switcher .language-list .link:not(.current-language) {
    opacity: .4
}

@media(min-width:770px) {

    body:not(.touch-device) .lang-switcher .language-list .link:not(.current-language):focus-within,
    body:not(.touch-device) .lang-switcher .language-list .link:not(.current-language):hover {
        opacity: 1
    }
}

.animated-cursor {
    position: fixed;
    z-index: 15;
    transition: opacity .3s ease, background-color .3s ease;
    opacity: 0;
    pointer-events: none;
    will-change: transform
}

.animated-cursor .shape {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    transform: translate(-50%, -50%);
    transition: background-color .3s ease, width .3s ease, opacity .3s ease, border-color .3s ease;
    border: 1px solid transparent;
    border-radius: 50%;
    background-color: var(--vert)
}

.animated-cursor .shape:before {
    content: "";
    display: block;
    width: 100%;
    padding-bottom: 100%
}

.animated-cursor .shape .icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: opacity .3s ease;
    opacity: 0
}

.animated-cursor .shape .icon.icon-play {
    color: var(--vert);
    font-size: 1.2rem
}

.animated-cursor .loader {
    transition: opacity .3s ease;
    opacity: 0
}

.animated-cursor .loader:after,
.animated-cursor .loader:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-animation: sk-bounce 2s ease-in-out infinite;
    animation: sk-bounce 2s ease-in-out infinite;
    border-radius: 50%;
    opacity: .6;
    background-color: #fff
}

.animated-cursor .loader:after {
    -webkit-animation-delay: -1s;
    animation-delay: -1s
}

@-webkit-keyframes sk-bounce {

    0%,
    to {
        transform: scale(0)
    }

    50% {
        transform: scale(1)
    }
}

.animated-cursor.over-content {
    z-index: 5
}

.animated-cursor.over-content .shape {
    background-color: var(--vert) !important
}

.animated-cursor.visible {
    opacity: 1
}

.animated-cursor.white .shape {
    background-color: #fff
}

.animated-cursor.invisible .shape {
    background-color: transparent
}

.animated-cursor.play .shape {
    width: 60px;
    background-color: #fff
}

.animated-cursor.play .shape .icon-play {
    opacity: 1
}

.animated-cursor.loading .shape {
    width: 40px;
    background-color: transparent
}

.animated-cursor.loading .shape .loader {
    opacity: 1
}

.animated-cursor.around-circle-btn .shape {
    border-color: #fff;
    background-color: transparent
}

.animated-cursor.around-circle-btn.green .shape {
    border-color: var(--vert)
}

.modal-open {
    height: 100%;
    overflow: hidden
}

#contentWrapper {
    display: unset
}

#tarteaucitronRoot article,
#tarteaucitronRoot aside,
#tarteaucitronRoot details,
#tarteaucitronRoot figcaption,
#tarteaucitronRoot figure,
#tarteaucitronRoot footer,
#tarteaucitronRoot header,
#tarteaucitronRoot hgroup,
#tarteaucitronRoot menu,
#tarteaucitronRoot nav,
#tarteaucitronRoot section {
    display: block
}

#tarteaucitronRoot blockquote,
#tarteaucitronRoot q {
    quotes: none
}

#tarteaucitronRoot blockquote:after,
#tarteaucitronRoot blockquote:before,
#tarteaucitronRoot q:after,
#tarteaucitronRoot q:before {
    content: "";
    content: none
}

#tarteaucitronRoot ol,
#tarteaucitronRoot ul {
    list-style: none
}

#tarteaucitronRoot table {
    border-spacing: 0;
    border-collapse: collapse
}

#tarteaucitronMainLineOffset {
    margin-top: 0 !important
}

#tarteaucitronServices {
    display: flex;
    flex-direction: column;
    margin-top: 25px !important
}

@media screen and (max-width:479px) {
    #tarteaucitron .tarteaucitronLine .tarteaucitronName {
        width: 90% !important
    }

    #tarteaucitron .tarteaucitronLine .tarteaucitronAsk {
        margin: 10px 15px 5px;
        float: left !important
    }
}

@media screen and (max-width:767px) {

    #tarteaucitron,
    #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer {
        top: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
        max-height: 100% !important;
        margin: 0 !important;
        border: 0 !important;
        background: #fff
    }

    #tarteaucitron .tarteaucitronBorder,
    #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList {
        border: 0 !important
    }

    #tarteaucitron #tarteaucitronServices .tarteaucitronTitle {
        text-align: left !important
    }

    .tarteaucitronName .tarteaucitronH2 {
        max-width: 80%
    }

    #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk {
        text-align: center !important
    }

    #tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk button {
        margin-bottom: 5px
    }
}

@media screen and (min-width:768px)and (max-width:991px) {
    #tarteaucitron {
        left: 0 !important;
        width: 90% !important;
        max-height: 80% !important;
        margin: 0 5% !important;
        border: 0 !important
    }
}

#tarteaucitron * {
    zoom: 1
}

#tarteaucitron #tarteaucitron {
    right: 0;
    left: 0;
    margin: auto
}

#tarteaucitron button#tarteaucitronBack {
    background: #f6f7f9
}

#tarteaucitron .clear {
    clear: both
}

#tarteaucitron a {
    color: black;
    font-size: 11px;
    font-weight: 700;
    text-decoration: underline
}

#tarteaucitron strong {
    font-size: 22px;
    font-weight: 500
}

#tarteaucitron ul {
    padding: 0
}

#tarteaucitron .tarteaucitronH1,
#tarteaucitron .tarteaucitronH2,
#tarteaucitron .tarteaucitronH3,
#tarteaucitron .tarteaucitronH4,
#tarteaucitron .tarteaucitronH5,
#tarteaucitron .tarteaucitronH6 {
    display: block
}

#tarteaucitronAlertBig a,
#tarteaucitronAlertBig strong,
#tarteaucitronAlertSmall a,
#tarteaucitronAlertSmall strong {
    color: #fff
}

.cookie-list {
    margin: 0;
    padding: 0;
    list-style: none
}

#tarteaucitronRoot {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 100%
}

#tarteaucitronRoot .tarteaucitronH1 {
    margin-bottom: 20px;
    color: black;
    font-family: Glacial Indifference, sans-serif;
    font-size: 2.5rem;
    font-weight: 400;
    text-align: center
}

#tarteaucitronRoot .tarteaucitronH2 {
    display: inline-block;
    color: black;
    font-size: 1.6rem
}

#tarteaucitronCookiesNumberBis.tarteaucitronH2 {
    margin-left: 0
}

#tarteaucitronBack {
    display: none;
    position: fixed;
    z-index: 2147483646;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(50, 63, 79, .4) !important
}

#tarteaucitron {
    display: none;
    position: fixed;
    z-index: 2147483647;
    top: 6%;
    left: 50%;
    width: 860px;
    max-height: 80%;
    margin: 0 auto 0 -430px;
    padding: 0
}

#tarteaucitron .tarteaucitronBorder {
    height: auto;
    overflow: auto;
    border-bottom-left-radius: 7px;
    border-bottom-right-radius: 7px;
    border: 0;
    border-top: 0;
    background: #fff
}

#tarteaucitron #tarteaucitronDisclaimer {
    width: 80%;
    margin: 15px auto 0;
    color: #647994;
    font-size: 12px
}

#tarteaucitron #tarteaucitronServices .tarteaucitronHidden {
    display: none;
    position: relative
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a,
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle a {
    color: black;
    font-weight: 500
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a:hover,
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle a:hover {
    text-decoration: none !important
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName a {
    font-size: 22px
}

#tarteaucitron #tarteaucitronServices .tarteaucitronTitle a {
    font-size: 14px
}

#tarteaucitron #tarteaucitronServices .tarteaucitronDetails {
    display: none !important;
    position: absolute;
    z-index: 2147483647;
    max-width: 270px;
    margin-top: 0;
    padding: 20px;
    color: black;
    font-size: 12px;
    font-weight: 500
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 15px 20px;
    overflow: hidden;
    border-left: 5px solid transparent;
    background: rgba(51, 51, 51, .1)
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed {
    border-color: var(--vert)
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied {
    border-color: #ff5959
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
    flex-direction: column;
    position: relative;
    margin-top: 25px;
    margin-bottom: 0;
    padding: 30px 30px 0;
    border-top-left-radius: 7px;
    border: 0;
    background: #fff
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronLine {
    margin-right: -30px;
    margin-left: -30px
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronName button {
    color: #fff
}

#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine .tarteaucitronAsk {
    margin-top: 0 !important
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName {
    width: 50%;
    margin-left: 0;
    text-align: left
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName a:hover {
    text-decoration: underline
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAsk {
    margin-left: auto
}

#tarteaucitron #tarteaucitronServices #tarteaucitronAllAllowed.tarteaucitronIsSelected {
    opacity: 1;
    background-color: var(--vert)
}

#tarteaucitron #tarteaucitronServices #tarteaucitronAllDenied.tarteaucitronIsSelected {
    opacity: 1;
    background-color: #ff5959
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsAllowed .tarteaucitronAllow {
    background-color: var(--vert)
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine.tarteaucitronIsDenied .tarteaucitronDeny {
    background-color: #ff5959
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronName .tarteaucitronListCookies {
    color: black;
    font-size: 12px
}

#tarteaucitron #tarteaucitronClosePanel,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronClosePanelCookie {
    border: 0;
    background-color: transparent;
    font-family: Glacial Indifference, sans-serif;
    position: absolute;
    z-index: 2;
    right: 0;
    width: 70px;
    height: 25px;
    padding: 4px 0;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    background: #fff;
    color: black;
    font-size: 1.2rem;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    cursor: pointer
}

#tarteaucitron #tarteaucitronClosePanel:focus,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronClosePanelCookie:focus {
    outline: none
}

#tarteaucitron #tarteaucitronServices .tarteaucitronHidden,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronHidden,
.tarteaucitronSelfLink {
    background: rgba(51, 51, 51, .07)
}

a.tarteaucitronSelfLink {
    display: block;
    position: absolute;
    right: 0;
    left: 0;
    padding: 7px !important;
    text-align: center;
    text-shadow: 0 0 14px #fff;
    text-transform: uppercase
}

#tarteaucitronCookiesList .tarteaucitronH3.tarteaucitronTitle {
    box-sizing: border-box;
    width: 100%
}

#tarteaucitron #tarteaucitronServices .tarteaucitronDetails,
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle button,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronTitle {
    border: 0;
    background-color: transparent;
    font-family: Glacial Indifference, sans-serif;
    cursor: pointer;
    display: inline-block;
    width: auto;
    margin: 20px 0 0;
    padding: 5px 20px;
    background: black;
    color: #fff;
    text-align: left
}

#tarteaucitron #tarteaucitronServices .tarteaucitronDetails:focus,
#tarteaucitron #tarteaucitronServices .tarteaucitronTitle button:focus,
#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronTitle:focus {
    outline: none
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronTitle {
    margin: 0;
    padding: 5px 10px
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAllow,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronDeny,
.tac_activate .tarteaucitronAllow {
    display: inline-block;
    width: auto;
    padding: 6px 10px;
    border: 0;
    border-radius: 10px;
    background: #647994;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 400;
    text-align: center;
    text-decoration: none;
    cursor: pointer
}

#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronAllow:focus,
#tarteaucitron #tarteaucitronServices .tarteaucitronLine .tarteaucitronDeny:focus,
.tac_activate .tarteaucitronAllow:focus {
    outline: none
}

#tarteaucitron .tarteaucitronH3 {
    font-size: 18px
}

#tarteaucitron #tarteaucitronMainLineOffset .tarteaucitronName {
    width: auto !important;
    margin-top: 4px
}

.tarteaucitronAlertBigTop {
    top: 0
}

.tarteaucitronAlertBigBottom {
    bottom: 0
}

#tarteaucitronRoot #tarteaucitronAlertBig {
    display: none;
    position: fixed;
    z-index: 10000;
    margin: auto;
    border-radius: 7px;
    background: #fff;
    color: black;
    text-align: center;
    box-shadow: 0 4px 21px rgba(0, 0, 0, .12)
}

@media(max-width:989.98px) {
    #tarteaucitronRoot #tarteaucitronAlertBig {
        bottom: 10px;
        right: 10px;
        left: 10px;
        padding: 20px
    }
}

@media(min-width:990px) {
    #tarteaucitronRoot #tarteaucitronAlertBig {
        bottom: 30px;
        right: 30px;
        width: 500px;
        padding: 35px 40px 25px
    }
}

#tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
#tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog {
    cursor: pointer
}

#tarteaucitron #tarteaucitronPrivacyUrl,
#tarteaucitron #tarteaucitronPrivacyUrlDialog {
    background-color: #00bcd4;
    color: black
}

#tarteaucitron #tarteaucitronPrivacyUrl:hover,
#tarteaucitron #tarteaucitronPrivacyUrlDialog:hover {
    background-color: black !important;
    color: #fff !important
}

#tarteaucitronPercentage {
    position: fixed;
    z-index: 2147483644;
    left: 0;
    width: 0;
    height: 5px;
    background: var(--vert) !important
}

.tarteaucitronAlertSmallBottom,
.tarteaucitronAlertSmallTop {
    bottom: 50%;
    transform: translateY(-50%)
}

#tarteaucitronAlertSmall {
    display: none;
    position: fixed;
    z-index: 200;
    right: 30px;
    width: auto;
    padding: 0
}

@media(max-width:989.98px) {
    #tarteaucitronAlertSmall {
        right: 15px;
        bottom: 20px
    }
}

#tarteaucitronAlertSmall #tarteaucitronManager {
    display: inline-block;
    padding: 8px 10px;
    transition: background-color .3s ease;
    border-radius: 10px;
    border: 0;
    background: black;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 400;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer
}

#tarteaucitronAlertSmall #tarteaucitronManager:focus,
#tarteaucitronAlertSmall #tarteaucitronManager:hover {
    outline: none;
    background-color: black
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot {
    display: block;
    width: 100%;
    height: 8px;
    margin-top: 7px;
    margin-bottom: 1px;
    overflow: hidden;
    border-radius: 5px;
    background-color: #647994
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotGreen,
#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotRed,
#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotYellow {
    display: block;
    width: 0;
    height: 100%;
    float: left
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotGreen {
    background-color: var(--vert)
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotYellow {
    background-color: #f9b225
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotRed {
    background-color: #ff5959
}

#tarteaucitronAlertSmall #tarteaucitronCookiesNumber {
    display: inline-block;
    padding: 0 10px;
    background: hsla(0, 0%, 100%, .2);
    color: #fff;
    font-size: 30px;
    vertical-align: top;
    cursor: pointer
}

#tarteaucitronAlertSmall #tarteaucitronCookiesNumber:hover {
    background: hsla(0, 0%, 100%, .3)
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer {
    display: none;
    position: fixed;
    right: 0;
    width: 100%;
    max-width: 500px;
    max-height: 70%
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList {
    height: auto;
    overflow: auto;
    border: 2px solid black;
    background: #fff;
    color: black;
    font-size: 11px;
    text-align: left
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList strong {
    color: black
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesTitle {
    margin-top: 21px;
    padding: 13px 0 9px 13px;
    background: black;
    text-align: left
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesTitle strong {
    color: #fff;
    font-size: 16px
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain {
    padding: 7px 5px 10px;
    background: rgba(51, 51, 51, .1);
    word-wrap: break-word
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain:hover {
    background: rgba(51, 51, 51, .2)
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain a {
    color: black;
    text-decoration: none
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain .tarteaucitronCookiesListLeft {
    display: inline-block;
    width: 50%
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain .tarteaucitronCookiesListLeft a strong {
    color: #ff5959
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain .tarteaucitronCookiesListRight {
    display: inline-block;
    width: 30%;
    margin-left: 10%;
    color: black;
    font-size: 11px;
    vertical-align: top
}

.tac_activate {
    display: table;
    width: 100%;
    height: 100%;
    margin: auto;
    background: black;
    color: #fff;
    font-size: 12px;
    line-height: normal;
    text-align: center
}

.tac_float {
    display: table-cell;
    text-align: center;
    vertical-align: middle
}

.tac_activate .tac_float strong {
    color: #fff
}

ins.adsbygoogle,
ins.ferank-publicite {
    text-decoration: none
}

div.amazon_product {
    width: 120px;
    height: 240px
}

.text {
    display: flex;
    align-items: center
}

.text .gif {
    flex: 0 0 auto;
    width: 82px;
    margin-right: 30px
}

.text #tarteaucitronDisclaimerAlert {
    display: inline-block;
    margin: 0;
    text-align: left;
    font-size: 1.5rem
}

.text #tarteaucitronDisclaimerAlert strong {
    font-weight: 700
}

.buttons {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 20px
}

@media(max-width:989.98px) {
    .buttons {
        flex-wrap: wrap
    }
}

.buttons>* {
    margin: auto
}

.buttons .cookie-link {
    padding: 0;
    border: 0;
    background-color: transparent;
    font-family: Glacial Indifference, sans-serif;
    position: relative;
    text-decoration: none;
    cursor: pointer;
    font-size: 1.3rem;
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    color: #647994;
    font-weight: 700;
    font-size: 1.2rem
}

.buttons .cookie-link:focus {
    outline: none
}

.buttons .cookie-link:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: 100% 50%;
    transition: transform .3s ease;
    border-top: 1px solid
}

@media(min-width:990px) {

    .buttons .cookie-link:focus,
    .buttons .cookie-link:hover {
        outline: none
    }

    .buttons .cookie-link:focus:after,
    .buttons .cookie-link:hover:after {
        transform: scaleX(1);
        transform-origin: 0 50%
    }
}

.buttons .cookie-link:focus,
.buttons .cookie-link:hover {
    text-decoration: none
}

@media(max-width:989.98px) {
    .buttons .tarteaucitronAllow {
        flex: 0 0 auto;
        width: 100%;
        margin-top: 20px
    }
}

.buttons .separator {
    height: 37px;
    border: 0;
    border-left: 1px solid #f6f7f9
}

.tarteaucitronIsAllowed .tarteaucitronDeny,
.tarteaucitronIsDenied .tarteaucitronAllow {
    opacity: .4 !important
}

.tarteaucitronIsAllowed .tarteaucitronAllow,
.tarteaucitronIsDenied .tarteaucitronDeny {
    opacity: 1 !important
}

.tarteaucitronLine .tarteaucitronAllow,
.tarteaucitronLine .tarteaucitronDeny {
    opacity: .4
}

#tarteaucitronInfo {
    display: block;
    position: relative;
    margin: 0 auto 40px;
    color: black;
    text-align: center
}

@media(min-width:990px) {
    #tarteaucitronInfo {
        max-width: 80%
    }
}

#tarteaucitronInfo a {
    color: #fff;
    text-decoration: underline
}

span.tarteaucitronTitle.tarteaucitronH3 {
    margin-top: 12px !important
}

.sticky-menu {
    display: none
}

@media(min-width:770px) {
    .sticky-menu {
        display: inline-block;
        position: fixed;
        z-index: 450;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        transition: background-color .3s ease;
        background-color: #fff;
        box-shadow: 50px 0 60px 50px rgba(0, 0, 0, .25)
    }

    .sticky-menu .indicators {
        display: flex;
        flex-direction: column;
        align-items: center;
        color: black
    }

    @supports((-webkit-clip-path:url(#menuTop)) or (clip-path:url(#menuTop))) {

        .sticky-menu:after,
        .sticky-menu:before {
            content: "";
            display: block;
            position: absolute;
            right: 0;
            width: 100%;
            height: 40px;
            transition: background-color .3s ease;
            background-color: #fff
        }

        .sticky-menu:before {
            top: -39px;
            -webkit-clip-path: url(#menuTop);
            clip-path: url(#menuTop)
        }

        .sticky-menu:after {
            bottom: -39px;
            -webkit-clip-path: url(#menuBottom);
            clip-path: url(#menuBottom)
        }
    }

    .sticky-menu .indicator {
        display: block;
        position: relative;
        width: 26px;
        height: 26px;
        padding: 8.5px;
        border: 0;
        background: none;
        color: currentColor;
        cursor: pointer
    }

    .sticky-menu .indicator:before {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        transform: scale(.8);
        transition: transform .3s ease, background-color .3s ease;
        border-radius: 4.5px;
        background-color: currentColor
    }

    .sticky-menu .indicator.current:before,
    .sticky-menu .indicator.js-current:before {
        transform: scale(1);
        background-color: var(--vert)
    }

    .sticky-menu .indicator.current.js-showlabel .label,
    .sticky-menu .indicator.js-current.js-showlabel .label {
        opacity: 1
    }

    .sticky-menu .indicator:focus {
        outline: none
    }

    .sticky-menu .indicator:hover .label {
        opacity: 1;
        pointer-events: all
    }

    .sticky-menu .indicator .label {
        position: absolute;
        top: 50%;
        right: 0;
        width: 250px;
        padding-right: 40px;
        transform: translateY(-50%);
        transition: opacity .3s ease;
        opacity: 0;
        color: black;
        font-family: Sansation, sans-serif;
        font-size: 1.4rem;
        font-weight: 400;
        text-align: right;
        pointer-events: none;
        mix-blend-mode: exclusion
    }
}

.sticky-menu.over-reverse-section .indicator .label {
    color: #fff
}

.masks {
    position: absolute
}

.socials {
    display: flex;
    align-items: center
}

.socials .social-link {
    padding: 10px;
    color: black;
    font-size: 2rem;
    text-decoration: none
}

.socials .social-link:not(:last-child) {
    margin-right: 20px
}

.socials .social-link .icon {
    transition: transform .3s ease
}

.socials .social-link:hover .icon {
    transform: translateY(-4px)
}

.share-list {
    display: inline-block;
    margin-bottom: 0;
    padding-left: 20px;
    line-height: 0;
    list-style: none
}

.share-list .share-link {
    display: inline-block;
    vertical-align: middle
}

.share-list .share-link a {
    display: inline-block;
    width: 40px;
    height: 40px;
    padding: 10px
}

@media(min-width:990px) {
    body:not(.touch-device) .share-list .share-link.messenger-mobile {
        display: none
    }
}

@media(max-width:989.98px) {
    .share-list .share-link.messenger-desktop {
        display: none
    }
}

body.touch-device .share-list .share-link.messenger-desktop {
    display: none
}

@media(min-width:990px) {
    body:not(.touch-device) .share-list .share-link.whatsapp {
        display: none
    }
}

.share-list .share-link .icon-facebook {
    color: #3d5592
}

.share-list .share-link .icon-twitter {
    color: #4a9cec
}

.share-list .share-link .icon-linkedin {
    color: #0073b0
}

.share-list .share-link .icon {
    font-size: 1.6rem
}

@media(max-width:769.98px) {
    .share-list .share-link .icon {
        font-size: 2rem
    }
}

.share-list .share-link .icon-messenger {
    background: linear-gradient(180deg, #00c6ff 0, #0067ff);
    -webkit-background-clip: text;
    -moz-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.breadcrumb .breadcrumb-item {
    color: currentColor;
    font-size: 1.2rem
}

@media(min-width:990px) {
    .breadcrumb .breadcrumb-item {
        font-size: 1.4rem
    }
}

.breadcrumb .breadcrumb-item.link {
    color: var(--vert);
    font-weight: 400;
    text-decoration: none
}

.breadcrumb .breadcrumb-item.link:hover {
    text-decoration: underline
}

.breadcrumb .breadcrumb-item:not(:last-child) {
    margin-right: 15px
}

.breadcrumb .icon-arrow-breadcrumb {
    margin-right: 15px;
    color: var(--vert);
    font-size: 1rem
}

.page-intro {
    padding-top: 110px;
    padding-bottom: 80px
}

@media(min-width:990px) {
    .page-intro {
        padding-top: 150px;
        padding-bottom: 180px
    }
}

.page-intro:not(.background-image) {
    padding-bottom: 50px
}

.page-intro:not(.background-image)+.content-section,
.page-intro:not(.background-image)+.section {
    padding-top: 0
}

.page-intro .big-title {
    margin-bottom: 0
}

.page-intro .big-title~* {
    margin-top: 40px
}

.page-intro .big-title~.chapo {
    margin-top: 15px
}

.page-intro .chapo {
    max-width: 610px;
    font-family: Sansation, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.56
}

.page-intro.centered .breadcrumb {
    justify-content: center
}

.page-intro.centered .big-title {
    text-align: center
}

.page-intro.centered .chapo {
    margin: 15px auto 0;
    text-align: center
}

.page-intro.background-image {
    position: relative;
    min-height: 450px;
    color: #fff
}

.page-intro.background-image .background {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.page-intro.background-image .background:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .2)
}

.page-intro.background-image .background img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media(min-width:990px) {
    .page-intro.background-image .background img {
        -o-object-position: center center;
        object-position: center center
    }
}

.page-intro.background-image .breadcrumb .icon-arrow-breadcrumb,
.page-intro.background-image .breadcrumb .link {
    color: #fff
}

.form,
form {
    display: block;
    position: relative;
    width: auto;
    text-align: left
}

.form.submitted-once .form-control:invalid,
.form .submitted-once .form-control:invalid,
form.submitted-once .form-control:invalid,
form .submitted-once .form-control:invalid {
    border-color: #ff5959;
    color: #ff5959
}

.form .form-wrapper,
form .form-wrapper {
    position: relative
}

.form textarea,
form textarea {
    resize: none
}

.form textarea.form-control,
form textarea.form-control {
    min-height: 200px;
    padding-top: 19px
}

.form .form-section-title,
form .form-section-title {
    color: black;
    font-size: 2.4rem;
    font-weight: 700
}

.form .uploads,
form .uploads {
    margin-top: 50px
}

.form .form-field.js-hidden,
form .form-field.js-hidden {
    display: none
}

.form .form-field .form-control-label,
form .form-field .form-control-label {
    display: block;
    width: 100%
}

.form .form-field .error,
form .form-field .error {
    display: block;
    margin-top: 3px;
    color: #ff5959;
    font-size: 1.3rem;
    line-height: 1.2
}

.form .form-control-label,
form .form-control-label {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    position: relative;
    margin-bottom: 10px;
    transition: color .3s ease;
    color: black
}

.form .form-control,
form .form-control {
    width: 100%;
    height: 65px;
    padding: 3px 0 2px 20px;
    transition: box-shadow .3s ease, border-color .3s ease;
    border: 1px solid #f6f7f9;
    border-radius: 15px;
    background-color: #f6f7f9;
    box-shadow: 0 0 0 hsla(0, 0%, 100%, 0);
    color: black;
    font-family: Glacial Indifference, sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.4
}

.form .form-control::-webkit-input-placeholder,
form .form-control::-webkit-input-placeholder {
    color: rgba(50, 63, 79, .6)
}

.form .form-control:-moz-placeholder,
.form .form-control::-moz-placeholder,
form .form-control:-moz-placeholder,
form .form-control::-moz-placeholder {
    color: rgba(50, 63, 79, .6)
}

.form .form-control:-ms-input-placeholder,
form .form-control:-ms-input-placeholder {
    color: rgba(50, 63, 79, .6)
}

.form .form-control:hover,
form .form-control:hover {
    border-color: rgba(50, 63, 79, .35);
    cursor: pointer
}

.form .form-control:focus,
form .form-control:focus {
    border-color: var(--vert);
    outline: none;
    color: black
}

.form .form-control:focus:hover,
form .form-control:focus:hover {
    cursor: inherit
}

.form .form-file-control-wrapper,
form .form-file-control-wrapper {
    position: relative;
    cursor: pointer
}

.form .form-file-control-wrapper .file-area,
form .form-file-control-wrapper .file-area {
    display: none
}

@media(min-width:990px) {

    .form .form-file-control-wrapper .file-area,
    form .form-file-control-wrapper .file-area {
        display: flex;
        position: absolute;
        top: 0;
        left: 0;
        align-items: center;
        width: 290px;
        height: 100%;
        padding: 3px 30px;
        border: 1px solid var(--vert);
        border-radius: 15px;
        background-color: #fbfcff;
        color: black;
        font-family: Glacial Indifference, sans-serif;
        font-size: 1.8rem;
        font-weight: 400;
        line-height: 1.4;
        text-decoration: underline;
        pointer-events: none
    }

    .form .form-file-control-wrapper .file-area:after,
    form .form-file-control-wrapper .file-area:after {
        content: "";
        width: 20px;
        height: 20px;
        margin-left: auto;
        background-image: url(../images/form-upload.svg);
        background-size: cover
    }
}

.form .form-file-control-wrapper .form-file-control,
form .form-file-control-wrapper .form-file-control {
    display: block;
    width: 100%
}

@media(min-width:990px) {

    .form .form-file-control-wrapper .form-file-control,
    form .form-file-control-wrapper .form-file-control {
        height: 65px;
        padding-left: 310px;
        line-height: 55px
    }

    .form .form-file-control-wrapper .form-file-control::-webkit-file-upload-button,
    form .form-file-control-wrapper .form-file-control::-webkit-file-upload-button {
        display: none
    }

    .form .form-file-control-wrapper .form-file-control:hover+.file-area,
    form .form-file-control-wrapper .form-file-control:hover+.file-area {
        border-color: var(--vert)
    }

    .form .form-file-control-wrapper .form-file-control:focus,
    form .form-file-control-wrapper .form-file-control:focus {
        outline: none
    }

    .form .form-file-control-wrapper .form-file-control:focus+.file-area,
    form .form-file-control-wrapper .form-file-control:focus+.file-area {
        border-color: var(--vert)
    }
}

.form .submit-container,
form .submit-container {
    margin-top: 20px
}

.form .submit-container>:not(:last-child),
form .submit-container>:not(:last-child) {
    margin-bottom: 15px
}

.form .optional-label,
form .optional-label {
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    color: var(--marron)
}

.form .checkbox-container,
form .checkbox-container {
    display: flex;
    position: relative;
    align-items: center;
    width: auto;
    color: black
}

.form .checkbox-container .label,
form .checkbox-container .label {
    display: inline-block;
    position: relative;
    top: 1px;
    margin-left: 15px;
    transition: color .3s ease;
    color: black;
    font-size: 1.6rem;
    line-height: 1.4
}

.form .checkbox-container .label a,
form .checkbox-container .label a {
    color: black;
    text-decoration: underline
}

.form .checkbox-container .label sup,
form .checkbox-container .label sup {
    color: #dce0e4;
    font-size: 1rem
}

.form .checkbox-container input,
form .checkbox-container input {
    position: absolute;
    top: 20px;
    left: 6px;
    width: 1px !important;
    height: 1px !important;
    opacity: 0
}

.form .checkbox-container input:checked~.checkmark:after,
form .checkbox-container input:checked~.checkmark:after {
    transform: translate(-50%, -50%) scale(1)
}

.form .checkbox-container .checkmark,
form .checkbox-container .checkmark {
    display: inline-block;
    position: relative;
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    margin-top: 3px;
    margin-bottom: auto;
    transition: border-color .3s ease;
    border: 0;
    border-radius: 3px;
    background-color: #dce0e4;
    vertical-align: middle
}

.form .checkbox-container .checkmark:after,
form .checkbox-container .checkmark:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform .3s ease;
    border-radius: 3px;
    background-color: var(--vert)
}

.form .checkbox-container.reverse .checkmark,
form .checkbox-container.reverse .checkmark {
    order: 2
}

.form .checkbox-container.reverse .label,
form .checkbox-container.reverse .label {
    margin-right: 15px;
    margin-left: 0
}

.form .checkbox-container:hover,
form .checkbox-container:hover {
    cursor: pointer
}

.form .radio-container,
form .radio-container {
    display: inline-flex;
    position: relative;
    align-items: center;
    width: auto;
    margin: 0;
    color: currentColor
}

.form .radio-container .label,
form .radio-container .label {
    display: inline-block;
    position: relative;
    top: 1px;
    margin-left: 1rem;
    transition: color .3s ease;
    color: currentColor;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5
}

.form .radio-container .label sup,
form .radio-container .label sup {
    color: #dce0e4;
    font-size: 1rem
}

.form .radio-container input,
form .radio-container input {
    position: absolute;
    top: 20px;
    left: 10px;
    width: 1px !important;
    height: 1px !important;
    opacity: 0
}

.form .radio-container input:checked~.checkmark:after,
form .radio-container input:checked~.checkmark:after {
    transform: translate(-50%, -50%) scale(1)
}

.form .radio-container input:focus~.checkmark,
form .radio-container input:focus~.checkmark {
    border-color: var(--vert)
}

.form .radio-container .checkmark,
form .radio-container .checkmark {
    display: inline-block;
    position: relative;
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    margin-top: 2px;
    margin-bottom: auto;
    border: 0;
    border-radius: 50%;
    background-color: #dce0e4;
    vertical-align: middle
}

.form .radio-container .checkmark:after,
form .radio-container .checkmark:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform .3s ease;
    border-radius: 50%;
    background-color: var(--vert)
}

.form .radio-container:hover,
form .radio-container:hover {
    cursor: pointer
}

.form .form-control-select,
form .form-control-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url(../images/chevron-select.svg);
    background-repeat: no-repeat;
    background-position: right 30px center;
    background-size: 9px auto
}

.form .form-control-select:invalid,
form .form-control-select:invalid {
    color: rgba(50, 63, 79, .6)
}

.form .multi-inputs,
form .multi-inputs {
    margin-bottom: 0
}

@media(min-width:770px) {

    .form .multi-inputs .multi-inputs-wrapper,
    form .multi-inputs .multi-inputs-wrapper {
        display: flex;
        flex-wrap: wrap;
        margin-right: -15px;
        margin-left: -15px
    }
}

.form .multi-inputs .multi-inputs-wrapper .form-control-wrapper,
form .multi-inputs .multi-inputs-wrapper .form-control-wrapper {
    margin-bottom: 30px
}

@media(min-width:770px) {

    .form .multi-inputs .multi-inputs-wrapper .form-control-wrapper,
    form .multi-inputs .multi-inputs-wrapper .form-control-wrapper {
        flex: 0 1 auto;
        width: 50%;
        padding: 0 15px
    }
}

.form .input-with-suffix,
form .input-with-suffix {
    position: relative
}

.form .input-with-suffix .form-control,
form .input-with-suffix .form-control {
    padding-right: 40px
}

.form .input-with-suffix .suffix,
form .input-with-suffix .suffix {
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    color: rgba(50, 63, 79, .6);
    font-size: 1.6rem
}

.form .form-row,
form .form-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    width: auto;
    margin-right: -15px;
    margin-left: -15px
}

.form .form-row>.form-field,
form .form-row>.form-field {
    width: 100%;
    margin-bottom: 30px;
    padding: 0 15px
}

@media(min-width:770px) {

    .form .form-row>.form-field,
    form .form-row>.form-field {
        flex: 0 1 auto;
        width: 50%
    }
}

@media(min-width:770px) {

    .form .form-row>.form-field.fullwidth,
    form .form-row>.form-field.fullwidth {
        width: 100%
    }
}

.form .form-row>.form-field.multi-inputs,
form .form-row>.form-field.multi-inputs {
    width: 100%
}

.form .form-row>.form-field.zip,
form .form-row>.form-field.zip {
    flex: 0 0 auto;
    width: 140px
}

.form .form-row>.form-field.zip+.country,
form .form-row>.form-field.zip+.country {
    width: calc(100% - 140px)
}

@media(min-width:770px) {

    .form .form-row>.form-field.zip+.country,
    form .form-row>.form-field.zip+.country {
        width: calc(50% - 140px)
    }
}

.form .form-control-wrapper,
form .form-control-wrapper {
    position: relative
}

.form .form-control-wrapper.select:before,
form .form-control-wrapper.select:before {
    display: none
}

.form .form-control-wrapper .message,
form .form-control-wrapper .message {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    margin-top: 2px;
    color: #f6f7f9;
    font-size: 1.2rem;
    line-height: 1.2
}

.form .multiple-boxes>:not(:last-child),
form .multiple-boxes>:not(:last-child) {
    margin-bottom: 10px
}

.form .multiple-boxes.horizontal,
form .multiple-boxes.horizontal {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.form .multiple-boxes.horizontal>:not(:last-child),
form .multiple-boxes.horizontal>:not(:last-child) {
    margin-right: 30px;
    margin-bottom: 0
}

.form .success,
form .success {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    opacity: 0;
    pointer-events: none
}

.form .success .message,
form .success .message {
    margin-bottom: 0;
    font-size: 1.8rem
}

.form .success .message.js-hidden,
form .success .message.js-hidden {
    display: none
}

.form .form-footer,
form .form-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.form .form-footer .back-link,
form .form-footer .back-link {
    margin-top: 30px;
    margin-right: 20px
}

.form .form-footer .next-btn,
form .form-footer .next-btn {
    margin-top: 30px;
    margin-left: auto
}

.form .errors:not(:empty),
form .errors:not(:empty) {
    margin-top: 20px
}

.form .errors>*,
form .errors>* {
    margin-bottom: 5px;
    color: #ff5959;
    font-size: 1.3rem
}

.form.js-success .fields,
form.js-success .fields {
    opacity: 0;
    pointer-events: none
}

.form.js-success .success,
form.js-success .success {
    opacity: 1;
    pointer-events: all
}

.simple-select {
    width: 100%;
    height: 50px;
    padding: 2px 26px;
    transition: box-shadow .3s ease;
    border: 1px solid var(--vert);
    border-radius: 4px;
    background-color: #fff;
    background-image: url(../images/chevron-select.svg);
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 9px auto;
    color: black;
    font-family: Glacial Indifference, sans-serif;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.simple-select:not(.tabs-select-mobile) {
    font-size: 1.3rem;
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase
}

.simple-select:focus {
    outline: none
}
.rte-content img {
    width: auto
}

@media(min-width:990px) {

    body:not(.touch-device) .btn:focus,
    body:not(.touch-device) .btn:hover {
        text-decoration: none
    }

    body:not(.touch-device) .btn:focus .label,
    body:not(.touch-device) .btn:hover .label {
        transform: translateX(10px);
        transition: transform .3s cubic-bezier(.65, .05, .36, 1);
        transition-delay: .1s
    }

    body:not(.touch-device) .btn:focus .icon.before,
    body:not(.touch-device) .btn:hover .icon.before {
        transform: translateX(0);
        transition-delay: .1s;
        opacity: 1
    }

    body:not(.touch-device) .btn:focus .icon.after,
    body:not(.touch-device) .btn:hover .icon.after {
        transform: translateX(20px);
        transition-delay: 0s;
        opacity: 0
    }
}

.btn.white-label .label {
    color: #fff
}

.btn-arrow {
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    display: inline-flex;
    color: currentColor;
    text-decoration: none
}

.btn-arrow,
.btn-arrow .arrow-icon {
    font-size: 1.8rem;
    align-items: center
}

.btn-arrow .arrow-icon {
    display: flex;
    justify-content: space-around;
    width: 60px;
    height: 60px;
    transition: transform .5s cubic-bezier(.4, 0, .2, 1)
}

@media(min-width:770px) {
    body:not(.touch-device) .btn-arrow:hover .arrow-icon {
        transform: translateX(15px)
    }
}

@media(max-width:769.98px) {
    .btn-arrow .arrow-icon {
        width: 44px;
        height: 44px;
        margin-left: 15px;
        border: 1px solid var(--vert);
        border-radius: 22px;
        font-size: 1.2rem
    }
}

body.touch-device .btn-arrow .arrow-icon {
    width: 44px;
    height: 44px;
    margin-left: 15px;
    border: 1px solid var(--vert);
    border-radius: 22px;
    font-size: 1.2rem
}

.simple-link {
    position: relative;
    transition: color .3s ease;
    color: var(--vert);
    text-decoration: none;
    cursor: pointer
}

.simple-link:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: 100% 50%;
    transition: transform .3s ease;
    border-top: 1px solid
}

@media(min-width:990px) {

    .simple-link:focus,
    .simple-link:hover {
        outline: none
    }

    .simple-link:focus:after,
    .simple-link:hover:after {
        transform: scaleX(1);
        transform-origin: 0 50%
    }
}

.simple-link:focus,
.simple-link:hover {
    color: var(--vert);
    text-decoration: none
}

.circle-cursor-btn {
    display: inline-block;
    position: relative;
    width: 52px;
    height: 52px;
    padding: 0;
    border: 0;
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #fff;
    cursor: pointer
}

.circle-cursor-btn .icon,
.circle-cursor-btn .label {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.4rem
}

.circle-cursor-btn:focus {
    outline: none
}

.circle-cursor-btn.light-border:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    border-radius: 50%;
    opacity: .2
}

.circle-cursor-btn.fullscreen-btn .icon {
    font-size: .9rem
}

.circle-cursor-btn.fullscreen-btn .icon-arrow-bottom-left {
    top: 62%;
    left: 38%
}

.circle-cursor-btn.fullscreen-btn .icon-arrow-top-right {
    top: 38%;
    left: 62%
}

.circle-cursor-btn.fullscreen-btn.reverse .icon-arrow-top-right {
    top: 62%;
    left: 38%
}

.circle-cursor-btn.fullscreen-btn.reverse .icon-arrow-bottom-left {
    top: 38%;
    left: 62%
}

.carousel-dots {
    display: flex;
    align-items: center;
    justify-content: center
}

.carousel-dots .dot {
    padding: 5px;
    border: 0;
    background: transparent
}

.carousel-dots .dot:before {
    content: "";
    display: block;
    width: 15px;
    padding-bottom: 100%;
    transform: scale(.6);
    transition: transform .3s ease, background-color .3s ease;
    border-radius: 50%;
    background-color: #647994
}

.carousel-dots .dot.current:before {
    transform: scale(1);
    background-color: var(--vert)
}

.carousel-dots .dot:focus {
    outline: none
}

.image-card {
    position: relative;
    overflow: hidden;
    border-radius: 8px
}

.image-card .image-container {
    position: relative;
    width: 100%
}

@media(min-width:990px) {
    .image-card .image-container {
        height: calc(100vh - 320px);
        max-height: 420px
    }
}

@media(max-width:989.98px) {
    .image-card .image-container {
        padding-top: 150%
    }
}

.image-card .image-container:before {
    content: "";
    position: absolute;
    z-index: 5;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, .7) 0, transparent 60%)
}

.image-card .image-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.image-card .content {
    position: absolute;
    z-index: 10;
    bottom: 0;
    width: 100%;
    padding: 30px;
    color: #fff
}

@media(min-width:990px) {
    .image-card .content {
        padding: 40px
    }
}

.image-card .content .title {
    margin-bottom: 0;
    font-family: Sansation, sans-serif;
    font-size: 3rem;
    line-height: 1.4;
    word-break: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto
}

.image-card .content .title .number {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin-top: -4px;
    margin-right: 15px;
    transition: border-color .3s ease, color .3s ease;
    border: 1px solid #fff;
    border-radius: 50%;
    color: #fff;
    font-family: Glacial Indifference, sans-serif;
    line-height: 29px;
    text-align: center;
    vertical-align: middle
}

.image-card .content .texte {
    margin-bottom: 0;
    font-size: 1.7rem
}

.image-card .content .link {
    display: block;
    position: absolute;
    top: 368px;
    left: 223px;
    text-decoration: none
}

.image-card .content .link:after {
    content: "";
    position: absolute;
    z-index: -1;
    top: calc(50% - 2px);
    left: 50%;
    width: 52px;
    height: 52px;
    transform: translate(-50%, -50%);
    transition: width .3s ease, height .3s ease;
    border-radius: 50%;
    background-color: #fff
}

.image-card .content .link:hover:after {
    width: 68px;
    height: 68px
}

.image-card .content .link svg {
    position: relative;
    top: 0;
    left: 0
}

.image-card.text-top .image-container:before {
    top: 0;
    bottom: auto;
    background: linear-gradient(180deg, rgba(0, 0, 0, .7) 0, transparent 60%)
}

.image-card.text-top .content {
    top: 0;
    bottom: auto
}

.image-card.full .content {
    display: flex;
    top: 0;
    flex-direction: column
}

.image-card.full .content .title {
    margin-bottom: auto
}

.image-card.full .image-container:before {
    background: rgba(0, 0, 0, .45)
}

.modal-container {
    display: flex;
    position: fixed;
    z-index: 10000;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    align-items: flex-start;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    transition: visibility 0s linear
}

.modal-container:not(.visible) {
    visibility: hidden;
    overflow-y: hidden;
    transition: visibility 0s linear .5s;
    pointer-events: none
}

.modal-container:not(.visible) * {
    pointer-events: none
}

.modal-container:not(.visible) iframe {
    display: none
}

.modal-container:not(.visible) .close-btn,
.modal-container:not(.visible) .overlay {
    opacity: 0
}

.modal-container:not(.visible) .modal {
    transform: translateY(20px);
    opacity: 0
}

.modal-container .overlay {
    position: fixed;
    z-index: -1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: opacity .3s ease;
    background-color: rgba(0, 0, 0, .6);
    cursor: pointer
}

.modal-container .modal {
    position: relative;
    margin: auto;
    transition: opacity .3s ease, transform .3s ease
}

.modal-close-btn {
    position: absolute;
    z-index: 1000;
    top: 20px;
    right: 20px;
    padding: 10px;
    cursor: pointer
}

.modal-close-btn .label {
    display: inline-block;
    margin-right: 2rem;
    color: #fff;
    font-size: 1.6rem;
    vertical-align: middle
}

.modal-close-btn .cross {
    display: inline-block;
    position: relative;
    width: 28px;
    height: 28px;
    color: var(--vert);
    vertical-align: middle
}

.modal-close-btn .cross:after,
.modal-close-btn .cross:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 2px;
    border-radius: 1px;
    background-color: currentColor
}

.modal-close-btn .cross:after {
    transform: translate(-50%, -50%) rotate(45deg)
}

.modal-close-btn .cross:before {
    transform: translate(-50%, -50%) rotate(-45deg)
}

@media(max-width:989.98px) {
    .modal-close-btn {
        top: 30px;
        right: 30px
    }
}

.lateral-modal-container:not(.visible) .overlay {
    opacity: 0
}

.lateral-modal-container:not(.visible) .modal {
    transform: translateX(-100%);
    opacity: 1
}

.lateral-modal-container .overlay {
    background-color: rgba(0, 0, 0, .5)
}

.lateral-modal-container .modal {
    width: 90vw;
    max-width: 720px;
    height: 100%;
    margin-left: 0;
    padding: 30px 20px;
    overflow: auto;
    transition: transform .5s ease;
    background-color: #fff
}

.lateral-modal-container .modal .modal-content {
    min-height: 100%
}

@media(min-width:770px) {
    .lateral-modal-container .modal {
        padding: 0
    }
}

@media(max-width:769.98px) {
    .lateral-modal-container .modal {
        width: 100vw;
        padding: 80px 30px
    }
}

.lateral-modal-container .close-btn .cross {
    color: #fff
}

.video-modal-container {
    z-index: 10100
}

.video-modal-container .modal-close-btn {
    top: -40px;
    right: -40px
}

@media(max-width:989.98px) {
    .video-modal-container .modal-close-btn {
        top: -50px;
        right: -10px
    }
}

.video-modal-container .modal {
    width: 90%;
    background-color: #000
}

@media(min-aspect-ratio:16/9) {
    .video-modal-container .modal {
        width: 120vmin
    }
}

.spinner {
    position: relative;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    margin: 0 auto
}

.spinner:after,
.spinner:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-animation: sk-bounce 2s ease-in-out infinite;
    animation: sk-bounce 2s ease-in-out infinite;
    border-radius: 50%;
    opacity: .6;
    background-color: var(--vert)
}

.spinner:after {
    -webkit-animation-delay: -1s;
    animation-delay: -1s
}

@keyframes sk-bounce {

    0%,
    to {
        transform: scale(0)
    }

    50% {
        transform: scale(1)
    }
}

.bottom-link-cont {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 120px 15px;
    text-align: center
}

@media(max-width:989.98px) {
    .bottom-link-cont {
        padding: 80px 20px
    }
}

.bottom-link-cont.w-medium {
    max-width: 800px;
    margin: 0 auto
}

.bottom-link-cont.w-large {
    max-width: 900px;
    margin: 0 auto
}

.bottom-link-cont .surtitre {
    opacity: .5;
    color: black;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase
}

.bottom-link-cont .image-container {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 50px
}

.bottom-link-cont .image-container .image {
    width: 320px;
    height: auto
}

.bottom-link-cont .bottom-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0;
    border: none;
    background: none;
    color: var(--vert);
    font-size: 5.5rem;
    text-align: left;
    text-decoration: none;
    cursor: pointer
}

@media(max-width:989.98px) {
    .bottom-link-cont .bottom-link {
        font-size: 3.2rem
    }
}

.bottom-link-cont .bottom-link:focus {
    outline: none
}

.bottom-link-cont .bottom-link .icon {
    margin-left: 20px;
    transition: transform .5s cubic-bezier(.215, .61, .355, 1);
    font-size: .7em
}

.bottom-link-cont .bottom-link:hover .icon {
    transform: translateX(.4em)
}

.products-panel {
    position: fixed;
    z-index: 10000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.products-panel:not(.js-visible) {
    display: none;
    pointer-events: none
}

.products-panel .modal-close-btn .cross {
    color: #fff
}

@media(max-width:989.98px) {
    .products-panel .modal-close-btn .cross {
        color: black
    }
}

@media(max-width:989.98px) {
    .products-panel .modal-close-btn {
        top: auto;
        right: 20px;
        bottom: 30px;
        padding: 15px;
        border-radius: 29px;
        background-color: #fff;
        line-height: 0
    }
}

body:not(.touch-device) .products-panel.js-visible-ok .push-robot:hover .content {
    transform: translateY(0)
}

body:not(.touch-device) .products-panel.js-visible-ok .push-robot:hover .image {
    transform: scale(1)
}

body:not(.touch-device) .products-panel.js-visible-ok .push-robot:hover .baseline,
body:not(.touch-device) .products-panel.js-visible-ok .push-robot:hover .btn {
    opacity: 1
}

.products-panel-btn {
    display: flex;
    position: fixed;
    z-index: 480;
    bottom: 30px;
    left: 30px;
    align-items: center;
    padding: 0;
    transition: opacity .3s ease;
    border: 0;
    background-color: transparent;
    color: var(--vert);
    font-family: Glacial Indifference, sans-serif;
    text-decoration: none;
    cursor: pointer;
    pointer-events: none
}

@media(max-width:989.98px) {
    .products-panel-btn {
        left: 20px
    }
}

.products-panel-btn.hidden {
    opacity: 0;
    pointer-events: none
}

.products-panel-btn:before {
    content: "";
    display: block;
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;
    width: 70px;
    height: 100%;
    transition: width .3s ease;
    border-radius: 35px;
    background-color: #fff;
    box-shadow: 5px 10px 20px rgba(0, 0, 0, .1)
}

@media(max-width:989.98px) {
    .products-panel-btn:before {
        width: 58px;
        border-radius: 29px
    }
}

.products-panel-btn .circle {
    position: relative;
    width: 70px;
    height: 70px;
    overflow: hidden;
    border-radius: 50%;
    background-color: var(--vert);
    color: #fff;
    pointer-events: all
}

@media(max-width:989.98px) {
    .products-panel-btn .circle {
        width: 58px;
        height: 58px
    }
}

.products-panel-btn .circle .icon,
.products-panel-btn .circle .logo-o-svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: transform .3s ease, opacity .3s ease
}

.products-panel-btn .circle .icon {
    transform: translate(-50%, -50%) translateX(-70px);
    font-size: 2rem
}

@media(max-width:989.98px) {
    .products-panel-btn .circle .icon {
        transform: translate(-50%, -50%) translateX(-58px)
    }
}

.products-panel-btn .circle .logo-o-svg {
    width: 30px;
    height: auto
}

@media(max-width:989.98px) {
    .products-panel-btn .circle .logo-o-svg {
        width: 20px
    }
}

.products-panel-btn .label {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    padding: 0 40px 0 20px;
    transition: transform .3s ease, opacity .3s ease;
    opacity: 0;
    color: var(--vert)
}

.products-panel-btn:focus,
.products-panel-btn:hover {
    outline: none
}

@media(min-width:990px) {

    body:not(.touch-device) .products-panel-btn:focus,
    body:not(.touch-device) .products-panel-btn:hover {
        pointer-events: all
    }

    body:not(.touch-device) .products-panel-btn:focus:before,
    body:not(.touch-device) .products-panel-btn:hover:before {
        width: 100%
    }

    body:not(.touch-device) .products-panel-btn:focus .label,
    body:not(.touch-device) .products-panel-btn:hover .label {
        transform: translateX(0);
        transition-delay: .3s ease;
        opacity: 1
    }

    body:not(.touch-device) .products-panel-btn:focus .circle .icon,
    body:not(.touch-device) .products-panel-btn:hover .circle .icon {
        transform: translate(-50%, -50%) translateX(0)
    }

    body:not(.touch-device) .products-panel-btn:focus .circle .logo-o-svg,
    body:not(.touch-device) .products-panel-btn:hover .circle .logo-o-svg {
        transform: translate(-50%, -50%) translateX(70px)
    }
}

.triptique-products {
    display: flex;
    align-items: stretch;
    height: 100%
}

@media(max-width:989.98px) {
    .triptique-products {
        flex-direction: column
    }
}

.triptique-products .triptique-item {
    flex: 1 1 0%
}

.triptique-products .push-robot {
    display: flex;
    position: relative;
    z-index: 0;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    height: 100%;
    overflow: hidden;
    color: #fff;
    text-decoration: none
}

@media(min-width:990px) {
    .triptique-products .push-robot {
        align-items: center;
        justify-content: center
    }
}

.triptique-products .push-robot .content {
    padding: 30px 20px;
    transition: transform .5s ease
}

@media(min-width:990px) {
    .triptique-products .push-robot .content {
        transform: translateY(40px);
        text-align: center
    }
}

.triptique-products .push-robot:before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    background-color: rgba(0, 0, 0, .35)
}

.triptique-products .push-robot .image {
    position: absolute;
    z-index: -2;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    -o-object-fit: cover;
    object-fit: cover;
    transform: scale(1.05);
    transition: transform .5s ease
}

.triptique-products .push-robot .name {
    font-family: Sansation, sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
    font-size: 4rem;
    font-weight: 700
}

@media(min-width:990px) {
    .triptique-products .push-robot .name {
        font-size: 7.5rem
    }
}

.triptique-products .push-robot .baseline {
    margin-top: 0;
    font-family: Sansation, sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 0;
    transition: transform .5s ease, opacity .5s ease;
    font-size: 1.8rem;
    font-weight: 700
}

@media(min-width:990px) {
    .triptique-products .push-robot .baseline {
        transform: translateY(3px);
        opacity: 0;
        font-size: 2rem
    }
}

.triptique-products .push-robot .btn {
    margin-top: 40px;
    transition: transform .5s ease, opacity .5s ease
}

@media(max-width:989.98px) {
    .triptique-products .push-robot .btn {
        position: absolute;
        top: 0;
        right: 20px;
        width: 54px;
        height: 54px;
        padding: 0;
        color: #fff
    }

    .triptique-products .push-robot .btn .icon.before,
    .triptique-products .push-robot .btn .label {
        display: none
    }
}

@media(min-width:990px) {
    .triptique-products .push-robot .btn {
        opacity: 0
    }
}

.filters {
    margin-bottom: -10px;
    padding: 20px 0
}

@media(min-width:990px) {
    .filters {
        margin-bottom: -20px
    }
}

.filters .single-filter {
    all: unset;
    display: inline-block;
    position: relative;
    margin-right: 10px;
    margin-bottom: 10px;
    padding: 0;
    overflow: hidden;
    border: none;
    border-radius: 1em;
    background: none;
    font-size: 1.6rem
}

@media(min-width:990px) {
    .filters .single-filter {
        margin-right: 20px;
        margin-bottom: 20px;
        font-size: 2rem
    }
}

.filters .single-filter .label { padding: .8rem 2rem; transition: background-color .3s ease, color .3s ease;}

.filters .single-filter:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -15%;
    left: -15%;
    width: 130%;
    height: 130%;
    transform: scale(0);
    transform-origin: 50% 50%;
    transition: transform .5s cubic-bezier(.215, .61, .355, 1);
    border-radius: 100px;
    background-color: #f6f7f9
}

.filters .single-filter input {
    position: absolute;
    width: 0;
    height: 0;
    opacity: 0;
    cursor: pointer
}

.filters .single-filter input:checked~.label {
    background-color: var(--vert);
    color: #fff
}

.filters .single-filter:hover {
    cursor: pointer
}

.filters .single-filter:hover:before {
    transform: scale(1)
}

.filters .single-filter.active {
    pointer-events: none
}

.filters .single-filter.active .label {
    background-color: var(--marron);
    color: #fff
}

.filters .single-filter.disable {
    opacity: .3;
    pointer-events: none
}

.follow-us-cont {
    text-align: center
}

.follow-us-cont .follow-us-title {
    margin-bottom: 20px
}

.follow-us-cont .socials {
    justify-content: center
}

.pagination-container {
    text-align: center
}

.pagination {
    display: inline-flex;
    margin: 80px auto 0
}

.pagination button {
    border: 0;
    background-color: transparent
}

.pagination .dots,
.pagination .nav-btn,
.pagination .page-number {
    display: block;
    position: relative;
    z-index: 1;
    width: 50px;
    height: 50px;
    color: black;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 50px;
    text-align: center;
    text-decoration: none
}

.pagination .dots {
    width: 30px
}

.pagination .nav-btn,
.pagination .page-number {
    transition: opacity .3s cubic-bezier(.4, 0, .2, 1), color .3s cubic-bezier(.4, 0, .2, 1)
}

.pagination .nav-btn .icon,
.pagination .page-number .icon {
    margin-bottom: 2px;
    font-size: 1.2rem;
    vertical-align: middle
}

.pagination .nav-btn.current,
.pagination .nav-btn:not(:disabled):hover:not(.current),
.pagination .page-number.current,
.pagination .page-number:not(:disabled):hover:not(.current) {
    color: var(--vert)
}

.pagination .nav-btn:not(:disabled):hover:not(.current):before,
.pagination .page-number:not(:disabled):hover:not(.current):before {
    opacity: 1
}

.pagination .nav-btn.disabled,
.pagination .page-number.disabled {
    opacity: .2
}

.form-newsletter-small {
    display: flex;
    flex-direction: column;
    width: 100%
}

.form-newsletter-small label {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase
}

.form-newsletter-small .input-button-container {
    position: relative;
    margin-top: 5px
}

.newsletter-modal-container {
    z-index: 10100
}

.newsletter-modal-container .modal {
    display: flex;
    align-items: stretch;
    padding: 0;
    background-color: #fff
}

.newsletter-modal-container .modal .newsletter-modal-title {
    margin-bottom: 40px;
    font-size: 3.4rem
}

@media(max-width:989.98px) {
    .newsletter-modal-container .modal .newsletter-modal-title {
        width: calc(100% - 40px)
    }
}

.newsletter-modal-container .modal .modal-close-btn {
    top: 30px;
    right: 60px
}

@media(max-width:989.98px) {
    .newsletter-modal-container .modal .modal-close-btn {
        top: 20px;
        right: 20px
    }
}

.newsletter-modal-container .modal .modal-close-btn span {
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    margin-right: 10px;
    color: var(--vert)
}

@media(max-width:989.98px) {
    .newsletter-modal-container .modal .modal-close-btn span {
        display: none
    }
}

.newsletter-modal-container .modal .modal-content {
    flex: 1 1 auto;
    padding: 70px 40px 70px 70px
}

@media(max-width:769.98px) {
    .newsletter-modal-container .modal .modal-content {
        padding: 0
    }

    .newsletter-modal-container .modal .modal-content>* {
        padding: 20px
    }
}

.newsletter-modal-container .modal .image-container {
    position: relative;
    flex: 0 0 370px;
    overflow: hidden
}

@media(max-width:1249.98px) {
    .newsletter-modal-container .modal .image-container {
        display: none
    }
}

.newsletter-modal-container .modal .image-container img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    min-width: 100%;
    height: auto;
    min-height: 100%;
    transform: translate(-50%, -50%);
    -o-object-fit: cover;
    object-fit: cover
}

.newsletter-modal-container form .submit-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: calc(100% - 30px);
    padding-top: 30px;
    border-top: 1px solid #f6f7f9
}

@media(max-width:769.98px) {
    .newsletter-modal-container form .submit-container {
        flex-direction: column;
        align-items: flex-start;
        width: 100%
    }
}

.newsletter-modal-container form .submit-container .checkbox-container {
    font-size: 1.5rem
}

@media(min-width:770px) {
    .newsletter-modal-container form .submit-container .checkbox-container {
        margin-bottom: 0
    }
}

.newsletter-modal-container form .submit-container .checkbox-container .checkmark {
    background-color: #f6f7f9
}

.input-button-container {
    display: flex;
    position: relative;
    align-items: stretch;
    width: 100%
}

@media(min-width:990px) {
    .input-button-container {
        max-width: 330px
    }
}

.input-button-container .newsletter-submit {
    display: flex;
    align-items: center;
    padding: 0;
    transition: border-color .3s ease;
    border: 0;
    border-bottom: 1px solid rgba(50, 63, 79, .3);
    background: transparent;
    color: var(--vert);
    font-family: Glacial Indifference, sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer
}

.input-button-container .newsletter-submit .icon {
    margin-bottom: 2px;
    margin-left: 10px;
    transition: transform .3s ease
}

.input-button-container .newsletter-submit:focus,
.input-button-container .newsletter-submit:hover {
    border-bottom-color: var(--vert);
    outline: none
}

.input-button-container .newsletter-submit:focus .icon,
.input-button-container .newsletter-submit:hover .icon {
    transform: translateX(5px)
}

.input-button-container input {
    width: 100%;
    padding: 12px 60px 12px 0;
    transition: border-color .3s ease;
    border: 0;
    border-bottom: 1px solid rgba(50, 63, 79, .3);
    background: transparent;
    color: black;
    font-family: Glacial Indifference, sans-serif;
    font-size: 1.6rem;
    line-height: 1.8
}

.input-button-container input::-webkit-input-placeholder {
    color: rgba(50, 63, 79, .3)
}

.input-button-container input:-moz-placeholder,
.input-button-container input::-moz-placeholder {
    color: rgba(50, 63, 79, .3)
}

.input-button-container input:-ms-input-placeholder {
    color: rgba(50, 63, 79, .3)
}

.input-button-container input:focus {
    border-bottom-color: var(--vert);
    outline: none
}

.input-button-container input:-webkit-autofill,
.input-button-container input:-webkit-autofill:focus,
.input-button-container input:-webkit-autofill:hover {
    -webkit-transition: background-color 5000s ease-in-out 0s;
    transition: background-color 5000s ease-in-out 0s;
    -webkit-text-fill-color: black;
    -webkit-box-shadow: 0 0 0 10px #fff inset;
    caret-color: black
}

form .form-row .form-field.products-checkboxes {
    position: relative;
    margin-bottom: 0;
    padding-top: 40px
}

@media(min-width:1250px) {
    form .form-row .form-field.products-checkboxes {
        display: flex;
        align-items: center;
        justify-content: space-between
    }
}

form .form-row .form-field.products-checkboxes:before {
    content: "";
    position: absolute;
    top: 0;
    left: 15px;
    width: calc(100% - 30px);
    height: 1px;
    background-color: #f6f7f9
}

@media(max-width:769.98px) {
    form .form-row .form-field.products-checkboxes:before {
        left: 0;
        width: 100%
    }
}

@media(max-width:1249.98px) {
    form .form-row .form-field.products-checkboxes .multiple-boxes {
        margin-top: 20px
    }
}

@media(min-width:1250px) {
    form .form-row .form-field.products-checkboxes .multiple-boxes {
        padding-left: 15px
    }
}

form .form-row .form-field.products-checkboxes .multiple-boxes .form-field {
    flex: 1 1 auto
}

form .form-row .form-field.products-checkboxes .multiple-boxes .form-field .checkbox-container {
    width: 100%
}

form .form-row .form-field.products-checkboxes .form-control-label {
    margin-bottom: 0;
    padding-right: 15px;
    font-size: 1.6rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none
}

form .form-row .form-field.products-checkboxes .form-control-label .optional-label {
    display: none
}

form .form-row .form-field.products-checkboxes .checkbox-container {
    display: inline-block;
    flex: 1 1 auto;
    padding: 9px 0;
    text-align: center
}

form .form-row .form-field.products-checkboxes .checkbox-container .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin-top: 0;
    transition: background-color .3s ease;
    border-radius: 10px;
    background-color: #f6f7f9
}

form .form-row .form-field.products-checkboxes .checkbox-container .label {
    top: -2px;
    margin-top: 0;
    margin-left: 0;
    transition: color .3s ease;
    font-weight: 700
}

form .form-row .form-field.products-checkboxes .checkbox-container input:checked~.checkmark {
    background-color: var(--vert)
}

form .form-row .form-field.products-checkboxes .checkbox-container input:checked~.label {
    color: #fff
}

form .form-row .form-field.products-checkboxes .checkbox-container input:checked~.checkmark:after {
    display: none
}

@media(min-width:1250px) {

    form .form-row .form-field.products-checkboxes .form-control-label,
    form .form-row .form-field.products-checkboxes .multiple-boxes {
        flex: 0 1 auto;
        width: 50%
    }
}

form .form-row .form-field.products-checkboxes .multiple-boxes.horizontal .checkbox-container:not(:last-child) {
    margin-right: 8px
}

[data-toggle] {
    margin-bottom: 15px
}

[data-toggle] [data-toggle] {
    position: relative;
    margin: 0
}

[data-toggle] [data-toggle-panel] {
    position: relative;
    height: 0;
    overflow: hidden
}

.section-temoignages .temoignages-container {
    position: relative;
    padding: 0 20px 30px;
    background-color: black
}

@media(min-width:990px) {
    .section-temoignages .temoignages-container {
        padding-top: 80px;
        padding-bottom: 120px;
        padding-left: 80px
    }
}

@media(max-width:989.98px) {
    .section-temoignages .temoignages-container {
        padding-top: 50px
    }
}

.section-temoignages .temoignages-container .quote-icon {
    width: 70px
}

@media(max-width:989.98px) {
    .section-temoignages .temoignages-container .quote-icon {
        width: 45px
    }
}

.section-temoignages .temoignages-container .temoignages-wrapper {
    position: relative;
    margin-top: 30px;
    margin-bottom: 80px
}

@media(min-width:990px) {
    .section-temoignages .temoignages-container .temoignages-wrapper {
        margin-top: 30px;
        margin-bottom: 0
    }
}

@media(min-width:990px) {
    .section-temoignages .temoignages-container .temoignages-wrapper.height-set .single-temoignage {
        height: 100%
    }
}

.section-temoignages .temoignages-container .temoignages-wrapper .single-temoignage {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

.section-temoignages .temoignages-container .single-temoignage {
    display: flex;
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    margin: 0;
    color: #fff
}

.section-temoignages .temoignages-container .single-temoignage:not(.active) {
    display: none
}

.section-temoignages .temoignages-container .single-temoignage .tem-text {
    margin-bottom: 40px;
    font-family: Sansation, sans-serif;
    font-size: 2.4rem
}

.section-temoignages .temoignages-container .single-temoignage .tem-auteur {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    display: block
}

.section-temoignages .temoignages-container .single-temoignage .tem-details {
    margin-top: auto
}

@media(min-width:990px) {
    .section-temoignages .temoignages-container .single-temoignage .tem-details {
        padding-right: 220px
    }
}

.section-temoignages .temoignages-container .single-temoignage .tem-fonction {
    display: inline-block;
    margin-bottom: 0;
    color: #647994;
    font-size: 1.6rem;
    font-style: inherit;
    line-height: 1.32
}

.section-temoignages .temoignages-container .arrows-nav {
    position: absolute;
    z-index: 5;
    right: 0
}

@media(max-width:989.98px) {
    .section-temoignages .temoignages-container .arrows-nav {
        bottom: -60px;
        justify-content: center;
        width: 100%
    }
}

@media(min-width:990px) {
    .section-temoignages .temoignages-container .arrows-nav {
        bottom: 35px;
        transform: translateY(50%)
    }
}

.section-temoignages .temoignages-container .arrows-nav .circle-btn {
    color: #fff
}

@media(min-width:990px) {
    .section-temoignages .temoignages-container .arrows-nav .circle-btn .text-label {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        border: 0;
        white-space: nowrap;
        -webkit-clip-path: inset(50%);
        clip-path: inset(50%)
    }
}

@media(max-width:989.98px) {
    .section-temoignages .temoignages-container .arrows-nav .circle-btn.prev {
        display: none
    }
}

@media(max-width:989.98px) {
    .section-temoignages .temoignages-container .arrows-nav .circle-btn.next {
        height: 40px
    }

    .section-temoignages .temoignages-container .arrows-nav .circle-btn.next .btn-circle-svg {
        display: none
    }
}

@media(max-width:989.98px) {
    .section-temoignages .temoignages-container .arrows-nav .circle-btn .icon {
        position: relative;
        top: auto;
        left: auto;
        margin-left: 5px;
        transform: none;
        color: var(--vert)
    }
}

.section-temoignages .temoignages-container .arrows-nav .mobile-progress {
    flex: 0 0 auto;
    width: 210px
}

.section-temoignages .temoignages-container .arrows-nav .mobile-progress svg {
    display: block
}

@media(min-width:990px) {
    .section-temoignages .temoignages-container .arrows-nav .mobile-progress {
        display: none
    }
}

.arrows-nav {
    display: flex;
    align-items: center
}

@media(max-width:989.98px) {
    .arrows-nav {
        justify-content: center
    }
}

.arrows-nav .next {
    margin-left: 20px
}

.circle-btn {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    padding: 0;
    border: none;
    border-radius: 50px;
    background: none;
    color: var(--vert);
    cursor: pointer;
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase
}

.circle-btn.disable {
    opacity: .5;
    pointer-events: none
}

.circle-btn .btn-circle-svg {
    display: block;
    top: 0;
    left: 0;
    width: 100px;
    height: 100px;
    transform: rotate(-90deg);
    transition: opacity .3s ease
}

.circle-btn .btn-circle-svg .animate-circle {
    color: var(--vert)
}

.circle-btn .btn-circle-svg .light-circle {
    color: #dce0e4
}

.more-articles .more-articles-title {
    text-align: center
}

.more-articles .product-categories {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    margin: 40px 0 20px;
    padding: 0;
    list-style: none
}

.more-articles .product-categories .product-category {
    flex: 1 1 33%;
    padding: 10px
}

@media(max-width:769.98px) {
    .more-articles .product-categories .product-category {
        flex: 1 1 50%
    }
}

@media(max-width:569.98px) {
    .more-articles .product-categories .product-category {
        flex: 1 1 100%
    }
}

.more-articles .product-categories .product-category .product-category-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    height: 100%;
    padding: 50px 20px;
    transition: color .3s;
    border-radius: 15px;
    background-color: #f6f7f9;
    color: black;
    text-decoration: none
}

.more-articles .product-categories .product-category .product-category-link.oz svg {
    width: 56px
}

.more-articles .product-categories .product-category .product-category-link.dino svg,
.more-articles .product-categories .product-category .product-category-link.ted svg {
    width: 90px
}

.more-articles .product-categories .product-category .product-category-link.tips svg {
    width: 70px
}

.more-articles .product-categories .product-category .product-category-link.tips .label {
    max-width: 100px
}

.more-articles .product-categories .product-category .product-category-link .label {
    margin-top: 20px;
    margin-bottom: 0;
    color: currentColor;
    font-weight: 700;
    text-align: center
}

.more-articles .product-categories .product-category .product-category-link:hover {
    color: var(--vert)
}

.more-articles.press-releases {
    text-align: center
}

:focus {
    outline: none
}

.mapboxgl-map {
    position: relative;
    /* overflow: hidden; */
    font: 12px/20px Helvetica Neue, Arial, Helvetica, sans-serif;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.mapboxgl-canvas {
    position: absolute;
    top: 0;
    left: 0
}

.mapboxgl-map:-webkit-full-screen {
    width: 100%;
    height: 100%
}

.mapboxgl-canary {
    background-color: salmon
}

.mapboxgl-canvas-container.mapboxgl-interactive,
.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass {
    cursor: -webkit-grab;
    cursor: grab;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer {
    cursor: pointer
}

.mapboxgl-canvas-container.mapboxgl-interactive:active,
.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active {
    cursor: -webkit-grabbing;
    cursor: grabbing
}

.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,
.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas {
    touch-action: pan-x pan-y
}

.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,
.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas {
    touch-action: pinch-zoom
}

.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,
.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas {
    touch-action: none
}

.mapboxgl-ctrl-bottom-left,
.mapboxgl-ctrl-bottom-right,
.mapboxgl-ctrl-top-left,
.mapboxgl-ctrl-top-right {
    position: absolute;
    z-index: 2;
    pointer-events: none
}

.mapboxgl-ctrl-top-left {
    top: 0;
    left: 0
}

.mapboxgl-ctrl-top-right {
    top: 0;
    right: 0
}

.mapboxgl-ctrl-bottom-left {
    bottom: 0;
    left: 0
}

.mapboxgl-ctrl-bottom-right {
    right: 0;
    bottom: 0
}

.mapboxgl-ctrl {
    clear: both;
    transform: translate(0);
    pointer-events: auto
}

.mapboxgl-ctrl-top-left .mapboxgl-ctrl {
    margin: 10px 0 0 10px;
    float: left
}

.mapboxgl-ctrl-top-right .mapboxgl-ctrl {
    margin: 10px 10px 0 0;
    float: right
}

.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl {
    margin: 0 0 10px 10px;
    float: left
}

.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl {
    margin: 0 10px 10px 0;
    float: right
}

.mapboxgl-ctrl-group {
    border-radius: 4px;
    background: #fff
}

.mapboxgl-ctrl-group:not(:empty) {
    box-shadow: 0 0 8px 2px rgba(0, 0, 0, .1)
}

@media(-ms-high-contrast:active) {
    .mapboxgl-ctrl-group:not(:empty) {
        box-shadow: 0 0 0 2px ButtonText
    }
}

.mapboxgl-ctrl-group button {
    display: block;
    box-sizing: border-box;
    width: 29px;
    height: 29px;
    padding: 0;
    border: 0;
    outline: none;
    background-color: transparent;
    cursor: pointer
}

.mapboxgl-ctrl-group button+button {
    border-top: 1px solid #ddd
}

.mapboxgl-ctrl button .mapboxgl-ctrl-icon {
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50%
}

@media(-ms-high-contrast:active) {
    .mapboxgl-ctrl-icon {
        background-color: transparent
    }

    .mapboxgl-ctrl-group button+button {
        border-top: 1px solid ButtonText
    }
}

.mapboxgl-ctrl-attrib-button:focus,
.mapboxgl-ctrl-group button:focus {
    box-shadow: 0 0 2px 2px #0096ff
}

.mapboxgl-ctrl button:disabled {
    cursor: not-allowed
}

.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon {
    opacity: .25
}

.mapboxgl-ctrl button:not(:disabled):hover {
    background-color: rgba(0, 0, 0, .05)
}

.mapboxgl-ctrl-group button:focus:focus-visible {
    box-shadow: 0 0 2px 2px #0096ff
}

.mapboxgl-ctrl-group button:focus:not(:focus-visible) {
    box-shadow: none
}

.mapboxgl-ctrl-group button:focus:first-child {
    border-radius: 4px 4px 0 0
}

.mapboxgl-ctrl-group button:focus:last-child {
    border-radius: 0 0 4px 4px
}

.mapboxgl-ctrl-group button:focus:only-child {
    border-radius: inherit
}

.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%2395C11F'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")
}

.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%2395C11F'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")
}

@media(-ms-high-contrast:active) {
    .mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")
    }
}

@media(-ms-high-contrast:black-on-white) {
    .mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")
    }
}

.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")
}

.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")
}

@media(-ms-high-contrast:active) {
    .mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")
    }
}

@media(-ms-high-contrast:black-on-white) {
    .mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")
    }
}

.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")
}

@media(-ms-high-contrast:active) {
    .mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")
    }
}

@media(-ms-high-contrast:black-on-white) {
    .mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")
    }
}

.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")
}

.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E")
}

.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")
}

.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")
}

.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3C/svg%3E")
}

.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3C/svg%3E")
}

.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon {
    -webkit-animation: mapboxgl-spin 2s linear infinite;
    animation: mapboxgl-spin 2s linear infinite
}

@media(-ms-high-contrast:active) {
    .mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3C/svg%3E")
    }
}

@media(-ms-high-contrast:black-on-white) {
    .mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")
    }

    .mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E")
    }
}

@-webkit-keyframes mapboxgl-spin {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes mapboxgl-spin {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

a.mapboxgl-ctrl-logo {
    display: block;
    width: 88px;
    height: 23px;
    margin: 0 0 -4px -4px;
    overflow: hidden;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E%3Cdefs%3E%3Cpath id='a' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='b' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='c'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/mask%3E%3Cg opacity='.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23c)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23b' mask='url(%23c)'/%3E%3C/g%3E%3Cg opacity='.9' fill='%23fff'%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    cursor: pointer
}

a.mapboxgl-ctrl-logo.mapboxgl-compact {
    width: 23px
}

@media(-ms-high-contrast:active) {
    a.mapboxgl-ctrl-logo {
        background-color: transparent;
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E%3Cdefs%3E%3Cpath id='a' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='b' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='c'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/mask%3E%3Cg stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23c)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23b' mask='url(%23c)'/%3E%3C/g%3E%3Cg fill='%23fff'%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/g%3E%3C/svg%3E")
    }
}

@media(-ms-high-contrast:black-on-white) {
    a.mapboxgl-ctrl-logo {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E%3Cdefs%3E%3Cpath id='a' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='b' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='c'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/mask%3E%3Cg stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23c)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23b' mask='url(%23c)'/%3E%3C/g%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/svg%3E")
    }
}

.mapboxgl-ctrl.mapboxgl-ctrl-attrib {
    margin: 0;
    padding: 0 5px;
    background-color: hsla(0, 0%, 100%, .5)
}

@media screen {
    .mapboxgl-ctrl-attrib.mapboxgl-compact {
        position: relative;
        min-height: 20px;
        margin: 10px;
        padding: 2px 24px 2px 0;
        border-radius: 12px;
        background-color: #fff
    }

    .mapboxgl-ctrl-attrib.mapboxgl-compact-show {
        visibility: visible;
        padding: 2px 28px 2px 8px
    }

    .mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,
    .mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show {
        padding: 2px 8px 2px 28px;
        border-radius: 12px
    }

    .mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner {
        display: none
    }

    .mapboxgl-ctrl-attrib-button {
        display: none;
        position: absolute;
        top: 0;
        right: 0;
        box-sizing: border-box;
        width: 24px;
        height: 24px;
        border: 0;
        border-radius: 12px;
        outline: none;
        background-color: hsla(0, 0%, 100%, .5);
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1012 0 6 6 0 10-12 0m5-3a1 1 0 102 0 1 1 0 10-2 0m0 3a1 1 0 112 0v3a1 1 0 11-2 0'/%3E%3C/svg%3E");
        cursor: pointer
    }

    .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,
    .mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button {
        left: 0
    }

    .mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner,
    .mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button {
        display: block
    }

    .mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button {
        background-color: rgba(0, 0, 0, .05)
    }

    .mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after {
        right: 0;
        bottom: 0
    }

    .mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after {
        top: 0;
        right: 0
    }

    .mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after {
        top: 0;
        left: 0
    }

    .mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after {
        bottom: 0;
        left: 0
    }
}

@media screen and (-ms-high-contrast:active) {
    .mapboxgl-ctrl-attrib.mapboxgl-compact:after {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1012 0 6 6 0 10-12 0m5-3a1 1 0 102 0 1 1 0 10-2 0m0 3a1 1 0 112 0v3a1 1 0 11-2 0'/%3E%3C/svg%3E")
    }
}

@media screen and (-ms-high-contrast:black-on-white) {
    .mapboxgl-ctrl-attrib.mapboxgl-compact:after {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1012 0 6 6 0 10-12 0m5-3a1 1 0 102 0 1 1 0 10-2 0m0 3a1 1 0 112 0v3a1 1 0 11-2 0'/%3E%3C/svg%3E")
    }
}

.mapboxgl-ctrl-attrib a {
    color: rgba(0, 0, 0, .75);
    text-decoration: none
}

.mapboxgl-ctrl-attrib a:hover {
    color: inherit;
    text-decoration: underline
}

.mapboxgl-ctrl-attrib .mapbox-improve-map {
    margin-left: 2px;
    font-weight: 700
}

.mapboxgl-attrib-empty {
    display: none
}

.mapboxgl-ctrl-scale {
    box-sizing: border-box;
    padding: 0 5px;
    border: 2px solid #333;
    border-top: #333;
    background-color: hsla(0, 0%, 100%, .75);
    color: #333;
    font-size: 10px
}

.mapboxgl-popup {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 280px;
    will-change: transform;
    pointer-events: none
}

.mapboxgl-popup-anchor-top,
.mapboxgl-popup-anchor-top-left,
.mapboxgl-popup-anchor-top-right {
    flex-direction: column
}

.mapboxgl-popup-anchor-bottom,
.mapboxgl-popup-anchor-bottom-left,
.mapboxgl-popup-anchor-bottom-right {
    flex-direction: column-reverse
}

.mapboxgl-popup-anchor-left {
    flex-direction: row
}

.mapboxgl-popup-anchor-right {
    flex-direction: row-reverse
}

.mapboxgl-popup-tip {
    z-index: 1;
    width: 0;
    height: 0;
    border: 10px solid transparent
}

.mapboxgl-popup-anchor-top .mapboxgl-popup-tip {
    align-self: center;
    border-top: none;
    border-bottom-color: #fff
}

.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip {
    align-self: flex-start;
    border-top: none;
    border-left: none;
    border-bottom-color: #fff
}

.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip {
    align-self: flex-end;
    border-top: none;
    border-right: none;
    border-bottom-color: #fff
}

.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip {
    align-self: center;
    border-bottom: none;
    border-top-color: #fff
}

.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip {
    align-self: flex-start;
    border-bottom: none;
    border-left: none;
    border-top-color: #fff
}

.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip {
    align-self: flex-end;
    border-right: none;
    border-bottom: none;
    border-top-color: #fff
}

.mapboxgl-popup-anchor-left .mapboxgl-popup-tip {
    align-self: center;
    border-left: none;
    border-right-color: #fff
}

.mapboxgl-popup-anchor-right .mapboxgl-popup-tip {
    align-self: center;
    border-right: none;
    border-left-color: #fff
}

.mapboxgl-popup-close-button {
    position: absolute;
    top: 7px;
    right: 7px;
    border: 0;
    background-color: transparent;
    color: #fff;
    font-size: 2.6rem;
    cursor: pointer
}

.mapboxgl-popup-content {
    position: relative;
    padding: 15px;
    border-radius: 5px;
    background: #fff;
    font-family: Glacial Indifference, sans-serif;
    pointer-events: auto
}

.mapboxgl-popup-head {
    display: block;
    width: calc(100% + 30px);
    margin-top: -15px;
    margin-bottom: 15px;
    margin-left: -15px;
    padding: 15px;
    border-radius: 5px 5px 0 0;
    background-color: var(--vert)
}

.mapboxgl-popup-head h3 {
    margin: 0;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700
}

.mapboxgl-popup-txt {
    display: block;
    margin: 0;
    color: black;
    font-size: 1.4rem
}

.mapboxgl-popup-txt:empty {
    display: none
}

.mapboxgl-popup-label {
    margin-bottom: .7rem;
    color: black
}

.mapboxgl-popup-label,
.mapboxgl-popup-link {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    margin-top: 1.2rem
}

.mapboxgl-popup-link {
    display: inline-block;
    color: var(--vert);
    text-decoration: none
}

.mapboxgl-popup-link .icon {
    margin-left: 4px;
    font-size: .7em;
    vertical-align: middle
}

.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content {
    border-top-left-radius: 0
}

.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content {
    border-top-right-radius: 0
}

.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content {
    border-bottom-left-radius: 0
}

.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content {
    border-bottom-right-radius: 0
}

.mapboxgl-popup-track-pointer {
    display: none
}

.mapboxgl-popup-track-pointer * {
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.mapboxgl-map:hover .mapboxgl-popup-track-pointer {
    display: flex
}

.mapboxgl-map:active .mapboxgl-popup-track-pointer {
    display: none
}

.mapboxgl-marker {
    position: absolute;
    top: 0;
    left: 0;
    will-change: transform;
    transition: opacity .2s;
    opacity: 1
}

.mapboxgl-marker-occluded {
    opacity: .2
}

.mapboxgl-user-location-dot,
.mapboxgl-user-location-dot:before {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background-color: #1da1f2
}

.mapboxgl-user-location-dot:before {
    content: "";
    position: absolute;
    -webkit-animation: mapboxgl-user-location-dot-pulse 2s infinite;
    animation: mapboxgl-user-location-dot-pulse 2s infinite
}

.mapboxgl-user-location-dot:after {
    content: "";
    position: absolute;
    top: -2px;
    left: -2px;
    box-sizing: border-box;
    width: 19px;
    height: 19px;
    border: 2px solid #fff;
    border-radius: 50%;
    box-shadow: 0 0 3px rgba(0, 0, 0, .35)
}

@-webkit-keyframes mapboxgl-user-location-dot-pulse {
    0% {
        transform: scale(1);
        opacity: 1
    }

    70% {
        transform: scale(3);
        opacity: 0
    }

    to {
        transform: scale(1);
        opacity: 0
    }
}

@keyframes mapboxgl-user-location-dot-pulse {
    0% {
        transform: scale(1);
        opacity: 1
    }

    70% {
        transform: scale(3);
        opacity: 0
    }

    to {
        transform: scale(1);
        opacity: 0
    }
}

.mapboxgl-user-location-dot-stale {
    background-color: #aaa
}

.mapboxgl-user-location-dot-stale:after {
    display: none
}

.mapboxgl-user-location-accuracy-circle {
    width: 1px;
    height: 1px;
    border-radius: 100%;
    background-color: rgba(29, 161, 242, .2)
}

.mapboxgl-crosshair,
.mapboxgl-crosshair .mapboxgl-interactive,
.mapboxgl-crosshair .mapboxgl-interactive:active {
    cursor: crosshair
}

.mapboxgl-boxzoom {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border: 2px dotted #202020;
    opacity: .5;
    background: #fff
}

@media print {
    .mapbox-improve-map {
        display: none
    }
}

.content-section {
    width: 100%;
    margin-right: auto;
    margin-bottom: 2em;
    margin-left: auto;
}

@media(min-width:770px) {
    .content-section {
        padding-right: 15px;
        padding-left: 15px
    }
}

@media(min-width:990px) {
    .content-section {
        max-width: 800px;
    }
    @media (min-width:1200px) {
        .content-section {
            max-width: 1100px;
        }
    }
}

@media(min-width:990px) {
    .content-section.medium {
        max-width: 950px;
        margin-right: auto;
        margin-left: auto
    }
}

@media(min-width:990px) {
    .content-section.large {
        max-width: 1140px;
        margin-right: auto;
        margin-left: auto
    }
}

.downloads-section .rte-content h5,
.downloads-section .xsmall-title,
.rte-content .downloads-section h5 {
    padding-bottom: 15px;
    border-bottom: 1px solid #dce0e4
}

.downloads-section .downloads {
    display: flex;
    flex-direction: column;
    align-items: stretch
}

.downloads-section .download-link {
    display: flex;
    align-items: center;
    padding: 10px 0;
    transition: color .3s ease;
    color: black;
    font-size: 2rem;
    text-decoration: none
}

.downloads-section .download-link .label {
    flex: 1 1 auto;
    transition: transform .3s ease
}

.downloads-section .download-link:hover {
    color: var(--vert);
    text-decoration: none
}

.downloads-section .download-link:hover .label {
    transform: translateX(12px)
}

.downloads-section .download-link:hover .download-icon svg .arrow {
    transform: translateY(3px)
}

.download-icon {
    position: relative;
    flex: 0 0 auto;
    margin-right: 40px;
    margin-left: 40px;
    color: var(--vert)
}

.download-icon svg {
    height: auto
}

.download-icon svg path {
    fill: currentColor
}

.download-icon svg .arrow {
    transition: transform .3s ease
}

.gallery-section {
    position: relative
}

@media(max-width:989.98px) {
    .gallery-section .gallery-content {
        margin-right: -20px;
        margin-left: -20px
    }
}

.gallery-section .gallery-content {
    position: relative;
    overflow: hidden;
    background-color: black
}

.gallery-section .gallery-content:before {
    content: "";
    display: block;
    width: 100%;
    padding-bottom: 67.3913043478%
}

@media(max-width:989.98px) {
    .gallery-section .gallery-content.single-image .controls {
        display: none
    }
}

.gallery-section .gallery-content .slide {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.gallery-section .gallery-content .slide.first-slide {
    display: block
}

.gallery-section .gallery-content .slide img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.gallery-section .gallery-content .controls {
    position: absolute;
    z-index: 11;
    right: 0;
    bottom: 0;
    left: 0
}

.gallery-section .gallery-content .controls:before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100px;
    transition: opacity .2s ease;
    background-image: linear-gradient(0deg, rgba(50, 63, 79, .3) 0, transparent)
}

@media(min-width:990px) {
    .gallery-section .gallery-content .controls:before {
        height: 200px
    }
}

.gallery-section .legends {
    margin-top: 15px
}

.gallery-section .legends .legend {
    margin: 0;
    color: rgba(50, 63, 79, .7);
    font-size: 1.4rem
}

.gallery-section .legends .legend:not(.current) {
    display: none
}

.gallery-section .controls {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 10px 20px
}

.gallery-section .controls .control-btn .label {
    color: #fff;
    font-size: 1.3rem;
    font-weight: 700;
    text-transform: uppercase
}

.gallery-section .controls .control-btn .light-circle {
    display: none
}

.gallery-section .controls .separator {
    width: 9px;
    margin: 0 10px;
    border-bottom: 1px solid #fff;
    opacity: .4
}

.gallery-section .controls .count {
    margin: 0 8px;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums
}

.gallery-section .controls .count .current {
    display: inline-block;
    width: 16px;
    text-align: right
}

.gallery-section .controls .fullscreen-btn {
    margin-left: auto
}

@media(max-width:989.98px) {
    .gallery-section .controls .fullscreen-btn {
        display: none
    }
}

.gallery-section .fullscreen-controls {
    visibility: hidden;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    flex-direction: column-reverse;
    width: 150px;
    padding: 20px 10px
}

.gallery-section .fullscreen-controls .fullscreen-btn {
    margin-bottom: auto;
    margin-left: 0
}

.gallery-section .fullscreen-controls .count {
    margin: 15px 0
}

.gallery-section .gallery-container.js-fullscreen {
    overflow: hidden
}

.gallery-section .gallery-container.js-fullscreen .gallery-content {
    background-color: transparent
}

.gallery-section .gallery-container.js-fullscreen .gallery-content:after {
    opacity: 0
}

.gallery-section .gallery-container.js-fullscreen .gallery-content .slide {
    height: 100%
}

.gallery-section .gallery-container.js-fullscreen .gallery-content .slide img {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center
}

.gallery-section .gallery-container.js-fullscreen .fullscreen-controls {
    visibility: visible
}

.gallery-section .gallery-container.js-fullscreen .legends {
    position: absolute;
    top: 50%;
    left: 0;
    width: 150px;
    padding: 15px;
    transform: translateY(-50%)
}

@media(min-width:770px) {
    .gallery-section .gallery-container.js-fullscreen .legends {
        z-index: 6;
        left: 5%
    }
}

.gallery-section .gallery-container.js-fullscreen .legends .legend {
    color: #fff
}

.video-container {
    display: block;
    position: relative;
    width: 100%;
    padding: 0;
    overflow: hidden;
    cursor: pointer
}

.video-container .play {
    display: flex;
    position: absolute;
    z-index: 15;
    top: 50%;
    left: 50%;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background-color: #fff
}

@media(min-width:990px) {
    body:not(.touch-device) .video-container .play {
        top: 45%
    }
}

.video-container .play .icon-play {
    color: var(--vert);
    font-size: 1.2rem
}

.video-container:before {
    content: "";
    display: block;
    padding-top: 56.25%
}

.video-container .background,
.video-container .iframe {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0
}

.video-container .overlay {
    display: flex;
    position: absolute;
    z-index: 10;
    bottom: 0;
    left: 0;
    align-items: center;
    width: 100%;
    padding: 20px;
    color: #fff
}

@media(max-width:989.98px) {
    .video-container .overlay {
        height: 100%
    }
}

@media(min-width:990px) {
    .video-container .overlay {
        align-items: center;
        padding: 30px
    }
}

.video-container .overlay:before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    transition: opacity .2s ease;
    background-color: rgba(50, 63, 79, .5)
}

@media(min-width:990px) {
    .video-container .overlay:before {
        height: 200px;
        background-color: transparent;
        background-image: linear-gradient(0deg, rgba(50, 63, 79, .75) 5%, transparent)
    }
}

.video-container .overlay .circle-btn {
    flex: 0 0 auto;
    margin-right: 20px
}

.video-container .overlay .title {
    margin: 0;
    font-size: 2rem;
    line-height: 1.5
}

.video-container .background,
.video-container .overlay {
    transition: opacity .5s cubic-bezier(.4, 0, .2, 1)
}

.video-container .background {
    -o-object-fit: cover;
    object-fit: cover
}

.video-container.js-playing .background,
.video-container.js-playing .overlay,
.video-container:not(.js-playing) .iframe {
    opacity: 0;
    pointer-events: none
}

.table-section {
    display: block;
    width: 100%
}

.table-section table td,
.table-section table th {
    min-width: 100px
}

.table-section table td:first-child,
.table-section table th:first-child {
    min-width: 200px
}

.table-section table td:not(:first-child),
.table-section table th:not(:first-child) {
    text-align: center
}

.text-image-section .image-container {
    width: 100%;
    margin-top: 30px
}

@media(max-width:989.98px) {
    .text-image-section {
        background-color: black
    }
}

@media(min-width:770px) {
    .text-image-section {
        display: flex;
        align-items: flex-start
    }

    .text-image-section .text-container {
        flex: 1 1 auto;
        margin: 5px 0 0
    }

    .text-image-section .image-container {
        flex: 0 0 auto;
        width: 55%;
        margin: 0
    }

    .text-image-section .image-container img {
        display: block;
        width: auto;
        margin: 0 auto
    }

    .text-image-section.alternate .image-container {
        order: -1;
        margin-right: 50px
    }

    .text-image-section.alternate .image-container .legend {
        text-align: right
    }

    .text-image-section:not(.alternate) .image-container {
        margin-left: 50px
    }
}

.quote-section {
    padding-left: 45px;
    border-left: 2px solid var(--vert)
}

.quote-section .quote-container {
    max-width: 490px;
    margin: 0
}

.quote-section .quote-container footer {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-top: 30px
}

.quote-section .quote-container footer>:not(:last-child) {
    margin-bottom: 5px
}

.quote-section .citation {
    font-family: Sansation, sans-serif;
    font-size: 1.8rem;
    font-style: italic;
    line-height: 1.6
}

.quote-section .auteur {
    font-size: 1.3rem;
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    color: var(--vert);
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.2
}

.quote-section .poste {
    color: #647994;
    font-size: 1.6rem
}

body.home .section-intro {
    position: relative
}

body.home .section-intro .back {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: black
}

body.home .section-intro .back .robot-bg-container {
    display: none;
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

body.home .section-intro .back .robot-bg-container .background {
    display: block;
    width: 100vw;
    height: 100vh;
    -o-object-fit: cover;
    object-fit: cover
}

body.home .section-intro .back .robot-bg-container.current,
body.home .section-intro .back .robot-bg-container.previous {
    display: block
}

body.home .section-intro .back .robot-bg-container.current {
    z-index: 2
}

body.home .section-intro .back .robot-bg-container.previous {
    z-index: 1
}

body.home .section-intro .back:after {
    content: "";
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, transparent, rgba(0, 0, 0, .4) 60.26%)
}

body.home .section-intro .front {
    display: flex;
    position: relative;
    z-index: 1;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    height: 100%
}

body.home .section-intro .intro-baseline {
    margin-top: 0;
    margin-bottom: 60px;
    padding: 0 15px;
    color: #fff;
    /* font-family: Sansation, sans-serif; */
    font-family: "Montserrat", sans-serif;
    font-weight: 900;
    line-height: 1;
    font-size: 6rem;
    text-align: center;
    text-transform: uppercase;
}

@media(max-width:989.98px) {
    body.home .section-intro .intro-baseline {
        margin: 50px 0;
        font-size: 4rem;
        line-height: 1.3
    }
}

@media(max-width:569.98px) {
    body.home .section-intro .intro-baseline {
        font-size: 3.5rem;
        line-height: 1.3
    }
}

body.home .section-intro .demi-section {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column
}

body.home .section-intro .demi-section.gauche {
    padding-right: 77px
}

body.home .section-intro .demi-section.gauche .cta-container {
    justify-content: flex-end
}

body.home .section-intro .demi-section.droite {
    padding-left: 77px
}

body.home .section-intro .milieu .cta-container {
    text-decoration: none;
    font-family: Glacial Indifference, sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    font-size: .9em;
    line-height: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1em;
}

@media(max-width:1249.98px) {
    body.home .section-intro .demi-section.gauche {
        padding-right: 20px
    }

    body.home .section-intro .demi-section.droite {
        padding-left: 20px
    }
}

@media(max-width:989.98px) {

    body.home .section-intro .demi-section.droite,
    body.home .section-intro .demi-section.gauche {
        padding: 0 5px
    }
}

@media(max-width:769.98px) {
    body.home .section-intro .demi-section {
        width: 100%
    }

    body.home .section-intro .demi-section.droite,
    body.home .section-intro .demi-section.gauche {
        padding: 0
    }

    body.home .section-intro .demi-section.droite .cta-container,
    body.home .section-intro .demi-section.gauche .cta-container {
        align-items: flex-start;
        justify-content: flex-start
    }

    body.home .section-intro .demi-section.gauche {
        margin-bottom: 20px
    }
}

body.home .section-intro .demi-section .product-cat {
    margin-left: 33px;
    color: #fff;
    font-family: Glacial Indifference, sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.14;
    text-transform: uppercase
}

@media(max-width:769.98px) {
    body.home .section-intro .demi-section .product-cat {
        margin-left: 0
    }
}

body.home .section-intro .demi-section .cta-container {
    display: flex;
    align-items: flex-end
}

body.home .section-intro .discover-link {
    display: flex;
    align-items: center;
    width: 240px;
    padding: 5px;
    transition: background-color .25s ease;
    border-radius: 50px;
    background-color: #fff;
    text-decoration: none
}

body.home .section-intro .discover-link .product-img {
    display: block;
    width: 92px;
    overflow: hidden;
    border-radius: 50px
}

body.home .section-intro .discover-link .product-img img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

body.home .section-intro .discover-link .name {
    width: 148px;
    margin-left: 20px;
    transition: color .25s ease;
    color: black;
    font-family: Sansation, sans-serif;
    font-size: 3rem
}

body.home .section-intro .discover-link .name .icon {
    display: none;
    position: relative;
    top: -5px;
    left: -8px;
    margin-left: 12px;
    transition: color .25s ease, left .25s ease;
    color: #fff;
    font-size: 1rem;
    line-height: 1rem
}

body.home .section-intro .discover-link:not(:last-child) {
    margin-right: 20px
}

@media(min-width:990px) {
    body.home .section-intro .discover-link:hover {
        background-color: var(--vert)
    }

    body.home .section-intro .discover-link:hover .name {
        color: #fff
    }

    body.home .section-intro .discover-link:hover .name .icon {
        display: inline-block;
        left: 0
    }
}

@media(min-width:990px)and (max-width:1249.98px) {
    body.home .section-intro .discover-link {
        width: 200px
    }
}

@media(max-width:989.98px) {
    body.home .section-intro .discover-link {
        width: auto
    }

    body.home .section-intro .discover-link:not(:last-child) {
        margin-right: 10px
    }

    body.home .section-intro .discover-link .product-img {
        width: 70px
    }

    body.home .section-intro .discover-link .name {
        width: 80px;
        margin-left: 10px
    }
}

@media(max-width:769.98px) {
    body.home .section-intro .discover-link {
        width: 50%
    }

    body.home .section-intro .discover-link .product-img {
        width: 60px
    }

    body.home .section-intro .discover-link .name {
        width: 80px;
        margin-left: 10px;
        font-size: 2.2rem
    }

    body.home .section-intro .discover-link:not(:last-child) {
        margin-right: 8px
    }
}

body.home .section-slogan {
    display: flex;
    align-items: center
}

@media(min-width:990px) {
    body.home .section-slogan {
        padding-top: 150px;
        padding-bottom: 150px
    }
}

body.home .section-slogan .slogan-subtitle {
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    opacity: .3
}

@media(min-width:990px) {
    body.home .section-slogan .slogan-container {
        text-align: center
    }
}

body.home .section-slogan .slogan {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 40px 0
}

@media(min-width:990px) {
    body.home .section-slogan .slogan {
        justify-content: space-around
    }
}

body.home .section-slogan .slogan .slogan-text {
    max-width: 1000px;
    margin: 0
}

@media(min-width:990px) {
    body.home .section-slogan .slogan .slogan-text {
        width: calc(100% - 5rem)
    }
}

@media(max-width:1249.98px) {
    body.home .section-slogan .slogan .slogan-text {
        font-size: 3.5rem
    }
}

@media(max-width:989.98px) {
    body.home .section-slogan .slogan .slogan-text {
        font-size: 3rem
    }
}

body.home .section-slogan .slogan .icon {
    display: none
}

@media(min-width:990px) {
    body.home .section-slogan .slogan .icon {
        display: block;
        color: var(--vert);
        font-size: 3rem
    }
}

body.home .section-hp-carousel {
    padding-top: 0
}

@media(min-width:990px) {
    body.home .section-hp-carousel {
        display: flex;
        align-items: stretch
    }
}

@media(max-width:989.98px) {
    body.home .section-hp-carousel {
        overflow-x: hidden
    }
}

body.home .section-hp-carousel .carousel-mobile {
    display: none
}

@media(max-width:989.98px) {
    body.home .section-hp-carousel .carousel-mobile {
        display: block
    }

    body.home .section-hp-carousel .carousel-mobile .carousel {
        position: relative;
        width: 320px;
        margin: 0 auto
    }

    body.home .section-hp-carousel .carousel-mobile .carousel .slides {
        display: flex;
        width: auto;
        white-space: nowrap
    }

    body.home .section-hp-carousel .carousel-mobile .carousel .slide {
        position: relative;
        flex: 0 0 auto;
        width: 320px;
        padding: 0 8px;
        white-space: normal
    }

    body.home .section-hp-carousel .carousel-mobile .carousel .slide>* {
        width: 100%
    }

    body.home .section-hp-carousel .carousel-mobile .carousel-dots {
        margin-top: 20px
    }
}

body.home .section-hp-carousel .carousel-desktop {
    display: none
}

@media(min-width:990px) {
    body.home .section-hp-carousel .carousel-desktop {
        display: flex;
        align-items: stretch;
        width: 100%
    }
}

@media(min-width:990px) {
    body.home .section-hp-carousel .carousel-desktop .carousel-content {
        flex: 0 0 355px;
        margin-right: 80px;
        margin-left: calc(50vw - 495px);
        padding-top: 160px;
        padding-right: 40px;
        padding-left: 15px
    }
}

@media(min-width:1250px) {
    body.home .section-hp-carousel .carousel-desktop .carousel-content {
        margin-left: calc(50vw - 625px)
    }
}

@media(min-width:1500px) {
    body.home .section-hp-carousel .carousel-desktop .carousel-content {
        margin-left: calc(50vw - 750px)
    }
}

@media(min-width:990px) {
    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container {
        width: 100%;
        margin-bottom: 30px;
        padding-left: 50px
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container .titre {
        display: block;
        position: relative;
        transition: color .3s ease;
        font-size: 3rem;
        cursor: pointer
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container .titre .index-container {
        font-size: 1.2rem;
        font-weight: 700;
        letter-spacing: .1em;
        line-height: 1.8;
        text-transform: uppercase;
        display: block;
        position: absolute;
        top: 3px;
        left: -60px;
        width: 40px;
        height: 40px;
        padding-left: 3px;
        transition: border-color .3s ease, color .3s ease;
        border: 1px solid transparent;
        border-radius: 50%;
        color: rgba(50, 63, 79, .4);
        font-family: Glacial Indifference, sans-serif;
        line-height: 40px;
        text-align: center
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container .titre .index-container .circle-indicator-svg {
        position: absolute;
        top: 0;
        left: 0;
        color: black
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container .titre .index-container .circle-indicator-svg .animate-circle {
        color: var(--vert)
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container .titre .icon-container {
        position: absolute;
        top: 0;
        left: 0
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container .titre .icon-arrow-right-spaced {
        position: absolute;
        top: calc(50% - .6rem);
        right: 0;
        transform: rotate(-90deg);
        transition: transform .5s cubic-bezier(.4, 0, .2, 1);
        color: var(--vert);
        font-size: 1.2rem
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container .titre .icon-chevron-down {
        position: absolute;
        top: 50%;
        right: 0;
        width: 20px;
        height: 20px;
        transform: translateY(-50%);
        transition: transform .3s ease;
        color: var(--vert);
        font-size: 1.5rem
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container .texte {
        display: inline-block;
        margin-bottom: 0;
        font-size: 1.8rem
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container.ouverte .titre {
        color: var(--vert);
        cursor: auto
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container.ouverte .titre .index-container {
        color: var(--vert)
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container.ouverte .titre .icon-arrow-right-spaced {
        transform: rotate(90deg)
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-content .benefice-container.ouverte .titre .icon-chevron-down {
        transform: translateY(-50%) rotate(-180deg)
    }
}

@media(min-width:990px) {
    body.home .section-hp-carousel .carousel-desktop .carousel-visuels {
        position: relative;
        flex: 1 1 auto;
        height: calc(100% - 120px)
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-visuels .slides-container {
        position: relative;
        width: 100%;
        height: 100%;
        overflow: hidden;
        background-color: black
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-visuels .slides-container .carousel-slide {
        display: none;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow: hidden
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-visuels .slides-container .carousel-slide .image-container {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow: hidden
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-visuels .slides-container .carousel-slide .image-container .image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center;
        object-position: center
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-visuels .videos-container {
        position: absolute;
        z-index: 10;
        bottom: -10%;
        left: -8%;
        width: 280px;
        overflow: hidden;
        background-color: black;
        box-shadow: 15px 25px 50px rgba(0, 0, 0, .25)
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-visuels .videos-container:before {
        content: "";
        display: block;
        width: 100%;
        padding-bottom: 150%
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-visuels .videos-container .video-container {
        display: none;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow: hidden
    }

    body.home .section-hp-carousel .carousel-desktop .carousel-visuels .videos-container .video-container:before {
        display: none
    }
}

body.home .section-temoignages {
    padding-top: 0
}

@media(min-width:990px) {
    body.home .section-temoignages {
        display: flex
    }
}

body.home .section-temoignages .image-container {
    position: relative
}

@media(min-width:990px) {
    body.home .section-temoignages .image-container {
        flex: 1 1 65%
    }
}

@media(max-width:989.98px) {
    body.home .section-temoignages .image-container:before {
        content: "";
        display: block;
        width: 100%;
        padding-top: 70.2702702703%
    }
}

body.home .section-temoignages .image-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media(min-width:990px) {
    body.home .section-temoignages .temoignages-container {
        z-index: 2;
        flex: 0 0 680px;
        align-self: flex-start;
        margin-left: -200px;
        padding-right: 80px
    }
}

@media(max-width:989.98px) {
    body.home .section-image-text {
        padding: 80px 0
    }
}

body.home .section-image-text .image-text-container {
    display: flex;
    align-items: center;
    height: 100%
}

body.home .section-image-text .image-text-container .text-container {
    margin-right: 40px
}

@media(min-width:990px) {
    body.home .section-image-text .image-text-container .text-container {
        flex: 1 1 55%
    }
}

body.home .section-image-text .image-text-container .text-container .subtitle {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    opacity: .3
}

body.home .section-image-text .image-text-container .text-container .text {
    margin: 20px 0
}

@media(max-width:1249.98px) {
    body.home .section-image-text .image-text-container .text-container .text {
        font-size: 3.5rem
    }
}

@media(max-width:989.98px) {
    body.home .section-image-text .image-text-container .text-container .text {
        font-size: 2.6rem
    }
}

body.home .section-image-text .image-text-container .text-container .btn-arrow {
    margin-top: 40px;
    color: var(--vert)
}

body.home .section-image-text .image-text-container .image-container {
    position: relative;
    flex: 1 1 45%;
    height: 100%;
    margin-left: 40px
}

@media(max-width:989.98px) {
    body.home .section-image-text .image-text-container .image-container {
        display: none
    }
}

body.home .section-image-text .image-text-container .image-container .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: bottom center;
    object-position: bottom center
}

body.home .section-contact {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

body.home .section-contact .svgicons {
    display: block;
    width: 323px
}

@media(max-width:769.98px) {
    body.home .section-contact .svgicons {
        max-width: 90%
    }
}

body.home .section-contact .surtitre {
    margin-top: 50px;
    margin-bottom: 0;
    font-family: Glacial Indifference, sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.14;
    text-transform: uppercase
}

body.home .section-contact .btn-arrow {
    color: var(--vert);
    font-family: Sansation, sans-serif;
    font-size: 5.5rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1;
    text-transform: none
}

body.home .section-contact .btn-arrow .arrow-icon {
    position: relative;
    top: 4px;
    font-size: .5em
}

@media(max-width:769.98px) {
    body.home .section-contact .btn-arrow {
        font-size: 2.8rem
    }

    body.home .section-contact .btn-arrow .arrow-icon {
        position: static;
        font-size: .5em
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .big-title {
        font-size: 5rem
    }
}

.page-template-page-product .product-section-title.center {
    text-align: center
}

@media(max-width:989.98px) {
    .page-template-page-product .product-section-title {
        font-size: 3.2rem;
        text-align: center
    }
}

.page-template-page-product .page-intro {
    min-height: 100vh
}

@media(min-width:990px) {
    .page-template-page-product .page-intro {
        padding-bottom: 40px
    }

    .page-template-page-product .page-intro .wrapper {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        height: 100%
    }

    .page-template-page-product .page-intro .wrapper .breadcrumb {
        margin-top: 0
    }

    .page-template-page-product .page-intro .wrapper .breadcrumb+* {
        margin-top: auto
    }

    .page-template-page-product .page-intro .wrapper:after {
        content: "";
        display: block;
        flex: 0 1 auto;
        height: 70px;
        margin-bottom: auto
    }
}

.page-template-page-product .page-intro .chapo {
    max-width: 480px
}

.page-template-page-product .page-intro .pictos-container {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start
}

.page-template-page-product .page-intro .pictos-container .picto {
    display: flex;
    flex-direction: column;
    align-items: center
}

.page-template-page-product .page-intro .pictos-container .picto:not(:last-child) {
    margin-right: 40px
}

.page-template-page-product .page-intro .pictos-container .picto .icon-container {
    width: 57px;
    height: 57px;
    border: 1px solid #fff;
    border-radius: 50%
}

.page-template-page-product .page-intro .pictos-container .picto .icon-container svg {
    width: 100%;
    height: 100%
}

.page-template-page-product .page-intro .pictos-container .picto .label {
    margin-top: 15px;
    font-family: Sansation, sans-serif;
    font-size: 1.6rem;
    line-height: 1.2;
    text-align: center
}

.page-template-page-product .chiffres-carousel {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding-top: 80px;
    padding-bottom: 80px
}

@media(min-width:990px) {
    .page-template-page-product .chiffres-carousel {
        padding-top: 130px
    }
}

.page-template-page-product .chiffre-cles-container {
    display: flex;
    justify-content: space-around
}

@media(max-width:769.98px) {
    .page-template-page-product .chiffre-cles-container {
        flex-direction: column
    }
}

.page-template-page-product .chiffre-cles-container .chiffre-container {
    display: flex;
    flex: 1 1 33.33333%;
    justify-content: center;
    padding: 0 20px
}

@media(max-width:769.98px) {
    .page-template-page-product .chiffre-cles-container .chiffre-container {
        margin-bottom: 20px
    }
}

.page-template-page-product .chiffre-cles-container .chiffre-container .icon-container {
    padding-right: 10px
}

.page-template-page-product .chiffre-cles-container .chiffre-container .chiffre-label-container {
    display: flex;
    flex-direction: column;
    margin-top: -.5em;
    padding-left: 10px
}

.page-template-page-product .chiffre-cles-container .chiffre-container .chiffre-label-container .chiffre {
    flex: 0 0 auto;
    color: var(--vert);
    font-size: 4rem
}

.page-template-page-product .chiffre-cles-container .chiffre-container .chiffre-label-container .label {
    max-width: 160px
}

.page-template-page-product .section-benefices {
    display: flex
}

@media(min-width:990px) {
    .page-template-page-product .section-benefices {
        margin-bottom: 80px;
        padding-left: 5vw
    }
}

.page-template-page-product .section-benefices .section-benefices-title {
    margin-bottom: 50px
}

@media(min-width:990px) {
    .page-template-page-product .section-benefices .content {
        flex: 0 0 450px;
        padding: 40px 60px 0
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .section-benefices .content {
        padding-right: 15px;
        padding-left: 15px
    }
}

@media(max-width:769.98px) {
    .page-template-page-product .section-benefices .content {
        padding-right: 20px;
        padding-left: 20px
    }
}

.page-template-page-product .section-benefices .content .benefice-container {
    width: 100%
}

.page-template-page-product .section-benefices .content .benefice-container .titre {
    display: block;
    position: relative;
    padding-right: 20px;
    padding-left: 50px;
    transition: color .3s ease;
    font-size: 2.5rem;
    cursor: pointer
}

@media(min-width:990px) {
    .page-template-page-product .section-benefices .content .benefice-container .titre {
        padding-right: 20px
    }
}

.page-template-page-product .section-benefices .content .benefice-container .titre:hover {
    color: var(--vert)
}

.page-template-page-product .section-benefices .content .benefice-container .titre .icon-container {
    position: absolute;
    top: 0;
    left: 15px;
    transform: translateX(-50%)
}

.page-template-page-product .section-benefices .content .benefice-container .titre .icon-chevron-down {
    position: absolute;
    top: 50%;
    right: 0;
    width: 20px;
    height: 20px;
    transform: translateY(-50%);
    transition: transform .3s ease;
    color: var(--vert);
    font-size: 1.5rem
}

.page-template-page-product .section-benefices .content .benefice-container.ouverte .titre {
    color: var(--vert)
}

.page-template-page-product .section-benefices .content .benefice-container.ouverte .titre .icon-chevron-down {
    transform: translateY(-50%) rotate(-180deg)
}

.page-template-page-product .section-benefices .content .benefice-container .rte-content>:last-child {
    margin-bottom: 20px
}

.page-template-page-product .section-benefices .images-container {
    position: relative;
    overflow: hidden;
    background-color: black
}

@media(max-width:989.98px) {
    .page-template-page-product .section-benefices .images-container {
        display: none
    }
}

@media(min-width:990px) {
    .page-template-page-product .section-benefices .images-container {
        flex: 1 1 auto;
        height: calc(100% + 160px);
        margin-top: -80px
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .section-benefices .images-container {
        width: 100%;
        height: 50vw
    }
}

.page-template-page-product .section-benefices .images-container .carousel-slide {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.page-template-page-product .section-benefices .images-container .carousel-slide .image-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.page-template-page-product .section-benefices .images-container .carousel-slide .image-container .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.page-template-page-product .section-wtgi {
    display: flex
}

@media(min-width:990px) {
    .page-template-page-product .section-wtgi {
        padding-left: 5vw
    }
}

@media(min-width:990px) {
    .page-template-page-product .section-wtgi .content {
        flex: 0 0 50%;
        padding: 150px 100px 0 60px
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .section-wtgi .content {
        padding-right: 15px;
        padding-left: 15px
    }
}

@media(max-width:769.98px) {
    .page-template-page-product .section-wtgi .content {
        padding-right: 20px;
        padding-left: 20px;
        text-align: center
    }
}

.page-template-page-product .section-wtgi .content .wtgi-text {
    color: var(--vert);
    font-size: 5rem;
    line-height: 1.5
}

@media(max-width:769.98px) {
    .page-template-page-product .section-wtgi .content .wtgi-text {
        padding: 0 40px;
        font-size: 3.2rem
    }
}

.page-template-page-product .section-wtgi .content .content-wtgi-container {
    width: 100%
}

.page-template-page-product .section-wtgi .content .content-wtgi-container ul {
    margin: 0 0 60px;
    padding: 0;
    list-style: none
}

.page-template-page-product .section-wtgi .content .content-wtgi-container ul li {
    margin-bottom: 30px
}

.page-template-page-product .section-wtgi .content .content-wtgi-container ul li span {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin-right: 20px;
    border: 1px solid #d2d2d2;
    border-radius: 50%;
    color: var(--vert);
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 30px;
    text-align: center
}

.page-template-page-product .section-wtgi .images-container {
    position: relative;
    overflow: hidden
}

@media(max-width:989.98px) {
    .page-template-page-product .section-wtgi .images-container {
        display: none
    }
}

@media(min-width:990px) {
    .page-template-page-product .section-wtgi .images-container {
        flex: 1 1 auto;
        height: calc(100% + 190px);
        margin-top: -110px;
        margin-left: -70px
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .section-wtgi .images-container {
        width: 100%;
        height: 50vw
    }
}

.page-template-page-product .section-wtgi .images-container .image-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.page-template-page-product .section-wtgi .images-container .image-container .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.page-template-page-product .section-specifications {
    overflow-y: hidden
}

.page-template-page-product .section-specifications .product-section-title {
    margin-bottom: 80px
}

@media(min-width:990px) {
    .page-template-page-product .section-specifications .product-section-title {
        margin-bottom: 6vh
    }
}

.page-template-page-product .section-specifications .specifications-list {
    display: flex;
    position: relative;
    flex-wrap: wrap;
    align-items: baseline;
    margin-top: 30px
}

.page-template-page-product .section-specifications .specifications-list .single-specification {
    flex: 0 1 25%;
    margin-bottom: 80px;
    padding: 0 20px;
    text-align: center
}

@media(min-width:990px) {
    .page-template-page-product .section-specifications .specifications-list .single-specification {
        margin-bottom: 6vh
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .section-specifications .specifications-list .single-specification {
        flex: 1 1 50%;
        padding: 0 10px
    }
}

.page-template-page-product .section-specifications .specifications-list .single-specification.hidden-spec {
    transform: translateY(20px);
    opacity: .05
}

.page-template-page-product .section-specifications .specifications-list .spec-icon {
    display: block
}

.page-template-page-product .section-specifications .specifications-list .spec-icon svg {
    max-width: 30px;
    max-height: 30px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.vitesse svg {
    max-width: 50px;
    max-height: 30px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.remorquer svg {
    max-width: 40px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.fabrique svg {
    max-width: 45px;
    max-height: 45px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.porter svg {
    max-width: 45px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.motorisation svg {
    max-width: 45px;
    max-height: 50px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.largeur svg {
    max-width: 37px;
    max-height: 25px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.hauteur svg {
    max-width: 31px;
    max-height: 36px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.security svg {
    max-width: 45px;
    max-height: 50px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.work-width svg {
    max-width: 50px;
    max-height: 30px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.camera svg {
    max-width: 40px;
    max-height: 40px
}

.page-template-page-product .section-specifications .specifications-list .spec-icon.work_output svg {
    max-width: 46px;
    max-height: 24px
}

.page-template-page-product .section-specifications .specifications-list .spec-title {
    display: block;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.2
}

@media(max-width:989.98px) {
    .page-template-page-product .section-specifications .specifications-list .spec-title {
        font-size: 1.8rem
    }
}

.page-template-page-product .section-specifications .specifications-list .spec-label {
    font-size: 1.8rem
}

.page-template-page-product .section-specifications .cta-container {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center
}

.page-template-page-product .section-specifications .cta-container .read-more.disable {
    pointer-events: none
}

.page-template-page-product .section-specifications .read-more-container {
    position: relative;
    height: 400px
}

@media(max-width:989.98px) {
    .page-template-page-product .section-specifications .read-more-container {
        height: 740px
    }
}

.page-template-page-product .product-temoignages {
    display: flex;
    padding-top: 0;
    padding-bottom: 0
}

@media(min-width:990px) {
    .page-template-page-product .product-temoignages {
        align-items: center
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .product-temoignages {
        flex-direction: column-reverse
    }
}

.page-template-page-product .product-temoignages .temoignages-container {
    position: relative
}

@media(max-width:989.98px) {
    .page-template-page-product .product-temoignages .temoignages-container {
        padding-right: 15px;
        padding-left: 15px
    }
}

@media(min-width:990px) {
    .page-template-page-product .product-temoignages .temoignages-container {
        display: flex;
        flex: 0 0 50%;
        flex-direction: column;
        justify-content: center;
        min-width: 640px;
        height: 100%;
        padding-right: 80px;
        padding-left: 5vw
    }

    .page-template-page-product .product-temoignages .temoignages-container:after {
        content: "";
        position: absolute;
        top: 0;
        right: 5px;
        width: calc(50vw - 50% + 5px);
        height: 100%;
        transform: translateX(100%);
        background-color: black
    }
}

.page-template-page-product .product-temoignages .temoignages-images-container {
    z-index: 2;
    padding: 0 10%
}

@media(max-width:1249.98px) {
    .page-template-page-product .product-temoignages .temoignages-images-container {
        padding: 0 5%
    }
}

@media(min-width:990px) {
    .page-template-page-product .product-temoignages .temoignages-images-container {
        flex: 1 1 50%
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .product-temoignages .temoignages-images-container {
        padding: 0
    }
}

.page-template-page-product .product-temoignages .temoignages-images-container .temoignages-images {
    position: relative;
    width: 100%;
    overflow: hidden
}

.page-template-page-product .product-temoignages .temoignages-images-container .temoignages-images:before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 68.1818181818%
}

.page-template-page-product .product-temoignages .temoignages-images-container .temoignages-images .single-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden
}

.page-template-page-product .product-temoignages .temoignages-images-container .temoignages-images .single-image:not(.current) {
    transform: translateY(100%)
}

.page-template-page-product .product-temoignages .temoignages-images-container .temoignages-images .single-image:not(.current) img {
    transform: translateY(-90%)
}

.page-template-page-product .product-temoignages .temoignages-images-container .temoignages-images .single-image img {
    display: block;
    width: 100%
}

@media(min-width:990px) {
    .page-template-page-product .product-temoignages .temoignages-images-container .temoignages-images .single-image img {
        box-shadow: -25px 22px 35px -8px rgba(0, 0, 0, .25)
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .product-temoignages .temoignages-images-container .temoignages-images .single-image img {
        height: 70vw;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center center;
        object-position: center center
    }
}

.page-template-page-product .product-video-section {
    width: 100%;
    padding-top: 0;
    padding-bottom: 0
}

.page-template-page-product .product-video-section .video-container {
    height: 100%
}

.page-template-page-product .product-video-section .video-container .play-overlay {
    display: none
}

@media(min-width:990px) {
    .page-template-page-product .product-video-section .video-container .play-overlay {
        display: flex;
        position: absolute;
        z-index: 10;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        align-items: center;
        justify-content: center;
        transition: opacity .3s ease;
        opacity: 1;
        background-color: rgba(0, 0, 0, .2);
        text-align: center
    }

    .page-template-page-product .product-video-section .video-container .play-overlay .label {
        margin-top: 0;
        font-family: Sansation, sans-serif;
        font-weight: 400;
        line-height: 1.4;
        margin-bottom: 0;
        padding-top: 10%;
        color: #fff;
        font-size: 3.2rem
    }
}

@media(min-width:990px)and (min-width:770px) {
    .page-template-page-product .product-video-section .video-container .play-overlay .label {
        font-size: 5rem
    }
}

.page-template-page-product .product-video-section .video-container .background {
    transition: transform 1s ease
}

@media(max-width:989.98px) {
    .page-template-page-product .product-video-section .video-container:before {
        padding-top: 62%
    }
}

.page-template-page-product .product-video-section .video-container:hover .background {
    transform: scale(1.05)
}

.page-template-page-product .product-video-section .video-container:hover .play-overlay {
    opacity: 1
}

.page-template-page-product .section-carousel-functions {
    display: flex;
    align-items: stretch;
    overflow: hidden
}

@media(max-width:989.98px) {
    .page-template-page-product .section-carousel-functions {
        flex-direction: column;
        overflow: hidden
    }
}

.page-template-page-product .section-carousel-functions .carousel-heading {
    position: relative
}

@media(min-width:990px) {
    .page-template-page-product .section-carousel-functions .carousel-heading {
        display: flex;
        flex: 0 0 auto;
        flex-direction: column;
        justify-content: center;
        width: 570px;
        margin-left: auto;
        padding: 0 8vw 0 100px
    }
}

@media(max-width:989.98px) {
    .page-template-page-product .section-carousel-functions .carousel-heading {
        order: -1;
        margin-bottom: 50px;
        padding: 0 15px
    }
}

.page-template-page-product .section-carousel-functions .carousel-heading .medium-title,
.page-template-page-product .section-carousel-functions .carousel-heading .rte-content h2,
.rte-content .page-template-page-product .section-carousel-functions .carousel-heading h2 {
    margin-bottom: 0
}

.page-template-page-product .section-carousel-functions .carousel-heading .arrows-nav {
    margin-top: 40px
}

@media(max-width:989.98px) {
    .page-template-page-product .section-carousel-functions .carousel-heading .arrows-nav {
        display: none
    }
}

.page-template-page-product .section-carousel-functions .carousel-dots {
    margin-top: 20px
}

@media(min-width:990px) {
    .page-template-page-product .section-carousel-functions .carousel-dots {
        display: none
    }
}

.page-template-page-product .section-carousel-functions .carousel {
    position: relative;
    width: 320px
}

.page-template-page-product .section-carousel-functions .carousel .slides {
    display: flex;
    width: auto;
    white-space: nowrap
}

.page-template-page-product .section-carousel-functions .carousel .slide {
    position: relative;
    flex: 0 0 auto;
    width: 320px;
    padding: 0 10px;
    white-space: normal
}

.page-template-page-product .section-carousel-functions .carousel .slide>* {
    width: 100%
}

@media(max-width:989.98px) {
    .page-template-page-product .section-carousel-functions .carousel {
        margin: 0 auto
    }
}

@media(min-width:990px) {
    .page-template-page-product .section-carousel-functions .carousel {
        z-index: 0;
        flex: 0 0 auto;
        width: 340px;
        margin-left: calc(50vw - 495px)
    }

    .page-template-page-product .section-carousel-functions .carousel .slide {
        width: 340px;
        padding: 0 20px
    }

    .page-template-page-product .section-carousel-functions .carousel:after {
        content: "";
        display: block;
        position: absolute;
        z-index: 2;
        top: -2px;
        bottom: -2px;
        left: 100%;
        width: 100vw;
        background-color: #fff
    }
}

@media(min-width:1250px) {
    .page-template-page-product .section-carousel-functions .carousel {
        width: 680px;
        margin-left: calc(50vw - 625px)
    }
}

@media(min-width:1500px) {
    .page-template-page-product .section-carousel-functions .carousel {
        width: 1020px;
        margin-left: calc(50vw - 750px)
    }
}

.page-template-page-product .section-carousel-functions .carousel .slide .slide-inner.image-card .image-container {
    max-height: 380px
}

.page-template-page-product .section-carousel-functions .carousel .slide .slide-inner.image-card .content {
    height: 100%
}

.page-template-page-product .section-carousel-functions .carousel .slide .slide-inner.image-card .content .link {
    top: auto;
    bottom: 40px
}

body.page-template-page-product .product-btn-sticky {
    display: flex;
    position: fixed;
    z-index: 999;
    right: 30px;
    bottom: 30px;
    align-items: center;
    justify-content: center;
    padding: 17px 25px;
    transition: opacity .3s ease;
    border: 2px solid var(--vert);
    border-radius: 30px;
    background-color: #fff;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, .18);
    color: var(--vert);
    text-decoration: none
}

body.page-template-page-product .product-btn-sticky.hidden {
    opacity: 0;
    pointer-events: none
}

body.page-template-page-product .product-btn-sticky .icon.icon-contact-sales.after {
    font-size: 2.5rem
}

@media(max-width:989.98px) {
    body.page-template-page-product .product-btn-sticky {
        width: 58px;
        height: 58px;
        padding: 0
    }

    body.page-template-page-product .product-btn-sticky .icon.before,
    body.page-template-page-product .product-btn-sticky .label {
        display: none
    }

    body.page-template-page-product .product-btn-sticky .icon.after {
        font-size: 1.5rem
    }
}

.page-template-page-a-propos .double-image-texte-cont {
    margin-top: 40px
}

@media(min-width:990px) {
    .page-template-page-a-propos .double-image-texte-cont {
        display: flex
    }
}

.page-template-page-a-propos .double-image-texte-img {
    display: flex;
    flex: 0 1 50%
}

.page-template-page-a-propos .double-image-texte-img .img-l,
.page-template-page-a-propos .double-image-texte-img .img-l-cont,
.page-template-page-a-propos .double-image-texte-img .img-s,
.page-template-page-a-propos .double-image-texte-img .img-s-cont {
    position: relative
}

.page-template-page-a-propos .double-image-texte-img .img-l,
.page-template-page-a-propos .double-image-texte-img .img-s {
    widows: 100%;
    overflow: hidden
}

.page-template-page-a-propos .double-image-texte-img .img-l img,
.page-template-page-a-propos .double-image-texte-img .img-s img {
    position: absolute;
    top: 0;
    width: auto;
    min-width: 100%;
    height: auto;
    min-height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.page-template-page-a-propos .double-image-texte-img .img-l-cont {
    width: 75%
}

@media(max-width:989.98px) {
    .page-template-page-a-propos .double-image-texte-img .img-l-cont {
        width: 100%;
        max-width: 500px;
        margin: 0 auto
    }
}

.page-template-page-a-propos .double-image-texte-img .img-s-cont {
    width: 35%;
    margin-top: -10%;
    margin-left: -10%
}

@media(max-width:989.98px) {
    .page-template-page-a-propos .double-image-texte-img .img-s-cont {
        display: none
    }
}

.page-template-page-a-propos .double-image-texte-img .img-l {
    padding-top: 127.8260869565%
}

.page-template-page-a-propos .double-image-texte-img .img-s {
    padding-top: 130.9523809524%
}

.page-template-page-a-propos .double-image-texte-txt {
    flex: 0 0 500px;
    margin-top: 50px;
    margin-left: 100px
}

@media(max-width:1249.98px) {
    .page-template-page-a-propos .double-image-texte-txt {
        flex: 0 0 420px
    }
}

@media(max-width:989.98px) {
    .page-template-page-a-propos .double-image-texte-txt {
        margin-left: 0
    }
}

.page-template-page-a-propos .text-image-overflow {
    display: flex;
    width: 100%
}

@media(min-width:990px) {
    .page-template-page-a-propos .text-image-overflow {
        padding-bottom: 0
    }
}

@media(max-width:989.98px) {
    .page-template-page-a-propos .text-image-overflow {
        flex-direction: column-reverse
    }
}

.page-template-page-a-propos .text-image-overflow-txt {
    margin: 50px 6vw
}

@media(min-width:990px) {
    .page-template-page-a-propos .text-image-overflow-txt {
        flex: 0 0 420px
    }
}

@media(max-width:989.98px) {
    .page-template-page-a-propos .text-image-overflow-txt {
        margin: 50px 20px 0
    }
}

.page-template-page-a-propos .text-image-overflow-img {
    flex: 1 1 auto
}

@media(min-width:990px) {
    .page-template-page-a-propos .text-image-overflow-img {
        min-height: 400px
    }
}

@media(max-width:989.98px) {
    .page-template-page-a-propos .text-image-overflow-img {
        margin: 0 20px
    }
}

.page-template-page-a-propos .text-image-overflow-img img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.page-template-page-a-propos .image-text-gris {
    width: 100%
}

@media(min-width:990px) {
    .page-template-page-a-propos .image-text-gris {
        display: flex;
        padding-top: 0
    }
}

.page-template-page-a-propos .image-text-gris-img {
    height: 42vw;
    min-height: 500px;
    margin-top: 180px
}

@media(min-width:990px) {
    .page-template-page-a-propos .image-text-gris-img {
        flex: 1 1 calc(100vw - 730px)
    }
}

@media(max-width:989.98px) {
    .page-template-page-a-propos .image-text-gris-img {
        margin: 0 20px
    }
}

.page-template-page-a-propos .image-text-gris-img img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.page-template-page-a-propos .image-text-gris-txt {
    z-index: 2;
    flex: 0 0 610px;
    padding: 120px 80px;
    background-color: black
}

@media(min-width:990px) {
    .page-template-page-a-propos .image-text-gris-txt {
        height: -webkit-min-content;
        height: -moz-min-content;
        height: min-content;
        margin-left: -120px
    }
}

@media(max-width:989.98px) {
    .page-template-page-a-propos .image-text-gris-txt {
        margin: 0 20px;
        padding: 40px
    }
}

.page-template-page-a-propos .image-text-gris-txt .rte-content,
.page-template-page-a-propos .image-text-gris-txt h2 {
    color: #fff
}

@media(min-width:990px) {
    .page-template-page-press .section-pr-intro-cont {
        display: flex;
        justify-content: space-between
    }
}

.page-template-page-press .load-more-btn {
    display: block;
    width: 350px;
    margin: 50px auto 0
}

.page-template-page-press .section-pr-intro-single {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 40px 30px;
    border-radius: 15px
}

@media(min-width:990px) {
    .page-template-page-press .section-pr-intro-single {
        width: calc(50% - 30px);
        padding: 50px
    }
}

@media(max-width:989.98px) {
    .page-template-page-press .section-pr-intro-single:not(:last-child) {
        margin-bottom: 20px
    }
}

.page-template-page-press .section-pr-intro-single.pr-contact {
    border: 1px solid #dce0e4
}

.page-template-page-press .section-pr-intro-single.pr-kit {
    background-color: var(--vert);
    text-decoration: none
}

.page-template-page-press .pr-contact-cont,
.page-template-page-press .pr-kit-cont {
    max-width: 380px
}

.page-template-page-press .pr-contact .section-pr-intro-title {
    font-size: 3.4rem
}

.page-template-page-press .pr-kit .section-pr-intro-title {
    color: #fff
}

.page-template-page-press .pr-contact-list {
    padding-left: 0;
    list-style: none
}

.page-template-page-press .pr-contact-single {
    display: inline-block;
    margin-left: -.2em;
    padding: .2em;
    color: black;
    font-size: 1.6rem;
    text-decoration: none
}

.page-template-page-press .pr-contact-single .icon {
    margin-right: 10px;
    color: var(--vert)
}

.page-template-page-press .pr-contact-single .icon-mail {
    font-size: .9rem
}

.page-template-page-press .pr-contact-single .icon-phone {
    font-size: 1.5rem
}

.page-template-page-press .section-pr-intro-icon {
    text-align: right
}

.page-template-page-press .pr-contact .section-pr-intro-icon .icon {
    color: var(--vert);
    font-size: 5.5rem
}

.page-template-page-press .pr-kit .section-pr-intro-icon .download-icon {
    display: inline-block;
    width: 5.5rem;
    height: 5.5rem;
    margin: 0;
    border: 1px solid hsla(0, 0%, 100%, .2);
    border-radius: 50px;
    color: #fff;
    text-align: left
}

.page-template-page-press .pr-kit .section-pr-intro-icon .download-icon svg {
    display: inline-block;
    width: 1.6rem;
    margin-top: 1.4rem;
    margin-left: 1.9rem
}

.page-template-page-press .pr-kit:hover .download-icon svg .arrow {
    transform: translateY(3px)
}

.page-template-page-press .pr-gallery-title {
    margin-bottom: 50px
}

.page-template-page-press .pr-gallery-dl .icon-download {
    font-size: 1.6rem
}

@media(min-width:990px) {
    .page-template-page-press .pr-gallery-filters-cont {
        display: flex;
        align-items: center;
        justify-content: space-between
    }
}

.grid-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    margin: 50px -10px -20px
}

.grid-container .grid-item {
    width: 100%;
    padding: 0 10px 20px
}

@media(min-width:570px) {
    .grid-container .grid-item {
        width: 50%
    }
}

@media(min-width:770px) {
    .grid-container .grid-item {
        width: 33.3333333333%
    }
}

@media(min-width:1250px) {
    .grid-container .grid-item {
        width: 25%
    }
}

.grid-container .image-container {
    position: relative;
    padding-top: 100%
}

.grid-container .image-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.grid-container .simple-card {
    position: relative
}

.grid-container .gallery-card-dl {
    position: absolute;
    right: 15px;
    bottom: 15px;
    width: 50px;
    height: 50px;
    border: 1px solid hsla(0, 0%, 100%, .3);
    border-radius: 25px;
    text-align: center
}

.grid-container .gallery-card-dl .download-icon {
    top: 10px;
    margin: 0;
    color: #fff
}

.grid-container .gallery-card-dl:hover .download-icon svg .arrow {
    transform: translateY(3px)
}

.page-template-page-commande-oz .wrapper-left,
.page-template-page-commande .wrapper-left {
    overflow: hidden
}

.page-template-page-commande-oz .cancel-section .medium-title,
.page-template-page-commande-oz .cancel-section .rte-content h2,
.page-template-page-commande-oz .succes-section .medium-title,
.page-template-page-commande-oz .succes-section .rte-content h2,
.page-template-page-commande .cancel-section .medium-title,
.page-template-page-commande .cancel-section .rte-content h2,
.page-template-page-commande .succes-section .medium-title,
.page-template-page-commande .succes-section .rte-content h2,
.rte-content .page-template-page-commande-oz .cancel-section h2,
.rte-content .page-template-page-commande-oz .succes-section h2,
.rte-content .page-template-page-commande .cancel-section h2,
.rte-content .page-template-page-commande .succes-section h2 {
    margin-bottom: 40px;
    color: var(--vert)
}

.page-template-page-commande-oz .cancel-section .chapo,
.page-template-page-commande-oz .succes-section .chapo,
.page-template-page-commande .cancel-section .chapo,
.page-template-page-commande .succes-section .chapo {
    margin-bottom: 40px
}

.page-template-page-commande-oz .step-menu-item,
.page-template-page-commande .step-menu-item {
    display: flex;
    align-items: center;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--vert);
    text-align: left;
    pointer-events: none
}

.page-template-page-commande-oz .step-menu-item .number,
.page-template-page-commande .step-menu-item .number {
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    transition: border-color .3s ease, color .3s ease, background-color .3s ease;
    border: 1px solid var(--vert);
    border-radius: 50%;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 29px;
    text-align: center
}

.page-template-page-commande-oz .step-menu-item .label,
.page-template-page-commande .step-menu-item .label {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1.8;
    text-transform: uppercase;
    margin-top: 2px;
    margin-left: 10px;
    border-bottom: 1px solid transparent;
    line-height: 1.2
}

@media(max-width:989.98px) {

    .page-template-page-commande-oz .step-menu-item .label,
    .page-template-page-commande .step-menu-item .label {
        display: none
    }
}

@media(max-width:989.98px) {

    .page-template-page-commande-oz .step-menu-item.current,
    .page-template-page-commande .step-menu-item.current {
        flex: 1 1 auto
    }
}

.page-template-page-commande-oz .step-menu-item.current .number,
.page-template-page-commande .step-menu-item.current .number {
    background-color: var(--vert);
    color: #fff
}

@media(max-width:989.98px) {

    .page-template-page-commande-oz .step-menu-item.current .label,
    .page-template-page-commande .step-menu-item.current .label {
        display: block
    }
}

.page-template-page-commande-oz .step-menu-item:not(.disabled):not(.current),
.page-template-page-commande .step-menu-item:not(.disabled):not(.current) {
    cursor: pointer;
    pointer-events: all
}

.page-template-page-commande-oz .step-menu-item:not(.disabled):not(.current) .label,
.page-template-page-commande .step-menu-item:not(.disabled):not(.current) .label {
    border-bottom-color: var(--vert)
}

.page-template-page-commande-oz .step-menu-item.disabled,
.page-template-page-commande .step-menu-item.disabled {
    color: rgba(50, 63, 79, .2)
}

.page-template-page-commande-oz .step-menu-item.disabled .number,
.page-template-page-commande .step-menu-item.disabled .number {
    border-color: rgba(50, 63, 79, .2);
    color: rgba(50, 63, 79, .2)
}

.page-template-page-commande-oz .step-menu-item:focus,
.page-template-page-commande .step-menu-item:focus {
    outline: none
}

.page-template-page-commande-oz .step-title,
.page-template-page-commande .step-title {
    margin-bottom: 40px;
    color: black;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.5
}

.page-template-page-commande-oz .steps-container,
.page-template-page-commande .steps-container {
    position: relative;
    margin-right: -20px;
    margin-left: -20px;
    overflow: hidden
}

.page-template-page-commande-oz .steps-container .step,
.page-template-page-commande .steps-container .step {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-right: 20px;
    padding-left: 20px
}

.page-template-page-commande-oz .accepts-container,
.page-template-page-commande .accepts-container {
    margin-top: 0;
    margin-bottom: 40px
}

.page-template-page-commande-oz .accepts-container>:not(:last-child),
.page-template-page-commande .accepts-container>:not(:last-child) {
    margin-bottom: 30px
}

.page-template-page-commande-oz .back-link,
.page-template-page-commande .back-link {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    padding: 0;
    transition: color .3s ease;
    border: 0;
    background: transparent;
    color: black;
    cursor: pointer
}

.page-template-page-commande-oz .back-link .icon,
.page-template-page-commande .back-link .icon {
    margin-right: 10px;
    transition: transform .3s ease;
    font-size: 1.2rem
}

.page-template-page-commande-oz .back-link:hover .icon,
.page-template-page-commande .back-link:hover .icon {
    transform: translateX(-5px)
}

.page-template-page-commande-oz .back-link:focus,
.page-template-page-commande .back-link:focus {
    outline: none;
    color: var(--vert)
}

.page-template-page-commande .objectifs-container {
    display: grid;
    grid-auto-rows: 1fr;
    grid-gap: 10px;
    grid-template-columns: 1fr 1fr;
    width: 100%
}

@media(min-width:990px) {
    .page-template-page-commande .objectifs-container {
        grid-gap: 15px;
        grid-template-columns: repeat(auto-fit, 180px)
    }
}

.page-template-page-commande .objectifs-container.four {
    grid-template-columns: repeat(2, 180px)
}

.page-template-page-commande .objectif-radio {
    position: relative
}

.page-template-page-commande .objectif-radio.js-hidden {
    display: none
}

.page-template-page-commande .objectif-radio input {
    position: absolute;
    top: 20px;
    left: 6px;
    width: 1px !important;
    height: 1px !important;
    opacity: 0
}

.page-template-page-commande .objectif-radio input:checked~.push {
    border-color: var(--vert);
    background-color: #fff;
    color: var(--vert)
}

.page-template-page-commande .objectif-radio .push {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 50px 20px;
    transition: color .3s ease, background-color .3s ease, border-color .3s ease;
    border: 2px solid #f6f7f9;
    border-radius: 15px;
    background-color: #f6f7f9;
    color: black;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    cursor: pointer
}

.page-template-page-commande .objectif-radio .svg-icon {
    margin-bottom: 10px
}

.page-template-page-commande .objectif-radio .label {
    margin: auto
}

.page-template-page-commande .objectif-radio:hover .push {
    color: var(--vert)
}

.page-template-page-commande .crop-details {
    margin-top: 40px;
    overflow: hidden
}

.page-template-page-commande .hectares-converter {
    display: flex
}

.page-template-page-commande .hectares-converter .icon {
    margin: auto 15px;
    font-size: 1.2rem
}

.page-template-page-commande-oz .medium-title,
.page-template-page-commande-oz .rte-content h2,
.rte-content .page-template-page-commande-oz h2 {
    margin-top: 20px
}

.page-template-page-commande-oz .prices>* {
    margin: 0;
    padding: 15px 0
}

.page-template-page-commande-oz .prices>:not(:last-child) {
    border-bottom: 1px solid #dce0e4
}

.page-template-page-commande-oz .refund-info {
    max-width: 500px;
    font-size: 1.6rem
}

.page-template-page-commande-oz .details {
    padding-left: 0;
    font-size: 1.6rem
}

.page-template-page-commande-oz .details .detail {
    position: relative;
    padding-left: 30px;
    list-style: none
}

.page-template-page-commande-oz .details .detail:not(:last-of-type) {
    margin-bottom: 10px
}

.page-template-page-commande-oz .details .detail:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: .5em;
    left: 0;
    width: 13px;
    height: 11px;
    background-image: url(../images/list-check.svg);
    background-size: 13px 11px
}

.page-template-page-commande-oz .details .detail .sublist {
    padding-left: 0
}

.page-template-page-commande-oz .details .detail .sublist .sublist-item {
    position: relative;
    margin-top: 10px;
    padding-left: 15px;
    list-style: none
}

.page-template-page-commande-oz .details .detail .sublist .sublist-item:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: .6em;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: var(--vert)
}

.page-template-page-commande-oz .price-line {
    display: flex;
    align-items: center
}

.page-template-page-commande-oz .price-line .label {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    flex: 1 1 auto;
    padding-right: 20px;
    color: black
}

.page-template-page-commande-oz .price-line .price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    color: #647994
}

.page-template-page-commande-oz .price-line .price .amount {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2
}

.page-template-page-commande-oz .price-line .price .taxs {
    font-size: 1.4rem
}

.page-template-page-commande-oz .price-line.total .price {
    color: var(--vert)
}

.page-template-page-commande-oz .price-line.total .price .amount {
    font-size: 4rem
}

.news-list {
    margin-right: -30px;
    margin-bottom: -60px;
    margin-left: -30px
}

@media(max-width:989.98px) {
    .news-list {
        margin-right: -20px;
        margin-bottom: -40px;
        margin-left: -20px
    }
}

.news-list .news-single-card {
    padding: 0 30px 60px
}

@media(max-width:989.98px) {
    .news-list .news-single-card {
        padding: 0 20px 40px
    }
}

.news-list .news-single-card .simple-card {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: 100%;
    text-decoration: none
}

.news-list .news-single-card .simple-card .news-card-thumb {
    padding-top: 64%;
    overflow: hidden;
    border-radius: 4px
}

.news-list .news-single-card .simple-card .news-card-thumb img {
    transform-origin: 50% 50%;
    transition: transform .5s cubic-bezier(.4, 0, .2, 1)
}

.news-list .news-single-card .simple-card .news-card-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: stretch;
    height: 100%
}

.news-list .news-single-card .simple-card .news-card-content .news-card-date {
    margin-top: auto
}

.news-list .news-single-card .simple-card .news-card-cat,
.news-list .news-single-card .simple-card .news-card-date {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    margin-top: 20px;
    color: #647994
}

.news-list .news-single-card .simple-card .news-card-cat {
    transition: color .3s ease
}

.news-list .news-single-card .simple-card .news-card-title {
    max-height: 6em;
    overflow: hidden;
    transition: color .3s ease;
    color: black;
    font-size: 1.8rem;
    font-weight: 400;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    margin: 15px 0
}

.news-list .news-single-card .simple-card .news-card-date {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 10px;
    transition: color .3s ease, border-top .3s ease;
    border-top: 1px solid #dce0e4
}

.news-list .news-single-card .simple-card .news-card-date .icon {
    transform: translateX(-10px);
    transition: transform .5s cubic-bezier(.075, .82, .165, 1), opacity .5s cubic-bezier(.075, .82, .165, 1);
    opacity: 0
}

.news-list .news-single-card .simple-card:hover .news-card-thumb img {
    transform: scale(1.05)
}

.news-list .news-single-card .simple-card:hover .news-card-cat,
.news-list .news-single-card .simple-card:hover .news-card-date,
.news-list .news-single-card .simple-card:hover .news-card-title {
    color: var(--vert)
}

.news-list .news-single-card .simple-card:hover .news-card-date {
    border-top: 1px solid var(--vert)
}

.news-list .news-single-card .simple-card:hover .news-card-date .icon {
    transform: translateX(0);
    opacity: 1
}

.page-template-page-jobs .page-intro.background-image .background img {
    -o-object-position: top center;
    object-position: top center
}

.page-template-page-jobs .offers-cat:not(:last-child) {
    margin-bottom: 80px
}

@media(max-width:989.98px) {
    .page-template-page-jobs .offers-cat:not(:last-child) {
        margin-bottom: 40px
    }
}

.page-template-page-jobs .section-offers-title {
    max-width: 540px;
    margin-bottom: 50px
}

@media(min-width:990px) {
    .page-template-page-jobs .section-offers-title {
        margin-bottom: 80px
    }
}

.page-template-page-jobs .offers-cat-title {
    margin-bottom: 40px;
    font-size: 3.4rem
}

@media(max-width:769.98px) {
    .page-template-page-jobs .offers-cat-title {
        margin-bottom: 15px
    }
}

@media(min-width:990px) {
    .page-template-page-jobs .offers-anchors {
        margin-top: 50px;
        margin-bottom: 20px
    }
}

.page-template-page-jobs .offers-anchors .single-filter:before {
    transform: scale(1);
    transition: background-color .3s ease
}

.page-template-page-jobs .offers-anchors .single-filter:hover .label {
    color: #fff
}

.page-template-page-jobs .offers-anchors .single-filter:hover:before {
    background-color: var(--vert)
}

@media(max-width:769.98px) {
    .page-template-page-jobs .offers-list {
        width: 100vw;
        margin-left: -20px
    }
}

.page-template-page-jobs .offers-params,
.page-template-page-jobs .single-offer {
    display: flex;
    align-items: center;
    padding: 20px
}

@media(min-width:990px) {

    .page-template-page-jobs .offers-params,
    .page-template-page-jobs .single-offer {
        padding: 30px 40px
    }
}

.page-template-page-jobs .offers-params .offer-title,
.page-template-page-jobs .single-offer .offer-title {
    width: 26%
}

@media(max-width:1249.98px) {

    .page-template-page-jobs .offers-params .offer-title,
    .page-template-page-jobs .single-offer .offer-title {
        width: 100%
    }
}

@media(max-width:769.98px) {

    .page-template-page-jobs .offers-params .offer-title,
    .page-template-page-jobs .single-offer .offer-title {
        width: 60%
    }
}

.page-template-page-jobs .offers-params .offer-location,
.page-template-page-jobs .single-offer .offer-location {
    width: 20%
}

@media(max-width:1249.98px) {

    .page-template-page-jobs .offers-params .offer-location,
    .page-template-page-jobs .single-offer .offer-location {
        width: 33%
    }
}

@media(max-width:769.98px) {

    .page-template-page-jobs .offers-params .offer-location,
    .page-template-page-jobs .single-offer .offer-location {
        width: 40%;
        text-align: right
    }
}

.page-template-page-jobs .offers-params .offer-contract,
.page-template-page-jobs .single-offer .offer-contract {
    width: 14%
}

@media(max-width:1249.98px) {

    .page-template-page-jobs .offers-params .offer-contract,
    .page-template-page-jobs .single-offer .offer-contract {
        width: 20%
    }
}

@media(max-width:769.98px) {

    .page-template-page-jobs .offers-params .offer-contract,
    .page-template-page-jobs .single-offer .offer-contract {
        width: 100%
    }
}

.page-template-page-jobs .offers-params .offer-time,
.page-template-page-jobs .single-offer .offer-time {
    width: 15%
}

@media(max-width:1249.98px) {

    .page-template-page-jobs .offers-params .offer-time,
    .page-template-page-jobs .single-offer .offer-time {
        width: 18%
    }
}

@media(max-width:769.98px) {

    .page-template-page-jobs .offers-params .offer-time,
    .page-template-page-jobs .single-offer .offer-time {
        width: 100%
    }
}

.page-template-page-jobs .offers-params .offer-date,
.page-template-page-jobs .single-offer .offer-date {
    width: 15%
}

@media(max-width:1249.98px) {

    .page-template-page-jobs .offers-params .offer-date,
    .page-template-page-jobs .single-offer .offer-date {
        width: 24%
    }
}

@media(max-width:769.98px) {

    .page-template-page-jobs .offers-params .offer-date,
    .page-template-page-jobs .single-offer .offer-date {
        width: 100%
    }
}

.page-template-page-jobs .offers-params {
    border-bottom: 1px solid #f6f7f9
}

@media(max-width:1249.98px) {
    .page-template-page-jobs .offers-params {
        display: none
    }
}

.page-template-page-jobs .offers-params>span {
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase
}

.page-template-page-jobs .offers-params>span .icon {
    margin-right: 1rem;
    color: var(--vert);
    font-size: 1rem
}

.page-template-page-jobs .single-offer {
    color: black;
    text-decoration: none
}

@media(min-width:770px) {
    .page-template-page-jobs .single-offer {
        border-radius: 15px
    }
}

@media(max-width:1249.98px) {
    .page-template-page-jobs .single-offer {
        flex-wrap: wrap
    }
}

.page-template-page-jobs .single-offer .offer-single-detail {
    transition: color .3s ease;
    font-size: 1.6rem
}

.page-template-page-jobs .single-offer .offer-title {
    font-weight: 700
}

.page-template-page-jobs .single-offer .offer-apply {
    flex: 1 1 auto;
    margin-top: -.3em;
    text-align: right
}

@media(max-width:1249.98px) {
    .page-template-page-jobs .single-offer .offer-apply {
        margin-top: -1.5em
    }
}

.page-template-page-jobs .single-offer .offer-apply span {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    display: inline-block;
    transform: translateX(-10px);
    transition: transform .3s cubic-bezier(.4, 0, .2, 1), opacity .3s ease;
    opacity: 0;
    color: var(--vert)
}

.page-template-page-jobs .single-offer .offer-apply .icon {
    margin-left: 10px;
    color: var(--vert);
    font-size: 1.4rem
}

.page-template-page-jobs .single-offer:nth-of-type(2n) {
    background-color: #f6f7f9
}

.page-template-page-jobs .no-offers-text {
    max-width: 100%;
    margin-bottom: 50px
}

@media(min-width:990px) {
    .page-template-page-jobs .no-offers-text {
        margin-bottom: 80px
    }
}

.page-template-page-jobs:not(.touch-device) .single-offer:hover .offer-single-detail {
    color: var(--vert)
}

.page-template-page-jobs:not(.touch-device) .single-offer:hover .offer-apply span {
    transform: translateX(0);
    opacity: 1
}

.single-job .page-intro {
    padding-bottom: 50px
}

.offre-subheading {
    margin-bottom: 20px
}

@media(min-width:770px) {
    .offre-subheading .offre-subheading-container {
        display: flex;
        align-items: center;
        justify-content: center
    }
}

@media(min-width:770px) {
    .offre-subheading .offre-subheading-container .subheading-part {
        width: 50%
    }
}

@media(max-width:769.98px) {
    .offre-subheading .offre-subheading-container .subheading-part {
        text-align: center
    }
}

@media(min-width:770px) {
    .offre-subheading .offre-subheading-container .subheading-part-left {
        padding-right: 80px;
        border-right: 1px solid #dce0e4;
        text-align: right
    }
}

@media(max-width:769.98px) {
    .offre-subheading .offre-subheading-container .subheading-part-left {
        margin-bottom: 20px
    }
}

@media(min-width:770px) {
    .offre-subheading .offre-subheading-container .subheading-part-right {
        padding-left: 80px
    }
}

@media(max-width:769.98px) {
    .offre-subheading .offre-subheading-container .subheading-part-right .subhead-label {
        display: none
    }

    .offre-subheading .offre-subheading-container .subheading-part-right .share-list {
        padding-left: 0
    }
}

.offre-subheading .offre-subheading-container .subhead-label {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase
}

.offre-subheading .offre-subheading-container .subheading-part-left .subhead-label span {
    margin-left: 5px;
    color: var(--vert)
}

.offre-container {
    display: flex;
    align-items: flex-start;
    justify-content: space-between
}

@media(max-width:989.98px) {
    .offre-container {
        flex-direction: column
    }
}

@media(min-width:990px) {
    .offre-container .offre-summary {
        flex: 0 0 400px;
        padding: 50px 70px;
        border: 1px solid #dce0e4;
        border-radius: 15px;
        box-shadow: 0 8px 24px -12px rgba(0, 0, 0, .25)
    }
}

@media(max-width:989.98px) {
    .offre-container .offre-summary {
        width: 100vw;
        margin-bottom: 80px;
        margin-left: -15px;
        padding: 50px 15px;
        border-top: 1px solid #dce0e4;
        border-bottom: 1px solid #dce0e4
    }
}

@media(max-width:769.98px) {
    .offre-container .offre-summary {
        margin-left: -20px;
        padding: 50px 20px
    }
}

.offre-container .offre-summary-title {
    margin-bottom: 30px;
    font-size: 3.4rem
}

@media(max-width:989.98px) {
    .offre-container .offre-summary-title {
        display: none
    }
}

.offre-container .offre-details-list {
    margin-bottom: 0;
    padding-left: 0;
    list-style: none
}

@media(max-width:989.98px) {
    .offre-container .offre-details-list {
        display: flex;
        flex-wrap: wrap
    }
}

.offre-container .single-detail:not(:last-of-type) {
    margin-bottom: 20px
}

@media(max-width:989.98px) {
    .offre-container .single-detail {
        width: 50%;
        width: 100%
    }
}

.offre-container .single-detail:last-of-type .single-detail-item {
    margin-bottom: 0
}

.offre-container .single-detail-title {
    display: block;
    margin-bottom: 0;
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase
}

.offre-container .single-detail-title .icon {
    margin-right: 10px;
    color: var(--vert)
}

.offre-container .single-detail-item {
    font-size: 1.8rem
}

.offre-container .offre-detail-cta {
    margin-top: 30px
}

@media(min-width:990px) {
    .offre-container .offre-content {
        flex: 0 1 calc(100% - 500px)
    }
}

.offre-container .offre-content-block:not(:first-of-type) {
    padding-top: 40px
}

.offre-container .offre-content-block:not(:last-of-type) {
    padding-bottom: 40px
}

.offre-container .offre-chapo {
    font-size: 2.5rem
}

.offre-container .offre-content-title {
    margin-bottom: 20px;
    font-size: 3.4rem
}

.offre-container .offre-content-cta {
    margin-top: 30px
}

@media(min-width:990px) {
    .offre-container .offre-content-cta {
        display: none
    }
}

.offre-container .rte-content-offre ul {
    padding-left: 0
}

.offre-container .rte-content-offre ul li {
    position: relative;
    padding-left: 30px;
    list-style: none
}

.offre-container .rte-content-offre ul li:not(:last-of-type) {
    margin-bottom: 10px
}

.offre-container .rte-content-offre ul li:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: .5em;
    left: 0;
    width: 10px;
    height: 10px;
    background-image: url(../images/chevron-right-thin.svg);
    background-size: 10px 10px
}

.page-template-page-candidature .page-intro {
    padding-bottom: 80px
}

.page-template-page-candidature .big-title span {
    display: block;
    font-weight: 400
}

.page-template-page-candidature .form-candidature {
    padding-bottom: 120px
}

.wrapper-candidature {
    max-width: 740px
}

.page-template-page-contact-php .map-container {
    position: relative;
    width: 100%;
    margin: 1em 0
}

@media(max-width:989.98px) {
    .page-template-page-contact-php .map-container {
        margin: 40px 0
    }
}

.page-template-page-contact-php .map-container .map-inner {
    position: relative;
    width: 100%;
    padding-top: 60%
}

@media(max-width:1249.98px) {
    .page-template-page-contact-php .map-container .map-inner {
        padding-top: 80%
    }
}

@media(max-width:989.98px) {
    .page-template-page-contact-php .map-container .map-inner {
        padding-top: 150%
    }
}

.page-template-page-contact-php .map-container #map {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 12px
}

.page-template-page-contact-php .map-container #map:focus {
    outline: none
}

.page-template-page-contact-php .map-container #map-nav {
    padding: 20px;
    border-radius: 10px;
    background-color: #fff
}

@media(min-width:770px) {
    .page-template-page-contact-php .map-container #map-nav {
        position: absolute;
        z-index: 100;
        top: 20px;
        left: 20px;
        min-width: 250px
    }
}

@media(max-width:769.98px) {
    .page-template-page-contact-php .map-container #map-nav {
        width: 100%;
        margin-bottom: 20px;
        border: 1px solid rgba(50, 63, 79, .1)
    }
}

.page-template-page-contact-php .map-container #map-nav .map-nav-title {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 1.8;
    text-transform: uppercase;
    margin-bottom: 2rem;
    color: black
}

.page-template-page-contact-php .map-container #map-nav .map-nav-list {
    margin-bottom: 0;
    padding: 0;
    list-style: none
}

.page-template-page-contact-php .map-container #map-nav .map-nav-list .map-nav-item {
    display: flex
}

@media(max-width:769.98px) {
    .page-template-page-contact-php .map-container #map-nav .map-nav-list .map-nav-item {
        align-items: center
    }
}

.page-template-page-contact-php .map-container #map-nav .map-nav-list .map-nav-item:not(:first-child) {
    margin-top: 10px
}

.page-template-page-contact-php .map-container #map-nav .map-nav-list .map-nav-item:not(:last-child) {
    margin-bottom: 10px
}

.page-template-page-contact-php .map-container #map-nav .map-nav-list .map-nav-item svg {
    width: 33px;
    margin-right: 20px
}

.page-template-page-contact-php .map-container #map-nav .map-nav-list .map-nav-item button.active {
    background-color: white;
    color: black;
}

.header {
    border: 1px solid #000
}

.pagination-block {
    text-align: center
}

.pagination-block .pagination {
    display: inline-block
}

.pagination-block .pagination li {
    margin: 0 5px;
    display: inline-block
}

.rte-content img {
    max-width: 100%
}

.rte-content figure.wp-block-image {
    margin: 0 0 30px
}

.rte-content figure.wp-block-gallery,
.rte-content figure.wp-block-gallery ul.blocks-gallery-grid {
    margin: 0;
    padding: 0
}

.rte-content figure.wp-block-gallery ul.blocks-gallery-grid li {
    display: block
}

.rte-content figure.wp-block-gallery ul.blocks-gallery-grid li * {
    margin: 0
}

.rte-content figure.wp-block-gallery ul.blocks-gallery-grid li figure {
    display: block;
    margin-bottom: 15px
}

.rte-content figure.wp-block-gallery ul.blocks-gallery-grid li img {
    max-width: 100%
}

.page-template-page-jobs .welcomekit-jobs-list-item {
    margin: 0;
    padding: 0;
}

.page-template-page-jobs .welcomekit-jobs-list-item::marker {
    color: var(--vert);
}

.page-template-page-jobs .welcomekit-jobs-list-item-link {
    position: relative;
    display: block;
    margin: 0;
    padding: 30px 5px;
    border-bottom: 1px solid #eee;
    text-decoration: none;
    transition: all 0.2s;
}

.page-template-page-jobs .welcomekit-jobs-list-item-link:after {
    position: absolute;
    top: 50%;
    right: 30px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    content: ' ';
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
    transform: rotate(45deg);
    transition: all 0.2s;
}

.page-template-page-jobs .welcomekit-jobs-list-item-link:hover {
    background: #f5f5f5;
    border-bottom-color: #ddd;
}

.page-template-page-jobs .welcomekit-jobs-list-item-link:hover:after {
    right: 20px;
    border-top-color: #aaa;
    border-right-color: #aaa;
}

.page-template-page-jobs .welcomekit-job-name {
    margin: 0 0 10px 0;
    padding: 0;
    font-weight: 500;
    font-size: 19px;
    line-height: 20px;
    color: var(--vert);
}

.page-template-page-jobs .welcomekit-job-infos {
    margin: 0;
    padding: 0;
}

.page-template-page-jobs .welcomekit-job-infos>li {
    position: relative;
    display: inline-block;
    margin: 0 34px 0 0;
    color: #aaa;
}

.page-template-page-jobs .welcomekit-job-infos>li:before {
    position: absolute;
    top: 12px;
    left: -20px;
    content: ' ';
    display: block;
    height: 6px;
    width: 6px;
    background: #ddd;
    border-radius: 50%;
}

.page-template-page-jobs .welcomekit-job-infos>li:first-child:before {
    display: none;
}

.page-template-page-jobs .welcomekit-job-infos>li.welcomekit-job-description {
    display: block;
    margin: 10px 0 0 0;
    padding: 10px 20px;
    border-left: 2px solid #eee;
}

.page-template-page-jobs .welcomekit-job-infos>li.welcomekit-job-description p,
.page-template-page-jobs .welcomekit-job-infos>li.welcomekit-job-description ul {
    margin: 0;
    padding: 0 0 10px 0;
    color: #bbb;
}

.page-template-page-jobs .welcomekit-job-infos>li.welcomekit-job-description ul li {
    border-left: 1px solid #eee;
    padding-left: 10px;
    margin-bottom: 10px;
}

.page-template-page-jobs .welcomekit-job-infos>li.welcomekit-job-description pre {
    border-left: 1px solid #eee;
    padding-left: 10px;
    overflow: auto;
}

.page-template-page-jobs .welcomekit-job-infos>li.welcomekit-job-description:before {
    display: none
}

.page-template-page-jobs .welcomekit-office-city,
.page-template-page-jobs .welcomekit-department-name {
    display: block;
    padding: 15px;
    background: #eee;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    font-weight: 500;
    font-size: 17px;
    line-height: 18px;
    text-transform: uppercase;
}

.page-template-page-jobs .welcomekit-warning {
    display: block;
    padding: 50px 0;
    text-align: center;
}

footer .tel-footer {
    text-align: end;
    margin-bottom: 40px;
    margin-top: -35px;
    color: #fff;
    font-size: 1.6rem;
    font-family: Glacial Indifference, sans-serif;
}

footer .tel-footer a {
    color: #fff;
    font-size: 1.6rem;
    font-family: Glacial Indifference, sans-serif;
}

@media (max-width: 1249.98px) {
    footer .tel-footer {
        text-align: left;
    }
}

.svg_robots_footer {
    display: flex;
    justify-content: center;
    align-items: center;
}

.svg_robots_footer img {
    max-height: 60px;
    max-width: 90px;
}

.svg_robots_footer a:last-child img {
    margin-bottom: -16px;
}

body.home .section-contact .svgicons {
    width: 100% !important;
}

.page-template-page-commande .crop-details {
    margin-bottom: 40px;
}

#crop-details-title {
    cursor: pointer;
    position: relative;
    width: fit-content;
}

#crop-details-title::after {
    content: "";
    background-image: url(../images/chevron-select.svg);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 25px auto;
    cursor: pointer;
    width: 25px;
    height: 25px;
    position: absolute;
    right: -35px;
    top: 23px;
}

#crop-details-title.open::after {
    transform: rotate(180deg);
}

@media (max-width: 769px) {
    #crop-details-title::after {
        top: 10px;
    }
}

.main-header.not-on-top .logo-container {
    visibility: hidden;
}

.page-template-page-product .text-image-overflow {
    display: flex;
    width: 100%;
}

.page-template-page-product .text-image-overflow-txt {
    margin: 50px 6vw;
}

.page-template-page-product .text-image-overflow-img {
    flex: 1 1 auto;
}

.page-template-page-product .text-image-overflow-img img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media (min-width: 990px) {
    .page-template-page-product .text-image-overflow {
        padding-bottom: 0;
    }

    .page-template-page-product .text-image-overflow-txt {
        flex: 0 0 420px;
    }

    .page-template-page-product .text-image-overflow-img {
        min-height: 400px;
    }
}

@media (max-width: 989.98px) {
    .page-template-page-product .text-image-overflow {
        flex-direction: column-reverse;
    }

    .page-template-page-product .text-image-overflow-txt {
        margin: 50px 20px 0;
    }

    .page-template-page-product .text-image-overflow-img {
        margin: 0 20px;
    }

    #jstop {
        height: 75vh;
    }
}

.main-footer .socials .social-link svg path {
    fill: white;
}

/*------------------------------------*\ #PAGE event
/* Styles généraux */
.section-events-and-demos {
    padding: 0;
    margin: 0;
}
.section-events {
    background-color: white;
    padding: 0% 10%;
    min-width: 100%;
}
/* mobile */
@media screen and (max-width: 990px) {
    .section-events {
        padding: 0% 10%;
    }
}

.section-events-title {
    font-size: 40px;
    margin-bottom: 5%;
    color: #333;
}
.section-events-title img {
    max-width: 30px;
}
.events-list,
.accordion-content {
    list-style-type: none;
    padding: 0;
}
.single-event {
    padding: 1% 10%;
    position: relative;
}
.events-list hr, .accordion-content hr {
    width: 90%;
}
/* Masquer le dernier <hr> dans .events-list */
.events-list hr:last-of-type {
    display: none;
}
.single-event::before {
    content: '';
    position: absolute;
    left: 5%;
    top: 50%;
    width: 10px;
    height: 10px;
    background-color: rgba(149, 193, 31, 1);
    border-radius: 50%;
    transform: translateY(-50%);
}
.event-single-detail {
    display: block;
    margin-bottom: 5px;
}
.event-title {
    font-weight: 500;
    font-size: 20px;
    color: rgba(149, 193, 31, 1);
}
.event-info, .event-info a {
    font-weight: 500;
    font-size: 15px;
    color: rgba(50, 63, 79, 1);
}
.event-robots {
    font-size: 14px;
}

/*------------------- DEMOS */
.section-demos {
    margin-top: 5%;
    padding: 5% 10%;
    min-width: 100%;
    max-width: 100%;
    background-color: rgba(245, 245, 245, 1);
}

.section-demos-title {
    font-size: 40px;
    margin-bottom: 5%;
    color: #333;
}
.section-demos-title img {
    max-width: 30px;
}

.demos-list,
.accordion-content {
    list-style-type: none;
    padding: 0;
}

.single-demo {
    padding: 1% 10%;
    position: relative;
}
.demos-list hr, .accordion-content hr {
    width: 90%;
}
/* Masquer le dernier <hr> dans .events-list */
.events-list hr:last-of-type {
    display: none;
}
.single-demo::before {
    content: '';
    position: absolute;
    left: 5%;
    top: 50%;
    width: 10px;
    height: 10px;
    background-color: rgba(149, 193, 31, 1);
    border-radius: 50%;
    transform: translateY(-50%);
}
.demo-single-detail {
    display: block;
    margin-bottom: 5px;
}
.demo-title {
    font-weight: 500;
    font-size: 20px;
    color: rgba(149, 193, 31, 1);
}
.demo-info, .demo-info a {
    font-weight: 500;
    font-size: 15px;
    color: rgba(50, 63, 79, 1);
}

.demo-robots {
    font-size: 14px;
}


/* Styles pour l'accordéon */
.accordion {
    margin-top: 30px;
    background-color: rgba(245, 245, 245, 1);
    border: 1px solid #ddd;
    border-radius: 5px;
}
.section-demos .accordion {
    background-color: rgba(255, 255, 255, 1);
}

.accordion-title {
    font-size: 20px;
    cursor: pointer;
    padding: 1% 5%;
    font-weight: 500;
}
.accordion-title .accordion-arrow img {
    transition: transform 0.3s ease;
}
.accordion-title.open .accordion-arrow img {
    transform: rotate(180deg);
}

.accordion-arrow {
    float: right;
    max-width: 20px;
}

.accordion-content {
    display: none;
    padding: 10px;
    margin-top: 10px;
}
/* Masquer le dernier <hr> dans .accordion-content */
.accordion-content hr:last-of-type {
    display: none;
}
/* Styles pour afficher le contenu de l'accordéon lorsqu'il est ouvert */
.accordion-content.open {
    display: block;
}

/* ajouter effet on hover pour img-footer */
.link-event-div {
    background-size: cover !important;
}
.link-event-footer {
    display: flex;
    color: white;
    font-size: 20px;
    text-decoration: none;
    background-color: var(--vert);
    border-radius: 50px;
    margin: 10% 10%;
    padding: 1%;
    justify-content: center;
}
/* mobile */
@media screen and (max-width: 990px) {
    .link-event-footer {
        margin: 15% 10%;
        font-size: 16px;
        padding: 1% 5%;
        text-align: center;
    }
    /* SPKTR edit octobre 2024 */
    .page-template-page-event .page-intro.background-image {
        min-height: 330px !important;
    }
    .page-template-page-event .section-events-title {
        font-size: 30px !important;
    }
    .page-template-page-event .section-demos-title {
        font-size: 30px !important;
    }
    .page-template-page-event .section-demos-title img {
        max-width: 25px !important;
    }
    .page-template-page-event .section-events-title img {
        max-width: 25px !important;
    }
}


/* EDIT JUIN 2025 */
:root {
    --marron: #9E917E;
    --marron-fonce: #3B312C;
    --vert: #95C11F;
    --gris-clair: #F5F5F5;
    --gris-fonce: #DFDFDF;
    --sable: #E0DBC5;
}

/* GLOBAL STYLES */
a { text-decoration: none; color: inherit;}
.cursor-pointer {cursor: pointer;}
.overflow-hidden {overflow: hidden;}
.d-none {display: none;}
.d-block {display: block;}
.rich-content p + p {margin-top: 1em;}
.rich-content h1,
.rich-content h2,
.rich-content h3,
.rich-content h4,
.rich-content h5,
.rich-content h6 {margin-top: 1em; margin-bottom: .5em;}
ul {padding-left: 1em;}
li { margin-top: .25em;}
::marker {color: var(--vert);}

/* MEDIA QUERIES */
@media screen and (min-width: 990px) {
    .only-desktop { display: flex !important;}
    .only-tablet { display: none !important;}
    .only-mobile { display: none !important;}
}
@media screen and (max-width: 989.98px) {
    .only-desktop { display: none !important;}
    .only-tablet { display: none !important;}
    .only-mobile { display: flex !important;}

    @media screen and (max-width: 769.98px) {
        .only-desktop { display: none !important;}
        .only-tablet { display: none !important;}
        .only-mobile { display: flex !important;}
        .hide-mobile { display: none !important;}
    }
}

/* BG COLORS */
.bg-none {background-color: transparent;}
.bg-color-white,
.hover-bg-color-white:hover {background-color: #ffffff;}
.bg-color-black,
.hover-bg-color-black:hover {background-color: #000000;}
.bg-color-brown,
.hover-bg-color-brown:hover {background-color: var(--marron);}
.bg-color-dark-brown,
.hover-bg-color-dark-brown:hover {background-color: var(--marron-fonce);}
.bg-color-green,
.hover-bg-color-green:hover {background-color: var(--vert);}
.bg-color-light-gray,
.hover-bg-color-light-gray:hover {background-color: var(--gris-clair);}
.bg-color-dark-gray,
.hover-bg-color-dark-gray:hover {background-color: var(--gris-fonce);}
.bg-color-sand,
.hover-bg-color-sand:hover {background-color: var(--sable);}

/* BG IMAGES */
.bg-cover {background-size: cover;}
.bg-contain {background-size: contain;}
.bg-center {background-position: center;}
.bg-fixed {background-attachment: fixed;}
.bg-no-repeat {background-repeat: no-repeat;}
.object-cover {object-fit: cover;}
.object-contain {object-fit: contain;}
/* MOBILE */
@media screen and (max-width: 769.98px) {
    .bg-cover-mobile {background-size: cover;}
    .bg-contain-mobile {background-size: contain;}
    .bg-center-mobile {background-position: center;}
    .bg-fixed-mobile {background-attachment: fixed;}
    .bg-no-repeat-mobile {background-repeat: no-repeat;}
    .object-cover-mobile {object-fit: cover;}
    .object-contain-mobile {object-fit: contain;}
}

/* BG POSITIONS */
.bg-top {background-position: top;}
.bg-bottom {background-position: bottom;}
.bg-left {background-position: left;}
.bg-right {background-position: right;}
.bg-center {background-position: center;}
/* MOBILE */
@media (max-width: 769.98px) {
    .bg-top-mobile {background-position: top;}
    .bg-bottom-mobile {background-position: bottom;}
    .bg-left-mobile {background-position: left;}
    .bg-right-mobile {background-position: right;}
    .bg-center-mobile {background-position: center;}
}

/* ALIGNS */
.text-center { text-align:center;}
.text-left { text-align:left;}
.text-right { text-align:right;}
/* MOBILE */
@media (max-width: 769.98px) {
    .text-center-mobile { text-align:center;}
    .text-left-mobile { text-align:left;}
    .text-right-mobile { text-align:right;}
}

/* MARGINS */
.margin-0 {margin: 0;}
.top-margin-auto {margin-top: auto;}
.top-margin-0 {margin-top: 0;}
.top-margin-0-25 {margin-top: 0.25em;}
.top-margin-0-5 {margin-top: 0.5em;}
.top-margin-0-75 {margin-top: 0.75em;}
.top-margin-1 {margin-top: 1em;}
.top-margin-1-5 {margin-top: 1.5em;}
.top-margin-2 {margin-top: 2em;}
.top-margin-3 {margin-top: 3em;}
.top-margin-4 {margin-top: 4em;}
.top-margin-5 {margin-top: 5em;}
.top-margin-6 {margin-top: 6em;}
.top-margin-7 {margin-top: 7em;}
.top-margin-8 {margin-top: 8em;}
.top-margin-9 {margin-top: 9em;}
.top-margin-10 {margin-top: 10em;}
.bot-margin-auto {margin-bottom: auto;}
.bot-margin-0 {margin-bottom: 0;}
.bot-margin-1 {margin-bottom: 1em;}
.bot-margin--1px {margin-bottom: -1px;}
.bot-margin-1-5 {margin-bottom: 1.5em;}
.bot-margin-2 {margin-bottom: 2em;}
.bot-margin-3 {margin-bottom: 3em;}
.bot-margin-4 {margin-bottom: 4em;}
.bot-margin-5 {margin-bottom: 5em;}
.bot-margin-6 {margin-bottom: 6em;}
.bot-margin-7 {margin-bottom: 7em;}
.bot-margin-8 {margin-bottom: 8em;}
.bot-margin-9 {margin-bottom: 9em;}
.bot-margin-10 {margin-bottom: 10em;}
.left-margin-auto {margin-left: auto;}
.left-margin-0 {margin-left: 0;}
.left-margin-0-25 {margin-left: 0.25em;}
.left-margin-0-5 {margin-left: 0.5em;}
.left-margin-0-75 {margin-left: 0.75em;}
.left-margin-1 {margin-left: 1em;}
.left-margin-1-5 {margin-left: 1.5em;}
.left-margin-2 {margin-left: 2em;}
.left-margin-3 {margin-left: 3em;}
.left-margin-4 {margin-left: 4em;}
.left-margin-5 {margin-left: 5em;}
.left-margin-6 {margin-left: 6em;}
.left-margin-7 {margin-left: 7em;}
.left-margin-8 {margin-left: 8em;}
.left-margin-9 {margin-left: 9em;}
.left-margin-10 {margin-left: 10em;}
.right-margin-auto {margin-right: auto;}
.right-margin-0 {margin-right: 0;}
.right-margin-0-25 {margin-right: 0.25em;}
.right-margin-0-5 {margin-right: 0.5em;}
.right-margin-0-75 {margin-right: 0.75em;}
.right-margin-1 {margin-right: 1em;}
.right-margin-1-5 {margin-right: 1.5em;}
.right-margin-2 {margin-right: 2em;}
.right-margin-3 {margin-right: 3em;}
.right-margin-4 {margin-right: 4em;}
.right-margin-5 {margin-right: 5em;}
.right-margin-6 {margin-right: 6em;}
.right-margin-7 {margin-right: 7em;}
.right-margin-8 {margin-right: 8em;}
.right-margin-9 {margin-right: 9em;}
.right-margin-10 {margin-right: 10em;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .top-margin-0-mobile {margin-top: 0;}
    .top-margin-0-25-mobile {margin-top: 0.25em;}
    .top-margin-0-5-mobile {margin-top: 0.5em;}
    .top-margin-0-75-mobile {margin-top: 0.75em;}
    .top-margin-1-mobile {margin-top: 1em;}
    .top-margin-1-5-mobile {margin-top: 1.5em;}
    .top-margin-2-mobile {margin-top: 2em;}
    .top-margin-3-mobile {margin-top: 3em;}
    .top-margin-4-mobile {margin-top: 4em;}
    .top-margin-5-mobile {margin-top: 5em;}
    .top-margin-6-mobile {margin-top: 6em;}
    .top-margin-7-mobile {margin-top: 7em;}
    .top-margin-8-mobile {margin-top: 8em;}
    .top-margin-9-mobile {margin-top: 9em;}
    .top-margin-10-mobile {margin-top: 10em;}
    .bot-margin-0-mobile {margin-bottom: 0;}
    .bot-margin-0-25-mobile {margin-bottom: 0.25em;}
    .bot-margin-0-5-mobile {margin-bottom: 0.5em;}
    .bot-margin-0-75-mobile {margin-bottom: 0.75em;}
    .bot-margin-1-mobile {margin-bottom: 1em;}
    .bot-margin--1px-mobile {margin-bottom: -1px !important;}
    .bot-margin-1-5-mobile {margin-bottom: 1.5em;}
    .bot-margin-2-mobile {margin-bottom: 2em;}
    .bot-margin-3-mobile {margin-bottom: 3em;}
    .bot-margin-4-mobile {margin-bottom: 4em;}
    .bot-margin-5-mobile {margin-bottom: 5em;}
    .bot-margin-6-mobile {margin-bottom: 6em;}
    .bot-margin-7-mobile {margin-bottom: 7em;}
    .bot-margin-8-mobile {margin-bottom: 8em;}
    .bot-margin-9-mobile {margin-bottom: 9em;}
    .bot-margin-10-mobile {margin-bottom: 10em;}
    .left-margin-0-mobile {margin-left: 0;}
    .left-margin-0-25-mobile {margin-left: 0.25em;}
    .left-margin-0-5-mobile {margin-left: 0.5em;}
    .left-margin-0-75-mobile {margin-left: 0.75em;}
    .left-margin-1-mobile {margin-left: 1em;}
    .left-margin-1-5-mobile {margin-left: 1.5em;}
    .left-margin-2-mobile {margin-left: 2em;}
    .left-margin-3-mobile {margin-left: 3em;}
    .left-margin-4-mobile {margin-left: 4em;}
    .left-margin-5-mobile {margin-left: 5em;}
    .left-margin-6-mobile {margin-left: 6em;}
    .left-margin-7-mobile {margin-left: 7em;}
    .left-margin-8-mobile {margin-left: 8em;}
    .left-margin-9-mobile {margin-left: 9em;}
    .left-margin-10-mobile {margin-left: 10em;}
    .right-margin-0-mobile {margin-right: 0;}
    .right-margin-0-25-mobile {margin-right: 0.25em;}
    .right-margin-0-5-mobile {margin-right: 0.5em;}
    .right-margin-0-75-mobile {margin-right: 0.75em;}
    .right-margin-1-mobile {margin-right: 1em;}
    .right-margin-1-5-mobile {margin-right: 1.5em;}
    .right-margin-2-mobile {margin-right: 2em;}
    .right-margin-3-mobile {margin-right: 3em;}
    .right-margin-4-mobile {margin-right: 4em;}
    .right-margin-5-mobile {margin-right: 5em;}
    .right-margin-6-mobile {margin-right: 6em;}
    .right-margin-7-mobile {margin-right: 7em;}
    .right-margin-8-mobile {margin-right: 8em;}
    .right-margin-9-mobile {margin-right: 9em;}
    .right-margin-10-mobile {margin-right: 10em;}
}

/* PADDING */
.padding-0 {padding: 0;}
.top-pad-0 {padding-top: 0;}
.top-pad-0-25 {padding-top: 0.25em;}
.top-pad-0-5 {padding-top: 0.5em;}
.top-pad-0-75 {padding-top: 0.75em;}
.top-pad-1 {padding-top: 1em;}
.top-pad-1-5 {padding-top: 1.5em;}
.top-pad-2 {padding-top: 2em;}
.top-pad-3 {padding-top: 3em;}
.top-pad-4 {padding-top: 4em;}
.top-pad-5 {padding-top: 5em;}
.top-pad-6 {padding-top: 6em;}
.top-pad-7 {padding-top: 7em;}
.top-pad-8 {padding-top: 8em;}
.top-pad-9 {padding-top: 9em;}
.top-pad-10 {padding-top: 10em;}
.bot-pad-0 {padding-bottom: 0;}
.bot-pad-0-25 {padding-bottom: 0.25em;}
.bot-pad-0-5 {padding-bottom: 0.5em;}
.bot-pad-0-75 {padding-bottom: 0.75em;}
.bot-pad-1 {padding-bottom: 1em;}
.bot-pad-1-5 {padding-bottom: 1.5em;}
.bot-pad-2 {padding-bottom: 2em;}
.bot-pad-3 {padding-bottom: 3em;}
.bot-pad-4 {padding-bottom: 4em;}
.bot-pad-5 {padding-bottom: 5em;}
.bot-pad-6 {padding-bottom: 6em;}
.bot-pad-7 {padding-bottom: 7em;}
.bot-pad-8 {padding-bottom: 8em;}
.bot-pad-9 {padding-bottom: 9em;}
.bot-pad-10 {padding-bottom: 10em;}
.bot-pad-11 {padding-bottom: 11em;}
.bot-pad-12 {padding-bottom: 12em;}
.bot-pad-13 {padding-bottom: 13em;}
.bot-pad-14 {padding-bottom: 14em;}
.bot-pad-15 {padding-bottom: 15em;}
.left-pad-0 {padding-left: 0;}
.left-pad-0-25 {padding-left: 0.25em;}
.left-pad-0-5 {padding-left: 0.5em;}
.left-pad-1 {padding-left: 1em;}
.left-pad-1-5 {padding-left: 1.5em;}
.left-pad-2 {padding-left: 2em;}
.left-pad-3 {padding-left: 3em;}
.left-pad-4 {padding-left: 4em;}
.left-pad-5 {padding-left: 5em;}
.left-pad-6 {padding-left: 6em;}
.left-pad-7 {padding-left: 7em;}
.left-pad-8 {padding-left: 8em;}
.left-pad-9 {padding-left: 9em;}
.left-pad-10 {padding-left: 10em;}
.right-pad-0 {padding-right: 0;}
.right-pad-0-25 {padding-right: 0.25em;}
.right-pad-0-5 {padding-right: 0.5em;}
.right-pad-1 {padding-right: 1em;}
.right-pad-1-5 {padding-right: 1.5em;}
.right-pad-2 {padding-right: 2em;}
.right-pad-3 {padding-right: 3em;}
.right-pad-4 {padding-right: 4em;}
.right-pad-5 {padding-right: 5em;}
.right-pad-6 {padding-right: 6em;}
.right-pad-7 {padding-right: 7em;}
.right-pad-8 {padding-right: 8em;}
.right-pad-9 {padding-right: 9em;}
.right-pad-10 {padding-right: 10em;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .top-pad-0-mobile {padding-top: 0;}
    .top-pad-0-25-mobile {padding-top: 0.25em;}
    .top-pad-0-5-mobile {padding-top: 0.5em;}
    .top-pad-0-75-mobile {padding-top: 0.75em;}
    .top-pad-1-mobile {padding-top: 1em;}
    .top-pad-1-5-mobile {padding-top: 1.5em;}
    .top-pad-2-mobile {padding-top: 2em;}
    .top-pad-3-mobile {padding-top: 3em;}
    .top-pad-4-mobile {padding-top: 4em;}
    .top-pad-5-mobile {padding-top: 5em;}
    .top-pad-6-mobile {padding-top: 6em;}
    .top-pad-7-mobile {padding-top: 7em;}
    .top-pad-8-mobile {padding-top: 8em;}
    .top-pad-9-mobile {padding-top: 9em;}
    .top-pad-10-mobile {padding-top: 10em;}
    .bot-pad-0-mobile {padding-bottom: 0;}
    .bot-pad-0-25-mobile {padding-bottom: 0.25em;}
    .bot-pad-0-5-mobile {padding-bottom: 0.5em;}
    .bot-pad-0-75-mobile {padding-bottom: 0.75em;}
    .bot-pad-1-mobile {padding-bottom: 1em;}
    .bot-pad-1-5-mobile {padding-bottom: 1.5em;}
    .bot-pad-2-mobile {padding-bottom: 2em;}
    .bot-pad-3-mobile {padding-bottom: 3em;}
    .bot-pad-4-mobile {padding-bottom: 4em;}
    .bot-pad-5-mobile {padding-bottom: 5em;}
    .bot-pad-6-mobile {padding-bottom: 6em;}
    .bot-pad-7-mobile {padding-bottom: 7em;}
    .bot-pad-8-mobile {padding-bottom: 8em;}
    .bot-pad-9-mobile {padding-bottom: 9em;}
    .bot-pad-10-mobile {padding-bottom: 10em;}
    .bot-pad-11-mobile {padding-bottom: 11em;}
    .bot-pad-12-mobile {padding-bottom: 12em;}
    .bot-pad-13-mobile {padding-bottom: 13em;}
    .bot-pad-14-mobile {padding-bottom: 14em;}
    .bot-pad-15-mobile {padding-bottom: 15em;}
    .left-pad-0-mobile {padding-left: 0;}
    .left-pad-0-25-mobile {padding-left: 0.25em;}
    .left-pad-0-5-mobile {padding-left: 0.5em;}
    .left-pad-1-mobile {padding-left: 1em;}
    .left-pad-1-5-mobile {padding-left: 1.5em;}
    .left-pad-2-mobile {padding-left: 2em;}
    .left-pad-3-mobile {padding-left: 3em;}
    .left-pad-4-mobile {padding-left: 4em;}
    .left-pad-5-mobile {padding-left: 5em;}
    .left-pad-6-mobile {padding-left: 6em;}
    .left-pad-7-mobile {padding-left: 7em;}
    .left-pad-8-mobile {padding-left: 8em;}
    .left-pad-9-mobile {padding-left: 9em;}
    .left-pad-10-mobile {padding-left: 10em;}
    .right-pad-0-mobile {padding-right: 0;}
    .right-pad-0-25-mobile {padding-right: 0.25em;}
    .right-pad-0-5-mobile {padding-right: 0.5em;}
    .right-pad-1-mobile {padding-right: 1em;}
    .right-pad-1-5-mobile {padding-right: 1.5em;}
    .right-pad-2-mobile {padding-right: 2em;}
    .right-pad-3-mobile {padding-right: 3em;}
    .right-pad-4-mobile {padding-right: 4em;}
    .right-pad-5-mobile {padding-right: 5em;}
    .right-pad-6-mobile {padding-right: 6em;}
    .right-pad-7-mobile {padding-right: 7em;}
    .right-pad-8-mobile {padding-right: 8em;}
    .right-pad-9-mobile {padding-right: 9em;}
    .right-pad-10-mobile {padding-right: 10em;}
}

/* FONTS */
.montserrat {font-family: "Montserrat", sans-serif;}
.glacial {font-family: "Glacial Indifference", sans-serif;}
h1, h2, h3, h4 {font-family: "Montserrat", sans-serif; margin: 0; line-height: 1.2;}
p {font-family: "Glacial Indifference", sans-serif; margin: 0; font-size: inherit; font-family:inherit;font-weight: inherit;line-height: 1.2;}
.t-title {font-size: 2.1em;line-height: 1.2;}
.t-title-2 {font-size: 1.5em;line-height: 1.2;}
.t-title-3 {font-size: 2em;line-height: 1.2;}
.t-title-4 {font-size: 3em;line-height: 1.2;}
.t-title-5 {font-size: 1.3em;line-height: 1.2;}
.t-subtitle {font-size: 1.8em;line-height: 1.2;}
.t-submenu {font-size: 1em;line-height: 1.2;}
.t-robot {font-size: 1.2em;line-height: 1.3;}
.t-text {font-size: .8em;line-height: 1.2;}
.t-text-2 {font-size: .8em;line-height: 1.3;}
.t-text-small {font-size: .6em;line-height: 1.2;}
.t-button {font-size: .8em;line-height: 1;}
.t-menu-description {font-size: 0.5em; line-height: 1.1;}
.t-moignage {font-size: 2.1em;line-height: 1.2;}

/* MEDIA QUERIES */
@media screen and (max-width: 1500px) {
    .t-title {font-size: 1.8em;}
    .t-title-2 {font-size: 1.4em;}
    .t-title-3 {font-size: 1.6em;}
    .t-title-4 {font-size: 2.5em;}
    .t-title-5 {font-size: 1.2em;}
    .t-subtitle {font-size: 1.4em;}
    .t-submenu {font-size: 0.9em;}
    .t-robot {font-size: 1.1em;}
    .t-text {font-size: 0.7em;}
    .t-text-2 {font-size: 0.7em;}
    .t-text-small {font-size: 0.5em;}
    .t-button {font-size: 0.7em;}
    @media screen and (max-width: 1200px) {
        .t-title {font-size: 1.6em;}
        .t-title-2 {font-size: 1.3em;}
        .t-title-3 {font-size: 1.5em;}
        .t-title-4 {font-size: 2.2em;}
        .t-title-5 {font-size: 1.1em;}
        .t-subtitle {font-size: 1.3em;}
        .t-submenu {font-size: 0.8em;}
        .t-robot {font-size: 1em;}
        .t-text {font-size: 0.8em;}
        .t-text-2 {font-size: 0.8em;}
        .t-text-small {font-size: 0.6em;}
        .t-button {font-size: 0.8em;}

        @media screen and (max-width: 992px) {
            .t-title {font-size: 1.4em;}
            .t-title-2 {font-size: 1.2em;}
            .t-title-3 {font-size: 1.3em;}
            .t-title-4 {font-size: 1.4em;}
            .t-title-5 {font-size: 0.9em;}
            .t-subtitle {font-size: 1.1em;}
            .t-submenu {font-size: 0.8em;}
            .t-robot {font-size: 0.8em;}
            .t-text {font-size: 0.8em;}
            .t-text-2 {font-size: 0.8em;}
            .t-text-small {font-size: 0.6em;}
            .t-button {font-size: 0.6em;}

            @media screen and (max-width: 768px) {
                .t-title {font-size: 1.4em;}
                .t-title-2 {font-size: 1.2em;}
                .t-title-3 {font-size: 1.3em;}
                .t-title-4 {font-size: 1.4em;}
                .t-title-5 {font-size: 0.9em;}
                .t-subtitle {font-size: 1.1em;}
                .t-submenu {font-size: 0.8em;}
                .t-robot {font-size: 0.8em;}
                .t-text {font-size: 0.8em;}
                .t-text-2 {font-size: 0.8em;}
                .t-text-small {font-size: 0.5em;}
                .t-button {font-size: 0.6em;}
                .t-moignage {font-size: 1em;}
            }
        }
    }
}

/* FONT DECORATIONS */
.uppercase {text-transform: uppercase;}
.lowercase {text-transform: lowercase;}
.capitalize {text-transform: capitalize;}
.underline {text-decoration: underline;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .uppercase-mobile {text-transform: uppercase;}
    .lowercase-mobile {text-transform: lowercase;}
    .capitalize-mobile {text-transform: capitalize;}
    .underline-mobile {text-decoration: underline;}
}

/* FONT WEIGHTS */
.light {font-weight: 300;}
.normal {font-weight: 400;}
.medium {font-weight: 500;}
.medium-bold {font-weight: 600;}
.bold {font-weight: 700;}
.bolder {font-weight: 900;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .light-mobile {font-weight: 300;}
    .normal-mobile {font-weight: 400;}
    .medium-mobile {font-weight: 500;}
    .medium-bold-mobile {font-weight: 600;}
    .bold-mobile {font-weight: 700;}
    .bolder-mobile {font-weight: 900;}
}

/* COLORS */
.color-black,
.hover-color-black:hover {color: #000000;}
.color-white,
.hover-color-white:hover {color: #ffffff;}
.color-green,
.hover-color-green:hover {color: var(--vert);}
.color-brown,
.hover-color-brown:hover {color: var(--marron);}
.color-light-gray,
.hover-color-light-gray:hover {color: var(--gris-clair);}
.color-sand,
.hover-color-sand:hover {color: var(--sable);}
.green-strong strong {color: var(--vert);}
.spe-parent:hover .spe-hover-color-green {color: var(--vert);}
.spe-parent:hover .spe-hover-color-black {color: #000000;}
.spe-parent:hover .spe-hover-color-white {color: #ffffff;}
.spe-parent:hover .spe-hover-color-brown {color: var(--marron);}
.spe-parent:hover .spe-hover-color-light-gray {color: var(--gris-clair);}
.spe-parent:hover .spe-hover-color-sand {color: var(--sable);}

/* OPACITY */
.opacity-0 {opacity: 0;}
.opacity-0-1 {opacity: 0.1;}
.opacity-0-25 {opacity: 0.25;}
.opacity-0-5 {opacity: 0.5;}
.opacity-0-75 {opacity: 0.75;}
.opacity-1 {opacity: 1;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .opacity-0-mobile {opacity: 0;}
    .opacity-0-1-mobile {opacity: 0.1;}
    .opacity-0-25-mobile {opacity: 0.25;}
    .opacity-0-5-mobile {opacity: 0.5;}
    .opacity-0-75-mobile {opacity: 0.75;}
    .opacity-1-mobile {opacity: 1;}
}

/* WIDTHS */
.width-fit {width: fit-content;}
.width-10 {width: 10%;}
.width-20 {width: 20%;}
.width-25 {width: 25%;}
.width-30 {width: 30%;}
.width-tier {width: 33.33%;}
.width-35 {width: 35%;}
.width-40 {width: 40%;}
.width-45 {width: 45%;}
.width-50 {width: 50%;}
.width-55 {width: 55%;}
.width-60 {width: 60%;}
.width-65 {width: 65%;}
.width-70 {width: 70%;}
.width-75 {width: 75%;}
.width-80 {width: 80%;}
.width-85 {width: 85%;}
.width-90 {width: 90%;}
.width-100 {width: 100%;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .width-fit-mobile {width: fit-content;}
    .width-10-mobile {width: 10%;}
    .width-20-mobile {width: 20%;}
    .width-25-mobile {width: 25%;}
    .width-30-mobile {width: 30%;}
    .width-tier-mobile {width: 33.33%;}
    .width-35-mobile {width: 35%;}
    .width-40-mobile {width: 40%;}
    .width-45-mobile {width: 45%;}
    .width-50-mobile {width: 50%;}
    .width-55-mobile {width: 55%;}
    .width-60-mobile {width: 60%;}
    .width-65-mobile {width: 65%;}
    .width-70-mobile {width: 70%;}
    .width-75-mobile {width: 75%;}
    .width-80-mobile {width: 80% !important;}
    .width-85-mobile {width: 85% !important;}
    .width-90-mobile {width: 90% !important;}
    .width-100-mobile {width: 100% !important;}
}

/* HEIGHTS */
.height-fit {height: fit-content;}
.height-1px {height: 1px;}
.height-10 {height: 10%;}
.height-20 {height: 20%;}
.height-25 {height: 25%;}
.height-30 {height: 30%;}
.height-40 {height: 40%;}
.height-50 {height: 50%;}
.height-60 {height: 60%;}
.height-70 {height: 70%;}
.height-75 {height: 75%;}
.height-80 {height: 80%;}
.height-90 {height: 90%;}
.height-100 {height: 100%;}
.height-10vh {height: 10vh;}
.height-20vh {height: 20vh;}
.height-25vh {height: 25vh;}
.height-30vh {height: 30vh;}
.height-40vh {height: 40vh;}
.height-50vh {height: 50vh;}
.height-60vh {height: 60vh;}
.height-70vh {height: 70vh;}
.height-75vh {height: 75vh;}
.height-80vh {height: 80vh;}
.height-90vh {height: 90vh;}
.height-100vh {height: 100vh;}
.height-screen {height: 100vh;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .height-auto-mobile {height: auto !important;}
    .height-fit-mobile {height: fit-content;}
    .height-10-mobile {height: 10%;}
    .height-20-mobile {height: 20%;}
    .height-25-mobile {height: 25%;}
    .height-30-mobile {height: 30%;}
    .height-40-mobile {height: 40%;}
    .height-50-mobile {height: 50%;}
    .height-60-mobile {height: 60%;}
    .height-70-mobile {height: 70%;}
    .height-75-mobile {height: 75%;}
    .height-80-mobile {height: 80%;}
    .height-90-mobile {height: 90%;}
    .height-100-mobile {height: 100%;}
    .height-10vh-mobile {height: 10vh;}
    .height-20vh-mobile {height: 20vh;}
    .height-25vh-mobile {height: 25vh;}
    .height-30vh-mobile {height: 30vh;}
    .height-40vh-mobile {height: 40vh;}
    .height-50vh-mobile {height: 50vh;}
    .height-60vh-mobile {height: 60vh;}
    .height-70vh-mobile {height: 70vh;}
    .height-75vh-mobile {height: 75vh;}
    .height-80vh-mobile {height: 80vh;}
    .height-90vh-mobile {height: 90vh;}
    .height-100vh-mobile {height: 100vh;}
    .height-screen-mobile {height: 100vh;}
}

/* SVG */
.svg-child-width-100 svg {width: 100%;}
.svg-child-height-100 svg {height: 100%;}
.hover-svg-fill-color-green:hover svg path {fill: var(--vert);}
.hover-svg-fill-color-black:hover svg path {fill: #000000;}
.hover-svg-fill-color-white:hover svg path {fill: #ffffff;}
.hover-svg-fill-color-brown:hover svg path {fill: var(--marron);}
.hover-svg-fill-color-light-gray:hover svg path {fill: var(--gris-clair);}
.hover-svg-fill-color-sand:hover svg path {fill: var(--sable);}
.hover-svg-stroke-color-green:hover svg path {stroke: var(--vert);}
.hover-svg-stroke-color-black:hover svg path {stroke: #000000;}
.hover-svg-stroke-color-white:hover svg path {stroke: #ffffff;}
.hover-svg-stroke-color-brown:hover svg path {stroke: var(--marron);}
.hover-svg-stroke-color-light-gray:hover svg path {stroke: var(--gris-clair);}
.hover-svg-stroke-color-sand:hover svg path {stroke: var(--sable);}
/* MOBILE */
@media screen and (max-width: 768px) {
    .svg-child-width-100-mobile svg {width: 100%;}
    .svg-child-height-100-mobile svg {height: 100%;}
}


/* BORDERS */
.border-0 {border: none;}
.border-1 {border: 1px solid #000000;}
.border-2 {border: 2px solid #000000;}
.border-top-1 {border-top: 1px solid #000000;}
.border-top-2 {border-top: 2px solid #000000;}
.border-bot-1 {border-bottom: 1px solid #000000;}
.border-bot-2 {border-bottom: 2px solid #000000;}
.border-left-1 {border-left: 1px solid #000000;}
.border-left-2 {border-left: 2px solid #000000;}
.border-right-1 {border-right: 1px solid #000000;}
.border-right-2 {border-right: 2px solid #000000;}

/* OUTLINES */
.outline-0 {outline: none;}
.outline-1 {outline: 1px solid #000000;}
.outline-2 {outline: 2px solid #000000;}

/* BORDER COLORS */
.border-color-black,
.hover-border-color-black:hover {border-color: #000000;}
.border-color-white,
.hover-border-color-white:hover {border-color: #ffffff;}
.border-color-brown,
.hover-border-color-brown:hover {border-color: var(--marron);}
.border-color-green,
.hover-border-color-green:hover {border-color: var(--vert);}
.border-color-light-gray,
.hover-border-color-light-gray:hover {border-color: var(--gris-clair);}
.border-color-sand,
.hover-border-color-sand:hover {border-color: var(--sable);}

/* BORDER RADIUS */
.rounded {border-radius: 50%;}
.rounded-1 {border-radius: 1em;}
.rounded-2 {border-radius: 2em;}
.rounded-3 {border-radius: 3em;}
.rounded-4 {border-radius: 4em;}
.rounded-top-1 {border-top-left-radius: 1em; border-top-right-radius: 1em;}
.rounded-top-2 {border-top-left-radius: 2em; border-top-right-radius: 2em;}
.rounded-top-3 {border-top-left-radius: 3em; border-top-right-radius: 3em;}
.rounded-top-4 {border-top-left-radius: 4em; border-top-right-radius: 4em;}
.rounded-bottom-1 {border-bottom-left-radius: 1em; border-bottom-right-radius: 1em;}
.rounded-bottom-2 {border-bottom-left-radius: 2em; border-bottom-right-radius: 2em;}
.rounded-bottom-3 {border-bottom-left-radius: 3em; border-bottom-right-radius: 3em;}
.rounded-bottom-4 {border-bottom-left-radius: 4em; border-bottom-right-radius: 4em;}
.rounded-top-left-1 {border-top-left-radius: 1em;}
.rounded-top-left-2 {border-top-left-radius: 2em;}
.rounded-top-left-3 {border-top-left-radius: 3em;}
.rounded-top-left-4 {border-top-left-radius: 4em;}
.rounded-top-right-1 {border-top-right-radius: 1em;}
.rounded-top-right-2 {border-top-right-radius: 2em;}
.rounded-top-right-3 {border-top-right-radius: 3em;}
.rounded-top-right-4 {border-top-right-radius: 4em;}
.rounded-bottom-left-1 {border-bottom-left-radius: 1em;}
.rounded-bottom-left-2 {border-bottom-left-radius: 2em;}
.rounded-bottom-left-3 {border-bottom-left-radius: 3em;}
.rounded-bottom-left-4 {border-bottom-left-radius: 4em;}
.rounded-bottom-right-1 {border-bottom-right-radius: 1em;}
.rounded-bottom-right-2 {border-bottom-right-radius: 2em;}
.rounded-bottom-right-3 {border-bottom-right-radius: 3em;}
.rounded-bottom-right-4 {border-bottom-right-radius: 4em;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .rounded-mobile {border-radius: 50%;}
    .rounded-1-mobile {border-radius: 1em;}
    .rounded-2-mobile {border-radius: 2em;}
    .rounded-3-mobile {border-radius: 3em;}
    .rounded-4-mobile {border-radius: 4em;}
    .rounded-top-1-mobile {border-top-left-radius: 1em; border-top-right-radius: 1em;}
    .rounded-top-2-mobile {border-top-left-radius: 2em; border-top-right-radius: 2em;}
    .rounded-top-3-mobile {border-top-left-radius: 3em; border-top-right-radius: 3em;}
    .rounded-top-4-mobile {border-top-left-radius: 4em; border-top-right-radius: 4em;}
    .rounded-bottom-1-mobile {border-bottom-left-radius: 1em; border-bottom-right-radius: 1em;}
    .rounded-bottom-2-mobile {border-bottom-left-radius: 2em; border-bottom-right-radius: 2em;}
    .rounded-bottom-3-mobile {border-bottom-left-radius: 3em; border-bottom-right-radius: 3em;}
    .rounded-bottom-4-mobile {border-bottom-left-radius: 4em; border-bottom-right-radius: 4em;}
    .rounded-top-left-1-mobile {border-top-left-radius: 1em;}
    .rounded-top-left-2-mobile {border-top-left-radius: 2em;}
    .rounded-top-left-3-mobile {border-top-left-radius: 3em;}
    .rounded-top-left-4-mobile {border-top-left-radius: 4em;}
    .rounded-top-right-1-mobile {border-top-right-radius: 1em;}
    .rounded-top-right-2-mobile {border-top-right-radius: 2em;}
    .rounded-top-right-3-mobile {border-top-right-radius: 3em;}
    .rounded-top-right-4-mobile {border-top-right-radius: 4em;}
    .rounded-bottom-left-1-mobile {border-bottom-left-radius: 1em;}
    .rounded-bottom-left-2-mobile {border-bottom-left-radius: 2em;}
    .rounded-bottom-left-3-mobile {border-bottom-left-radius: 3em;}
    .rounded-bottom-left-4-mobile {border-bottom-left-radius: 4em;}
    .rounded-bottom-right-1-mobile {border-bottom-right-radius: 1em;}
    .rounded-bottom-right-2-mobile {border-bottom-right-radius: 2em;}
    .rounded-bottom-right-3-mobile {border-bottom-right-radius: 3em;}
    .rounded-bottom-right-4-mobile {border-bottom-right-radius: 4em;}
}

/* containers */
.container-verysmall {width: calc(100% - 20em);}
.container-small {width: calc(100% - 16em);}
.container-medium {width: calc(100% - 12em);}
.container-large {width: calc(100% - 8em);}
.centered {margin: 0 auto;}
/* MOBILE */
@media screen and (min-width: 1600px) {
    .container-verysmall {width: calc(100% - 24em);}
    .container-small {width: calc(100% - 20em);}
    .container-medium {width: calc(100% - 16em);}
    .container-large {width: calc(100% - 12em);}
}
@media screen and (max-width: 768px) {
    .container-verysmall {width: calc(100% - 8em);}
    .container-small {width: calc(100% - 6em);}
    .container-medium {width: calc(100% - 4em);}
    .container-large {width: calc(100% - 2em);}
    .centered-mobile {margin: 0 auto;}
}

/* FLEX */
.flex {display: flex;}
.flex-column {flex-direction: column;}
.flex-row {flex-direction: row;}
.flex-wrap {flex-wrap: wrap;}
.justify-center {justify-content: center;}
.justify-between {justify-content: space-between;}
.justify-end {justify-content: flex-end;}
.justify-start {justify-content: flex-start;}
.align-center {align-items: center;}
.align-start {align-items: flex-start;}
.align-end {align-items: flex-end;}
.align-baseline {align-items: baseline;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .flex-mobile {display: flex;}
    .flex-column-mobile {flex-direction: column;}
    .flex-column-reverse-mobile {flex-direction: column-reverse;}
    .flex-row-mobile {flex-direction: row;}
    .flex-row-reverse-mobile {flex-direction: row-reverse;}
    .flex-wrap-mobile {flex-wrap: wrap;}
    .justify-center-mobile {justify-content: center;}
    .justify-between-mobile {justify-content: space-between;}
    .justify-end-mobile {justify-content: flex-end;}
    .justify-start-mobile {justify-content: flex-start;}
    .align-center-mobile {align-items: center;}
    .align-start-mobile {align-items: flex-start;}
    .align-end-mobile {align-items: flex-end;}
    .align-baseline-mobile {align-items: baseline;}
}

/* GRID */
.grid {display: grid;}
.grid-1 {grid-template-columns: 1fr;}
.grid-2 {grid-template-columns: repeat(2, 1fr);}
.grid-3 {grid-template-columns: repeat(3, 1fr);}
.grid-4 {grid-template-columns: repeat(4, 1fr);}

@media screen and (max-width: 768px) {
    .grid-mobile {display: grid;}
    .grid-1-mobile {grid-template-columns: 1fr;}
    .grid-2-mobile {grid-template-columns: repeat(2, 1fr);}
    .grid-3-mobile {grid-template-columns: repeat(3, 1fr);}
    .grid-4-mobile {grid-template-columns: repeat(4, 1fr);}
}

/* GAPS */
.gap-0 {gap: 0;}
.gap-0-25 {gap: 0.25em;}
.gap-0-5 {gap: 0.5em;}
.gap-1 {gap: 1em;}
.gap-1-5 {gap: 1.5em;}
.gap-2 {gap: 2em;}
.gap-3 {gap: 3em;}
.gap-4 {gap: 4em;}
.gap-5 {gap: 5em;}
/* mobile */
@media screen and (max-width: 768px) {
    .gap-0-mobile {gap: 0;}
    .gap-0-25-mobile {gap: 0.25em;}
    .gap-0-5-mobile {gap: 0.5em;}
    .gap-1-mobile {gap: 1em;}
    .gap-1-5-mobile {gap: 1.5em;}
    .gap-2-mobile {gap: 2em;}
    .gap-3-mobile {gap: 3em;}
    .gap-4-mobile {gap: 4em;}
    .gap-5-mobile {gap: 5em;}
}

/* POSITIONS */
.rel {position: relative;}
.abs {position: absolute;}
.fixed {position: fixed;}
.sticky {position: sticky; top: 0;}

/* Z-INDEX */
.z-index-1 {z-index: 1;}
.z-index-2 {z-index: 2;}
.z-index-3 {z-index: 3;}

/* ABSOLUTE POSITIONS */
.abs.top {top: 0; bottom: auto;}
.abs.top--5 {top: -5%; bottom: auto;}
.abs.top-5 {top: 5%; bottom: auto;}
.abs.top--10 {top: -10%; bottom: auto;}
.abs.top-10 {top: 10%; bottom: auto;}
.abs.top-15 {top: 15%; bottom: auto;}
.abs.top--15 {top: -15%; bottom: auto;}
.abs.top-20 {top: 20%; bottom: auto;}
.abs.top-25 {top: 25%; bottom: auto;}
.abs.top-30 {top: 30%; bottom: auto;}
.abs.top-40 {top: 40%; bottom: auto;}
.abs.top-45 {top: 45%; bottom: auto;}
.abs.top-50 {top: 50%; bottom: auto;}
.abs.top-55 {top: 55%; bottom: auto;}
.abs.top-60 {top: 60%; bottom: auto;}
.abs.top-65 {top: 65%; bottom: auto;}
.abs.top-70 {top: 70%; bottom: auto;}
.abs.top-80 {top: 80%; bottom: auto;}
.abs.top-90 {top: 90%; bottom: auto;}
.abs.bot {bottom: 0; top: auto;}
.abs.bot--5 {bottom: -5%; top: auto;}
.abs.bot-5 {bottom: 5%; top: auto;}
.abs.bot--10 {bottom: -10%; top: auto;}
.abs.bot-10 {bottom: 10%; top: auto;}
.abs.bot-15 {bottom: 15%; top: auto;}
.abs.bot--20 {bottom: -20%; top: auto;}
.abs.bot-20 {bottom: 20%; top: auto;}
.abs.bot-25 {bottom: 25%; top: auto;}
.abs.bot-30 {bottom: 30%; top: auto;}
.abs.bot--30 {bottom: -30%; top: auto;}
.abs.bot-35 {bottom: 35%; top: auto;}
.abs.bot--40 {bottom: -40%; top: auto;}
.abs.bot-40 {bottom: 40%; top: auto;}
.abs.bot-45 {bottom: 45%; top: auto;}
.abs.bot-50 {bottom: 50%; top: auto;}
.abs.bot-60 {bottom: 60%; top: auto;}
.abs.bot-65 {bottom: 65%; top: auto;}
.abs.bot--65 {bottom: -65%; top: auto;}
.abs.bot-70 {bottom: 70%; top: auto;}
.abs.bot--70 {bottom: -70%; top: auto;}
.abs.bot-80 {bottom: 80%; top: auto;}
.abs.bot-90 {bottom: 90%; top: auto;}
.abs.left {left: 0; right: auto;}
.abs.left--5 {left: -5%; right: auto;}
.abs.left-5 {left: 5%; right: auto;}
.abs.left--10 {left: -10%; right: auto;}
.abs.left-10 {left: 10%; right: auto;}
.abs.left-15 {left: 15%; right: auto;}
.abs.left--20 {left: -20%; right: auto;}
.abs.left-20 {left: 20%; right: auto;}
.abs.left-25 {left: 25%; right: auto;}
.abs.left-30 {left: 30%; right: auto;}
.abs.left-35 {left: 35%; right: auto;}
.abs.left-40 {left: 40%; right: auto;}
.abs.left-45 {left: 45%; right: auto;}
.abs.left-50 {left: 50%; right: auto;}
.abs.left-60 {left: 60%; right: auto;}
.abs.left-65 {left: 65%; right: auto;}
.abs.left-70 {left: 70%; right: auto;}
.abs.left-80 {left: 80%; right: auto;}
.abs.left-90 {left: 90%; right: auto;}
.abs.right {right: 0; left: auto;}
.abs.right--5 {right: -5%; left: auto;}
.abs.right-5 {right: 5%; left: auto;}
.abs.right--10 {right: -10%; left: auto;}
.abs.right-10 {right: 10%; left: auto;}
.abs.right-15 {right: 15%; left: auto;}
.abs.right-20 {right: 20%; left: auto;}
.abs.right-25 {right: 25%; left: auto;}
.abs.right-30 {right: 30%; left: auto;}
.abs.right-35 {right: 35%; left: auto;}
.abs.right-40 {right: 40%; left: auto;}
.abs.right-45 {right: 45%; left: auto;}
.abs.right-50 {right: 50%; left: auto;}
.abs.right-60 {right: 60%; left: auto;}
.abs.right-65 {right: 65%; left: auto;}
.abs.right-70 {right: 70%; left: auto;}
.abs.right-80 {right: 80%; left: auto;}
.abs.right-90 {right: 90%; left: auto;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .abs.left-10-mobile {left: 10%;}
    .abs.left-33-mobile {left: 33.33%;}
    .abs.left-40-mobile {left: 40%;}
    .abs.left-55-mobile {left: 55%;}
    .abs.top-0-mobile {top: 0; bottom: auto;}
    .abs.top-7-mobile {top: 7%; bottom: auto;}
    .abs.top--8-mobile {top: -8%; bottom: auto;}
    .abs.top--10-mobile {top: -10%; bottom: auto;}
    .abs.top--30-mobile {top: -30%; bottom: auto;}
    .abs.top--60-mobile {top: -60%; bottom: auto;}
    .abs.top--70-mobile {top: -70%; bottom: auto;}
}

/* ROTATION */
.rotated-180 {transform: rotate(180deg);}
.rotated-90 {transform: rotate(90deg);}
.rotated-45 {transform: rotate(45deg);}
.rotated-0 {transform: rotate(0deg);}

/* BOX SHADOWS */
.box-shadow-1 {box-shadow: 0px 0px 16px 7px #F5F5F5;}
.box-shadow-2 {box-shadow: 0px 0px 16px 7px #9E917E4D;}

/* FILL COLORS */
.children-fill-black svg path {fill: #000000;}
.children-fill-white svg path {fill: #ffffff;}
.children-fill-brown svg path {fill: var(--marron);}
.children-fill-green svg path {fill: var(--vert);}
.children-fill-light-gray svg path {fill: var(--gris-clair);}
.children-fill-sand svg path {fill: var(--sable);}

/* SCALED SIZES */
.scale-1 {transform: scale(1);}
.scale-1-05 {transform: scale(1.05);}
.scale-1-1 {transform: scale(1.1);}
.scale-1-2 {transform: scale(1.2);}
.scale-1-3 {transform: scale(1.3);}
.scale-1-4 {transform: scale(1.4);}
.scale-1-5 {transform: scale(1.5);}


/*------------------ SPECIFIC STYLES */


/* MENUS FOOTER */
footer .footer-menus { display: flex; gap: 5em; align-items: flex-start; width: 50%;}
footer .main-menu { display: flex; flex-direction: column;}
footer  .utils-menu { display: flex; flex-direction: column;}
footer  .menu-container { align-items: flex-start; gap: .25em;}
footer .menu-link { color: black;}
footer .main-menu .menu-link-container:first-child .menu-link,
footer .utils-menu .menu-link-container:first-child .menu-link { font-weight: 700; text-transform: uppercase;}
footer .main-menu .menu-link-container:first-child .menu-link { cursor: default;}
footer .utils-menu .menu-link-container:last-child {margin-top: 1em;}
footer .utils-menu .menu-link-container:last-child .menu-link { background: var(--marron);padding: .75em 1.5em;border-radius: 2em;color: white;text-transform: uppercase;}
footer .utils-menu .menu-link-container:last-child .menu-link svg { display: none; }
footer .utils-menu .menu-link-container:last-child:hover .menu-link {background-color: var(--vert);}
footer .utils-menu .menu-link-container:last-child:hover .menu-link:after {display: none;}
/* MOBILE */
@media screen and (max-width: 768px) {
    footer .footer-menus {width: 100%; gap: 0;}
    .main-footer .menu-container.utils-menu .menu-link,
    .main-footer .menu-container.main-menu .menu-link {font-size: .6em !important; line-height: 1.5;}
    footer .utils-menu .menu-link-container:last-child {display: none;}
}


/* MENUS HEADER */
header .utils-menu { display: flex; flex-direction: row; justify-content: space-between;}
header .utils-menu .menu-link-container:last-child,
header .utils-menu .menu-link-container:first-child { display: none;}
header .utils-menu .menu-link {font-size: 1.1em;letter-spacing: 0px;}
header .socials .social-link {margin: 0 !important;}
header .mains-menus-container .main-menu .menu-link {display: flex; align-items: center;gap: .5em;}
.menu-link svg {display: none;}
.show-svg:hover svg {display: block;}
/* MOBILE */
@media screen and (max-width: 768px) {
    header .mains-menus-container .menu-link {font-size: 1em !important;}
    header .utils-menu {flex-direction: column;}
    header .utils-menu .menu-link {font-size: 1em;letter-spacing: 0px;}
}



/* FAQ ACCORDION */
.faq-question { transition: background-color 0.3s ease;}
.faq-icon { transition: transform 0.3s ease;}
.faq-item.active .faq-icon {transform: rotate(180deg);}
.faq-plus,
.faq-minus {transition: opacity 0.3s ease;}
.faq-answer { transition: max-height 1s ease, padding 0.3s ease; max-height: 0;}
.faq-item.active .faq-answer {max-height: fit-content;}
.hidden {display: none;}


/* CAROUSEL ÉVÉNEMENTS */
.carousel-slides {transition: transform 0.5s ease;will-change: transform;}
.carousel-slide {min-width: 100%;}
.event-slide {max-width: 800px;margin: 0 auto;}


/* Video container */
.video-container { position: relative; width: 100%; height: 455px; background-color: #000;}
.video-container iframe,
.video-container video,
.video-container embed,
.video-container object { position: absolute;top: 0;left: 0;width: 100%;height: 100%;border: none;}
.video_container_event iframe,
.video_container_event video,
.video_container_event embed,
.video_container_event object { width: 100%;height: 100%;border: none;}


/* CAROUSEL IMAGES - Affichage 4 par défaut */
.carousel-images-slides { transition: transform 0.5s ease; will-change: transform;}
.carousel-image-slide {min-width: 25%; box-sizing: border-box;}
.tool-image-container {height: 250px;}


/* CONTACT FORM 7 on page products */
#documentation .wpcf7-label,
#robot-modal .wpcf7-label {font-family: Montserrat;font-weight: 900;font-size: 24px;line-height: 100%;letter-spacing: normal;text-transform: uppercase;color: black;}
#documentation .wpcf7-label input,
#robot-modal .wpcf7-label input { font-size:1.2em;border: 0; border-bottom: 1px solid black; background: inherit; width: 100%; padding-top: 1em;}
#documentation .wpcf7-list-item,
#robot-modal .wpcf7-list-item { margin: 2em 0 0 0}
#documentation .wpcf7-submit,
#robot-modal .wpcf7-submit {cursor: pointer;background: var(--marron);padding: 1em 1.5em;border-radius: 2em;color: white;font-size: .8em;text-transform: uppercase;border: none;margin-top: 4em;}
#documentation.wpcf7-submit:hover,
#robot-modal .wpcf7-submit:hover {background: var(--vert);}
#documentation .wpcf7-confirmation,
#robot-modal .wpcf7-confirmation { position: absolute; opacity: 0;width: 0;height: 0;}
/* Styliser le label pour créer notre checkbox */
#documentation .wpcf7-list-item-label,
#robot-modal .wpcf7-list-item-label {font-size: .7em;color: var(--marron-fonce);}
#documentation .wpcf7-list-item label,
#robot-modal .wpcf7-list-item label {padding-left: 35px;cursor: pointer;}
/* Créer la checkbox visuelle */
#documentation .wpcf7-list-item label,
#robot-modal .wpcf7-list-item label {position: relative;}
#documentation .wpcf7-list-item label::before,
#robot-modal .wpcf7-list-item label::before {content: '';position: absolute;left: 0;top: 15%;transform: translateY(-50%);width: 16px;height: 16px;border: 1px solid black;background-color: transparent;transition: all 0.3s ease;}
/* Style quand la checkbox est cochée */
#documentation .wpcf7-confirmation:checked + .wpcf7-list-item-label::before,
#documentation .wpcf7-list-item label:has(.wpcf7-confirmation:checked)::before,
#robot-modal .wpcf7-confirmation:checked + .wpcf7-list-item-label::before,
#robot-modal .wpcf7-list-item label:has(.wpcf7-confirmation:checked)::before {background-color: var(--vert);border-color: var(--vert);}
/* Ajouter la coche */
#documentation .wpcf7-confirmation:checked + .wpcf7-list-item-label::after,
#documentation .wpcf7-list-item label:has(.wpcf7-confirmation:checked)::after,
#robot-modal .wpcf7-confirmation:checked + .wpcf7-list-item-label::after,
#robot-modal .wpcf7-list-item label:has(.wpcf7-confirmation:checked)::after {content: '✓';position: absolute;left: 4px;top: 15%;transform: translateY(-50%);color: white;font-size: 14px;font-weight: bold;}
.wpcf7-spinner { display: none !important;}
.documentation-submit {margin-left: auto;margin-right: auto; display: flex;}
.wpcf7-acceptance .wpcf7-list-item {margin-top: 1em}
/* CONTACT FORM NEWSLETTER */
#newsletter .wpcf7-form {display: flex;align-items: center;justify-content: space-between;background: white;padding: .25em .25em .25em 1em;border-radius: 2em;}
#newsletter.header-newsletter .wpcf7-form {background: var(--gris-fonce);}
#newsletter .wpcf7-email {width: 70%; border: none;color: gray;font-size: .8em;background: inherit;}
#newsletter.header-newsletter .wpcf7-email {color: black;}
#newsletter .wpcf7-submit {cursor: pointer; border: none;padding: .75em 1.5em;background: var(--marron);color: white;text-transform: uppercase;border-radius: 2em;font-size: .8em;}
#newsletter.header-newsletter .wpcf7-submit {background: white;color: black;}
/* Style pour le bouton désactivé */
.wpcf7-submit.disabled,
.wpcf7-submit:disabled {opacity: 0.5;cursor: not-allowed;background-color: #ccc !important;border-color: #ccc !important;color: #666 !important;}
.wpcf7-submit.disabled:hover,
.wpcf7-submit:disabled:hover {background-color: #ccc !important;border-color: #ccc !important;transform: none !important;}
/* hide debug */
.wpcf7-response-output {display: none;}
.wpcf7-not-valid-tip {position: absolute;width: 200%;top: 2em;}
/* MOBILE */
@media screen and (max-width: 768px) {
    #newsletter .wpcf7-email {font-size: .6em;}
    #newsletter .wpcf7-submit {padding: .5em 1em;}
}


/* MODAL STYLES */
.modal-download-brochure {background-color: rgba(0, 0, 0, 0.7);z-index: 1000;transition: opacity 0.3s ease;}
.modal-download-brochure.active {display: flex;align-items: center;justify-content: center;opacity: 1;}
.modal-content { transform: scale(0.7); transition: transform 0.3s ease;}
.modal-download-brochure.active .modal-content {transform: scale(1);}
.close-modal {top: 1em;right: 1em;width: 30px;height: 30px;}
.close-modal svg {width: 20px;height: 20px;}
.close-modal:hover svg { fill: var(--vert);}
/* Responsive */
@media (max-width: 768px) {
    .modal-content {padding: 2em 2em 5em 2em;margin: 1em;}
}


/* page événement */
.events-list { transition: all 0.3s ease;}
.btn-filter {transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
/* Styles pour les boutons actifs */
.btn-filter.active {z-index: 1;box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);}
.progressive-green {background: linear-gradient(180deg, var(--vert) 0%, var(--vert) var(--progress, 0%), #000000 var(--progress, 0%), #000000 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent;}
/* Fallback pour les navigateurs qui ne supportent pas background-clip: text */
@supports not (-webkit-background-clip: text) {
    .progressive-green {color: #000000; transition: color 0.1s ease; }
    .progressive-green.fully-green {color: var(--vert);}
}


/* intro spécifiques */
.intro-title-black h1 { color: black;}
.page-template-page-news .start-breadcrumb {color: white;}
.page-template-page-news h1 { margin-top: .5em;}


/* TEMOIGNAGES */
.img-temoignage {max-width: 200px;max-height: 200px;}
/* MOBILE */
@media screen and (max-width: 768px) {
    .img-temoignage {max-width: 150px;max-height: 150px;}
}



/* Overlay avec filtre blanc */
.robot-hover-overlay { background-color: rgba(255, 255, 255, 0.85);transition: opacity 0.3s ease;z-index: 2;}
/* Icône du robot */
.robot-icon { width: 100px; height: 100px; transition: transform 0.3s ease;}
.robot-icon svg {width: 100%;height: 100%;}
/* Effet hover */
.robot-image-container:hover .robot-hover-overlay {opacity: 1;}
.robot-image-container:hover .robot-icon {transform: scale(1.1);}
/* Responsive mobile - désactiver l'effet hover */
@media (max-width: 768px) {
    .robot-image-container:hover .robot-hover-overlay {opacity: 0;}
    .robot-image-container:hover img {transform: none;}
}


/* ANIMATIONS GSAP */
.cta-container svg { transform-origin: center center;}
.cta-container {overflow: visible;}

/* Rendre visible après que GSAP ait pris le contrôle */
.gsap-marker-start {
    visibility: visible;
}

/* Classes utilitaires pour les durées */
.duration-fast { --duration: 0.3s; }
.duration-normal { --duration: 0.8s; }
.duration-slow { --duration: 1.5s; }

/* Classes utilitaires pour les durées étendues */
.duration-fast { --duration: 0.3s; }
.duration-normal { --duration: 0.8s; }
.duration-slow { --duration: 1.5s; }
.duration-0-5 { --duration: 0.5s; }
.duration-1 { --duration: 1s; }
.duration-1-2 { --duration: 1.2s; }
.duration-1-5 { --duration: 1.5s; }
.duration-2 { --duration: 2s; }

/* Classes utilitaires pour les délais étendus */
.delay-1 { --delay: 0.1s; }
.delay-2 { --delay: 0.2s; }
.delay-3 { --delay: 0.3s; }
.delay-4 { --delay: 0.4s; }
.delay-5 { --delay: 0.5s; }
.delay-10 { --delay: 1s; }
.delay-1-5 { --delay: 1.5s; }
.delay-2-0 { --delay: 2s; }

/* Optimisation des performances pour le parallax */
.parallax-slow,
.parallax-medium,
.parallax-fast,
.parallax-down-slow,
.parallax-down-medium,
.parallax-down-fast,
.parallax-rotate-left,
.parallax-rotate-right,
.parallax-scale-up,
.parallax-scale-down,
.parallax-float,
.parallax-sink { will-change: transform; backface-visibility: hidden; transform-style: preserve-3d; transform-origin: center center; }
.parallax-bg-slow,
.parallax-bg-medium,
.parallax-bg-fast,
.parallax-bg-reverse { background-attachment: scroll; background-size: cover; background-repeat: no-repeat; }

/* Désactiver le parallax sur mobile pour les performances */
@media (max-width: 768px) {
    [class*="parallax-"] {
        will-change: auto;
    }
}

.grecaptcha-logo,
.grecaptcha-badge { display: none !important;}


/* Edit novembre 2025 - SPKTR */
@media screen and (max-width: 978px) {
    .single-news .image-container img { max-width: 100%;}
    .single-news .content-section { width: 90%;}
}