/* ### ############# ### */
/* ### STICKY FOOTER ### */
/* ### ############# ### */
#wrapper {
    min-height: 100vh !important;
    flex-direction: column !important;
    display: flex !important;
}
footer {
    margin-top:auto;
}


/* ### ############ ### */
/* ### HEADER LOGIN ### */
/* ### ############ ### */
.admin-bar header#header{
    top: 32px;
}

/* ### ########### ### */
/* ### MAIN LAYOUT ### */
/* ### ########### ### */
#main{
    position: relative;
    margin-top: 0px;
    overflow: hidden;
}
#main > .img-banner{
    height: 525px;
    width: 100%;
    object-fit: cover;
    background: rgba(0,0,0,.2);
}
.container{
    position: relative;
    width: 100%;
    max-width: 1320px;
    padding: 0;
    margin: 0 auto;
}
.container.no-margin,
.container.has-background {
    margin: 0;
    max-width: initial;
}
.container.container-col {
    display: flex;
    gap: 56px;
}
.container.container-col .left {
    width: calc(30% - 28px);
}
.container.container-col .right {
    width: calc(70% - 28px);
}
.container.has-background.blue {
    background-color: var(--bofema-bleu-clair);
}
.container .container-inner {
    padding: 72px 0;
}
.container.no-margin .container-inner {
    padding: 0;
}
.container.has-background .container-inner{
    position: relative;
    margin: 0 auto;
    width: 100%;
    max-width: 1320px;
}
.page-content{
    margin: 80px auto;
}
.main-content{
    margin-top: 32px;
}
.main-col{
    width: 100%;
    padding: 0 80px;
}
