/* 
    Created on : 21 mai 2023, 09:12:39
    Author     : Florent Houx
*/
/* INITIALISATION */
*, *::before, *::after {    box-sizing: inherit; }
html, body { width: 100vw; max-width: 100vw; /*overflow-x: hidden;*/ }
body { min-height: 100vh; }
main { max-width: 100vw; overflow-x: hidden; }
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6, section,.section, aside, footer, article {position: relative; margin: 0; padding: 0; max-width: 100%;}
a{ text-decoration: none; color: var(--color-a);  }
.button, .input, .textarea, .select select, .file-cta, .file-name, .pagination-previous, .pagination-next, .pagination-link, .pagination-ellipsis { -moz-appearance: none; -webkit-appearance: none; align-items: center; border: 1px solid transparent; border-radius: 4px; box-shadow: none; display: flex; height: 2.5em; justify-content: flex-start; padding-bottom: calc(0.5em - 1px);  padding-left: calc(0.75em - 1px); padding-right: calc(0.75em - 1px); padding-top: calc(0.5em - 1px); position: relative; vertical-align: top; }
.button { min-width: 10px; background: var(--color-button); color: var(--color-button-txt);  cursor: pointer; display: flex; justify-content: center;  padding-bottom: calc(0.5em - 1px); padding-left: 1em; padding-right: 1em; padding-top: calc(0.5em - 1px); text-align: center; gap:5px; }
.button.secondary, .button.is-primary { background: var(--color-buttonBis); color: var(--color-buttonBis-txt); border: solid 1px var(--color-buttonBis-txt); }
.button.is-primary:hover { background-color: var(--color-buttonBis-txt); color: var(--color-button-txt-hover); }
.button.social { background: var(--color-4); color: var(--color-tertiary); }
.button:hover { background: var(--color-button-before); color: var(--color-button-txt-hover);  }
.buttontransparent { border:none; background: transparent; padding:0; }
.buttontransparent:hover { background: #ffffff1f; border-radius: 50px; cursor:pointer; }
video { height: auto; max-width: 100%; }
audio { max-width: 100%; }

/* LIBRARY UTILITY */
.navbar-end { padding-right: 1vw; }
#page_PRIVATEACCESS  { min-height: 100vh; }
.formMsgEnd { position: fixed; margin-top: -50px;    text-align: center;    top: 0;    left: 0;    width: 100%;    padding: 10px; z-index: 99999;    justify-content: center; animation: messageEphemere 5s linear 1; }
#mailOk, #msgOk{ background: #6fc56d; }
#mailErreur, #msgErreur{ background: #ed5858; }
#mailNOk, #msgNOk{ background: #ed8858;}
.forcecolor1 { color: var(--color-primary); }
.forcecolor2 { color: var(--color-secondary); }
.forcecolor3 { color: var(--color-tertiary); }
.forcecolor4 { color: var(--color-4); }
@keyframes messageEphemere { from { margin-top: -50px; } 10% { margin-top: 0; } 90% { margin-top: 0; } to { margin-top: -50px;  }}
@-webkit-keyframes messageEphemere {from { margin-top: -50px; } 10% { margin-top: 0; } 90% { margin-top: 0; } to { margin-top: -50px;  }}

.flex{ display: flex; margin: auto;}
.flexnoauto{ display: flex; align-items: flex-start; }
.flexremplissage > div, .flexremplissage > a, .flexremplissage > label, .flexremplissage > p,.flexremplissage > section, .flexremplissage > aside{ flex: 1 1 auto;}
.flexremplissageh > div, .flexremplissageh > a, .flexremplissageh > label, .flexremplissageh > p,.flexremplissageh > section, .flexremplissageh > aside {flex: 1 1 0;}
.flexinput > label { width : 30%; min-width: 400px;}
.flexinput > .control {width: 70%; min-width: 400px;}
.flexinput > .control > .color { }
.flexligne{flex-flow: row wrap;}
.flexwrap{flex-wrap: wrap;}
.flexlignenowrap{flex-direction: row;}
.flexcolonne{flex-flow: column wrap;}
.flexcolonnenowrap{flex-direction: column;}
.flexauto > div{  margin: auto; }
.flexend{ justify-content: flex-end;}.flexcenter{justify-content: center;}.flexbetween{justify-content: space-between;}.flexaround{justify-content: space-around;}.flexeven{justify-content: space-evenly;}
.flexalignstart{ align-items: flex-start;}.flexalignend{align-items: flex-end;}.flexaligncenter{align-items: center;}
.flexcontentstart { align-content: flex-start; }
.itemflexalignstart{align-self: flex-start;}.itemflexalignend{align-self: flex-end;}.itemflexaligncenter{align-self: center;}.itemflexremplissage{align-self: stretch;}

textarea { padding: 15px; }
.invisibleHr { border:none; padding: 15px 0; }
ul { list-style: none; }
.fa-bars.pushNavMobileI, .fa-bars.pushUpMobileI { font-size: 30px; }
.pushNavMobile, .pushUpMobile { display: none; }
.w10, .w15, .w20 { min-width: 200px; max-width: 94vw; }
.w25, .w30, .w40, .w50 { min-width: 200px; max-width: 94vw; }
.w60, .w65, .w70, .w75, .w80 { min-width: 300px;max-width: 94vw; }
.w10 { width: 10%; } .w15 { width: 15%; }.w20 { width: 20%; }.w25 { width: 25%; }.w30 { width: 30%; }.w40 { width: 40%; }.w50 { width: 46%; }.w60 { width: 60%; } .w65 { width: 65%; } .w70 { width: 70%; } .w75 { width: 75%; }.w80 { width: 80%; }.w90 { width: 90%; } .w100 { width: 100%; }
.w50px { width:50px; } .w100px { width:100px; } .w150px { width: 150px; max-width: 100%; } .w300px { width: 300px; max-width: 98vw; } .w400px { width: 400px; max-width: 98vw; } .w500px { width: 500px; max-width: 98vw; } .w600px { width: 600px; max-width: 98vw; }
.w700px { width: 700px; max-width: 98vw; } .w800px { width: 800px; max-width: 98vw; } 
.minw90 { min-width: 90%; } .minw100 { min-width: 100%; }
.maxw300px { max-width: 300px; } .maxw400px { max-width: 400px; } @media (max-width: 450px){ .maxw400px { max-width: 90%; } }
.height0 { height: 0; max-height: 0;} .h150px { height: 150px ;} .h200px { height: 200px ;} .h250px { height: 250px ;} .h300px { height: 300px ;} .h400px { height: 400px ;} .h90 { height: 90vh ;} .h100v { height: 100vh ;} .h100 { height: 100% ;}
.minh700px { min-height: 700px; }  .minh50 { min-height: 50vh; }  .minh100 { min-height: 100vh; } 
.margintb15px { margin: 15px 0; } .margintb30px { margin: 30px 0; }
.marginl5px { margin-left: 5px; } .marginl15px { margin-left: 15px; } .marginl5 { margin-left: 5vw; } 
.marginr5pxi { margin-right: -5px; } .marginr15pxi { margin-right: -15px; }
.margint5px { margin-top: 5px; }.margint10px { margin-top: 10px; }.margint15px { margin-top: 15px; }.margint20px { margin-top: 20px; }.margint30px { margin-top: 30px; }.margint50px { margin-top: 50px; } .margint100px { margin-top: 100px; } .margint10vh { margin-top: 10vh; }
.margint5pxi { margin-top: -5px; } .margint15pxi { margin-top: -15px; }
.marginb15px { margin-bottom: 15px; } .marginb30px { margin-bottom: 30px; } 
.padding15-5px { padding: 15px 5px; } .padding5px { padding: 5px 1vw; } .padding25px { padding: 25px 2vw; } .padding30px { padding: 30px 2vw; } .padding140px { padding: 140px 2vw; } .padding5vh { padding: 5vh 0; } .padding10vh { padding: 10vh 0; }
.paddingr30px { padding-right: 30px; }
.paddinglr30px { padding-left: 30px; padding-right: 30px; } .paddinglr5vw { padding-left: 5vw; padding-right: 5vw; }
.paddingtb60px { padding-top: 60px; padding-bottom: 60px; }
.paddingb25px { padding-bottom: 25px; } .paddingb5vh { padding-bottom: 5vh; } .paddingb10vh { padding-bottom: 10vh; }
.textalignr { text-align: right; } .textalignl { text-align: left; } .txtcenter{ text-align: center;}.justify { text-align: justify; text-justify: auto; }
.bold { font-weight: bold; } .nobold { font-weight: normal; } .italic { font-style: italic; }
.autosautligne { white-space: pre-line; }
.overflowhidden { overflow: hidden; }
.overflowyauto { overflow-y: auto; } .overflowxauto { overflow-x: auto; }
.objcontain, .objcover { width: 100%; height: 100%; }
.objcover { object-fit: cover; } .objcontain { object-fit: contain; }
.firstElement { margin-top: 10vh; } .lastElement { margin-bottom: 10vh; }
@media (max-width: 1030px){    
    .w50, .w60 ,.w40, .w80 { width: 90%; margin-left: auto; margin-right: auto; justify-content: center; } h1, h2, h3 { text-align: center;}
}
@media (max-width: 768px){    
    h2.minw100, h3.minw100 { min-width: 80vw; max-width: 80vw; }
    .w50, .w60 ,.w40, .w80 { width: 94%; }
    .w40, .w50, .w60, .w65, .w70, .w75, .w80 { min-width: 250px; }
}
.bgRed, .bg-red { background: red; color: white; } .bg-white { background: white; color: black; } .bg-black { background: black; color: white; }
.font-white, .txt-white {color: white;} .font-black, .txt-black {color: black;}
#divBtnOrange { text-align: center; margin-bottom: 5em; }
#navCompte .navbar-link:not(.is-arrowless)::after { border: none; }

/* DEFAULT BLOC */
footer, .footer { background-color: var(--color-footer); color: var(--color-txt-footer); padding: 5vh 3vw 7vh 3vw;  }
/* FIN DEFAULT BLOC */
/* GESTION SCROLL  */
.scroll::-webkit-scrollbar { height: 12px; background-color: #F5F5F5; border-radius: 10px;}
.scroll::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); background-color: #014762; }
.scroll::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); border-radius: 10px; background-color: #F5F5F5; }

html::-webkit-scrollbar { height: 12px; }
html::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.1); background-color: #014762; }
html::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 15px rgba(252, 243, 243, 0.8); background-color: #c9c2c2; }
/* FIN GESTION SCROLL  */
/* TOOGLE */
.toggle {
    justify-content: space-between;     padding: 5px 15px;   font-size: 1.7rem;    align-items: center;    display: flex;    width: 100%;
    background: linear-gradient(90deg, rgba(1,53,68,1) 0%, rgba(2,162,153,1) 100%);color: white;
}
.toggle:hover{ color:white; }
#toogleDivUn, #toogleDivDeux, #toogleDivTrois { margin-bottom: 2rem; }
.toggle i{ padding: 0 20px; }
/* FILTRAGES */
#formFiltre, #onglets { width: 100%; padding-bottom: 10px; background: linear-gradient(90deg, rgba(1, 53, 68, 1) 0%, rgba(2, 162, 153, 1) 100%); }
#form_formFiltre { width: 100%; }
.btnAdmin { background-color: white; color: black; cursor: pointer; border-radius: 5px; 
    display: flex; justify-content: center; padding-bottom: calc(0.5em - 1px);
    padding-left: 1em; padding-right: 1em; padding-top: calc(0.5em - 1px); text-align: center; } 
/* BLOC CHAT */
.blocChat { display: none; position: fixed; justify-content: center; align-content: center; z-index: 9999;
    width: 85px; top: 20%; right: 0; margin-top:70px; 
    border-radius: 150px 0 0 150px; padding: 0 5px; background-color: white; box-shadow: rgba(0, 0, 0,0.3) 0px 1px 2px; }
.blocChat a { margin-top: 3px; margin-bottom: -3px; }
.blocChat img { width: 57px; height: auto; }
/* FIN CHAT */
.cartPreview { display: none;}
.arrowReturn { position: fixed; bottom: 15px; right: 15px; padding-top: 4px; font-size: 90%; background: var(--color-secondary); z-index: 9999; width: 40px; height: 40px;}
.arrowReturn a { margin: 0; padding: 0;}
.iArrowReturn {font-size: 180%; }
.containerSliderDrasil {padding: 3vh 3vw 7vh 3vw; }
.containerSliderDrasil .slick-dots { text-align: center; }

.slick-prev, .slick-next { width: 60px; height: 60px; z-index: 999999; }
.slick-prev { left: 0; } .slick-next { right: 0; }
.slick-prev:before {
    content: url('../../assets/img/Fleche_Gauche.png'); border: none; opacity: 1;
}
.slick-next:before {
    content: url('../../assets/img/Fleche_Droite.png'); border: none; opacity: 1;
}
input[type=text], input[type=number], input[type=date], input[type=tel], input[type=email], .input {
    height: 40px;    padding-left: 15px; border: 2px solid #1992BA; border-radius: 4px; 
}
input:read-only { border: none; }
input:read-only:focus-visible{ border: none; outline: none; }
/* MISE EN FORME DES CARDS */
.card { border-radius: 0; }
.catCard{
    padding: 0% 2%;
    width: fit-content;
}
.titleLink:hover{
    text-decoration: underline;
}
.titleLink{ text-align: left; font-size: 1.1rem; }
.subtitle.adresse {
    color: #adadad; margin-bottom: 3px;
}
/* LES CARDS */

.sectionCard .card { margin: 10px; }
.cardHTitle{
    position: absolute;
    z-index: 1;
    background: #fff;
    top: 4%;
    left: 4%;
    padding: 0% 4%; color: #000;
}
.card-content.cardCarrousselHome{
    padding: 3px 4% 15px 4%;
    display: flex;
    flex-direction: column;
    /*justify-content: space-between;*/
    height: 180px;
    color: black; background: white;
}
.cardLargeHome{
    margin: 0% 0%;
}
.cardXL{
    width: 61vw; min-width: 61vw; max-width: 100%;  height: 300px; color: white;
}
.cardXL .title, .cardXL p, .cardXL a { color: white; }
.cardXL .catCard { background-color: white; color: black; font-weight: bold; }
.cardXL > div:first-child { padding: 15px; }
.cardXL .cardEtiquette {     font-size: 1.1rem; font-weight: lighter;
                             margin-top: 5px; margin-bottom: 10px; padding-bottom: 15px;
    border-bottom: 3px solid #1bb3be; }
.cardXL .content { max-width: 330px; position: relative;
    top: 75%;
    left: 25px; }
.cardXL .actionsDivDate { margin-top: 10px; }
.cardClassic {
    height: fit-content; width: 330px; max-width: 330px;  margin-bottom: 5px; /* height: 440px;  */
}
.cardClassic .card-image {
    border-bottom: 1rem solid #F15642;
}
.cardClassic.cardArticle .card-image {
    border-bottom: 1rem solid #0c6573;
}
.cardClassic.cardEvent .card-image {
    border-bottom: 1rem solid #d6d740;
}
.cardHMedia .media{
    align-items: flex-start;
    display: flex;
    text-align: inherit;
}
.cardHE {
    height: fit-content; width: 230px; height: 230px; min-width: 230px;  max-width: 230px;   
}
#containerMainADNC .contentWidgetEvent p {
    font-size: 12px;
}

#containerMainADNC .cardHEXL .contentWidgetEvent p {
    font-size: 18px;
}
.cardHEXL {
    height: fit-content; width: 460px; height: 480px; min-width: 350px;  max-width: 100%;  
}
.cardHEImgTitle { position: absolute; margin-top: -75px; margin-left: 15px; }
.cardHESubTitle { position: absolute; margin-top: -37px; margin-left: 15px; font-weight: bold;  padding: 0 10px; }
.cardHEImgTitle img { width: 75%; }
.cardContentHE { padding: 10px; }
.cardLarge {
    height: 225px; padding-right: 5px; max-width: none;
}
.cardLarge .column.is-8{
    padding: 3%;
}
.cardLContents > a {
    display: block;
    max-width: 90%;
    line-height: 1.5;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    height: 3rem;
}
.cardLContents .author { line-height: 1.5; min-height: 1.5rem; }
.cardTitle { font-size: 1.2rem; font-weight: bold; line-height: 1.5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cardsFour { width: 468px; }
.cardsFour > div { margin-right: 4px; }

.imgCardLarge{
    height: 100%;
}
.actionsDiv{
    align-items: end;
}
.actionsDiv .imgInteract img{
    width: 2.5rem;
}
.actionsDiv .imgInteract{
    width: 2.5rem;
}
.actionsDiv p {
    font-size: 80%;
    color: white;
}
.actionsDiv .nbNotif {
    display: flex;align-items: center;justify-content: center;
    background-color: #0d4b65;width: 25px;height: 25px;position: absolute;
    top: -10px;right: -10px;
    border-radius: 50%;color:white;
}

.border-gradient {
    background-color: white;
    border: 10px solid;
    border-image-slice: 1;
    border-width: 3px;
    border-image-source: linear-gradient(90deg, rgba(214,217,46,1) 0%, rgba(0,168,156,1) 50%, rgba(0,95,112,1) 89%, rgba(0,73,101,1) 100%);
}
/* CARD 3L */
.card3L, .card3L div {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: rgb(15, 75, 100);
}

.card3L {
    border: 3px solid rgb(15, 75, 100);
    border-radius: 25px;
    width: 300px;
    max-width: 300px;
    margin: 15px 30px; 
    padding: 10px;
    max-height: 400px;
}

.card3L h3 {
    width: 100%;
    text-align: center;
    font-size: 17px; margin: 10px 0; min-height: 77px;
}

.card3L p {
    width: 96%;
    text-align: justify;
    font-size: 13px;
    margin: 0;
}

.card3L .el1 img {
    margin-top: -15px;
    margin-left: -55px;
    max-width: 355px;
}
.card3L .el2 {  height: 225px; }
.card3L .el3 img {
    position: relative;
    top: 18px;
    max-width: 175px;
}
/* NAVBAR SYSTEME DE COMPTE */
.navbar.is-dark {
    background-color: #363636; color: #fff;
}
.navbar .buttons {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.navbar .buttons .button { height: 35px; margin: 5px; }

/* ECRAN CONNEXION */
.bloc-connection, .buttons-co, .bloc-connection .field {
    display:flex;
    flex-direction: column;
    align-items:center;
}
.bloc-connection {
    background-color: #f5f5f526; color: #000;
    border-radius: 25px;
    padding: 30px 0; margin: 10vh auto;
}
.bloc-connection img {
    width:200px;
    margin-bottom: 20px;
}
.bloc-connection p input {
    width: 200px;
    border-radius:150px;
    text-align: center;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.buttons-co p {
    color:#2A6379 !important;
    font-weight:600;
    margin-bottom: 10px;
    text-align:center;
}
.btn-connection {
    background: linear-gradient(90deg, rgba(192,43,51,1) 0%, rgba(238,86,72,1) 100%) !important;
    border:none !important;
    width:150px;
    border-radius:150px;
    margin-bottom: 30px;
}
.btn-inscription {
    background: linear-gradient(90deg, rgba(247,251,59,1) 0%, rgba(254,205,58,1) 100%) !important;
    border:none !important;
    width: 150px;
    color:#2A6379 !important;
    border-radius:150px;
}

/* COMPTE */
#blocCompteEtendu { padding: 5vh 2vw; background: white; }
#blocCompteEtendu > div, #blocCompteEtendu .affiliationCard { margin-left: auto; margin-right: auto; }
.affiliationCard {
    width: 450px; min-width: 310px;
    max-width: 80%;
    padding: 1.5rem;
    color: black;
}
/* FIN COMPTE */
/* TDB */
#blocTdB h1 { font-size: clamp(37px, 5vw, 45px); }
#blocMonCompteGames .dtoggle > summary { background: var(--color-button, #029790); color: var(--color-button-txt, #fff); padding: 10px 35px; margin-bottom: 4vh; }
/* FIN TDB */
/* MODULE PATCHWORK */
.containerPatchWork { width: 100%; max-width: 100%; overflow: hidden; }
#containerPatchWork a:hover { border: none; border-image: initial; }
.patchWork p, .patchWork h3 { font-family: var(--font-subtitle2); }

.pwct { display: none; }
.pwa{font-size: 1.2rem; margin: 15px; }
.startDuo .pwa{ text-align: end; }
.pwimg{ max-width: 100%; max-height: 100%; }
.ms1, .ms4, .ms5{ color: var(--color-secondary);}
.ms2, .ms3, .ms6{ margin-top: 0; color: var(--color-txt);}
body .containerPatchWork{
    background-color: black;
}
.containerPatchWork, .patchWork{
    justify-content: center;
}
.startDuo .pwa:first-child .pwPict{
    height: 280px;
    width: 500px;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px inset, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px inset;
    margin-top: 100px;
    margin-bottom: -6px;
}
.startDuo .pwa:last-child .pwPict{
    height: 250px;
    width: 420px;
    max-width: 100%;
    max-height: 100%;  
    padding-left: 80px;
}
.centerTxt { display:none; padding-top: 80px; width: 500px; max-width: 100%; }
.centerDuo .pwa:first-child .pwPict{
    height: 300px;
    width: 550px;
    max-width: 100%;
    max-height: 100%;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px inset, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px inset;
    margin-top: 120px;
    margin-bottom: -6px;
}
.centerDuo .pwa:last-child .pwPict{
    height: 350px;
    width: 200px;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px inset, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px inset;
    margin-top: -30px;
    margin-bottom: -36px;
} 
.endDuo .pwa:first-child .pwPict{
    height: 220px;
    width: 380px;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px inset, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px inset;
}
.endDuo .pwa:last-child .pwPict{
    height: 180px;
    width: 300px;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px inset, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px inset;
}

.patchWork .pict1 .pict2{
    display: flex;
    flex-direction: row;
}
#img .pict3 .pict4{
    display: flex;
    justify-content: center;
    background-color: #fff;
}
.centerDuo{
    margin-top: -80px;
}
.endDuo{
    margin-top:  360px;
    margin-left: -350px;
}
@media screen and (max-width: 1229px){    
    .centerTxt { order: 99; padding-top: 10px; max-width: 90%; }
    .title h2 {color: rgb(215, 18, 18);}
    .pwa p { text-align: center; }
    .containerPatchWork, .patchWork {
      flex-direction: column; align-items: center; justify-content: space-around;
    }
    .patcWork{
        padding: auto;
    }
    .ms1, .ms4, .ms5{
        font-size: 1.2rem;
        color: rgb(255, 240, 154);
        text-align: center;
    }        
    .ms2, .ms3, .ms4{
        text-align: center;
        font-size: 1.2rem;
        color: rgb(255, 255, 255);   
    }
    body .containerPatchWork{
        background-color: black;
    }
    .startDuo, .centerDuo, .endDuo { display: flex; flex-flow: row wrap; margin: auto; }
    .startDuo .pwa:first-child .pwPict, .centerDuo .pwa:first-child .pwPict, .endDuo .pwa:first-child .pwPict, .startDuo .pwa:last-child .pwPict, .centerDuo .pwa:last-child .pwPict, .endDuo .pwa:last-child .pwPict{
        height: auto;
        width: 500px;
        max-width: 90%;
        margin: auto; padding: 0; 
    }
}
/* FIN MODULE PATCHWORK */
.listeSponsors img { width: 30%; margin: 10px 1%; }

/* MODULE BUILDING */
.boxbuilding > div { overflow: hidden; margin: 0 15px; }
.boxbuilding h3 { font-size: 135%; }
.boxbuilding .w300 { width: 400px; }
.boxbuilding .building0 { margin-top: 110px; }
.boxbuilding .building1 { margin-top: 20px; margin-left: -50px; }
.boxbuilding .building2 { margin-top: 60px; margin-left: -40px; }
.boxbuilding .building3 { margin-left: -10px; }
.boxbuilding .building4 { margin-top: 150px; margin-left: -30px; }
.buildingPIC, .buildingPIC img { max-width: 100%; }
.buildingPIC a { padding: 0; }
.buildingPIC img { width: 95%; }
.buildingTXT { text-align: left; margin-top:5px;  }
.boxbuilding > div > div { width: 92%; }
/*.building0 .buildingH, .building0 .buildingTXT  { margin-left: 45px; width: 80%; }
.building1 .buildingH, .building1 .buildingTXT  { margin-left: 45px; width: 80%; }
.building2 .buildingH, .building2 .buildingTXT  { margin-left: 30px; width: 85%; }
.building3 .buildingH, .building3 .buildingTXT  { margin-left: 15px; width: 90%; }
.building4 .buildingH, .building4 .buildingTXT  { margin-left: 80px; width: 80%; }
.building4 .buildingTXT  { width: 72%; }*/
@media (max-width: 830px){  
    .building0 .buildingH, .building0 .buildingTXT, .building1 .buildingH, .building1 .buildingTXT, .building2 .buildingH, .building2 .buildingTXT, .building3 .buildingH, .building3 .buildingTXT, .building4 .buildingH, .building4 .buildingTXT {  margin: auto; width: 100%; }
    .boxbuilding .building0, .boxbuilding .building1, .boxbuilding .building2, .boxbuilding .building3, .boxbuilding .building4 { margin-left: 0; width: 92%; }
    .buildingPIC, .buildingPIC img { margin: 5vh auto 5vh auto; }
    .boxbuilding .building4, .boxbuilding .building0 { margin-top: 0; }
}
/* FIN BUILDING */
/* CATALOGUE ET PAGE PRODUIT */ 
#page_catalogue .title, #page_catalogue h2, #page_catalogue h3 { padding: 10px 0; }
#page_catalogue .title1 { padding: 20px 0; font-size: var(--txt-size-h1); color: var(--color-title); }
#page_catalogue .section { padding: 0; }
#page_catalogue section .button { margin: 5vh 0 ; }
#page_catalogue #intro .imgIntro { min-width: 100%; height: auto; }
#page_catalogue .firstElement  { margin-top: 10vh; }
#page_catalogue .lastElement  { margin-bottom: 10vh; }
#page_catalogue #intro .blocFicheProduct { padding: 0; }
#page_catalogue #sectionFin { padding-top: 10vh; }

#page_catalogue .backbis { background: var(--color-back-bis); color: var(--color-txt-bis); }
#page_catalogue .backbis .h2, #page_catalogue .backbis .h3, #page_catalogue .backbis a:hover { color: var(--color-title-bis); }
#page_catalogue #sectionVideo, #formCTAAUto { background: var(--color-back-video); color: var(--color-txt-video); }
#page_catalogue #sectionVideo h2, #formCTAAUto h2 {  color: var(--color-title-video); }

/*#page_catalogue p { animation-timeline: view(); }*/
#page_catalogue .imgS1 { 
    transform: scale(1) translateX(0);
    animation: scroll-effect-left linear auto both;
    animation-timeline: view();
    animation-range: entry 25% cover 50%;
}

@keyframes scroll-effect-left {
    0% {
        transform: scale(0.2) translateX(-100vw);
    }
    50% {
        transform: scale(0.9) translateX(-50vw);
    }
    100% {
        transform: scale(1) translateX(0);
    }
}
#page_catalogue .blocFicheProduct p, #page_catalogue .blocFicheProduct h1, #page_catalogue .blocFicheProduct h2, #page_catalogue .blocFicheProduct h3 {
    transform: scale(1) translateY(0);
    animation: scroll-effect-bottom-soft linear auto both;
    animation-timeline: view();
    animation-range: entry 0% cover 50%;
}
#page_catalogue .imgS2 {
    transform: scale(1) translateY(0);
    animation: scroll-effect-bottom linear auto both;
    animation-timeline: view();
    animation-range: entry 25% cover 50%;
}

@keyframes scroll-effect-bottom {
    0% {
        transform: scale(0.2) translateY(100vw);
    }
    50% {
        transform: scale(0.7) translateY(50vw);
    }
    100% {
        transform: scale(1) translateY(0);
    }
}
@keyframes scroll-effect-bottom-soft {
    0% {
        opacity: 0;
        transform: scale(0.2) translateY(70vw);
    }
    25% {
        opacity: 0.5;
        transform: scale(0.7) translateY(30vw);
    }
    50% {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}
.parallax .objcover, .parallax .parallax2 { 
    position: relative;
    transform: scale(1) translateY(0);
    animation: scroll-effect-soft-parallax linear auto both;
    animation-timeline: view();
    animation-range: entry 0% cover 50%;
    z-index: -1;
}
@keyframes scroll-effect-soft-parallax {
    0% {
        transform: translateY(-25vw);
    }
    50% {
        transform: translateY(-10vw);
    }
    100% {
        transform: translateY(0);
    }
}
/* ANIMATION REVEALING IMAGE */
@keyframes reveal {
    from {
        opacity: 0; clip-path: inset(45% 20% 45% 20%);
    }
    to {
        opacity: 1; clip-path: inset(0% 0% 0% 0%);
    }
}
#page_catalogue .revealing-image {
    view-timeline-name: --revealing-image;
    view-timeline-axis: block;
    animation: linear reveal both;
    animation-timeline: --revealing-image;
    animation-range: entry 25% cover 50%;
}

/* ANIMATION AFFICHAGE ET DISPARITION DOUX ELEMENT */
@supports(animation-timeline: view()) {
        @keyframes fade-in {
                0%  {
                        opacity: 0;
                        transform: translateY(100%);
                }
                100%  {
                        opacity: 1;
                        transform: translateY(0);
                }
        }
        @keyframes fade-out {
                0% {
                        opacity: 1;
                        transform: translateY(0);
                }
                100% {
                        opacity: 0;
                        transform: translateY(-100%);
                }
        }
        .list-animview { position: relative; }
        .list-animview > ul > li, .list-animview > p, .list-animview > img {
                animation: linear fade-in forwards, linear fade-out forwards;
                animation-timeline: view();
                animation-range: entry, exit;
        }
}

.progress-bar {
  --progress-color: hotpink;
  --progress-size: 40px;
  position: fixed; top: 0; width: 100%;
  height: var(--progress-size);
  background: var(--progress-color);
}

@supports (animation-timeline: scroll()) {
  .progress-bar {
    animation: scale linear auto both;
    animation-timeline: scroll(root);
    animation-range: 0 100%;
  }
  @keyframes scale {
    from {
      scale: 0 1;
    }
    to {
      scale: 1 1;
    }
  }
}
/* FIN ANIMATION */

.cardProductCatalogue { margin: 10px 5px; border-radius: 4px; box-shadow: 0 0 1px 3px rgba(219, 219, 219,0.22); background: whitesmoke; color: black; }
.cardProductCatalogue h3 { font-family: var(--font-subtitle2); padding-bottom: 5px; }
.headerProduct { background: var(--color-back-bis); border-bottom: 10px solid var(--color-primary); }
.videoDiv iframe { width: 100%; min-height: 400px; }

#page_catalogue #sectionVideo .button.is-primary {
    background var(--color-button-before);
    color: var(--color-a-hover);
}
#page_catalogue #sectionVideo .button.is-primary:hover {
    background: var(--color-button);
    color: var(--color-a);
}
#page_catalogue section > div:last-child .texteS2 { padding-bottom: 10vh; }
@media (max-width: 1330px){  
    #page_catalogue .blocFicheProductVideo > div:first-child { width: 80%; order: 1; }
    #page_catalogue .blocFicheProductVideo .videoDiv { width: 80%; order: 0; margin-bottom: 0; }
    #page_catalogue .button { margin: 5vh auto; }
}
/* FIN CATALOGUE */
/* FORMATIONS */
#blocMonCompteFormation .cardContentICTA { margin: 10px; background: var(--color-back-bis); width: 300px; max-width: 300px; padding: 15px; border-radius: 8px; }
#blocMonCompteFormation .buttonCardICTA { background: var(--color-secondary); color: var(--color-button); }
#page_FORMATION h3 { font-size: 35px; }
#page_FORMATION h4, h5 { font-size: 25px; }
#page_FORMATION h4 { font-weight: normal; }
#page_FORMATION .el_suivi_etape { min-width: 100px; }
#page_FORMATION .hero-body { padding-left: 2vw; padding-right: 2vw; text-align: center; background-size: cover; background-repeat: no-repeat; }
#page_FORMATION .arrowReturnPrec { width: 100%; justify-content: start; padding: 5px 1vw; margin-top: -60px; }
#page_FORMATION .arrowReturnPrec a { padding: 10px 15px; background: var(--color-primary); }
#page_FORMATION .el_suivi_etape p { display: flex; align-items: center; justify-content: center; height: 90px; background: var(--color-primary); border-radius: 10px; max-width: 80px; }
#page_FORMATION .youtube { min-width: 100%;     text-align: center; margin-top: 5vh; }
#page_FORMATION .youtube iframe { width: 700px;    max-width: 100%;    border: 0;    height: 500px; }
#page_FORMATION .elearning_left { padding: 0 2vw; }
#page_FORMATION #el_sommaire p { min-width: 100%; }
#page_FORMATION .elearning_right { background: white; color: black !important; border: solid 2px var(--color-primary); padding: 1vh 1vw; border-radius: 10px; }
#page_FORMATION .elearning_bonus, #page_FORMATION .elearning_files { border-radius: 10px; min-height: 150px; }
#page_FORMATION .elearning_bonus { background: var(--color-primary); }
#page_FORMATION .elearning_files { background: var(--color-white); border: solid 4px var(--color-primary); }
#page_FORMATION .elearning_files p { min-width: 100%; height: 2.9rem; }
#page_FORMATION .fileddl { height: 2.9rem; }
#page_FORMATION .el_texte h1, #page_FORMATION .el_texte h2,#page_FORMATION .el_texte h3,#page_FORMATION .el_texte h4,#page_FORMATION .el_texte h5,#page_FORMATION .el_texte h6 { min-width: 100%; }
#page_FORMATION .el_texte br {     content: '';    min-height: 2rem;    min-width: 100%; }
#page_FORMATION .el_texte b {     color: var(--color-secondary); }
.button-valid-fixed { position: fixed; bottom: 0; left: 35vw; width: 30vw;z-index: 9998; }
@media (max-width: 830px){  
    .el_left_title { justify-content: center; }
    .el_suivi_etape { margin-bottom: 2vh; }
    .button-valid-fixed { left:0; width: 100vw; border-bottom-left-radius: 0; border-bottom-right-radius: 0;  }
}
/* BUBBLE GALLERY */
.bubblegallery { padding: 5vh 2vw; }
.bubblegallery a { width: 400px; max-width: 80%; margin: 15px 0; } 
.bubblegallery .myphoto img { max-width: 98%; } .bubblegallery .myphoto img:hover { animation: upWidth linear auto both; }
@keyframes upWidth {
    from {
      max-width: 96%;
    }
    to {
      max-width: 100%;
    }
  }
/* FIN BUBBLE GALLERY */
/* BLOC CONTACT */ 
#divContact h2 { font-size: 250%; margin-bottom: 0; }
#divContact form { max-width: 800px;
    padding: 0 30px 30px 30px;
    margin: auto; font-family: var(--font-subtitle2); }
#divContact fieldset { margin-inline-start: -2px; padding-inline-start: 0; border: none; padding: 35px 0; color: #bb9858;  }
#divContact label { width: 120px; padding-right : 15px; color: white;  }
#divContact textarea { margin-top: 15px; width: 100%; }
#divContact input, #divContact textarea { border-radius: 10px; padding: 2px 10px; }
#divContact #btnEnvoie { padding: 5px 15px; background: var(--color-button); color: var(--color-a-hover); font-size: 120%; cursor: pointer; }
#divContact .formContactLigne { margin: 10px 0; }
#divContact #lMessage { display: block; margin-top: 25px; }
#divEnvoie { text-align: right; }
#divEnvoie input { width: auto; }

@media (max-width: 930px){   #divContact form { padding: 0 10vw 30px 10vw; }  }
/* FIN BLOC CONTACT */
/* FORMATIONS */
#blocMonCompteFormation .cardContentICTA { margin: 10px; background: var(--color-primary); width: 300px; max-width: 300px; padding: 15px; border-radius: 8px; }
#blocMonCompteFormation .buttonCardICTA { background: var(--color-button); color: var(--color-button-before); }
#page_FORMATION { background: whitesmoke; color: black; }
#page_FORMATION h3 { font-size: 35px; }
#page_FORMATION h4, h5 { font-size: 25px; }
#page_catalogue h5 { font-size: 20px; }
#page_FORMATION h4 { font-weight: normal; }
#page_FORMATION .el_suivi_etape { min-width: 100px; }
#page_FORMATION .hero-body { padding-left: 2vw; padding-right: 2vw; text-align: center; background-size: cover; background-repeat: no-repeat; }
#page_FORMATION .arrowReturnPrec { width: 100%; justify-content: start; padding: 5px 1vw; margin-top: -60px; }
#page_FORMATION .arrowReturnPrec a, #page_FORMATION .button-prec { background: var(--color-elearning-button); color: var(--color-elearning-button-txt); }
#page_FORMATION .button-next { background: #6fc56d; color: white; padding: 10px 15px;  }
#page_FORMATION .button-valid-right { margin: 2px; }
.button-valid-fixed { position: fixed; bottom: 0; left: 35vw; width: 30vw;z-index: 9998; }
#page_FORMATION .button-valid-right:hover, #page_FORMATION .button-valid-fixed:hover { background: #535353; color: white; }
#page_FORMATION .el_suivi_etape p, .boxTitle, .boxTitleRadius, .boxTitleReverse  { display: flex; align-items: center; justify-content: center; background: var(--color-elearning-default); color: var(--color-elearning-button-txt); }
.boxTitleReverse { background: var(--color-elearning-button-txt); color: var(--color-elearning-default); }
#page_FORMATION .el_suivi_etape p, .boxTitleRadius { border-radius: 10px; font-weight: bold; margin-top: 1vh; }
#page_FORMATION .el_suivi_etape p { height: 90px; max-width: 80px; }
.elearning_nav_all { position: fixed; left: -505px; top: 0; height: 100vh; align-content: flex-start; z-index: 99999999; }
.elearning_nav_bloc:hover .elearning_nav_all, .elearning_nav_bloc:active .elearning_nav_all, .elearning_nav_bloc:target .elearning_nav_all { left: 0; }
.buttonStep { height: 2.5em; width: auto;  }
.linkStep p { display: flex; align-items: center; }
.linkStep p span { white-space: break-spaces;  max-width: 70%; }
.buttonSearch { height: 30px; width: 30px; border: 1px solid #d1d1d1; border-radius: 4px; margin: 0 5px; }
.control.has-icons-left .buttonSearch .icon { color: black; height: 30px; }
#page_FORMATION a.is-selected { border: none; border-bottom: 1px solid whitesmoke; color: whitesmoke; }
#page_FORMATION .youtube { min-width: 100%;     text-align: center; margin-top: 5vh;  position: relative; z-index: 0; }
#page_FORMATION .youtube iframe { width: 1200px;    max-width: 100%;    border: 0;    height: 500px; }
#page_FORMATION .elearning_left { padding: 0 2vw; }
#page_FORMATION #el_sommaire p { min-width: 100%; }
#page_FORMATION .elearning_right { background: white; color: black !important; border: solid 2px var(--color-elearning-default); padding: 1vh 1vw; border-radius: 10px; }
#page_FORMATION .elearning_bonus, #page_FORMATION .elearning_files { border-radius: 10px; min-height: 150px; }
#page_FORMATION .elearning_bonus, #page_FORMATION .el_flux_missive, #page_FORMATION .elearning_nav_all { background: var(--color-elearning-default); color: var(--color-elearning-default-txt); }
#page_FORMATION .elearning_files { background: whitesmoke; border: solid 4px var(--color-elearning-default); }
#page_FORMATION .elearning_files p { min-width: 100%; height: 2.9rem; }
#page_FORMATION .fileddl { height: 2.9rem; }
#page_FORMATION .el_texte h1, #page_FORMATION .el_texte h2,#page_FORMATION .el_texte h3,#page_FORMATION .el_texte h4 { min-width: 100%; }
#page_FORMATION .el_texte br {     content: '';    min-height: 2rem;    min-width: 100%; }
#page_FORMATION .el_texte b {     color: var(--color-elearning-txt); }
.icovalidelearning { color: #6fc56d; position: absolute; bottom: 0px; font-size: 200%; right: -10px; }
.etiquetteElearning { margin-left: 15px; font-size: 20px; }
.avancement { border: solid 1px #6fc56d; border-radius: 25px; overflow: hidden; background: whitesmoke; box-shadow: 0 1px 2px #656565; }
.avancement_numero { min-width: 50px; min-height: 27px; padding: 0 15px; color: black; }
.avancementOk { background: #6fc56d; color: white; border-right: solid 1px #F5F5F5; }
.avancementOk:nth-child(even) { background: #8ed58d; }
.avancement_numero:last-child { border: none; border-radius: 0; }
.avancementOk:last-of-type, .avancementOkLast { border-top-right-radius: 25px; border-bottom-right-radius: 25px;  }
.avancement_numero p { font-size: 14px; }
.icovalideavancement { color: black; position: absolute; bottom: -4px; right: -12px; }
@media (max-width: 1100px){  
    .elearning_right { width: 90%; }
    .elearning_right .elearning_bonus { width: 40%; }
    .avancementOk { border: none; }
}
@media (max-width: 830px){  
    .titleavancement { width: 100%; text-align: center; }
    .avancement { margin: 0 25px 0 10px ; }
    .elearning_right .elearning_bonus { width: 96%; }
    .el_left_title { justify-content: center; }
    .el_suivi_etape { margin-bottom: 2vh; }
    .button-valid-fixed { left:0; width: 100vw; border-bottom-left-radius: 0; border-bottom-right-radius: 0;  }    
    .hero .subtitle { max-width: 80vw; }
}
/* FORMULAIRE */
#demandedevis { width: 1100px; max-width: 94vw; }
#form_demandedevis, #form_formulaireachat { width: 100%; padding: 20px; gap: 8px; flex-wrap: wrap; } 
#form_demandedevis { background-color: var(--color-back-bis);  }
#demandedevis { justify-content: center; }
#form_demandedevis h2, #form_formulaireachat h, #form_demandedevis p, #form_formulaireachat p {  width: 100%; max-width: 100vw ;text-align: center;  color: var(--color-primary); margin-bottom: 25px; }
.demande, .details, #details { width: 100%;}
#details { margin-top: 15px; }
.demande { gap: 6px;}
.demandecode { display: flex; justify-content: center;}
.demandecode { width: 30% !important; }
#page_catalogue #demandecode, #page_catalogue #acheter { width: 200px; margin: 2vh auto; }
#demandecode input[type=text], #formulaireachat input[type=text] {width: 100%;}
#formulaireachat .inputDivtext { width: 300px; max-width: 90%; min-width: 200px; margin: 2vh 0;  }
#formulaireachat .inputDivsubmit { width: 100%; display: flex; justify-content: center; }

.radioCaseV1 input[type=radio] { visibility: hidden; display: none; }
.radioCaseV1 input[type=radio]:checked + label,
.radioCaseV1 input[type=radio]:not(:checked) + label{
	padding: 20px;	letter-spacing: 1px;	margin: 5px 5px; text-align: left;
	border-radius: 4px;	overflow: hidden;	cursor: pointer;	-webkit-transition: all 300ms linear;
	transition: all 300ms linear; 
}
.radioCaseV1 input[type=radio]:not(:checked) + label{
	background-color: #e7e7e7;
	box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}
.radioCaseV1 input[type=radio]:checked + label{
    background-color: #003333; color: white;
	box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}
.radioCaseV1 input[type=radio]:not(:checked) + label:hover{
	box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}

#ttphoto_profil {     border: double 7px grey;     border-radius: 50%; }
#ttphoto_team, #ttphoto_fiche, #photo_team, #photo_profil { border: double 7px grey; height: 300px !important; }
#ttphoto_fiche, #photo_fiche { height: 400px !important; width: 300px !important; }
#ttphoto_fiche img { height: 400px !important; }
.dash2 { margin: 15px; }
.cptrang { width: 200px; min-width: 200px; max-width: 90vw; margin-right: 15px; }
.ij_modele7 { display: flex; flex-flow: row wrap; }
.ij_modele7 label { display: block;    width: 225px; min-width: 225px; max-width: 225px; }

.button .icon:first-child:last-child {
    margin-left: calc(-0.5em - 1px);
    margin-right: calc(-0.5em - 1px);
}

/* FIN FORMULAIRE */

.formachat { background: white; color: black; padding: 2vh 2vw; width: 800px; max-width: 94vw;  }
.formachat div.tva { margin-top: -20px; }
.formachat .productdescsmall { margin-top: -17px; }
.formachat .productmentionscgv { margin-top: -25px; }
#faproducttarif { font-size: 120%; }
a.is-primary { color: var(--color-primary); }

/* MODULE NAV - THEME NAVTOP */
.navtop { top: 0; padding: 10px; z-index: 99;}
.navtop ul { display: flex; flex-direction: row; flex-wrap: wrap; align-content: flex-start; }
.navtop li { display: flex; padding: 0; }
.navtop a:hover { background: var(--color-button) !important; color: var(--color-button-txt) !important; border-radius: 4px; }
.navtop img { max-height: 40px; margin-top: -5px; }
@media (max-width: 1300px){    
    .pushNavMobile, .pushUpMobile { display: flex; position: fixed; top: 15px; left: 15px; cursor: pointer;z-index: 999999; font-size: 25px; width:40px; height:40px; }
    .navtop {display: none; justify-content: center; width: 100vw;height: 100vh;position: fixed;padding: 10vh 2vw;top: 0;left: 0;background: black !important;z-index: 99999;overflow-y: auto;}
    .navtop ul { justify-content: center; }
    .navtop ul li { width: 80%; margin: auto; text-align: center; margin: 15px auto; border: none;  }
    .navtop ul li a { width: 100%; }
    .navtop ul li:last-of-type a { background: var(--color-button); color: var(--color-button-txt); }
    a, input[type=submit] { text-align: center; justify-content: center; }
}
@media (max-width: 830px){  
    .btn-tdb strong { display: none; }
}
@media (max-width: 700px){  
    .btn-cmd strong { display: none; }
}
/* FIN NAV */

@media (max-width: 1229px) {
    a, p, h1, h2, h3, li, b  { text-align: center; justify-content: center; font-size: 90%; max-width: 100%; }
    p, h1, h2, h3, li, b { margin: auto; }
    iframe { max-width: 98%; }
    .objcover, .objcontain { margin-bottom: 15px; }
}

@media (max-width: 930px) {
    a, p, h1, h2, h3, li, b  { max-width: 80%; }
}