*:not(.top-header *), :after, :before {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.fvo__yt-banner {
    position: relative;
}
.fvo__yt-banner .fvo__yt {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.fvo__yt-foreground {
    background: black;
    opacity: 0.5;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.headerFVO-decompte.fvo-active {
    padding-bottom: 0;
}

.fvo__contact {
    background: #F2F2F2;
    margin-top: -120px;
    padding: 170px 0 50px;
    position: relative;
    z-index: 1;
}
.fvo__contact-title {
    font-size: 29px;
    line-height: 32px;
    text-align: center;
    font-weight: 700;
}
.fvo__form-content {
    max-width: 600px;
    width: 100%;
}
.fvo__contact-form {
    margin-top: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.fvo__form-label,
.fvo__form-input {
    width: 100%;
}
.fvo__form-label {
    font-size: 16px;
}
.fvo__form-input {
    margin-bottom: 12px;
    border-radius: 5px;
    border: 1px solid #D4D4D4;
    height: 40px;
}
.fvo__form-required {
    font-size: 12px;
    line-height: 14px;
    color: #707070;
}
.fvo__game-form select {
    width: 100%;
}
.fvo__form-submit,
.fvo__game-form-submit {
    height: 50px;
    line-height: 50px;
    padding: 0 22px;
    font-size: 18px;
    text-transform: uppercase;
    border: none;
    background: #1167ff;
    color: white;
    float: right;
    margin-top: 15px;
}
.fvo__form-submit:hover,
.fvo__game-form-submit:hover {
    background: #15a1ff;
}

.fvo_legal-notice {
    max-width: 600px;
    font-size: 12px;
    color: #707070;
    margin: auto;
}


.fvo__credit.description{
    padding: 0;
    margin-top: 120px;
    border: none;
}
.fvo__credit--teaser.description  {
    background: #F2F2F2;
    border: none;
    margin-top: 50px;
    margin-bottom: 100px;
}
.fvo__game {
    margin-top: 60px;
    margin-bottom: 60px;
}
.fvo__game-title {
    font-size: 29px;
    line-height: 42px;
    font-weight: 700;
    text-align: center;
}
.fvo__game-subtitle {
    margin-top: 25px;
    font-size: 16px;
    line-height: 20px;
    text-align: center;
}
.fvo__game-legal-notice {
    margin-top: 15px;
    font-size: 16px;
    line-height: 20px;
}
.fvo__game-frame {
    margin: 60px 0 0;
    width: 400px;
    height: 710px;
    border-radius: 8px;
}
.fvo__game-form {
    max-width: 680px;
    margin: 45px auto 0;
}
.fvo__game-form__button {
    width: 100%;
    text-align: right;
}
.toggle_switch.projet_contact input:checked + .slider{
    background-color: #10B999;
}
.toggle_switch.projet_contact input:focus + .slider {
    box-shadow: 0 0 1px #10B999;
}
.toggle_switch .switch {
    margin-left: 5px;
}
.newsletter{
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
}
.newsletter .newsletter-right{
    float: right;
    width: 92%;
    font-size: 12px;
    line-height: 12px;
    margin-top: 11px;
}
.description__picture {
    margin-top: -40px
}
.fvo__logos {
    position: relative;
    height: 300px;
    margin: 50px auto;
}
.fvo__logo {
    display: block;
    height: 300px;
}
.fvo__logo--intro {
    position: absolute;
    width: 100%;
    height: 100%;
    background: white;
    z-index: 1;
}
.fvo__facebook {
    background: #F0F2F5;
    position: relative;
}
.fvo__facebook-header {
    padding: 60px 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.fvo__facebook-logo {
    width: 80px;
    margin-right: 30px;
}
.fvo__facebook-title {
    font-size: 26px;
    line-height: 32px;
    font-weight: 700;
}
.taggbox {
    max-width: 1500px;
    width: 100%;
    margin: 0 auto;
}
.fvo__prix {
    padding: 100px 0;
    background: #F2F2F2;
    margin: 80px auto 120px;
}
.fvo__prix-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}
.fvo__prix--teaser {
    margin-top: 0;
    padding: 100px 0 0;
    background: none;
}
.fvo__prix--active {
    margin-bottom: 80px;
}
.fvo__prix-content {
    margin-right: 20px;
    flex: 1;
}
.fvo__prix-title {
    font-size: 29px;
    line-height: 32px;
    font-weight: 700;
}
.fvo__prix-subtitle {
    font-size: 16px;
    line-height: 20px;
    margin-top: 15px;
}
.fvo__prix-picture {
    margin-left: 20px;
    height: 200px;
    object-fit: cover;
    object-position: top;
    flex: 1;
}
.fvo__prix-button {
    background: #EB5F5E;
    height: 50px;
    line-height: 50px;
    padding: 0 15px;
    font-size: 16px;
    color: white;
    text-align: center;
    display: inline-block;
    margin-top: 20px;
    float: right;
}
.fvo__prix-button:hover {
    color: white;
}
.fvo__landing-banner {
    margin: 55px 0 62px 0;
    position: relative;
    text-align: center;
}
.fvo__landing-banner-footer {
    position: relative;
}
.fvo__landing-banner-footer-actif{
    position: relative;
    margin-top: -99px;
}
.concours-landing .fvo__landing-banner-footer-actif {
    margin-top: 0;
}
.opeFvoJeuConcoursTeaserExemple{
    position: absolute;
    width: 9%;
    height: 8%;
    bottom: 8%;
    left: 42%;
}
.opeFvoJeuConcoursBannerFooterExemple{
    position: absolute;
    right: 0;
    width: 8%;
    height: 8%;
    bottom: 5%;
}
.opeFvoJeuConcoursTeaserExemple--mobile{
    position: absolute;
    right: 56%;
    width: 27%;
    height: 5%;
    bottom: 40%;
}
.opeFvoJeuConcoursActifExemple{
    position: absolute;
    width: 9%;
    height: 8%;
    bottom: 4%;
    left: 38%;
}
.opeFvoJeuConcoursActifExemple--mobile{
    position: absolute;
    right: 67%;
    width: 27%;
    height: 5%;
    bottom: 35%;
}
.opeFvoExemple {
    position: absolute;
    width: 9%;
    height: 8%;
    bottom: 2%;
    left: 17%;
}
.opeFvoExemple--mobile {
    position: absolute;
    right: 70%;
    width: 27%;
    height: 5%;
    bottom: 39%;
}
.opeFvoActif {
    position: absolute;
    width: 8%;
    height: 8%;
    bottom: 2%;
    left: 42%;
}

.opeFvoActif--mobile {
    position: absolute;
    right: 72%;
    width: 27%;
    height: 4%;
    bottom: 38%;
}
.opeFvoFooterExemple {
    position: absolute;
    right: 0;
    width: 8%;
    height: 8%;
    bottom: 5%;
}
.opeFvoFooterExemple--mobile {
    position: absolute;
    right: 73%;
    width: 24%;
    height: 5%;
    bottom: 39%;
}
.fvo__regle,
.fvo__reseau {
    text-align: center;
}
.fvo__regle-title,
.fvo__reseau-title
{
    font-size: 36px;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 42px;
    color: #EB5F5E;
}
.fvo__reseau-title {
    color: #000;
}

.fvo__regle-content,
.fvo__reseau-content {
    font-size: 16px;
    line-height: 20px;
}

.fvo__reseau-content {
    margin-bottom: 50px;
}

.fvo__reseau {
    margin-top: 62px;
}
.fvo__map {
    box-shadow: 0px 10px 20px #00000029;
    position: relative;
    z-index: 2;
}
.fvo__map #map {
    height: 551px;
}

.fvo__map #map * {
    box-sizing: unset;
}
.fvo__info-map-content {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.fvo__info-map-content div {
    display: flex;
    width: 240px;
}
.fvo__info-map-content div img {
    margin-right: 13px;
}
.fvo__info-map-content span {
    font-weight: bold;
    font-size: 16px;
    line-height: 20px;
}
.fvo-facebook{
    margin-top: 80px;
    font-size: 26px;
    line-height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: #424242;
}
.fvo-facebook__icon {
    margin-right: 30px;
    width: 80px;
    height: 80px;
}
.fvo-facebook__target:focus,
.fvo-facebook__target:active,
.fvo-facebook__target:hover {
    text-decoration: none;
    outline: none;
    color: #F76853;
}

.fvo__carousel .content{
    position: relative;
}
.fvo__carousel-title {
    font-weight: bold;
    font-size: 26px;
    line-height: 40px;
    text-align: center;
    margin-bottom: 39px;
}

.festival-landing .fvo__carousel {
    padding-bottom: 140px;
}
.festival-landing .fvo__regle {
    margin-top: 80px;
}
.ew-montant {
    display: flex;
    align-items: center;
    justify-content: center;
}
.ew-montant__content {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-right: 10px;
}
.ew-montant__title {
    color: #707070;
    font-size: 10px;
    line-height: 12px;
}

.description-container {
    background-color: #000;
    color: #fff;
    overflow: hidden;
}

.description-container .description-item {
    display: flex;
    border-bottom: 1px solid #656565;
    align-items: center;
    margin: 20px auto;
    width: 65%;
    position: relative;
}

.description-container .description-item h2 {
    position: relative;
    font-size: 29px;
}
.description-container .description-item hr {
    border: 1px solid #656565;
    margin: 20px auto;
    width: 115%
}

.description-container .description-item .img-container {
    max-width: 55%;
    position: absolute;
    right: -32%;
}

.description-container .description-item .img-container__active {
    position: absolute;
    right: -32%;
}


.description-container .description-item:last-child {
    border-bottom: none;
}

.description-container .description-item .description-item__content{
    display: flex;
}

.description-container .description-item .description-item__content div:last-child{
    margin-left: 50px;
}
.description-container .description-item .description-item__content:first-child div:last-child{
    margin-left: 0;
}

.description-container .description-item .description-ancher {
    color: #85CCD3;
}

.btn-container {
    display: flex;
}

.btn-container .btn-cta {
    width: 270px;
}

.btn-cta {
    background-color: #1167ff;
    padding: 15px 15px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    font-size: 16px;
    display: inline-block;
    margin: 15px 5px 0;
}

.btn-cta:hover, .btn-cta:focus {
    color: white;
    background-color: #108DF2;
    text-decoration: none;
}

.btn-cta.btn-ocre {
    background-color: #C08000;
}

.btn-cta.btn-ocre:hover {
    background-color: #B07000;
}

.btn-cta.btn-red {
     background-color: #db2935;
 }

.btn-cta.btn-red:hover {
    background-color: #c1212b;
}

.btn-cta.btn-azure {
    background-color: #00C7B8;
}

.btn-cta.btn-azure:hover {
    background-color: #00A798;
}

.description-container .show-ml {
    color: #fff;
    text-decoration: underline;
}

.other-services {
    text-align: center;
    margin: 70px 0;
}

.other-services .services {
    display: flex;
    justify-content: center;
    margin-top: 60px;
}

.other-services .services .service {
    background-color: #F8F9FB;
    max-width: 225px;
    box-shadow: 0 3px 6px #00000029;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 20px 15px;
    margin: 0 10px;
}

.other-services .services .service h4 {
    text-transform: uppercase;
}

.other-services .services .service p {
    font-size: 16px;
}

.other-services .services .service a {
    font-size: 16px;
}

.azure {
    color: #00C7B8;
}

.other-services .btn-cta {
    margin: 15px 0 0;
}

.social-medias-container {
    background-color: #F2F2F2;
    text-align: center;
    padding: 60px 0;
}

.social-medias-container .social-medias {
    display: flex;
    justify-content: center;
    margin-top: 30px;
}

.social-medias .media {
    width: 80px;
    margin: 0 10px;
}

.banner_ope .content {
    box-shadow: 0px 3px 20px #00000029;
    margin-bottom: 120px;
    position: relative;
}
.banner_ope__title {
    margin-top: 114px;
    margin-bottom: 52px;
    font-size: 36px;
}

@media (max-width: 1855px) {
    .description-container .description-item hr {
        width: 120%
    }
}

@media (max-width: 1650px) {
    .description-container .description-item .img-container__active {
        right: -45%;
    }
    .description-container .description-item .img-container {
        max-width: 65%;
        right: -32%;
    }
    .description-container .description-item hr {
        width: 125%
    }
}
@media (max-width: 1530px) {
    .description-container .description-item .img-container__active {
        right: -65%;
    }
}
@media (max-width: 1420px) {
    .description-container .description-item .img-container {
        max-width: 65%;
        right: -32%;
    }
    .description-container .description-item hr {
        width: 100%
    }
}
@media (max-width: 1250px) {
    .description-container .description-item .img-container__active {
        right: -80%;
    }
    .description-container .description-item hr {
        width: 100%
    }
}
@media (max-width: 1200px) {
    .description-container .description-item .img-container {
        max-width: 80%;
        right: -55%;
    }
    .description-container .description-item hr {
        width: 100%
    }
}
@media (max-width: 1150px) {
    .description-container .description-item .img-container__active {
        right: -95%;
    }
    .description-container .description-item hr {
        width: 100%
    }
}
@media (max-width: 970px) {
    .description-container .description-item .img-container__active {
        right: -115%;
    }
    .description-container .description-item .img-container {
        max-width: 100%;
        right: -85%;
    }
    .description-container .description-item hr {
        width: 100%
    }
}

@media (min-width: 770px) {
    .fvo__landing-banner-footer-actif{
        margin-bottom: 138px;
    }
    .concours-landing .fvo__landing-banner-footer-actif {
        margin-bottom: 50px;
    }
    .fvo__landing-banner-footer {
        margin-top: 100px;
        margin-bottom: 129px;
    }
    .fvo__info-map {
        margin-bottom: 55px;
    }
    .fvo__info-map-content div:first-child {
        margin-right: 60px;
    }

    .description-container .description-item {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    .fvo__carousel-title {
        font-size: 28px;
        line-height: 32px;
        margin-top: 26px;
        margin-bottom: 16px;
    }

    .fvo__info-map-content div:first-child{
        margin-bottom:20px;
    }
    .fvo__info-map-content {
        margin-bottom: 42px;
    }
    .fvo__regle-title,
    .fvo__reseau-title,
    .fvo__header-title{
        font-size: 28px;
        line-height: 32px;
    }
    .fvo__reseau-title,
    .fvo__header-title{
        padding: 0 15px;
    }
    .fvo__header {
        margin-bottom: 20px;
    }
    .fvo__landing-banner {
        margin-top: 30px
    }

    .fvo-facebook {
        flex-direction: column;
        text-align: center;
    }

    .fvo-facebook .fvo-facebook__icon {
        margin-right: 0;
        margin-bottom: 15px;
    }

    #rechercheconcession.newForm input#codepostal {
        min-width: inherit;
    }
    .fvo__logos {
        margin: 0;
        height: 220px;
    }
    .fvo__logo {
        height: 220px;
    }
    .fvo__prix-wrapper {
        flex-direction: column-reverse;
    }
    .fvo__reseau {
        margin-top: 15px;
    }
    .fvo__reseau-title {
        font-size: 18px;
        line-height: 24px;
        padding: 0 20px;
    }
    .fvo__reseau-title {
        margin-bottom: 10px;
    }
    .fvo__reseau-content {
        padding: 0 20px;
    }
    .search-dealership-form {
        padding: 0 20px;
    }
    .fvo__map #map {
        height: 370px;
    }

    .fvo__carousel-title {
        margin-top: 0;
        font-size: 18px;
        line-height: 24px;
        padding: 0 20px;
    }
    .fvo__game-frame {
        height: 710px;
        margin: 20px 0 0;
        width: 100%;
        max-width: 400px;
    }
    .fvo__game {
        margin-top: 20px;
    }
    .fvo__game-title {
        font-size: 18px;
        line-height: 24px;
        padding: 0 20px;
    }
    .fvo__game-subtitle {
        padding: 0 20px;
        margin-top: 20px;
    }
    .fvo__game-legal-notice {
        padding: 0 20px;
    }
    .fvo__credit.description {
        margin-top: 60px;
        padding-bottom: 40px;
    }
    .description__picture {
        margin-bottom: 20px;
    }
    .description__wrapper {
        padding: 0 20px;
    }
    .fvo__credit .description__title {
        font-size: 18px;
        line-height: 24px;
        text-align: center;
        font-weight: 700;
    }
    .fvo__credit .description__content {
        margin-top: 15px;
    }
    .fvo__credit .description__button {
        margin-top: 15px;
    }
    .fvo__prix {
        margin: 20px 0;
        padding: 0 20px;
    }
    .fvo__prix--active {
        padding: 30px 20px;
    }
    .fvo__prix-picture {
        margin-left: 0;
    }
    .fvo__prix-content {
        margin-top: 20px;
        margin-right: 0;
    }
    .fvo__prix-title {
        font-size: 18px;
        line-height: 24px;
        text-align: center;
    }
    .fvo__facebook-header {
        flex-direction: column;
        text-align: center;
        padding: 20px;
    }
    .fvo__facebook-logo {
        margin: 0 0 10px 0;
        width: 60px;
    }
    .fvo__facebook-title {
        font-size: 16px;
        line-height: 22px;
    }
    .fvo__facebook-title .fvo-color {
        font-size: 20px;
        line-height: 22px;
        display: block;
        margin-top: 10px;
    }
    .fvo__carousel .carousel-control.left {
        left: 0px;
    }
    .fvo__carousel .carousel-control.right {
        right: 0px;
    }
    .fvo__contact {
        margin-top: 0;
        padding: 20px;
    }
    .fvo__contact-title {
        font-size: 18px;
        line-height: 24px;
    }
    .fvo__contact-form {
        margin-top: 20px;
    }
    .fvo__form-label {
        font-size: 18px;
    }
    .fvo__game-form {
        margin-left: 20px;
        margin-right: 20px;
    }
    .fvo__game-form label{
        font-size: 16px;
    }
    .fvo__form-submit,
    .fvo__game-form-submit {
        width: 100%;
    }
    .fvo__prix--teaser {
        padding: 20px;
    }
    .fvo__prix-button {
        float: none;
        display: block;
    }

    .description-container .description-item {
        flex-direction: column;
        margin: 0;
        width: 100%;
    }

    .description-container .description-item .teasing-description-item__wrapper {
        padding: 20px;
    }

    .description-container .description-item .description-item__wrapper,
    .description-container .description-item img {
        margin: 27px auto;
        text-align: center;
    }

    .description-container .description-item h2 {
        font-size: 18px;
        line-height: 24px;
    }

    .description-container .description-item p {
        margin: 0;
    }

    .description-container .description-item hr {
        margin: 30px auto;
    }

    .description-container .description-item .img-container {
        background-image: url('../../../operation/fvo/2022-03/landing/background-voitures-mobile.svg');
        background-position: top;
        height: 244px;
        width: 100%;
        position: relative;
        right: 0;
        margin-bottom: 0;
    }

    .description-container .description-item .description-item__wrapper {
        padding: 0 20px;
    }

    .description-container .description-item .description-item__content{
        flex-direction: column;
        margin-top: 0;
        margin-bottom: 0;
    }
    .description-container .description-item .img-container__active {
        background-image: url('../../../operation/fvo/2022-03/landing/background-voitures-mobile.svg');
        background-position: top;
        height: 244px;
        width: 100%;
        position: relative;
        right: 0;
        margin-bottom: 0;
    }
    .description-container .description-item .description-item__content div:last-child{
        margin-left: 0;
    }

    .btn-container {
        flex-direction: column;
    }

    .btn-cta {
        width: 100%;
        margin-left: 0;
    }

    .fvo__map {
        box-shadow: none;
    }

    .other-services {
        margin: 25px 20px;
    }

    .other-services .services {
        flex-direction: column;
        margin-top: 15px;
    }

    .other-services h2,
    .social-medias-container h2 {
        font-size: 18px;
        line-height: 24px;
    }

    .other-services .services .service {
        margin: 10px 0;
        max-width: unset;
        width: 100%;
    }

    .social-medias-container {
        padding: 30px 20px;
    }

    .social-medias .media {
        width: 50px;
    }

    .banner_ope__title {
        margin-top: 33px;
        margin-bottom: 12px;
        font-size: 18px;
        line-height: 24px;
    }
    .banner_ope{
        margin-right: 10px;
        margin-left: 10px;
    }
    .banner_ope .content{
        margin-bottom: 32px;
    }

    .btn-container .btn-cta {
        margin: 15px auto 0;
    }
}
