@media only screen and (min-width: 1023px) {
    #clients .clients-content {
        padding-top: 12vw;
    }

    #clients div.inter {
        margin-top: 6vw;
        margin-bottom: 6vw;
    }

    #tabs .tabs-intro h2 {
        margin-bottom: 4vw;
    }

    #audience {
        padding-top: 13vw;
    }

    #audience .inner h2 {
        margin-bottom: 5.5vw;
    }

    #audience .step-image {
        margin-top: 4vw;
    }

    #videos .videos-header {
        margin-bottom: 7vw;
    }

    #videos .videos-header h2 {
        margin-bottom: 5vw;
    }

    #about {
        padding-top: 10vw;
    }

    #about .inner h2 {
        margin-bottom: 4.5vw;
    }

    #locations .inner {
        margin-bottom: 7vw;
    }

    #locations .inner h2 {
        margin-bottom: 3.5vw;
    }
}

@media only screen and (max-width: 1024px) {
    #hero {
        overflow-x: hidden;
    }

    header,
    #footer {
        padding: 0 20px;
    }

    .toggleMenu span:first-child,
    .toggleMenu span:last-child {
        transform: none !important;
        transition: all 0.4s ease;
        -webkit-transition: all 0.4s ease;
        -moz-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
        transform-origin: center;
    }

    .toggleMenu span:first-child {
        top: 10px;
        left: 0;
    }

    .toggleMenu span:last-child {
        bottom: 10px;
        right: 0;
    }

    .menu-opened .toggleMenu span:first-child,
    .menu-opened .toggleMenu span:last-child {
        width: 35px;
    }

    .menu-opened .toggleMenu span:first-child {
        -webkit-transform: rotate(45deg) !important;
        transform: rotate(45deg) !important;
        top: 18px;
        left: 15px;
    }

    .menu-opened .toggleMenu span:last-child {
        -webkit-transform: rotate(-45deg) !important;
        transform: rotate(-45deg) !important;
        bottom: 15px;
        right: 15px;
    }

    .toggleMenu span:first-child:before,
    .toggleMenu span:last-child:after {
        content: none !important;
    }

    #horizontal .pin-wrap {
        height: 20vw;
    }

    #horizontal .background-video {
        -webkit-height: calc(100% - 20vw);
        height: calc(100% - 20vw);
    }

    #footer {
        height: 100px;
    }

    #footer .footer-logo {
        width: 140px;
    }

    .toggleMenu span:first-child:before,
    .toggleMenu span:last-child:after {
        -webkit-transition: none;
        transition: none;
    }

    body.touchDevice #horizontal {
        height: auto;
        flex-direction: column;
    }

    body.touchDevice #horizontal .pin-wrap,
    body.touchDevice #horizontal .background-video {
        height: auto;
    }

    body.touchDevice #horizontal .pin-wrap::-webkit-scrollbar {
        display: none;
    }

    body.touchDevice #horizontal .pin-wrap {
        padding-bottom: 5vw;
        overflow-x: scroll;
        -ms-overflow-style: none; /* IE and Edge */
        scrollbar-width: none; /* Firefox */
    }

    body.touchDevice #horizontal .background-video {
        position: relative;
        left: unset;
        bottom: unset;
    }

    body.touchDevice #horizontal .background-video:after {
        content: "";
        width: 100%;
        position: relative;
        display: block;
        padding-bottom: 60%;
    }

    body.touchDevice #horizontal .background-video video {
        position: absolute;
        top: 0;
        left: 0;
    }

    #locations .locations-slider {
        padding-right: -webkit-calc(5.5vw + 20px);
        padding-right: calc(5.5vw + 20px);
    }
}

@media only screen and (max-width: 740px) {
    :root {
        --container: 100%;
    }

    .revealLeft {
        opacity: 0;
        transform: translate3d(0px, 40px, 0px);
        transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
        -webkit-transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
        -moz-transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
        -o-transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
        transition-delay: 0.5s;
    }

    a.animatedButton:before {
        content: none !important;
    }

    a.animatedButton span:first-child {
        transform: none !important;
        opacity: 1 !important;
    }

    a.animatedButton span:last-child {
        display: none !important;
    }

    body.hiddenHeader header,
    body.hiddenHeader #fakeHeader {
        -webkit-transform: translate3d(0px, -100%, 0px);
        transform: translate3d(0px, -100%, 0px);
    }

    h2.title-desktop {
        display: none;
    }

    h2.title-mobile {
        display: flex;
    }

    header,
    #fakeHeader {
        height: 70px;
    }

    #footer .footer-logo {
        width: 180px;
    }

    #footer .menu {
        display: flex;
        justify-content: space-around;
        flex-wrap: wrap;
        gap: 20px;
    }

    .menu-opened header {
        background: var(--white);
    }

    header .logo {
        position: absolute;
        left: 20px;
        transition-delay: 0.4s;
    }

    .menu-opened header .logo {
        opacity: 0;
        pointer-events: none;
        transition-delay: 0s;
    }

    header .menu {
        width: 100%;
        justify-content: space-between;
    }

    header .menu nav {
        display: none;
    }

    header .language {
        opacity: 0 !important;
        pointer-events: none;
        font-size: 6.4vw;
        transition-delay: 0s;
    }

    .menu-opened header .language {
        opacity: 1 !important;
        pointer-events: visible;
        transition-delay: 0.4s;
    }

    header .language:after {
        font-size: 6.4vw;
        right: -1vw;
    }

    header .language:hover:after {
        -webkit-transform: translateX(100%) rotate(-90deg);
        transform: translateX(100%) rotate(-90deg);
        top: 1px;
        right: -1vw;
    }

    header .language ul.wpml-ls-sub-menu {
        left: unset;
        right: -7.5vw;
        padding-left: 0;
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }

    header .language:hover ul.wpml-ls-sub-menu {
        padding-right: 0;
        padding-left: 1vw;
    }

    #mainMenu {
        width: 100% !important;
    }

    #mainMenu .inner-menu::-webkit-scrollbar {
        display: none;
    }

    #mainMenu .inner-menu {
        border-left: 0;
        overflow-y: scroll;
        -ms-overflow-style: none; /* IE and Edge */
        scrollbar-width: none; /* Firefox */
    }

    #mainMenu .top {
        padding-top: 90px;
        padding-left: 20px;
        padding-right: 20px;
        height: auto;
        min-height: -webkit-calc(100% - 75vw);
        min-height: calc(100% - 75vw);
    }

    #mainMenu .bottom {
        padding-top: 10vw;
        padding-bottom: 90px;
        height: 75vw;
        background: url("../images/mobile-menu.svg");
        background-size: cover;
        background-position: center bottom;
        font-size: 3.75vw;
    }

    #mainMenu .bottom > *:not(:last-child) {
        margin-bottom: 40px;
    }

    #mainMenu .bottom .menu-logo {
        display: block;
        width: 180px;
    }

    #mainMenu .bottom .menu-logo img {
        width: 100%;
        height: auto;
        display: block;
    }

    #mainMenu .bottom a,
    #mainMenu .bottom span {
        margin: 0 3.5vw;
    }

    #mainMenu .top .main-menu > a {
        margin-bottom: 2.15vw;
    }

    #mainMenu .top .main-menu > a.sections {
        margin-bottom: 5vw;
    }

    #mainMenu.expanded .top .main-menu .submenu {
        height: 170vw;
    }

    #mainMenu .top .main-menu .submenu a {
        padding-left: 9vw;
        margin: 4vw 0;
    }

    #mainMenu .top .main-menu .submenu a:hover {
        opacity: 0.5;
    }

    #mainMenu .top .main-menu .submenu a:before {
        width: 5vw;
        height: 5vw;
        left: 0 !important;
    }

    #mainMenu .top .main-menu > a.sections img {
        width: 6.5vw;
        margin-left: 3.5vw;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }

    #mainMenu.expanded .top .main-menu > a.sections img {
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
    }

    .mainScrollContainer {
        padding-top: 70px;
    }

    #hero {
        min-height: 60vw;
    }

    #hero .layout .caption {
        font-size: 24vw;
        top: 50%;
    }

    #hero .mute {
        width: 20px;
        height: 20px;
        top: 20px;
    }

    .revealContent #hero .mute {
        right: 20px;
    }

    #hero .mute img {
        height: 100%;
    }

    #introSlider .swiper-pagination {
        display: none;
    }

    #introSlider {
        border-bottom: 1px solid var(--black);
    }

    #introSlider .intro-slider {
        height: 135vw;
    }

    #introSlider .intro-slider .swiper-slide {
        padding: 25px 20px -webkit-calc(16vw + 25px);
        padding: 25px 20px calc(16vw + 25px);
    }

    #introSlider .intro-slider .swiper-slide {
        justify-content: flex-start;
    }

    #introSlider .intro-slider .slide-content > * {
        max-width: 100% !important;
    }

    #introSlider h2 {
        font-size: 8.75vw;
    }

    #introSlider h2 .desktop {
        display: none;
    }

    #introSlider h2 .mobile {
        display: block;
    }

    #introSlider .swiper-button-next,
    #introSlider .swiper-button-prev {
        width: 50vw;
        height: 16vw;
        top: unset;
        bottom: 0;
        border-top: 1px solid var(--black);
    }

    #introSlider .swiper-button-next {
        left: 50%;
        right: unset;
        border-bottom: 0;
    }

    #introSlider .swiper-button-prev {
        left: 0;
        right: unset;
        border-left: 0;
    }

    #introSlider .swiper-button-next:after,
    #introSlider .swiper-button-prev:after {
        font-size: 3.5vw;
    }

    #eyeBanner {
        height: 125vw;
    }

    #eyeBanner .eye-content {
        width: 200vw;
    }

    #eyeBanner .eye-content.toggle {
        -webkit-transform: translate3d(-100vw, 0px, 0px);
        transform: translate3d(-100vw, 0px, 0px);
    }

    #eyeBanner .eye-content .primary,
    #eyeBanner .eye-content .secondary {
        width: 100vw;
        height: 100%;
        padding: 70px 20px 35px;
    }

    #eyeBanner .eye-content .secondary {
        padding-top: 25px;
        pointer-events: none !important;
    }

    #eyeBanner .eye-content .primary {
        flex-direction: column;
        justify-content: space-between;
    }

    #eyeBanner .eye-content .primary .image,
    #eyeBanner .eye-content .primary .title {
        width: 100%;
    }

    #eyeBanner .eye-content .primary .title {
        align-items: flex-end;
    }

    #eyeBanner .eye-content .primary .title .text-line {
        width: 100%;
    }

    #eyeBanner .eye-content .primary .title span {
        display: block;
        width: 100%;
        text-align: left;
    }

    #eyeBanner .eye-content .primary .image .lottie {
        width: 70vw;
    }

    #eyeBanner .eye-content .primary .title a {
        margin-top: 5vw;
        transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
        -webkit-transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
        -moz-transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
        -o-transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
        -webkit-transform: translateZ(0);
        -moz-transform: translateZ(0);
        -ms-transform: translateZ(0);
        -o-transform: translateZ(0);
        transform: translateZ(0);
        width: 8vw;
        height: 8vw;
    }

    #eyeBanner .eye-content.toggle .primary .title a {
        -webkit-transform: translate3d(100vw, 0px, 0px) rotate(180deg);
        transform: translate3d(100vw, 0px, 0px) rotate(180deg);
    }

    #eyeBanner .eye-content .primary .title a img {
        width: 100%;
    }

    #eyeBanner .eye-content .primary .title a:hover img {
        -webkit-transform: translate3d(-50%, -50%, 0px) scale(1);
        transform: translate3d(-50%, -50%, 0px) scale(1);
    }

    #eyeBanner .logos img {
        display: block;
        width: auto;
        height: 11vw;
        margin-top: 3vw;
    }

    #eyeBanner .logos img:not(:first-child) {
        margin-left: 4vw;
    }

    #clients:after {
        padding-bottom: 120%;
    }

    #clients .clients-content {
        padding: 45px 15px 50px;
    }

    #clients h2,
    #clients div.inter,
    #tabs .tabs-intro > * {
        max-width: 100%;
    }

    #clients div.inter {
        margin-top: 8vw;
        margin-bottom: 12vw;
        padding: 0 15px;
    }

    #tabs {
        padding-top: 45px;
        padding-bottom: 0;
        border-bottom: 0;
    }

    #tabs .tabs-intro {
        padding: 0 20px;
    }

    #tabs .tabs-intro h2 {
        margin-top: 4vw;
        margin-bottom: 6vw;
    }

    #tabs .tabs-content {
        margin-top: 10vw;
    }

    .tabs-cat {
        display: none;
    }

    .mobileSpan {
        display: block;
        padding: 0 20px;
        margin-bottom: 5vw;
    }

    .mobileSpan span.orange {
        color: var(--orange);
    }

    #tabs .tab-entry {
        padding: 2vw 3vw;
        align-items: flex-start;
    }

    #tabs .tab-entry.active {
        padding-bottom: 5vw;
    }

    #tabs .tabs-panel {
        border-left: 0;
        border-right: 0;
        display: block !important;
    }

    #tabs .tabs-panel.adv {
        margin-bottom: 20vw;
    }

    #tabs .tab-entry .pictos {
        width: 17vw !important;
        height: 17vw !important;
        margin-right: 2vw;
    }

    .tab-title {
        font-size: 5.8vw;
        line-height: 1;
        display: block;
        height: 17vw;
        display: flex;
        align-items: center;
    }

    .tab-entry.active .tab-title {
        margin-bottom: 4vw;
    }

    #tabs .tab-entry .arrow {
        width: 8vw;
        top: 6.5vw;
    }

    #tabs .tab-entry:hover .arrow {
        -webkit-transform: rotate(90deg) scale(1);
        transform: rotate(90deg) scale(1);
    }

    #tabs .tab-entry.active .arrow {
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
    }

    #tabs .tab-entry .text {
        max-width: 62vw;
    }

    #audience {
        padding: 40px 20px 50px;
    }

    #audience .row {
        flex-direction: column-reverse;
        position: relative;
    }

    #audience .column {
        width: 100%;
    }

    #audience .column:last-child {
        display: none;
    }

    #audience .column:first-child .step-image {
        display: block;
        margin-top: 6.5vw;
        margin-bottom: 2.5vw;
    }

    #audience .step-image:after {
        padding-bottom: 100%;
    }

    #audience .inner h2 {
        margin-bottom: 6vw;
    }

    #audience .column > div.textFontSize1 h3 {
        font-size: 5.33vw;
        margin-bottom: 6vw;
    }

    #audience .column > div.textFontSize1 {
        max-width: 100%;
    }

    #audience .step {
        margin: 2.5vw 0;
        width: 100%;
    }

    #audience .step.active {
        padding: 15vw 0 35vw;
    }

    #audience .step:before,
    #audience .step:after {
        height: 13.33vw;
        width: 3vw;
    }

    #audience .step a.stoggler {
        font-size: 5.33vw;
        padding: 2vw 4vw;
        border-radius: 8vw;
    }

    #audience .step.active a.stoggler span {
        font-size: 5.15vw;
    }

    #audience .step > div {
        width: 100%;
        max-width: 100vw;
        font-size: 3.75vw;
        bottom: 18vw;
    }

    html:not(.has-scroll-smooth) #banner {
        max-height: unset;
    }

    #banner .banner-content {
        padding: 16vw 0;
    }

    #banner .banner-content h2,
    #banner .banner-content .banner-text h3,
    #banner .banner-content .banner-text > div {
        max-width: 100%;
        padding: 0 20px;
    }

    #banner .banner-content .banner-text h3 {
        margin: 16vw 0 7vw;
        font-size: 5.7vw;
        line-height: 1.2;
    }

    #banner span.pretext {
        bottom: 6vw;
    }

    #beforeHorizontal {
        padding-left: 20px;
        padding-right: 20px;
    }

    #beforeHorizontal .inner img {
        width: 26.66vw;
        margin-top: 4vw;
        margin-bottom: 4vw;
    }

    #beforeHorizontal .horizontal-header {
        flex-direction: column;
    }

    #beforeHorizontal .horizontal-header .column {
        width: 100%;
    }

    #beforeHorizontal .horizontal-header .column h3 {
        margin-top: 2.5vw;
        margin-bottom: 5vw;
    }

    #horizontal .background-video {
        height: -webkit-calc(100% - 30vw);
        height: calc(100% - 30vw);
    }

    #horizontal .pin-wrap {
        padding-left: 20px;
        padding-right: 20px;
    }

    #horizontal .pin-wrap .horizontal-toggler {
        padding: 0 12vw;
    }

    #horizontal .pin-wrap .horizontal-toggler:before,
    #horizontal .pin-wrap .horizontal-toggler:after {
        height: 13.33vw;
        width: 4vw;
        top: -2.25vw;
    }

    #horizontal .pin-wrap .horizontal-toggler a {
        font-size: 5.33vw !important;
        border-radius: 8vw;
    }

    #horizontal .pin-wrap .horizontal-toggler a.togglerDesktop {
        display: none;
    }

    #horizontal .pin-wrap .horizontal-toggler a.togglerMobile {
        display: block;
    }

    #horizontal .background-video .captions {
        bottom: 0;
    }

    .horizontal-caption {
        padding: 25px 20px !important;
    }

    .horizontal-caption .big {
        font-size: 7.5vw;
    }

    .horizontal-caption.active .small {
        position: relative;
        width: 100% !important;
        max-width: 100% !important;
        left: unset !important;
        top: unset !important;
        bottom: unset !important;
        margin-top: 3vw;
    }

    .horizontal-caption .small {
        font-size: 3.75vw;
    }

    #intel {
        padding: 60px 0;
        display: block;
        overflow: hidden;
    }

    #intel > .intel-header {
        padding: 0 20px;
        position: relative;
    }

    #intel h2 {
        max-width: 100%;
    }

    #intel .separator {
        width: 120px;
        margin: 10vw 0;
    }

    #intel .intel-body {
        width: 200vw;
        max-width: 200vw;
        flex-direction: row-reverse;
    }

    #intel.toggle .intel-body {
        transform: translate3d(-100vw, 0px, 0px);
    }

    #intel .intel-body > div:first-child,
    #intel .intel-body .intel-video {
        width: 100%;
        max-width: 50%;
    }

    #intel .intel-body > div:first-child {
        padding: 0 20px;
    }

    #intel .intel-body .intel-video > *,
    #intel .intel-body .intel-video picture img {
        width: -webkit-calc(100% - 40px);
        width: calc(100% - 40px);
        left: 20px;
    }

    #intel .intel-body .videoLoader img {
        width: 15vw;
        left: 20px;
        bottom: 20px;
        transform: none !important;
    }

    #videos .swiper-slide img.pulseImage {
        width: 15vw;
        top: 50%;
        left: 50%;
        -webkit-transform: translate3d(-50%, -50%, 0) scale(1) !important;
        transform: translate3d(-50%, -50%, 0) scale(1) !important;
    }

    #intel a.intel-toggler {
        position: absolute;
        bottom: 0;
        right: 20px;
        display: block;
        transform: translate3d(0, 50%, 0);
    }

    #intel.toggle a.intel-toggler {
        -webkit-transform: rotate(180deg) translate3d(0, -50%, 0);
        transform: rotate(180deg) translate3d(0, -50%, 0);
    }

    #intel a.intel-toggler img {
        width: 8vw;
        display: block;
        height: auto;
    }

    #videos {
        padding: 45px 0 60px;
    }

    #videos .videos-header {
        padding: 0 20px;
        margin-bottom: 10vw;
    }

    #videos .videos-header h2,
    #videos .videos-header > div {
        max-width: 100%;
    }

    #videos .videos-header h2 {
        margin-top: 3.75vw;
        margin-bottom: 6.75vw;
    }

    #videos .video-slider .swiper-slide > a {
        width: 65vw;
    }

    #creative {
        padding: 55px 20px 60px;
    }

    #creative .inner {
        flex-direction: column;
    }

    #creative .stickyContent,
    #creative .inner .column:last-child {
        padding-top: 0;
    }

    #creative .inner .column:first-child,
    #creative .inner .column:last-child {
        width: 100%;
    }

    #creative .column:first-child .stickyContent > div {
        max-width: 100%;
    }

    #creative h2 {
        margin-bottom: 5.33vw;
    }

    #creative
        .inner
        .column:first-child
        .stickyContent
        > .text-line:last-child {
        margin-bottom: 4.5vw;
    }

    #creative .inner .column:first-child img {
        width: 26.75vw;
        -webkit-transform: translate3d(0px, -100, 0px) rotate(90deg) !important;
        transform: translate3d(0px, -100%, 0px) rotate(90deg) !important;
        margin: 0 auto;
    }

    #creative .inner .column:first-child img.is-inview {
        -webkit-transform: translate3d(0px, 0px, 0px) rotate(90deg) !important;
        transform: translate3d(0px, 0px, 0px) rotate(90deg) !important;
    }

    #creative .creative-image:not(:last-child) {
        margin-bottom: 8vw;
    }

    #about {
        padding: 0;
    }

    #about .inner {
        padding: 50px 20px;
        margin-bottom: 0;
    }

    #about .inner > *:not(a) {
        max-width: 100%;
    }

    #about .inner > div.inter .desktop {
        display: none;
    }

    #about .inner > div.inter .mobile {
        display: block;
    }

    #about .inner h2 {
        margin-bottom: 6.66vw;
    }

    #about .inner a,
    .teamBlock > a {
        padding: 1vw 2.75vw;
        width: 75vw;
        font-size: 4.25vw;
        border-radius: 8vw;
        margin: 12vw auto 0;
    }

    #about .inner a img {
        width: 8.55vw;
        margin-right: 2vw;
    }

    #about .teamBlock .panel {
        max-width: 100%;
    }

    .panel .top {
        padding: 25px 20px;
    }

    .panel .bottom {
        padding: 35px 20px 14vw;
    }

    .panel .top .team-text,
    .panel .bottom > div {
        max-width: 100%;
    }

    .panel .top .team-text {
        padding-top: 40vw;
    }

    .panel .top .team-text div,
    .panel .bottom > div {
        font-size: 3.75vw;
    }

    .panel .bottom > div {
        margin-bottom: 20vw;
    }

    .panel .top .team-text span {
        max-width: 70%;
        margin-bottom: 5vw;
    }

    .panel .top .background.desktop {
        display: none;
    }

    .panel .top .background.mobile {
        display: block;
    }

    .teamBlock > a {
        text-align: center;
        padding: 2.4vw;
        width: auto;
        left: 0;
        right: 0;
        margin: 0 auto;
        width: 42.66vw;
        bottom: 14vw;
    }

    #locations {
        padding: 50px 0 80px;
    }

    #locations .inner {
        padding: 0 20px;
        margin-bottom: 10.66vw;
    }

    #locations .inner > * {
        max-width: 100%;
    }

    #locations .inner h2 {
        margin-bottom: 5.33vw;
    }

    #locations .locations-slider {
        height: 90vw;
        padding-left: 20px;
        padding-right: 20px;
    }

    #locations .swiper-slide {
        width: 82.66vw !important;
    }

    .locations-slider .swiper-button-next,
    .locations-slider .swiper-button-prev {
        display: none;
    }

    #locations .swiper-slide .cover {
        flex-direction: column;
    }

    #locations .swiper-slide .cover > div.inter {
        font-size: 12vw;
        padding: 0 20px;
    }

    #locations .swiper-slide .slide-content:hover .cover > div.cross {
        display: none;
    }

    #locations .swiper-slide .info img {
        width: 12vw;
        height: 12vw;
    }

    #locations .swiper-slide .info p:not(:last-child) {
        margin-bottom: 10px;
    }

    #locations .swiper-slide .info strong {
        font-size: 4.25vw;
    }

    .locations-slider .swiper-pagination {
        padding-left: 20px;
        padding-top: 25px;
    }

    #locations .swiper-slide .slide-content:hover .cover {
        height: 100%;
    }

    #locations .swiper-slide.swiper-slide-active .slide-content .cover {
        height: 50% !important;
    }

    #locations .swiper-slide .info img,
    #locations .swiper-slide .slide-content:hover .info img {
        opacity: 0;
        -webkit-transform: rotate(90deg) translate3d(-2vw, 0px, 0px);
        transform: rotate(90deg) translate3d(-2vw, 0px, 0px);
    }

    #locations .swiper-slide.swiper-slide-active .slide-content .info img {
        opacity: 1 !important;
        -webkit-transform: rotate(90deg) translate3d(0px, 0px, 0px) !important;
        transform: rotate(90deg) translate3d(0px, 0px, 0px) !important;
    }

    #locations .swiper-slide .slide-content:hover .info > div {
        opacity: 0;
    }

    #locations .swiper-slide.swiper-slide-active .slide-content .info > div {
        opacity: 1 !important;
    }

    #footerBanner {
        padding: 0;
    }

    #footerBanner .inner {
        padding: 14vw 20px 8vw;
    }

    #footerBanner .inner > * {
        max-width: 100%;
        display: flex;
        flex-direction: column;
    }

    #footerBanner .inner > span:first-child {
        margin-bottom: 15vw;
    }

    #footerBanner .inner > div {
        flex-direction: row;
        font-size: 4.25vw;
        margin-top: 15vw;
    }

    #footerBanner a {
        margin-left: 2vw;
    }

    #footer {
        padding: 14.5vw 20px;
        height: auto;
        flex-direction: column;
        font-size: 3.75vw;
    }

    #footer .footer-logo {
        position: relative;
        top: unset;
        left: unset;
        transform: none;
    }

    #footer > *:not(:last-child) {
        margin-bottom: 10vw;
    }

    .videoContainer .videoBlock {
        display: flex;
        justify-content: center;
        align-content: center;
    }

    .videoContainer .videoBlock video {
        position: relative;
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
    }

    .videoContainer .video-close {
        left: 20px;
    }

    #legal {
        padding: 15vw 20px;
    }

    #legal .inner {
        width: 100%;
    }

    #legal h1 {
        margin-bottom: 10vw;
    }

    #legal h2,
    #legal h3 {
        margin-top: 10vw;
        margin-bottom: 5vw;
    }

    #legal p:not(:last-child) {
        margin-bottom: 5vw;
    }
}

@media only screen and (max-width: 550px) {
    body.touchDevice #horizontal .pin-wrap {
        padding-top: 10vw;
        padding-bottom: 10vw;
    }

    body.touchDevice #horizontal .pin-wrap .horizontal-toggler {
        padding: 0 2vw;
    }

    body.touchDevice #horizontal .pin-wrap .horizontal-toggler:first-child {
        padding-left: 0;
    }

    body.touchDevice #horizontal .pin-wrap .horizontal-toggler:last-child {
        padding-right: 0;
    }

    body.touchDevice
        #horizontal
        .pin-wrap
        .horizontal-toggler.active
        a.togglerMobile {
        font-family: "Inter", sans-serif;
        font-weight: 400;
        color: var(--black);
        font-size: 5.33vw !important;
        border: 1px solid var(--black);
        border-radius: 8vw;
        display: flex;
        text-align: center;
        display: block;
        background-color: var(--blue);
    }

    body.touchDevice #horizontal .pin-wrap .horizontal-toggler:before,
    body.touchDevice #horizontal .pin-wrap .horizontal-toggler:after {
        content: none !important;
    }

    body.touchDevice #horizontal .background-video .captions {
        bottom: unset;
        top: 0;
        max-width: 100%;
        height: 100%;
    }

    body.touchDevice .horizontal-caption {
        bottom: unset;
        right: unset;
        top: 0;
        padding: 25px 20px;
    }

    body.touchDevice .horizontal-caption .small {
        position: relative;
        width: 100%;
        transform: none;
        left: unset !important;
        bottom: unset !important;
    }
}
