
img[data-lazy-src] {
    opacity: 0
}

img.lazyloaded {
    transition: opacity 0.2s linear 0.2s;
    opacity: 1
}

html {
    box-sizing: border-box;
    font-size: 16px
}

*,
*:before,
*:after {
    box-sizing: inherit
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ol,
ul {
    margin: 0;
    padding: 0;
    font-weight: 400
}

ol,
ul {
    list-style: none
}

img {
    max-width: 100%;
    height: auto
}

a {
    color: inherit;
    text-decoration: none
}

@font-face {
    font-family: "NeueHaasGroteskDisp Pro";
    src: url(../../../../../../../../themes/zenns-photo/assets/js/249fb316a73d0311d5d8.woff2) format("woff2"), url(../../../../../../../../themes/zenns-photo/assets/js/e0d435080896780d09a8.woff) format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "NeueHaasGroteskDisp Pro";
    src: url(../../../../../../../../themes/zenns-photo/assets/js/69e51c242d98ee892848.woff2) format("woff2"), url(../../../../../../../../themes/zenns-photo/assets/js/5f80cd06e199174fc941.woff) format("woff");
    font-weight: 600;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: "NeueHaasGroteskDisp Pro";
    src: url(../../../../../../../../themes/zenns-photo/assets/js/94d84cfd8f7bd9d41f0f.woff2) format("woff2"), url(../../../../../../../../themes/zenns-photo/assets/js/af58b6fedda19bb29f9c.woff) format("woff");
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

h1,
.h1 {
    font-size: 1.2rem;
    line-height: 1;
    font-weight: 700
}

h2,
.h2,
.dropdown-menu .wrapper .top-level .main-menu ul li a::after,
.dropdown-menu .wrapper .top-level .main-menu ul li a::before,
.dropdown-menu .wrapper .top-level .main-menu ul li a span {
    font-size: .96rem;
    line-height: 1;
    font-weight: 700
}

h3,
.h3,
.p-big {
    font-size: .24rem;
    line-height: .32rem;
    font-weight: 600
}

.p-big {
    font-weight: 500
}

p,
.p {
    font-size: .16rem;
    line-height: .24rem;
    font-weight: 500
}

@media screen and (max-width:768px) and (orientation:portrait) {

    h1,
    .h1 {
        font-size: .76rem;
        line-height: 1;
        font-weight: 700
    }

    h2,
    .h2,
    .dropdown-menu .wrapper .top-level .main-menu ul li a::after,
    .dropdown-menu .wrapper .top-level .main-menu ul li a::before,
    .dropdown-menu .wrapper .top-level .main-menu ul li a span {
        font-size: .48rem;
        line-height: 1;
        font-weight: 700
    }

    h3,
    .h3,
    .p-big {
        font-size: .18rem;
        line-height: .26rem;
        font-weight: 700
    }

    .p-big {
        font-weight: 500
    }

    p,
    .p {
        font-size: .14rem;
        line-height: .2rem;
        font-weight: 500
    }

    body.site-de h1,
    body.site-de .h1 {
        font-size: .4rem;
        line-height: 1;
        font-weight: 700
    }

    body.site-de h2,
    body.site-de .h2,
    body.site-de .dropdown-menu .wrapper .top-level .main-menu ul li a::after,
    .dropdown-menu .wrapper .top-level .main-menu ul li body.site-de a::after,
    body.site-de .dropdown-menu .wrapper .top-level .main-menu ul li a::before,
    .dropdown-menu .wrapper .top-level .main-menu ul li body.site-de a::before,
    body.site-de .dropdown-menu .wrapper .top-level .main-menu ul li a span,
    .dropdown-menu .wrapper .top-level .main-menu ul li a body.site-de span {
        font-size: .3rem;
        line-height: 1;
        font-weight: 700
    }

    body.site-de h3,
    body.site-de .h3,
    body.site-de .p-big {
        font-size: .16rem;
        line-height: .24rem;
        font-weight: 700
    }

    body.site-de .p-big {
        font-weight: 500
    }
}

body.page-template-tpl-AR-page .page-header {
    background-color: #FAF9F6
}

body.page-template-tpl-AR-page .page-header::after {
    display: none
}

body.page-template-tpl-AR-page .page-header::before {
    display: none
}

body.page-template-tpl-AR-page .page-header .logo {
    width: 1.5rem;
    height: auto
}

body.page-template-tpl-AR-page .page-header .logo path {
    stroke: #141414
}

body.page-template-tpl-AR-page .page-header .header-wrapper .hamburger {
    background-color: #141414
}

body.page-template-tpl-AR-page .page-header .header-wrapper .hamburger span {
    background-color: #FAF9F6
}

body.page-template-tpl-AR-page .page-header .header-wrapper .lang-switcher {
    background-color: #141414;
    border: 1px solid #141414;
    transition: border-color 0.4s ease-in-out
}

body.page-template-tpl-AR-page .page-header .header-wrapper .lang-switcher a {
    color: #FAF9F6
}

body.page-template-tpl-AR-page.menu-open header .logo path {
    stroke: #FAF9F6
}

body.page-template-tpl-AR-page.menu-open header .lang-switcher {
    border-color: #FAF9F6 !important
}

header {
    position: fixed;
    width: 3.6rem;
    left: 0;
    top: 0;
    padding: .4rem;
    padding-bottom: .27rem;
    border-radius: 0 0 .3rem 0;
    background-color: #141414;
    z-index: 999
}

@media screen and (max-width:768px) and (orientation:portrait) {
    header {
        width: 100%;
        padding: .15rem;
        border-radius: 0
    }

    header::after {
        display: none
    }

    header::before {
        display: none
    }
}

header::after {
    content: "";
    position: absolute;
    width: .3rem;
    height: .3rem;
    top: .3rem;
    right: -.29rem;
    transform: rotateZ(180deg);
    -webkit-clip-path: polygon(100% 100%, 100% 0%, 100% 0%, 98.691% 16.22%, 94.902% 31.608%, 88.838% 45.956%, 80.706% 59.059%, 70.711% 70.711%, 59.059% 80.706%, 45.956% 88.838%, 31.608% 94.902%, 16.22% 98.691%, 0% 100%, 100% 100%);
    clip-path: polygon(100% 100%, 100% 0%, 100% 0%, 98.691% 16.22%, 94.902% 31.608%, 88.838% 45.956%, 80.706% 59.059%, 70.711% 70.711%, 59.059% 80.706%, 45.956% 88.838%, 31.608% 94.902%, 16.22% 98.691%, 0% 100%, 100% 100%);
    background-color: #141414;
    transition: opacity 400ms ease-in-out
}

header::before {
    content: "";
    position: absolute;
    width: .3rem;
    height: .3rem;
    bottom: -.29rem;
    left: -.01rem;
    transform: rotateZ(180deg);
    -webkit-clip-path: polygon(100% 100%, 100% 0%, 100% 0%, 98.691% 16.22%, 94.902% 31.608%, 88.838% 45.956%, 80.706% 59.059%, 70.711% 70.711%, 59.059% 80.706%, 45.956% 88.838%, 31.608% 94.902%, 16.22% 98.691%, 0% 100%, 100% 100%);
    clip-path: polygon(100% 100%, 100% 0%, 100% 0%, 98.691% 16.22%, 94.902% 31.608%, 88.838% 45.956%, 80.706% 59.059%, 70.711% 70.711%, 59.059% 80.706%, 45.956% 88.838%, 31.608% 94.902%, 16.22% 98.691%, 0% 100%, 100% 100%);
    background-color: #141414;
    transition: opacity 400ms ease-in-out
}

header .header-wrapper {
    display: flex;
    align-items: center
}

header .header-wrapper .home-link {
    display: flex
}

header .header-wrapper .logo {
    width: 1.5rem;
    height: auto
}

header .header-wrapper .logo path {
    stroke: #FAF9F6;
    transition: stroke 400ms ease-in-out
}

header .header-wrapper .hamburger {
    width: .42rem;
    height: .42rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    border-radius: 50%;
    border: 1px solid #FAF9F6;
    cursor: pointer;
    background: none;
    margin-right: .08rem
}

header .header-wrapper .hamburger span {
    width: .22rem;
    height: .01rem;
    background: #FAF9F6;
    transition: 300ms ease-in-out
}

header .header-wrapper .hamburger span:first-child {
    margin-bottom: .04rem
}

header .header-wrapper .hamburger span:last-child {
    margin-top: .04rem
}

header .header-wrapper .hamburger.close span:first-child {
    transform: translateX(-40%);
    opacity: 0
}

header .header-wrapper .hamburger.close span:last-child {
    transform: translateX(40%);
    opacity: 0
}

header .header-wrapper .lang-switcher {
    display: flex;
    align-items: center;
    justify-content: center;
    width: .42rem;
    height: .42rem;
    background: #FAF9F6;
    margin-right: .16rem;
    border-radius: 50%
}

header .header-wrapper .lang-switcher .current {
    display: none
}

header .header-wrapper .lang-switcher a {
    color: #141414;
    font-weight: 700;
    text-transform: uppercase
}

.dropdown-menu {
    display: none;
    position: fixed;
    opacity: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99;
    background: #141414
}

.dropdown-menu .wrapper {
    padding-top: 2rem;
    padding-left: .4rem;
    padding-right: .4rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    overflow-y: auto
}

.dropdown-menu .wrapper .scroll-wrap {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.dropdown-menu .wrapper .small-title {
    font-size: .2rem;
    line-height: .32rem;
    padding-bottom: .24rem;
    font-weight: 600
}

.dropdown-menu .wrapper .top-level {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem;
    row-gap: .2rem;
    justify-content: space-between
}

@media screen and (max-width:1500px) {
    .dropdown-menu .wrapper .top-level {
        gap: .8rem;
        width: 100%
    }
}

.dropdown-menu .wrapper .top-level .main-menu ul li a {
    display: block;
    position: relative;
    overflow: hidden;
    text-transform: uppercase;
    padding: .08rem 0;
    margin: -.08rem 0
}

.dropdown-menu .wrapper .top-level .main-menu ul li a span {
    transition: 300ms ease-in-out;
    -pie-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    color: #FAF9F6;
    opacity: 0
}

@media screen and (max-width:1200px) {
    .dropdown-menu .wrapper .top-level .main-menu ul li a span {
        font-size: .56rem
    }
}

.dropdown-menu .wrapper .top-level .main-menu ul li a::before {
    content: attr(data-text);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate3d(0, 80%, 0);
    transform-origin: 0 50%;
    text-transform: uppercase;
    transition: transform 0.5s cubic-bezier(.51, .01, .2, 1);
    color: #141414;
    -moz-text-fill-color: #141414;
    -webkit-text-fill-color: #141414;
    -moz-text-stroke-color: #FAF9F6;
    -webkit-text-stroke-color: #FAF9F6;
    -moz-text-stroke-width: .8px;
    -webkit-text-stroke-width: .8px
}

@media screen and (max-width:1200px) {
    .dropdown-menu .wrapper .top-level .main-menu ul li a::before {
        font-size: .56rem
    }
}

.dropdown-menu .wrapper .top-level .main-menu ul li a::after {
    content: attr(data-text);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate3d(0, -50%, 0);
    transform-origin: 0 50%;
    text-transform: uppercase;
    transition: transform 0.5s cubic-bezier(.51, .01, .2, 1)
}

@media screen and (max-width:1200px) {
    .dropdown-menu .wrapper .top-level .main-menu ul li a::after {
        font-size: .56rem
    }
}

.dropdown-menu .wrapper .top-level .main-menu ul li a:hover::after {
    transform: translate3d(0, -160%, 0)
}

.dropdown-menu .wrapper .top-level .main-menu ul li a:hover::before {
    transform: translate3d(0, -50%, 0)
}

.dropdown-menu .wrapper .top-level .side-menu {
    width: 2.4rem
}

.dropdown-menu .wrapper .top-level .side-menu .small-title {
    display: none
}

.dropdown-menu .wrapper .top-level .side-menu .submenu-wrap {
    position: relative;
    height: auto;
    margin-bottom: .08rem
}

.dropdown-menu .wrapper .top-level .side-menu .submenu-wrap .underline {
    width: 100%;
    height: .01rem;
    background-color: #FAF9F6;
    position: absolute;
    bottom: 0;
    left: 0
}

.dropdown-menu .wrapper .top-level .side-menu .submenu-wrap li:last-of-type a {
    margin-bottom: 0;
    padding-bottom: .08rem
}

.dropdown-menu .wrapper .top-level .side-menu .submenu-wrap .submenu-arrow {
    position: absolute;
    top: .14rem;
    right: -.3rem;
    height: .02rem;
    width: .25rem;
    background-color: #FAF9F6;
    overflow: visible
}

.dropdown-menu .wrapper .top-level .side-menu .submenu-wrap .submenu-arrow .arrow-top,
.dropdown-menu .wrapper .top-level .side-menu .submenu-wrap .submenu-arrow .arrow-bottom {
    position: absolute;
    top: 0;
    right: 0;
    width: .08rem;
    height: .02rem;
    background-color: #FAF9F6;
    transform-origin: center right;
    display: block;
    opacity: 1;
    visibility: visible;
    will-change: transform
}

.dropdown-menu .wrapper .top-level .side-menu ul li:last-of-type .submenu {
    margin-bottom: 0
}

.dropdown-menu .wrapper .top-level .side-menu ul li a {
    font-size: .2rem;
    line-height: .32rem;
    font-weight: 600;
    margin-bottom: .16rem;
    position: relative;
    overflow: hidden;
    display: block
}

.dropdown-menu .wrapper .top-level .side-menu ul li a.has-submenu {
    margin-bottom: .08rem
}

.dropdown-menu .wrapper .top-level .side-menu ul li a.submenu-link {
    font-size: .16rem;
    line-height: .24rem;
    font-weight: 400;
    margin-bottom: .08rem
}

.dropdown-menu .wrapper .top-level .side-menu ul li a.submenu-link span {
    font-size: .16rem;
    line-height: .24rem;
    font-weight: 400;
    text-transform: none
}

.dropdown-menu .wrapper .top-level .side-menu ul li a.submenu-link::after {
    font-size: .16rem;
    line-height: .24rem;
    font-weight: 400;
    text-transform: none
}

.dropdown-menu .wrapper .top-level .side-menu ul li a.submenu-link::before {
    font-size: .16rem;
    line-height: .24rem;
    font-weight: 400;
    text-transform: none
}

.dropdown-menu .wrapper .top-level .side-menu ul li a span {
    font-size: .2rem;
    line-height: .32rem;
    font-weight: 600;
    transition: transform 0.5s cubic-bezier(.51, .01, .2, 1);
    opacity: 0;
    text-transform: uppercase
}

.dropdown-menu .wrapper .top-level .side-menu ul li a::after {
    content: attr(data-text);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform-origin: 0 50%;
    font-size: .2rem;
    line-height: .32rem;
    font-weight: 600;
    text-transform: uppercase;
    transition: transform 0.5s cubic-bezier(.51, .01, .2, 1)
}

.dropdown-menu .wrapper .top-level .side-menu ul li a::before {
    content: attr(data-text);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translate3d(0, 110%, 0);
    transform-origin: 0 50%;
    font-size: .2rem;
    line-height: .32rem;
    font-weight: 600;
    text-transform: uppercase;
    transition: transform 0.5s cubic-bezier(.51, .01, .2, 1)
}

.dropdown-menu .wrapper .top-level .side-menu ul li a:hover::after {
    transform: translate3d(0, -110%, 0)
}

.dropdown-menu .wrapper .top-level .side-menu ul li a:hover::before {
    transform: translate3d(0, 0, 0)
}

.dropdown-menu .wrapper .top-level .socials {
    width: 1.6rem
}

@media screen and (max-width:1500px) {
    .dropdown-menu .wrapper .top-level .socials {
        margin-left: 0
    }
}

.dropdown-menu .wrapper .top-level .socials .social-icons {
    display: flex;
    flex-wrap: wrap;
    gap: .1rem
}

.dropdown-menu .wrapper .top-level .socials .social-icons .single-social {
    padding: .12rem;
    border: 1px solid #70706E;
    border-radius: 50%;
    display: flex;
    transition: 300ms ease-in-out border
}

.dropdown-menu .wrapper .top-level .socials .social-icons .single-social svg {
    width: .18rem;
    height: .18rem
}

.dropdown-menu .wrapper .top-level .socials .social-icons .single-social:hover {
    border: 1px solid #FAF9F6
}

.dropdown-menu .wrapper .gdpr-menu {
    padding-bottom: .4rem;
    display: flex;
    flex-wrap: wrap;
    gap: .32rem;
    row-gap: .16rem;
    padding-left: 3.4rem;
    text-transform: uppercase;
    padding-left: 0;
    margin-right: 0;
    margin-left: auto;
    padding-top: .4rem
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .dropdown-menu .wrapper {
        padding: 0;
        overflow-y: scroll;
        height: 100%
    }

    .dropdown-menu .wrapper .gdpr-menu {
        display: none
    }

    .dropdown-menu .wrapper .top-level {
        flex-direction: column;
        justify-content: space-between;
        min-height: unset;
        padding: 1rem .15rem 0 .15rem;
        gap: 0;
        width: 100%
    }

    .dropdown-menu .wrapper .top-level .menu-item:last-child {
        padding-bottom: .3rem
    }

    .dropdown-menu .wrapper .top-level .main-menu {
        order: -1;
        width: 100%
    }

    .dropdown-menu .wrapper .top-level .main-menu ul li {
        margin-bottom: .16rem
    }

    .dropdown-menu .wrapper .top-level .main-menu ul li a {
        line-height: 1;
        text-transform: none
    }

    .dropdown-menu .wrapper .top-level .main-menu ul li a span,
    .dropdown-menu .wrapper .top-level .main-menu ul li a::before,
    .dropdown-menu .wrapper .top-level .main-menu ul li a:after {
        font-size: 0.5rem !important
    }

    .dropdown-menu .wrapper .top-level .main-menu .small-title {
        display: none
    }

    .dropdown-menu .wrapper .top-level .side-menu {
        margin-top: .8rem;
        width: 100%
    }

    .dropdown-menu .wrapper .top-level .side-menu .submenu-wrap .submenu-arrow {
        display: none
    }

    .dropdown-menu .wrapper .top-level .side-menu .small-title {
        display: block;
        font-size: .14rem;
        line-height: 1;
        padding-bottom: .32rem;
        font-weight: 600;
        text-transform: uppercase
    }

    .dropdown-menu .wrapper .top-level .socials {
        margin-top: .7rem;
        margin-left: 0;
        width: 100%
    }

    .dropdown-menu .wrapper .top-level .socials .small-title {
        display: none
    }

    .dropdown-menu .wrapper .top-level .socials .social-icons {
        justify-content: center
    }
}

.btn {
    display: flex;
    align-items: center;
    border-radius: .8rem;
    border: 1px solid #FAF9F6;
    width: -moz-fit-content;
    width: fit-content;
    position: relative;
    overflow: hidden;
    padding-left: .29rem
}

.btn span {
    font-size: .16rem;
    line-height: 1;
    font-weight: 600;
    text-transform: uppercase;
    padding: .13rem .29rem;
    padding-left: 0;
    transition: transform 0.5s cubic-bezier(.51, .01, .2, 1)
}

.btn::before {
    content: attr(data-text);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translate3d(0, 110%, 0);
    transform-origin: 0 50%;
    padding: .13rem .29rem;
    padding-left: .68rem;
    font-size: .16rem;
    line-height: 1;
    font-weight: 600;
    text-transform: uppercase;
    transition: transform 0.5s cubic-bezier(.51, .01, .2, 1)
}

.btn:hover span {
    transform: translate3d(0, -110%, 0)
}

.btn:hover::before {
    transform: translate3d(0, 0, 0)
}

.btn svg {
    width: .24rem;
    height: .1rem;
    margin-right: .16rem
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .btn {
        padding-left: .2rem
    }

    .btn span {
        padding: .12rem .2rem;
        padding-left: 0
    }

    .btn::before {
        padding: .12rem .2rem;
        padding-left: .59rem
    }
}

.mouse-frame {
    pointer-events: none;
    display: block;
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 99
}

@media screen and (max-width:768px) {
    .mouse-frame {
        display: none
    }
}

.mouse-frame .mouse-follower {
    position: absolute;
    transform: translate(-1rem, -1rem);
    top: 0;
    left: 0
}

.mouse-frame .mouse-follower .mouse {
    position: relative
}

.mouse-frame .mouse-follower .mouse-theme {
    width: 1.9rem;
    height: 1.9rem;
    position: absolute;
    left: 50%;
    right: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition: 300ms ease-in-out
}

.mouse-frame.theme-section .mouse-theme {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
    animation: rotating 10s linear infinite
}

@keyframes rotating {
    from {
        transform: translate(-50%, -50%) scale(1) rotate(0deg)
    }

    to {
        transform: translate(-50%, -50%) scale(1) rotate(360deg)
    }
}

.optiscroll {
    position: relative;
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

.optiscroll.is-enabled {
    overflow: hidden
}

.optiscroll.is-enabled>.optiscroll-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    overflow: scroll;
    -webkit-overflow-scrolling: touch
}

.optiscroll-v,
.optiscroll-h {
    position: absolute;
    visibility: hidden;
    z-index: 2;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.optiscroll-v {
    right: 0
}

.optiscroll-h {
    bottom: 0
}

.optiscroll.has-vtrack>.optiscroll-v,
.optiscroll.has-htrack>.optiscroll-h {
    visibility: visible
}

.optiscroll.is-rtl>.optiscroll-v {
    left: 0;
    right: auto
}

.optiscroll-vtrack,
.optiscroll-htrack {
    display: block;
    position: absolute;
    opacity: 1;
    transform: translate(0%, 0%);
    transition: height 0.2s ease 0s, width 0.2s ease 0s, opacity 0.2s ease 0s;
    box-sizing: border-box
}

.optiscroll-v {
    top: 4px;
    bottom: 4px;
    width: 0
}

.optiscroll-h {
    left: 4px;
    right: 4px;
    height: 0
}

.optiscroll.has-vtrack.has-htrack>.optiscroll-v {
    bottom: 8px
}

.optiscroll.has-vtrack.has-htrack>.optiscroll-h {
    right: 8px
}

.optiscroll-vtrack,
.optiscroll-htrack {
    background: rgba(0, 0, 0, .3);
    border-radius: 2px;
    box-shadow: 0 0 1px #FFF;
    opacity: 0
}

.optiscroll-vtrack {
    width: 3px;
    right: 4px
}

.optiscroll-htrack {
    height: 3px;
    bottom: 4px
}

.optiscroll:hover>.optiscroll-v .optiscroll-vtrack,
.optiscroll:hover>.optiscroll-h .optiscroll-htrack {
    opacity: 1
}

.optiscroll.has-vtrack.has-htrack.is-rtl>.optiscroll-h {
    right: 4px;
    left: 8px
}

.optiscroll.is-rtl>.optiscroll-v .optiscroll-vtrack {
    right: auto;
    left: 4px
}

body.site-de .container-horizontal .scroll-container .panel.intro-section-two .title {
    max-width: 9rem
}

body.site-de .container-horizontal .scroll-container .panel.intro-section-two .title h2 {
    font-size: .8rem
}

@media screen and (max-width:768px) and (orientation:portrait) {
    body.site-de .container-horizontal .scroll-container .panel.intro-section-two .title h2 {
        font-size: .33rem
    }
}

.container-horizontal {
    display: flex;
    flex-wrap: nowrap;
    position: relative;
    height: 100dvh;
    transition: height 0.4s ease-in-out
}

.container-horizontal .scroll-container {
    display: flex;
    flex-wrap: nowrap;
    width: -moz-max-content;
    width: max-content;
    height: 100%;
    height: 100dvh;
    transition: height 0.4s ease-in-out
}

.container-horizontal .panel {
    width: 100%;
    height: 100%;
    padding: .32rem;
    width: 16.64rem;
    height: 100dvh;
    transition: height 0.4s ease-in-out
}

.container-horizontal .panel.intro-section-video {
    display: flex;
    align-items: flex-end;
    position: relative;
    width: auto
}

.container-horizontal .panel.intro-section-video .text-wrapper {
    max-width: 8rem;
    margin-right: 1rem;
}

.container-horizontal .panel.intro-section-video .text-wrapper .main-title {
    padding-bottom: .24rem
}

.container-horizontal .panel.intro-section-video .text-wrapper .p-big {
    width: 100%
}

.container-horizontal .panel.intro-section-video video {
    position: relative;
    width: 16.64rem;
    height: 100%;
    transition: height 400ms ease;
    left: 0;
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: .3rem
}
.container-horizontal .panel.intro-section-video iframe {
    position: relative;
    width: 16.64rem;
    height: 100%;
    transition: height 400ms ease;
    left: 0;
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: .3rem
}

.container-horizontal .panel.intro-section-two {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: flex-end;
    width: auto
}

.container-horizontal .panel.intro-section-two .title {
    max-width: 8.6rem;
    margin-right: .8rem
}

.container-horizontal .panel.intro-section-two .title .deco {
    width: .85rem;
    height: .85rem;
    margin-top: -.2rem
}

.container-horizontal .panel.intro-section-two .title .d-flex {
    display: flex
}

.container-horizontal .panel.intro-section-two .year {
    font-size: .9rem;
    display: flex;
    align-items: center;
    align-self: center;
    overflow: hidden
}

.container-horizontal .panel.intro-section-two .year svg {
    width: .7rem;
    height: .7rem;
    margin-left: .1rem
}

.container-horizontal .panel.intro-section-two .description-cta {
    max-width: 4.63rem
}

.container-horizontal .panel.intro-section-two .description-cta .description {
    padding-bottom: .4rem
}

.container-horizontal .panel.theme-section .btn-mobile {
    display: none
}

.container-horizontal .panel.theme-section .wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-end
}

.container-horizontal .panel.theme-section .wrapper .main-img {
    width: 120%;
    max-width: unset;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block
}

.container-horizontal .panel.theme-section .wrapper .img-wrapper {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: .3rem;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1
}

.container-horizontal .panel.theme-section .wrapper .img-wrapper iframe {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: .3rem;
}

.container-horizontal .panel.theme-section .wrapper .title {
    padding: .32rem .4rem;
    max-width: 60%
}

.container-horizontal .panel.theme-section .wrapper .title h2 {
    padding: .08rem 0;
    margin: -.08rem 0
}

.container-horizontal .panel.theme-section .wrapper .image-logo-wrap {
    width: 2.63rem;
    height: 2.08rem;
    background: #141414;
    border-radius: 0 0 0 .3rem;
    padding: .62rem .27rem;
    position: absolute;
    top: -.02rem;
    right: -.02rem;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center
}

.container-horizontal .panel.theme-section .wrapper .image-logo-wrap .image-logo {
    width: auto;
    height: auto;
    max-width: 2.1rem;
    max-height: .84rem;
    vertical-align: middle;
    filter: invert(1)
}

.container-horizontal .panel.theme-section .wrapper .text-description {
    max-width: 40%;
    margin-left: auto;
    background: #141414;
    border-radius: .3rem 0 .3rem;
    padding: .4rem;
    margin-right: -.02rem;
    margin-bottom: -.02rem;
    position: relative
}

.container-horizontal .panel.theme-section .wrapper .text-description::after {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    top: -.28rem;
    right: -.02rem;
    background-size: contain;
    background-repeat: no-repeat
}

.container-horizontal .panel.theme-section .wrapper .text-description::before {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    bottom: -.02rem;
    left: -.28rem;
    background-size: contain;
    background-repeat: no-repeat
}

.container-horizontal .panel.footer {
    display: flex;
    align-items: flex-end;
    width: -moz-max-content;
    width: max-content;
    padding-right: 1.3rem
}

.container-horizontal .panel.footer .wrapper .cta-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: -moz-max-content;
    width: max-content
}

.container-horizontal .panel.footer .wrapper .cta-bottom .title {
    display: flex
}

.container-horizontal .panel.footer .wrapper .cta-bottom .title .h1 {
    padding-top: .4rem
}

.container-horizontal .panel.footer .wrapper .cta-bottom .title svg {
    width: .87rem;
    height: .87rem
}

.container-horizontal .panel.footer .wrapper .cta-bottom .gdpr-menu {
    padding-left: .7rem;
    display: flex;
    gap: .32rem;
    text-transform: uppercase
}

.container-horizontal .panel.footer .wrapper .cta-bottom .gdpr-menu a {
    width: -moz-max-content;
    width: max-content
}

.container-horizontal .panel.footer .wrapper .info {
    padding-bottom: 1.2rem;
    display: flex
}

.container-horizontal .panel.footer .wrapper .info .small-title {
    font-size: .2rem;
    line-height: .32rem;
    padding-bottom: .24rem;
    font-weight: 600
}

.container-horizontal .panel.footer .wrapper .info .socials {
    margin-right: 1.3rem;
    width: 1.7rem
}

.container-horizontal .panel.footer .wrapper .info .socials .social-icons {
    display: flex;
    flex-wrap: wrap;
    gap: .1rem
}

.container-horizontal .panel.footer .wrapper .info .socials .social-icons .single-social {
    padding: .12rem;
    border: 1px solid #70706E;
    border-radius: 50%;
    display: flex;
    transition: 300ms ease-in-out border
}

.container-horizontal .panel.footer .wrapper .info .socials .social-icons .single-social svg {
    width: .18rem;
    height: .18rem
}

.container-horizontal .panel.footer .wrapper .info .socials .social-icons .single-social:hover {
    border: 1px solid #FAF9F6
}

.container-horizontal .panel.footer .wrapper .info .location-info {
    max-width: 4rem
}

.container-horizontal .panel.footer .wrapper .info .location-info.first {
    margin-right: .9rem
}

.container-horizontal .panel.footer .wrapper .info .location-info .gray-text {
    color: #70706E;
    padding-bottom: .24rem
}

.container-horizontal .panel.footer .wrapper .info .location-info .contact-info .contact-link {
    display: flex
}

.container-horizontal .panel.footer .wrapper .info .location-info .contact-info .contact-link.phone-number a {
    word-spacing: .03rem
}

.container-horizontal .panel.footer .wrapper .info .location-info .contact-info .contact-link a {
    display: block;
    margin-left: .04rem
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .container-horizontal {
        width: 100% !important;
        height: unset;
        flex-wrap: wrap
    }

    .container-horizontal .scroll-container {
        width: 100%;
        height: unset;
        flex-direction: column
    }

    .container-horizontal .panel {
        width: 100%;
        height: auto;
        padding: .15rem
    }

    .container-horizontal .panel:last-of-type {
        margin-right: unset
    }

    .container-horizontal .panel.intro-section-video {
        flex-direction: column;
        padding-top: 1rem
    }

    .container-horizontal .panel.intro-section-video .text-wrapper {
        max-width: 100%;
        margin-right: 0
    }

    .container-horizontal .panel.intro-section-video .text-wrapper .main-title {
        padding-bottom: .24rem
    }

    .container-horizontal .panel.intro-section-video video {
        position: static;
        width: 100%;
        height: initial;
        top: 0;
        transform: none;
        left: 0;
        margin-top: .2rem
    }

    .container-horizontal .panel.intro-section-two {
        align-items: flex-start
    }

    .container-horizontal .panel.intro-section-two .title {
        max-width: 8.5rem;
        margin-right: 0
    }

    .container-horizontal .panel.intro-section-two .title .deco {
        width: .55rem;
        height: .55rem
    }

    .container-horizontal .panel.intro-section-two .year {
        font-size: .5rem;
        display: flex;
        align-items: center;
        align-self: flex-start;
        margin: .2rem 0
    }

    .container-horizontal .panel.intro-section-two .year svg {
        width: .4rem;
        height: .4rem;
        margin-left: .1rem
    }

    .container-horizontal .panel.theme-section .btn-mobile {
        display: flex;
        margin-top: .2rem
    }

    .container-horizontal .panel.theme-section .wrapper {
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
        height: auto
    }

    .container-horizontal .panel.theme-section .wrapper .main-img {
        position: static;
        width: 100%;
        max-width: 100%
    }

    .container-horizontal .panel.theme-section .wrapper .title {
        padding: .2rem 0;
        width: 100%;
        max-width: unset
    }

    .container-horizontal .panel.theme-section .wrapper .img-wrapper {
        position: static;
        z-index: 1
    }

    .container-horizontal .panel.theme-section .wrapper .image-logo-wrap {
        width: 1rem;
        height: .6rem;
        padding: .1rem .1rem;
        z-index: 5
    }

    .container-horizontal .panel.theme-section .wrapper .image-logo-wrap .image-logo {
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: 100%
    }

    .container-horizontal .panel.theme-section .wrapper .text-description {
        width: 100%;
        max-width: 100%;
        margin: 0;
        border-radius: 0;
        padding: 0;
        position: relative
    }

    .container-horizontal .panel.theme-section .wrapper .text-description::after {
        display: none
    }

    .container-horizontal .panel.theme-section .wrapper .text-description::before {
        display: none
    }

    .container-horizontal .panel.footer {
        display: block;
        padding: .15rem;
        padding-top: .3rem;
        margin-right: unset;
        width: 100%
    }

    .container-horizontal .panel.footer .wrapper .cta-bottom {
        display: flex;
        align-items: flex-start;
        flex-direction: column
    }

    .container-horizontal .panel.footer .wrapper .cta-bottom .gdpr-menu {
        margin-top: .2rem;
        padding-left: 0;
        display: flex;
        gap: .1rem;
        text-align: center;
        align-items: center;
        justify-content: space-between
    }

    .container-horizontal .panel.footer .wrapper .cta-bottom .gdpr-menu a,
    .container-horizontal .panel.footer .wrapper .cta-bottom .gdpr-menu p {
        font-size: .1rem
    }

    .container-horizontal .panel.footer .wrapper .cta-bottom .gdpr-menu a {
        width: -moz-max-content;
        width: max-content
    }

    .container-horizontal .panel.footer .wrapper .cta-bottom .title h2 {
        font-size: .4rem
    }

    .container-horizontal .panel.footer .wrapper .cta-bottom .title svg {
        width: .4rem;
        height: .4rem
    }

    .container-horizontal .panel.footer .wrapper .info {
        padding-bottom: .4rem;
        flex-direction: column
    }

    .container-horizontal .panel.footer .wrapper .info .small-title {
        padding-bottom: .14rem
    }

    .container-horizontal .panel.footer .wrapper .info .socials {
        order: 1;
        margin-right: 0;
        width: 100%;
        padding-top: .3rem
    }

    .container-horizontal .panel.footer .wrapper .info .socials .small-title {
        text-align: center
    }

    .container-horizontal .panel.footer .wrapper .info .socials .social-icons {
        justify-content: center
    }

    .container-horizontal .panel.footer .wrapper .info .location-info {
        max-width: 4rem;
        padding-top: .3rem
    }

    .container-horizontal .panel.footer .wrapper .info .location-info.first {
        margin-right: 0
    }

    .container-horizontal .panel.footer .wrapper .info .location-info .gray-text {
        padding-bottom: .14rem
    }
}

body.mobile main .container-horizontal-gallery .scroll-container .panel:last-of-type,
body.tablet main .container-horizontal-gallery .scroll-container .panel:last-of-type {
    margin-right: 0
}

.container-horizontal-gallery {
    height: 100vh;
    display: flex;
    flex-wrap: nowrap;
    height: 100dvh;
    transition: height 400ms ease
}

.container-horizontal-gallery .scroll-container {
    display: flex;
    flex-wrap: nowrap;
    width: -moz-max-content;
    width: max-content;
    height: 100%;
    height: 100dvh;
    transition: height 400ms ease
}

.container-horizontal-gallery .panel {
    width: 100%;
    height: 100%;
    padding: .32rem;
    width: 16.64rem;
    height: 100dvh;
    transition: height 400ms ease
}

.container-horizontal-gallery .panel:last-of-type {
    margin-right: 18px
}

.container-horizontal-gallery .panel.intro-section-video {
    display: flex;
    align-items: flex-end;
    position: relative;
    width: unset;
    gap: 2.6rem
}

.container-horizontal-gallery .panel.intro-section-video .text-wrapper {
    max-width: 8rem
}

.container-horizontal-gallery .panel.intro-section-video .text-wrapper .main-title {
    padding-bottom: .24rem
}

.container-horizontal-gallery .panel.intro-section-video .text-wrapper p {
    max-width: 4.7rem
}

.container-horizontal-gallery .panel.intro-section-video video {
    position: relative;
    width: 16.6rem;
    height: 100%;
    border-radius: .3rem;
    transition: height 400ms ease
}

.container-horizontal-gallery .panel.intro-section-two {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: flex-end;
    width: 8.81rem
}

.container-horizontal-gallery .panel.intro-section-two .title {
    max-width: 8.6rem;
    margin-right: .8rem
}

.container-horizontal-gallery .panel.intro-section-two .title .deco {
    width: .85rem;
    height: .85rem;
    margin-top: -.2rem
}

.container-horizontal-gallery .panel.intro-section-two .title .d-flex {
    display: flex
}

.container-horizontal-gallery .panel.intro-section-two .year {
    font-size: .9rem;
    display: flex;
    align-items: center;
    align-self: center;
    overflow: hidden
}

.container-horizontal-gallery .panel.intro-section-two .year svg {
    width: .7rem;
    height: .7rem;
    margin-left: .1rem
}

.container-horizontal-gallery .panel.intro-section-two .description-cta {
    max-width: 4.63rem
}

.container-horizontal-gallery .panel.intro-section-two .description-cta .description {
    padding-bottom: .4rem
}

.container-horizontal-gallery .panel.theme-section .btn-mobile {
    display: none
}

.container-horizontal-gallery .panel.theme-section .wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    transition: height 400ms ease;
    display: flex;
    align-items: flex-end
}

.container-horizontal-gallery .panel.theme-section .wrapper .main-img {
    width: 120%;
    max-width: unset;
    height: 100%;
    transition: height 400ms ease;
    -o-object-fit: cover;
    object-fit: cover;
    display: block
}

.container-horizontal-gallery .panel.theme-section .wrapper .img-wrapper {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: .3rem;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1
}

.container-horizontal-gallery .panel.theme-section .wrapper .title {
    padding: .32rem .4rem;
    width: calc(100% - 5.26rem);
    max-width: 60%
}

.container-horizontal-gallery .panel.theme-section .wrapper .title h2 {
    padding: .08rem 0;
    margin: -.08rem 0
}

.container-horizontal-gallery .panel.theme-section .wrapper .image-logo-wrap {
    width: 2.63rem;
    height: 2.08rem;
    padding: .62rem .27rem;
    background: #141414;
    border-radius: 0 0 0 .3rem;
    position: absolute;
    top: -.02rem;
    right: -.02rem;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center
}

.container-horizontal-gallery .panel.theme-section .wrapper .image-logo-wrap .image-logo {
    width: auto;
    height: auto;
    max-width: 2.1rem;
    max-height: .84rem;
    vertical-align: middle;
    filter: invert(1)
}

.container-horizontal-gallery .panel.theme-section .wrapper .text-description {
    max-width: 40%;
    margin-left: auto;
    background: #141414;
    border-radius: .3rem 0 .3rem;
    padding: .4rem;
    margin-right: -.02rem;
    margin-bottom: -.02rem;
    position: relative
}

.container-horizontal-gallery .panel.theme-section .wrapper .text-description::after {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    top: -.28rem;
    right: -.02rem;
    background-size: contain;
    background-repeat: no-repeat
}

.container-horizontal-gallery .panel.theme-section .wrapper .text-description::before {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    bottom: -.02rem;
    left: -.28rem;
    background-size: contain;
    background-repeat: no-repeat
}

.container-horizontal-gallery .panel.footer {
    display: flex;
    align-items: flex-end;
    background-color: #141414;
    z-index: 1;
    padding-right: 1.3rem
}

.container-horizontal-gallery .panel.footer .wrapper .cta-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: -moz-max-content;
    width: max-content
}

.container-horizontal-gallery .panel.footer .wrapper .cta-bottom .title {
    display: flex
}

.container-horizontal-gallery .panel.footer .wrapper .cta-bottom .title .h1 {
    padding-top: .4rem
}

.container-horizontal-gallery .panel.footer .wrapper .cta-bottom .title svg {
    width: .87rem;
    height: .87rem
}

.container-horizontal-gallery .panel.footer .wrapper .cta-bottom .gdpr-menu {
    padding-left: .7rem;
    display: flex;
    gap: .32rem;
    text-transform: uppercase
}

.container-horizontal-gallery .panel.footer .wrapper .info {
    padding-bottom: 1.2rem;
    display: flex
}

.container-horizontal-gallery .panel.footer .wrapper .info .small-title {
    font-size: .2rem;
    line-height: .32rem;
    padding-bottom: .24rem;
    font-weight: 600
}

.container-horizontal-gallery .panel.footer .wrapper .info .socials {
    margin-right: 1.3rem;
    width: 1.7rem
}

.container-horizontal-gallery .panel.footer .wrapper .info .socials .social-icons {
    display: flex;
    flex-wrap: wrap;
    gap: .1rem
}

.container-horizontal-gallery .panel.footer .wrapper .info .socials .social-icons .single-social {
    padding: .12rem;
    border: 1px solid #70706E;
    border-radius: 50%;
    display: flex;
    transition: 300ms ease-in-out border
}

.container-horizontal-gallery .panel.footer .wrapper .info .socials .social-icons .single-social svg {
    width: .18rem;
    height: .18rem
}

.container-horizontal-gallery .panel.footer .wrapper .info .socials .social-icons .single-social:hover {
    border: 1px solid #FAF9F6
}

.container-horizontal-gallery .panel.footer .wrapper .info .location-info {
    max-width: 4rem
}

.container-horizontal-gallery .panel.footer .wrapper .info .location-info.first {
    margin-right: .9rem
}

.container-horizontal-gallery .panel.footer .wrapper .info .location-info .gray-text {
    color: #70706E;
    padding-bottom: .24rem
}

.container-horizontal-gallery .panel.footer .wrapper .info .location-info .contact-info .contact-link {
    display: flex
}

.container-horizontal-gallery .panel.footer .wrapper .info .location-info .contact-info .contact-link.phone-number a {
    word-spacing: .03rem
}

.container-horizontal-gallery .panel.footer .wrapper .info .location-info .contact-info .contact-link a {
    display: block;
    margin-left: .04rem;
    width: -moz-max-content;
    width: max-content
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .container-horizontal-gallery {
        width: 100% !important;
        height: unset;
        flex-wrap: wrap;
        position: relative
    }

    .container-horizontal-gallery .scroll-container {
        width: 100%;
        height: auto;
        flex-direction: column
    }

    .container-horizontal-gallery .panel {
        width: 100%;
        height: auto;
        padding: .15rem
    }

    .container-horizontal-gallery .panel:last-of-type {
        margin-right: unset
    }

    .container-horizontal-gallery .panel.intro-section-video {
        flex-direction: column;
        padding-top: 1rem
    }

    .container-horizontal-gallery .panel.intro-section-video .text-wrapper {
        max-width: unset;
        height: auto;
        width: 100%
    }

    .container-horizontal-gallery .panel.intro-section-video .text-wrapper .main-title {
        padding-bottom: .24rem;
        font-size: .5rem
    }

    .container-horizontal-gallery .panel.intro-section-video video {
        position: static;
        width: 100%;
        height: initial;
        top: 0;
        transform: none;
        left: 0;
        margin-top: .2rem
    }

    .container-horizontal-gallery .panel.intro-section-two {
        align-items: flex-start
    }

    .container-horizontal-gallery .panel.intro-section-two .title {
        max-width: 8.5rem;
        margin-right: 0
    }

    .container-horizontal-gallery .panel.intro-section-two .title .deco {
        width: .55rem;
        height: .55rem
    }

    .container-horizontal-gallery .panel.intro-section-two .year {
        font-size: .7rem;
        display: flex;
        align-items: center;
        align-self: flex-start;
        margin: .2rem 0
    }

    .container-horizontal-gallery .panel.intro-section-two .year svg {
        width: .6rem;
        height: .6rem;
        margin-left: .1rem
    }

    .container-horizontal-gallery .panel.theme-section {
        height: auto
    }

    .container-horizontal-gallery .panel.theme-section .btn-mobile {
        display: flex;
        margin-top: .2rem
    }

    .container-horizontal-gallery .panel.theme-section .wrapper {
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
        height: auto
    }

    .container-horizontal-gallery .panel.theme-section .wrapper .main-img {
        position: static;
        width: 100%;
        max-width: 100%
    }

    .container-horizontal-gallery .panel.theme-section .wrapper .title {
        padding: .2rem 0;
        width: 100%;
        max-width: 100%
    }

    .container-horizontal-gallery .panel.theme-section .wrapper .img-wrapper {
        position: static;
        z-index: 1
    }

    .container-horizontal-gallery .panel.theme-section .wrapper .image-logo-wrap {
        width: 1rem;
        height: .6rem;
        padding: .1rem .1rem;
        z-index: 5
    }

    .container-horizontal-gallery .panel.theme-section .wrapper .image-logo-wrap .image-logo {
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: 100%
    }

    .container-horizontal-gallery .panel.theme-section .wrapper .text-description {
        width: 100%;
        max-width: 100%;
        margin: 0;
        border-radius: 0;
        padding: 0;
        position: relative
    }

    .container-horizontal-gallery .panel.theme-section .wrapper .text-description::after {
        display: none
    }

    .container-horizontal-gallery .panel.theme-section .wrapper .text-description::before {
        display: none
    }

    .container-horizontal-gallery .panel.footer {
        display: block;
        padding: .15rem;
        padding-top: .3rem;
        margin-right: unset;
        width: 100%
    }

    .container-horizontal-gallery .panel.footer .wrapper .cta-bottom {
        display: flex;
        align-items: flex-start;
        flex-direction: column
    }

    .container-horizontal-gallery .panel.footer .wrapper .cta-bottom .gdpr-menu {
        margin-top: .2rem;
        padding-left: 0;
        display: flex;
        gap: .1rem;
        text-align: center;
        align-items: center;
        justify-content: space-between
    }

    .container-horizontal-gallery .panel.footer .wrapper .cta-bottom .gdpr-menu a,
    .container-horizontal-gallery .panel.footer .wrapper .cta-bottom .gdpr-menu p {
        font-size: .1rem
    }

    .container-horizontal-gallery .panel.footer .wrapper .cta-bottom .gdpr-menu a {
        width: -moz-max-content;
        width: max-content
    }

    .container-horizontal-gallery .panel.footer .wrapper .cta-bottom .title h2 {
        font-size: .5rem
    }

    .container-horizontal-gallery .panel.footer .wrapper .cta-bottom .title svg {
        width: .4rem;
        height: .4rem
    }

    .container-horizontal-gallery .panel.footer .wrapper .info {
        padding-bottom: .4rem;
        flex-direction: column
    }

    .container-horizontal-gallery .panel.footer .wrapper .info .small-title {
        padding-bottom: .14rem
    }

    .container-horizontal-gallery .panel.footer .wrapper .info .socials {
        order: 1;
        margin-right: 0;
        width: 100%;
        padding-top: .3rem
    }

    .container-horizontal-gallery .panel.footer .wrapper .info .socials .small-title {
        text-align: center
    }

    .container-horizontal-gallery .panel.footer .wrapper .info .socials .social-icons {
        justify-content: center
    }

    .container-horizontal-gallery .panel.footer .wrapper .info .location-info {
        max-width: 4rem;
        padding-top: .3rem
    }

    .container-horizontal-gallery .panel.footer .wrapper .info .location-info.first {
        margin-right: 0
    }

    .container-horizontal-gallery .panel.footer .wrapper .info .location-info .gray-text {
        padding-bottom: .14rem
    }
}

.gallery-section {
    height: 100dvh;
    transition: height 400ms ease
}

.gallery-section .scroll-container {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-end;
    height: 60dvh;
    transition: height 400ms ease
}

.gallery-section .container {
    height: 100dvh;
    transition: height 400ms ease
}

.gallery-section .wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%
}

.gallery-section .wrapper .text-wrapper {
    max-width: 8rem;
    padding-top: .8rem
}

.gallery-section .wrapper .text-wrapper .description {
    padding-top: .24rem
}

.gallery-section .wrapper .text-wrapper .title {
    text-transform: uppercase
}

.gallery-section .wrapper .text-wrapper .btn-mobile {
    display: none
}

.gallery-section .wrapper .gallery-scroll-component {
    padding-top: .4rem
}

.gallery-section .wrapper .gallery-scroll-component .splide {
    visibility: visible
}

.gallery-section .wrapper .gallery-scroll-component .splide .splide__list {
    align-items: flex-end
}

.gallery-section .wrapper .gallery-scroll-component .single-item-wrapper {
    width: 100%;
    overflow: hidden;
    border-radius: .15rem
}

.gallery-section .wrapper .gallery-scroll-component .single-item-wrapper .gallery-img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 120%;
    max-width: unset;
    display: block;
    height: auto;
    aspect-ratio: 394/604
}

.gallery-section .wrapper .gallery-scroll-component .single-item {
    display: flex;
    position: relative
}

.gallery-section .wrapper .gallery-scroll-component .single-item:nth-child(3n+1) .single-item-wrapper .gallery-img {
    aspect-ratio: 394/604;
    max-height: 6.04rem
}

@media screen and (max-width:768px) {
    .gallery-section .wrapper .gallery-scroll-component .single-item:nth-child(3n+1) .single-item-wrapper .gallery-img {
        aspect-ratio: 812/604;
        max-height: 6.04rem
    }
}

.gallery-section .wrapper .gallery-scroll-component .single-item:nth-child(3n+2) .single-item-wrapper .gallery-img {
    aspect-ratio: 394/335;
    max-height: 3.35rem
}

@media screen and (max-width:768px) {
    .gallery-section .wrapper .gallery-scroll-component .single-item:nth-child(3n+2) .single-item-wrapper .gallery-img {
        aspect-ratio: 812/604;
        max-height: 6.04rem
    }
}

.gallery-section .wrapper .gallery-scroll-component .single-item:nth-child(3n+3) .single-item-wrapper .gallery-img {
    aspect-ratio: 394/515;
    max-height: 5.15rem
}

@media screen and (max-width:768px) {
    .gallery-section .wrapper .gallery-scroll-component .single-item:nth-child(3n+3) .single-item-wrapper .gallery-img {
        aspect-ratio: 812/604;
        max-height: 6.04rem
    }
}

.gallery-section .wrapper .gallery-scroll-component .single-item .caption {
    position: absolute;
    border-radius: .15rem 0 0 0;
    padding: .24rem .24rem 0 .24rem;
    bottom: 0;
    right: 0;
    z-index: 9;
    background: #141414;
    font-weight: 600;
    text-transform: uppercase;
    max-width: 2.8rem;
    text-align: end;
    margin-right: -.01rem
}

.gallery-section .wrapper .gallery-scroll-component .single-item .caption::after {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    top: -.3rem;
    right: -1px;
    background-size: contain;
    background-repeat: no-repeat
}

.gallery-section .wrapper .gallery-scroll-component .single-item .caption::before {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    bottom: -1px;
    left: -.29rem;
    background-size: contain;
    background-repeat: no-repeat
}

.gallery-section .wrapper .gallery-scroll-component .splide-controls {
    display: flex;
    align-items: center;
    margin-top: .4rem;
    gap: .16rem
}

.gallery-section .wrapper .gallery-scroll-component .splide-controls .btn.previous {
    padding-left: 0;
    padding-right: .29rem
}

.gallery-section .wrapper .gallery-scroll-component .splide-controls .btn.previous span {
    order: -1;
    padding-left: .29rem;
    padding-right: 0
}

.gallery-section .wrapper .gallery-scroll-component .splide-controls .btn.previous::before {
    padding-right: .68rem;
    padding-left: .29rem
}

.gallery-section .wrapper .gallery-scroll-component .splide-controls .btn.previous svg {
    margin-right: 0;
    margin-left: .16rem;
    transform: rotateZ(180deg)
}

.gallery-section .wrapper .gallery-scroll-component .splide-controls .my-slider-progress {
    background: #70706E;
    flex-grow: 1;
    height: 1px;
    position: relative
}

.gallery-section .wrapper .gallery-scroll-component .splide-controls .my-slider-progress .my-slider-progress-bar {
    background: #FAF9F6;
    height: 3px;
    width: 0;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%)
}

.gallery-section.solutions .gallery-slider-component .splide .splide__slide .gallery-img {
    aspect-ratio: 812/604
}

.gallery-section.solutions .gallery-slider-component .splide .splide__slide a {
    display: block
}

.gallery-section.solutions .gallery-slider-component .splide .splide__slide a .caption-description {
    position: absolute;
    border-radius: .15rem 0 0 0;
    padding: .24rem .24rem 0 .24rem;
    bottom: 0;
    right: 0;
    z-index: 9;
    background: #141414;
    font-weight: 500;
    width: 5.37rem
}

.gallery-section.solutions .gallery-slider-component .splide .splide__slide a .caption-description .desc {
    padding-top: .24rem
}

.gallery-section.solutions .gallery-slider-component .splide .splide__slide a .caption-description::after {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    top: -.28rem;
    right: -1px;
    background-size: contain;
    background-repeat: no-repeat
}

.gallery-section.solutions .gallery-slider-component .splide .splide__slide a .caption-description::before {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    bottom: -1px;
    left: -.29rem;
    background-size: contain;
    background-repeat: no-repeat
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .gallery-section {
        height: unset
    }

    .gallery-section .container {
        height: unset
    }

    .gallery-section .wrapper .text-wrapper {
        padding-bottom: .4rem
    }

    .gallery-section .wrapper .text-wrapper .btn-mobile {
        display: flex;
        margin-top: .2rem
    }

    .gallery-section .wrapper .gallery-scroll-component .scroll-container {
        width: 100%;
        flex-direction: column;
        height: unset
    }

    .gallery-section .wrapper .gallery-scroll-component .scroll-container .single-item {
        display: block;
        width: 100%
    }

    .gallery-section .wrapper .gallery-scroll-component .scroll-container .single-item .caption-description {
        position: absolute;
        border-radius: .15rem 0 0 0;
        padding: .24rem .12rem 0 .24rem;
        bottom: 0;
        right: 0;
        z-index: 9;
        background: #141414;
        font-weight: 500;
        width: 3rem
    }

    .gallery-section .wrapper .gallery-scroll-component .scroll-container .single-item .caption-description .desc {
        padding-top: .24rem
    }

    .gallery-section .wrapper .gallery-scroll-component .scroll-container .single-item .gallery-img {
        max-width: 100%;
        width: 100%;
        aspect-ratio: 1/1
    }

    .gallery-section .wrapper .gallery-scroll-component .splide-controls {
        flex-wrap: wrap;
        justify-content: space-between;
        display: none
    }

    .gallery-section .wrapper .gallery-scroll-component .splide-controls .my-slider-progress {
        order: -1;
        width: 100%
    }

    .gallery-section .wrapper .gallery-scroll-component .splide-controls .btn-desktop {
        display: none
    }
}

.solutions-section {
    height: 100vh;
    height: 100dvh;
    transition: height 400ms ease
}

.solutions-section .scroll-container {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-end
}

.solutions-section .container {
    height: 100dvh;
    transition: height 400ms ease
}

.solutions-section .wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%
}

.solutions-section .wrapper .text-wrapper {
    max-width: 7.63rem;
    padding-top: .8rem
}

.solutions-section .wrapper .text-wrapper .description {
    padding-top: .24rem
}

.solutions-section .wrapper .text-wrapper .title {
    text-transform: uppercase
}

.solutions-section .wrapper .text-wrapper .btn-mobile {
    display: none
}

.solutions-section .wrapper .gallery-img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    border-radius: .15rem;
    display: block;
    height: auto
}

.solutions-section .wrapper .image-logo-wrap {
    background: #141414;
    border-radius: 0 0 0 .15rem;
    position: absolute;
    top: -.02rem;
    right: -.02rem;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 1.43rem;
    height: 1.12rem;
    padding: .2rem .15rem
}

.solutions-section .wrapper .image-logo-wrap .image-logo {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    vertical-align: middle;
    filter: invert(1)
}

.solutions-section .wrapper .single-item {
    position: relative;
    display: block
}

.solutions-section .wrapper .single-item .caption {
    position: absolute;
    border-radius: .15rem 0 0 0;
    padding: .24rem .24rem 0 .24rem;
    bottom: 0;
    right: 0;
    z-index: 9;
    background: #141414;
    font-weight: 600;
    text-transform: uppercase
}

.solutions-section .wrapper .single-item .caption::after {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    top: -.3rem;
    right: -1px;
    background-size: contain;
    background-repeat: no-repeat
}

.solutions-section .wrapper .single-item .caption::before {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    bottom: -1px;
    left: -.29rem;
    background-size: contain;
    background-repeat: no-repeat
}

.solutions-section .wrapper .splide-controls {
    display: flex;
    align-items: center;
    margin-top: .4rem;
    gap: .16rem
}

.solutions-section .wrapper .splide-controls .btn.previous {
    padding-left: 0;
    padding-right: .29rem
}

.solutions-section .wrapper .splide-controls .btn.previous span {
    order: -1;
    padding-left: .29rem;
    padding-right: 0
}

.solutions-section .wrapper .splide-controls .btn.previous::before {
    padding-right: .68rem;
    padding-left: .29rem
}

.solutions-section .wrapper .splide-controls .btn.previous svg {
    margin-right: 0;
    margin-left: .16rem;
    transform: rotateZ(180deg)
}

.solutions-section .wrapper .splide-controls .splider-arrow {
    padding: .11rem .29rem;
    border: 1px solid #FAF9F6;
    border-radius: .8rem;
    display: flex;
    cursor: pointer
}

.solutions-section .wrapper .splide-controls .splider-arrow.prev svg {
    transform: rotateZ(180deg)
}

.solutions-section .wrapper .splide-controls .splider-arrow svg {
    width: .3rem;
    height: .2rem
}

.solutions-section .wrapper .splide-controls .my-slider-progress {
    background: #70706E;
    flex-grow: 1;
    height: 1px;
    position: relative
}

.solutions-section .wrapper .splide-controls .my-slider-progress .my-slider-progress-bar {
    background: #FAF9F6;
    height: 3px;
    width: 0;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%)
}

.solutions-section .solutions-scroll-component .gallery-img {
    aspect-ratio: 812/604
}

.solutions-section .solutions-scroll-component .single-item {
    display: block
}

.solutions-section .solutions-scroll-component .single-item .caption-description {
    position: absolute;
    border-radius: .15rem 0 0 0;
    padding: .24rem .24rem 0 .24rem;
    bottom: -.02rem;
    right: -.02rem;
    z-index: 9;
    background: #141414;
    font-weight: 500;
    max-width: 5.37rem
}

.solutions-section .solutions-scroll-component .single-item .caption-description .desc {
    padding-top: .24rem
}

.solutions-section .solutions-scroll-component .single-item .caption-description .capt {
    text-transform: uppercase
}

.solutions-section .solutions-scroll-component .single-item .caption-description::after {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    top: -.28rem;
    right: -.02rem;
    background-size: contain;
    background-repeat: no-repeat
}

.solutions-section .solutions-scroll-component .single-item .caption-description::before {
    content: "";
    position: absolute;
    background-image: url(../../../../../../../../themes/zenns-photo/assets/js/479b6790e434b9b9f675.svg);
    width: .3rem;
    height: .3rem;
    bottom: -.02rem;
    left: -.28rem;
    background-size: contain;
    background-repeat: no-repeat
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .solutions-section {
        height: unset
    }

    .solutions-section .wrapper .text-wrapper {
        padding-bottom: .4rem
    }

    .solutions-section .wrapper .text-wrapper .btn-mobile {
        display: flex;
        margin-top: .2rem
    }

    .solutions-section .wrapper .container {
        height: unset
    }

    .solutions-section .wrapper .solutions-scroll-component {
        width: 100%
    }

    .solutions-section .wrapper .solutions-scroll-component .scroll-container {
        width: 100%;
        flex-direction: column;
        gap: .6rem
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item {
        display: block;
        width: 100%
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item .image-logo-wrap {
        width: 1rem;
        height: .6rem;
        padding: .1rem .1rem;
        z-index: 5
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item .caption-description {
        position: absolute;
        border-radius: .15rem .15rem 0 0;
        padding: .24rem .12rem 0 .24rem;
        bottom: 0;
        right: 0;
        z-index: 9;
        background: #141414;
        font-weight: 500;
        width: 100%
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item .caption-description .desc {
        padding-top: .24rem
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item .caption-description::after {
        display: none
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item .caption-description::before {
        display: none
    }

    .solutions-section .wrapper .splide-controls {
        flex-wrap: wrap;
        justify-content: space-between;
        display: none
    }

    .solutions-section .wrapper .splide-controls .my-slider-progress {
        order: -1;
        width: 100%
    }

    .solutions-section .wrapper .splide-controls .btn-desktop {
        display: none
    }

    .solutions-section .wrapper .text-wrapper {
        padding-bottom: .4rem
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item {
        display: block
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item .caption-description {
        position: static;
        border-radius: .15rem 0 0 0;
        padding: .2rem 0;
        width: 100%;
        background: #141414;
        font-weight: 500
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item .caption-description .desc {
        padding-top: .1rem
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item .caption-description .capt {
        font-size: .2rem
    }

    .solutions-section .wrapper .solutions-scroll-component .single-item .caption-description .desc {
        font-size: .14rem
    }
}

.about-section {
    height: 100vh
}

.about-section .about-wrapper {
    display: flex;
    gap: .7rem;
    height: 100%
}

@media screen and (max-width:1050px) {
    .about-section .about-wrapper {
        padding-top: .8rem
    }
}

.about-section .about-wrapper .title-mobile {
    display: none
}

.about-section .about-wrapper .image-wrapper {
    width: 6.27rem;
    height: 100%
}

@media screen and (max-width:1200px) {
    .about-section .about-wrapper .image-wrapper {
        width: 4.27rem
    }
}

@media screen and (max-width:1050px) {
    .about-section .about-wrapper .image-wrapper {
        display: none
    }
}

.about-section .about-wrapper .image-wrapper img,
.about-section .about-wrapper .image-wrapper video {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: .3rem
}

.about-section .about-wrapper .text-wrapper {
    width: calc(100% - 6.97rem);
    display: flex;
    flex-direction: column
}

@media screen and (max-width:1200px) {
    .about-section .about-wrapper .text-wrapper {
        width: calc(100% - 4.97rem)
    }
}

@media screen and (max-width:1050px) {
    .about-section .about-wrapper .text-wrapper {
        width: 100%
    }
}

.about-section .about-wrapper .text-wrapper .title {
    font-size: .86rem;
    padding-bottom: .8rem;
    text-transform: uppercase;
    max-width: 9.61rem
}

.about-section .about-wrapper .text-wrapper .title-desktop {
    display: block
}

.about-section .about-wrapper .text-wrapper .about-info {
    display: flex;
    overflow: hidden;
    flex-grow: 1;
    overflow: hidden;
    justify-content: space-between
}

.about-section .about-wrapper .text-wrapper .about-info .scroll-menu {
    width: 2.4rem;
    display: flex;
    flex-direction: column;
    padding-right: .15rem
}

.about-section .about-wrapper .text-wrapper .about-info .scroll-menu .scroll-links {
    margin-bottom: .16rem;
    cursor: pointer;
    position: relative;
    width: -moz-fit-content;
    width: fit-content;
    font-weight: 600;
    text-transform: uppercase
}

.about-section .about-wrapper .text-wrapper .about-info .scroll-menu .scroll-links::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #FAF9F6;
    transition: transform 0.5s cubic-bezier(.51, .01, .2, 1);
    transform: scaleX(0);
    transform-origin: center
}

.about-section .about-wrapper .text-wrapper .about-info .scroll-menu .scroll-links.active::after,
.about-section .about-wrapper .text-wrapper .about-info .scroll-menu .scroll-links:hover::after {
    transform: scaleX(1)
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div {
    max-height: 100%;
    width: 65%;
    min-width: 450px;
    scroll-behavior: smooth
}

@media screen and (max-width:1050px) {
    .about-section .about-wrapper .text-wrapper .about-info .scrollable-div {
        width: 10rem
    }
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div .optiscroll-content {
    padding-left: .4rem;
    left: 0 !important;
    right: -17px
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div .optiscroll-v {
    height: 100%;
    width: 1px;
    background: #70706E;
    border-radius: .4rem;
    left: 10px !important
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div .optiscroll-v .optiscroll-vtrack {
    background: #FAF9F6;
    opacity: 1;
    left: -2px;
    border-radius: .4rem
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section {
    padding-bottom: .32rem;
    border-bottom: 1px solid #70706E
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section+div {
    padding-top: .32rem
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section p+p {
    padding-top: .24rem
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h1,
.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h2,
.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h3,
.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h4,
.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h5,
.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h6+p {
    padding-top: .24rem
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h3 {
    padding-bottom: .28rem
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h4 {
    font-size: .2rem;
    line-height: .28rem
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h5 {
    font-size: .16rem;
    line-height: .24rem
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section h6 {
    font-size: .14rem;
    line-height: .22rem
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section ol {
    list-style: decimal;
    padding-left: .2rem
}

.about-section .about-wrapper .text-wrapper .about-info .scrollable-div div.single-section ul {
    list-style: disc;
    padding-left: .2rem
}

@media screen and (max-width:900px) {
    .about-section {
        height: unset
    }

    .about-section .about-wrapper {
        gap: .3rem;
        padding-top: .8rem;
        flex-direction: column
    }

    .about-section .about-wrapper .title {
        font-size: .4rem
    }

    .about-section .about-wrapper .title-mobile {
        display: block;
        text-transform: uppercase
    }

    .about-section .about-wrapper .image-wrapper {
        width: 100%;
        height: 100%;
        display: block
    }

    .about-section .about-wrapper .text-wrapper {
        width: 100%
    }

    .about-section .about-wrapper .text-wrapper .title-desktop {
        display: none
    }

    .about-section .about-wrapper .text-wrapper .about-info {
        flex-direction: column;
        overflow: visible
    }

    .about-section .about-wrapper .text-wrapper .about-info .scroll-menu {
        display: none
    }

    .about-section .about-wrapper .text-wrapper .about-info .scrollable-div {
        width: 100%;
        min-width: unset
    }

    .about-section .about-wrapper .text-wrapper .about-info .scrollable-div .optiscroll-content {
        position: relative;
        overflow: hidden;
        padding: 0
    }
}

.references-section {
    height: 100dvh;
    transition: height 400ms ease
}

.references-section .references-container {
    padding-top: 1.35rem;
    padding-left: .4rem;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
    padding-bottom: .4rem;
    height: 100dvh;
    transition: height 400ms ease
}

.references-section .references-container .titles {
    display: flex;
    gap: .32rem;
    align-items: center
}

.references-section .references-container .titles .star {
    width: 1.2rem
}

.references-section .references-container .references-slider-component {
    padding-top: .4rem
}

.references-section .references-container .references-slider-component .brand-title {
    margin-top: .16rem;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase
}

.references-section .references-container .references-slider-component .scroll-container {
    display: flex;
    flex-wrap: nowrap
}

.references-section .references-container .references-slider-component .button {
    padding-bottom: .4rem
}

.references-section .references-container .references-slider-component .button .btn svg {
    transform: rotateZ(180deg)
}

.references-section .references-container .references-slider-component .scroll-container .single-item.last .single-brand {
    background: none;
    border: .01rem solid #FAF9F6;
    padding: .72rem;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase
}

.references-section .references-container .references-slider-component .scroll-container .single-brand {
    display: flex;
    flex-direction: column;
    width: 2.54rem;
    height: 2.45rem;
    background: #FAF9F6;
    border-radius: .15rem;
    display: flex;
    justify-content: center;
    align-items: center
}

.references-section .references-container .references-slider-component .scroll-container .single-brand.has-hover:hover img {
    transform: scale(.9)
}

.references-section .references-container .references-slider-component .scroll-container .single-brand.has-hover img {
    transition: transform 0.4s ease;
    will-change: transform
}

.references-section .references-container .references-slider-component .scroll-container .single-brand img {
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
    height: auto;
    max-width: 1.5rem;
    max-height: 1.3rem;
    display: block
}

.references-section .references-container .references-slider-component .splide-controls {
    display: flex;
    align-items: center;
    margin-top: .4rem;
    gap: .16rem;
    padding-right: .4rem
}

.references-section .references-container .references-slider-component .splide-controls .splider-arrow {
    padding: .11rem .29rem;
    border: 1px solid #FAF9F6;
    border-radius: .8rem;
    display: flex;
    cursor: pointer
}

.references-section .references-container .references-slider-component .splide-controls .splider-arrow.prev svg {
    transform: rotateZ(180deg)
}

.references-section .references-container .references-slider-component .splide-controls .splider-arrow svg {
    width: .3rem;
    height: .2rem
}

.references-section .references-container .references-slider-component .splide-controls .my-slider-progress {
    background: #70706E;
    flex-grow: 1;
    height: 1px;
    position: relative
}

.references-section .references-container .references-slider-component .splide-controls .my-slider-progress .my-slider-progress-bar {
    background: #FAF9F6;
    height: 3px;
    width: 0;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%)
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .references-section {
        height: unset
    }

    .references-section .references-container {
        padding-left: .15rem;
        padding-right: .15rem;
        padding-top: 1rem;
        height: unset
    }

    .references-section .references-container .titles {
        position: relative
    }

    .references-section .references-container .titles h2 {
        font-size: .5rem
    }

    .references-section .references-container .titles .star {
        position: absolute;
        right: .1rem;
        top: .5rem;
        width: .6rem
    }

    .references-section .references-container .titles h2:last-child {
        display: none
    }

    .references-section .references-container .references-slider-component .scroll-container {
        width: 100%;
        flex-direction: column
    }

    .references-section .references-container .references-slider-component .scroll-container .single-item {
        width: 100%
    }

    .references-section .references-container .references-slider-component .scroll-container .single-item .single-brand {
        width: unset;
        height: unset;
        aspect-ratio: 1/1
    }

    .references-section .references-container .references-slider-component .scroll-container .single-item .single-brand img {
        max-width: 2rem;
        max-height: 1.7rem
    }

    .references-section .references-container .references-slider-component .splide-controls {
        flex-wrap: wrap;
        justify-content: space-between;
        padding-right: .15rem;
        display: none
    }

    .references-section .references-container .references-slider-component .splide-controls .my-slider-progress {
        width: 100%;
        order: -1
    }
}

.all-references-section {
    height: 100dvh
}

.all-references-section .container {
    padding: 0 .32rem
}

.all-references-section .all-references-wrapper {
    display: flex;
    justify-content: space-between;
    gap: .7rem;
    height: 100%;
    width: 100%
}

.all-references-section .all-references-wrapper .title-mobile {
    display: none
}

.all-references-section .all-references-wrapper .image-wrapper {
    width: 6.27rem;
    height: calc(100% - 0.64rem);
    position: relative;
    margin-top: auto;
    margin-bottom: auto
}

.all-references-section .all-references-wrapper .image-wrapper img {
    top: 0;
    left: 0;
    position: absolute;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: .3rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s ease, visibility 0.8s ease
}

.all-references-section .all-references-wrapper .image-wrapper img.active {
    opacity: 1;
    visibility: visible
}

.all-references-section .all-references-wrapper .image-wrapper .button {
    position: absolute;
    bottom: .32rem;
    left: .32rem
}

.all-references-section .all-references-wrapper .image-wrapper .button .btn {
    background-color: #141414
}

.all-references-section .all-references-wrapper .image-wrapper .button .btn svg {
    transform: rotateZ(180deg)
}

.all-references-section .all-references-wrapper .text-wrapper {
    width: 9.61rem;
    min-width: calc(100% - 6.27rem);
    display: flex;
    flex-direction: column
}

.all-references-section .all-references-wrapper .text-wrapper .inner-wrap {
    padding-top: .32rem
}

.all-references-section .all-references-wrapper .text-wrapper .star {
    width: .79rem;
    height: .79rem;
    vertical-align: middle;
    margin-top: -.35rem
}

.all-references-section .all-references-wrapper .text-wrapper .title {
    font-size: .86rem;
    padding-bottom: .6rem;
    text-transform: uppercase
}

.all-references-section .all-references-wrapper .text-wrapper .title-desktop {
    display: block
}

.all-references-section .all-references-wrapper .text-wrapper .title-desktop .title-svg-wrap {
    padding-top: .05rem;
    margin-top: -.05rem
}

.all-references-section .all-references-wrapper .text-wrapper .title-desktop .text-stroke {
    margin-right: .3rem
}

.all-references-section .all-references-wrapper .all-references-grid {
    width: 100%;
    padding-right: .8rem;
    height: 8.18rem;
    position: relative;
    flex-grow: 1
}

.all-references-section .all-references-wrapper .all-references-grid .grid-inner {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    -moz-column-gap: .2rem;
    column-gap: .2rem;
    row-gap: .25rem;
    width: 100%;
    padding-bottom: .32rem;
    justify-content: space-evenly
}

.all-references-section .all-references-wrapper .all-references-grid .single-item {
    width: 2rem
}

.all-references-section .all-references-wrapper .all-references-grid .single-item .brand-title {
    margin-top: .12rem;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase
}

.all-references-section .all-references-wrapper .all-references-grid .single-item .single-brand {
    display: flex;
    flex-direction: column;
    aspect-ratio: 1/1;
    background: #FAF9F6;
    border-radius: .15rem;
    display: flex;
    justify-content: center;
    align-items: center
}

.all-references-section .all-references-wrapper .all-references-grid .single-item .single-brand.has-hover:hover img {
    transform: scale(.9)
}

.all-references-section .all-references-wrapper .all-references-grid .single-item .single-brand.has-hover img {
    transition: transform 0.4s ease;
    will-change: transform
}

.all-references-section .all-references-wrapper .all-references-grid .single-item .single-brand img {
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
    height: auto;
    max-width: 1.3rem;
    max-height: 1.3rem;
    display: block
}

.all-references-section .all-references-wrapper .optiscroll-v {
    height: 90%;
    width: 1px;
    background: #70706E;
    border-radius: .4rem;
    top: 50%;
    right: 2%;
    transform: translateY(-50%)
}

.all-references-section .all-references-wrapper .optiscroll-v .optiscroll-vtrack {
    background: #FAF9F6;
    opacity: 1;
    left: -2px;
    right: -2px;
    border-radius: .4rem
}

@media screen and (max-width:1300px) {
    .all-references-section {
        height: unset
    }

    .all-references-section .container {
        padding: .32rem;
        padding-bottom: 0;
        height: 100%
    }

    .all-references-section .container .all-references-wrapper {
        gap: .3rem;
        padding-top: .8rem;
        flex-direction: column
    }

    .all-references-section .container .all-references-wrapper .title-mobile {
        display: block;
        text-transform: uppercase;
        font-size: .5rem
    }

    .all-references-section .container .all-references-wrapper .image-wrapper {
        display: none
    }

    .all-references-section .container .all-references-wrapper .text-wrapper {
        width: 100%;
        height: 9.25rem
    }

    .all-references-section .container .all-references-wrapper .text-wrapper .title-desktop {
        display: none
    }

    .all-references-section .container .all-references-wrapper .all-references-grid {
        width: 100%;
        padding-right: 0
    }

    .all-references-section .container .all-references-wrapper .all-references-grid .grid-inner {
        width: 100%;
        -moz-column-gap: .1rem;
        column-gap: .1rem;
        row-gap: .25rem
    }

    .all-references-section .container .all-references-wrapper .all-references-grid .single-item .brand-title {
        font-size: .2rem
    }

    .all-references-section .container .all-references-wrapper .optiscroll-v {
        display: none
    }
}

@media screen and (max-width:768px) {
    .all-references-section .container {
        padding: .15rem
    }

    .all-references-section .container .all-references-wrapper .text-wrapper {
        height: auto;
        overflow: hidden
    }

    .all-references-section .container .all-references-wrapper .all-references-grid {
        height: auto
    }

    .all-references-section .container .all-references-wrapper .all-references-grid .grid-inner {
        grid-template-columns: repeat(1, 1fr);
        padding-bottom: 0
    }

    .all-references-section .container .all-references-wrapper .all-references-grid .single-item {
        width: 100%
    }

    .all-references-section .container .all-references-wrapper .all-references-grid .single-item .single-brand img {
        max-width: 2rem;
        max-height: 1.7rem
    }

    .all-references-section .container .all-references-wrapper .all-references-grid .single-item .brand-title {
        font-size: .2rem
    }

    .all-references-section .container .all-references-wrapper .image-wrapper {
        width: 100%;
        height: 6rem;
        display: block
    }
}

body.mobile main .container-horizontal-ar .scroll-container .panel:last-of-type,
body.tablet main .container-horizontal-ar .scroll-container .panel:last-of-type {
    margin-right: 0
}

.container-horizontal-ar {
    display: flex;
    flex-wrap: nowrap;
    position: relative;
    height: 100dvh;
    transition: height 400ms ease
}

.container-horizontal-ar .scroll-container {
    display: flex;
    flex-wrap: nowrap;
    width: -moz-max-content;
    width: max-content;
    background-color: #141414;
    height: 100dvh;
    transition: height 400ms ease
}

.container-horizontal-ar .panel {
    position: relative;
    width: -moz-max-content;
    width: max-content;
    transition: height 400ms ease;
    height: 100dvh;
    padding: .32rem;
    background-color: #FAF9F6
}

.container-horizontal-ar .panel:last-of-type {
    margin-right: 18px
}

.container-horizontal-ar .panel:nth-last-of-type(2) {
    border-top-right-radius: .3rem;
    border-bottom-right-radius: .3rem
}

.container-horizontal-ar .panel.intro-section-video {
    display: flex;
    align-items: flex-end;
    position: relative;
    width: unset;
    gap: .4rem;
    z-index: 6
}

.container-horizontal-ar .panel.intro-section-video .text-wrapper .main-title {
    padding-bottom: .24rem;
    color: #141414;
    font-size: .96rem
}

.container-horizontal-ar .panel.intro-section-video .text-wrapper .main-title .split-lines {
    line-height: .8rem
}

.container-horizontal-ar .panel.intro-section-video .text-wrapper .text-stroke {
    -webkit-text-stroke-color: #141414
}

.container-horizontal-ar .panel.intro-section-video .text-wrapper p {
    max-width: 4.7rem;
    color: #141414
}

.container-horizontal-ar .panel.intro-section-video video {
    position: relative;
    width: 16rem;
    height: 100%;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: .3rem
}

.container-horizontal-ar .panel.intro-section-two {
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    width: 9.51rem;
    position: relative;
    z-index: 5;
    margin-left: -.1rem
}

.container-horizontal-ar .panel.intro-section-two .deco {
    width: 1.87rem;
    height: 1.97rem;
    position: absolute;
    bottom: 5.58rem;
    right: 3.19rem
}

.container-horizontal-ar .panel.intro-section-two .title-text-wrap {
    width: 4.63rem;
    padding-bottom: .24rem;
    margin-bottom: .24rem;
    position: relative
}

.container-horizontal-ar .panel.intro-section-two .title-text-wrap:last-of-type {
    margin-bottom: .64rem
}

.container-horizontal-ar .panel.intro-section-two .title-text-wrap::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: .01rem;
    background-color: #141414
}

.container-horizontal-ar .panel.intro-section-two .title-text-wrap .title {
    color: #141414
}

.container-horizontal-ar .panel.intro-section-two .title-text-wrap .text {
    color: #141414;
    margin-top: .24rem
}

.container-horizontal-ar .panel.small-video-section {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: .56rem;
    padding-right: 3.07rem;
    z-index: 4;
    margin-left: -.1rem
}

.container-horizontal-ar .panel.small-video-section .deco {
    width: 9.17rem;
    height: 9.17rem;
    position: absolute;
    top: -4.58rem;
    right: -4.58rem
}

.container-horizontal-ar .panel.small-video-section .title-text-wrap {
    margin-bottom: .32rem
}

.container-horizontal-ar .panel.small-video-section .title-text-wrap .main-title {
    color: #141414
}

.container-horizontal-ar .panel.small-video-section .title-text-wrap .main-title .text-stroke {
    -webkit-text-stroke-color: #141414
}

.container-horizontal-ar .panel.small-video-section .title-text-wrap .section-text {
    margin-top: .24rem;
    color: #141414;
    max-width: 5.33rem
}

.container-horizontal-ar .panel.small-video-section .section-container {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: flex-end
}

.container-horizontal-ar .panel.small-video-section .section-container .video-wrap {
    width: 3.94rem;
    height: 62.674dvh;
    transition: height 400ms ease;
    position: relative;
    margin-right: 1.63rem;
    mix-blend-mode: multiply
}

.container-horizontal-ar .panel.small-video-section .section-container .video-wrap video {
    position: absolute;
    width: 100%;
    height: 100%
}

.container-horizontal-ar .panel.small-video-section .section-container .numbers-wrap {
    display: flex;
    flex-direction: row;
    width: auto;
    align-items: center
}

.container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap {
    margin-right: .48rem;
    text-align: center;
    position: relative
}

.container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap:last-of-type {
    margin-right: 0
}

.container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap .number-inner {
    position: relative
}

.container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap .number-wrap {
    display: flex;
    flex-direction: row;
    align-items: center
}

.container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap .hidden-number {
    opacity: 0;
    visibility: hidden
}

.container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap .number {
    position: absolute;
    top: 0;
    left: 0
}

.container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap span {
    color: #141414;
    font-size: 1.2rem;
    line-height: 1
}

.container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap .number-title {
    color: #141414
}

.container-horizontal-ar .panel.examples-section {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: .56rem;
    padding-right: 2.38rem;
    z-index: 3;
    margin-left: -.1rem
}

.container-horizontal-ar .panel.examples-section .title-text-wrap {
    margin-bottom: .4rem
}

.container-horizontal-ar .panel.examples-section .title-text-wrap.pin {
    width: -moz-max-content;
    width: max-content
}

.container-horizontal-ar .panel.examples-section .title-text-wrap .main-title {
    color: #141414;
    max-width: -moz-max-content;
    max-width: max-content
}

.container-horizontal-ar .panel.examples-section .title-text-wrap .main-title .text-stroke {
    -webkit-text-stroke-color: #141414
}

.container-horizontal-ar .panel.examples-section .title-text-wrap .section-text {
    margin-top: .24rem;
    color: #141414;
    max-width: 5.33rem
}

.container-horizontal-ar .panel.examples-section .section-container {
    display: flex;
    flex-direction: row
}

.container-horizontal-ar .panel.examples-section .section-container .title-text-wrap {
    max-width: 3.24rem;
    margin-right: 1.64rem;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end
}

.container-horizontal-ar .panel.examples-section .section-container .title-text-wrap .numbers {
    color: #141414;
    font-weight: 600
}

.container-horizontal-ar .panel.examples-section .section-container .title-text-wrap .examples-title {
    color: #141414;
    margin-top: .08rem;
    text-transform: uppercase
}

.container-horizontal-ar .panel.examples-section .section-container .title-text-wrap .examples-text {
    color: #141414;
    margin-top: .24rem
}

.container-horizontal-ar .panel.examples-section .section-container .examples-wrap {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    flex-wrap: wrap;
    row-gap: .24rem;
    height: 6.14rem;
    margin-right: 1.42rem;
    -moz-column-gap: 0;
    column-gap: 0
}

.container-horizontal-ar .panel.examples-section .section-container .examples-wrap:last-of-type {
    margin-right: 0
}

.container-horizontal-ar .panel.examples-section .section-container .examples-wrap .example {
    width: 2.78rem;
    height: 2.94rem;
    text-align: center
}

.container-horizontal-ar .panel.examples-section .section-container .examples-wrap .example .example-inner {
    margin-right: .24rem
}

.container-horizontal-ar .panel.examples-section .section-container .examples-wrap .example .img-wrap {
    width: 2.54rem;
    height: 2.54rem;
    position: relative;
    mix-blend-mode: multiply
}

.container-horizontal-ar .panel.examples-section .section-container .examples-wrap .example .img-wrap .example-image {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.container-horizontal-ar .panel.examples-section .section-container .examples-wrap .example .example-title {
    color: #141414;
    margin-top: .16rem;
    font-weight: 600;
    text-transform: uppercase
}

.container-horizontal-ar .panel.faq-section {
    padding-right: 1.6rem;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-bottom: .56rem;
    z-index: 2;
    margin-left: -.1rem
}

.container-horizontal-ar .panel.faq-section .title-text-wrap {
    max-width: -moz-max-content;
    max-width: max-content
}

.container-horizontal-ar .panel.faq-section .title-text-wrap .faq-title {
    max-width: -moz-max-content;
    max-width: max-content;
    margin-bottom: .8rem;
    color: #141414
}

.container-horizontal-ar .panel.faq-section .section-container {
    display: flex;
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    height: 7.68rem;
    max-height: 74vh
}

.container-horizontal-ar .panel.faq-section .section-container .item-wrap {
    padding-right: .8rem;
    padding-bottom: .22rem
}

.container-horizontal-ar .panel.faq-section .section-container .title-text-wrap {
    width: 4.63rem;
    padding-bottom: .22rem;
    position: relative;
    max-width: unset
}

.container-horizontal-ar .panel.faq-section .section-container .title-text-wrap::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: .01rem;
    background-color: #141414
}

.container-horizontal-ar .panel.faq-section .section-container .title-text-wrap .title {
    color: #141414
}

.container-horizontal-ar .panel.faq-section .section-container .title-text-wrap .text {
    color: #141414;
    margin-top: .24rem
}

.container-horizontal-ar .panel.footer {
    display: flex;
    align-items: flex-end;
    background-color: #141414;
    z-index: 1;
    padding-right: 1.3rem
}

.container-horizontal-ar .panel.footer .wrapper .cta-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between
}

.container-horizontal-ar .panel.footer .wrapper .cta-bottom .title {
    display: flex
}

.container-horizontal-ar .panel.footer .wrapper .cta-bottom .title .h1 {
    padding-top: .4rem
}

.container-horizontal-ar .panel.footer .wrapper .cta-bottom .title svg {
    width: .87rem;
    height: .87rem
}

.container-horizontal-ar .panel.footer .wrapper .cta-bottom .gdpr-menu {
    padding-left: .7rem;
    display: flex;
    gap: .32rem;
    text-transform: uppercase
}

.container-horizontal-ar .panel.footer .wrapper .info {
    padding-bottom: 1.2rem;
    display: flex
}

.container-horizontal-ar .panel.footer .wrapper .info .small-title {
    font-size: .2rem;
    line-height: .32rem;
    padding-bottom: .24rem;
    font-weight: 600
}

.container-horizontal-ar .panel.footer .wrapper .info .socials {
    margin-right: 1.3rem;
    width: 1.7rem
}

.container-horizontal-ar .panel.footer .wrapper .info .socials .social-icons {
    display: flex;
    flex-wrap: wrap;
    gap: .1rem
}

.container-horizontal-ar .panel.footer .wrapper .info .socials .social-icons .single-social {
    padding: .12rem;
    border: 1px solid #70706E;
    border-radius: 50%;
    display: flex;
    transition: 300ms ease-in-out border
}

.container-horizontal-ar .panel.footer .wrapper .info .socials .social-icons .single-social svg {
    width: .18rem;
    height: .18rem
}

.container-horizontal-ar .panel.footer .wrapper .info .socials .social-icons .single-social:hover {
    border: 1px solid #FAF9F6
}

.container-horizontal-ar .panel.footer .wrapper .info .location-info {
    max-width: 4rem
}

.container-horizontal-ar .panel.footer .wrapper .info .location-info.first {
    margin-right: .9rem
}

.container-horizontal-ar .panel.footer .wrapper .info .location-info .gray-text {
    color: #70706E;
    padding-bottom: .24rem
}

.container-horizontal-ar .panel.footer .wrapper .info .location-info .contact-info .contact-link {
    display: flex
}

.container-horizontal-ar .panel.footer .wrapper .info .location-info .contact-info .contact-link.phone-number a {
    word-spacing: .03rem
}

.container-horizontal-ar .panel.footer .wrapper .info .location-info .contact-info .contact-link a {
    display: block;
    margin-left: .04rem;
    width: -moz-max-content;
    width: max-content
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .container-horizontal-ar {
        flex-direction: column;
        width: 100%;
        padding-top: .7rem;
        height: auto
    }

    .container-horizontal-ar .scroll-container {
        flex-direction: column;
        width: 100%;
        height: auto
    }

    .container-horizontal-ar .panels-bg {
        height: auto;
        width: 100%;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        flex-direction: column
    }

    .container-horizontal-ar .panel {
        padding: .15rem;
        width: 100%;
        height: auto;
        flex-wrap: wrap
    }

    .container-horizontal-ar .panel:last-of-type {
        margin-right: 0
    }

    .container-horizontal-ar .panel.intro-section-video {
        align-items: flex-start;
        width: 100%;
        gap: unset
    }

    .container-horizontal-ar .panel.intro-section-video .text-wrapper {
        max-width: 100%
    }

    .container-horizontal-ar .panel.intro-section-video .text-wrapper .main-title {
        font-size: .4rem
    }

    .container-horizontal-ar .panel.intro-section-video .text-wrapper p {
        max-width: 100%
    }

    .container-horizontal-ar .panel.intro-section-video video {
        position: relative;
        width: 100%;
        height: auto;
        top: unset;
        transform: unset;
        margin-top: .2rem
    }

    .container-horizontal-ar .panel.intro-section-two {
        width: 100%;
        margin: 0;
        margin-top: -.1rem
    }

    .container-horizontal-ar .panel.intro-section-two .deco {
        display: none
    }

    .container-horizontal-ar .panel.intro-section-two .title-text-wrap {
        width: 100%;
        padding-bottom: .24rem;
        margin-bottom: .24rem;
        position: relative
    }

    .container-horizontal-ar .panel.intro-section-two .title-text-wrap:last-of-type {
        margin-bottom: .24rem
    }

    .container-horizontal-ar .panel.small-video-section {
        padding: .15rem;
        width: 100%;
        margin: 0;
        margin-top: -.1rem
    }

    .container-horizontal-ar .panel.small-video-section .deco {
        display: none
    }

    .container-horizontal-ar .panel.small-video-section .title-text-wrap {
        margin-bottom: .24rem
    }

    .container-horizontal-ar .panel.small-video-section .title-text-wrap .main-title {
        font-size: .4rem
    }

    .container-horizontal-ar .panel.small-video-section .title-text-wrap .section-text {
        max-width: 100%
    }

    .container-horizontal-ar .panel.small-video-section .section-container {
        width: 100%;
        flex-direction: column;
        max-height: unset
    }

    .container-horizontal-ar .panel.small-video-section .section-container .video-wrap {
        width: 100%;
        height: auto;
        max-height: unset;
        position: relative;
        margin-right: unset
    }

    .container-horizontal-ar .panel.small-video-section .section-container .video-wrap video {
        position: relative;
        width: 100%;
        height: auto
    }

    .container-horizontal-ar .panel.small-video-section .section-container .numbers-wrap {
        flex-wrap: wrap;
        width: 100%;
        justify-content: center
    }

    .container-horizontal-ar .panel.small-video-section .section-container .number-wrap {
        justify-content: center
    }

    .container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap {
        margin-right: unset;
        text-align: center;
        margin-top: .2rem;
        width: 50%
    }

    .container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap .number::after {
        font-size: .5rem
    }

    .container-horizontal-ar .panel.small-video-section .section-container .number-title-wrap span {
        font-size: .5rem
    }

    .container-horizontal-ar .panel.examples-section {
        flex-direction: column;
        padding: .15rem;
        margin: 0;
        margin-top: -.1rem
    }

    .container-horizontal-ar .panel.examples-section .title-text-wrap {
        margin-bottom: .4rem
    }

    .container-horizontal-ar .panel.examples-section .title-text-wrap .main-title {
        font-size: .4rem
    }

    .container-horizontal-ar .panel.examples-section .title-text-wrap.pin {
        width: 100%
    }

    .container-horizontal-ar .panel.examples-section .title-text-wrap .section-text {
        margin-top: .24rem;
        color: #141414;
        width: 100%
    }

    .container-horizontal-ar .panel.examples-section .section-container {
        flex-direction: column;
        max-height: unset;
        width: 100%
    }

    .container-horizontal-ar .panel.examples-section .section-container .title-text-wrap {
        max-width: 100%;
        margin-right: unset;
        margin-bottom: unset
    }

    .container-horizontal-ar .panel.examples-section .section-container .title-text-wrap .examples-text {
        width: 100%
    }

    .container-horizontal-ar .panel.examples-section .section-container .examples-wrap {
        height: auto;
        margin-right: unset;
        max-height: unset;
        display: block
    }

    .container-horizontal-ar .panel.examples-section .section-container .examples-wrap:last-of-type {
        margin-right: 0
    }

    .container-horizontal-ar .panel.examples-section .section-container .examples-wrap .example {
        display: block;
        width: 100%;
        height: auto;
        margin: unset;
        margin-bottom: .24rem;
        margin-top: .24rem
    }

    .container-horizontal-ar .panel.examples-section .section-container .examples-wrap .example .example-inner {
        margin-right: 0
    }

    .container-horizontal-ar .panel.examples-section .section-container .examples-wrap .example .img-wrap {
        width: 100%;
        height: auto;
        aspect-ratio: 1
    }

    .container-horizontal-ar .panel.faq-section {
        margin-right: unset;
        margin: 0;
        margin-top: -.1rem;
        border-radius: 0;
        padding-right: .15rem
    }

    .container-horizontal-ar .panel.faq-section .title-text-wrap .faq-title {
        margin-bottom: .4rem;
        width: 100%;
        font-size: .4rem
    }

    .container-horizontal-ar .panel.faq-section .section-container {
        height: auto;
        max-height: unset
    }

    .container-horizontal-ar .panel.faq-section .section-container .item-wrap {
        width: 100%;
        padding-right: 0
    }

    .container-horizontal-ar .panel.faq-section .section-container .title-text-wrap {
        width: 100%;
        padding-bottom: .22rem;
        margin-right: unset
    }

    .container-horizontal-ar .panel.footer {
        display: block;
        padding: .15rem;
        padding-top: .3rem
    }

    .container-horizontal-ar .panel.footer .wrapper .cta-bottom {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        width: -moz-max-content;
        width: max-content
    }

    .container-horizontal-ar .panel.footer .wrapper .cta-bottom .title h2 {
        font-size: .4rem
    }

    .container-horizontal-ar .panel.footer .wrapper .cta-bottom .title svg {
        width: .4rem;
        height: .4rem
    }

    .container-horizontal-ar .panel.footer .wrapper .cta-bottom .gdpr-menu {
        margin-top: .2rem;
        padding-left: 0;
        display: flex;
        gap: .1rem;
        text-align: center;
        align-items: center;
        justify-content: space-between
    }

    .container-horizontal-ar .panel.footer .wrapper .cta-bottom .gdpr-menu a,
    .container-horizontal-ar .panel.footer .wrapper .cta-bottom .gdpr-menu p {
        font-size: .1rem
    }

    .container-horizontal-ar .panel.footer .wrapper .info {
        padding-bottom: .4rem;
        flex-direction: column
    }

    .container-horizontal-ar .panel.footer .wrapper .info .small-title {
        padding-bottom: .14rem
    }

    .container-horizontal-ar .panel.footer .wrapper .info .socials {
        order: 1;
        margin-right: 0;
        width: 100%;
        padding-top: .3rem
    }

    .container-horizontal-ar .panel.footer .wrapper .info .socials .small-title {
        text-align: center
    }

    .container-horizontal-ar .panel.footer .wrapper .info .socials .social-icons {
        justify-content: center
    }

    .container-horizontal-ar .panel.footer .wrapper .info .location-info {
        max-width: 4rem;
        padding-top: .3rem
    }

    .container-horizontal-ar .panel.footer .wrapper .info .location-info.first {
        margin-right: 0
    }

    .container-horizontal-ar .panel.footer .wrapper .info .location-info .gray-text {
        padding-bottom: .14rem
    }
}

.terms-section {
    height: 100vh;
    padding-top: .8rem
}

.terms-section .terms-wrapper {
    display: flex;
    gap: .7rem;
    height: 100%
}

.terms-section .terms-wrapper .title-mobile {
    display: none
}

.terms-section .terms-wrapper .text-wrapper {
    width: 100%;
    display: flex;
    flex-direction: column
}

.terms-section .terms-wrapper .text-wrapper .title-wrap {
    display: flex;
    flex-direction: row
}

.terms-section .terms-wrapper .text-wrapper .title-wrap .title {
    font-size: .86rem;
    padding-bottom: .8rem;
    text-transform: uppercase;
    max-width: calc(100% - 0.87rem);
    width: -moz-min-content;
    width: min-content;
    word-wrap: break-word
}

.terms-section .terms-wrapper .text-wrapper .title-wrap .title-desktop {
    display: inline-block
}

.terms-section .terms-wrapper .text-wrapper .title-wrap svg {
    width: .87rem;
    height: .87rem
}

.terms-section .terms-wrapper .text-wrapper .about-info {
    display: flex;
    overflow: hidden;
    justify-content: center;
    flex-grow: 1
}

.terms-section .terms-wrapper .text-wrapper .about-info .scroll-menu {
    width: 6.76rem;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-content: flex-end;
    padding-right: .33rem
}

.terms-section .terms-wrapper .text-wrapper .about-info .scroll-menu .scroll-links {
    margin-bottom: .16rem;
    cursor: pointer;
    position: relative;
    width: -moz-fit-content;
    width: fit-content;
    font-weight: 600;
    text-transform: uppercase
}

.terms-section .terms-wrapper .text-wrapper .about-info .scroll-menu .scroll-links::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #FAF9F6;
    transition: transform 0.5s cubic-bezier(.51, .01, .2, 1);
    transform: scaleX(0);
    transform-origin: center
}

.terms-section .terms-wrapper .text-wrapper .about-info .scroll-menu .scroll-links.active::after,
.terms-section .terms-wrapper .text-wrapper .about-info .scroll-menu .scroll-links:hover::after {
    transform: scaleX(1)
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div {
    max-height: 100%;
    width: 7.88rem;
    min-width: 450px;
    scroll-behavior: smooth
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div .optiscroll-content {
    right: -.2rem;
    padding-left: .5rem;
    left: 0 !important;
    overflow-x: hidden;
    bottom: 0 !important
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div .optiscroll-v {
    height: 100%;
    width: 1px;
    background: #70706E;
    border-radius: .4rem;
    left: 10px !important
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div .optiscroll-v .optiscroll-vtrack {
    background: #FAF9F6;
    opacity: 1;
    left: -2px;
    border-radius: .4rem
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section {
    padding-bottom: .32rem;
    border-bottom: 1px solid #70706E
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section:last-of-type {
    margin-bottom: .1rem
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section+div {
    padding-top: .32rem
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section p+p {
    padding-top: .24rem
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section h1,
.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section h2,
.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section h3,
.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section h4,
.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section h5,
.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section h6+p {
    padding-top: .24rem
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section h3 {
    padding-bottom: .28rem
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section .single-section-title {
    padding-top: 0
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section ol {
    list-style: decimal;
    padding-left: .2rem
}

.terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section ul {
    list-style: disc;
    padding-left: .2rem
}

@media screen and (max-width:768px) {
    .terms-section {
        height: unset;
        padding-top: .8rem
    }

    .terms-section .terms-wrapper {
        height: unset
    }

    .terms-section .terms-wrapper .text-wrapper .title-wrap {
        display: block
    }

    .terms-section .terms-wrapper .text-wrapper .title-wrap .title {
        font-size: .4rem;
        padding-bottom: .4rem;
        max-width: 100%;
        word-wrap: break-word
    }

    .terms-section .terms-wrapper .text-wrapper .title-wrap svg {
        display: none
    }

    .terms-section .terms-wrapper .text-wrapper .about-info .scroll-menu {
        display: none
    }

    .terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div {
        max-height: 100%;
        width: 100%;
        min-width: unset
    }

    .terms-section .terms-wrapper .text-wrapper .about-info .scrollable-div div.single-section:last-of-type {
        margin-bottom: 0
    }
}

.error-page {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    width: 100%
}

.error-page .error-container {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: flex-end;
    gap: .6rem;
    width: 100%;
    max-width: 13.2rem;
    padding: 2.33rem 1.1rem .96rem 2.98rem;
    margin: auto;
    min-height: 100%;
    flex-grow: 1
}

.error-page .error-container .title {
    max-width: 8.6rem;
    margin-right: .8rem;
    text-transform: uppercase
}

.error-page .error-container .title .deco {
    width: .85rem;
    height: .85rem;
    margin-top: -.2rem
}

.error-page .error-container .year {
    font-size: .9rem;
    display: flex;
    align-items: center;
    align-self: center
}

.error-page .error-container .year svg {
    width: .7rem;
    height: .7rem;
    margin-left: .1rem
}

.error-page .error-container .description-cta {
    max-width: 4.63rem
}

.error-page .error-container .description-cta .description {
    padding-bottom: .4rem
}

@media screen and (max-width:768px) {
    .error-page .error-container {
        justify-content: space-between;
        align-items: center;
        gap: .6rem;
        height: unset;
        max-width: 100%;
        width: 100%;
        padding: .8rem .15rem .8rem .15rem
    }

    .error-page .error-container .title {
        max-width: 100%;
        margin-right: 0;
        font-size: .45rem
    }

    .error-page .error-container .title .deco {
        display: none
    }

    .error-page .error-container .year {
        font-size: .6rem
    }

    .error-page .error-container .year svg {
        width: .5rem;
        height: .5rem;
        margin-left: 0
    }

    .error-page .error-container .description-cta {
        max-width: 100%
    }

    .error-page .error-container .description-cta .description {
        padding-bottom: .4rem
    }
}

body {
    font-size: .16rem;
    line-height: .24rem;
    font-weight: 500;
    overflow-x: hidden;
    position: relative;
    display: block;
    color: #FAF9F6;
    background-color: #141414;
    overflow-y: scroll;
    height: 100dvh;
    transition: background-color 0.3s ease
}

body.page-template-tpl-AR-page {
    background-color: #FAF9F6
}

body .otgs-development-site-front-end,
body .wpml-ls-statics-footer {
    display: none !important
}

main {
    height: 100dvh;
    transition: background-color 0.3s ease
}

.scrollbar {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 9999;
    height: 100%;
    background: #f0f0f0
}

.split-lines {
    overflow: hidden;
    line-height: .9;
    padding: .1rem 0;
    margin: -.1rem 0
}

.split-lines * {
    overflow: hidden
}

.split-lines div {
    padding: .1rem 0;
    margin: -.1rem 0
}

html {
    font-size: 8.953vh;
    font-family: "NeueHaasGroteskDisp Pro", sans-serif;
    transition: height 0.4s ease-in-out;
    height: 100dvh
}

html.glightbox-open {
    overflow: visible
}

@media screen and (max-width:768px) {
    html {
        font-size: 25.641vw;
        overflow-x: hidden
    }
}

.drag-proxy {
    position: absolute;
    visibility: hidden
}

.transition-fade {
    transition: opacity 400ms ease-in-out, height 0.4s ease-in-out;
    opacity: 1
}

html.is-animating body #swup.transition-fade {
    opacity: 0
}

.container {
    width: 100%;
    height: 100%;
    padding: .32rem
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .container {
        padding: .15rem
    }
}

html.lenis {
    height: auto
}

.lenis.lenis-smooth {
    scroll-behavior: auto
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain
}

.lenis.lenis-stopped {
    overflow: hidden
}

.lenis.lenis-scrolling iframe {
    pointer-events: none
}

.glightbox-container .goverlay {
    background: rgba(24, 24, 27, .98) !important
}

.glightbox-container .gclose {
    width: 0.46rem !important;
    height: 0.46rem !important;
    margin-top: .15rem;
    margin-right: .15rem;
    background-color: transparent !important;
    opacity: 1 !important
}

.glightbox-container .gclose:hover svg circle {
    fill: rgba(70, 70, 73, .65)
}

.glightbox-container .gclose svg {
    width: 0.46rem !important;
    height: 0.46rem !important;
    transition: fill 0.4s ease;
    stroke: none !important
}

.glightbox-container .gclose svg circle {
    transition: fill 0.3s ease;
    fill: transparent
}

.glightbox-container .gprev,
.glightbox-container .gnext {
    background-color: transparent !important;
    top: 50% !important;
    transform: translateY(-50%) !important
}

.glightbox-container .gprev svg,
.glightbox-container .gnext svg {
    width: .63rem;
    height: .27rem
}

@media screen and (max-width:768px) and (orientation:portrait) {

    .glightbox-container .gprev,
    .glightbox-container .gnext {
        top: unset !important;
        transform: unset !important;
        bottom: .35rem
    }
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .glightbox-container .gprev {
        left: 0.35rem !important
    }

    .glightbox-container .gnext {
        right: 0.35rem !important
    }
}

.glightbox-container .gslide-media {
    border-radius: .3rem
}

.glightbox-container .gslide-image img {
    max-width: 80vw;
    max-height: 85vh;
    border-radius: .3rem;
    overflow: hidden
}

.glightbox-container .plyr__poster {
    z-index: -5000
}

.glightbox-container .youtube-video .plyr__controls {
    display: none !important
}

.glightbox-container .youtube-video .plyr__control {
    display: none !important
}

.relative {
    position: relative
}

.display-hidden {
    display: none
}

.block {
    display: block
}

.inline-block {
    display: inline-block
}

.overflow-hidden {
    overflow: hidden
}

.pointer-events-none {
    pointer-events: none
}

.pointer-events-none * {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.transform-style {
    transform-style: preserve-3d
}

.text-uppercase {
    text-transform: uppercase
}

.text-capitalize {
    text-transform: capitalize
}

.w-full {
    width: 100%
}

span.text-stroke {
    -moz-text-fill-color: transparent;
    -webkit-text-fill-color: transparent;
    -moz-text-stroke-color: #FAF9F6;
    -webkit-text-stroke-color: #FAF9F6;
    -moz-text-stroke-width: .02rem;
    -webkit-text-stroke-width: .02rem
}

body.mobile .scroll-indicator,
body.tablet .scroll-indicator,
body.page-template-tpl-all-references .scroll-indicator,
body.page-template-tpl-about .scroll-indicator,
body.page-template-tpl-terms .scroll-indicator {
    display: none
}

body.page-template-tpl-theme-gallery .scroll-indicator,
body.page-template-tpl-theme .scroll-indicator {
    bottom: 1.3rem
}

.scroll-indicator {
    position: fixed;
    right: .4rem;
    bottom: .4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    height: .82rem;
    width: .82rem;
    border-radius: 50%;
    background-color: #141414;
    z-index: 9;
    pointer-events: none
}

@media screen and (max-width:768px) and (orientation:portrait) {
    .scroll-indicator {
        display: none
    }
}

.scroll-indicator .line {
    position: absolute;
    top: .25rem;
    left: 50%;
    transform: translateX(-50%);
    width: .07rem;
    height: .06rem;
    background-color: #141414;
    border-radius: 50%;
    z-index: 1
}

.scroll-indicator svg {
    width: .28rem;
    height: .42rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

/*!**********************************************************************************************************************************************************************************!*\
    !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/glightbox/dist/css/glightbox.css ***!
    \**********************************************************************************************************************************************************************************/
.glightbox-container {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999 !important;
    overflow: hidden;
    touch-action: none;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    backface-visibility: hidden;
    outline: none
}

.glightbox-container.inactive {
    display: none
}

.glightbox-container .gcontainer {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 9999;
    overflow: hidden
}

.glightbox-container .gslider {
    transition: transform 0.4s ease;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    position: relative;
    overflow: hidden;
    display: flex !important;
    justify-content: center;
    align-items: center;
    transform: translate3d(0, 0, 0)
}

.glightbox-container .gslide {
    width: 100%;
    position: absolute;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0
}

.glightbox-container .gslide.current {
    opacity: 1;
    z-index: 99999;
    position: relative
}

.glightbox-container .gslide.prev {
    opacity: 1;
    z-index: 9999
}

.glightbox-container .gslide-inner-content {
    width: 100%
}

.glightbox-container .ginner-container {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    max-width: 100%;
    margin: auto;
    height: 100vh
}

.glightbox-container .ginner-container.gvideo-container {
    width: 100%
}

.glightbox-container .ginner-container.desc-bottom,
.glightbox-container .ginner-container.desc-top {
    flex-direction: column
}

.glightbox-container .ginner-container.desc-left,
.glightbox-container .ginner-container.desc-right {
    max-width: 100% !important
}

.gslide iframe,
.gslide video {
    outline: none !important;
    border: none;
    min-height: 165px;
    -webkit-overflow-scrolling: touch;
    touch-action: auto
}

.gslide:not(.current) {
    pointer-events: none
}

.gslide-image {
    align-items: center
}

.gslide-image img {
    max-height: 100vh;
    display: block;
    padding: 0;
    float: none;
    outline: none;
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    max-width: 100vw;
    width: auto;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    touch-action: none;
    margin: auto;
    min-width: 200px
}

.desc-top .gslide-image img,
.desc-bottom .gslide-image img {
    width: auto
}

.desc-left .gslide-image img,
.desc-right .gslide-image img {
    width: auto;
    max-width: 100%
}

.gslide-image img.zoomable {
    position: relative
}

.gslide-image img.dragging {
    cursor: grabbing !important;
    transition: none
}

.gslide-video {
    position: relative;
    max-width: 100vh;
    width: 100% !important
}

.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster {
    display: none
}

.gslide-video .gvideo-wrapper {
    width: 100%;
    margin: auto
}

.gslide-video::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(255, 0, 0, .34);
    display: none
}

.gslide-video.playing::before {
    display: none
}

.gslide-video.fullscreen {
    max-width: 100% !important;
    min-width: 100%;
    height: 75vh
}

.gslide-video.fullscreen video {
    max-width: 100% !important;
    width: 100% !important
}

.gslide-inline {
    background: #fff;
    text-align: left;
    max-height: calc(100vh - 40px);
    overflow: auto;
    max-width: 100%;
    margin: auto
}

.gslide-inline .ginlined-content {
    padding: 20px;
    width: 100%
}

.gslide-inline .dragging {
    cursor: grabbing !important;
    transition: none
}

.ginlined-content {
    overflow: auto;
    display: block !important;
    opacity: 1
}

.gslide-external {
    display: flex;
    width: 100%;
    min-width: 100%;
    background: #fff;
    padding: 0;
    overflow: auto;
    max-height: 75vh;
    height: 100%
}

.gslide-media {
    display: flex;
    width: auto
}

.zoomed .gslide-media {
    box-shadow: none !important
}

.desc-top .gslide-media,
.desc-bottom .gslide-media {
    margin: 0 auto;
    flex-direction: column
}

.gslide-description {
    position: relative;
    flex: 1 0 100%
}

.gslide-description.description-left,
.gslide-description.description-right {
    max-width: 100%
}

.gslide-description.description-bottom,
.gslide-description.description-top {
    margin: 0 auto;
    width: 100%
}

.gslide-description p {
    margin-bottom: 12px
}

.gslide-description p:last-child {
    margin-bottom: 0
}

.zoomed .gslide-description {
    display: none
}

.glightbox-button-hidden {
    display: none
}

.glightbox-mobile .glightbox-container .gslide-description {
    height: auto !important;
    width: 100%;
    position: absolute;
    bottom: 0;
    padding: 19px 11px;
    max-width: 100vw !important;
    order: 2 !important;
    max-height: 78vh;
    overflow: auto !important;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .75) 100%);
    transition: opacity 0.3s linear;
    padding-bottom: 50px
}

.glightbox-mobile .glightbox-container .gslide-title {
    color: #fff;
    font-size: 1em
}

.glightbox-mobile .glightbox-container .gslide-desc {
    color: #a1a1a1
}

.glightbox-mobile .glightbox-container .gslide-desc a {
    color: #fff;
    font-weight: 700
}

.glightbox-mobile .glightbox-container .gslide-desc * {
    color: inherit
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
    color: #fff;
    opacity: .4
}

.gdesc-open .gslide-media {
    transition: opacity 0.5s ease;
    opacity: .4
}

.gdesc-open .gdesc-inner {
    padding-bottom: 30px
}

.gdesc-closed .gslide-media {
    transition: opacity 0.5s ease;
    opacity: 1
}

.greset {
    transition: all 0.3s ease
}

.gabsolute {
    position: absolute
}

.grelative {
    position: relative
}

.glightbox-desc {
    display: none !important
}

.glightbox-open {
    overflow: hidden
}

.gloader {
    height: 25px;
    width: 25px;
    animation: lightboxLoader 0.8s infinite linear;
    border: 2px solid #fff;
    border-right-color: transparent;
    border-radius: 50%;
    position: absolute;
    display: block;
    z-index: 9999;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 47%
}

.goverlay {
    width: 100%;
    height: calc(100vh + 1px);
    position: fixed;
    top: -1px;
    left: 0;
    background: #000;
    will-change: opacity
}

.glightbox-mobile .goverlay {
    background: #000
}

.gprev,
.gnext,
.gclose {
    z-index: 99999;
    cursor: pointer;
    width: 26px;
    height: 44px;
    border: none;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}

.gprev svg,
.gnext svg,
.gclose svg {
    display: block;
    width: 25px;
    height: auto;
    margin: 0;
    padding: 0
}

.gprev.disabled,
.gnext.disabled,
.gclose.disabled {
    opacity: .1
}

.gprev .garrow,
.gnext .garrow,
.gclose .garrow {
    stroke: #fff
}

.gbtn.focused {
    outline: 2px solid #0f3d81
}

iframe.wait-autoplay {
    opacity: 0
}

.glightbox-closing .gnext,
.glightbox-closing .gprev,
.glightbox-closing .gclose {
    opacity: 0 !important
}

.glightbox-clean .gslide-description {
    background: #fff
}

.glightbox-clean .gdesc-inner {
    padding: 22px 20px
}

.glightbox-clean .gslide-title {
    font-size: 1em;
    font-weight: 400;
    font-family: arial;
    color: #000;
    margin-bottom: 19px;
    line-height: 1.4em
}

.glightbox-clean .gslide-desc {
    font-size: .86em;
    margin-bottom: 0;
    font-family: arial;
    line-height: 1.4em
}

.glightbox-clean .gslide-video {
    background: #000
}

.glightbox-clean .gprev,
.glightbox-clean .gnext,
.glightbox-clean .gclose {
    background-color: rgba(0, 0, 0, .75);
    border-radius: 4px
}

.glightbox-clean .gprev path,
.glightbox-clean .gnext path,
.glightbox-clean .gclose path {
    fill: #fff
}

.glightbox-clean .gprev {
    position: absolute;
    top: -100%;
    left: 30px;
    width: 40px;
    height: 50px
}

.glightbox-clean .gnext {
    position: absolute;
    top: -100%;
    right: 30px;
    width: 40px;
    height: 50px
}

.glightbox-clean .gclose {
    width: 35px;
    height: 35px;
    top: 15px;
    right: 10px;
    position: absolute
}

.glightbox-clean .gclose svg {
    width: 18px;
    height: auto
}

.glightbox-clean .gclose:hover {
    opacity: 1
}

.gfadeIn {
    animation: gfadeIn 0.5s ease
}

.gfadeOut {
    animation: gfadeOut 0.5s ease
}

.gslideOutLeft {
    animation: gslideOutLeft 0.3s ease
}

.gslideInLeft {
    animation: gslideInLeft 0.3s ease
}

.gslideOutRight {
    animation: gslideOutRight 0.3s ease
}

.gslideInRight {
    animation: gslideInRight 0.3s ease
}

.gzoomIn {
    animation: gzoomIn 0.5s ease
}

.gzoomOut {
    animation: gzoomOut 0.5s ease
}

@keyframes lightboxLoader {
    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

@keyframes gfadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes gfadeOut {
    from {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes gslideInLeft {
    from {
        opacity: 0;
        transform: translate3d(-60%, 0, 0)
    }

    to {
        visibility: visible;
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes gslideOutLeft {
    from {
        opacity: 1;
        visibility: visible;
        transform: translate3d(0, 0, 0)
    }

    to {
        transform: translate3d(-60%, 0, 0);
        opacity: 0;
        visibility: hidden
    }
}

@keyframes gslideInRight {
    from {
        opacity: 0;
        visibility: visible;
        transform: translate3d(60%, 0, 0)
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes gslideOutRight {
    from {
        opacity: 1;
        visibility: visible;
        transform: translate3d(0, 0, 0)
    }

    to {
        transform: translate3d(60%, 0, 0);
        opacity: 0
    }
}

@keyframes gzoomIn {
    from {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    to {
        opacity: 1
    }
}

@keyframes gzoomOut {
    from {
        opacity: 1
    }

    50% {
        opacity: 0;
        transform: scale3d(.3, .3, .3)
    }

    to {
        opacity: 0
    }
}

@media (min-width:769px) {
    .glightbox-container .ginner-container {
        width: auto;
        height: auto;
        flex-direction: row
    }

    .glightbox-container .ginner-container.desc-top .gslide-description {
        order: 0
    }

    .glightbox-container .ginner-container.desc-top .gslide-image,
    .glightbox-container .ginner-container.desc-top .gslide-image img {
        order: 1
    }

    .glightbox-container .ginner-container.desc-left .gslide-description {
        order: 0
    }

    .glightbox-container .ginner-container.desc-left .gslide-image {
        order: 1
    }

    .gslide-image img {
        max-height: 97vh;
        max-width: 100%
    }

    .gslide-image img.zoomable {
        cursor: zoom-in
    }

    .zoomed .gslide-image img.zoomable {
        cursor: grab
    }

    .gslide-inline {
        max-height: 95vh
    }

    .gslide-external {
        max-height: 100vh
    }

    .gslide-description.description-left,
    .gslide-description.description-right {
        max-width: 275px
    }

    .glightbox-open {
        height: auto
    }

    .goverlay {
        background: rgba(0, 0, 0, .92)
    }

    .glightbox-clean .gslide-media {
        box-shadow: 1px 2px 9px 0 rgba(0, 0, 0, .65)
    }

    .glightbox-clean .description-left .gdesc-inner,
    .glightbox-clean .description-right .gdesc-inner {
        position: absolute;
        height: 100%;
        overflow-y: auto
    }

    .glightbox-clean .gprev,
    .glightbox-clean .gnext,
    .glightbox-clean .gclose {
        background-color: rgba(0, 0, 0, .32)
    }

    .glightbox-clean .gprev:hover,
    .glightbox-clean .gnext:hover,
    .glightbox-clean .gclose:hover {
        background-color: rgba(0, 0, 0, .7)
    }

    .glightbox-clean .gprev {
        top: 45%
    }

    .glightbox-clean .gnext {
        top: 45%
    }
}

@media (min-width:992px) {
    .glightbox-clean .gclose {
        opacity: .7;
        right: 20px
    }
}

@media screen and (max-height:420px) {
    .goverlay {
        background: #000
    }
}