.events__carousel {
    max-width: 1640px;
    margin: 0 auto 20px;
    position: relative;
    z-index: 5
}

.events__carousel .swiper {
    overflow: visible;
    padding: 0;
    margin-bottom: 20px;
    width: 90%
}

@media (min-width: 769px) {
    .events__carousel .swiper {
        width: 500px
    }
}

.events__carousel .swiper .event-card__image {
    position: relative;
    transform: scale(1.3);
    transition: transform 1s ease-out 1s, opacity .3s ease-out 1s;
    z-index: 100;
    opacity: 0
}

.events__carousel .swiper .event-backdrop {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: translate(-140%);
    background: #000;
    transition: transform 1s ease-out;
}

.events__carousel .swiper.shown .event-card__image {
    transform: scale(1);
    opacity: 1
}

.events__carousel .swiper.shown .event-backdrop {
    transform: translate(0)
}

.events__carousel .swiper-slide {
    position: relative;
    height: auto;
    transition: opacity .3s ease, transform .3s ease-out
}

.events__carousel .swiper-slide img {
    transition: transform .4s linear .4s, filter .4s ease-out;
    filter: saturate(.7) brightness(.7)
}

.events__carousel .swiper-slide.swiper-slide-active img {
    transform: scale(1.2);
    filter: saturate(1) brightness(1)
}

.events__text-carousel {
    position: relative;
    z-index: 5;
    margin: 0 auto;
    width: 90%;
    max-width: 1200px
}

.events__text-carousel .swiper {
    overflow: hidden;
    width: 100%
}

.events__text-carousel .swiper-slide {
    transition: opacity .3s ease
}

.events__link {
    align-items: center;
    gap: 10px;
    width: min-content;
    position: relative;
    color: #000;
    font-family: Corpo Light;
    font-variation-settings: "wght" 400;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    overflow: hidden;
    z-index: 1;
    box-shadow: 0 2px 6px #00000040
}

.events__link span {
    position: relative;
    top: 1px
}

.events__link:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(94.47deg, #77b2aa 16.57%, #95c8c1 28.69%, #e5e5e5 51.06%, #b7cfd9 77.15%, #b7cfd9 101.39%, #77b2aa 130%);
    background-size: 200% 200%;
    z-index: -1;
    animation: animateBackground 15s ease infinite
}

.events__link:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1px;
    background: linear-gradient(109.42deg, #00000080 9.87%, #0000, #00000080 88.38%, #00000080 120%);
    background-size: 200% 200%;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: exclude;
    pointer-events: none;
    animation: animateBorder 10s ease infinite
}

@keyframes animateBackground {
    0% {
        background-position: 0 0
    }
    50% {
        background-position: 100% 0
    }
    to {
        background-position: 0 0
    }
}

@keyframes animateBorder {
    0% {
        background-position: 0 0
    }
    50% {
        background-position: 100% 0
    }
    to {
        background-position: 0 0
    }
}

.event-card {
    position: relative;
    height: 506px;
    overflow: hidden;
    box-shadow: 0 10px 25px #0000001a;
    transition: transform .3s ease;
    background: #00000080
}

.event-card__image {
    margin: 0 auto;
    width: 100%;
    height: 100%
}

.event-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.event-card__content {
    position: relative;
    padding: 10px 20px;
    z-index: 8;
    opacity: 0;
    background: linear-gradient(180deg, #0000, #000c)
}

.event-card__title {
    color: #fff;
    font-family: Moniqa, sans-serif;
    font-variation-settings: "wght" 800;
    font-size: 45px;
    line-height: 100%;
    text-align: center;
    margin-bottom: 5px;
    text-transform: uppercase
}

.event-card__date {
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-variation-settings: "wght" 200;
    text-align: center;
    font-size: 18px;
    line-height: 40px;
    letter-spacing: 0%
}

.event-card__link {
    display: flex;
    padding: 10px 20px;
    margin: 0 auto;
    width: 192px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    position: relative;
    font-family: Montserrat;
    font-variation-settings: "wght" 400;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    white-space: nowrap;
    background-color: #02170f;
    transition: transform .3s ease;
    z-index: 5;
    opacity: 0
}

.event-card__link:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1px;
    background: linear-gradient(90deg, #ffffffe6, #0003, #ffffffe6, #0003, #ffffffe6);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: exclude;
    pointer-events: none;
    background-size: 200% 100%;
    animation: animateGradient 8s linear infinite
}

@keyframes animateGradient {
    0% {
        background-position: 0% 50%
    }
    to {
        background-position: 200% 50%
    }
}

.event-caption {
    text-align: center;
    padding: 10px 20px;
    font-family: Commons Light
}

@media (min-width: 769px) {
    .event-caption {
        margin-top: 70px
    }
}

@media (min-width: 1024px) {
    .event-caption {
        margin-top: 45px
    }
}

.event-caption h3 {
    color: #000;
    font-family: Corpo Light, sans-serif;
    font-size: 20px;
    line-height: 100%;
    text-transform: uppercase;
    margin-bottom: 8px
}

@media (min-width: 769px) {
    .event-caption h3 {
        font-size: 30px
    }
}

.event-caption p {
    color: #555;
    font-family: Montserrat, sans-serif;
    font-variation-settings: "wght" 400;
    font-size: 18px;
    line-height: 100%
}

.events__navigation {
    position: absolute;
    bottom: 15px;
    right: 20px;
    display: none;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-family: Montserrat, sans-serif;
    font-variation-settings: "wght" 400;
    font-variant-numeric: tabular-nums;
    font-size: 16px;
    line-height: 100%;
    text-align: center
}

.events__navigation .pagination__current {
    font-size: 25px
}

@media (min-width: 769px) {
    .events__navigation {
        display: flex
    }
}

.events__navigation .prev, .events__navigation .next {
    padding: 10px;
    border: none;
    outline: none;
    background: none;
    cursor: pointer;
    transition: transform .4s ease-out
}

@media (hover: hover) and (pointer: fine) {
    .events__navigation .prev:hover, .events__navigation .next:hover {
        transform: scale(1.1)
    }
}

.events__link span {
    position: relative;
    top: 2px
}

.conduct {
    padding: 0;
    position: relative;
    min-height: 100vh;
    background-color: #02170f
}

.conduct__title {
    position: sticky;
    top: 0;
    padding: 110px 0;
    z-index: 10
}

.conduct__title .main {
    color: #fff
}

.conduct__title .secondary {
    top: 108px
}

@media (min-width: 1024px) {
    .conduct__title .secondary {
        text-align: center
    }
}

@media (min-width: 1024px) {
    .conduct__title {
        width: 100%;
        justify-content: center
    }
}

.conduct li {
    padding: 0 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    height: 75dvh;
    font-family: Corpo SemiBold;
    font-size: 20px;
    text-align: center;
    color: #ffffffe5;
    opacity: .3;
    font-size: 15px;
    line-height: 25px;
    transition: opacity .8s ease-out
}

.conduct li p {
    position: relative;
    z-index: 10
}

@media (min-width: 769px) {
    .conduct li p {
        margin-top: 20px;
        font-family: Corpo SemiBold;
        font-variation-settings: "wght" 500;
        font-size: 15px;
        line-height: 25px;
        text-align: center;
        max-width: 500px
    }
}

.conduct li.show {
    opacity: 1
}

.conduct__item {
    position: relative;
    z-index: 10
}

.conduct__item-title {
    font-family: Corpo Light;
    font-weight: 300;
    font-size: 40px;
    line-height: 52px;
    text-align: center;
    position: relative;
    z-index: 10;
    will-change: opacity;
    transition: opacity .3s ease-out
}

@media (min-width: 430px) {
    .conduct__item-title {
        font-size: 30px
    }
}

.conduct__item-title * + p {
    will-change: opacity;
    transition: opacity .3s ease-out
}

.conduct__item-subtitle {
    margin-top: 7px;
    font-family: Corpo SemiBold;
    font-weight: 600;
    font-size: 15px;
    line-height: 25px;
    text-align: center
}

.conduct-hide, .conduct-hide + p {
    opacity: 0
}

#conductScreenWrapper {
    position: sticky;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: transparent;
    overflow: hidden
}

#conductScreenWrapper .overlayBg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #0003
}

#conductScreen {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transform: scale(1.5)
}

.zoomIn {
    animation-name: zoomIn;
    animation-iteration-count: infinite;
    animation-duration: 10s
}

@keyframes zoomIn {
    0% {
        transform: scale(1.5)
    }
    to {
        transform: scale(1)
    }
}

.reviews-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    height: 100dvh;
    padding: 27px;
    padding-top: calc(27px + env(safe-area-inset-top, 30px));
    padding-bottom: calc(27px + env(safe-area-inset-bottom, 30px));
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #02170f;
    background-position: top 0 left 0;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1000;
    opacity: 0;
    transition-behavior: allow-discrete;
    transform: scale(0);
    transition: display .4s ease-out, opacity .5s ease-out, transform .2s ease-out
}

.reviews-modal.show {
    display: flex;
    opacity: 1;
    transform: scale(1)
}

.reviews-modal__video-container {
    max-height: 70vh;
    width: 100%;
    max-width: 1200px;
    position: relative
}

.reviews-modal__loader {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #00000080;
    border-radius: 18px;
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease, visibility .3s ease
}

.reviews-modal__loader.active {
    opacity: 1;
    visibility: visible
}

.reviews-modal__actions-container {
    margin-top: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px
}

.reviews-modal__action-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 47px;
    height: 47px;
    border-radius: 100%;
    -webkit-backdrop-filter: blur(11.75px);
    backdrop-filter: blur(11.75px);
    background-color: #fff6;
    border: none;
    outline: none;
    cursor: pointer;
    transition: transform .4s ease-out
}

@media (hover: hover) and (pointer: fine) {
    .reviews-modal__action-btn:hover {
        transform: scale(1.06)
    }
}

.reviews-modal__action-btn.play {
    width: 70px;
    height: 70px
}

.reviews-modal__action-btn.play.playing .play-icon {
    display: none
}

.reviews-modal__action-btn.play.playing .pause-icon {
    display: block
}

.reviews-modal__action-btn.play .pause-icon {
    display: none
}

.reviews-modal__action-btn.play .play-icon {
    display: block;
    position: relative;
    left: 5px
}

.reviews-modal__progress {
    padding: 10px 0;
    position: relative;
    margin: 20px auto 0;
    width: 90%;
    height: 2px;
    background: #ffffff80;
    background-clip: content-box;
    box-sizing: content-box;
    cursor: pointer;
    transition: transform .3s ease-out
}

@media (hover: hover) and (pointer: fine) {
    .reviews-modal__progress:hover {
        transform: scaleY(1.2)
    }
}

.reviews-modal__progress-bar {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 4px;
    width: 0%;
    background-color: #fff;
    cursor: pointer;
    transition: transform .3s ease-out, width .1s linear;
    border-radius: 4px
}

@media (hover: hover) and (pointer: fine) {
    .reviews-modal__progress-bar:hover {
        transform: translateY(-50%) scaleY(1.5)
    }
}

#reviewsPlayer {
    width: 100%;
    height: 100%;
    min-height: 60dvh;
    flex: 1 1 auto;
    object-fit: cover;
    border: 3px solid #FFFFFF;
    border-radius: 18px
}

#closeReviewsModal {
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    margin-left: auto;
    border: none;
    background: none;
    cursor: pointer;
    transition: transform .3s ease-out
}

@media (hover: hover) and (pointer: fine) {
    #closeReviewsModal:hover {
        transform: scale(1.06)
    }
}

@starting-style {
    .reviews-modal.show {
        opacity: 0;
        transform: scale(0)
    }
}

.spinner {
    width: 50px;
    height: 50px;
    border: 4px solid rgba(255, 255, 255, .3);
    border-radius: 50%;
    border-top-color: #fff;
    animation: spin 1s ease-in-out infinite
}

@keyframes spin {
    to {
        transform: rotate(360deg)
    }
}

.reviews {
    position: relative;
    padding-top: 125px;
    padding-bottom: 100px
}

.reviews__link {
    position: relative;
    width: min-content;
    align-items: center;
    gap: 10px;
    font-family: Corpo Light;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    z-index: 10;
    color: #000;
    background-color: transparent;
    overflow: hidden
}
.buy__link__block{
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;

}
.buy__link__block p{
    font-size: 20px;
    padding: 13px 0;
    text-align:center !important;
    
}
.buy__link__wrapper{

}
.buy__link {
    position: relative;
    width: 100%;
    display: block;
    align-items: center;
    gap: 10px;
    font-family: Corpo Light;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    z-index: 10;
    color: #000;
    background-color: transparent;
    overflow: hidden;
    border-radius: 20px;
    padding: 13px 40px;
    text-decoration: none !important;
}
.b1{width: 30%;}
.b2{
    width: 70%;
    display: flex;
    gap: 40px;
}

@media (max-width: 768px) {
    .reviews__link {
        margin-top: -80px
    }
    .buy__link__block{
        flex-direction: column;
    }
    .buy__link__wrapper{
        flex-direction: column;
        width: 100%;
        gap: 20px;
    }
    .buy__link,.b2,.b1{
        width: 100%;

    }
}


.buy__link::before {
    border-radius: 20px;
}
.reviews__link:before,.buy__link::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid transparent;
    border-color: transparent;
    background-image: linear-gradient(109.42deg, #000 9.87%, #fff, #000 88.38%);
    background-origin: border-box;
    -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: borderMove 5s linear infinite;
    z-index: -1
}

@media (hover: hover) and (pointer: fine) {
    .reviews__link:hover svg {
        transform: translate(5px)
    }
}

.reviews__link span, .reviews__link svg {
    position: relative;
    z-index: 2;
    transition: transform .4s ease-out
}

.reviews-list {
    margin-top: 60px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow-x: hidden
}

.reviews-list .reviews-list-item__name {
    max-width: 60%;
    font-family: Corpo Light;
    font-size: 13px;
    text-transform: uppercase
}

@media (min-width: 769px) {
    .reviews-list .reviews-list-item__name {
        display: none
    }
}

.reviews-list.shown .reviews-list-item--odd {
    text-align: right
}

.reviews-list.shown .reviews-list-item--odd .video-btn {
    animation-name: showInBtn;
    animation-delay: 2s;
    animation-duration: 1.8s;
    animation-fill-mode: forwards
}

.reviews-list.shown .reviews-list-item--odd .reviews-list-item__link {
    animation-name: showInImg;
    animation-delay: 1s;
    animation-duration: 1.5s;
    animation-fill-mode: forwards
}

.reviews-list.shown .reviews-list-item--odd .reviews-list-item__name {
    animation-name: showInText;
    animation-delay: 1.5s;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.reviews-list.shown .reviews-list-item--odd.reviews-list__item:before {
    animation-name: slideInRightBefore;
    animation-delay: .5s;
    animation-duration: 1s;
    animation-fill-mode: forwards
}

.reviews-list.shown .reviews-list-item--even {
    text-align: left
}

.reviews-list.shown .reviews-list-item--even .video-btn {
    animation-name: showInBtn;
    animation-delay: 2s;
    animation-duration: 1.8s;
    animation-fill-mode: forwards
}

.reviews-list.shown .reviews-list-item--even .reviews-list-item__link {
    animation-name: showInImg;
    animation-delay: 1s;
    animation-duration: 1.5s;
    animation-fill-mode: forwards
}

.reviews-list.shown .reviews-list-item--even .reviews-list-item__name {
    animation-name: showInText;
    animation-delay: 1.5s;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.reviews-list.shown .reviews-list-item--even.reviews-list__item:before {
    animation-name: slideInLeftBefore;
    animation-delay: 0s;
    animation-duration: 1s;
    animation-fill-mode: forwards
}

.reviews-list-item__link {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding: 10px 14px;
    position: relative;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    font-family: Moniqa, sans-serif;
    font-variation-settings: "wght" 800;
    font-size: 20px;
    line-height: 100%;
    color: #fff;
    opacity: 0;
    transform: translate(-120%)
}

.reviews-list-item__name {
    position: relative;
    opacity: 0
}

.reviews-list__item {
    position: relative;
    overflow: hidden;
    width: 210px;
    height: 150px
}

@media (min-width: 580px) {
    .reviews-list__item {
        width: 300px;
        height: 200px
    }
}

@media (min-width: 680px) {
    .reviews-list__item {
        width: 390px;
        height: 230px
    }
}

@media (max-width: 400px) {
    .reviews-list__item {
        width: 190px
    }
}

@media (max-width: 370px) {
    .reviews-list__item {
        width: 170px
    }
}

@media (max-width: 340px) {
    .reviews-list__item {
        width: 155px
    }
}

.reviews-list__item:before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #2e2d2d2f;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    z-index: -1;
    opacity: 0;
    transform: translate(0)
}

.reviews-list__item .video-btn {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    transform: translate(-500%, -50%);
    background-color: #fff6;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-radius: 40px;
    z-index: 100;
    background-image: url(../img/icons/play.svg);
    background-position: top 50% left 60%;
    background-size: 50%;
    background-repeat: no-repeat;
    transition: box-shadow .3s ease-out;
    opacity: 0
}

@media (min-width: 769px) {
    .reviews-list__item .video-btn {
        width: 70px;
        height: 70px
    }
}

@media (hover: hover) and (pointer: fine) {
    .reviews-list__item .video-btn:hover {
        box-shadow: 0 0 4px 6px #00000016
    }
}

.reviews-list-item--even .reviews-list-item__link {
    justify-content: flex-start
}

@keyframes borderMove {
    0% {
        background-position: 0 0
    }
    to {
        background-position: 200px 0
    }
}

@keyframes showIn {
    0% {
        opacity: 0;
        transform: translate(-50%, 200%)
    }
    to {
        transform: translate(0);
        opacity: 1
    }
}

@keyframes showInBtn {
    0% {
        opacity: 0;
        transform: translate(-50%, 200%)
    }
    to {
        transform: translate(-50%, -50%);
        opacity: 1
    }
}

@keyframes showInImg {
    0% {
        opacity: 0;
        transform: scale(1.3)
    }
    to {
        transform: scale(1);
        opacity: 1
    }
}

@keyframes showInText {
    0% {
        opacity: 0;
        top: 100%
    }
    to {
        opacity: 1;
        top: 0
    }
}

@keyframes slideInRightBefore {
    0% {
        transform: translate(100%);
        opacity: 0
    }
    to {
        transform: translate(0);
        opacity: 1
    }
}

@keyframes slideInLeftBefore {
    0% {
        opacity: 0;
        transform: translate(-100%)
    }
    to {
        opacity: 1;
        transform: translate(0)
    }
}

.reviews-swiper {
    width: 500px;
    height: 500px;
    display: contents;
    overflow: visible;
    padding: 20px 0
}

.reviews-swiper .swiper-wrapper {
    display: contents
}

@media (min-width: 769px) {
    .reviews-swiper {
        display: block
    }

    .reviews-swiper .swiper-wrapper {
        display: flex
    }

    .reviews-swiper .swiper-slide {
        width: 498px;
        height: 453px
    }
}

.reviews__text-carousel {
    display: none;
    position: relative;
    margin-top: 45px
}

@media (min-width: 769px) {
    .reviews__text-carousel {
        display: block
    }
}

.reviews__text-carousel .reviews-caption h3 {
    font-family: Corpo Light;
    font-size: 30px;
    text-align: center;
    text-transform: uppercase
}

.reviews__navigation {
    margin: 20px 0 30px;
    position: static
}

@media (min-width: 1024px) {
    .reviews__navigation {
        margin: 0;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translate(-50%);
        z-index: 10
    }
}

#reviewsVideoBg {
    opacity: .5
}

.case {
    position: relative;
    padding: 100px 0;
    overflow: hidden;
    background-color: #02170f
}

@media (min-width: 1024px) {
    .case {
        background-color: #010c07
    }
}

.case .container {
    padding: 0 10px
}

.case__title .main {
    color: #fff
}

.case__carousel {
    margin-bottom: 20px;
    position: relative;
    z-index: 5
}

.case__carousel .swiper {
    overflow: visible;
    padding: 20px 0;
    margin-bottom: 20px
}

.case__carousel .swiper-slide {
    height: auto;
    transition: opacity .3s ease
}

.case__carousel--animated .case-card:before {
    background-color: #f5f5f5;
    animation-name: slide;
    animation-duration: 3s;
    animation-fill-mode: forwards;
    -webkit-backdrop-filter: blur(1px);
    backdrop-filter: blur(1px)
}

.case__carousel--animated .case-card:after {
    animation-name: show;
    animation-duration: 2s;
    animation-fill-mode: forwards;
    animation-delay: 3s
}

.case__carousel--animated .case-card .case-card__image img {
    animation-name: showIN;
    animation-duration: 3.4s;
    animation-fill-mode: forwards;
    animation-delay: 1.4s
}

.case__carousel--animated .case-card .case-card__link {
    animation-name: showBottomToTop;
    animation-duration: 2.1s;
    animation-fill-mode: forwards;
    animation-delay: 3s
}

.case__carousel--animated .case-card .case-card__content {
    animation-name: showBottomToTop;
    animation-duration: 2.1s;
    animation-fill-mode: forwards;
    animation-delay: 2.4s
}

.case__controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 20px
}

.case__controls.hide-controls {
    display: none
}

@media (min-width: 769px) {
    .case__controls {
        position: relative;
        justify-content: center
    }
}

.case__pagination {
    display: none;
    width: max-content
}

.case__pagination .swiper-pagination-bullet {
    margin: 0;
    width: 8px;
    height: 8px;
    background-color: #fff
}

@media (min-width: 769px) {
    .case__pagination {
        display: flex;
        align-items: center;
        justify-content: center
    }
}

.case__slide-navigation {
    display: none;
    position: static;
    color: #fff
}

.case__slide-navigation .pagination__total {
    opacity: .8
}

@media (min-width: 769px) {
    .case__slide-navigation {
        display: flex
    }
}

.case__buttons {
    display: flex;
    gap: 15px
}

@media (min-width: 769px) {
    .case__buttons {
        position: absolute;
        right: 40px;
        gap: 10px
    }
}

.case__button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 6px;
    width: 40px;
    height: 54px;
    border-radius: 21px;
    background: transparent;
    border: .5px solid #FFFFFF;
    cursor: pointer;
    transition: background-color .3s ease
}

@media (min-width: 769px) {
    .case__button {
        border: none
    }

    .case__button img {
        width: 12px
    }
}

@media (hover: hover) and (pointer: fine) {
    .case__button:hover {
        background-color: #ffffff1a
    }
}

.case__button:active {
    background-color: #fff3
}

.case__button--prev {
    transform: rotate(180deg)
}

.case__progress {
    flex: 1;
    height: 2px;
    background-color: #ffffff4d;
    border-radius: 2px;
    position: relative;
    overflow: hidden
}

@media (min-width: 769px) {
    .case__progress {
        display: none
    }
}

.case__progress-bar {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 0;
    background-color: #fff;
    border-radius: 2px;
    transition: width .3s ease
}

.case__link {
    position: relative;
    width: min-content;
    align-items: center;
    gap: 10px;
    font-family: Montserrat, sans-serif;
    font-variation-settings: "wght" 400;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    z-index: 10;
    color: #fff;
    background-color: transparent
}

.case__link:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid transparent;
    border-color: transparent;
    background-image: linear-gradient(109.42deg, #000 9.87%, #fff, #000 88.38%);
    background-origin: border-box;
    -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: borderMove 5.5s linear infinite;
    z-index: -1
}

@media (hover: hover) and (pointer: fine) {
    .case__link:hover svg {
        transform: translate(5px)
    }
}

.case__link span, .case__link svg {
    position: relative;
    z-index: 2;
    transition: transform .4s ease-out
}

.case-card {
    padding: 0 0 30px;
    position: relative;
    height: 506px;
    overflow: hidden;
    box-shadow: 0 10px 25px #0000001a;
    transition: transform .3s ease;
    background: #00000080
}

.case-card__image {
    top: 0;
    left: 0;
    position: absolute;
    margin: 0 auto;
    width: 100%;
    height: 100%
}

.case-card__image:before {
    position: absolute;
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #0000 30%, #000 80%, #000);
    z-index: 5
}

.case-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0
}

.case-card__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    width: 100%;
    bottom: 0;
    padding: 26px 18px;
    z-index: 8;
    opacity: 0;
    background: linear-gradient(180deg, #0000, #000c);
    -webkit-backdrop-filter: blur(1px);
    backdrop-filter: blur(1px)
}

@media (min-width: 1024px) {
    .case-card__content {
        gap: 10px;
        bottom: 20px
    }
}

.case-card__title {
    color: #fff;
    font-family: Corpo Light;
    font-size: 20px;
    line-height: 130%;
    text-align: center;
    text-transform: uppercase
}

.case-card:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #fbfbfb;
    z-index: 5;
    transition: width 1s ease-in-out;
    transform: translateZ(0);
    opacity: .5;
    -webkit-backdrop-filter: blur(1px);
    backdrop-filter: blur(1px)
}

.case-card:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #0000 51.78%, #000000d9 82.49%);
    z-index: 3;
    opacity: 0
}

.case-card__tag-wrapper {
    margin-top: 15px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px
}

.case-card__tag {
    padding: 10px;
    font-family: Commons Light;
    font-size: 18px;
    line-height: 15px;
    text-align: center;
    color: #fffc;
    background-color: #ffffff26;
    border-radius: 7px;
    white-space: nowrap
}

.case-card:hover {
    transform: translateY(-5px)
}

.case-card:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #0000 50%, #000000b3);
    z-index: 2
}

.case__link span {
    position: relative;
    top: 1px
}

.case__button--prev.disabled {
    opacity: .5;
    pointer-events: none;
    cursor: default
}

.offer-form {
    margin: 0 auto;
    max-width: 100%;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    overflow: hidden
}

@media (min-width: 1024px) {
    .offer-form {
        max-width: 620px;
        padding: 0 40px
    }
}

@media (min-width: 1440px) {
    .offer-form {
        margin-top: 35px;
        padding: 0
    }
}

.offer-form .slideIn {
    opacity: 0;
    transform: translateY(300%)
}

.offer-form.shown .slideIn {
    animation-name: slideInFromBottom;
    animation-duration: 1s;
    animation-fill-mode: forwards
}

.offer-form.shown .slideIn:nth-child(1) {
    animation-delay: .25s
}

.offer-form.shown .slideIn:nth-child(2) {
    animation-delay: .5s
}

.offer-form.shown .slideIn:nth-child(3) {
    animation-delay: .75s
}

.offer-form.shown .slideIn:nth-child(4) {
    animation-delay: 1s
}

.offer-form.shown .slideIn:nth-child(5) {
    animation-delay: 1.25s
}

.offer-form__input {
    padding: 14px 20px 10px;
    width: 100%;
    height: 45px;
    border: .5px solid #000000;
    border-radius: 10px;
    background-color: transparent;
    font-family: Commons Regular;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    box-sizing: border-box
}

.offer-form__input::placeholder {
    color: #00000080
}

.offer-form__input:focus-visible {
    outline: none;
    border: 1px solid rgba(92, 112, 171, .987)
}

.offer-form__input:user-invalid {
    border: 1px solid #f64447
}

.offer-form__checkbox-label {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: left;
    gap: 7px;
    font-family: Commons Light;
    font-size: 16px;
    line-height: 18px;
    color: #000507b2
}

.offer-form__checkbox-label span {
    padding-top: 4px
}

.offer-form__checkbox-label a {
    text-decoration: underline
}

@media (min-width: 1440px) {
    .offer-form__checkbox-label {
        padding: 0 40px
    }
}

.offer-form__checkbox {
    accent-color: red
}

.offer-form__submitbtn {
    margin: 20px auto 0;
    position: relative;
    padding: 13px 25px;
    width: min-content;
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: Montserrat, sans-serif;
    font-variation-settings: "wght" 400;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    border-radius: 100px;
    white-space: nowrap;
    border: none;
    z-index: 10;
    color: #000;
    background-color: #fff;
    transition: background-color .4s ease-out;
    cursor: pointer
}

@media (min-width: 1024px) {
    .offer-form__submitbtn {
        padding: 13px 40px
    }
}

.offer-form__submitbtn:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 100px;
    border: 1px solid transparent;
    border-color: transparent;
    background-image: linear-gradient(109.42deg, #000 9.87%, #fff, #000 88.38%);
    background-origin: border-box;
    -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: borderMove 5s linear infinite;
    z-index: -1
}

@media (hover: hover) and (pointer: fine) {
    .offer-form__submitbtn:hover {
        background-color: #7baaf611
    }
}

.offer-form__submitbtn span, .offer-form__submitbtn svg {
    position: relative;
    z-index: 2;
    transition: transform .4s ease-out
}

@keyframes slideInFromBottom {
    0% {
        opacity: 0;
        transform: translateY(300%)
    }
    to {
        transform: translateY(0);
        opacity: 1
    }
}

.offer-form__span {
    width: 88%
}

@media (min-width: 1024px) {
    .offer-form__span {
        width: 100%
    }
}

.offer {
    position: relative;
    padding: 110px 20px;
    background-image: url(../img/offer/offer_bg.jpg), linear-gradient(180deg, #eeeeef, #fff0 7.39%, #fff0 82.81%, #fff 99.48%);
    background-size: cover;
    background-repeat: no-repeat
}

@media (min-width: 769px) {
    .offer {
        padding: 110px 60px;
        background-image: url(../img/offer/offer_bg-lg.png), linear-gradient(180deg, #eeeeef, #fff0 7.39%, #fff0 82.81%, #fff 99.48%)
    }
}

@media (min-width: 1440px) {
    .offer .section__header {
        margin-bottom: 0
    }
}

.offer__title {
    text-wrap: balance
}

.offer__title .main {
    font-size: 28px !important
}

.offer__title .secondary {
    line-height: 50px;
    transform: translateY(-25%);
    letter-spacing: -3px
}

@media (min-width: 1024px) {
    .offer__title {
        text-align: center;
        justify-content: center
    }

    .offer__title .main, .offer__title .secondary {
        text-align: center;
        text-wrap: balance;
        font-size: 40px !important
    }

    .offer__title .secondary {
        transform: translateY(-25%)
    }
}

@media (min-width: 1440px) {
    .offer__title {
        margin-bottom: 0
    }

    .offer__title .main {
        margin: 0 auto;
        max-width: 920px;
        font-size: 55px !important;
        line-height: 73px
    }
}

.offer .blur {
    left: 0;
    position: absolute;
    height: 20px;
    width: 100%;
    bottom: -10px;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px)
}

.places {
    padding: 110px 0
}

@media (min-width: 769px) {
    .places {
        position: relative;
        padding: 140px 0
    }
}

.places__link {
    position: relative;
    width: min-content;
    align-items: center;
    gap: 10px;
    font-family: Montserrat, sans-serif;
    font-variation-settings: "wght" 400;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    z-index: 10;
    color: #000;
    background-color: transparent
}

.places__link:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid transparent;
    border-color: transparent;
    background-image: linear-gradient(109.42deg, #000 9.87%, #fff, #000 88.38%);
    background-origin: border-box;
    -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: borderMove 5s linear infinite;
    z-index: -1
}

@media (hover: hover) and (pointer: fine) {
    .places__link:hover svg {
        transform: translate(5px)
    }
}

.places__link span, .places__link svg {
    position: relative;
    z-index: 2;
    transition: transform .4s ease-out
}

.places__carousel {
    padding: 40px 0;
    margin: 30px auto 0;
    width: 100%;
    overflow: hidden
}

.places__carousel .swiper {
    width: 100%;
    overflow: visible
}

@media (max-width: 1023px) {
    .places__carousel .swiper {
        padding: 0 20px
    }
}

.places__carousel .swiper.shown .swiper-slide .place-img-container {
    transform: scale(1)
}

.places__carousel .swiper.shown .swiper-slide .place-img-container img {
    opacity: 1
}

.places__carousel .swiper.shown .swiper-slide .place-caption {
    transform: translateY(0)
}

.places__carousel .swiper.shown .swiper-slide:after {
    transform: translate(0)
}

.places__carousel .swiper-slide {
    overflow: hidden;
    position: relative;
    min-height: 450px;
    box-shadow: 2px 9px 12px 6px #0c0c0c33;
}

@media (min-width: 769px) {
    .places__carousel .swiper-slide {
        box-shadow: none
    }
}

.places__carousel .swiper-slide:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(185.58deg, #0000 51.78%, #000000d9 82.49%);
}

.places__carousel .swiper-slide:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #000;
    transform: translate(-200vw);
    transition: transform 1s ease-out;
}

.places__carousel .swiper-slide .place-caption {
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    color: #fff;
    font-family: Corpo ExtraLight;
    font-size: 20px;
    line-height: 30px;
    z-index: 100;
    transform: translateY(200px);
    transition: transform 1s ease-out 2s
}

.places__carousel .swiper-slide .place-caption__category {
    max-width: 80%;
    font-family: Corpo ExtraLight
}

.places__carousel .swiper-slide .place-caption__location {
    margin-top: 5px;
    font-family: Corpo ExtraLight;
    color: #ffffff80
}

.places__carousel .swiper-slide .place-link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 62px;
    width: 40px;
    border: 1px solid #FFFFFF;
}

@media (min-width: 1024px) {
    .places__carousel .swiper-slide .place-link {
        width: 50px;
        height: 70px;
    }
}

.places__carousel .swiper-slide .place-link:after {
    display: block;
    position: relative;
    content: "";
    height: 8px;
    width: 20px;
    background-image: url(../img/icons/arrow_right.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat
}

.places__carousel .swiper-slide .place-img-container {
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 10;
    transform: scale(1.3);
    transition: transform 1s ease-out 1s;
    background-color: #0000000b
}

.places__carousel .swiper-slide .place-img-container img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    transition: opacity 1s ease-out 1s;
    opacity: 0
}

.places__carousel .swiper-slide .place-img-container:after {
    top: 0;
    left: 0;
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(185.58deg, #0000 51.78%, #000000d9 82.49%);
    z-index: 20
}

.lotus {
    display: flex;
    flex-direction: column;
    position: relative;
    padding: 115px 0 45px;
    overflow: hidden;
    background-color: #fff;
    background-image: url(../img/lotus/lotus.jpg);
    background-size: cover;
    background-position: top 0 left -100%;
    background-repeat: no-repeat;
    height: 100vh;
    min-height: 900px
}

@media (min-width: 1024px) {
    .lotus {
        padding: 115px 20px 45px;
        flex-direction: row;
        justify-content: space-between;
        background-image: linear-gradient(180deg, #0000004d 14.34%, #0000 76.59%), url(../img/lotus/lotus-lg.webp);
        background-attachment: fixed
    }
}

@media (min-width: 1440px) {
    .lotus {
        justify-content: flex-start;
        padding: 115px 100px 45px;
        gap: 200px
    }
}

@media (min-width: 1640px) {
    .lotus {
        padding: 115px 140px 45px;
        gap: 390px
    }
}

.lotus:after {
    position: absolute;
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    transform: translate(100vw)
}

.lotus.shown {
    animation-name: showBG;
    animation-duration: 3s;
    animation-delay: 1s;
    animation-fill-mode: forwards
}

.lotus.shown .lotus__title {
    animation-name: slideIn;
    animation-duration: 2s;
    animation-delay: 3s;
    animation-fill-mode: forwards
}

.lotus.shown .lotus__subtitle {
    animation-name: slideIn;
    animation-duration: 2s;
    animation-delay: 3.5s;
    animation-fill-mode: forwards
}

.lotus.shown .lotus__link {
    animation-name: slideIn;
    animation-duration: 2s;
    animation-delay: 4s;
    animation-fill-mode: forwards
}

.lotus.shown:after {
    animation-name: showBackdrop;
    animation-duration: 2s;
    animation-fill-mode: backwards;
    animation-timing-function: cubic-bezier(.2, .4, 0, 1.04)
}

.lotus__inner-wrapper {
    display: contents
}

@media (min-width: 1024px) {
    .lotus__inner-wrapper {
        max-width: 1230px;
        display: flex;
        gap: 15px;
        flex-direction: column;
        align-items: flex-start;
        justify-content: start
    }
}

.lotus__title {
    opacity: 0;
    z-index: 10;
    flex-grow: 0;
    margin-bottom: 40px
}

@media (min-width: 1024px) {
    .lotus__title {
        margin-bottom: 50px
    }
}

.lotus__title .main {
    position: relative;
    z-index: 2
}

.lotus__title .main, .lotus__title .secondary {
    color: #000;
    height: auto
}

.lotus__title .secondary {
    top: 28px;
    color: #fff;
    opacity: .8;
    z-index: 1
}

@media (min-width: 1024px) {
    .lotus__title .secondary {
        text-align: center
    }
}

@media (min-width: 1024px) {
    .lotus__title {
        margin-bottom: 100px;
        width: 100%;
        justify-content: center
    }
}

@media (min-width: 1024px) {
    .lotus__title {
        margin: 0;
        width: max-content;
        text-align: left
    }

    .lotus__title .main {
        color: #fff
    }
}

.lotus .container {
    padding: 0 10px
}

.lotus__subtitle {
    margin: -15px auto 0;
    max-width: 64%;
    font-family: Commons Light;
    font-size: 18px;
    line-height: 140%;
    font-weight: 400;
    text-align: center;
    transform: translateY(110vh);
    opacity: 0
}

@media (min-width: 1024px) {
    .lotus__subtitle {
        max-width: 436px;
        max-width: 80%;
        margin: 0;
        width: max-content;
        text-align: left;
        color: #fff
    }
}

.lotus__link {
    margin: auto auto 0;
    position: relative;
    padding: 10px 20px;
    width: min-content;
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: Corpo Light;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    z-index: 10;
    color: #fff;
    background-color: transparent;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    transition: background-color .4s ease-out
}

.lotus__link:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid transparent;
    border-color: transparent;
    background-image: linear-gradient(109.42deg, #878787 9.87%, #fff, #878787 88.38%);
    background-origin: border-box;
    -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: borderMove 5.5s linear infinite;
    z-index: -1
}

@media (hover: hover) and (pointer: fine) {
    .lotus__link:hover {
        background-color: #0000000d
    }

    .lotus__link:hover svg {
        transform: translate(5px)
    }
}

@media (min-width: 1024px) {
    .lotus__link {
        margin: 0;
        height: max-content;
        padding: 10px 40px;
        border-radius: 40px;
        transform: translateY(110vh);
        opacity: 0
    }

    .lotus__link:before {
        border-radius: 40px
    }
}

.lotus__link span {
    position: relative;
    z-index: 2;
    transition: transform .4s ease-out
}

@keyframes showBG {
    0% {
        background-position: top 0 left -100%
    }
    to {
        background-position: top 0 left 50%
    }
}

@keyframes slideIn {
    0% {
        transform: translateY(110vh);
        opacity: 0
    }
    to {
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes showBackdrop {
    0% {
        opacity: 1;
        transform: translate(100vw)
    }
    to {
        opacity: .3;
        transform: translate(0)
    }
}

.about {
    position: relative;
    overflow: hidden;
    background-color: #fff;
    padding: 140px 0 55px
}

@media (min-width: 1440px) {
    .about .container {
        position: relative;
        z-index: 1;
        display: flex;
        gap: 140px
    }
}

.about__inner-container {
    display: contents
}

@media (min-width: 1440px) {
    .about__inner-container {
        display: block;
        width: 50%
    }
}

@media (min-width: 1440px) {
    .about__section-header {
        margin-bottom: 0
    }
}

.about__carousel {
    margin-bottom: 20px;
    position: relative;
    z-index: 5
}

@media (min-width: 1440px) {
    .about__carousel {
        position: relative;
        overflow: hidden;
        transform: translate(-30px);
        width: 114%
    }
}

.about__carousel .swiper {
    overflow: visible;
    padding: 20px 0;
    margin-bottom: 20px
}

@media (min-width: 1024px) {
    .about__carousel .swiper {
        height: 400px
    }
}

@media (min-width: 1440px) {
    .about__carousel .swiper {
        height: 286px;
        width: 360px
    }
}

.about__carousel .swiper-slide {
    height: auto;
    transition: opacity .3s ease
}

.about__carousel .swiper-slide img {
    width: 100%;
    object-fit: cover
}

.about__carousel--animated .swiper-slide:before {
    background-color: #f5f5f5;
    animation-name: slide;
    animation-duration: 3s;
    animation-fill-mode: forwards;
    -webkit-backdrop-filter: blur(1px);
    backdrop-filter: blur(1px)
}

.about__carousel--animated .swiper-slide:after {
    animation-name: show;
    animation-duration: 2s;
    animation-fill-mode: forwards;
    animation-delay: 3s
}

.about__carousel--animated .swiper-slide img {
    animation-name: showIN;
    animation-duration: 3.4s;
    animation-fill-mode: forwards;
    animation-delay: 1.4s
}

.about__pagination {
    display: none
}

@media (min-width: 1440px) {
    .about__pagination {
        margin-top: -10px;
        display: flex;
        align-items: center;
        justify-content: center
    }

    .about__pagination .swiper-pagination-bullet {
        background-color: #000
    }
}

.about__progress {
    margin: 0 auto;
    width: 70%;
    flex: 1;
    height: 2px;
    background-color: #0003;
    border-radius: 2px;
    position: relative;
    overflow: hidden
}

@media (min-width: 1440px) {
    .about__progress {
        display: none
    }
}

.about__progress-bar {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 0;
    background-color: #000;
    border-radius: 2px;
    transition: width .3s ease
}

.about .about-text {
    overflow: hidden;
    font-family: Montserrat, sans-serif;
    font-variation-settings: "wght" 400;
    font-size: 14px;
    line-height: 22px
}

@media (min-width: 1024px) {
    .about .about-text {
        margin-top: 40px
    }
}

@media (min-width: 1200px) {
    .about .about-text {
        padding: 0 12px
    }
}

@media (min-width: 1440px) {
    .about .about-text {
        padding-left: 90px;
        margin-top: 0
    }
}

@media (min-width: 1700px) {
    .about .about-text {
        padding-left: 160px;
        margin-top: 0
    }
}

@media (min-width: 1800px) {
    .about .about-text {
        padding-left: 180px;
        margin-top: 0
    }
}

.about .about-text__title {
    margin-bottom: 10px;
    font-family: Corpo ExtraLight;
    font-size: 20px;
    line-height: 150%
}

@media (min-width: 1440px) {
    .about .about-text__title {
        margin-bottom: 25px;
        font-family: Commons Regular;
        font-size: 22px;
        font-weight: 400
    }
}

.about .about-text__paragraph {
    font-family: Commons Light;
    font-size: 20px;
    line-height: 130%;
    margin-bottom: 15px;
    transition-behavior: allow-discrete;
    transition: display .3s ease-out, opacity .3s ease-out;
    height: min-content
}

.about .about-text__paragraph.text--hidden {
    display: none
}

@media (min-width: 1440px) {
    .about .about-text__paragraph.text--hidden {
        display: block
    }
}

@media (min-width: 1440px) {
    .about .about-text__paragraph {
        font-family: Commons Light;
        font-size: 20px;
        line-height: 170%;
        margin-bottom: 22px
    }
}

.about .about-text__readmore {
    margin-top: 0;
    display: block;
    font-family: Corpo ExtraLight;
    font-size: 15px;
    line-height: 25px;
    color: #000000b2;
    transition-behavior: allow-discrete;
    transition: display .3s ease-out, opacity .3s ease-out
}

@media (min-width: 1440px) {
    .about .about-text__readmore {
        display: none
    }
}

.about .swiper-slide {
    position: relative;
    overflow: hidden;
    box-shadow: 0 10px 25px #0000001a;
    transition: transform .3s ease;
    background: #00000080
}

.about .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0
}

.about .swiper-slide:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #fbfbfb;
    z-index: 5;
    transition: width 1s ease-in-out;
    transform: translateZ(0);
    opacity: .5;
    -webkit-backdrop-filter: blur(1px);
    backdrop-filter: blur(1px)
}

.about .swiper-slide:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #0000 51.78%, #000000d9 82.49%);
    z-index: 3;
    opacity: 0
}

.about .swiper-slide__link {
    display: flex;
    padding: 10px 20px;
    margin: 0 auto;
    width: 192px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    position: relative;
    font-family: Montserrat;
    font-variation-settings: "wght" 400;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    white-space: nowrap;
    background-color: #02170f;
    transition: transform .3s ease;
    z-index: 5;
    opacity: 0
}

.about .swiper-slide__link:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1px;
    background: linear-gradient(90deg, #ffffffe6, #0003, #ffffffe6, #0003, #ffffffe6);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: exclude;
    pointer-events: none;
    background-size: 200% 100%;
    animation: animateGradient 8s linear infinite
}

.about .swiper-slide:hover {
    transform: translateY(-5px)
}

@keyframes animateGradient {
    0% {
        background-position: 0% 0
    }
    to {
        background-position: 200% 0
    }
}

.about .swiper-slide:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #0000 50%, #000000b3);
    z-index: 2
}

@starting-style {
    .about-text__paragraph {
        opacity: 0
    }

    .about-text__readmore {
        opacity: 1
    }
}

.section__video-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
    pointer-events: none
}

.records-desktop {
    display: none
}

@media (min-width: 1440px) {
    .records-desktop {
        display: grid;
        padding: 0 40px;
        grid-template-columns:1fr 1.2fr;
        gap: 40px
    }
}

@media (min-width: 1700px) {
    .records-desktop {
        padding: 0
    }
}

.records-desktop .records-list-desktop {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 40px
}

.records-desktop .img-wrapper {
    width: 100%;
    height: 540px;
    overflow: hidden;
}

.records-desktop .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-100%);
    opacity: 0
}

.records-desktop .record-card-desktop {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 40px 35px;
    border: 3px solid #E6EBF5;
    opacity: 0
}

.records-desktop .record-card-desktop__number {
    font-family: Moniqa, sans-serif;
    font-variation-settings: "wght" 800;
    font-size: 80px;
    line-height: 100%;
    white-space: nowrap;
    opacity: 0
}

.records-desktop .record-card-desktop__text {
    font-family: Commons Light;
    font-size: 22px;
    line-height: 20px
}

.records-desktop .record-card-desktop--filled {
    background: #e6ebf5
}

.records-desktop-title-text {
    position: relative;
    display: none;
    font-family: Commons Light;
    font-weight: 300;
    font-size: 18px;
    line-height: 170%;
    transform: translate(200%) scaleX(0);
    opacity: 0
}

@media (min-width: 1440px) {
    .records-desktop-title-text {
        display: block;
        max-width: 800px
    }
}

.records .section__header {
    gap: 50px
}

@media (min-width: 1440px) {
    .records .section__header {
        margin-bottom: 70px
    }
}

.records .section__header .main {
    white-space: nowrap
}

@media (min-width: 1700px) {
    .records .section__header {
        gap: 120px
    }
}

.records-desktop.shown .img-wrapper img {
    animation-name: recordsIMG;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-desktop.shown .record-card-desktop {
    animation-name: recordsCard;
    animation-duration: 2s;
    animation-fill-mode: forwards;
    animation-delay: 2s;
    animation-timing-function: ease-in
}

.records-desktop.shown .record-card-desktop__number {
    animation-name: recordsCardNumber;
    animation-duration: 2s;
    animation-fill-mode: forwards;
    animation-delay: 4s;
    animation-timing-function: ease-in
}

.records-desktop.shown .record-card-desktop:nth-child(1) {
    animation-delay: 2.25s
}

.records-desktop.shown .record-card-desktop__number:nth-child(1) {
    animation-delay: 4.25s
}

.records-desktop.shown .record-card-desktop:nth-child(2) {
    animation-delay: 2.5s
}

.records-desktop.shown .record-card-desktop__number:nth-child(2) {
    animation-delay: 4.5s
}

.records-desktop.shown .record-card-desktop:nth-child(3) {
    animation-delay: 2.75s
}

.records-desktop.shown .record-card-desktop__number:nth-child(3) {
    animation-delay: 4.75s
}

.records-desktop.shown .record-card-desktop:nth-child(4) {
    animation-delay: 3s
}

.records-desktop.shown .record-card-desktop__number:nth-child(4) {
    animation-delay: 5s
}

.records:has(.records-desktop.shown) .records-desktop-title-text {
    animation-name: recordsTEXT;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

@keyframes recordsIMG {
    0% {
        transform: translate(-100%);
        opacity: 0
    }
    to {
        transform: translate(0);
        opacity: 1
    }
}

@keyframes recordsTEXT {
    0% {
        transform: translate(200%) scaleX(0);
        opacity: 0
    }
    to {
        transform: translate(0) scaleX(1);
        opacity: 1
    }
}

@keyframes recordsCard {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes recordsCardNumber {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

.records {
    padding: 100px 0 20px
}

.mobile-br {
    display: none
}

@media (max-width: 375px) {
    .mobile-br {
        display: block
    }

    .records__title {
        text-align: center
    }
}

.records-list {
    margin-top: 40px;
    padding: 13px 0
}

@media (min-width: 640px) {
    .records-list {
        display: grid;
        grid-template-columns:1fr 1fr;
        gap: 20px
    }
}

@media (min-width: 1440px) {
    .records-list {
        display: none
    }
}

.record-card {
    position: relative;
    display: flex;
    margin-bottom: 13px;
    width: 100%;
    height: 170px;
    color: #fff;
    overflow: hidden
}

@media (min-width: 769px) {
    .record-card {
        height: 240px
    }
}

.record-card:after {
    display: block;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
    background-color: #02170f;
}

.record-card__text {
    position: relative;
    padding: 10px;
    align-content: center;
    height: 100%;
    width: 165px;
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    z-index: 3;
    opacity: 0;
    transform: translateY(500px)
}

.record-card__img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 2;
    opacity: 0;
    transform: scale(1.3)
}

.record-card--left {
    justify-content: flex-start
}

.record-card--left .record-card__text {
    background: linear-gradient(90deg, #000c, #0000);
}

.record-card--left:after {
    left: -100%
}

.record-card--right {
    justify-content: flex-end
}

.record-card--right .record-card__text {
    background: linear-gradient(90deg, #0000, #000000b3);
}

.record-card--right:after {
    left: 100%
}

.record-card .text {
    margin-top: 10px;
    font-family: Commons Light;
    font-size: 19px;
    line-height: 18px;
    text-align: center
}

.record-card .numbers {
    font-family: Corpo ExtraLight;
    font-size: 34px;
    line-height: 28px;
    font-weight: 300;
    text-align: center
}

.records-list.shown .record-card:nth-child(1):after {
    animation-delay: .2s
}

.records-list.shown .record-card:nth-child(1).record-card--left:after {
    animation-name: showOverlayLeft;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(1).record-card--right:after {
    animation-name: showOverlayRight;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(1) .record-card__img {
    animation-name: scaleInImg;
    animation-delay: 2.2s;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(1) .record-card__text {
    animation-name: slideInText;
    animation-delay: 4.2s;
    animation-duration: 1s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(2):after {
    animation-delay: .4s
}

.records-list.shown .record-card:nth-child(2).record-card--left:after {
    animation-name: showOverlayLeft;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(2).record-card--right:after {
    animation-name: showOverlayRight;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(2) .record-card__img {
    animation-name: scaleInImg;
    animation-delay: 2.4s;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(2) .record-card__text {
    animation-name: slideInText;
    animation-delay: 4.4s;
    animation-duration: 1s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(3):after {
    animation-delay: .6s
}

.records-list.shown .record-card:nth-child(3).record-card--left:after {
    animation-name: showOverlayLeft;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(3).record-card--right:after {
    animation-name: showOverlayRight;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(3) .record-card__img {
    animation-name: scaleInImg;
    animation-delay: 2.6s;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(3) .record-card__text {
    animation-name: slideInText;
    animation-delay: 4.6s;
    animation-duration: 1s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(4):after {
    animation-delay: .8s
}

.records-list.shown .record-card:nth-child(4).record-card--left:after {
    animation-name: showOverlayLeft;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(4).record-card--right:after {
    animation-name: showOverlayRight;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(4) .record-card__img {
    animation-name: scaleInImg;
    animation-delay: 2.8s;
    animation-duration: 2s;
    animation-fill-mode: forwards
}

.records-list.shown .record-card:nth-child(4) .record-card__text {
    animation-name: slideInText;
    animation-delay: 4.8s;
    animation-duration: 1s;
    animation-fill-mode: forwards
}

@keyframes showOverlayLeft {
    0% {
        left: -100%
    }
    to {
        left: 0
    }
}

@keyframes showOverlayRight {
    0% {
        left: 100%
    }
    to {
        left: 0
    }
}

@keyframes scaleInImg {
    0% {
        transform: scale(1.3);
        opacity: 0
    }
    to {
        transform: scale(1);
        opacity: 1
    }
}

@keyframes slideInText {
    0% {
        opacity: 0;
        transform: translateY(500px)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.footer {
    padding: 40px 0;
    padding-bottom: calc(40px + env(safe-area-inset-bottom, 30px));
    padding-bottom: 20px;
    background-color: #02170f;
    border-top: .5px solid rgba(0, 0, 0, .5019607843);
    color: #ffffffb6;
    font-family: Commons Light;
    font-size: 13px
}

@media (min-width: 1150px) {
    .footer {
        padding: 60px 40px 0;
        min-height: unset;
        height: max-content;
        display: grid;
        grid-template-areas:"nav nav nav contacts" "policy policy policy social" "copy copy copy social" "arista arista arista social";
        grid-template-rows:max-content 100px 50px 40px;
        justify-content: space-between;
        font-weight: 400;
        font-size: 18px;
        line-height: 140%
    }
}

@media (min-width: 1440px) {
    .footer {
        padding: 60px 20px 0
    }
}

@media (min-width: 1700px) {
    .footer {
        padding: 60px 40px
    }
}

@media (min-width: 1800px) {
    .footer {
        padding: 60px 90px
    }
}

@media (min-width: 1900px) {
    .footer {
        padding: 60px 140px 60px 160px
    }
}

.footer__logo {
    margin: 0 auto;
    display: block;
    width: 178px;
    height: 104px
}

@media (min-width: 1150px) {
    .footer__logo {
        display: none
    }
}

.footer__logo.desktop {
    margin-bottom: 40px;
    display: none
}

@media (min-width: 1150px) {
    .footer__logo.desktop {
        display: block;
        margin: 0 auto 50px
    }
}

.footer .mobile-nav__list {
    margin-top: 30px;
    gap: 0
}

.footer .mobile-nav__link {
    font-family: Corpo ExtraLight;
    font-size: 15px;
    line-height: 100%;
    color: #fff;
    opacity: 80%
}

.footer .mobile-nav__item {
    padding: 12px 40px;
    width: 100%;
    border-bottom: .5px solid rgba(255, 255, 255, .1);
    text-align: center;
    transition: background-color .3s ease-out
}

.footer .mobile-nav__item.active {
    background-color: #ffffff08
}

.footer .collapse-list__item {
    font-family: Commons Regular;
    font-size: 18px;
    opacity: 90%
}

.footer .footer-nav-desktop__title {
    margin-top: 0 !important;
    font-family: Corpo Light, sans-serif;
    font-size: 18px;
    color: #fff
}

.footer .footer-nav-desktop__item_first {
    max-width: 300px
}

@media (max-width: 1280px) {
    .footer .footer-nav-desktop__item_first {
        max-width: 200px
    }
}

.footer .footer-nav-desktop__item_second {
    max-width: 185px
}

.footer .footer-nav-desktop__item_third {
    max-width: 192px
}

.footer .footer-nav-desktop__item_fourth {
    max-width: 142px
}

.footer .footer-nav-desktop__mb20 {
    margin-bottom: 20px !important
}

.footer .footer-nav-desktop__mb30 {
    margin-bottom: 30px !important
}

.footer .footer-nav-desktop__mb50 {
    margin-bottom: 50px !important
}

@media (min-width: 1150px) {
    .footer .mobile-nav__menu {
        display: none
    }
}

.footer .footer-nav-desktop {
    display: none
}

@media (min-width: 1441px) {
    .footer .footer-nav-desktop {
        display: grid;
        grid-template-columns:repeat(4, 1fr);
        gap: 40px;
        justify-content: space-between
    }
}

.footer .footer-nav-desktop h3 {
    margin-top: 30px;
    margin-bottom: 10px;
    color: #fff;
    text-transform: uppercase;
    font-family: Corpo Light, sans-serif;
    font-weight: 300;
    font-size: 18px;
    line-height: 130%
}

.footer .footer-nav-desktop .dropdown-subsection-title {
    display: block;
    margin: 20px 0 5px -10px;
    color: #fff
}

.footer .footer-nav-desktop-1150 {
    display: none
}

@media (max-width: 1439px) {
    .footer .footer-nav-desktop-1150 {
        display: grid;
        grid-template-columns:repeat(4, 1fr);
        gap: 40px;
        justify-content: space-between
    }
}

.footer .mobile-nav__social {
    grid-area: social;
    margin-top: auto;
    gap: 18px
}

@media (max-width: 1149px) {
    .footer .mobile-nav__social {
        margin-top: 20px
    }
}

.footer .mobile-nav__phone-link {
    font-variation-settings: "wght" 400;
    font-size: 14px;
    line-height: 100%
}

.footer .mobile-nav__footer {
    border: none;
    margin-top: 20px;
    gap: 0
}

.footer .footer__contacts {
    margin-top: 25px;
    grid-area: contacts
}

@media (min-width: 1150px) {
    .footer .footer__contacts {
        margin-top: 50px;
        justify-content: flex-end
    }

    .footer .footer__contacts_mt0 {
        margin-top: 0 !important;
        margin-left: 0 !important
    }
}

.footer .mobile-nav__info {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px
}

.footer .mobile-nav__info img {
    height: 15px;
    opacity: .7
}

@media (min-width: 1150px) {
    .footer .mobile-nav__info {
        justify-content: center
    }
}

.footer .mobile-nav__info_50px {
    justify-content: center;
    margin-bottom: 50px
}

@media (max-width: 1150px) {
    .footer .mobile-nav__info_50px {
        margin-bottom: 25px
    }
}

.footer__policy {
    color: #fff;
    text-align: center;
    margin-top: 35px;
    grid-area: policy;
    opacity: 70%;
    margin-bottom: 25px
}

@media (min-width: 1150px) {
    .footer__policy {
        display: flex;
        gap: 20px
    }
}

.footer__policy-link {
    margin-top: 10px;
    display: block;
    text-align: center;
    text-decoration: underline
}

@media (hover: hover) and (pointer: fine) {
    .footer__policy-link {
        transition: text-shadow .3s ease-out
    }

    .footer__policy-link:hover {
        text-shadow: .1px .7px #ffffff
    }
}

@media (min-width: 1150px) {
    .footer__policy-link {
        text-align: left
    }
}

.footer__copyright {
    grid-area: copy;
    text-align: center;
    color: #ffffff4d;
    font-weight: 400;
    font-size: 16px;
    line-height: 100%
}

@media (min-width: 1150px) {
    .footer__copyright {
        text-align: left
    }
}

.arista_group {
    grid-area: arista;
    margin-top: 10px
}

.arista_group a {
    width: 100%;
    justify-content: center;
    text-align: center;
    display: flex;
    align-items: center;
    gap: 2px;
    color: #ffffff4d;
    font-weight: 400;
    font-size: 16px;
    line-height: 100%
}

@media (min-width: 1150px) {
    .arista_group a {
        justify-content: flex-start
    }
}

@media (hover: hover) and (pointer: fine) {
    .arista_group a {
        transition: text-shadow .3s ease-out
    }

    .arista_group a:hover {
        text-shadow: .1px .7px #ffffff
    }
}

.footer-nav-desktop__link {
    display: block;
    margin-bottom: 15px
}

.footer-nav-desktop__link_mb30px {
    margin-bottom: 30px
}

.footer-nav-desktop__link_mb50px {
    margin-bottom: 50px
}

@media (hover: hover) and (pointer: fine) {
    .footer-nav-desktop__link {
        transition: text-shadow .3s ease-out
    }

    .footer-nav-desktop__link:hover {
        text-shadow: .1px .7px #ffffff
    }
}

.footer-nav-desktop-bottom__title {
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
    font-family: Corpo Light, sans-serif;
    margin: 0 0 30px !important
}

.footer-nav-desktop-bottom__title:not(:last-child) {
    margin-bottom: 30px !important
}

.footer-nav-desktop-bottom__title:last-child {
    margin-bottom: 0
}

.footer-nav-desktop-1150__container {
    display: flex;
    flex-direction: column
}

.footer-nav-desktop-bottom {
    display: flex;
    flex-direction: column !important
}

.footer--desktop {
    display: none
}

@media (min-width: 1150px) and (max-width: 1440px) {
    .footer--desktop {
        display: block
    }
}

.footer--desktop-1150 {
    display: none
}

@media (min-width: 1150px) and (max-width: 1440px) {
    .footer--desktop-1150 {
        display: grid;
        grid-template-columns:repeat(3, 1fr);
        gap: 90px;
        justify-content: space-between
    }
}

.why__item-title {
    font-size: 18px !important;
    font-weight: 300
}

.why__item-header {
    padding: 15px 0 11.5px !important
}

.why__item-text {
    width: 100%
}

@media (min-width: 1024px) {
    .why__item-text {
        width: 82%
    }
}

.why {
    position: relative;
    padding: 140px 0 50px;
    overflow: hidden
}

@media (min-width: 1024px) {
    .why {
        padding: 140px 0 200px
    }
}

@media (min-width: 1024px) {
    .why .title .main {
        margin: 0
    }
}

@media (min-width: 1024px) {
    .why .section__header {
        margin: 0;
        padding: 0
    }
}

.why__inner-wrapper {
    display: contents
}

@media (min-width: 1024px) {
    .why__inner-wrapper {
        padding: 0 10px;
        display: flex;
        justify-content: flex-start;
        gap: 8.5vw
    }
}

@media (min-width: 1800px) {
    .why__inner-wrapper {
        padding: 0;
        gap: 245px
    }
}

.why__tittle-wrapper {
    display: flex
}

.why__img-container {
    display: none;
    margin: auto;
    width: 400px;
    height: 310px;
    overflow: hidden
}

@media (min-width: 1024px) {
    .why__img-container {
        display: block
    }
}

@media (min-width: 1440px) {
    .why__img-container {
        width: 560px
    }
}

.why__img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.why__text {
    margin-top: 52px;
    font-family: Commons Light;
    font-size: 18px;
    line-height: 140%;
    text-align: center;
    transform: translateY(100dvh);
    transition: transform .7s ease-out .3s
}

@media (min-width: 1024px) {
    .why__text {
        display: none;
        line-height: 170%
    }
}

.why__title, .why__title .main {
    white-space: nowrap
}

.why__title .secondary {
    top: 0;
    line-height: 45px;
    white-space: nowrap
}

.why .accordion {
    margin-top: 20px
}

@media (min-width: 1024px) {
    .why .accordion {
        width: 100%
    }
}

.why.shown .why__title, .why.shown .why__text {
    transform: translateY(0)
}

.why .accordion .accordion__item {
    opacity: 0
}

@media (min-width: 1024px) {
    .why .accordion .accordion__item .accordion-item__header {
        gap: 40px
    }
}

@media (min-width: 1440px) {
    .why .accordion .accordion__item .accordion-item__header {
        gap: 100px
    }
}

@media (min-width: 1800px) {
    .why .accordion .accordion__item .accordion-item__header {
        gap: 170px
    }
}

.why .accordion.shown .accordion__item {
    opacity: 1
}

.accordion.shown .accordion__item:nth-child(1) {
    transition: opacity .5s ease-out 1.1s
}

.accordion.shown .accordion__item:nth-child(2) {
    transition: opacity .5s ease-out 1.2s
}

.accordion.shown .accordion__item:nth-child(3) {
    transition: opacity .5s ease-out 1.3s
}

.accordion.shown .accordion__item:nth-child(4) {
    transition: opacity .5s ease-out 1.4s
}

.accordion.shown .accordion__item:nth-child(5) {
    transition: opacity .5s ease-out 1.5s
}

.accordion.shown .accordion__item:nth-child(6) {
    transition: opacity .5s ease-out 1.6s
}

@media (min-width: 1024px) {
    .mobile-break {
        display: none
    }
}

#whyVideoBg {
    opacity: .5
}

@media (min-width: 768px) {
    #whyVideoBg {
        display: none
    }
}

.banners {
    padding: 0;
    margin: 0;
    width: 100%
}

@media (min-width: 768px) {
    .banners {
        padding: 0 40px;
        display: grid;
        grid-template-columns:1fr 1fr;
        gap: 20px
    }
}

@media (min-width: 1024px) {
    .banners {
        padding: 0 80px;
        gap: 40px
    }
}

@media (min-width: 1440px) {
    .banners {
        padding: 100px 180px 140px
    }
}

@media (min-width: 1700px) {
    .banners {
        padding: 100px 200px 140px
    }
}

@media (min-width: 1800px) {
    .banners {
        padding: 100px 280px 140px
    }
}

.banners .banner {
    position: relative;
    margin-bottom: 0;
    height: 208px;
    overflow: hidden
}

@media (min-width: 768px) {
    .banners .banner {
        height: auto
    }
}

.banners .banner:before {
    top: 0;
    left: 0;
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #02170f;
    transition: transform .8s ease-out .2s;
    z-index: -1
}

.banners .banner:nth-child(odd):before {
    transform: translate(-100%)
}

.banners .banner:nth-child(2n):before {
    transform: translate(100%)
}

.banners .banner img {
    cursor: pointer;
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transform: scale(1.3);
    z-index: 5;
    transition: opacity .4s ease-out 1s, transform .9s ease-out 1s
}

@media (min-width: 768px) {
    .banners .banner img {
        object-fit: cover
    }
}

.banners.shown .banner:before {
    transform: translate(0)
}

.banners.shown .banner img {
    transform: scale(1);
    opacity: 1
}

.landing-action {
    position: relative;
    padding: 150px 0 100px;
    background-image: url(../img/offer/offer_bg.jpg), linear-gradient(180deg, #eeeeef, #fff0 7.39%, #fff0 82.81%, #fff 99.48%);
    background-size: cover;
    background-repeat: no-repeat
}

@media (min-width: 1024px) {
    .landing-action {
        background-image: url(../img/landing/landing-action-lg.png)
    }
}

.landing-action:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background: linear-gradient(to top, #0000, #dce6ef)
}

.landing-action__title {
    font-family: Corpo SemiBold;
    font-size: 22px;
    line-height: 100%;
    text-align: center;
    background: linear-gradient(90deg, #2b5876, #51a4dc);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text
}

@media (min-width: 1024px) {
    .landing-action__title {
        font-family: Corpo Light;
        font-weight: 300;
        font-size: 55px;
        line-height: 100%;
        text-align: center;
        text-transform: uppercase
    }
}

.landing-action__text {
    padding: 0 30px;
    margin: 25px auto 0;
    font-family: Commons Light;
    font-size: 20px;
    line-height: 130%;
    text-align: center;
    max-width: 85%
}

@media (min-width: 1024px) {
    .landing-action__text {
        max-width: 522px;
        font-weight: 300;
        font-size: 18px;
        line-height: 140%;
        text-align: center
    }
}

.landing-action__btn {
    text-transform: uppercase;
    position: relative;
    padding: 10.5px 25.5px;
    display: block;
    margin: 25px auto 0;
    width: min-content;
    white-space: nowrap;
    font-family: Commons Regular;
    font-size: 21px;
    line-height: 25px;
    text-align: center;
    color: #fff;
    border-radius: 20px;
    box-shadow: 0 0 6px #52a6dc;
    background: linear-gradient(90deg, #4fa1db, #6ecfe0);
    z-index: 5
}

@media (min-width: 1024px) {
    .landing-action__btn {
        position: absolute;
        padding: 15px 40px;
        font-family: Corpo Light;
        font-weight: 300;
        font-size: 18px;
        line-height: 25px;
        text-align: center;
        border-radius: 1000px;
        bottom: 0;
        left: 50%;
        transform: translate(-50%, 50%);
        border: 15px solid #FFFFFF;
        box-shadow: none
    }
}

.landing-action__btn .action-text {
    filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, .4));
    position: relative;
    top: 2px
}

.landing-action__btn:after {
    position: absolute;
    content: "";
    display: block;
    border: 1px solid;
    top: -1px;
    right: -1px;
    bottom: -1px;
    left: -1px;
    background-image: linear-gradient(90deg, #4fa1db80, #6ecfe080);
    border-radius: 20px;
    z-index: -1;
    opacity: .4
}

.landing-action__btn .action-wave {
    position: absolute;
    top: -3px;
    right: -3px;
    bottom: -3px;
    left: -3px;
    display: block;
    border: 4px solid rgba(110, 207, 224, .6);
    border-radius: 180px;
    animation-name: wave;
    animation-duration: 3s;
    animation-iteration-count: infinite;
    animation-timing-function: linear
}

.landing-action .topbg {
    left: 0;
    position: absolute;
    height: 135px;
    width: 100%;
    top: -10px;
    background-image: radial-gradient(#e5e7e9, #e7ebea);
    clip-path: ellipse(60% 69% at 50% 0%);
    filter: blur(30px)
}

.landing-action .blur {
    left: 0;
    position: absolute;
    height: 20px;
    width: 100%;
    bottom: -10px;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px)
}

@keyframes wave {
    0% {
        transform: scaleY(1) scaleX(1);
        opacity: 1;
        filter: blur(1px)
    }
    to {
        transform: scaleY(2) scaleX(1.3);
        opacity: 0;
        filter: blur(10px)
    }
}

.landing-action .action-wave:nth-child(1) {
    animation-delay: .8s
}

.landing-action .action-wave:nth-child(2) {
    animation-delay: 1.6s
}

.landing-action .action-wave:nth-child(3) {
    animation-delay: 2.4s
}

.landing {
    position: relative;
    padding: 140px 12px;
    overflow: hidden
}

@media (min-width: 1024px) {
    .landing {
        padding: 140px 60px
    }
}

.landing:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: linear-gradient(to bottom, #0000, #dce6ef)
}

.landing__title {
    margin-bottom: 10px !important;
    display: block;
    margin: 0 auto;
    width: 91%
}

@media (min-width: 1024px) {
    .landing__title {
        width: 100%;
        margin: 0
    }
}

.landing__title .secondary {
    top: 63px;
    line-height: 38px;
    text-align: center
}

@media (min-width: 400px) {
    .landing__title .secondary {
        top: 30px;
        line-height: 50px
    }
}

@media (min-width: 600px) {
    .landing__title .secondary {
        top: 10px;
        line-height: 50px
    }
}

@media (min-width: 1024px) {
    .landing__title .secondary {
        top: 35px;
        line-height: 100px
    }
}

@media (min-width: 1720px) {
    .landing__title .secondary {
        top: 0;
        line-height: 100px
    }
}

.landing__subtitle {
    display: none
}

@media (min-width: 1024px) {
    .landing__subtitle {
        margin-top: 65px;
        display: block;
        font-family: Montserrat;
        font-variation-settings: "wght" 400;
        font-size: 16px;
        line-height: 160%;
        max-width: 522px
    }
}

@media (min-width: 1024px) {
    .landing .title {
        width: min-content;
        margin-bottom: 0
    }

    .landing .title .main {
        margin: 0;
        padding: 0
    }
}

@media (min-width: 1024px) {
    .landing .section__header {
        margin-bottom: 0;
        padding: 0
    }
}

.landing__inner-container {
    display: contents
}

@media (min-width: 1024px) {
    .landing__inner-container {
        display: grid;
        grid-template-columns:1fr 1fr
    }
}

.landing__text {
    font-family: Commons Light;
    font-size: 18px;
    line-height: 130%;
    text-align: center;
    transform: translateY(100dvh);
    transition: transform .7s ease-out .3s
}

@media (min-width: 1024px) {
    .landing__text {
        display: none;
        font-size: 20px
    }
}

.landing .accordion {
    margin-top: 20px
}

.landing.shown .landing__title, .landing.shown .landing__text, .landing.shown .landing-list, .landing.shown .landing__more {
    transform: translateY(0)
}

.landing-list {
    margin-top: 20px;
    font-family: Commons Regular;
    font-size: 20px;
    line-height: 130%;
    font-weight: 400;
    text-align: center;
    transform: translateY(100dvh);
    transition: transform .7s ease-out .7s
}

@media (min-width: 1024px) {
    .landing-list {
        margin-top: 0;
        text-align: left
    }
}

.landing-list__item {
    font-size: 22px !important;
    line-height: 150%;
    display: block;
    margin-bottom: 20px;
    height: auto;
    transition-behavior: allow-discrete;
    transition-property: display, opacity, height, transform;
    transition-duration: .4s
}

.landing-list__item-text {
    font-family: Commons Light;
    font-size: 18px;
    line-height: 130%
}

@media (min-width: 1024px) {
    .landing-list__item-text {
        line-height: 170%
    }
}

.landing-list__item-title {
    padding: 15px 0;
    font-variation-settings: "wght" 700;
    border-top: .5px solid #000000
}

@media (min-width: 1024px) {
    .landing-list__item-title {
        border-top: none
    }
}

.landing-list__item--hidden {
    height: 0;
    display: none;
    opacity: 0;
    transform: scale(0)
}

@media (min-width: 1024px) {
    .landing-list__item--hidden {
        display: list-item;
        height: auto;
        opacity: 1;
        transform: scale(1)
    }
}

.landing__more {
    margin: 20px auto 0;
    display: block;
    font-family: Corpo ExtraLight;
    font-size: 15px;
    line-height: 25px;
    text-align: center;
    color: #000000b2;
    opacity: 1;
    transition-behavior: allow-discrete;
    transition-property: display, opacity;
    transition-duration: .4s
}

@media (min-width: 1024px) {
    .landing__more {
        display: none
    }
}

.landing__more.hidden {
    display: none;
    opacity: 0
}

@starting-style {
    .landing-list__item {
        opacity: 0;
        transform: scale(.7);
        height: 0
    }
}

.blur {
    left: 0;
    position: absolute;
    height: 40px;
    width: 100%;
    bottom: 0;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px)
}

#landingVideoBg {
    opacity: .5;
    z-index: -1
}

.landing-list__item-title {
    font-size: 20px;
    line-height: 130%
}

@media (min-width: 1024px) {
    .landing__title span {
        display: block
    }
}

.whatsapp-badge {
    padding: 7px 12px;
    position: fixed;
    right: 0;
    bottom: 20vh;
    background-color: #43be5acc;
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
    z-index: 1000;
    transition-behavior: allow-discrete;
    transition-property: display, opacity;
    transition-duration: .4s
}

.whatsapp-badge.active {
    display: none;
    opacity: 0
}

.whatsapp-modal {
    display: none;
    padding: 35px 20px;
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    z-index: 2000;
    background-color: #fff;
    transform: scaleX(.2) scale(.2) rotate(-20grad);
    opacity: 0;
    visibility: hidden;
    transition-behavior: allow-discrete;
    transition-property: display, transform, opacity;
    transition-duration: .4s
}

@media (min-width: 769px) {
    .whatsapp-modal {
        padding: 30px 50px 40px;
        height: auto;
        width: auto;
        top: unset;
        left: unset;
        right: 20px;
        bottom: 20vh;
        border-radius: 30px;
        box-shadow: 0 0 12px 5px #0001;
        transform-origin: bottom right
    }
}

.whatsapp-modal.shown {
    display: block;
    transform: scaleX(1) scale(1) rotate(0);
    opacity: 1
}

.whatsapp-modal__close {
    margin-left: auto;
    width: 40px;
    height: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: transform .3s ease-out
}

.whatsapp-modal__close:hover {
    transform: scale(1.2)
}

.whatsapp-modal__close-line {
    width: 30px;
    height: 3px;
    background-color: #000;
    border-radius: 3px;
    position: relative
}

.whatsapp-modal__close-line:first-child {
    transform: rotate(45deg);
    top: 3px
}

.whatsapp-modal__close-line:last-child {
    transform: rotate(-45deg);
    bottom: 0
}

.whatsapp-modal__title {
    margin-top: 100px;
    font-family: Corpo Light;
    font-weight: 300;
    font-size: 30px;
    line-height: 100%;
    text-align: center;
    text-transform: uppercase
}

@media (min-width: 769px) {
    .whatsapp-modal__title {
        margin-top: 40px
    }
}

@media (max-width: 400px) {
    .whatsapp-modal__title{
        font-size: 30px;
    }
}

@media (max-width: 370px) {
    .whatsapp-modal__title{
        font-size: 22px;
    }
}

.whatsapp-modal-list {
    margin-top: 25px;
    display: flex;
    flex-direction: column;
    gap: 40px
}

.whatsapp-modal-list__item {
    margin: 0 auto;
    padding: 20px 45px;
    background: #d6e9f84d;
    border-radius: 20px;
    max-width: 425px
}

.whatsapp-modal-list__item-title {
    font-family: Commons Light, sans-serif;
    font-size: 18px;
    line-height: 140%;
    text-align: center
}

.whatsapp-modal-list__item-link {
    margin: 15px auto 0;
    padding: 12px 55px;
    position: relative;
    display: flex;
    width: max-content;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #5ed169;
    border-radius: 20px;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    white-space: nowrap;
    box-shadow: 0 0 10px #0003;
    transition: box-shadow .3s ease-out
}

@media (max-width: 370px) {
    .whatsapp-modal-list__item-link{
        padding: 12px 35px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .whatsapp-modal-list__item-link:hover {
        box-shadow: 0 0 0 4px #5ed16a99
    }
}

.whatsapp-modal-list__item-link .link-arrow {
    position: absolute;
    right: -20px;
    bottom: 60%
}

@starting-style {
    .whatsapp-modal.shown {
        transform: scaleX(.2) scale(.2) rotate(-20grad);
        opacity: .2
    }

    .whatsapp-badge.active {
        opacity: .2
    }
}

.stars {
    padding: 110px 0
}

@media (min-width: 769px) {
    .stars {
        position: relative;
        padding: 140px 0
    }
}

.stars__title {
    margin-bottom: 35px
}

@media (min-width: 1024px) {
    .stars__title {
        margin-bottom: 0
    }
}

.stars__header {
    margin-bottom: 80px !important
}

.stars__link {
    position: relative;
    width: min-content;
    align-items: center;
    gap: 10px;
    font-family: Montserrat, sans-serif;
    font-variation-settings: "wght" 400;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    text-transform: uppercase;
    border-radius: 20px;
    white-space: nowrap;
    z-index: 10;
    color: #000;
    background-color: transparent
}

.stars__link:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 20px;
    border: 1px solid transparent;
    border-color: transparent;
    background-image: linear-gradient(109.42deg, #000 9.87%, #fff, #000 88.38%);
    background-origin: border-box;
    -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: borderMove 5s linear infinite;
    z-index: -1
}

@media (hover: hover) and (pointer: fine) {
    .stars__link:hover svg {
        transform: translate(5px)
    }
}

.stars__link span, .stars__link svg {
    position: relative;
    z-index: 2;
    transition: transform .4s ease-out
}

.stars__carousel {
    padding: 0 0 40px;
    margin: 0 auto;
    width: 100%;
    overflow: hidden
}

@media (min-width: 1024px) {
    .stars__carousel {
        padding: 0
    }
}

.stars__carousel .swiper {
    width: 100%;
    overflow: visible
}

@media (max-width: 1023px) {
    .stars__carousel .swiper {
        padding: 0 20px
    }
}

.stars__carousel .swiper.shown .swiper-slide .star-img-container {
    transform: scale(1)
}

.stars__carousel .swiper.shown .swiper-slide .star-img-container img {
    opacity: 1
}

.stars__carousel .swiper.shown .swiper-slide .star-caption {
    transform: translateY(0)
}

.stars__carousel .swiper.shown .swiper-slide:after {
    transform: translate(0)
}

.stars__carousel .swiper-slide {
    overflow: hidden;
    position: relative;
    height: 515px;
    box-shadow: 2px 9px 12px 6px #0c0c0c33;
    border-radius: 20px
}

@media (min-width: 769px) {
    .stars__carousel .swiper-slide {
        box-shadow: none
    }
}

.stars__carousel .swiper-slide:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(185.58deg, #0000 51.78%, #000000d9 82.49%);
    border-radius: 20px
}

.stars__carousel .swiper-slide:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #000;
    transform: translate(-200vw);
    transition: transform 1s ease-out;
    border-radius: 20px
}

.stars__carousel .swiper-slide .star-caption {
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    color: #fff;
    font-family: Corpo ExtraLight, sans-serif;
    font-weight: 400;
    font-size: 25px;
    line-height: 100%;
    z-index: 100;
    transform: translateY(200px);
    transition: transform 1s ease-out 2s
}

.stars__carousel .swiper-slide .star-caption__category {
    max-width: 80%;
    font-family: Corpo ExtraLight
}

.stars__carousel .swiper-slide .star-caption__location {
    margin-top: 5px;
    font-family: Corpo ExtraLight;
    color: #ffffff80
}

.stars__carousel .swiper-slide .star-link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 62px;
    width: 40px;
    border: 1px solid #FFFFFF;
    border-radius: 20px
}

@media (min-width: 1024px) {
    .stars__carousel .swiper-slide .star-link {
        width: 50px;
        height: 70px;
        border-radius: 30px
    }
}

.stars__carousel .swiper-slide .star-link:after {
    display: block;
    position: relative;
    content: "";
    height: 8px;
    width: 20px;
    background-image: url(../img/icons/arrow_right.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat
}

.stars__carousel .swiper-slide .star-img-container {
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 10;
    transform: scale(1.3);
    transition: transform 1s ease-out 1s;
    background-color: #0000000b
}

.stars__carousel .swiper-slide .star-img-container img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    transition: opacity 1s ease-out 1s;
    opacity: 0
}

.stars__carousel .swiper-slide .star-img-container:after {
    top: 0;
    left: 0;
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(185.58deg, #0000 51.78%, #000000d9 82.49%);
    z-index: 20
}

.stars__link span {
    position: relative;
    top: 1px
}

.star-caption-lh130 {
    line-height: 130% !important
}

.hero-title {
    position: relative;
    width: 100%;
    height: 356px;
    display: flex;
    align-items: center;
    justify-content: center
}

@media (min-width: 1024px) {
    .hero-title {
        height: 492px
    }
}

.hero-title__bgc-container {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: url(./header-title_portfolio-bgc_mob-B-Z1Yt5a.webp) center/cover no-repeat;
    z-index: 1
}

@media (min-width: 1024px) {
    .hero-title__bgc-container {
        background: url(./header-title_portfolio-bgc_desktop-BvCr-C29.webp) center/cover no-repeat
    }
}

.hero-title__title {
    text-align: center
}

.hero-title__bgc-container_birthday {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: url(./header-title_birthday-bgc_mobile-CVOj-8ju.webp) center/cover no-repeat;
    z-index: 1
}

@media (min-width: 1024px) {
    .hero-title__bgc-container_birthday {
        background: url(./header-title_birthday-bgc_desktop-CcB1ehkV.webp) center/cover no-repeat
    }
}

.hero-title__bgc-container_banhok {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: url(../img/header-title_birthday-bgc_mobile-CVOj-8ju.webp) center/cover no-repeat;
    z-index: 1
}

@media (min-width: 1024px) {
    .hero-title__bgc-container_banhok {
        background: url(../img/header-title_birthday-bgc_desktop-CcB1ehkV.webp) center/cover no-repeat
    }
}

.hero-title__bgc-container_uslugi {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: url(../img/header-title_uslugi-bgc_mobile-DgxiGYys.webp) center/cover no-repeat;
    z-index: 1
}

@media (min-width: 1024px) {
    .hero-title__bgc-container_uslugi {
        background: url(../img/header-title_uslugi-bgc_desktop-DocAxGIT.webp) center/cover no-repeat
    }
}

.hero-title__bgc-container_business-mice {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: url(../img/header-title_business-mice_bgc_desktop-NJbhv2F_.webp) center/cover no-repeat;
    z-index: 1
}

@media (min-width: 1024px) {
    .hero-title__bgc-container_business-mice {
        background: url(../img/header-title_business-mice_bgc_desktop-NJbhv2F_.webp) center/cover no-repeat
    }
}

.hero-title__bgc-container_corporate-events {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: url(../img/header-title_corporate-events-bgc_mobile-DuzE8aN0.webp) center/cover no-repeat;
    z-index: 1
}

@media (min-width: 1024px) {
    .hero-title__bgc-container_corporate-events {
        background: url(../img/header-title_corporate-events-bgc_desktop-DM6Zaz0g.webp) center/cover no-repeat
    }
}

.hero-title__fill {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: .6;
    z-index: 2
}

.hero-title__wrap {
    height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 3
}

.hero-title__title {
    margin: 0 auto;
    font-family: Corpo Light, sans-serif;
    color: #fff;
    font-size: 30px;
    line-height: 1.2;
    padding: 0 0 15px
}

.hero-title__title_banhok {
    width: 94%;
    line-height: 1.4;
    text-align: center
}

@media (min-width: 1024px) {
    .hero-title__title {
        font-size: 50px
    }
}

.hero-title__title_banhok {
    padding: 30px 0 0
}

.hero-title__business-mice_title {
    padding: 20px 0 18px
}

@media (min-width: 1024px) {
    .hero-title__business-mice_title {
        padding: 10px 0 18px
    }
}

.hero-title__business-mice__desc {
    width: 90%
}

.hero-title__desc {
    font-family: Corpo ExtraLight, sans-serif;
    margin: 0 auto;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    opacity: 80%;
    font-size: 20px
}

@media (min-width: 1024px) {
    .hero-title__desc {
        font-size: 30px
    }
}

@media (min-width: 420px) {
    .hero-title__desc {
        width: 80%
    }
}

@media (min-width: 1024px) {
    .hero-title__w44 {
        width: 44%
    }
}

@media (min-width: 1024px) {
    .hero-title__wrap--padding-top42 {
        padding: 42px 0 0
    }
}

.text-align__center {
    text-align: center
}

@media (min-width: 1400px) {
    .hero-title__desc--w32 {
        width: 52% !important
    }
}

@media (min-width: 1700px) {
    .hero-title__desc--w32 {
        width: 32% !important
    }
}

.portfolio-card {
    padding: 0 0 133px
}

@media (min-width: 1024px) {
    .portfolio-card {
        padding: 0 0 133px;
        position: relative;
        display: flex;
        flex-wrap: wrap;
        gap: 40px
    }
}

.portfolio-card__container {
    width: 100%;
    margin-bottom: 20px
}

@media (min-width: 1024px) {
    .portfolio-card__container {
        width: auto;
        position: relative
    }

    .portfolio-card__container_shift-up {
        margin-top: -11.1%
    }
}

.portfolio-card__container:last-child {
    margin-bottom: 0
}

.portfolio-card__container_absolute {
    position: absolute;
    bottom: 7%;
    right: 0
}

@media (max-width: 1630px) {
    .portfolio-card__container_absolute {
        bottom: 5%;
        right: -1%
    }
}

@media (max-width: 1580px) {
    .portfolio-card__container_absolute {
        bottom: 7%;
        right: -2%
    }
}

@media (max-width: 1530px) {
    .portfolio-card__container_absolute {
        bottom: 8%;
        right: -1%
    }
}

.portfolio-card__body {
    display: flex;
    gap: 40px
}

.portfolio-card__column {
    position: relative;
    display: flex;
    gap: 40px
}

.portfolio-card__column_last-section {
    justify-content: end;
    margin-top: -22%;
    left: .5%
}

@media (max-width: 1590px) {
    .portfolio-card__column_last-section {
        justify-content: start;
        margin-top: 0%;
        left: 0%
    }
}

.portfolio-card__wrap {
    position: relative;
    width: 100%;
    height: 250px;
    overflow: hidden
}

.portfolio-card__bcg {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 1
}

.portfolio-card__bcg_gradient {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(0deg, #0009, #0000);
    z-index: 2
}

.portfolio-card__gradient {
    position: absolute;
    top: 60%;
    left: 0;
    width: 100%;
    height: 40%;
    background: linear-gradient(to bottom, #0000, #0006 60%, #0009);
    pointer-events: none
}

.portfolio-card__img-wrap {
    position: relative;
    width: 100%;
    height: auto
}

.portfolio-card__img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 0;
}

.portfolio-card__link {
    display: block;
    position: relative;
    text-decoration: none;
    transition: transform .3s ease
}

.portfolio-card__link:hover {
    transform: scale(1.01)
}

.portfolio-card__content {
    position: relative;
    height: 250px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
    z-index: 3
}

.portfolio-card__title {
    font-family: Corpo SemiBold, sans-serif;
    text-align: center;
    font-size: 20px;
    line-height: 1.4;
    color: #fff
}

@media (min-width: 1024px) {
    .portfolio-card__title {
        text-align: left;
        position: absolute;
        bottom: 30px;
        left: 30px;
        color: #fff;
        line-height: 1.4;
        font-size: 25px;
        z-index: 2;
        width: 90%
    }
}

@media (min-width: 1441px) {
    .portfolio-card__title {
        font-size: 30px
    }
}

@media (max-width: 1400px) {
    .portfolio-card__title {
        font-size: 25px;
        left: 30px
    }
}

@media (max-width: 1200px) {
    .portfolio-card__title {
        font-size: 20px
    }
}

@media (max-width: 1400px) {
    .portfolio-card__title {
        font-size: 20px;
        left: 30px
    }
}

.portfolio-card_mobile {
    display: block
}

@media (min-width: 1024px) {
    .portfolio-card_mobile {
        display: none
    }
}

.portfolio-card_desktop {
    display: none
}

@media (min-width: 1024px) {
    .portfolio-card_desktop {
        display: block
    }
}

.bcg_1 {
    background: url(./bgc_1_mobile-BOftiWjr.webp) center/cover no-repeat
}

.bcg_2 {
    background: url(./bgc_2_mobile-DhfNXRpC.webp) center/cover no-repeat
}

.bcg_3 {
    background: url(./bgc_3_mobile-CDKHbyUJ.webp) center/cover no-repeat
}

.bcg_4 {
    background: url(./bgc_4_mobile-ozuYOQW1.webp) center/cover no-repeat
}

.bcg_5 {
    background: url(./bgc_5_mobile-CEJGdMW3.webp) center/cover no-repeat
}

.bcg_6 {
    background: url(./bgc_6_mobile-BhSofmUm.webp) center/cover no-repeat
}

.bcg_7 {
    background: url(./bgc_7_mobile-Bu7T18PN.webp) center/cover no-repeat
}

.bcg_8 {
    background: url(./bgc_8_mobile-BfpuYmms.webp) center/cover no-repeat
}

.bcg_9 {
    background: url(./bgc_9_mobile-Hv_81W5q.webp) center/cover no-repeat
}

.bcg_10 {
    background: url(data:image/webp;base64,UklGRmoGAABXRUJQVlA4WAoAAAAgAAAAbQEA+QAASUNDUMgBAAAAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADZWUDggfAQAAJAoAJ0BKm4B+gA+7Xa3VimmpSSgOAh5MB2JZ0v/e+iZ80bDOr/5R/6VwP+O9Hi+m4sngH/e70V0r3EWh8kPM60xYIigRoxHpd3Axig7k4rItsxvtW7XgR7Abm5qWgM5HlIHHuV+Hgezao4V3SbLeRsWmRX2RwsVYnPW0hZdDEAAQhsF1RayUtdYLfqchsX6CJyCWgTh9YRzN7EdrR3zURO9F9rwEejUHHRGUHox/KzlBxYFFJTuJjAS4cbHfAfXUSzcfOegy16sgLpTGrXUIu8J6pDeFSjHgV+mAMt1XxrZizOfTijyOza5hhfkjhpwfpYLkYi20+hyud2f4hmCC4M9IzwkTwkGYqoflyOncnXCTRqM+d2cvOmnhzP4OjOMYBcaRgyD1u+vtrmBvFOAFvsGPNW+R4EJSF4fj8uPC+yGsDO1tuJ+8WytjyPzcAD+7v+f6stRDyt/zbkWmZzIz8GJkrQethU1OwjWFGmzEhIQOuLauCAAQV4hWYiz33qFqT1q/AxiXXJOsYWRP0HGgCiSm1lyEiA68OXYH7bGq9Czm+gS1/oz8G0GNiFvbgRRTWJ7/4QJlCw1yqeMMmjOpt19pgegAeQaOShrZE8+/Kau4r4/PUcXKzrK3PoQ03zmiJub9kGS+Aw7WZ5M1WZICKi54rX5qQ2kHb+oG8QnrncXDd4xp8N3Cb/iu0uhOr10K8SUu8l4SGVJodgqoLjZFocTfWsoIuIobvIjjEhZdkB007v/J8P1gYUzqcR8L9ftJdgzqPwEaCl6IbpVgdEPRVGS3AzVH7om64HLkMDBYqXACqly/FFGjWGLzaGwag73zwyrCZ/Zd9dwUqrp18O+HXZTKGgG0C9eJzUyYqRO2a0Ls2UFr9EvJgsp0a4f25laD6PL4YrRsXxVlnO40XjpSo1nmx/lKVWEVpV2J6bXyZ+D6DMSXVAuIPWlTSTRVqVBqoT7buORBKmr103JSjhrERUl4OzuT3HjsQSinbxOecpL+Njlk7v1PRTBagHV4Gh/RbGrcxYIIUtb9DcsvCPRASFAlYEJ1BjMMYy3yYOV5ueZuBXgKyrGLvG4Aim+NiTP/85oZ6/P0QFdwygzfXd3tN0cjgl4KD8RslK3DvxHzPC/pH8DIiyv2SIUMcCCtCsQae7lTmr1QFLlvdGdNnOysmELYES8EKOZPepMxnwvX2baoCPiMRMGwaj0CDFrZCH76WYO5oJcRFR7oo7Vo0KcchRUkkOIfwxP5hsB1MyFX+SRrlNJn3g/HxKhxqnGTHZ0QPiCxYMzJjHy9XzBoASHIGPum9nKTVCFi1kbQYV2fP2J/v2aS0/zVU2Z9JyQ9Eq+w0skpk+vvlveu8jY51I0sNEm+wChpY25ha0pfDcTEddVV3P50ddzfgZnKMwylYDqfB/E9GAC9+8B2D1CWod5RKoom9szLtw/CqMjRHREHvquAtIpdV5mxW3soVeLWwPIOshJF9g0rmhKXhnJxJI1ZdgN2z8KRPiP8LCOj7zYmdVggzK9GnsMei/QAAAA) center/cover no-repeat
}

.bcg_11 {
    background: url(./bgc_11_mobile-CdHqZhBV.webp) center/cover no-repeat
}

.bcg_12 {
    background: url(./bgc_12_mobile-Cr7sFYiQ.webp) center/cover no-repeat
}

.bcg_13 {
    background: url(./bgc_13_mobile-BsO4o8mB.webp) center/cover no-repeat
}

@media (min-width: 1024px) {
    .birthday {
        padding: 0 0 140px
    }
}

.birthday__container {
    padding: 0 12px
}

@media (min-width: 1024px) {
    .birthday__container {
        max-width: 1640px;
        margin: 0 auto;
        padding: 0 0 60px
    }
}

.birthday__title {
    padding: 0 0 30px
}

@media (min-width: 1024px) {
    .birthday__title {
        font-size: 55px;
        padding: 0 12px
    }
}

@media (min-width: 1024px) {
    .birthday__container-card {
        margin-bottom: 40px
    }
}

@media (min-width: 1024px) {
    .birthday__container-card-video {
        margin-bottom: 0
    }
}

@media (min-width: 1024px) {
    .birthday__container-video-card {
        width: 100%;
        height: auto
    }
}

@media (max-width: 1640px) {
    .birthday__desktop {
        padding: 0 12px
    }
}

.birthday .birthday-video {
    padding: 133px 0 0
}

.birthday .birthday-video__title {
    padding: 0 0 30px
}

.birthday .birthday-video__wrap {
    position: relative;
    margin: 0 0 20px;
    height: 250px
}

.birthday .birthday-video__wrap:last-child {
    margin: 0
}

.birthday .birthday-video-desktop__row {
    display: flex;
    gap: 24px;
    align-items: flex-start;
    flex-wrap: nowrap
}

.birthday .birthday-video-desktop__item {
    flex: 1;
    overflow: hidden;
    border-radius: 20px
}

.birthday .birthday-video-desktop__pic {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 20px;
    transition: transform .3s ease;
    transform-origin: center center
}

.birthday .birthday-video-desktop__pic:hover {
    transform: scale(1.01)
}

.birthday .birthday-video-desktop__pic:focus {
    outline: 2px solid #5052ca;
    outline-offset: 4px
}

.birthday--width58 {
    width: 58%
}

.birthday--width70 {
    width: 70%
}

.birthday--width84 {
    width: 84%
}

.birthday--width90 {
    width: 90%
}

.birthday--width101 {
    width: 101%
}

.birthday-video__link--mb20 {
    margin-bottom: 20px
}

.birthday--mb0 {
    margin-bottom: 0
}

.birthday--mb40 {
    margin-bottom: 40px
}

.birthday--pb200 {
    padding-bottom: 200px
}

.birthday__img-wrap {
    position: relative;
    overflow: hidden
}

.bcg_birthday_1 {
    background: url(./bgc_1_mobile-BOftiWjr.webp) center/cover no-repeat
}

.bcg_birthday_2 {
    background: url(./header-title_birthday-card_2_mobile-bAdqbOIj.webp) center/cover no-repeat
}

.bcg_birthday_3 {
    background: url(./header-title_birthday-card_3_mobile-W-ebdG3m.webp) center/cover no-repeat
}

.bcg_birthday_4 {
    background: url(./header-title_birthday-card_4_mobile-CMMQQ8pi.webp) center/cover no-repeat
}

.bcg_birthday_5 {
    background: url(./header-title_birthday-card_5_mobile-Cn0D20kC.webp) center/cover no-repeat
}

.bcg_birthday_6 {
    background: url(./header-title_birthday-card_6_mobile-vy7IVhT-.webp) center/cover no-repeat
}

.bcg_birthday_7 {
    background: url(./header-title_birthday-card_7_mobile-Befc0sur.webp) center/cover no-repeat
}

.bcg_birthday_8 {
    background: url(./header-title_birthday-card_8_mobile-DhJ51kgH.webp) center/cover no-repeat
}

.bcg_birthday_9 {
    background: url(./header-title_birthday-card_9_mobile-RzRKZoi6.webp) center/cover no-repeat
}

.bcg_birthday_10 {
    background: url(./header-title_birthday-card_10_mobile-C2rA1hrN.webp) center/cover no-repeat
}

.bcg_birthday_11 {
    background: url(./bgc_6_mobile-BhSofmUm.webp) center/cover no-repeat
}

.bcg_birthday_12 {
    background: url(./header-title_birthday-card_12_mobile-DW4DBYua.webp) center/cover no-repeat
}

.bcg_video_1 {
    background: url(./birthday_video_card1_mobile-Br7uxhj5.webp) center/cover no-repeat
}

@media (min-width: 1024px) {
    .bcg_video_1 {
        background: url(./header-title_birthday-video-card_1_desktop-DxNUpjCv.webp) center/cover no-repeat
    }
}

.bcg_video_2 {
    background: url(./birthday_video_card2_mobile-DRTGyzCX.webp) center/cover no-repeat
}

@media (min-width: 1024px) {
    .bcg_video_2 {
        background: url(./header-title_birthday-video-card_2_desktop-CHldHOu-.webp) center/cover no-repeat
    }
}

.bcg_video_3 {
    background: url(./birthday_video_card3_mobile-kmqlAnWe.webp) center/cover no-repeat
}

.bcg_video_4 {
    background: url(./birthday_video_card4_mobile-BNl47fzl.webp) center/cover no-repeat
}

.bcg_video_5 {
    background: url(./birthday_video_card5_mobile-C-WNSIHq.webp) center/cover no-repeat
}

.bcg_video_6 {
    background: url(./birthday_video_card6_mobile-B_97-lmc.webp) center/cover no-repeat
}

.bcg_video_7 {
    background: url(./birthday_video_card7_mobile-B9YXXXIm.webp) center/cover no-repeat
}

.bcg_video_8 {
    background: url(./birthday_video_card8_mobile-B9k4kv2M.webp) center/cover no-repeat
}

.bcg_video_9 {
    background: url(./birthday_video_card9_mobile-_USwOwhD.webp) center/cover no-repeat
}

.birthday-banhok__title {
    text-align: center;
    width: 94%
}

.banhok-case {
    padding: 0 0 50px
}

.banhok-case__container {
    margin-bottom: 20px
}

.banhok-case__container:last-child {
    margin-bottom: 0 !important
}

.banhok-case__title {
    font-family: Corpo Light, sans-serif;
    padding: 0 0 15px
}

.banhok-case__desc {
    font-family: Corpo Light, sans-serif;
    padding: 0 0 10px;
    font-size: 16px;
    color: #000;
    opacity: 60%
}

.banhok-case__desc:last-child {
    padding: 0
}

.banhok-case__bcg {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center
}

.banhok-case__video-btn {
    width: 70px;
    height: 70px;
    border-radius: 1000px;
    background: radial-gradient(46.43% 46.43% at 50% 50%, #ffffff4d, #ffffff4d);
    backdrop-filter: blur(31.63px);
    -webkit-backdrop-filter: blur(31.63px);
    box-shadow: 0 0 18px #98989840;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .5s ease, transform .5s ease
}

.banhok-case__video-btn.animate-show {
    opacity: 1;
    transform: translateY(0)
}

.banhok-case__video-wrap {
    width: 100%;
    height: 615px;
    background-size: cover;
    background-position: center;
    position: relative
}

@media (min-width: 1024px) {
    .banhok-case {
        padding: 0 12px
    }
}

.banhok-case__card {
    padding: 50px 0 140px
}

@media (max-width: 1640px) {
    .banhok-case__card {
        padding: 60px 12px 140px
    }
}

.banhok-case__video-container {
    padding-bottom: 40px
}

.banhok-case__link-card {
    display: inline-block;
    transition: transform .3s ease
}

.banhok-case__link-card:hover {
    transform: scale(1.01)
}

.banhok-case__wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center
}

@media (min-width: 1024px) {
    .banhok-case__wrap {
        justify-content: flex-start;
        gap: 40px
    }
}

@media (max-width: 1690px) {
    .banhok-case__card-container {
        flex: 0 1 calc(33.333% - 27px)
    }
}

.banhok-case__card-pic {
    width: 100%;
    display: block
}

.banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(4) {
    margin-top: -10%
}

@media (max-width: 1690px) {
    .banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(4) {
        margin-top: -16.5%
    }
}

.banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(5) {
    margin-top: -10%
}

@media (max-width: 1690px) {
    .banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(5) {
        margin-top: -11.5%
    }
}

.banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(7) {
    margin-top: -10%
}

@media (max-width: 1690px) {
    .banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(7) {
        margin-top: -16.5%
    }
}

.banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(8) {
    margin-top: -10%
}

@media (max-width: 1690px) {
    .banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(8) {
        margin-top: -16.5%
    }
}

.banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(10) {
    margin-top: -20.3%
}

@media (max-width: 1690px) {
    .banhok-case__card-container.banhok-case__card-container--top-margin:nth-child(10) {
        margin-top: -27.5%
    }
}

.banhok-case__container--last {
    margin-bottom: 0
}

@media (min-width: 1024px) {
    .bcg_1-video-banhok_desk {
        background: url(./birth_banhok_video_prev_desktop-CBgDcXZh.webp) center/cover no-repeat
    }
}

.bcg_1-banhok {
    background: url(./birth_banhok_video_prev-DTiNMM_k.webp) center/cover no-repeat
}

@media (min-width: 1024px) {
    .bcg_1-banhok {
        background: url(./birth_banhok_video_prev_desktop-CBgDcXZh.webp)
    }
}

.bcg_2-banhok {
    background: url(./birth_banhok_pic1-DCp7qeQ_.webp) center/cover no-repeat
}

.bcg_3-banhok {
    background: url(./birth_banhok_pic2-kcWvUqXJ.webp) center/cover no-repeat
}

.bcg_4-banhok {
    background: url(./birth_banhok_pic3-ZBJyrmXO.webp) center/cover no-repeat
}

.bcg_5-banhok {
    background: url(./birth_banhok_pic4-HoZPb8xW.webp) center/cover no-repeat
}

.bcg_6-banhok {
    background: url(./birth_banhok_pic5-DVh6D4M2.webp) center/cover no-repeat
}

.bcg_7-banhok {
    background: url(./birth_banhok_pic6-VEUf6ZmU.webp) center/cover no-repeat
}

.bcg_8-banhok {
    background: url(./birth_banhok_pic7-DanxXEq4.webp) center/cover no-repeat
}

.bcg_9-banhok {
    background: url(./birth_banhok_pic8-2OxBH1kG.webp) center/cover no-repeat
}

.bcg_10-banhok {
    background: url(./birth_banhok_pic9-hSSy9RHp.webp) center/cover no-repeat
}

.bcg_11-banhok {
    background: url(./birth_banhok_pic10-Ca_ym6UV.webp) center/cover no-repeat
}

.video-modal {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #000000e6;
    justify-content: center;
    align-items: center;
    z-index: 1000
}

.video-modal.active {
    display: flex
}

.video-modal__content {
    position: relative;
    width: 100%;
    max-width: 1000px;
    padding: 20px;
    box-sizing: border-box
}

.video-modal__video {
    width: 100%;
    max-height: 90vh;
    height: auto;
    display: block;
    border-radius: 8px;
    box-shadow: 0 0 20px #00000080
}

.video-modal__close {
    position: absolute;
    top: 5%;
    right: 10%;
    font-size: 30px;
    color: #fff;
    background: transparent;
    border: none;
    cursor: pointer;
    z-index: 10
}

.image-modal {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1001;
    background: #000c;
    justify-content: center;
    align-items: center
}

.image-modal.active {
    display: flex
}

.image-modal__content {
    position: relative;
    max-width: 90%;
    max-height: 90%
}

.image-modal__img {
    width: 100%;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 0 15px #00000080
}

.image-modal__close {
    position: absolute;
    top: -18%;
    right: 0%;
    background: transparent;
    border: none;
    padding: 0;
    cursor: pointer;
    width: 24px;
    height: 24px;
    z-index: 10
}

.image-modal__close svg {
    display: block;
    width: 100%;
    height: 100%
}

.image-modal__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    background: #0000004d;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    box-shadow: 0 4px 10px #0000004d;
    border: none;
    color: #fff;
    width: 36px;
    height: 54px;
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
    z-index: 20
}

.image-modal__nav.image-modal__nav_prev {
    left: 10px;
    border-radius: 21px
}

.image-modal__nav.image-modal__nav_next {
    right: 10px;
    border-radius: 21px
}

.image-modal__nav:hover {
    background: #000000b3
}

.birthday__play-btn {
    width: 70px;
    height: 70px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 20px);
    opacity: 0;
    transition: transform .6s ease, opacity .6s ease;
    background: radial-gradient(46.43% 46.43% at 50% 50%, #ffffff4d, #ffffff4d);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    border-radius: 45.5px;
    box-shadow: 0 0 10px #98989840;
    border: none;
    padding: 0;
    cursor: pointer;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center
}

.birthday__play-btn svg {
    position: relative;
    left: 2px
}

.birthday__play-btn.animate-show {
    opacity: 1;
    transform: translate(-50%, -50%)
}

.birthday__img-wrap._visible .birthday__play-btn {
    transform: translate(-50%, -50%);
    opacity: 1
}

.banhok-case__video-btn {
    width: 70px;
    height: 70px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, calc(-50% + 20px));
    opacity: 0;
    transition: opacity .5s ease, transform .5s ease
}

.banhok-case__video-btn.animate-show {
    opacity: 1;
    transform: translate(-50%, -50%)
}

.banhok-case__video-btn.visible {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1)
}

@media (min-width: 1024px) {
    .banhok-case__video-btn {
        width: 120px;
        height: 120px
    }
}

.country-menu {
    position: relative;
    display: inline-block;
    font-family: Montserrat, sans-serif
}

@media (min-width: 1024px) {
    .country-menu {
        display: none
    }
}

.country-menu__toggle {
    font-family: Montserrat;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: transparent;
    color: #fff;
    padding: 8px 12px;
    border: none;
    outline: none;
    border-radius: 4px;
    cursor: pointer;
    position: relative
}

.country-menu__toggle_svg {
    margin: 0 0 0 7px
}

.country-menu__list {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 4px;
    background: #fffffff2;
    border: 1px solid #ccc;
    border-radius: 4px;
    list-style: none;
    padding: 0;
    min-width: 150px;
    z-index: 10;
    box-shadow: 0 4px 10px #0000001a
}

.country-menu__item {
    padding: 8px 12px;
    color: #000;
    cursor: pointer;
    transition: background-color .2s ease
}

.country-menu__item:hover {
    background-color: #f0f0f0
}

.country-menu.active .country-menu__list {
    display: block
}

.country-menu--desktop {
    position: relative;
    display: inline-block;
    font-family: Montserrat, sans-serif
}

@media (max-width: 1024px) {
    .country-menu--desktop {
        display: none
    }
}

.country-menu--desktop__toggle {
    font-family: Montserrat;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: transparent;
    color: #fff;
    border: none;
    outline: none;
    border-radius: 4px;
    cursor: pointer;
    position: relative
}

.country-menu--desktop__toggle_svg {
    margin: 0 0 0 7px
}

@media (min-width: 1024px) {
    .country-menu--desktop__toggle {
        font-size: 12px
    }
}

@media (min-width: 1280px) {
    .country-menu--desktop__toggle {
        font-size: 12px
    }
}

@media (min-width: 1440px) {
    .country-menu--desktop__toggle {
        font-size: 15px
    }
}

.country-menu--desktop__list {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 4px;
    background: #fffffff2;
    border: 1px solid #ccc;
    border-radius: 4px;
    list-style: none;
    padding: 0;
    min-width: 150px;
    z-index: 10;
    box-shadow: 0 4px 10px #0000001a
}

.country-menu--desktop__item {
    padding: 8px 12px;
    color: #000;
    cursor: pointer;
    transition: background-color .2s ease
}

.country-menu--desktop__item:hover {
    background-color: #f0f0f0
}

.country-menu--desktop.active .country-menu__list {
    display: block
}

.hero-title__desc_uslugi-w85 {
    max-width: 85%
}

.holidays {
    height: auto;
    padding: 0 0 133px;
    position: relative;
    z-index: 1;
    min-height: 0 !important
}

@media (min-width: 1024px) {
    .holidays_mobile {
        display: none
    }
}

@media (max-width: 1023px) {
    .holidays_desktop {
        display: none
    }
}

.holidays_desktop__background {
    height: 805px !important
}

.holidays__breadcrumbs {
    padding: 25px 0 !important
}

.holidays__slide {
    width: 100% !important
}

.holidays__carousel {
    margin-bottom: 0;
    padding: 0 !important
}

.holidays__container {
    padding: 0
}

.holidays__title {
    font-family: Corpo Light, sans-serif;
    font-size: 28px;
    padding: 20px 0 0
}

.holidays__title_white {
    color: #fff
}

.holidays__card-content {
    display: flex;
    flex-direction: column;
    padding-bottom: 20px;
    height: 100%;
    justify-content: flex-end;
    box-sizing: border-box
}

.holidays__card-title {
    font-family: Corpo SemiBold, sans-serif;
    font-size: 17px;
    padding: 0 0 15px
}

.holidays__card-desc {
    display: inline-block;
    width: 80%;
    color: #fff;
    opacity: .9;
    font-family: Corpo Light, sans-serif;
    font-size: 14px
}

.holidays__controls {
    margin-top: 55px !important
}

.holidays__case {
    background-color: transparent;
    padding: 0 0 133px
}

.holidays__case-card {
    height: 388px;
    width: 100%;
    padding-bottom: 0
}

.holidays__buttons {
    display: flex;
    align-items: center;
    gap: 20px
}

.holidays__buttons--prev, .holidays__buttons--next {
    width: 36px;
    height: 54px;
    background-color: transparent;
    border: 1px solid rgba(0, 0, 0, .6) !important;
    border-radius: 20px;
    padding: 10px;
    cursor: pointer;
    transition: opacity .3s
}

.holidays__buttons--prev:hover, .holidays__buttons--next:hover {
    opacity: .5
}

.holidays__buttons--prev img, .holidays__buttons--next img {
    filter: brightness(0) opacity(.2);
    width: 13px;
    height: 8px;
    display: block
}

.holidays__progress {
    background-color: #00000080
}

.holidays__progress-bar {
    background-color: #000000b3
}

.holidays-second {
    padding: 133px 0
}

.holidays-second__title {
    padding: 0
}

.holidays-second__carousel {
    padding: 0 !important;
    margin-bottom: 0 !important
}

.holidays-second__title-desc {
    text-align: left
}

.holidays-second__content {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: end;
    padding: 20px
}

.holidays-second__link-arrow {
    margin-right: 20px
}

.holidays-second__controls {
    margin-top: 50px
}

.holidays-third {
    padding: 133px 12px 50px;
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
    color: #fff
}

.holidays-third__bg-video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: 1
}

.holidays-third__content {
    position: relative;
    z-index: 2;
    margin: 0 auto;
    text-align: center;
    background-color: #0000;
    padding: 0
}

.holidays-third__title {
    font-family: Corpo Light, sans-serif;
    color: #000;
    font-size: 28px;
    width: 75%;
    margin: 0 auto;
    padding: 0 0 50px
}

.holidays-third__text {
    font-family: Commons Regular, sans-serif;
    text-align: left;
    color: #000;
    font-size: 18px;
    line-height: 1.4;
    padding: 0 0 20px
}

.holidays-third__text:last-child {
    padding: 0
}

.section-four {
    padding: 133px 12px;
    background: url(data:image/webp;base64,UklGRqwEAABXRUJQVlA4WAoAAAAgAAAAhQEAOgEASUNDUMgBAAAAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADZWUDggvgIAAHAsAJ0BKoYBOwE+7XayVimnqikgOAjBQB2JaW7hYJ907F+Vtf3jP3/tUkcOCQPYAFDMf+fs3UiRaimbGCQ0H95fkH95vHRt2G6V8x7mdR9sM3Y2npdSFMu6ObWEBiCxAztfeVezduI6zeu2tKkKSUv5/9MhZSSl/P/n7N6Lx7y+1fTOpET6kvaS4P7lPVI7bsD7vY2mkFzPHHlHyyV4H0d46+8q9WGmCRZmycWFf6w8Zq9/0C6JaChRCsN/0C6ODHxLtfZEJcNEL6ySg2Ss0ERYNU/vZZhrSdPZOZOi9hocTwNT2MgTv2GRYwn3/botg1z/EZyAaev+mJTeuLSGhUAA7rRan9F4UxnDZ9Kw9UCZGSrsp0+oXqAOsh+t7/ihEnRJl59m75GRoK8K08hDmeXEOGji6X7Z5L+86SY1gunvl6KKwij57zrjGsBqpZuT3e1lipBzMMT67f0aN1jxgtMPQOlB07b2Mf8+EQAA/vmaIKZ4dJReFpXhsNhrcKQ4lKFZYH7TwvdkK5c8gPg3xKfwVhx2YNItkshN1PFX0zckAEPAQAgSHn/wnYPViTosqmCFGPPsaVJAA4lrxT0gCVolrA9eHnKqjxYrvrjdSfI0W177IXZCT2f90WGWgVtkz7BTh2vF9dZgWPBjFpd4boaJqWPMlwjA6kSot5wL6keVD5RQxRYmuzTe3qgNLNLVIk3nCx15cPQgpgsy8Rqx/EtfqWkl9RcfeUvCMKP03z6yo3HqykC5aoYbkV8VoQb363gd3MxC2cKXjanJaNx4zmQAXM8r97HEXNvBpMGCY/uLibtJRuFPTJgZwjBFHfJoOX4WM382xKQrnP2woXA0fzNdyllhztkV6Xf9M9pEmcNBA3VquErDSVjuUgsg1AQAcjmYNrvh96UQ//vumO0BARVhVQIBrNh5F/6gJcAAAA==) center center/cover no-repeat
}

.section-four__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px
}

.section-four__title {
    font-family: Corpo Light, sans-serif;
    width: 98%;
    font-size: 20px;
    text-align: center;
    padding: 0 0 35px;
    line-height: 1.6;
    background: linear-gradient(90deg, #2b5876, #51a4dc);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent
}

.section-four__wrapper {
    display: flex;
    justify-content: center
}

.section-four__btn--transp {
    font-family: Corpo Light, sans-serif;
    border-radius: 1000px;
    padding: 13px 40px;
    background: linear-gradient(90deg, #4fa1db, #6ecfe0);
    width: 284px;
    height: 49px;
    color: #fff;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: background .3s ease
}

.section-four__btn--transp span {
    text-transform: uppercase;
    pointer-events: none;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .4)
}

.section-four__btn--transp:hover {
    background: linear-gradient(90deg, #3b8fcc, #58bad5);
    color: #fff
}

.holidays-events {
    padding: 0 52px 140px !important
}

.holidays-events__title {
    font-family: Corpo SemiBold, sans-serif;
    font-size: 30px !important;
    margin-bottom: 0;
    padding: 0 0 6px
}

.holidays-events__title_lh35 {
    line-height: 35px
}

.holidays-events__header-title {
    font-family: Corpo SemiBold, sans-serif;
    font-size: 55px !important;
    color: #fff
}

.holidays-events__header {
    margin-bottom: 80px
}

@media (min-width: 1024px) {
    .holidays-events__header {
        padding: 0
    }
}

.holidays-events__container {
    padding: 0 !important
}

.holidays-events__carousel, .holidays-events__pagination {
    display: none
}

.holidays-events___title {
    font-size: 30px;
    color: #fff
}

.holidays-events___title_wrap {
    display: flex;
    flex-direction: column
}

.holidays-events__desc {
    display: inline-block;
    font-family: Corpo Light, sans-serif;
    font-size: 16px;
    color: #fff;
    opacity: 90%;
    width: 86%
}

.holidays-events__card {
    position: relative;
    width: 474px !important;
    height: auto !important;
    margin-bottom: 0 !important
}

.holidays-events__content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0 35px 44px;
    z-index: 101;
    color: #fff;
    background: linear-gradient(to top, #000000b3, #0000004d, #0000 40%)
}

.holidays-events__content_end {
    align-items: end
}

.holidays-events__link-arrow {
    width: 52px;
    height: 70px;
    border: 1px solid #fff;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s ease
}

.holidays-events__link-arrow:hover {
    background-color: #ffffff1a
}

.holidays-events__gradient {
    border-radius: 26px
}

.holidays-events__event-image {
    position: relative
}

.holidays-events__event-image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: inherit
}

.holidays-events__event-image:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 70%;
    background: linear-gradient(to top, #000000bf, #00000080, #0000001a 80%, #0000);
    z-index: 1;
    pointer-events: none
}

.holidays-places {
    padding: 140px 52px;
    background-color: #02170f
}

.holidays-places__title {
    color: #fff
}

.holidays-places__header {
    justify-content: end
}

.holidays-places__slide {
    width: 474px !important
}

.holidays-places__wrap {
    width: 93%
}

.holidays-landing {
    padding: 144px 12px 132px
}

.holidays-landing__title {
    font-family: Corpo Light, sans-serif;
    font-size: 55px
}

@media (max-width: 1360px) {
    .holidays-landing__title {
        font-size: clamp(28px, 2.2rem, 35px);
    }
}

@media (max-width: 500px) {
    .holidays-landing__title {
        font-size: clamp(28px, 1.5rem, 30px);
    }
}

.holidays-landing__text {
    font-family: Commons Regular, sans-serif;
    font-size: 18px;
    line-height: 180%;
    padding: 0 0 30px
}

.holidays-landing__text:last-child {
    padding: 0
}

.holidays-contacts {
    padding: 180px 200px;
    background: url(../img/holidays__contacts_bcg_desktop-D9_cQcfe.webp) center center/cover no-repeat;
    color: #fff;
    text-align: center;
    position: relative
}

.holidays-contacts__content {
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center
}

@media (min-width: 1440px) {
    .holidays-contacts__content {
        max-width: 88%
    }
}

.holidays-contacts__title {
    font-family: Corpo ExtraLight, sans-serif;
    font-size: 30px !important;
    line-height: 1.2;
    background: linear-gradient(90deg, #2b5876, #51a4dc);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    padding: 0 0 30px
}

@media (min-width: 1440px) {
    .holidays-contacts__title {
        font-size: 40px !important
    }
}

@media (min-width: 1024px) {
    .business-mice__events {
        padding-top: 0
    }
}

.business-mice__desktop {
    display: none
}

@media (min-width: 1024px) {
    .business-mice__desktop {
        display: block
    }
}

.business-mice__mobile {
    display: block
}

@media (min-width: 1024px) {
    .business-mice__mobile {
        display: neone
    }
}

.private-events__section {
    padding: 0 !important
}

@media (min-width: 1024px) {
    .private-events__section--desktop {
        padding: 0 12px !important
    }
}

.private-events__events {
    padding: 0 0 165px !important
}

.private-events__container {
    padding: 0
}

.private-events__breadcrumbs {
    position: relative;
    padding: 25px 12px 118px !important;
    z-index: 10
}

@media (min-width: 1024px) {
    .private-events__breadcrumbs {
        padding: 50px 12px 100px !important
    }
}

.private-events__events-list {
    padding: 0 12px
}

@media (min-width: 1024px) {
    .private-events__events-list {
        padding: 0
    }
}

.events-list__img {
    width: 460px;
    height: auto
}

@media (min-width: 1024px) {
    .events-list__img {
        width: 100%
    }
}

.pd-section {
    padding: 75px 0
}

@media (min-width: 1440px) {
    .pd-section {
        padding: 140px 0
    }
}

.events {
    position: relative;
    overflow: hidden
}

.events__bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    pointer-events: none
}

@media (min-width: 1024px) {
    .events__bg-video {
        display: none
    }
}

@media (min-width: 1440px) {
    .events {
        padding: 75px 0 100px
    }

    .events:before, .events:after {
        display: none
    }
}

.events .events-list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    overflow-x: scroll;
    padding-bottom: 0;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.events .events-list::-webkit-scrollbar {
    height: 0;
    background: transparent
}

.events .events-list::-webkit-scrollbar {
    display: none
}

@media (min-width: 1440px) {
    .events .events-list {
        flex-wrap: wrap;
        overflow: auto;
        column-gap: 30px;
        row-gap: 40px
    }
}

.events .events-list__item {
    flex-shrink: 0;
    width: 310px
}

@media (min-width: 1024px) {
    .events .events-list__item {
        width: auto
    }
}

@media (min-width: 1440px) {
    .events .events-list__item {
        max-width: 100%
    }

    .events .events-list__item:first-child {
        order: 2;
        width: 48%
    }

    .events .events-list__item:nth-child(2) {
        order: 1;
        width: 100%
    }

    .events .events-list__item:nth-child(2) .events-list__descr {
        width: 38%
    }

    .events .events-list__item:nth-child(3) {
        order: 3;
        width: 48%
    }

    .events .events-list__item:nth-child(4) {
        order: 5;
        width: 48%
    }

    .events .events-list__item:nth-child(5) {
        order: 4;
        width: 48%
    }
}

@media (min-width: 1780px) {
    .events .events-list__item:first-child {
        width: 38.4%
    }

    .events .events-list__item:nth-child(2) {
        width: 59.6%
    }

    .events .events-list__item:nth-child(3), .events .events-list__item:nth-child(4) {
        width: 36%
    }

    .events .events-list__item:nth-child(5) {
        width: 23%
    }

    .events .events-list__item:nth-child(5) .events-list__content {
        top: 0;
        bottom: auto
    }

    .events .events-list__item:nth-child(5) .events-list__title {
        font-size: 25px
    }

    .events .events-list__item:nth-child(5) .events-list__btn {
        bottom: auto
    }

    .events .events-list__item:nth-child(5) .events-list__descr {
        width: 85%
    }
}

.events .events-list__article {
    position: relative;
    width: 100%
}

.events .events-list__article:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, transparent 55.06%, rgba(0, 0, 0, .6) 86.58%)
}

@media (min-width: 1440px) {
    .events .events-list__article:after {
        border-radius: 20px
    }
}

@media (min-width: 1440px) {
    .events .events-list__article {
        height: 577px
    }
}

.events .events-list__img {
    display: block;
    width: 310px;
    height: 460px;
    object-fit: cover;
    border-radius: 10px
}

@media (min-width: 1440px) {
    .events .events-list__img {
        height: 100%
    }
}

.events .events-list__content {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 7px;
    width: 100%;
    z-index: 200
}

@media (min-width: 1440px) {
    .events .events-list__content {
        padding: 40px
    }
}

.events .events-list__title {
    font-family: Corpo SemiBold, sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 26px;
    color: #fff
}

@media (min-width: 1440px) {
    .events .events-list__title {
        font-size: 30px;
        line-height: 36px
    }
}

.events .events-list__descr {
    font-family: Corpo Light, sans-serif;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 300;
    line-height: 18px;
    color: #fff;
    opacity: .9;
    width: 80%
}

@media (min-width: 1440px) {
    .events .events-list__descr {
        font-family: Corpo Light, sans-serif;
        font-size: 16px;
        line-height: 23px;
        text-align: left;
        width: 65%
    }

    .events .events-list__descr--w100 {
        width: 100%
    }
}

.events .events-list__btn {
    position: absolute;
    right: 20px;
    bottom: 20px;
    width: 39px;
    height: 55px;
    border: 1px solid #fff;
    border-radius: 100px;
    background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='13'%20height='9'%20fill='none'%3e%3cpath%20fill='%23fff'%20d='M12.859%204.854a.5.5%200%200%200%200-.708L9.677.964a.5.5%200%200%200-.707.708L11.798%204.5%208.97%207.328a.5.5%200%201%200%20.707.708zM.495%204.5V5h12.01V4H.495z'/%3e%3c/svg%3e");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 13px 12px;
    transition: all .12s ease-in;
    flex-shrink: 0
}

.events .events-list__btn:hover, .events .events-list__btn:focus-visible {
    width: 55px
}

@media (min-width: 1440px) {
    .events .events-list__btn:hover, .events .events-list__btn:focus-visible {
        width: 70px
    }
}

@media (min-width: 1440px) {
    .events .events-list__btn {
        right: 40px;
        bottom: 40px;
        width: 52px;
        height: 70px
    }
}

.private-events-desktop {
    padding: 75px 0 140px
}

.private-events-desktop__row {
    display: flex;
    justify-content: space-between;
    gap: 30px
}

.private-events-desktop__row--mb40 {
    margin-bottom: 40px
}

.private-events-desktop__img {
    display: block;
    width: 100%;
    height: auto
}

.private-events-desktop__article {
    height: auto;
    position: relative;
    overflow: hidden
}

.private-events-desktop__article:before {
    content: "";
    height: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    background: linear-gradient(0deg, #0009, #0000)
}

.private-events-desktop__content {
    padding: 0 40px 40px;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: end;
    justify-content: space-between;
    z-index: 10;
    transform: translateY(100%);
    opacity: 0;
    transition: transform .6s ease, opacity .6s ease
}

.private-events-desktop__content.visible {
    transform: translateY(0);
    opacity: 1
}

.private-events-desktop__content--text-top {
    display: flex;
    align-items: start;
    top: 0;
    bottom: auto;
    left: 0;
    padding: 40px 40px 0
}

@media (max-width: 1500px) {
    .private-events-desktop__content--text-top {
        flex-direction: column;
        gap: 20px
    }
}

.private-events-desktop__content--text-top_btn {
    display: flex;
    align-items: start;
    top: 0;
    bottom: auto;
    left: 0;
    padding: 40px 40px 0
}

@media (max-width: 1500px) {
    .private-events-desktop__content--text-top_btn {
        flex-direction: row;
        gap: 20px
    }
}

.private-events-desktop__title {
    font-family: Corpo SemiBold, sans-serif;
    font-size: 30px;
    color: #fff;
    padding: 0 0 6px
}

.private-events-desktop__title--fs25 {
    font-size: 25px
}

@media (max-width: 1300px) {
    .private-events-desktop__title {
        font-size: 26px
    }
}

.private-events-desktop__descr {
    font-family: Corpo Light, sans-serif;
    font-size: 16px;
    color: #fff;
    width: 73%;
    opacity: 90%
}

.private-events-desktop__descr--w100 {
    width: 100%
}

@media (max-width: 1300px) {
    .private-events-desktop__descr {
        font-size: 14px
    }
}

.private-events-desktop__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 51px;
    height: 71px;
    border: 1px solid #fff;
    border-radius: 30px;
    transition: .2s all ease-in-out
}

.private-events-desktop__btn:hover {
    width: 61px
}

.private-events-desktop__article--gradient:before {
    background: none
}

.private-events__section--desktop {
    display: none
}

@media (min-width: 1024px) {
    .private-events__section--desktop {
        display: block
    }
}

.private-events__section--mobile {
    display: block
}

@media (min-width: 1024px) {
    .private-events__section--mobile {
        display: none
    }
}

.private-event-places {
    padding: 96px 0 144px;
    background-color: #02170f
}

@media (min-width: 1024px) {
    .private-event-places {
        padding: 140px 0 50px
    }
}

.private-event-places__title {
    color: #fff !important
}

.private-event-places__link {
    color: #fff
}

.private-event-places__title {
    margin-bottom: 0;
    font-size: 25px
}

@media (min-width: 1440px) {
    .private-event-places__title {
        font-size: 25px
    }
}

.private-event-places__title_w85 {
    width: 85%;
    margin: 0 auto;
    font-size: 25px
}

@media (max-width: 1440px) {
    .private-event-places__title_w85 {
        width: 70% !important;
        margin: 0 auto
    }
}

@media (min-width: 1440px) {
    .private-event-places__title_w65 {
        width: 65% !important;
        margin: 0 auto
    }
}

@media (min-width: 1200px) {
    .private-event-places__header {
        margin-bottom: 0
    }
}

@media (min-width: 1440px) {
    .private-event-places__header {
        margin-bottom: 80px
    }
}

.private-event-places__carousel {
    margin: 0;
    padding: 0
}

@media (min-width: 1440px) {
    .private-event-places__carousel {
        margin-top: 0;
        padding: 0
    }
}

.private-event-places__swiper {
    padding: 0 0 50px !important
}

.private-event-places__span {
    color: #fff
}

.private-event-places__card-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 20px;
    background: linear-gradient(to top, rgba(0, 0, 0, .6), transparent);
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .6s ease 3s, transform .6s ease 3s
}

.private-event-places__card-content.private-event-places--animated {
    opacity: 1;
    transform: translateY(0);
    z-index: 20
}

.private-event-card-link {
    display: block;
    height: 100%;
    text-decoration: none;
    color: inherit
}

.reservation {
    background-image: url(./sea-wD--Ha3h.webp);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    height: auto;
    position: relative;
    width: 100%;
    z-index: 200
}

.reservation:after {
    background: linear-gradient(180deg, #eeeeef, #fff0 7.39%, #fff0 82.81%, #fff 99.48%);
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.reservation__container {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 40px;
    position: relative;
    z-index: 100
}

.reservation__title {
    color: #000;
    font-family: Corpo Light, sans-serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 40px;
    text-align: center
}

@media (max-width: 676px) {
    .reservation__title {
        font-size: 28px
    }
}

.reservation__wrapper {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 20px
}

.reservation__swiper-slide {
    width: 474px !important
}

.reservation__btn {
    border-radius: 50px;
    color: #000;
    font-family: Corpo Light, sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 25px;
    padding: 13px 40px;
    text-align: center;
    transition: all .12s ease-in
}

.reservation__btn--blue {
    background: linear-gradient(90deg, #4fa1db, #6ecfe0);
    color: #fff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .4);
    width: fit-content
}

.reservation__btn--blue:focus-visible, .reservation__btn--blue:hover {
    background: linear-gradient(90deg, #3684bd, #3bbed5)
}

.reservation__btn--transp {
    background: linear-gradient(109.42deg, #000 9.87%, #fff, #000 88.38%);
    border-radius: 50px;
    font-size: 28px;
    line-height: 21px;
    padding: 1px;
    position: relative
}

.reservation__btn--transp span {
    background-image: url(./sea-wD--Ha3h.webp);
    background-position: bottom -190px left;
    background-repeat: no-repeat;
    border-radius: 50px;
    color: #000;
    display: inline-block;
    font-family: Corpo Light, sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 25px;
    padding: 11px 40px;
    text-align: center
}

.reservation__btn--transp:focus-visible span, .reservation__btn--transp:hover span {
    background-color: #fff;
    background-image: none
}

@media only screen and (min-width: 1024px) {
    .reservation {
        padding: 180px 0 140px
    }

    .reservation__wrapper {
        flex-direction: row;
        gap: 35px
    }

    .reservation__title {
        font-size: 55px;
        line-height: 62px
    }

    .reservation__btn, .reservation__btn--transp span {
        font-size: 18px
    }
}

.private-event-area {
    padding: 80px 0
}

@media (min-width: 1024px) {
    .private-event-area {
        padding: 140px 0 160px
    }
}

@media (min-width: 1024px) {
    .private-event-area__title {
        margin-bottom: 80px
    }
}

@media (min-width: 1024px) {
    .private-event-area__header {
        margin-bottom: 0
    }
}

.private-event-area__carousel {
    margin-bottom: 30px;
    padding: 0;
    margin-top: 0
}

.private-event-reviews {
    padding: 60px 0
}

@media (min-width: 1024px) {
    .private-event-reviews {
        padding: 140px 0
    }
}

.private-event-reviews__section-header {
    margin-bottom: 0
}

@media (min-width: 1024px) {
    .private-event-reviews__section-header {
        margin-bottom: 80px
    }
}

.private-event-reviews__title {
    margin-bottom: 50px
}

@media (min-width: 1024px) {
    .private-event-reviews__title {
        margin-bottom: 0
    }
}

.private-event-reviews__reviews-list {
    margin-top: 0
}

.private-event-reviews__name {
    font-family: Corpo Light, sans-serif;
    font-size: 24px
}

@media (min-width: 1024px) {
    .private-event-reviews__name {
        font-size: 30px
    }
}

.reviews-list-item--mobile {
    display: flex;
    padding: 0 12px 6px 8px
}

@media (min-width: 769px) {
    .reviews-list-item--mobile {
        display: none
    }
}

.reviews-list-item--desktop {
    display: none
}

@media (min-width: 769px) {
    .reviews-list-item--desktop {
        display: flex
    }
}

.private-event-landing {
    padding: 133px 0 90px
}

@media (min-width: 1024px) {
    .private-event-landing {
        padding: 160px 12px 140px
    }
}

.private-event-landing__title {
    text-align: center;
    padding: 0 0 50px
}

@media (min-width: 1024px) {
    .private-event-landing__title {
        margin: 0;
        text-align: left;
        padding: 0 0 40px;
        width: 60%
    }
}

.private-event-landing__title-text {
    border-top: none;
    text-align: left
}

.private-event-landing__container {
    margin-top: 0
}

.private-event-landing__text, .private-event-landing__item {
    font-family: Commons Light, sans-serif;
    font-size: 18px;
    line-height: 180%;
    text-align: left;
    border-top: none;
    font-weight: 400
}

.private-event-landing__text--mb55, .private-event-landing__item--mb55 {
    margin-bottom: 55px
}

@media (min-width: 1024px) {
    .private-event-landing__text, .private-event-landing__item {
        font-weight: 400
    }
}

.private-event-landing_40 {
    padding: 40px 0
}

@media (min-width: 1024px) {
    .private-event-landing_40 {
        padding: 0 0 40px
    }
}

.private-event-landing_p0 {
    padding: 0
}

@media (min-width: 1024px) {
    .private-event-landing_p0 {
        padding: 0
    }
}

.private-event-landing__wrapper {
    display: flex;
    flex-direction: column;
    align-items: center
}

@media (min-width: 1024px) {
    .private-event-landing__wrapper {
        display: block
    }
}

.private-event-landing__btn {
    display: none
}

@media (min-width: 1024px) {
    .private-event-landing__btn {
        display: block
    }
}

.private-event-landing__btn--mobile {
    display: block
}

@media (min-width: 1024px) {
    .private-event-landing__btn--mobile {
        display: none
    }
}

.private-event-landing__list {
    list-style: disc;
    padding-left: 30px
}

.business-mice-landing__text {
    line-height: 170% !important
}

.business-mice-landing__text--w82 {
    width: 100%
}

@media (min-width: 1024px) {
    .business-mice-landing__text--w82 {
        width: 82%
    }
}

.business-mice-landing__title-text {
    width: 75%;
    font-size: 22px;
    line-height: 140%
}

.business-mice-landing-bottom__flex {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap
}

@media (min-width: 1024px) {
    .business-mice-landing-bottom__flex {
        flex-direction: row;
        gap: 40px
    }
}

@media (min-width: 1300px) {
    .business-mice-landing-bottom__flex {
        align-items: flex-end
    }
}

.business-mice-landing-bottom__text {
    flex: 1 1 55%;
    min-width: 300px
}

.business-mice-landing-bottom__video {
    flex: 1 1 40%;
    min-width: 280px;
    display: flex;
    justify-content: center;
    align-items: center
}

.business-mice-landing-bottom__btn-wrap {
    display: flex;
    align-items: center;
    gap: 30px;
    flex-direction: column;
    align-items: start
}

@media (max-width: 1024px) {
    .business-mice-landing-bottom__btn-wrap {
        padding: 0 0 50px
    }
}

@media (min-width: 1300px) {
    .business-mice-landing-bottom__btn-wrap {
        align-items: center;
        flex-direction: row;
        gap: 20px
    }
}

.business-mice-landing-bottom__btn {
    font-family: Corpo Light, sans-serif;
    font-size: 16px;
    border: 1px solid #000;
    border-radius: 1000px;
    padding: 13px 40px;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .4);
    transition: background-color .3s ease
}

.business-mice-landing-bottom__btn:hover {
    background-color: #e8e6e6;
    color: #000
}

.business-mice-landing-bottom-video-section {
    position: relative;
    text-align: center
}

.business-mice-landing-bottom-video-section__link {
    display: inline-block;
    text-decoration: none
}

.business-mice-landing-bottom-video-section__wrap {
    position: relative;
    display: inline-block;
    max-width: 900px;
    width: 100%;
    overflow: hidden
}

.business-mice-landing-bottom-video-section__bcg {
    position: relative;
    width: 100%;
    height: auto
}

.business-mice-landing-bottom-video-section__image {
    position: relative;
    width: 100%;
    height: auto;
    display: block;
    z-index: 0
}

.business-mice-landing-bottom-video-section__overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #0006;
    z-index: 1;
    pointer-events: none
}

.business-mice-landing-bottom-video-section .banhok-case__video-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 70px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 45px;
    transform: translate(-50%, -50%);
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
    box-shadow: 0 0 10px #98989840;
    z-index: 2
}

.business-mice-landing-bottom-video-section .banhok-case__video-btn svg {
    display: block;
    left: 20%
}

.business-mice-landing-bottom-video-section .banhok-case__video-btn:hover {
    transform: translate(-50%, -50%) scale(1.1)
}

.video-caption {
    position: absolute;
    bottom: 38px;
    left: 50%;
    font-size: 25px !important;
    transform: translate(-50%);
    font-family: Corpo SemiBold, sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #fff;
    width: 100%;
    line-height: 170%;
    z-index: 2;
    pointer-events: none
}

@media (min-width: 1024px) {
    .video-caption {
        font-size: 50px !important
    }
}

@media (min-width: 1024px) {
    .business-mice-mb80 {
        margin-bottom: 80px !important
    }
}

.business-mice-border-top {
    border-top: 1px solid rgba(0, 0, 0, .4) !important;
    padding-top: 20px;
    width: 100%
}

@media (min-width: 1024px) {
    .business-mice-border-top {
        border-top: none !important;
        padding-top: 0
    }
}

.corporate-events-desktop__content {
    flex-direction: column;
    align-items: start
}

.corporate-events-desktop__title {
    padding: 0 0 20px
}

.corporate-events-desktop__title--w75 {
    width: 75% !important
}

.corporate-events-desktop__link {
    color: #fff;
    font-size: 18px;
    padding: 13px 40px
}

.corporate-events-mobile__title {
    width: 70%;
    font-family: Corpo Light, sans-serif !important;
    font-size: 17px !important
}

.corporate-events-mobile__title--fs14 {
    font-size: 14px !important
}