@charset "utf-8";

@import url('https://fonts.googleapis.com/css?family=Roboto:400,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Inter&display=swap');

:root {
    --white: #FFFFFF;
    --black: #000000;
    --gray-de: #DEDEDE;
    --gray-8d: #8D8D8D;
    --gray-82: #828282;
    --gray-c4: #C4C4C4;
    --gray-2e: #2E2E2E;
    --red: #a94442;
    --width-max: 1200px;
    --width-padding: 55px;
}

::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: var(--gray-de);
    border-radius: 8px;
}
::-webkit-scrollbar-thumb {
    background: var(--primary);
    border-radius: 8px;
}

@font-face {
    font-family: 'Avenir';
    src: url('../fonts/Avenir-Roman.eot');
    src: url('../fonts/Avenir-Roman.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-Roman.woff2') format('woff2'),
    url('../fonts/Avenir-Roman.woff') format('woff'),
    url('../fonts/Avenir-Roman.ttf') format('truetype'),
    url('../fonts/Avenir-Roman.svg#Avenir-Roman') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Black Oblique';
    src: url('../fonts/Avenir-BlackOblique.eot');
    src: url('../fonts/Avenir-BlackOblique.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-BlackOblique.woff2') format('woff2'),
    url('../fonts/Avenir-BlackOblique.woff') format('woff'),
    url('../fonts/Avenir-BlackOblique.ttf') format('truetype'),
    url('../fonts/Avenir-BlackOblique.svg#Avenir-BlackOblique') format('svg');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Book';
    src: url('../fonts/Avenir-BookOblique.eot');
    src: url('../fonts/Avenir-BookOblique.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-BookOblique.woff2') format('woff2'),
    url('../fonts/Avenir-BookOblique.woff') format('woff'),
    url('../fonts/Avenir-BookOblique.ttf') format('truetype'),
    url('../fonts/Avenir-BookOblique.svg#Avenir-BookOblique') format('svg');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir';
    src: url('../fonts/Avenir-HeavyOblique.eot');
    src: url('../fonts/Avenir-HeavyOblique.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-HeavyOblique.woff2') format('woff2'),
    url('../fonts/Avenir-HeavyOblique.woff') format('woff'),
    url('../fonts/Avenir-HeavyOblique.ttf') format('truetype'),
    url('../fonts/Avenir-HeavyOblique.svg#Avenir-HeavyOblique') format('svg');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir';
    src: url('../fonts/Avenir-Black.eot');
    src: url('../fonts/Avenir-Black.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-Black.woff2') format('woff2'),
    url('../fonts/Avenir-Black.woff') format('woff'),
    url('../fonts/Avenir-Black.ttf') format('truetype'),
    url('../fonts/Avenir-Black.svg#Avenir-Black') format('svg');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir';
    src: url('../fonts/Avenir-MediumOblique.eot');
    src: url('../fonts/Avenir-MediumOblique.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-MediumOblique.woff2') format('woff2'),
    url('../fonts/Avenir-MediumOblique.woff') format('woff'),
    url('../fonts/Avenir-MediumOblique.ttf') format('truetype'),
    url('../fonts/Avenir-MediumOblique.svg#Avenir-MediumOblique') format('svg');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir Book';
    src: url('../fonts/Avenir-Book.eot');
    src: url('../fonts/Avenir-Book.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-Book.woff2') format('woff2'),
    url('../fonts/Avenir-Book.woff') format('woff'),
    url('../fonts/Avenir-Book.ttf') format('truetype'),
    url('../fonts/Avenir-Book.svg#Avenir-Book') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir';
    src: url('../fonts/Avenir-LightOblique.eot');
    src: url('../fonts/Avenir-LightOblique.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-LightOblique.woff2') format('woff2'),
    url('../fonts/Avenir-LightOblique.woff') format('woff'),
    url('../fonts/Avenir-LightOblique.ttf') format('truetype'),
    url('../fonts/Avenir-LightOblique.svg#Avenir-LightOblique') format('svg');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir';
    src: url('../fonts/Avenir-Medium.eot');
    src: url('../fonts/Avenir-Medium.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-Medium.woff2') format('woff2'),
    url('../fonts/Avenir-Medium.woff') format('woff'),
    url('../fonts/Avenir-Medium.ttf') format('truetype'),
    url('../fonts/Avenir-Medium.svg#Avenir-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir';
    src: url('../fonts/Avenir-Heavy.eot');
    src: url('../fonts/Avenir-Heavy.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-Heavy.woff2') format('woff2'),
    url('../fonts/Avenir-Heavy.woff') format('woff'),
    url('../fonts/Avenir-Heavy.ttf') format('truetype'),
    url('../fonts/Avenir-Heavy.svg#Avenir-Heavy') format('svg');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir';
    src: url('../fonts/Avenir-Light.eot');
    src: url('../fonts/Avenir-Light.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-Light.woff2') format('woff2'),
    url('../fonts/Avenir-Light.woff') format('woff'),
    url('../fonts/Avenir-Light.ttf') format('truetype'),
    url('../fonts/Avenir-Light.svg#Avenir-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Avenir';
    src: url('../fonts/Avenir-Oblique.eot');
    src: url('../fonts/Avenir-Oblique.eot?#iefix') format('embedded-opentype'),
    url('../fonts/Avenir-Oblique.woff2') format('woff2'),
    url('../fonts/Avenir-Oblique.woff') format('woff'),
    url('../fonts/Avenir-Oblique.ttf') format('truetype'),
    url('../fonts/Avenir-Oblique.svg#Avenir-Oblique') format('svg');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}
/*
@font-face {
    font-family: 'Avenir1';
    src: url('../fonts/AvenirLTStd-Roman.eot');
    src: local('☺'), url('../fonts/AvenirLTStd-Roman.woff') format('woff'), url('../fonts/AvenirLTStd-Roman.ttf') format('truetype'), url('../fonts/AvenirLTStd-Roman.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Avenir2';
    src: url('../fonts/AvenirLTStd-Book.eot');
    src: local('☺'), url('../fonts/AvenirLTStd-Book.woff') format('woff'), url('../fonts/AvenirLTStd-Book.ttf') format('truetype'), url('../fonts/AvenirLTStd-Book.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}
*/

.widthContainer{
    max-width: var(--width-max);
    margin: 0 auto;
}

.svg{
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    height: 100%;
}
.svg>svg{
    width: 100%;
    height: 100%;
}
.svg.white>svg g,.svg.white>svg path{
    fill: var(--white);
}

.svg.primary>svg g,.svg.primary>svg path{
    fill: var(--primary);
}

@-ms-viewport { width: device-width; }
*{
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}
html{
    margin: 0 0;
    padding: 0 0;
    width: 100% !important;
    height: 100% !important;
    letter-spacing: 0px;
}
body{
    font: normal normal 500 16px/20px Avenir, "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
    letter-spacing: 0px;
    text-align: left;
    color: var(--black);
    background-color: var(--white);
    margin: 0 0;
    padding: 0 0;
    width: 100% !important;
    height: 100% !important;
    letter-spacing: 0px;
}
a{
    text-decoration: none;
    /*font: normal normal normal 16px/22px Avenir;*/
    color: var(--primary);
    word-break: break-word;
}
a:hover{
}
a:link,a:visited,a:focus{
    text-decoration: none;
    color: #AF1318;
}
input[type='checkbox']{
    width: 22px;
    height: 22px;
    border: 1px solid #A6A6A6;
    vertical-align: bottom;
}
textarea{
    border: 1px solid #A6A6A6;
    height: 41px;
    font: normal normal normal 16px/22px Avenir;
}
input[type='text'],input[type='mail'],input[type='email'],input[type='number'],input[type='datetime-local'],input[type='date'],select{
    border: 1px solid #A6A6A6;
    height: 41px;
    font: normal normal normal 16px/22px Avenir;
}
input.aftericon{
    padding-right: 30px;
}
label{
    margin-top: 0px;
    font: normal normal normal 16px/22px Avenir;
    color: #343437;
}

.uppercase{
    text-transform: uppercase;
}
ul,ol{
    margin: 0 0;
    padding: 0 0 0 8px;
}
ul ul {
    list-style-type: disc;
}
li::marker {
    color: var(--primary);
}
.primary li::marker {
    color: white;
}
li{
    /*list-style: none;*/
}

img{
    width: 100%;
    display: inline-block;
}
.slideshowContainer{
    display: block;
    position: relative;
}
.slideshowContainer .BControl{
    position: absolute;
    top: calc(50% - 22px);
    width: 29px;
    height: 40px;
    border-radius: 50%;
    z-index: 2;
    cursor: pointer;
}
.slideshowContainer .BPrevious{
    left: -26px;
}
.slideshowContainer .BNext{
    right: -29px;
}
.slideshow{
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slideshow ul{
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 19px;
    margin: 0px;
    padding: 0px;
}

.slideshow ul>li{
    display: inline-block;
}
.slideshow ul>li div{
    width: 274px;
    height: 274px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    cursor: pointer;
}
.slideshow ul>li img{
    width: 100%;
    height: auto;
    object-fit: cover;
}
a.button,.button{
    display: inline-block;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 600;
    font-size: 13px;
    line-height: 160%;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 12px 24px;
    background-color: var(--primary);
    color: var(--white);
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.header{
    position: relative;
    display: grid;
    width: 100%;
    min-height: 600px;
    height: auto;
    background-color: var(--primary);
    text-align: left;
    font: normal normal 100 28px/37px Avenir;
    color: #FFFFFF;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.header form{
    position: inherit;
}
.header .overlay{
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    background: rgba(0,0,0,0.2);
    background: linear-gradient(180deg, rgba(0,0,0,0) 50%, rgba(0,0,0,0.6) 100%);
}
.header .panel{
    display: inline-grid;
    grid-gap: 19px;
    grid-template-columns: 1fr auto auto auto auto auto;
    margin-top: 84px;
    margin-left: calc(calc(100vw - var(--width-max)) / 2);
    width: var(--width-max);
    height: 71px;
    padding-left: 35px;
    padding-right: 20px;
    background-color: var(--primary);
    align-items: center;
    color: var(--white);
}
.header .panel>div{
    align-items: center;
}
.header .panel>div>a{
    display: inline-block;
    color: var(--white);
    font-size: 23px;
}
.header .panel>div:nth-child(1){
    height: 69px;
}
.header .panel>div>a>img{
    margin-top: -20px;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 109px;
}
/*
.header .panel>div:nth-child(2){
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 23px;
}
*/
.header .panel input{
    display: block;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    border-radius: 3px;
    height: 30px;
    outline: none;
    border: none;
    color: var(--black);
}

.menuaccess{
    position: inherit;
    align-self: end;
    margin-bottom: 50px;
}
.menuaccess>ul{
    display: block;
    text-align: center;
    gap: 80px;
}
.menuaccess>ul>li{
    display: inline-block;
    margin-bottom: 20px;
}
.menuaccess>ul>li.selected a>div:first-of-type{
    background: var(--primary);
}
.menuaccess>ul>li:hover a>div:first-of-type{
    background: var(--primary);
}
.accesdirects>ul>li:hover a>div:first-of-type{
    background: rgba(255,255,255,0.3);
}
.menuaccess>ul>li svg{
    background: hsl(0deg 0% 0% / 20%);
}
.menuaccess>ul>li.selected svg{
    background: initial;
}

.menuaccess>ul>li a{
    display: grid;
    grid-template-rows: auto 1fr;
    grid-gap: 11px;
    justify-items: center;
    width: 160px;

    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 14px;
    line-height: 16px;
    text-align: center;
    letter-spacing: 0.1em;
    color: var(--white);
}
/*
.menuaccess>ul>li a:hover{
    color: var(--primary);
}
.menuaccess>ul>li a:hover svg g,.menuaccess>ul>li a:hover svg path{
    fill: var(--primary) !important;
}
*/
.menuaccess>ul>li img{
    width: 81px;
    height: 81px;
}

.bmenu{
    cursor: pointer;
    position: relative;
    justify-self: center;
    text-align: center;
}
.bmenu>div:first-of-type{
    display: block;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 11px;
    line-height: 14px;
}
.bmenu>div:first-of-type>i{
    display: block;
    font-size: 30px;
}
.menu{
    display: none;
    position: absolute;
    top: 80px;
    right: -20px;
    width: 600px;
    grid-template-columns: 1fr 1fr;
    background: var(--primary);
    color: var(--white);
    padding: 20px 30px;
    border-radius: 4px;
    text-align: left;
    z-index: 10;
    -webkit-box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.2);
    box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.2);
}
.menu.showmenu{
    display: grid;
}
.menu>div>div{
    margin-bottom: 20px;
}
.menu a{
    display: inline-block;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 600;
    font-size: 15px;
    line-height: 18px;
    color: var(--white);
}
.menu ul{
    margin-top: 0px;
    margin-left: 17px;
    list-style: none;
}
.menu ul>li{
    display: block;
    list-style: none;
    font-size: 16px;
    line-height: 20px;
}
.menu ul>li:before{
    position: absolute;
    content: "\f111";
    font-family: FontAwesome;
    font-size: 6px;
    display: inline-block;
    margin-left: -16px;
    width: 10px;
    vertical-align: middle;
}
.menu ul>li a{
    display: inline-block;
    font-weight: 400;
    font-size: 15px;
    line-height: 20px;
}
.telechargementsBG{
    width: 100%;
    background-color: var(--gray-de);
}
.telechargementsBG.primary{
    background-color: var(--primary);
    color: var(--white);
}
.telechargements{
    display: inline-grid;
    width: 100%;
    color: var(--gray-82);
    padding: 16px 0px 40px 0px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 17px;
    line-height: 180%;
    letter-spacing: 0.02em;
}
.telechargements.primary{
    background-color: var(--primary);
    color: var(--white);
}

.telechargements>.inner{
    width: 100%;
    justify-self: center;
}
.telechargements hr{
    width: 100%;
    height: 2px;
    color: var(--gray-c4);
    margin: 4px 0px;
}
.telechargements ul{
    display: block;
}
.telechargements ul>li{
    display: grid;
    grid-gap: 20px;
    grid-template-columns: 1fr auto;
    color: var(--black);
}
.telechargements.primary ul>li{
    color: var(--white);
}

.telechargements ul>li:hover,.telechargements ul>li:hover a{
    text-decoration: underline;
}
.telechargements a{
    display: inline-block;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 17px;
    line-height: 180%;
    letter-spacing: 0.02em;
    color: var(--black);
}
.telechargements.primary a{
    color: var(--white);
}
.galerie_photosBG{
    width: 100%;
    background-color: var(--primary);
    color: var(--white);
}
.galerie_photosBG.gray{
    width: 100%;
    background-color: var(--gray-de);
    color: var(--primary);
}
.galerie_photos{
    display: block;
    width: 100%;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 44px;
    letter-spacing: 0.1em;
    padding: 10px 0 75px 0px;
}
.galerie_photos .picto{
    width: auto;
    height: 81px;
}
.titlepictoBG{
    width: 100%;
}
.titlepictoBG .title{
    font-size: 40px;
    line-height: 42px;
    letter-spacing: 2px;
}
.titlepictoBG.gray{
    background-color: var(--gray-de);
    color: var(--primary);
}
.titlepictoBG.primary{
    background-color: var(--primary);
    color: var(--white);
}
.titlepictoBG .picto{
    width: auto;
    height: 81px;
    margin-right: 30px;
    flex: none;
}
.titlepicto{
    display: flex;
    align-items: center;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 36px;
    letter-spacing: 0.1em;
    padding: 55px 0 30px 0;
}

.informationsBG{
    width: 100%;
}
.informationsBG.gray{
    background-color: var(--gray-de);
    color: var(--primary);
}
.informationsBG.primary{
    background-color: var(--primary);
    color: var(--white);
}

.informations{
    display: grid;
    grid-gap: 40px;
    grid-template-columns: 1fr auto;
    width: 100%;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 44px;
    letter-spacing: 0.1em;
    padding: 10px 0 75px 0px;
}
.informations.noimages{
    grid-template-columns: 1fr;
}
.informations.left{
    grid-template-columns: auto 1fr;
}
.informations .desc{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 19px;
    letter-spacing: 0.02em;
    /*text-align: justify;*/
}
.informations.primary .desc a{
    color: var(--white);
    text-decoration: underline;
}
.informations .desc a{
    color: var(--black);
    text-decoration: underline;
}
.informations .desc p{
    margin: 0;
}
.informations .desc ul>li{
    list-style: disc;
    margin-left: 8px;
}
.informations .desc ol>li{
    list-style: auto;
    margin-left: 16px;
}

.informations.gray .desc{
    color: var(--black);
}
.informations.primary .desc{
    color: var(--white);
}
.informations .picto{
    width: auto;
    height: 81px;
}
.informations .slideshowContainer{
    width: 274px;
}
.informations .button{
    margin: 30px 0px 0px 0px;
}
.informations.primary .button{
    margin: 30px 0px 0px 0px;
    background-color: var(--white);
    color: var(--primary);
}

.informations.col2{
    grid-template-columns: 1fr 1fr;
}


.accesdirectsBG{
    width: 100%;
    background-color: var(--primary);
}
.accesdirectsBG.gray{
    width: 100%;
    background-color: var(--gray-de);
}
.accesdirects{
    padding: 62px 0px;
}
.accesdirects>div{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 800;
    font-size: 24px;
    line-height: 28px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--white);
    margin-bottom: 24px;
    text-align: center;
}
.accesdirectsBG.gray .accesdirects>div{
    color: var(--primary);
}
.accesdirects>ul{
    display: block;
    text-align: center;
    gap: 80px;
}
.accesdirects>ul>li{
    display: inline-block;
    margin-bottom: 20px;
}
.accesdirects>ul>li a{
    display: grid;
    grid-template-rows: auto 1fr;
    grid-gap: 11px;
    justify-items: center;
    width: 160px;

    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 14px;
    line-height: 16px;
    text-align: center;
    letter-spacing: 0.1em;
    color: var(--white);
}
.accesdirectsBG.gray .accesdirects>ul>li a{
    color: var(--primary);
}
.accesdirects>ul>li img{
    width: 81px;
    height: 81px;
}

.actualitesContainer{
    padding: 0px var(--width-padding) 80px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 800;
    font-size: 24px;
    line-height: 28px;
    letter-spacing: 0.1em;
    color: var(--primary);
    background: var(--gray-de);
}

.actualitesContainer.primary{
    background: var(--primary);
    color: var(--white);
}
.actualitesContainer.primary ::-webkit-scrollbar-track {
    background: var(--primary);
}
.actualitesContainer.primary ::-webkit-scrollbar-thumb {
    background: var(--white);
}
.actualitesContainer .picto{
    width: auto;
    height: 81px;
    margin-right: 30px;
}

.actualitesContainer .actualites{
    padding: 30px 0px 10px 0px;
    overflow-x: auto;
    overflow-y: hidden;
}
.actualitesContainer .actualites p{
    margin: 0px;
}
.actualitesContainer .actualites>ul{
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 19px;
    height: 250px;
    padding: 0 10px 0 0;
}
.actualitesContainer .actualites>ul>li::marker{
    content: '';
}
.actualitesContainer .actualites>ul>li{
}
.actualitesContainer .actualites>ul>li>div{
    display: block;
    background-color: white;
}
.actualitesContainer .actualites>ul>li>div>div{
    display: grid;
    width: 463px;
    height: 230px;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto 1fr;
    grid-column-gap: 20px;
    grid-template-areas:
            "a b"
            "a c"
            "a d"
            "a e";
    padding: 28px 21px;
    -webkit-box-shadow: 0px 4px 10px 3px rgba(0,0,0,0.4);
    box-shadow: 0px 4px 10px 3px rgba(0,0,0,0.4);
    border-radius: 4px;
    cursor: pointer;
}
.actualitesContainer .actualites>ul>li>div>div:hover{
    -webkit-box-shadow: 0px 4px 10px 3px var(--primary);
    box-shadow: 0px 4px 10px 3px var(--primary);
}

.actualites .a{
    grid-area: a;
    width: 155px;
    height: 174px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    border-radius: 4px;
}
.actualites .b{
    grid-area: b;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 17px;
    line-height: 20px;
    letter-spacing: 0.05em;
    color: var(--black);
    margin-bottom: 0px;
}
.actualites .c{
    grid-area: c;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 0.05em;
    color: var(--gray-82);
    margin-bottom: 10px;
}
.actualites .d{
    grid-area: d;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 0.05em;
    color: var(--black);
    overflow-y: auto;
}
.actualites .e{
    grid-area: e;
    margin-top: 6px;
}
.actualites a{
    color: var(--primary);
}
.actualitesContainer.primary .actualites .b,.actualitesContainer.primary .actualites .c,.actualitesContainer.primary .actualites .d{
    color: var(--black);
}

.actualite_detail{

}
.actualite_detail .visuel{
    width: 100%;
    max-width: 200px;
    height: auto;
}
.actualite_detail .title{
    margin-top: 21px;
    text-align: left;
    font: normal normal 900 28px/22px Avenir;
    letter-spacing: 0px;
    color: var(--gray-2e);
}
.actualite_detail .date{
    margin-top: 6px;
    text-align: left;
    font: normal normal normal 16px/22px Avenir;
    letter-spacing: 0px;
    color: var(--gray-82);
}
.actualite_detail .desc{
    margin-top: 10px;
    text-align: left;
    font: normal normal normal 16px/22px Avenir;
    letter-spacing: 0px;
    color: var(--gray-2e);
}
.actualite_detail .file{
    margin-top: 20px;
}
.actualite_detail .link{
    display: block;
    text-align: left;
    text-decoration: underline;
    font: normal normal normal 16px/22px Avenir;
    letter-spacing: 0px;
    color: var(--primary);
}
.formulaireBG.gray{
    width: 100%;
    background-color: var(--gray-de);
    color: var(--primary);
}
.formulaireBG.primary{
    width: 100%;
    background-color: var(--primary);
    color: var(--white);
}
.formulaire{
    display: block;
    width: 100%;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 44px;
    letter-spacing: 1px;
    padding: 75px 0px;
}
.formulaire.gray{
    background-color: var(--gray-de);
    color: var(--primary);
}
.formulaire.primary{
    background-color: var(--primary);
    color: var(--white);
}

.formulaire .title{
    display: grid;
    grid-gap: 30px;
    grid-template-columns: auto 1fr;
    font-size: 40px;
    line-height: 32px;
    align-items: center;
    padding-bottom: 42px;
}
.formulaire .desc{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 17px;
    letter-spacing: 0.02em;
    text-align: justify;
}
.formulaire .desc p{
    margin: 0;
}

.formulaire.gray .desc{
    color: var(--black);
}
.formulaire.primary .desc{
    color: var(--white);
}
.formulaire .picto{
    width: auto;
    height: 81px;
}
.formulaire .button{
    margin: 30px 0px 0px 0px;
}
.formulaire.primary .button{
    margin: 30px 0px 0px 0px;
    background-color: var(--white);
    color: var(--primary);
}
.formulaire label{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 160%;
    letter-spacing: 0.03em;
    color: #828282;
}
.formulaireBG.primary .formulaire label{
    color: var(--white);
}
.formulaireBG.primary .FileContainer{
    color: var(--primary);
}

.formulaire input[type='text'],.formulaire input[type='mail'],.formulaire input[type='number'],.formulaire input[type='datetime-local'],.formulaire select{
    height: 50px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 160%;
    letter-spacing: 0.03em;
    color: var(--gray-82);
}
.formulaire textarea{
    height: 100px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 160%;
    letter-spacing: 0.03em;
    color: var(--gray-82);
}
.formulaire  input[type='file']{
    position: absolute;
    left: -10000px;
}


.formulaire .small,.formulaire small{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 160%;
    letter-spacing: 0.03em;
    color: var(--red);
}
.formulaire .has-error .form-control-feedback{
    font-size: 20px;
    color: var(--red);
    right: 6px;
    top: 40px;
}
.formulaire .has-success .form-control-feedback{
    font-size: 20px;
    right: 6px;
    top: 40px;
}
.formulaire .button{
    border: none;
}
.FileContainer{
    display: block;
    border: 1px dashed #bababa;
    outline-offset: 0px;
    background: #f1f1f1;
    padding: 5px 5px;
    position: relative;
    width: fit-content;
    min-width: 200px;
    max-width: 500px;
    cursor: pointer;
}
.FileContainer.onDragFile{
    border: 1px dashed rgb(237,125,49);
}
.FileContainer.onUploadFile{
    border: 1px solid rgb(237,125,49);
}
.FileContainer.disabled>.onDragFile,.FileContainer.disabled>.onUploadFile{
    border:none;
}
.FileContainer>.FileOverlay{
    margin: 0 auto;
    text-align: center;
    font-size: 14px;
    line-height: 16px;
    min-height: 70px;
}
.FileOverlay .fa-cloud-upload-alt{
    font-size: 30px !important;
}
.FileContainer>.FileOverlay>div{

}
.FileContainer>.FileOverlay>div>span{
    font-size: 12px;
    line-height: 14px;
}
.FileContainer>.FileOverlay>div>i{
    font-size: 60px;
    color: rgba(0, 0, 0, 0.4);
}

.FileContainer>.FileImage {
    position: absolute;
    left: 0px;
    right: 0px;
    top: 0px;
    bottom: 38px;
    width: 100%;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0 auto;
    pointer-events: none;
}
.FileContainer.disabled>.FileImage{
    cursor:default;
}
.FileContainer>.FileInfo{
    margin-top: 10px;
    display: grid;
    grid-template-columns: 1fr auto;
    padding: 2px 5px;
    border: 1px solid #bababa;
    background: #f1f1f1;
    cursor:default;
}
.FileContainer>.FileInfo>.FileName{
    display: inline-block;
    font-size: 14px;
    line-height: 16px;
    word-wrap: anywhere;
}
.FileContainer>.FileInfo>.FileDelete{
    display: inline-block;
    cursor: pointer;
    margin-left: 5px;
}
.FileContainer>.FileInfo>.FileDelete>i{
    background: rgba(255,255,255,0.8);
    color: #000000;
    font-size: 20px;
}

.FileContainer>.FileDelete:hover{
    color: #FF0000;
    margin-left: 10px;
}

.sallesBG{
    width: 100%;
}
.sallesBG.gray{
    background-color: var(--gray-de);
    color: var(--primary);
}
.sallesBG.primary{
    background-color: var(--primary);
    color: var(--white);
}

.sallesBG.gray a{
    color: var(--primary);
    text-decoration: underline;
}
.sallesBG.primary a{
    color: var(--white);
    text-decoration: underline;
}

.salles{
    display: block;
    width: 100%;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 44px;
    letter-spacing: 0.1em;
    padding: 10px 0 75px 0px;
}
.salles.gray{
    background-color: var(--gray-de);
    color: var(--primary);
}
.salles.primary{
    background-color: var(--primary);
    color: var(--white);
}
.salles .desc{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 17px;
    line-height: 19px;
    letter-spacing: 0.02em;
    margin-bottom: 30px;
}
.salles .desc p{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 17px;
    line-height: 180%;
    letter-spacing: 0.02em;
    margin: 0;
}
.salles .desc ul>li{
    list-style: disc;
    margin-left: 16px;
}
.salles .desc ol>li{
    list-style: auto;
    margin-left: 16px;
}

.salles.gray .desc{
    color: var(--black);
}
.salles.primary .desc{
    color: var(--white);
}
.salles.gray .desc{
    color: var(--primary);
}

.salles .picto{
    width: auto;
    height: 81px;
}
.salles .button{
    margin: 30px 0px 0px 0px;
}
.salles.primary .button{
    margin: 30px 0px 0px 0px;
    background-color: var(--white);
    color: var(--primary);
}
.salles .titlen{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 17px;
    line-height: 180%;
    letter-spacing: 0.02em;
    color: var(--white);
    margin-bottom: 10px;
}
.salles.gray .titlen{
    color: var(--primary);
}
.salles .split{
    display: grid;
    gap: 70px;
    grid-template-columns: auto 1fr;
}
.salles table tr>td{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 17px;
    line-height: 150%;
    letter-spacing: 0.02em;
    color: var(--white);
}
.salles.gray table tr>td{
    color: var(--primary);
}

.salles .list th{
    border-bottom: 1px solid var(--gray-c4);
}
.salles .list tr:first-child>td{
    padding-top: 18px;
}
.salles .list td,.salles th{
    padding: 0px 10px;
}
.salles .list tr td:nth-child(1),.salles tr td:nth-child(3),.salles tr td:nth-child(4) {
    width: 1%;
    white-space: nowrap;
}
.salles .stitle{
    cursor: pointer;
}
.salles .sicon{
    display: inline-block;
    width: 63px;
    height: 60px;
    border-radius: 4px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    cursor: pointer;
}
.salles .BReserver{
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 17px;
    line-height: 180%;
    letter-spacing: 0.02em;
    color: var(--white);
    padding: 7px 12px;
    border: 1px solid var(--white);
    border-radius: 4px;

    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 15px;
    cursor: pointer;
}
.salles.gray .BReserver{
    color: var(--primary);
    border: 1px solid var(--primary);
}

.salles .BReserver.locked{
    -khtml-opacity:.50;
    -moz-opacity:.50;
    -ms-filter:"alpha(opacity=50)";
    filter:alpha(opacity=50);
    filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0.5);
    opacity:.50;
    cursor: default;
    pointer-events: none;
}

.DayPicker{
    width: 350px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 19px;
    line-height: 22px;
    padding: 24px;
    background: var(--white);
    color: var(--black);
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.4);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.4);
    border-radius: 8px;
}
.salles.gray .DayPicker{
    color: var(--primary);
}
.DayPicker table{
    border-spacing: 4px;
    border-collapse: unset;
}

.DayPicker .dow{
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-size: 13px;
    line-height: 16px;
    text-align: center;
    color: var(--gray-82);
}
.salles.gray .DayPicker .dow{
    color: var(--primary);
}

.DayPicker .month,.DayPicker .year{
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    text-align: center;
    color: var(--black);

    height: 34px;
    text-align: center;
    vertical-align: middle;
    line-height: 34px;
}
.DayPicker .bootstrap-datetimepicker-widget table td{
    height: inherit;
    line-height: inherit;
    width: inherit;
}
.DayPicker .day{
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-size: 13px;
    line-height: 16px;
    text-align: center;
    color: var(--black);
    width: 36px !important;
    border-spacing: 5px;
}
.DayPicker .day.today{
    border: 1px solid var(--gray-c4);
}
.DayPicker .active{
    background: var(--primary) !important;
    color: var(--white) !important;
}
.DayPicker .prev,.DayPicker .next{
    font-size: 16px;
}
.DayPicker thead>tr:nth-child(2) th{
    padding-top: 24px;
}
.DayPicker tr{
}

.PanelContainer{
    display: none;
    position: fixed;
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: 0px;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.3);
    z-index: 1000;
}
/*
.PanelContainer .actualite_detail .desc {
    max-height: calc(100vh - 480px);
    overflow: auto;
}
*/
.PanelContainer .actualite_detail .desc p{
    margin: 0px;
}

.Panel{
    background: var(--white);
    color: var(--black);
    padding: 40px;
    position: relative;
    #width: fit-content;
    width: min(1200px , 95vw);
    border-radius: 10px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
.Panel>.Close{
    position: absolute;
    z-index: 1;
    top: 0px;
    right: 0px;
    font-size: 30px;
    padding: 8px 12px;
    cursor: pointer;
    color: var(--black);
    background-color: rgba(255,255,255,0.5);
    border-radius: 0 10px 0 0;
}
.Panel>.Title{
    display: inline-block;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 32px;
    line-height: 36px;
    letter-spacing: 0.1em;
    color: var(--black);
    margin-bottom: 25px;
}
.Panel {
}
.PanelContainer .actualite_detail {
    max-height: calc(100vh - 200px);
    overflow-y: auto;
}

.Panel>.Body{
}
.PanelContainer.ImageViewer .Panel{
    padding: 10px;
}
.PanelContainer.ImageViewer .Panel>.Close{
    padding: 4px 8px;
    right: 10px;
    top: 10px;
}

.PanelContainer.Reservation{
    display: none;
}
.PanelContainer.Reservation>.Panel{
    max-width: min(100vw , 800px);
}
.PanelContainer.ReservationImage .Body{
    max-width: 80vw;
}
.salledetail{
    display: inline-grid;
    grid-template-columns: 1fr 3fr;
    grid-gap: 40px;
}
.salledetail .titleres{
    margin-top: 0px;
    font-size: 30px;
    padding-bottom: 50px;
    line-height: 35px;
}
.salledetail .desc{
    font-weight: normal;
    line-height: 19px;
    font-size: 16px;
    max-height: 43vh;
    overflow: auto;
    padding: 0 10px;
}
.salledetail .desc p{
    margin-bottom: 0px;
}
.imageview{
    display: block;
    width: 100%;
    max-height: 70vh;
    max-width: 90vh;
}
.imgres{
    display: block;
    width: auto;
    height: auto;
    max-height: min(510px , 30vw);
}
.linktop{
    display: block;
    text-align: center;
    line-height: 18px;
}
.linktop>i{
    font-size: 48px;
    margin-bottom: 5px;
}
.linktopall{
    position: fixed;
    left: calc(50% - 30px);
    bottom: 5px;
    width: 50px;
    height: 50px;
    display: flex;
    background-color: var(--primary);
    border-radius: 50%;
    text-align: center;
    justify-content: center;
    align-items: center;
    z-index:500;
}
.linktopall>i{
    font-size: 40px;
    color: #FFFFFF;
}
.footer{
    width: 100%;
    background: var(--primary);
    color: var(--white);
}
.footer p{
    margin: 0 0 0px;
}
.footer a{
    color: var(--white);
}
.footer a{
    text-decoration: underline;
}
.footer>div{
    display: grid;
    grid-gap: 27px;
    grid-template-columns: 30% 1fr 1fr 70px;
    width: 100%;
    padding-top: 60px;
    padding-bottom: 60px;
}
.footer>div>div>a>img{
    max-width: 100%;
    max-height: 100px;
    width: auto;
    height: auto;
}
.autoritesBG{
    width: 100%;
    padding: 10px 0 75px 0px;
}
.autoritesBG.gray{
    background-color: var(--gray-de);
    color: var(--black);
}
.autoritesBG.primary{
    background-color: var(--primary);
    color: var(--white);
}
.autoritesBG a{
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
}
.autoritesBG.gray a{
    color: var(--primary);
    text-decoration: underline;
}
.autoritesBG.primary a{
    color: var(--white);
}
.autorites{
    display: block;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: normal;
    font-size: 18px;
    line-height: 20px;
    letter-spacing: 0.1em;
}
.autorites>ul {
    display: block;
}
.autorites>ul>li {
    display: block;
}
.autorites>ul>li>div{
    margin-bottom: 4px;
}
.autorites>ul>li:first-child>.name {
    margin-top: 0px;
}
.autorites>ul>li>.name {
    margin-top: 50px;
    margin-bottom: 8px;
    font-weight: 700;
    font-size: 20px;
    line-height: 16px;
}
.autorites>ul>li>.emailtel {
    margin-bottom: 8px;
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 16px;
}
.autorites>ul>li>.desc {
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 16px;
}
.autoritesBG.gray .autorites>ul>li>.desc{
    color: var(--black);
}
.autorites>ul>li>.emailtel a{
    display: inline-block;
}
.autorites>ul>li>.emailtel span:nth-of-type(2){
    margin-left: 20px;
}

.autorites .profils{
    margin-top: 20px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
}
.autorites .profil{
    display: inline-block;
    vertical-align: top;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: normal;
    font-size: 18px;
    line-height: 20px;
    letter-spacing: 0.1em;
    padding: 8px;
}
.autoritesBG.gray .autorites .profil{
    background: white;
}
.autoritesBG.gray .filet{
    background: var(--primary);
}

.autoritesBG.primary .autorites .profil{
    border: 1px solid white;
}
.autoritesBG.primary .filet{
    background: white;
}

.autorites .profil.withavatar{
    display: grid;
    grid-template-columns: 150px 1fr;
    gap:8px;
}

.autorites .profil .np{
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 16px;
}
.autorites .profil .role{
    margin-top: 5px;
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 16px;
}
.autoritesBG.gray .autorites .profil .role{
    color: var(--gray-8d);
}
.autorites .profil .desc{
    margin-top: 8px;
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 20px;
}
.autorites .profil .desc p{
    margin: 0px;
}
.autoritesBG.gray a{
    color: var(--primary);
    text-decoration: underline;
}
.autoritesBG.primary a{
    color: white;
    text-decoration: underline;
}

.imgauto{
    width: auto !important;
    max-width: 100% !important;
}
/*
.cnilcookies{
    position: fixed;
    z-index: 10000;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background: #FFFFFF;
    width: 100vw;
    padding: 20px 20px;

    display: none;
    grid-gap: 10px;
    grid-template-columns: 1fr auto;
    align-items: center;
    border-top: 1px solid #C5CBD2;
    text-align: center;

    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 17px;
    color: var(--primary);
}
.BCnilAccepter{

}
.cnilcookies a{
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 17px;
    color: var(--primary);
}
.cnilcookies .BCnilAccepter{
    margin:0px 10px;
}
*/
.filet{
    margin: 20px 0px;
    background-color: var(--gray-82);
    width: 100%;
    height: 1px;
}


#cnil{
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background: #FFFFFF;
    margin: 0 auto;

    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 17px;
    color: var(--primary);
    border: 1px solid #C5CBD2;
    /*max-width: 1429px;*/
}
#cnil label{
    color: inherit;
}
#cnil .configs{
    display: none;
}
#cnil .title{
    font-size: 21px;
    font-weight: bold;
    margin-bottom: 15px;
}
#cnil .intro{
    margin-bottom: 15px;
}
#cnil .config{
    display: grid;
    grid-template-columns: auto 1fr;
    gap:20px;
    align-items: center;
    margin-bottom: 20px;
}
#cnil .inner{
    display: grid;
    grid-template-row: auto auto;
    grid-gap: 0px;
    margin: 30px;
    /*
    padding: 30px 50px;
    border: 1px solid #e30613;
     */
    align-items: center;
}
#cnil .infos{
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 20px;
    align-items: center;
}

#cnil a{
    text-decoration: underline;
}
#cnil .button_red{
    text-decoration: none;
}
#cnil .txt{
    padding-right: 30px;
}
#cnil .txt a{
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}
#cnil .btns{
    display: flex;
    gap: 20px;
    flex-flow: wrap;
}
#cnil .btns > div{
    cursor: pointer;
}

#cnil .baccept{
    margin-left: 4vw;
}
/*
#cnil input[type=radio],#cnil input[type=checkbox] {
    margin: 0;
    flex-shrink: 0;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    background-color: #fff;
    width: 40px;
    height: 40px;
    border: 1px solid #e30613;
}
#cnil input[type=radio]:checked,#cnil input[type=checkbox]:checked {
    background-color: #e30613;
}
*/
input.apple-switch {
    position: relative;
    -webkit-appearance: none;
    outline: none;
    width: 50px;
    height: 30px;
    background-color: #fff;
    border: 1px solid #D9DADC;
    border-radius: 50px;
    box-shadow: inset -20px 0 0 0 #fff;
}

input.apple-switch:after {
    content: "";
    position: absolute;
    top: 1px;
    left: 1px;
    background: transparent;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    box-shadow: 2px 4px 6px rgba(0,0,0,0.2);
}

input.apple-switch:checked {
    box-shadow: inset 20px 0 0 0 var(--primary);
    border-color: var(--primary);
}

input.apple-switch:checked:after {
    left: 20px;
    box-shadow: -2px 4px 3px rgba(0,0,0,0.10);
}

input.apple-switch.noevent:checked {
    box-shadow: inset 20px 0 0 0 var(--primary);
    opacity: 0.7;
}
.noevent {
    cursor: default;
    pointer-events: none;
}

.agendaContainer{
    background: var(--gray-de);
}
.agendaContainer .title{
    color: var(--primary);
}

.agendaContainer.primary{
    background: var(--primary);
}
.agendaContainer.primary ::-webkit-scrollbar-track {
    background: var(--primary);
}
.agendaContainer.primary ::-webkit-scrollbar-thumb {
    background: var(--white);
}
.agendaContainer.primary .title{
    color: #FFFFFF;
}
.agendaContainer .actualites{
    padding: 30px 0px 10px 0px;
    overflow-x: auto;
    overflow-y: hidden;
}
.agendaContainer.primary .actualites{
    background-color: var(--primary);
}
.agendaContainer .picto{
    width: auto;
    height: 81px;
    margin-right: 30px;
}

.agendaContainer .actualitesContainer{
    padding: 0px;
}
.agendaContainer .daySelected{
    border-bottom: var(--primary);
    border-bottom-style: dashed;
    border-bottom-width: 1px;
}
.agendaContainer .currentDay{
    border:1px solid var(--primary);
    border-radius: 50%;
    padding: 4px 0px;
}
.zabuto-calendar{
    background-color: #FFFFFF;
}
.zabuto-calendar__day{
    pointer-events: none;
    cursor: none;
}
.zabuto-calendar__day.zabuto-calendar__event{
    pointer-events: initial;
    cursor: pointer;
    color: var(--primary);
    font-weight: bold;
}
.zabuto-calendar__day--today>div{
    border:1px solid var(--primary);
    border-radius: 50%;
    padding: 4px 0px;
}

.agendaContainer .calendar{
    display: inline-block;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 16px;
    text-align: center;
    letter-spacing: 0.1em;
    /*max-width: 230px;*/
    box-shadow: 0px 4px 10px 3px rgba(0,0,0,0.4);

}
.zabuto-calendar__day{
}
.zabuto-calendar__days-of-week__item{
    color: var(--gray-c4);
}
.zabuto-calendar.table thead th{
    background-color: transparent !important;
    font-weight: normal;
}
.zabuto-calendar__navigation td{
    margin-bottom: 20px;
}
.agendaContainer .table>tbody>tr>td,
.agendaContainer .table>tbody>tr>th,
.agendaContainer .table>tfoot>tr>td,
.agendaContainer .table>tfoot>tr>th,
.agendaContainer .table>thead>tr>td,
.agendaContainer .table>thead>tr>th{
    padding: 6.3px 0px;
    border: none;
}
.calendarBody {
    display: inline-grid;
    grid-template-columns: 234px calc(100% - 240px);
    grid-gap: 20px;
    align-items: center;
    width: 100%;
    padding: 0px var(--width-padding);
}
.calendardayevents{
    display: inline-block;
    vertical-align: top;
    width: 100%;
    max-width: 100%;
}
.actualite_detail .agendaDaySquares{
    margin-top: 10px;
}
.actualite_detail .video {
    margin-top: 20px;
}
.actualite_detail .videoContainer{
    max-height: 350px;
}

.agendaDaySquares{
    display: inline-flex;
    gap: 4px;
    align-items: center;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: normal;
    letter-spacing: 0.1em;
    font-size: 13px;
    line-height: 13px;
}
.agendaDaySquare{
    display: inline-block;
    width: 38px;
    height: 38px;
    border-radius: 6px;
    background-color: var(--primary);
    color: #FFFFFF;
    padding: 5px;
    text-align: center;
}
.agendaDaySquare>div:first-child{
    font-weight: bold;
    font-size: 15px;
    line-height: 15px;
}
.agendaDaySquare>div:last-child{
    margin-top: 4px;
    font-size: 11px;
    line-height: 12px;
}
.primary .agendaDaySquare{
    background-color: white;
    color: var(--primary);
}
.checkboxForm{
    display: flex;
    gap: 10px;
    align-items: center;
}
.checkboxForm>label{
    line-height: 20px;
    padding-top: 10px;
}
.formSection{
    margin-top: 40px;
    font-size: 24px;
    line-height: 30px;
    border-bottom: 2px solid var(--primary);
}
.formInfo{
    margin-top: 40px;
    font-size: 15px;
    line-height: 17px;
    font-weight: normal;
    color: var(--gray-82);
}
.primary .formInfo{
    color: var(--white);
}
.formInfo>p{
    margin: 0 0 4px;
}
.formInfo a:link, .formInfo a:visited, .formInfo a:focus{
    text-decoration: underline;
    color: var(--primary);
}
.primary .formInfo a:link, .formInfo a:visited, .formInfo a:focus{
    text-decoration: underline;
    color: var(--white);
}

::placeholder {
    color: #AAAAAA;
    opacity: 1;
}
::-ms-input-placeholder {
    color: #AAAAAA;
}

.salle_popup{
    display: grid;
    grid-template-columns: 350px 1fr;
    grid-gap: 25px;
}
.salle_popup a{
    color: var(--primary) !important;
}
.salle_popup .slideshow ul>li div{
    width: 350px;
    height: auto;
    aspect-ratio: 3 / 4;
}
.salle_popup .title{
    font-size: 30px;
    padding-bottom: 30px;
    line-height: 35px;
}
.salle_popup .desc{
    font-weight: normal;
    line-height: 19px;
    font-size: 16px;
    padding: 0 10px;

    max-height: 400px;
    overflow: auto;
}
.salle_popup .desc p{
    margin: 0px;
}
.salle_popup .BControl{
    font-size: 40px;
    font-weight: bold;
    color: var(--primary);
}
.salle_popup .slideshowContainer .BPrevious {
    left: -21px;
}
.salle_popup .slideshowContainer .BNext {
    right: -25px;
}

.profilsBG.gray{
    background-color: var(--gray-de);
    color: var(--primary);
}
.profilsBG.primary{
    background-color: var(--primary);
    color: var(--white);
}
.profilsCMS{
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}

.profilsCMS .profil{
    display: block;
    padding: 10px;
    flex: 0 1 380px;
    /*word-break: break-word;*/
    background: white;
    line-height: 16px;
}
.profilsCMS .profil a{
    display: inline-block;
    color: var(--primary);
}
.profilsCMS .profil.withavatar{
    display: grid;
    grid-template-columns: 1fr 4fr;
    gap:8px;
}
.profilsCMS .profil:last-child {
}
.profilsCMS .profil>.contain {

}

.profilsBG.primary .profil{
    color: var(--black);
    border: 1px solid var(--primary);
}

.profilsBG.gray .profil{
    color: var(--black);
    border: 1px solid var(--primary);
}

.profil .avatar{
    width: 140px;
    height: 140px;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
}

.profilsCMS .profil .nomprenom{
    font-size: 18px;
    line-height: 20px;
    font-weight: bold;
    margin-bottom: 4px;
}
.profilsCMS .profil .desc{
    font-weight: normal;
    line-height: 20px;
}
.profilsCMS .profil .desc p{
    margin: 0px;
}

.sectionenquetesBG{
    width: 100%;
    background-color: var(--primary);
    color: white;
}
.sectionenquetesBG.gray {
    background-color: var(--gray-de);
    color: black;
}
.sectionenquetes{

}
.sectionenquetes>.title{
    display: grid;
    grid-gap: 30px;
    grid-template-columns: auto 1fr;
    align-items: center;
    padding-bottom: 42px;

    font-family: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 42px;
    letter-spacing: 2px;

}
.sectionenquetesBG.gray .sectionenquetes>.title{
    color: var(--primary);
}
.enquetes{
    margin-left: 20px;
}
.enquetes>hr{
    height: 1px;
    border: none;
    background: white;
}
.sectionenquetesBG.gray .enquetes>hr{
    background: var(--primary);
}
.enquete{
    display: block;
    font-size: 20px;
    line-height: 22px;
    font-weight: normal;
}
.enquete>.title{
    font-weight: 700;
}
.enquete>.numero{
    margin-top: 10px;
    font-size: 16px;
    line-height: 18px;
}
.enquete>.numero>span{
    font-weight: 700;
}
.sectionenquetesBG.gray .enquete>.numero>span{
    color: var(--primary);
}
.enquete>.agendaDaySquares{
    margin-top: 10px;
}
.enquete>.desc{
    font-size: 16px;
    line-height: 18px;
    margin: 6px 0 0px 0;
}
.enquete a.DL{
    display: inline-block;
    font-size: 16px;
    line-height: 18px;
    font-weight: 700;
    text-decoration: underline;
    color: white;
    margin-left: 20px;
}
.sectionenquetesBG.gray .enquete a.DL{
    color: var(--primary);
}
.enquete i.fa-circle{
    font-size: 10px;
    margin-right: 6px;
    margin-left: -17px;
    vertical-align: middle;
}
.sectionenquetesBG.gray .enquete i.fa-circle{
    color: var(--primary);
}

.cms-form-errors{
    font-size: 20px;
    line-height: 24px;
    margin: 20px 0;
}
.cms-form-errors ul{
    margin-top: 6px;
}

.search{

}
.search input{
    font-size: 20px;
}
.searchResult{
    padding: 40px var(--width-padding) 80px;
    background-color: var(--gray-de);
}
.results{

}
.results>div{
    margin: 10px 0 30px 0;
}
.results a{
    display: block;
    color: var(--primary);
    font-size: 20px;
    margin-bottom: 5px;
}
.results p{
    font-style: italic;
    color: var(--gray-82);
}
/*
.searchContainerMobile{
    display: none;
}*/
.panel button[type="submit"] {
    display: none;
}

.videosContainer{
    display: block;
    width: 100%;
}
.videosContainer.primary{
    background-color: var(--primary);
    color: #FFFFFF;
}
.videosContainer.gray{
    background-color: var(--gray-de);
    color: #000000;
}

.videosContainer .videos{
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-row-gap: 30px;
    grid-column-gap: 30px;
}
.videosContainer .video{

}
.videosContainer .video>.title{
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: bold;
}
.videoContainer{
    position: relative;
    padding-bottom: 56.25%;
    height: 0; overflow: hidden;
    max-width: 100%;
}
.videoContainer iframe{
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
}
.pdfs{
    display: block;
    margin-top: 20px;
}
.sectionenquetesBG.gray .pdfs>a{
    color: var(--primary);
}
.sectionenquetesBG.primary .pdfs>a{
    color: white;
}
.pdf{
    display: block;
    font-size: 18px;
    margin-bottom: 5px;
}
.pdf i{
    font-size: 30px;
}

.grecaptcha-badge{
    bottom: 1px !important;
    height: 54px !important;
}