.smartsection {
    overflow: hidden;
}
.smartsection .col-sm-6:first-of-type {
    padding-top: 30px;
}
.smartsection .col-sm-6:last-of-type {
    padding-top: 10px;
}
@media (min-width: 768px) {
    .smartsection .col-sm-6:first-of-type {
        padding-left: 15px;
        padding-right: 0;
        padding-top: 0;
    }
    .smartsection .col-sm-6:last-of-type {
        padding-left: 0;
        padding-right: 15px;
        padding-top: 0;
    }
    .smartsection .col-sm-6.col-sm-push-6:first-of-type {
        padding-right: 15px;
        padding-top: 0;
    }
    .smartsection .col-sm-6.col-sm-pull-6:last-of-type {
        padding-left: 15px;
        padding-right: 0;
    }
}

.smartsection .txt {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    opacity: 0;
    transition: opacity .75s, transform .75s;
    transition-delay: .5s;
    transform: translateY(100px);
}
.smartsection.active .txt {
    opacity: 1;
    transform: none;
}
    .smartsection .txt h2 {
        text-transform: uppercase;
        font-size: 22px;
    }
    @media (min-width: 768px) {
        .smartsection .txt h2 {
            font-size: 24px;
        }
    }
    @media (min-width: 992px) {
        .smartsection .txt h2  {
            font-size: 26px;
        }
    }
    @media (min-width: 1200px) {
        .smartsection .txt h2 {
            font-size: 28px;
        }
    }
    .smartsection:first-of-type .txt h2 {
        text-transform: uppercase;
        font-size: 26px;
    }
    @media (min-width: 768px) {
        .smartsection:first-of-type .txt h2 {
            font-size: 28px;
        }
    }
    @media (min-width: 992px) {
        .smartsection:first-of-type .txt h2  {
            font-size: 30px;
        }
    }
    @media (min-width: 1200px) {
        .smartsection:first-of-type .txt h2 {
            font-size: 32px;
        }
    }
    .smartsection:not(.sm_1col_1txt_collapse) .txt h3 {
        line-height: 1.1;
        font-family: 'FontFaceBold', Arial, Helvetica, sans-serif;
        padding: 10%;
        font-size: 28px;
    }
    @media (min-width: 768px) {
        .smartsection:not(.sm_1col_1txt_collapse) .txt h3 {
            font-size: 30px;
        }
    }
    @media (min-width: 992px) {
        .smartsection:not(.sm_1col_1txt_collapse) .txt h3  {
            font-size: 32px;
        }
    }
    @media (min-width: 1200px) {
        .smartsection:not(.sm_1col_1txt_collapse) .txt h3 {
            font-size: 34px;
        }
    }
    .smartsection .txt .cta {
        display: flex;
        justify-content: flex-start;
        padding-top: 20px;
    }
        .smartsection .txt .cta > a {
            transform: scale(1.3);
            transform-origin: left center;
            border-radius: 999px;
            border: 2px solid #ffed00;
            padding: 6px 15px 6px 28px;
            background-position: 10px center;
            font-family: 'FontFaceBold', Arial, Helvetica, sans-serif;
            transition: background-position .25s, border-color .25s;
            margin-bottom: 15px;
        }
        @media (min-width: 768px) {
            .smartsection .txt .cta > a {
                margin-bottom: 0;
            }
        }
        .smartsection .txt .cta > a:hover {
            background-position: 12px center;
            border-color: #434342;
        }

.smartsection .img {
    position: relative;
    /*background-color: #f3f4f4;*/
    display: flex;
    opacity: 0;
    transition: opacity .75s, transform .75s;
}
/*.smartsection .img.loaded {
    background-color: transparent;
}
.smartsection .img.loading {
    padding-bottom: 100%;
}
.smartsection .img.loading::before {
    content: '';
    background-image: url('../../../../images/layouts/lazyLoader.svg');
    background-position: center;
    height: 44px;
    width: 44px;
    background-size: 44px 44px;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}*/
.smartsection .col-sm-6:not(.col-sm-pull-6) .img {
    transform: translateX(25%);
}
.smartsection .col-sm-6.col-sm-pull-6 .img {
    transform: translateX(-25%);
}
.smartsection .img {
    max-width: 345px;
    max-height: 345px;
    margin-left: auto;
    margin-right: auto;
}
@media (min-width: 992px) {
    .smartsection .img {
        max-width: initial;
        max-height: initial;
    }
}
.smartsection.active .img {
    transform: none !important;
    opacity: 1;
    aspect-ratio: 1 / 1;
}
    .smartsection .img a {
        width: 100%;
        height: 100%;
        display: block;
    }
        .smartsection .img picture,
        .smartsection .img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            aspect-ratio: 1 / 1;
        }
@media (min-width: 768px) {
    .smartsection.sm_2col_2img .col-sm-6.col-sm-push-6:first-of-type {
        padding-right: 0;
    }
}
.sm_1col_1txt {
    padding: 35px 0 30px 0;
}
.sm_1col_1txt_centered {
    padding: 70px 0 60px 0;
}
    .sm_1col_1txt_centered h2 {
        text-align: center;
    }
    @media (min-width: 768px) {
        .smartsection .col-sm-6:first-of-type .txt {
            padding-right: 15px;
        }
        .smartsection .col-sm-6:last-of-type .txt {
            padding-left: 15px;
        }
        .smartsection .col-sm-6.col-sm-push-6:first-of-type .txt {
            padding-left: 5px;
            padding-right: 0;
        }
        .smartsection .col-sm-6.col-sm-pull-6:last-of-type .txt {
            padding-right: 15px;
            padding-left: 0;
        }
    }
    @media (min-width: 992px) {
        .smartsection .col-sm-6:first-of-type .txt {
            padding-right: 25px;
        }
        .smartsection .col-sm-6:last-of-type .txt {
            padding-left: 25px;
        }
        .smartsection .col-sm-6.col-sm-push-6:first-of-type .txt {
            padding-left: 15px;
            padding-right: 0;
        }
        .smartsection .col-sm-6.col-sm-pull-6:last-of-type .txt {
            padding-right: 25px;
            padding-left: 0;
        }
    }
    @media (min-width: 1200px) {
        .smartsection .col-sm-6:first-of-type .txt {
            padding-right: 35px;
        }
        .smartsection .col-sm-6:last-of-type .txt {
            padding-left: 35px;
        }
        .smartsection .col-sm-6.col-sm-push-6:first-of-type .txt {
            padding-left: 25px;
            padding-right: 0;
        }
        .smartsection .col-sm-6.col-sm-pull-6:last-of-type .txt {
            padding-right: 35px;
            padding-left: 0;
        }
    }

.sm_1col_1img {
    padding: 30px 0;
}
.sm_1col_1img:nth-child(even) {
    background-color: white;
}
.sm_1col_1img:nth-child(odd) {
    background-color: #ededed;
}
@media (min-width: 768px){
    .sm_1col_1img {
        padding: 50px 0;
    }
}
    .sm_1col_1img .txt {
        height: auto;
    }
        .sm_1col_1img .txt h2 {
            text-align: center;
            margin-bottom: 30px;
        }
        @media (min-width: 768px){
            .sm_1col_1img .txt h2 {
                margin-bottom: 50px;
            }
        }
    .sm_1col_1img .img {
        max-width: 100%;
        max-height: 500px;
        aspect-ratio: initial !important;
        transform: translateY(50%);
        opacity: 0;
        transition: opacity .5s, transform .5s;
        transition-delay: 1.5s;
    }
    .sm_1col_1img.active .img {
        transform: none;
        opacity: 1;
    }
        .sm_1col_1img .img picture,
        .sm_1col_1img .img img {
            max-height: 500px;
            object-fit: contain;
            aspect-ratio: initial !important;
        }
.sm_1col_1txt_collapse {
    padding: 35px 0;
}
.sm_1col_1txt_collapse + .sm_1col_1txt_collapse {
    padding: 0 0 35px 0;
    margin-top: -20px;
}
    .sm_1col_1txt_collapse h2 {
        line-height: 1;
        margin-bottom: 0;
        padding: 11px 0 8px 0;
        border-top: 1px solid rgba(56, 56, 55, 0.5);
        border-bottom: 1px solid rgba(56, 56, 55, 0.5);
        cursor: pointer;
    }
    .sm_1col_1txt_collapse h2::before {
        content: '>';
        color: #ffed00;
        padding-right: 15px;
        display: inline-block;
        transform: translateY(-2px);
        transition: transform .25s;
    }
    .sm_1col_1txt_collapse:hover h2::before {
        color: #383837;
    }
    .sm_1col_1txt_collapse.opened h2::before {
        transform: translate(-6px, 6px) rotate(90deg);
    }
    .sm_1col_1txt_collapse .html {
        overflow: hidden;
        padding-top: 20px;
        padding-left: 40px;
        max-height: 0;
        transition: max-height .75s ease;
    }
    .sm_1col_1txt_collapse.opened .html {
        height: auto;
        max-height: 9999px; /* still have to hard-code a value! */
    }
        .sm_1col_1txt_collapse .html * {
            opacity: 0;
            transition: opacity .25s;
        }
        .sm_1col_1txt_collapse.opened .html * {
            opacity: 1;
            transition-delay: .5s;
        }

.sm_4col_4img {
    padding: 0 0 30px 0;
}
.sm_4col_4img.active .col-sm-3:nth-child(2) .img {
    transition-delay: .25s;
}
.sm_4col_4img.active .col-sm-3:nth-child(3) .img {
    transition-delay: .5s;
}
.sm_4col_4img.active .col-sm-3:nth-child(4) .img {
    transition-delay: .75s;
}
.sm_4col_4img:not(.active) .col-sm-3 .img {
    transition-delay: 0s !important;
}
.sm_4col_4img .col-sm-3 .img {
    margin-bottom: 20px;
    max-width: 255px;
    max-height: 255px;
}
@media (min-width: 768px) {
    .sm_4col_4img .col-sm-3 .img {
        margin-bottom: 0;
    }
}

.sm_pictos_grey {
    background-color: #f3f4f4;
}
.sm_pictos_yellow {
    background-color: #ffed00;
}
    .sm_pictos .col-sm-12 {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 0 15px 35px 15px;
    }
    @media (min-width: 768px){
        .sm_pictos .col-sm-12 {
            padding: 0 65px 35px 65px;
        }
    }
        .sm_pictos .picto {
            position: relative;
            margin-top: 35px;
            width: 20%;
            box-sizing: content-box;
        }
        .sm_pictos .picto:not(:first-of-type):not(:nth-child(5)) {
            padding-left: calc(10% - 0.5px);
        }
        .sm_pictos .picto:not(:nth-child(3)):not(:last-of-type) {
            border-right: 1px solid #ffed00;
            padding-right: calc(10% - 0.5px);
        }
        .sm_pictos.sm_pictos_yellow .picto:not(:nth-child(3)):not(:last-of-type) {
            border-right: 1px solid #ffffff;
        }
        .sm_pictos .picto:nth-child(5)::before,
        .sm_pictos .picto:nth-child(6)::before,
        .sm_pictos .picto:nth-child(7)::before {
            content: '';
            display: block;
            position: absolute;
            top: -17px;
            height: 1px;
            background-color: #ffed00;
        }
        .sm_pictos.sm_pictos_yellow .picto:nth-child(5)::before,
        .sm_pictos.sm_pictos_yellow .picto:nth-child(6)::before,
        .sm_pictos.sm_pictos_yellow .picto:nth-child(7)::before {
            background-color: #ffffff;
        }
        .sm_pictos .picto:nth-child(5)::before {
            width: calc(100% + 32.5px);
            right: 17px;
        }
        .sm_pictos .picto:nth-child(6)::before {
            width: calc(100% - 32.5px);
            right: 17px;
        }
        .sm_pictos .picto:nth-child(7)::before {
            width: calc(100% + 32.5px);
            left: 17px;
        }
            .sm_pictos img {
                width: 100%;
                opacity: 0;
                transform: scale(0.5);
                transition: opacity .5s, transform .5s;
            }
            .sm_pictos.active img {
                opacity: 1;
                transform: none;
            }
        .sm_pictos .picto-break {
            flex-basis: 100%;
            height: 0;
        }
.sm_companies {
    position: relative;
    background-color: rgba(255, 237, 0, 0.1);
    padding: 30px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (min-width: 768px){
    .sm_companies {
        padding: 50px 0;
    }
}
    .sm_companies .container {
        overflow: hidden;
    }
        .sm_companies h2 {
            color: #383837;
            text-align: center;
            font-size: 26px;
            padding-left: 15px;
            padding-right: 15px;
            padding-bottom: 30px;
            margin: 0;
        }
        @media (min-width: 768px) {
            .sm_companies h2 {
                font-size: 34px;
                padding-bottom: 20px;
            }
        }
        @media (min-width: 992px) {
            .sm_companies h2 {
                font-size: 38px;
                padding-bottom: 30px;
            }
        }
        @media (min-width: 1200px) {
            .sm_companies h2 {
                font-size: 46px;
                padding-bottom: 35px;
            }
        }
        .sm_companies .thumbnail > a {
            position: relative;
        }
            .sm_companies picture,
            .sm_companies img {
                position: absolute;
                top: 0;
                left: 0;
                width: 100% !important;
                height: 100% !important;
                object-fit: contain;
                object-position: center;
            }
        .sm_companies img {
            opacity: 0;
            transition: opacity .5s;
        }
        .sm_companies img.lazyloaded {
            opacity: 1;
        }
        .sm_companies .owl-carousel {
            position: relative;
            width: calc(100% - 80px);
            margin-bottom: 20px;
            margin-left: 40px;
        }
            .sm_companies .owl-carousel .owl-nav {
                position: absolute;
                top: 50%;
                margin: -40px 0 0 -40px;
                width: calc(100% + 80px);
                display: flex;
                justify-content: space-between;
            }
                .sm_companies .owl-carousel .owl-nav svg {
                    height: 80px;
                    width: 22px;
                }
.sm_brochures_videos {
    position: relative;
    padding: 30px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (min-width: 768px){
    .sm_brochures_videos  {
        padding: 50px 0;
    }
}
    .sm_brochures_videos .thumbnail  {
        width: 100%;
    }
        .sm_brochures_videos .embed-responsive-3by2  {
            padding-bottom: 66.666%;
        }
    .sm_brochures_videos .owl-carousel {
        position: relative;
        width: calc(100% - 80px);
        margin-bottom: 20px;
        margin-left: 40px;
    }
        .sm_brochures_videos .owl-carousel .owl-nav {
            position: absolute;
            top: 50%;
            margin: -40px 0 0 -40px;
            width: calc(100% + 80px);
            display: flex;
            justify-content: space-between;
        }
            .sm_brochures_videos .owl-carousel .owl-nav svg {
                height: 80px;
                width: 22px;
            }

.sm_references #indexReferences {
    padding: 30px 0;
    min-height: auto;
}
@media (min-width: 768px){
    .sm_references #indexReferences {
        padding: 50px 0;
    }
}
    @media (min-width: 1200px) {
        .sm_references #indexReferences h2 {
            padding-bottom: 35px;
        }
    }

.sm_videos {
    padding: 60px 0 50px 0;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.sm_videos h2 {
    text-align: center;
    font-size: 26px;
    padding-bottom: 50px;
    margin: 0;
    opacity: 0;
    transition: opacity .25s;
}
@media (max-width: 767.9999px) {
    .sm_videos h2 {
        width: calc(100vw - 30px);
    }
}
    .sm_videos.active h2 {
        opacity: 1;
    }
    @media (min-width: 768px) {
        .sm_videos h2 {
            font-size: 32px;
            padding-bottom: 45px;
        }
    }
    @media (min-width: 992px) {
        .sm_videos h2 {
            font-size: 36px;
        }
    }
    @media (min-width: 1200px) {
        .sm_videos h2 {
            font-size: 40px;
            padding-bottom: 50px;
        }
    }
    @media (max-width: 767.9999px) {
        .sm_videos .container-fluid {
            width: 100vw;
            overflow: hidden;
        }
            .sm_videos .col-sm-4,
            .sm_videos .col-sm-8 {
                width: calc(100vw - 30px);
                height: auto;
                overflow: hidden;
            }
    }
    @media (min-width: 768px) {
        .sm_videos .col-sm-4 {
            height: 210px;
        }
    }
    @media (min-width: 992px) {
        .sm_videos .col-sm-4 {
            height: 280px;
        }
    }
    @media (min-width: 1200px) {
        .sm_videos .col-sm-4 {
            height: 345px;
        }
    }
        .sm_videos .col-sm-4 h3 {
            font-family: 'FontFaceBold', Arial, Helvetica, sans-serif;
            font-size: 15px;
            line-height: 15px;
            margin: 0 0 10px 0;
            text-align: left;
        }
        @media (min-width: 768px) {
            .sm_videos .col-sm-4 h3 {
                font-size: 18px;
                line-height: 15px;
                margin: 0 0 25px 0;
            }
        }
        @media (min-width: 992px) {
            .sm_videos .col-sm-4 h3 {
                font-size: 22px;
                line-height: 20px;
                margin: 0 0 30px 0;
            }
        }
        @media (min-width: 1200px) {
            .sm_videos .col-sm-4 h3 {
                font-size: 26px;
                line-height: 25px;
                margin: 0 0 40px 0;
            }
        }
        .sm_videos .col-sm-4 p {
            font-size: 15px;
        }
        @media (min-width: 768px) {
            .sm_videos .col-sm-4 p {
                font-size: 16px;
            }
        }
        @media (min-width: 992px) {
            .sm_videos .col-sm-4 p {
                font-size: 17px;
            }
        }
        @media (min-width: 1200px) {
            .sm_videos .col-sm-4 p {
                font-size: 18px;
            }
        }
    .sm_videos .container {
        position: relative;
    }
    .sm_videos .owl-carousel {
        opacity: 0;
        transform: translateY(50%);
        transition: all .5s;
        transition-delay: .5s;
    }
    .sm_videos.active .owl-carousel {
        transform: none;
        opacity: 1;
    }
        .sm_videos .owl-carousel .owl-dots {
            padding: 10px 0 10px 0;
            text-align: right;
            height: 35px !important;
        }
            .sm_videos .owl-carousel .owl-dot {
                display: inline-block;
                width: 15px !important;
                margin-left: 3px;
            }
                .sm_videos .owl-carousel .owl-dot span {
                    display: inline-block;
                    border-radius: 50%;
                    -webkit-border-radius: 50%;
                    -moz-border-radius: 50%;
                    width: 10px !important;
                    height: 10px !important;
                }
        @media (min-width: 992px)
        {
            .sm_videos .owl-carousel .owl-dots {
                padding: 15px 0 15px 0;
                height: 35px !important;
            }
                .sm_videos .owl-carousel .owl-dot {
                    width: 17px !important;
                    margin-left: 4px;
                }
                    .sm_videos .owl-carousel .owl-dot span {
                        width: 10px !important;
                        height: 10px !important;
                    }
        }
        @media (min-width: 1200px) {
            .sm_videos .owl-carousel .owl-dots {
                padding: 20px 0 20px 0;
                height: 35px !important;
            }
                .sm_videos .owl-carousel .owl-dot {
                    width: 19px !important;
                    margin-left: 5px;
                }
                    .sm_videos .owl-carousel .owl-dot span {
                        width: 10px !important;
                        height: 10px !important;
                    }
        }
    .sm_videos .seeAllBtn {
        color: #6f6f6e !important;
        display: block;
        text-decoration: none;
        text-transform: uppercase;
        float: right;
        font-size: 12px;
        line-height: 12px;
        margin: 0;
        padding: 7px 0 5px 28px;
        opacity: 0;
        transform: translateX(-100px);
        transition: all .25s;
        transition-delay: 1s;
    }
    .sm_videos.active .seeAllBtn {
        opacity: 1;
        transform: none;
    }
    .sm_videos .seeAllBtn::before {
        display: inline-block;
        content: '>';
        color: #ffed00;
        margin-top: -1px;
        margin-right: 8px;
        vertical-align: text-top;
        font-size: 10px;
    }
    .sm_videos .seeAllBtn:hover::before {
        color: #6f6f6e
    }
    @media (min-width: 768px) {
        .sm_videos .seeAllBtn {
            font-size: 13px;
            line-height: 13px;
            padding: 8px 0 6px 29px;
        }
    }
    @media (min-width: 992px) {
        .sm_videos .seeAllBtn {
            font-size: 14px;
            line-height: 14px;
            padding: 8px 0 4px 30px;
            margin: 12px 0 0 0;
        }
    }
    @media (min-width: 1200px) {
        .sm_videos .seeAllBtn {
            font-size: 15px;
            line-height: 15px;
            padding: 8px 0 4px 31px;
            margin: 15px 0 0 0;
        }
    }


.sm_pages {
    padding: 60px 0 50px 0;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #e7e7e7;
}
    .sm_pages h2 {
        text-align: center;
        font-size: 26px;
        padding-bottom: 50px;
        margin: 0;
        opacity: 0;
        transition: opacity .25s;
    }
    .sm_pages.active h2 {
        opacity: 1;
    }
    @media (min-width: 768px) {
        .sm_pages h2 {
            font-size: 32px;
            padding-bottom: 45px;
        }
    }
    @media (min-width: 992px) {
        .sm_pages h2 {
            font-size: 36px;
        }
    }
    @media (min-width: 1200px) {
        .sm_pages h2 {
            font-size: 40px;
            padding-bottom: 50px;
        }
    }
    .sm_pages .container  {
        position: relative;
    }
    .sm_pages .owl-carousel {
        opacity: 0;
        transform: translateY(50%);
        transition: all .5s;
        transition-delay: .5s;
    }
    @media (max-width: 767.9999px) {
        .sm_pages .owl-carousel {
            max-width: calc(100vw - 60px);
        }
    }
    .sm_pages.active .owl-carousel {
        transform: none;
        opacity: 1;
    }
        .sm_pages.active .owl-stage {
            display: flex;
        }
            .sm_pages .owl-item {
                height: inherit;
            }
            .sm_pages .item,
            .sm_pages .item a {
                height: 100%;
            }
    /* dots */
    .sm_pages .owl-carousel .owl-dots {
        padding: 10px 0 10px 0;
        text-align: right;
        height: 35px !important;
    }
    @media (min-width: 992px) {
        .sm_pages .owl-carousel .owl-dots {
            padding: 15px 0 15px 0;
        }
    }
    @media (min-width: 1200px) {
        .sm_pages .owl-carousel .owl-dots {
            padding: 20px 0 20px 0;
        }
    }
        .sm_pages .owl-carousel .owl-dot {
            display: inline-block;
            width: 15px !important;
            margin-left: 3px;
        }
        @media (min-width: 992px) {
            .sm_pages .owl-carousel .owl-dot {
                width: 17px !important;
                margin-left: 4px;
            }
        }
        @media (min-width: 1200px) {
            .sm_pages .owl-carousel .owl-dot {
                width: 19px !important;
                margin-left: 5px;
            }
        }
            .sm_pages .owl-carousel .owl-dot span {
                display: inline-block;
                border-radius: 50%;
                -webkit-border-radius: 50%;
                -moz-border-radius: 50%;
                width: 10px !important;
                height: 10px !important;
            }

.sm_contact_form {
    padding: 60px 0 50px 0;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-image: url("lhotellier-contact.webp");
    background-size: cover;
    background-position: center bottom;
}
    .sm_contact_form .col-sm-12 {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }
    @media (min-width: 992px) {
        .sm_contact_form .col-sm-12 {
            flex-direction: row;
            justify-content: space-between;
        }
    }
        .sm_contact_form .col-sm-12 > div {
            width: 100%;
            padding: 0 30px;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        @media (min-width: 992px) {
            .sm_contact_form .col-sm-12 > div {
                width: 50%;
            }
        }
        .sm_contact_form .col-sm-12 > div:first-child {
            color: white;
            font-family: 'FontFaceBold', Arial, Helvetica, sans-serif;
            font-size: 38px;
            line-height: 46px;
            padding-bottom: 20px;
        }
        @media (min-width: 992px) {
            .sm_contact_form .col-sm-12 > div:first-child {
                font-size: 48px;
                line-height: 56px;
                padding-bottom: 0;
            }
        }
            .sm_contact_form .col-sm-12 > div:first-child span {
                display: block;
                color: #ffed00;
                width: 100%;
                text-align: center;
            }
            .sm_contact_form .contactFormWrapper {
                display: flex;
                justify-content: center;
            }

.sm_newsletter_form {
    padding: 60px 0 60px 0;
    position: relative;
    background-color: #ffed00;
}
    .sm_newsletter_form svg {
        position: absolute;
        opacity: .25;
        top: 50%;
        left: 15%;
        transform: translate(-50%, -50%);
        width: 45%;
        aspect-ratio: 1 / 1;
        box-shadow: 0 10px 20px white;
    }
    .sm_newsletter_form .col-sm-12 {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
        .sm_newsletter_form h2 {
            text-align: center;
            font-size: 26px;
            padding-bottom: 50px;
            margin: 0;
            opacity: 0;
            transition: opacity .25s;
            color: #383837;
        }
        .sm_newsletter_form.active h2 {
            opacity: 1;
        }
        @media (min-width: 768px) {
            .sm_newsletter_form h2 {
                font-size: 32px;
                padding-bottom: 45px;
            }
        }
        @media (min-width: 992px) {
            .sm_newsletter_form h2 {
                font-size: 36px;
            }
        }
        @media (min-width: 1200px) {
            .sm_newsletter_form h2 {
                font-size: 40px;
                padding-bottom: 50px;
            }
        }
        .sm_newsletter_form p {
            text-align: center;
            font-size: 18px;
            color: #383837;
        }
        .sm_newsletter_form form {
            padding: 25px 0 30px;
            width: 100%;
            text-align: center;
        }
            .sm_newsletter_form input {
                width: calc(100% - 85px);
                max-width: 300px;
                background: white !important;
                border: 1px solid #bbbbbb;
                padding: 4px 5px;
                margin-right: 5px;
            }
            .sm_newsletter_form button {
                margin-top: 5px;
                color: white;
                background: #6f6f6e;
                border: none;
                padding: 4px 7px;
            }
            .sm_newsletter_form button:hover {
                background: #383837;
            }
        .sm_newsletter_form p:last-child {
            font-size: 14px;
            width: 100%;
            max-width: 600px;
            color: #6f6f6e;
        }

.sm_cta {
    position: relative;
}
.sm_cta.YELLOW {
    background-color: #ffed00;
}
.sm_cta.GREY {
    background-color: #6f6f6e;
}
.sm_cta.WHITE {
    background-color: white;
}
    .sm_cta .col-sm-12 {
        padding: 80px 0 80px 0;
        display: flex;
        justify-content: center;
        align-items: center;
    }
        .sm_cta .col-sm-12 a {
            position: relative;
            transform: scale(2);
            transition: transform .25s, color .25s, background .5s;
            padding: 3px 5px 3px 5px;
            border: none;
            background: transparent !important;
        }
        .sm_cta .col-sm-12 a:hover {
            transform: scale(2.5);
        }
        @media (max-width: 767.99px) {
            .sm_cta.active .col-sm-12 a {
                transition-delay: 1s;
                transform: scale(2.5);
            }
        }
        .sm_cta .col-sm-12 a::after,
        .sm_cta .col-sm-12 a::before {
            content: '';
            position: absolute;
            width: 100%;
            height: 1px;
            background: black;
            bottom: 0;
            left: 0;
            transform: scaleX(1);
            transform-origin: right;
            transition: transform 0.25s ease-out;
        }
        .sm_cta .col-sm-12 a::before {
            top: 0;
            transform-origin: left;
        }
        .sm_cta .col-sm-12 a:hover::after,
        .sm_cta .col-sm-12 a:hover::before {
            transform: scaleX(0);
        }
        @media (max-width: 767.99px) {
            .sm_cta.active .col-sm-12 a::after,
            .sm_cta.active .col-sm-12 a::before {
                transition-delay: 1s;
                transform: scaleX(0);
            }
        }
        .sm_cta.YELLOW .col-sm-12 a {
            color: #6f6f6e !important;
        }
        .sm_cta.YELLOW .col-sm-12 a::after,
        .sm_cta.YELLOW .col-sm-12 a::before {
            background: #6f6f6e;
        }
        .sm_cta.YELLOW .col-sm-12 a:hover {
            background: white !important;
            color: #6f6f6e !important;
        }
        @media (max-width: 767.99px) {
            .sm_cta.YELLOW.active .col-sm-12 a {
                background: white !important;
                color: #6f6f6e !important;
            }
        }
        .sm_cta.GREY .col-sm-12 a {
            color: #ffed00 !important;
        }
        .sm_cta.GREY .col-sm-12 a::after,
        .sm_cta.GREY .col-sm-12 a::before {
            background: #ffed00;
        }
        .sm_cta.GREY .col-sm-12 a:hover {
            background: white !important;
            color: #6f6f6e !important;
        }
        @media (max-width: 767.99px) {
            .sm_cta.GREY.active .col-sm-12 a {
                background: white !important;
                color: #6f6f6e !important;
            }
        }
        .sm_cta.WHITE .col-sm-12 a {
            color: #6f6f6e !important;
        }
        .sm_cta.WHITE .col-sm-12 a::after,
        .sm_cta.WHITE .col-sm-12 a::before {
            background: #6f6f6e;
        }
        .sm_cta.WHITE .col-sm-12 a:hover {
            background: #ffed00 !important;
            color: #6f6f6e !important;
        }
        @media (max-width: 767.99px) {
            .sm_cta.WHITE.active .col-sm-12 a {
                background: #ffed00 !important;
                color: #6f6f6e !important;
            }
        }



