@font-face {
    font-family: 'Uni Sans SemiBold';
    src: url('../font/Uni-Sans-Book.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

html, body, a, p, li {
    font-family: 'Uni Sans SemiBold', sans-serif;
    font-family: "Uni Sans SemiBold" !important;
}

.header,
.header-menu,
.header-menu a,
.homeBloc-title-main,
.homeBloc-title-sub {
    font-family: 'Uni Sans SemiBold', sans-serif;
}

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline
}

html {
    line-height: 1
}

ol,ul {
    list-style: none
}

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

caption,th,td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle
}

q,blockquote {
    quotes: none
}

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

a img {
    border: none
}

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

@font-face {
    font-family: "Uni Sans Regular";
    src: url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/Uni-Sans-Regular.woff?1474013271') format('woff'),url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/Uni-Sans-Regular.ttf?1474013271') format('truetype'),url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/Uni-Sans-Regular.svg?1474013271') format('svg'),url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/Uni-Sans-Regular.eot?1474013271') format('embedded-opentype')
}

@font-face {
    font-family: "Uni Sans SemiBold";
    src: url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/Uni-Sans-SemiBold.woff?1474013271') format('woff'),url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/Uni-Sans-SemiBold.ttf?1474013271') format('truetype'),url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/Uni-Sans-SemiBold.svg?1474013271') format('svg'),url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/Uni-Sans-SemiBold.eot?1474013271') format('embedded-opentype')
}

@font-face {
    font-family: "Uni Sans Book";
    src: url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/UniSansBook.woff?1474013271') format('woff'),url('/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/font/Uni-Sans-Book.ttf?1474013271') format('truetype')
}

.h {
    display: none
}

.fr {
    float: right
}

.fl {
    float: left
}

.full {
    width: 100%
}

.al {
    text-align: left
}

.ar {
    text-align: right
}

.ac {
    text-align: center
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0px, 0px, 0px, 0px);
    border: 0px none
}

html,body {
    font-size: 14px;
    font-family: "Uni Sans Regular";
    color: #1e1e1e;
    background-color: #fff
}

* {
    box-sizing: border-box
}

a {
    text-decoration: none;
    color: inherit
}

@keyframes tadaaa {
    0% {
        transform: scale3d(1, 1, 1)
    }

    10%, 20% {
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)
    }

    30%, 50%, 70%, 90% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)
    }

    40%, 60%, 80% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)
    }

    100% {
        transform: scale3d(1, 1, 1)
    }
}

.party {
    margin-right: 2rem;
    cursor: pointer;
    animation: tadaaa 1s 2s
}

.party .party-picto {
    fill: #ea4e58;
    -moz-transition: -moz-transform .06s ease-out,fill .3s ease-out;
    -o-transition: -o-transform .06s ease-out,fill .3s ease-out;
    -webkit-transition: -webkit-transform .06s ease-out,fill .3s ease-out;
    transition: transform .06s ease-out,fill .3s ease-out
}

.party .party-picto .party-picto-hover {
    opacity: 0
}

.party:hover .party-picto {
    transform: scale(1.03, 1.03)
}

.party:hover .party-picto .party-picto-base {
    opacity: 0
}

.party:hover .party-picto .party-picto-hover {
    opacity: 1
}

.party-dialog {
    z-index: 1000;
    position: fixed;
    left: 0;
    top: 4.643rem;
    width: 100%;
    height: calc(100vh - 4.643rem);
    display: none;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    background: rgba(0,0,0,0.9)
}

.party-dialog .party-embed {
    display: none
}

.party-dialog:target {
    display: -webkit-flex;
    display: flex
}

.party-dialog:target .party-embed {
    display: block
}

.party-dialog .party-close {
    position: fixed;
    top: 9.286rem;
    right: 3rem
}

.party-embed {
    width: 45vw;
    height: 50vh
}

.grid,.grid--wrap {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-align-items: stretch;
    align-items: stretch;
    -webkit-justify-content: space-between;
    justify-content: space-between
}

.grid .twoCol,.grid--wrap .twoCol {
    width: 48%
}

.grid--wrap {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

.header {
    z-index: 200;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    height: 4.643rem;
    background-color: #f9f9f9;
    position: absolute
}

.header .header-logo {
    padding-top: .7rem;
    padding-left: 1rem;
    text-align: left
}

.header .logo-svg {
    margin-top: -5px
}

@media screen and (max-width: 500px) {
    .header .logo-svg {
        width:180px
    }
}

@media screen and (max-width: 370px) {
    .header .logo-svg {
        margin-top:0;
        width: 150px
    }
}

.header .header-right {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: flex-end;
    justify-content: flex-end
}

.header .header-right--phone {
    margin-right: 2rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center
}

.header .header-social {
    border-left: 1px solid #d2d2d2;
    padding-left: 2rem;
    padding-top: 1rem;
    padding-right: 1.5rem
}

.header .header-social img {
    margin-right: .5rem
}

.header-space {
    width: 100%;
    height: 4.643rem;
    position: relative
}

.mainmenu {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: flex-start;
    justify-content: flex-start
}

.mainmenu li {
    -webkit-flex-grow: 3;
    flex-grow: 3
}

.mainmenu .mainmenu-elmt {
    display: block;
    padding: 0 2rem;
    line-height: 4.643rem;
    text-transform: uppercase;
    font-size: 15px;
    color: #787878;
    border-left: 1px solid #d2d2d2;
    cursor: pointer;
    -moz-transition: background-color .5s .1s,color .3s ease-out;
    -o-transition: background-color .5s .1s,color .3s ease-out;
    -webkit-transition: background-color .5s,color .3s ease-out;
    -webkit-transition-delay: .1s,0s;
    transition: background-color .5s .1s,color .3s ease-out
}

.mainmenu .mainmenu-sub {
    display: none;
    z-index: 500;
    position: absolute;
    top: 4.643rem;
    left: 0;
    width: 100%;
    text-align: center;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    background-color: #f2f2f2;
    border-left: 1px solid #d2d2d2;
}

.mainmenu .mainmenu-sub .mainmenu-sub-eltm {
    display: block;
    padding: 0 2rem;
    line-height: 3.571rem;
    text-transform: uppercase;
    font-size: 13px;
    color: #717171;
    border-right: 1px solid #e6e6e6
}

.mainmenu .mainmenu-sub .mainmenu-sub-eltm:hover {
    background-color: #ddd
}

.mainmenu .mainmenu-sub li:last-child .mainmenu-sub-eltm {
    border: none
}

.mainmenu li.hover .mainmenu-sub {
    display: -webkit-flex;
    display: flex
}

.mainmenu li:hover .mainmenu-elmt,.mainmenu li.hover .mainmenu-elmt,.mainmenu li.is-actif .mainmenu-elmt {
    background-color: #e30513;
    color: #f9f9f9
}

.footer {
    background-color: #e0e0e0
}

.footer .footer-content {
    max-width: 71.429rem;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-align-items: stretch;
    align-items: stretch;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    line-height: 3.571rem;
    color: #6a6a6a
}

.footer .footer-links {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: row;
    flex-direction: row
}

.footer .footer-links .footer-links-elmt {
    margin: 0 .5rem
}

.button,.button--icon {
    display: inline-block;
    position: relative;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-top: .9rem;
    padding-bottom: .7rem;
    background-color: #e30513;
    border: none;
    font-family: "Uni Sans SemiBold";
    font-size: 15px;
    color: #f9f9f9;
    cursor: pointer;
    border-radius: 2px;
    box-shadow: 0 6px #b61024;
    text-transform: uppercase;
    outline: none;
    -moz-user-select: -moz-none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none
}

.button:hover,.button--icon:hover {
    top: 2px;
    box-shadow: 0 4px #b61024
}

.button:active,.button--icon:active {
    box-shadow: 0 0 #b61024;
    top: 6px
}

.button--icon {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: no-wrap;
    flex-wrap: no-wrap;
    -webkit-align-items: center;
    align-items: center;
    padding-left: 1rem;
    padding-right: .1rem;
    padding-top: .3rem;
    padding-bottom: .1rem
}

.button--icon .button-icon {
    fill: #f9f9f9
}

.button--icon .button-text {
    margin-left: .2rem
}

.button--icon.isPdf {
    width: 7.5rem
}

.ariane {
    background-color: #f2f2f2
}

.ariane .ariane-body {
    max-width: 71.429rem;
    margin: 0 auto;
    height: 2.5rem
}

.ariane .ariane-elmt {
    display: inline-block;
    padding: .8rem .3rem;
    color: #898989;
    font-style: italic;
    font-size: 12px
}

.ariane .ariane-elmt .caret {
    margin-left: 1rem;
    margin-bottom: -.2rem;
    fill: none;
    stroke: #b4b4b4
}

.submenu {
    border-bottom: 1px solid #f2f2f2;
    margin-bottom: 3.571rem
}

.submenu .submenu-body {
    max-width: 71.429rem;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: row;
    flex-direction: row
}

.submenu .submenu-elmt {
    padding: 1.7rem 2rem;
    border: 1px solid #f2f2f2;
    border-bottom: none;
    border-top: none;
    text-transform: uppercase;
    color: #898989
}

.submenu .submenu-elmt:hover {
    background-color: #f2f2f2
}

.userContent {
    font-size: 18px;
    font-family: "Uni Sans Book";
    line-height: 24px
}

.userContent strong {
    font-weight: bold
}

.userContent em {
    font-style: italic
}

.userContent a {
    text-decoration: underline
}

@-moz-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -moz-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -moz-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    60% {
        -moz-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

@-webkit-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    40% {
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }

    60% {
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

.contentHeader {
    width: 100%;
    height: calc(100vh - 4.643rem);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center
}

.contentHeader .contentHeader-title {
    position: absolute;
    top: calc(33vh + 4.643rem);
    margin-left: 12.5%;
    width: 75%;
    text-align: center
}

.contentHeader .contentHeader-title .title-main {
    display: inline;
    line-height: 4vw;
    padding: 1vw 1.2vw;
    background-color: #f9f9f9;
    text-transform: uppercase;
    font-size: 3vw;
    font-family: "Uni Sans SemiBold";
    color: #2d2d2d
}

.contentHeader .contentHeader-title .title-sub {
    margin-top: 0.6vw;
    display: inline-block;
    padding: .69rem 1.5rem;
    color: #f9f9f9;
    background-color: #383838;
    font-size: 1.5vw;
    font-family: "Uni Sans SemiBold";
    font-style: italic
}

.contentHeader .contentHeader-arrow {
    position: absolute;
    bottom: 122px;
    left: 50%;
    margin-left: -20px;
    width: 40px;
    height: 40px;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNTEycHgiIGhlaWdodD0iNTEycHgiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0yOTMuNzUxLDQ1NS44NjhjLTIwLjE4MSwyMC4xNzktNTMuMTY1LDE5LjkxMy03My42NzMtMC41OTVsMCwwYy0yMC41MDgtMjAuNTA4LTIwLjc3My01My40OTMtMC41OTQtNzMuNjcyICBsMTg5Ljk5OS0xOTBjMjAuMTc4LTIwLjE3OCw1My4xNjQtMTkuOTEzLDczLjY3MiwwLjU5NWwwLDBjMjAuNTA4LDIwLjUwOSwyMC43NzIsNTMuNDkyLDAuNTk1LDczLjY3MUwyOTMuNzUxLDQ1NS44Njh6Ii8+DQo8cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNMjIwLjI0OSw0NTUuODY4YzIwLjE4LDIwLjE3OSw1My4xNjQsMTkuOTEzLDczLjY3Mi0wLjU5NWwwLDBjMjAuNTA5LTIwLjUwOCwyMC43NzQtNTMuNDkzLDAuNTk2LTczLjY3MiAgbC0xOTAtMTkwYy0yMC4xNzgtMjAuMTc4LTUzLjE2NC0xOS45MTMtNzMuNjcxLDAuNTk1bDAsMGMtMjAuNTA4LDIwLjUwOS0yMC43NzIsNTMuNDkyLTAuNTk1LDczLjY3MUwyMjAuMjQ5LDQ1NS44Njh6Ii8+DQo8L3N2Zz4=);
    background-size: contain;
    cursor: pointer;
    -moz-animation: bounce 2s infinite;
    -webkit-animation: bounce 2s infinite;
    animation: bounce 2s infinite
}

.contentArticle {
    max-width: 71.429rem;
    margin: 0 auto
}

.contentArticle .contentBody {
    margin-bottom: 5rem;
    overflow: hidden;
    *zoom:1}

.contentArticle .contentArticle-title {
    color: #535353;
    font-size: 36px;
    text-transform: uppercase;
    margin-top: 3.571rem;
    width: 66%;
    margin-top: 0;
    padding-top: 3.571rem;
    margin-bottom: 3.571rem
}

.contentArticle .contentArticle-accroche {
    width: 66%;
    color: #565656;
    text-transform: uppercase
}

.contentArticle .contentArticle-separator {
    fill: #d2d2d2;
    margin-bottom: 4rem;
    margin-top: 1.5rem
}

.contentArticle .contentText {
    width: 60%;
    float: left;
    margin-right: 6%
}

.contentWidget--citation,.contentWidget--text,.contentWidget--plus {
    float: left;
    margin-bottom: 5rem;
    margin-left: 3%;
    width: 30%;
    border-left: 1px solid #d2d2d2;
    padding-bottom: 1rem
}

.contentWidget-title {
    margin-top: 1rem;
    margin-bottom: 2rem;
    text-transform: uppercase;
    font-size: 15px;
    color: #a7a7a7
}

.contentWidget-title::before {
    content: '';
    float: left;
    margin-left: -.54rem;
    margin-right: 3rem;
    width: 1rem;
    height: 1rem;
    border-right: 1px solid #d2d2d2;
    border-top: 1px solid #d2d2d2;
    background-color: white;
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.contentWidget-body {
    margin-left: 3.5rem;
    margin-right: 3.5rem;
    padding-bottom: 2rem;
    font-style: italic
}

.contentWidget-botImg {
    margin-left: 3.5rem
}

.contentWidget-circ {
    text-align: center;
    margin-bottom: 1rem
}

.contentWidget-circ .contentWidget-circImg {
    border-radius: 50%
}

.contentWidget-name {
    text-align: right;
    font-size: 12px;
    font-weight: bold;
    padding-right: 3.5rem
}

.contentWidget-post {
    text-align: right;
    font-size: 12px;
    padding-right: 3.5rem
}

.contentWidget--citation .contentWidget-body {
    padding-bottom: .5rem;
    font-size: 24px
}

.contentWidget--citation .contentWidget-body::before {
    content: '"';
    float: left;
    margin-right: 1rem
}

.contentWidget--citation .contentWidget-body p:last-child::after {
    content: '"';
    float: right
}

.contentWidget--text .contentWidget-button {
    margin-left: 3.5rem;
    margin-right: 3.5rem;
    padding: .3rem
}

.contentWidget--plus .contentWidget-body {
    font-size: 15px
}

.contentWidget--plus .contentWidget-body ul li {
    margin-bottom: 2rem
}

.contentWidget--plus .contentWidget-body ul li::before {
    content: '';
    display: block;
    float: left;
    width: 45px;
    height: 38px;
    background-image: url(/web/20240226233636im_/https://www.berthelet.fr/public/projet/front/image/li.gif)
}

@-moz-keyframes tabReveal {
    from {
        right: -100px
    }

    to {
        right: 0
    }
}

@-webkit-keyframes tabReveal {
    from {
        right: -100px
    }

    to {
        right: 0
    }
}

@keyframes tabReveal {
    from {
        right: -100px
    }

    to {
        right: 0
    }
}

.contentContact {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    position: fixed;
    top: 10rem;
    right: -100px;
    width: 140px;
    height: 35px;
    padding-left: .1rem;
    padding-right: .4rem;
    border-radius: 4px 0 0 4px;
    background-color: #e30513;
    cursor: pointer;
    opacity: 0;
    -moz-transition: right .3s ease;
    -o-transition: right .3s ease;
    -webkit-transition: right .3s ease;
    transition: right .3s ease
}

.contentContact .contentContact-icon {
    width: 5rem;
    height: 70%;
    margin-top: 5px;
    margin-left: -5px;
    border-radius: 4px 0 0 4px
}

.contentContact .contentContact-icon .contentContact-path {
    fill: #f9f9f9
}

.contentContact .contentContact-title {
    color: #f9f9f9;
    text-transform: uppercase;
    padding-top: .2em;
    padding-right: 1em;
    font-size: 18px;
    font-family: "Uni Sans SemiBold";
    -webkit-align-self: center;
    align-self: center
}

.contentContact.linkDevis {
    right: -75px;
    width: 120px
}

.contentContact.externalLink {
    top: 15rem;
    right: -150px;
    width: 180px
}

.contentContact.externalLink .contentContact-icon {
    width: 4rem
}

.contentContact.externalLink .contentContact-title {
    padding-right: 0
}

.contentContact.isShow {
    opacity: 1;
    -moz-animation-name: tabReveal;
    -webkit-animation-name: tabReveal;
    animation-name: tabReveal;
    -moz-animation-duration: 1s;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -moz-animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -moz-animation-timing-function: cubic-bezier(0.22, 0.44, 0, 1);
    -webkit-animation-timing-function: cubic-bezier(0.22, 0.44, 0, 1);
    animation-timing-function: cubic-bezier(0.22, 0.44, 0, 1);
    right: 0
}

.contentDiapo,.contentDiapo--2col {
    width: 100%;
    padding-bottom: 1rem;
    padding-top: 2rem;
    clear: both
}

.contentDiapo .contentDiapo-slider,.contentDiapo--2col .contentDiapo-slider {
    width: 100%
}

.contentDiapo .contentDiapo-slider img,.contentDiapo--2col .contentDiapo-slider img {
    width: 100%;
    outline: 0
}

.contentDiapo .contentDiapo-sliderNav,.contentDiapo--2col .contentDiapo-sliderNav {
    float: right;
    width: 660px;
    -moz-user-select: -moz-none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none
}

.contentDiapo .contentDiapo-sliderNav img,.contentDiapo--2col .contentDiapo-sliderNav img {
    width: 60px;
    cursor: pointer;
    -moz-user-select: -moz-none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none;
    outline: 0
}

.contentDiapo .contentDiapo-sliderNav .slick-track,.contentDiapo--2col .contentDiapo-sliderNav .slick-track {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: flex-end;
    justify-content: flex-end
}

.contentDiapo .contentDiapo-sliderNav .slick-list,.contentDiapo--2col .contentDiapo-sliderNav .slick-list {
    padding: 0 !important
}

.contentDiapo .contentDiapo-sliderNav .slick-slide,.contentDiapo--2col .contentDiapo-sliderNav .slick-slide {
    width: 80px !important;
    padding: 1rem .5rem 1rem .5rem;
    outline: none
}

.form {
    max-width: 71.429rem;
    margin: 0 auto
}

.form .form-title {
    color: #535353;
    font-size: 36px;
    text-transform: uppercase;
    margin-top: 3.571rem;
    margin-bottom: 1.5rem
}

.form .form-accroche {
    color: #565656;
    text-transform: uppercase;
    font-style: italic;
    margin-bottom: 3.571rem
}

.form .form-button {
    width: 100%;
    text-align: right
}

.form .form-label {
    display: block;
    text-transform: uppercase;
    color: #acacac;
    margin-bottom: .6rem
}

.form input[type=text],.form input[type=email],.form input[type=file],.form select,.form textarea,.form .input-group {
    width: 100%;
    margin-bottom: 3rem;
    padding: 1rem;
    padding-top: 1.1rem;
    background-color: white;
    border: 1px solid #d2d2d2;
    border-radius: 4px;
    font-size: 16px;
    font-family: "Uni Sans Regular";
    -moz-appearance: none;
    -webkit-appearance: none
}

.form .input-group {
    display: -webkit-flex;
    display: flex;
    padding: 0
}

.form .input-group input,.form .input-group textarea {
    margin: 0;
    border: none;
    border-radius: 4px 0 0 4px
}

.form .input-group .input-group-addon {
    margin-bottom: 0;
    width: 3.5rem;
    padding-top: 1.45rem;
    border-radius: 0 4px 4px 0;
    background-color: #e30513;
    color: #f9f9f9;
    font-size: 14px;
    text-align: center;
    -moz-user-select: -moz-none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none
}

.form .input-group .input-group-addon.isCorrect img {
    margin-top: -5px
}

.form .input-select {
    padding: 0
}

.form .input-select select {
    border-radius: 4px;
    z-index: 199;
    position: relative;
    background-color: transparent
}

.form .input-select .input-group-addon {
    margin-bottom: 0;
    width: 3.5rem;
    padding-top: 1.45rem;
    border-radius: 0 4px 4px 0;
    background-color: #e30513;
    color: #f9f9f9;
    font-size: 14px;
    text-align: center;
    float: right;
    position: absolute;
    margin-left: 430px;
    height: 52.4px;
    z-index: 190;
    -moz-user-select: -moz-none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none
}

/*!
 * Pikaday
 * Copyright © 2014 David Bushell | BSD & MIT license | http://dbushell.com/
 */
.pika-single {
    z-index: 9999;
    display: block;
    position: relative;
    color: #333;
    background: #fff;
    border: 1px solid #ccc;
    border-bottom-color: #bbb;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif
}

.pika-single.is-hidden {
    display: none
}

.pika-single.is-bound {
    position: absolute;
    box-shadow: 0 5px 15px -5px rgba(0,0,0,0.5)
}

.pika-single {
    *zoom:1}

.pika-single:before,.pika-single:after {
    content: " ";
    display: table
}

.pika-single:after {
    clear: both
}

.pika-lendar {
    float: left;
    width: 240px;
    margin: 8px
}

.pika-title {
    position: relative;
    text-align: center
}

.pika-title select {
    cursor: pointer;
    position: absolute;
    z-index: 9998;
    margin: 0;
    left: 0;
    top: 5px;
    filter: alpha(opacity=0);
    opacity: 0
}

.pika-label {
    display: inline-block;
    *display: inline;
    position: relative;
    z-index: 9999;
    overflow: hidden;
    margin: 0;
    padding: 5px 3px;
    font-size: 14px;
    line-height: 20px;
    font-weight: bold;
    background-color: #fff
}

.pika-prev,.pika-next {
    display: block;
    cursor: pointer;
    position: relative;
    outline: none;
    border: 0;
    padding: 0;
    width: 20px;
    height: 30px;
    text-indent: 20px;
    white-space: nowrap;
    overflow: hidden;
    background-color: transparent;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 75% 75%;
    opacity: .5;
    *position: absolute;
    *top: 0
}

.pika-prev:hover,.pika-next:hover {
    opacity: 1
}

.pika-prev.is-disabled,.pika-next.is-disabled {
    cursor: default;
    opacity: .2
}

.pika-prev,.is-rtl .pika-next {
    float: left;
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==");
    *left: 0
}

.pika-next,.is-rtl .pika-prev {
    float: right;
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=");
    *right: 0
}

.pika-select {
    display: inline-block;
    *display: inline
}

.pika-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 0
}

.pika-table th,.pika-table td {
    width: 14.285714285714286%;
    padding: 0
}

.pika-table th {
    color: #999;
    font-size: 12px;
    line-height: 25px;
    font-weight: bold;
    text-align: center
}

.pika-table abbr {
    border-bottom: none;
    cursor: help
}

.pika-button {
    cursor: pointer;
    display: block;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    outline: none;
    border: 0;
    margin: 0;
    width: 100%;
    padding: 5px;
    color: #666;
    font-size: 12px;
    line-height: 15px;
    text-align: right;
    background: #f5f5f5
}

.is-today .pika-button {
    color: #33aaff;
    font-weight: bold
}

.is-selected .pika-button {
    color: #fff;
    font-weight: bold;
    background: #33aaff;
    box-shadow: inset 0 1px 3px #178fe5;
    border-radius: 3px
}

.is-disabled .pika-button {
    pointer-events: none;
    cursor: default;
    color: #999;
    opacity: .3
}

.pika-button:hover {
    color: #fff;
    background: #ff8000;
    box-shadow: none;
    border-radius: 3px
}

.pika-week {
    font-size: 11px;
    color: #999
}

.devis-title {
    max-width: 71.429rem;
    margin: 0 auto;
    color: #535353;
    font-size: 36px;
    text-transform: uppercase;
    margin-top: 3.571rem;
    margin-bottom: 3rem
}

.devis {
    padding-bottom: 4rem
}

.devis .devis-title {
    color: #a2a2a2;
    font-size: 18px;
    text-transform: uppercase;
    margin-top: 0rem;
    margin-bottom: 2.2rem
}

.devis label {
    display: inline-block;
    width: 10rem;
    text-align: right;
    padding-right: 1rem;
    font-size: 18px;
    color: #6a6a6a
}

.devis .devis-text {
    margin-left: 2rem;
    font-size: 18px;
    color: #6a6a6a
}

.devis .devis-button {
    width: 100%;
    text-align: right;
    margin-bottom: 10rem
}

.devis input[type=text],.devis input[type=email],.devis input[type=date],.devis input[type=time],.devis input[type=number],.devis input[type=file],.devis select,.devis textarea {
    width: 30rem;
    margin-bottom: .8rem;
    padding: 1rem;
    padding-top: 1.1rem;
    background-color: white;
    border: 1px solid #d2d2d2;
    border-radius: 4px;
    font-size: 16px;
    -moz-appearance: none;
    -webkit-appearance: none
}

.devis textarea {
    height: 7rem
}

.devis input[type=date] {
    width: auto !important
}

.devis .input--small {
    width: 10rem !important;
    margin-right: .7rem;
    margin-left: .7rem
}

.devis p {
    clear: both
}

.devis input.radio:empty {
    display: none
}

.devis input.radio:empty ~ label {
    position: relative;
    margin: .5rem 4rem;
    width: auto;
    cursor: pointer
}

.devis input.radio:empty ~ label input {
    margin-bottom: 0
}

.devis input.radio:empty ~ label::before {
    display: inline-block;
    margin-right: 2rem;
    content: '';
    font-size: 24px;
    width: 1.5rem;
    height: 1.5rem;
    background-color: white;
    border: 1px solid #d2d2d2;
    border-radius: 4px;
    content: '\2714';
    color: white
}

.devis input.radio:hover:not(:checked) ~ label:before {
    color: #a8a8a8
}

.devis input.radio:checked ~ label:before {
    color: #5eaa4f
}

.devis .input-group {
    display: -webkit-flex;
    display: flex;
    padding: 0
}

.devis .input-group input,.devis .input-group textarea {
    margin: 0;
    border-radius: 4px 0 0 4px
}

.devis .input-group .input-group-addon {
    margin-bottom: 0;
    width: 3.5rem;
    padding-top: 1.4rem;
    padding-left: .9rem;
    border-radius: 0 4px 4px 0;
    background-color: #e30513;
    color: #f9f9f9;
    font-size: 14px;
    text-align: center;
    -moz-user-select: -moz-none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none
}

.devis .input-group .input-group-addon.isCorrect img {
    margin-top: -5px
}

.devis-left {
    width: 70%;
    float: left;
    clear: both
}

.devis-bloc {
    max-width: 71.429rem;
    margin: 0 auto;
    overflow: hidden;
    *zoom:1}

.devis-bloc .contentWidget--text {
    float: right;
    width: 28%;
    margin-left: 0
}

.contactPoint {
    max-width: 71.429rem;
    margin: 0 auto;
    margin-bottom: 30rem
}

.contactPoint .contactPoint-title {
    color: #535353;
    font-size: 36px;
    text-transform: uppercase;
    margin-top: 3.571rem;
    margin-bottom: 1.5rem
}

.contactPoint .contactPoint-elmt {
    margin-right: 4rem;
    margin-bottom: 4rem
}

.contactPoint .contactPoint-subtitle {
    text-transform: uppercase;
    color: #c3c3c3
}

.contactPoint .contactPoint-separator {
    fill: #c3c3c3;
    margin-bottom: 1.9rem;
    margin-top: .5rem
}

.contactPoint .cpElmt {
    padding-bottom: 1rem;
    border-bottom: 1px solid #e6e6e6;
    margin-bottom: 1rem
}

.contactPoint .cpElmt .cpElmt-title {
    font-size: 16px;
    margin-bottom: .3rem;
    font-family: "Uni Sans SemiBold";
    color: #939393
}

.contactPoint .cpElmt .cpElmt-adresse {
    color: #939393 !important;
    font-size: 16px;
    line-height: 20px
}

.contactPoint .cpElmt .button,.contactPoint .cpElmt .button--icon {
    float: right
}

img.contentWidget-botImg {
    height: 200px;
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-track,.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block
}

.slick-track:before,.slick-track:after {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir="rtl"] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.home {
    width: 100%;
    height: calc(100vh - 4.643rem)
}

.home .home-line {
    width: 100%;
    height: 56%;
    display: -webkit-flex;
    display: flex
}

.home .home-bloc {
    width: 33.33333vw;
    height: 100%;
    background-color: #1e1e1e;
    overflow: hidden;
    z-index: 100
}

.home .home-bloc img {
    width: 100%;
    height: 100%;
    opacity: 0
}

.home .homeBloc-title {
    position: absolute;
    padding-left: 2rem;
    padding-top: 13%;
    width: 28%;
    height: calc(((100vh - 4.643rem) / 2));
    z-index: 200;
    opacity: 0
}

@media screen and (max-width: 650px) {
    .home .homeBloc-title {
        padding-top:1%
    }
}

@media screen and (max-width: 850px) {
    .home .homeBloc-title {
        padding-top:2%
    }
}

@media screen and (max-width: 1050px) {
    .home .homeBloc-title {
        padding-top:6%
    }
}

@media screen and (min-width: 1050px) {
    .home .homeBloc-title {
        padding-top:9%
    }
}

@media screen and (min-width: 1250px) {
    .home .homeBloc-title {
        padding-top:10%
    }
}

.home .homeBloc-title-main {
    display: inline-block;
    line-height: 3.7vmin;
    padding: .5rem 1.2rem;
    background-color: #f9f9f9;
    font-family: "Uni Sans SemiBold";
    text-transform: uppercase;
    font-size: 4vmin;
    margin-top: -.5rem
}

.home .homeBloc-title-sub {
    margin-top: -.2rem;
    margin-left: 1rem;
    display: inline-block;
    padding: .2rem .7rem;
    color: #f9f9f9;
    background-color: #383838;
    font-size: 18px;
    font-style: italic
}

.home .homeBloc-title-sub:first-of-type {
    margin-top: 0rem
}

.home .homeBloc-buttons {
    position: absolute;
    bottom: 1rem;
    width: 100%;
    z-index: 201;
    opacity: 0;
    text-align: right
}

.home .homeBloc-buttons .button,.home .homeBloc-buttons .button--icon {
    margin-left: .5rem;
    margin-right: .5rem;
    margin-bottom: 1rem
}

@-moz-keyframes homeImageReveal {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes homeImageReveal {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes homeImageReveal {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-moz-keyframes homeTitleReveal {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes homeTitleReveal {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes homeTitleReveal {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.home .home-line:nth-child(1) .home-bloc:nth-child(1) .homeBloc-title {
    -moz-animation-delay: .6s;
    -webkit-animation-delay: .6s;
    animation-delay: .6s
}

.home .home-line:nth-child(1) .home-bloc:nth-child(2) {
    -moz-animation-delay: .15s;
    -webkit-animation-delay: .15s;
    animation-delay: .15s
}

.home .home-line:nth-child(1) .home-bloc:nth-child(2) .homeBloc-title {
    -moz-animation-delay: .75s;
    -webkit-animation-delay: .75s;
    animation-delay: .75s
}

.home .home-line:nth-child(1) .home-bloc:nth-child(3) {
    -moz-animation-delay: .3s;
    -webkit-animation-delay: .3s;
    animation-delay: .3s
}

.home .home-line:nth-child(1) .home-bloc:nth-child(3) .homeBloc-title {
    -moz-animation-delay: .9s;
    -webkit-animation-delay: .9s;
    animation-delay: .9s
}

.home .home-line:nth-child(2) .home-bloc:nth-child(1) {
    -moz-animation-delay: .45s;
    -webkit-animation-delay: .45s;
    animation-delay: .45s
}

.home .home-line:nth-child(2) .home-bloc:nth-child(1) .homeBloc-title {
    -moz-animation-delay: 1.05s;
    -webkit-animation-delay: 1.05s;
    animation-delay: 1.05s
}

.home .home-line:nth-child(2) .home-bloc:nth-child(2) {
    -moz-animation-delay: .6s;
    -webkit-animation-delay: .6s;
    animation-delay: .6s
}

.home .home-line:nth-child(2) .home-bloc:nth-child(2) .homeBloc-title {
    -moz-animation-delay: 1.2s;
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}

.home .home-line:nth-child(2) .home-bloc:nth-child(3) {
    -moz-animation-delay: .75s;
    -webkit-animation-delay: .75s;
    animation-delay: .75s
}

.home .home-line:nth-child(2) .home-bloc:nth-child(3) .homeBloc-title {
    -moz-animation-delay: 1.35s;
    -webkit-animation-delay: 1.35s;
    animation-delay: 1.35s
}

.home .home-bloc {
    opacity: 0;
    -moz-animation-name: homeImageReveal;
    -webkit-animation-name: homeImageReveal;
    animation-name: homeImageReveal;
    -moz-animation-duration: 0.5s;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -moz-animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.home .home-bloc img {
    opacity: .4;
    -moz-transition: opacity .5s ease,-moz-transform .3s ease;
    -o-transition: opacity .5s ease,-o-transform .3s ease;
    -webkit-transition: opacity .5s ease,-webkit-transform .3s ease;
    transition: opacity .5s ease,transform .3s ease
}

.home .home-bloc:hover img {
    opacity: 1 !important;
    -moz-transform: scale(1.05, 1.05);
    -ms-transform: scale(1.05, 1.05);
    -webkit-transform: scale(1.05, 1.05);
    transform: scale(1.05, 1.05)
}

.home .home-bloc:hover .homeBloc-buttons {
    opacity: 1 !important
}

.home .homeBloc-title {
    -moz-animation-name: homeTitleReveal;
    -webkit-animation-name: homeTitleReveal;
    animation-name: homeTitleReveal;
    -moz-animation-duration: 0.5s;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -moz-animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -moz-transition: margin-top .2s ease;
    -o-transition: margin-top .2s ease;
    -webkit-transition: margin-top .2s ease;
    transition: margin-top .2s ease
}

.home .homeBloc-buttons {
    -moz-transition: opacity .3s ease;
    -o-transition: opacity .3s ease;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease
}

.pageMessage {
    max-width: 71.429rem;
    margin: 0 auto;
    height: calc(100vh - 10.714rem)
}

.pageMessage .pageMessage-body {
    color: #535353;
    font-size: 36px;
    text-transform: uppercase;
    margin-top: 3.571rem;
    margin-top: 0rem;
    padding-top: 5rem
}

.pageDivers {
    max-width: 71.429rem;
    margin: 0 auto;
    min-height: calc(100vh - 10.714rem);
    padding-bottom: 4rem
}

.pageDivers .pageDivers-title {
    color: #535353;
    font-size: 36px;
    text-transform: uppercase;
    margin-top: 3.571rem;
    padding-top: 5rem;
    margin-bottom: 2rem
}

/*
     FILE ARCHIVED ON 23:36:36 Feb 26, 2024 AND RETRIEVED FROM THE
     INTERNET ARCHIVE ON 07:46:49 Apr 12, 2025.
     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.

     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
     SECTION 108(a)(3)).
*/
/*
playback timings (ms):
  captures_list: 0.546
  exclusion.robots: 0.019
  exclusion.robots.policy: 0.009
  esindex: 0.013
  cdx.remote: 46.796
  LoadShardBlock: 181.866 (3)
  PetaboxLoader3.datanode: 162.166 (5)
  PetaboxLoader3.resolve: 1652.676 (2)
  load_resource: 1655.397 (2)
*/

.home-line {
    display: flex;
    flex-wrap: wrap;
}

/* 3 blocs par ligne sur desktop */
.home-bloc {
    flex: 1 1 calc(33.333% - 20px);
}

/* 2 blocs par ligne sur tablette */
@media (max-width: 1023px) {
    .home-bloc {
        flex: 1 1 calc(50% - 20px);
    }
}

/* 1 bloc par ligne sur mobile */
@media (max-width: 767px) {
    .home-bloc {
        flex: 1 1 100%;
    }

    .header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 1rem;
    }

    .header-right {
        display: flex;
        align-items: center;
    }

    .header-social {
        display: none !important;
    }

    .home .homeBloc-title {
        width: 100%;
        padding: 0;
        margin: 70px 10px;
        display: block;
        align-items: center;
    }
}

.burger-button {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 30px;
    height: 30px;
    background: none;
    border: none;
    cursor: pointer;
}

.burger-button span {
    display: block;
    height: 3px;
    background: #000;
    border-radius: 2px;
}

/* =====================
   Mobile + tablette
===================== */
@media (max-width: 1023px) {
    .burger-button {
        display: flex;
        flex-direction: column;
        gap: 4px;
        background: none;
        border: none;
        cursor: pointer;
        margin-left: auto;
    }

    .burger-button span {
        display: block;
        height: 2px;
        width: 24px;
        background: #000;
    }

    .header-menu {
        display: none;
        flex-direction: column;
        background: #fff;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        z-index: 10;
        padding: 1rem;
    }

    .header-menu.open {
        display: flex;
    }

    .mainmenu {
        flex-direction: column;
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .mainmenu li {
        position: relative;
    }

    .mainmenu-elmt {
        display: flex;
        justify-content: space-between;
        align-items: center;
        cursor: pointer;
    }

    .mainmenu-sub {
        display: none;
        flex-direction: column;
    }

    .mainmenu li.open > .mainmenu-sub {
        display: flex;
    }
}

/* =====================
   Desktop
===================== */
@media (min-width: 1024px) {
    .header-menu .mainmenu {
        display: flex;
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .mainmenu li {
        position: relative;
    }

    .mainmenu-sub {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
       width: auto;
        background: #fff;
        border: 1px solid #ccc;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
        z-index: 999;
    }

    .mainmenu li:hover > .mainmenu-sub {
        display: block;
    }
}

article.contentArticle h1, article.contentArticle, article.contentArticle a {
    font-family: "Uni Sans SemiBold" !important;
}

ul.submenu-body a, ul.ariane-body, ul.ariane-body a, .contentBody, .contentBody p, section.contentWidget--plus, section.contentWidget--plus h3  {
    font-family: "Uni Sans SemiBold" !important;
}


/* --- Responsive Recrutement Page --- */

/* TABLETTE (2 colonnes pour les sections diapo/metiers) */
@media screen and (max-width: 1024px) {
    .contentDiapo--2col .contentDiapo-slider figure,
    .contentDiapo .contentDiapo-slider figure {
        width: 48%;
        margin: 1%;
        display: inline-block;
        vertical-align: top;
    }

    .contentWidget--text,
    .contentWidget--plus {
        width: 100%;
        margin-bottom: 2rem;
    }
}

/* MOBILE (tout en colonne) */
@media screen and (max-width: 768px) {
    .contentHeader-title,
    .contentBody,
    .contentText,
    .contentWidget--text,
    .contentWidget--plus,
    .contentDiapo-slider,
    .contentDiapo-sliderNav {
        width: 100%;
        padding: 0 1rem !important;
        box-sizing: border-box;
    }

    .ariane-body {
        flex-direction: column;
        gap: 0.5rem;
    }

    .submenu-body {
        flex-direction: column;
        gap: 0.5rem;
        align-items: flex-start;
    }

    .contentDiapo--2col .contentDiapo-slider figure,
    .contentDiapo .contentDiapo-slider figure {
        width: 100%;
        margin: 0 0 1rem 0;
    }

    .contentWidget-botImg {
        max-width: 100%;
        height: auto;
    }

    article.contentArticle {
        margin: 15px;
    }

    .contentText.userContent {
        width: 100%;
        margin: 0 0 20px;
    }

    .contentBody {
        padding: 0 !important;
    }

    .contentDiapo-slider.slider-for {
        margin: 0 !important;
        padding: 0 !important;
    }

    .submenu .submenu-body {
        display: block;
    }

    .ariane .ariane-body {
        margin: 0 10px;
    }

    .contentHeader {
        width: 100%;
        height: calc(100vh - 8.643rem);
        background-repeat: no-repeat;
        background-size: cover;
        background-position: left;
    }

    section.form {
        margin: 15px;
    }

    section.contactPoint {
        margin: 15px;
    }

    h1.devis-title {
        margin: 30px 15px 40px;
    }

    .devis-bloc {
        display: block;
        margin: 15px;
    }

    .devis-left {
        width: 100%;
        float: none;
    }

    .devis-bloc .contentWidget--text {
        width: 100%;
    }

    .devis input[type=text], .devis input[type=email], .devis input[type=date], .devis input[type=time], .devis input[type=number], .devis input[type=file], .devis select, .devis textarea {
        width: 100%;
        margin-bottom: .8rem;
        padding: 1rem;
        padding-top: 1.1rem;
        background-color: white;
        border: 1px solid #d2d2d2;
        border-radius: 4px;
        font-size: 16px;
        -moz-appearance: none;
        -webkit-appearance: none;
    }

    .home-line {
        position: relative;
        top: 65px;
    }

    .home .home-line {
        width: 100%;
        height: auto;
        display: -webkit-flex;
        display: flex
    }

    .homeBloc-buttons {
        opacity: 1 !important;
        display: flex;
        margin: 30px 0 0;
        position: relative !important;
    }

    a.button {
        font-size: 13px;
    }

}

.ariane-top {
    position: relative;
    top: 65px;
}

.form-bloc h2, .form-bloc h1 {
    margin-top: 4em !important;
}

