@charset "UTF-8";

@font-face {
    font-family: Mediator;
    font-display: swap;
    src: url(../fonts/Mediator-BoldItalic.woff2) format("woff2"), url(../fonts/Mediator-BoldItalic.woff) format("woff");
    font-weight: 700;
    font-style: italic
}

@font-face {
    font-family: Mediator;
    font-display: swap;
    src: url(../fonts/Mediator-Light.woff2) format("woff2"), url(../fonts/Mediator-Light.woff) format("woff");
    font-weight: 300;
    font-style: normal
}

@font-face {
    font-family: Mediator;
    font-display: swap;
    src: url(../fonts/Mediator-Thin.woff2) format("woff2"), url(../fonts/Mediator-Thin.woff) format("woff");
    font-weight: 100;
    font-style: normal
}

@font-face {
    font-family: Mediator;
    font-display: swap;
    src: url(../fonts/Mediator-Bold.woff2) format("woff2"), url(../fonts/Mediator-Bold.woff) format("woff");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: Mediator;
    font-display: swap;
    src: url(../fonts/Mediator-Regular.woff2) format("woff2"), url(../fonts/Mediator-Regular.woff) format("woff");
    font-weight: 400;
    font-style: normal
}

* {
    padding: 0;
    margin: 0;
    border: 0
}

*,
:after,
:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body,
html {
    height: 100%;
    min-width: 320px;
    scroll-behavior: smooth
}

input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0
}
.page7 .header,
.page7 .footer{
    display: none;
}
input[type=number] {
    -moz-appearance: textfield
}

body {
    color: #000;
    line-height: 1.2;
    font-family: Arial, sans-serif;
    font-size: 1rem;
    -ms-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

button,
input,
textarea {
    font-family: Arial, sans-serif;
    font-size: inherit;
    line-height: inherit
}

button {
    cursor: pointer;
    color: inherit;
    background-color: transparent
}

a {
    color: inherit;
    text-decoration: none
}

ul li {
    list-style: none
}

img,
picture {
    vertical-align: top;
    max-width: 100%
}

picture {
    width: 100%
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: inherit;
    font-size: inherit
}

.lock body {
    overflow: hidden;
    -ms-touch-action: none;
    touch-action: none;
    -ms-scroll-chaining: none;
    overscroll-behavior: none
}

.wrapper {
    min-height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow: hidden
}

@supports (overflow:clip) {
    .wrapper {
        overflow: clip
    }
}

.wrapper>main {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto
}

.wrapper>* {
    min-width: 0
}

.container {
    max-width: 1850px;
    margin: 0 auto;
    padding: 0 15px
}

.container {
    max-width: 75rem;
    margin: 0 auto;
    padding: 0 .9375rem
}

body::after {
    content: "";
    background-color: rgba(0, 0, 0, .7);
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: opacity .8s ease 0s;
    transition: opacity .8s ease 0s;
    pointer-events: none;
    z-index: 149
}

.popup-show body::after {
    opacity: 1
}

.popup {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 30px 10px;
    -webkit-transition: visibility .8s ease 0s;
    transition: visibility .8s ease 0s;
    visibility: hidden;
    pointer-events: none
}

.popup__close {
    position: fixed;
    right: 20px;
    top: 20px;
    outline: 0;
    -webkit-transition: 0s;
    transition: 0s
}

.popup_show {
    z-index: 150;
    visibility: visible;
    overflow: auto;
    pointer-events: auto
}

.popup_show .popup__content {
    visibility: visible;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.popup__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 100%;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 100%;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    align-items: center
}

.popup__content {
    visibility: hidden;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: -webkit-transform .3s ease 0s;
    transition: -webkit-transform .3s ease 0s;
    transition: transform .3s ease 0s;
    transition: transform .3s ease 0s, -webkit-transform .3s ease 0s;
    background-color: #fff;
    padding: 20px;
    width: 100%;
    max-width: 760px
}

.lock .popup__content {
    visibility: visible
}

[class*=-ibg] {
    position: relative
}

[class*=-ibg] img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover
}

[class*=-ibg--contain] img {
    -o-object-fit: contain;
    object-fit: contain
}

.logo {
    max-width: 170px;
    display: inline-block
}

.social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.social li {
    width: 30px;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out
}

.social li:hover {
    scale: 1.05
}

.widget {
    position: fixed;
    bottom: 10vh;
    right: 20px;
    z-index: 4;
    border-radius: 40px;
    padding: 10px;
    background-color: #fff;
    -webkit-box-shadow: 0 3px 5px 0 rgba(74, 74, 74, .3);
    box-shadow: 0 3px 5px 0 rgba(74, 74, 74, .3)
}

.widget ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 10px
}

.widget ul li {
    width: 40px;
    aspect-ratio: 1/1;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out
}

.widget ul li:hover {
    scale: 1.05
}

.btn {
    background: -webkit-gradient(linear, left top, left bottom, from(#f5b774), to(#f29474));
    background: linear-gradient(to bottom, #f5b774, #f29474);
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: .02em;
    font-weight: 700;
    padding: 30px 40px;
    position: relative;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    border-bottom: 4px solid #946262;
    color: #fff;
    overflow: hidden;
    display: inline-block
}

.btn--lg {
    font-size: 18px;
    min-height: 80px
}

.btn--decor {
    padding-left: 100px
}

.btn--decor::after {
    position: absolute;
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    z-index: 2;
    -webkit-animation: linear infinite garland 4s;
    animation: linear infinite garland 4s
}

.no-webp .btn--decor::before {
    background: url(../img/garland-btn.png) center/contain no-repeat
}

.btn--decor::before {
    position: absolute;
    width: 90px;
    height: 100%;
    pointer-events: none;
    -webkit-transform: rotate(306deg);
    -ms-transform: rotate(306deg);
    transform: rotate(306deg);
    left: 0;
    top: 50%;
    content: "";
    translate: 0 -50%;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out
}

.btn:hover {
    scale: 1.05
}

.btn--accent {
    background: #8969c7;
    border-bottom: none
}

.clients__title,
.contact__title,
.feedback__title,
.news__title,
.section-title,
.title {
    font-weight: 700;
    font-size: 62px
}

.article,
.clients,
.section-margin {
    margin: 80px 0
}

.contact,
.feedback,
.news,
.section-padding {
    padding: 80px 0
}

.call-btn {
    border-bottom: 1px solid #f6c14e;
    color: #f6c14e;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.call-btn:hover {
    color: #8969c7;
    border-bottom-color: transparent
}

.clients__title,
.feedback__title,
.news__title,
.section-title {
    text-align: center;
    margin-bottom: 100px
}

@-webkit-keyframes garland {
    0% {
        bottom: 10px;
        left: 30px;
        scale: 0;
        opacity: 0
    }

    11% {
        bottom: 10px;
        left: 30px;
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #f29474;
        box-shadow: 0 0 34px 16px #f29474;
        scale: 1;
        opacity: 1
    }

    22% {
        bottom: 10px;
        left: 30px;
        scale: 0;
        opacity: 0
    }

    33% {
        bottom: 35px;
        left: 50px;
        scale: 0;
        opacity: 0
    }

    44% {
        bottom: 35px;
        left: 50px;
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #3262b4;
        box-shadow: 0 0 34px 16px #3262b4;
        scale: 1;
        opacity: 1
    }

    55% {
        bottom: 35px;
        left: 50px;
        scale: 0;
        opacity: 0
    }

    66% {
        left: 70px;
        bottom: 60px;
        scale: 0;
        opacity: 0
    }

    77% {
        left: 70px;
        bottom: 60px;
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #b7256f;
        box-shadow: 0 0 34px 16px #b7256f;
        scale: 1;
        opacity: 1
    }

    88% {
        left: 70px;
        bottom: 60px;
        scale: 0;
        opacity: 0
    }
}

@keyframes garland {
    0% {
        bottom: 10px;
        left: 30px;
        scale: 0;
        opacity: 0
    }

    11% {
        bottom: 10px;
        left: 30px;
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #f29474;
        box-shadow: 0 0 34px 16px #f29474;
        scale: 1;
        opacity: 1
    }

    22% {
        bottom: 10px;
        left: 30px;
        scale: 0;
        opacity: 0
    }

    33% {
        bottom: 35px;
        left: 50px;
        scale: 0;
        opacity: 0
    }

    44% {
        bottom: 35px;
        left: 50px;
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #3262b4;
        box-shadow: 0 0 34px 16px #3262b4;
        scale: 1;
        opacity: 1
    }

    55% {
        bottom: 35px;
        left: 50px;
        scale: 0;
        opacity: 0
    }

    66% {
        left: 70px;
        bottom: 60px;
        scale: 0;
        opacity: 0
    }

    77% {
        left: 70px;
        bottom: 60px;
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #b7256f;
        box-shadow: 0 0 34px 16px #b7256f;
        scale: 1;
        opacity: 1
    }

    88% {
        left: 70px;
        bottom: 60px;
        scale: 0;
        opacity: 0
    }
}

@-webkit-keyframes garland-2 {
    0% {
        scale: 0;
        opacity: 0;
        bottom: 6px;
        left: 24px
    }

    11% {
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #f29474;
        box-shadow: 0 0 34px 16px #f29474;
        scale: 1;
        opacity: 1;
        bottom: 6px;
        left: 24px
    }

    22% {
        scale: 0;
        opacity: 0;
        bottom: 6px;
        left: 24px
    }

    33% {
        scale: 0;
        opacity: 0;
        bottom: 24px;
        left: 38px
    }

    44% {
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #3262b4;
        box-shadow: 0 0 34px 16px #3262b4;
        scale: 1;
        opacity: 1;
        bottom: 24px;
        left: 38px
    }

    55% {
        scale: 0;
        opacity: 0;
        bottom: 24px;
        left: 38px
    }

    66% {
        scale: 0;
        opacity: 0;
        bottom: 43px;
        left: 49px
    }

    77% {
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #b7256f;
        box-shadow: 0 0 34px 16px #b7256f;
        scale: 1;
        opacity: 1;
        bottom: 43px;
        left: 49px
    }

    88% {
        scale: 0;
        opacity: 0;
        bottom: 43px;
        left: 49px
    }
}

@keyframes garland-2 {
    0% {
        scale: 0;
        opacity: 0;
        bottom: 6px;
        left: 24px
    }

    11% {
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #f29474;
        box-shadow: 0 0 34px 16px #f29474;
        scale: 1;
        opacity: 1;
        bottom: 6px;
        left: 24px
    }

    22% {
        scale: 0;
        opacity: 0;
        bottom: 6px;
        left: 24px
    }

    33% {
        scale: 0;
        opacity: 0;
        bottom: 24px;
        left: 38px
    }

    44% {
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #3262b4;
        box-shadow: 0 0 34px 16px #3262b4;
        scale: 1;
        opacity: 1;
        bottom: 24px;
        left: 38px
    }

    55% {
        scale: 0;
        opacity: 0;
        bottom: 24px;
        left: 38px
    }

    66% {
        scale: 0;
        opacity: 0;
        bottom: 43px;
        left: 49px
    }

    77% {
        background-color: #f6c14e;
        -webkit-box-shadow: 0 0 34px 16px #b7256f;
        box-shadow: 0 0 34px 16px #b7256f;
        scale: 1;
        opacity: 1;
        bottom: 43px;
        left: 49px
    }

    88% {
        scale: 0;
        opacity: 0;
        bottom: 43px;
        left: 49px
    }
}

.header {
    position: absolute;
    top: 0;
    padding: 20px 0;
    width: 100%;
    color: #fff;
    z-index: 5
}

.header__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 10px
}

.header__actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    gap: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    text-align: center
}

.header__social {
    margin-top: 40px;
    gap: 30px
}

.header .menu__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.header .menu__list a {
    position: relative;
    display: inline-block;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out
}

.header .menu__list a::after {
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    bottom: -2px;
    height: 1px;
    background-color: #f6c14e;
    content: "";
    width: 0;
    position: absolute;
    left: 0
}

.header .menu__list a:hover {
    color: #f6c14e
}

.header .menu__list a:hover::after {
    width: 100%
}

.header__phone {
    font-weight: 700
}

.header__modal {
    font-weight: 100
}

.header__contacts {
    gap: .25rem;
    margin-bottom: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    font-size: 18px
}

.header__contacts strong {
    font-size: 13px;
    font-weight: 700
}

.no-webp .header--dark {
    background: url(../img/hero.png) center/cover no-repeat
}

.header--dark {
    position: static
}

.header .mobile-btn {
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #f6c14e;
    border-radius: 30px;
    padding: .5rem 1rem;
    text-transform: uppercase;
    font-size: 14px;
    margin: 1.5rem 0
}

.header.header-sticky {
    background-color: rgba(15, 27, 50, .7);
    position: fixed;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    -webkit-box-shadow: 0 3px 5px 0 rgba(15, 27, 50, .3);
    box-shadow: 0 3px 5px 0 rgba(15, 27, 50, .3)
}

.mobile-contact-header {
    margin-top: auto
}

.mobile-logo {
    width: 120px;
    margin-bottom: 25px;
    display: inline-block
}

.icon-menu {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background-color: #f6c14e;
    border-radius: 50%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 48px;
    flex: 0 0 48px;
    display: none
}

.menu-open .header__menu {
    right: 0 !important
}

.footer {
    padding: 20px 0;
    background-color: #000
}

.footer__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 40px 10px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.footer__copy {
    text-align: center;
    color: #fff;
    font-size: 14px
}

.callback-modal {
    max-width: 560px !important
}

.callback-modal__title {
    text-align: center;
    margin-bottom: 10px;
    font-size: 2rem;
    line-height: 1.23
}

.callback-modal__text {
    line-height: 1.55;
    text-align: center
}

.callback-modal__text:not(:last-child) {
    margin-bottom: 1.5rem
}

.callback-modal p {
    text-align: center
}
.quiz__body form p {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
.quiz__body form p input[type="submit"]{
    margin: 0 auto;
    border-radius: 60px;
    height: 45px;
    cursor: pointer;
}
.quiz__body form p input[type="submit"]:hover{
    background-color: #8969c7;
}
.callback-modal form p{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 1.5rem
}

.callback-modal form input {
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none
}

.callback-modal form input:not([type=submit]) {
    border: 1px solid #c9c9c9;
    border-radius: 5px;
    width: 100%;
    padding: 20px
}

.callback-modal form input[type=submit] {
    padding: 20px;
    color: #fff;
    border-radius: 50px;
    cursor: pointer;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    width: 100%;
    text-transform: uppercase;
    font-weight: 700;
    text-align: center;
    background-color: #f6c14e
}

.callback-modal form input[type=submit]:hover {
    background-color: #8969c7
}

.quiz {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
    max-width: 760px !important;
    width: 100%
}

.quiz__warning {
    color: #fff;
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #f95d51;
    padding: 15px;
    text-align: center;
    display: none
}

.quiz.error .quiz__body-wrapper {
    border: 1px solid red;
    padding: 10px
}

.quiz.error .quiz__warning {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.quiz.error .error {
    color: red;
    font-size: 13px;
    display: none
}

.quiz .error {
    display: none
}

.quiz .hide-textarea {
    position: absolute;
    opacity: 0;
    z-index: -1;
    pointer-events: none
}

.quiz__title {
    text-align: center;
    margin-bottom: 11px;
    font-size: 36px;
    line-height: 1.23
}

.quiz__sub-title {
    font-weight: 300
}

.quiz__text {
    font-size: 14px;
    font-weight: 300;
    margin-bottom: 10px
}

.quiz__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem
}

.quiz__btn {
    color: #fff;
    background-color: #f6c14e;
    border-radius: 30px;
    padding: 10px 30px;
    font-size: 14px;
    height: 45px;
    width: 100%;
    max-width: 400px;
    min-width: 125px;
    z-index: 100;
    text-align: center;
    gap: 5px
}

.quiz__btn::after,
.quiz__btn::before {
    display: inline-block;
    font-size: 18px
}

.quiz__btn.next::after {
    content: "→";
    margin-left: 5px
}

.quiz__btn.prev::before {
    margin-right: 5px;
    content: "←"
}

.quiz__btn.submit {
    display: none;
    padding: 15px
}

.quiz__checkbox-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 10px
}

.quiz__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.quiz__step-block {
    display: none
}

.quiz__step-block.show {
    display: block
}

.quiz input {
    height: 60px;
    border-radius: 5px;
    border: 1px solid #c9c9c9;
    padding: 15px;
    width: 100%;
    outline: 0
}

.quiz small {
    text-align: center
}

.quiz__type-list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
    gap: 10px
}

.quiz__section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 10px
}

.quiz-checkbox {
    position: relative;
    cursor: pointer
}

.quiz-checkbox input {
    position: absolute;
    width: 0;
    height: 0;
    opacity: 0;
    z-index: -1
}

.quiz-checkbox input:checked+span {
    border-color: #9ca6eb
}

.quiz-checkbox input:checked+span::after {
    display: block
}

.quiz-checkbox span {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-transition: all .2s;
    transition: all .2s;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    height: 20px;
    width: 20px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 2px solid #c4caf3;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 10px;
    opacity: .6
}

.quiz-checkbox span::after {
    content: "";
    position: absolute;
    left: 6px;
    top: 2px;
    display: none;
    width: 5px;
    height: 10px;
    border: solid #9ca6eb;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.checkbox-type {
    position: relative;
    cursor: pointer
}

.checkbox-type input {
    position: absolute;
    z-index: -1;
    opacity: 0
}

.checkbox-type input:checked+.checkbox-type__img::after {
    scale: 1
}

.checkbox-type__img {
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 5px 0 rgba(0, 0, 0, .2);
    box-shadow: 0 1px 5px 0 rgba(0, 0, 0, .2);
    aspect-ratio: 1/1;
    position: relative
}

.checkbox-type__img img {
    border-radius: 4px;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.checkbox-type__img::after {
    width: 30px;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    scale: 0;
    height: 30px;
    border-radius: 50px;
    top: -7px;
    position: absolute;
    left: -7px;
    -webkit-box-shadow: 0 1px 8px 0 rgba(0, 0, 0, .4);
    box-shadow: 0 1px 8px 0 rgba(0, 0, 0, .4);
    content: "";
    background: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 76.887 55.552%27%3E%3Cpath fill=%27%23ffffff%27 d=%27M34.373 49.541L76.887 5.889 70.739 0 28.426 43.458 6.078 20.632 0 26.585l22.488 22.972 6.029 5.995-.091-.085.091.085 5.856-6.011z%27/%3E%3C/svg%3E") center/50% no-repeat, #9ca6eb
}

.checkbox-type__title {
    margin-top: 5px;
    margin-bottom: 5px;
    line-height: 1.1;
    font-size: 15px;
    font-weight: 300
}

.no-webp .hero {
    background: url(../img/hero.png) center/cover no-repeat
}

.hero {
    position: relative
}

.no-webp .hero::after,
.no-webp .hero::before {
    background: url(../img/lamp-decor.png) center/contain
}

.hero::after,
.hero::before {
    position: absolute;
    content: "";
    height: 200px
}

.hero::after {
    left: 0;
    width: 340px;
    rotate: 355deg;
    left: 0;
    -webkit-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1);
    top: 53px
}

.hero::before {
    left: 325px;
    top: -45px;
    width: 330px;
    height: 200px;
    rotate: 330deg
}

.hero__img {
    position: absolute;
    bottom: 0;
    right: -12%;
    pointer-events: none;
    width: 1166px;
    aspect-ratio: 1/.52
}

.hero__img img {
    scale: 1.7
}

.hero__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.hero__title {
    font-size: 38px
}

.hero__title span {
    color: #f6c14e
}

.hero__mobile-img {
    height: 33vh;
    margin: 0 -15px;
    scale: 1.2;
}

.hero__mobile-img img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    scale: 1.7
}

.hero__content {
    padding: 100px 0;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    min-height: 720px;
    gap: 40px;
    position: relative;
    z-index: 1;
    max-width: 830px
}

.hero__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px
}

.hero__quiz-btn {
    max-width: 430px
}

.hero--confirm .hero__content {
    min-height: auto;
    height: 100vh
}

.hero--confirm .hero__img {
    bottom: auto;
    top: 50%;
    translate: 0 -50%
}

.hero-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px
}

.hero-item__img {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100px;
    flex: 0 0 100px
}

.hero-item__img::after {
    position: absolute;
    content: "";
    border-radius: 50%;
    background-color: #8969c7;
    width: 70px;
    height: 70px;
    left: 0;
    top: 50%;
    translate: 0 -50%
}

.hero-item__img img {
    position: relative;
    z-index: 1;
    width: 100px;
    height: 100px
}

.advantages {
    padding: 60px 0
}

.advantages__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.5rem
}

.advantage-item {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    color: #b3b3b3;
    background-position: center center;
    border-color: transparent;
    border-style: solid
}

.advantage-item__img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 85px;
    flex: 0 0 85px
}

.no-webp .calculation {
    background: url(../img/calculation/calc-bg.jpg) center/cover no-repeat
}

.calculation {
    padding: 90px 0
}

.calculation__item {
    position: relative
}

.calculation__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 50px;
    padding: 30px 0
}

.calculation__content .btn {
    margin-top: auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.calculation__title {
    font-size: 40px;
    font-weight: 700
}

.calculation__text {
    line-height: 1.55;
    font-size: 20px
}

.calculation__sup-title {
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 3px;
    color: rgba(0, 0, 0, .2)
}

.calculation__inner {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    gap: 60px
}

.calculation__item-top {
    position: absolute;
    top: 0;
    left: 50%;
    white-space: nowrap;
    translate: -50% -50%;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    line-height: 1.55;
    font-weight: 700;
    letter-spacing: 3px;
    border-width: 1px;
    border-radius: 30px;
    background-color: #9ca6eb;
    padding: 10px
}

.calculation__frame {
    border-radius: 20px;
    background-color: #fff;
    -webkit-box-shadow: 0 20px 30px 0 rgba(74, 74, 74, .3);
    box-shadow: 0 20px 30px 0 rgba(74, 74, 74, .3);
    padding: 68px 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 50px
}

.calculation-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem
}

.calculation-item__title {
    color: #000;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 3px;
    opacity: .18
}

.calculation-item__images {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    gap: 10px
}

.calculation-item__img {
    aspect-ratio: 1/1;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 97px;
    flex: 0 0 97px;
    width: 97px;
    -webkit-box-shadow: 0 20px 30px 0 rgba(156, 166, 235, .4);
    box-shadow: 0 20px 30px 0 rgba(156, 166, 235, .4);
    position: relative;
    border-radius: 15px
}

.calculation-item__img img {
    border-radius: 15px
}

.calculation-item__img.checked::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    translate: -50% 50%;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    background: url(../img/calculation/check.svg) center/contain no-repeat;
    pointer-events: none;
    z-index: 2
}

.gallery {
    padding: 10px 15px
}

.gallery__images {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    min-height: 0
}

.gallery__images .gallery__img:nth-child(n+9) {
    display: none
}

.gallery__images.show-all .gallery__img:nth-child(n+9) {
    display: block
}

.gallery__images-hidden {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 0fr;
    grid-template-rows: 0fr;
    overflow: hidden;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.gallery__images-hidden.show {
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr
}

.gallery__img {
    aspect-ratio: 1/1;
    cursor: pointer
}

.gallery__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.gallery__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 70px 0
}

.gallery__more-hide {
    display: none
}

.gallery__more.show .gallery__more-hide {
    display: block
}

.gallery__more.show .gallery__more-show {
    display: none
}

.free-form {
    padding: 175px 0 60px;
    background-color: #f4f4f4;
    position: relative;
    overflow: hidden
}

.free-form__img {
    position: absolute;
    left: -10%;
    top: 50%;
    translate: 0 -50%;
    height: 980px
}

.free-form__img img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%
}

.free-form__inner {
    display: -ms-grid;
    display: grid;
    position: relative;
    gap: 125px 1rem
}

.no-webp .free-form__inner::after,
.no-webp .free-form__inner::before {
    background: url(../img/lamp-decor.png) center/contain no-repeat
}

.free-form__inner::after,
.free-form__inner::before {
    position: absolute;
    width: 630px;
    height: 317px;
    pointer-events: none;
    content: ""
}

.free-form__inner::after {
    top: -211px;
    right: -64%;
    rotate: 347deg
}

.free-form__inner::before {
    top: -195px;
    rotate: 10deg;
    left: 55%
}

.free-form__block {
    margin-left: auto
}

.form-block {
    position: relative;
    width: 100%;
    max-width: 460px
}

.form-block__inner {
    -webkit-box-shadow: 0 20px 30px 0 rgba(137, 105, 199, .1);
    box-shadow: 0 20px 30px 0 rgba(137, 105, 199, .1);
    padding: 60px;
    border-radius: 10px;
    background-color: #fff;
    position: relative;
    z-index: 1
}

.form-block__title {
    text-align: center;
    margin-bottom: 40px;
    font-size: 27px;
    font-weight: 300
}

.form-block__title span {
    font-weight: 700;
    color: #f6c14e
}

.form-block__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px
}

.form-block__item input:not([type=submit]) {
    padding: 15px 0;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-bottom: 1px solid #000;
    background-color: transparent;
    width: 100%;
}

.form-block__item input[type=submit] {
    margin: 40px auto 0;
    cursor: pointer;
    padding: 20px;
    max-width: 320px;
    width: 100%
}

.form-block::after {
    position: absolute;
    left: 50%;
    bottom: 0;
    height: 99px;
    content: "";
    width: 90%;
    translate: -50% 20px;
    border-radius: 10px;
    background-color: #fff;
    -webkit-box-shadow: 0 20px 30px 0 rgba(137, 105, 199, .1);
    box-shadow: 0 20px 30px 0 rgba(137, 105, 199, .1)
}

.free-item {
    padding: 30px 30px 30px 130px;
    border-radius: 10px;
    -webkit-box-shadow: 0 20px 30px 0 rgba(137, 105, 199, .2);
    box-shadow: 0 20px 30px 0 rgba(137, 105, 199, .2);
    position: relative;
    z-index: 1;
    background-color: #fff;
    color: rgba(0, 0, 0, .4);
    max-width: 490px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: auto 0 30px
}

.free-item__img {
    position: absolute;
    top: 50%;
    left: 30px;
    translate: 0 -50%;
    width: 80px;
    -webkit-animation: anim 1.7s infinite linear;
    animation: anim 1.7s infinite linear
}

@-webkit-keyframes anim {
    0% {
        -webkit-transform: rotate(0) scale(1, 1);
        transform: rotate(0) scale(1, 1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    29% {
        -webkit-transform: rotate(0) scale(1, 1);
        transform: rotate(0) scale(1, 1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    58% {
        -webkit-transform: rotate(10deg) scale(1.03, 1.03);
        transform: rotate(10deg) scale(1.03, 1.03);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    87% {
        -webkit-transform: rotate(-7deg) scale(.98, .98);
        transform: rotate(-7deg) scale(.98, .98);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    100% {
        -webkit-transform: rotate(0) scale(1, 1);
        transform: rotate(0) scale(1, 1)
    }
}

@keyframes anim {
    0% {
        -webkit-transform: rotate(0) scale(1, 1);
        transform: rotate(0) scale(1, 1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    29% {
        -webkit-transform: rotate(0) scale(1, 1);
        transform: rotate(0) scale(1, 1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    58% {
        -webkit-transform: rotate(10deg) scale(1.03, 1.03);
        transform: rotate(10deg) scale(1.03, 1.03);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    87% {
        -webkit-transform: rotate(-7deg) scale(.98, .98);
        transform: rotate(-7deg) scale(.98, .98);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }

    100% {
        -webkit-transform: rotate(0) scale(1, 1);
        transform: rotate(0) scale(1, 1)
    }
}

.clients__cards {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

.clients__card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    aspect-ratio: 1/1;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out
}

.clients__card img {
    width: 100%
}

.feedback {
    background-color: #f4f4f4
}

.feedback__list {
    display: -ms-grid;
    display: grid;
    gap: 40px
}

.feedback-item__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 40px
}

.feedback-item__block {
    position: relative;
    background-color: #fff;
    padding: 35px;
    border-radius: 10px;
    font-size: 18px;
    line-height: 1.55;
    font-weight: 300
}

.feedback-item__block::after {
    position: absolute;
    width: 0;
    height: 0;
    top: 100%;
    content: "";
    left: 35px;
    border: 12px solid;
    border-color: #fff transparent transparent #fff
}

.feedback-item__show {
    margin-top: 40px;
    font-weight: 700;
    color: #ff8562;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out
}

.feedback-item__show:hover {
    color: #8969c7
}

.feedback-item__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px
}

.feedback-item__avatar {
    border-radius: 50%;
    overflow: hidden;
    aspect-ratio: 1/1;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50px;
    flex: 0 0 50px;
    width: 50px
}

.feedback-item__title {
    font-weight: 600;
    line-height: 1.35
}

.feedback-item__location {
    color: #666;
    font-size: 14px;
    line-height: 1.55
}

.news__cards {
    display: -ms-grid;
    display: grid;
    gap: 40px
}

.news-card {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 40% 60%;
    grid-template-columns: 40% 60%;
    gap: 10px;
    background-color: #f4f4f4;
    padding: 35px;
    border-radius: 10px;
    line-height: 1.55;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out
}

.news-card__col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: .5rem
}

.news-card__img {
    aspect-ratio: 1/1;
    overflow: hidden;
    border-radius: 10px
}

.news-card__img img {
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.news-card__title {
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.1
}

.news-card:hover {
    -webkit-box-shadow: 0 10px 15px 0 rgba(137, 105, 199, .2);
    box-shadow: 0 10px 15px 0 rgba(137, 105, 199, .2)
}

.news-card:hover img {
    scale: 1.05
}

.news-card:hover .news-card__title {
    color: #8969c7
}

.news-card__text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 10;
    text-overflow: -o-ellipsis-lastline;
    overflow: hidden
}

.contact__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    gap: 40px
}

.contact__call {
    font-size: 20px;
    margin: 0 auto
}

.contact__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 40px
}

.contact__title {
    text-align: center
}

.contact__map {
    height: 420px
}

.contact__map iframe {
    height: 100%;
    width: 100%
}

.contact__text {
    text-align: center;
    color: rgba(0, 0, 0, .5);
    font-size: 18px
}

.contact__text p+p {
    margin-top: .5rem
}

.contact-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.contact-item__img {
    width: 70px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 70px;
    flex: 0 0 70px;
    aspect-ratio: 1/1
}

.article img {
    width: 100%;
    aspect-ratio: 16/9;
    margin-bottom: 1.5rem
}

.article h1 {
    margin-bottom: 1.5rem;
    font-size: 62px;
    font-weight: 700;
    text-align: center
}

.article h2 {
    font-size: 48px;
    font-weight: 700;
    margin-bottom: 1rem
}

.article h3 {
    font-weight: 600;
    font-size: 2rem;
    margin-bottom: 1rem
}

.article h4 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1rem
}

.article ol,
.article p,
.article ul {
    line-height: 1.3
}

.article ol:not(:last-child),
.article p:not(:last-child),
.article ul:not(:last-child) {
    margin-bottom: 1em
}

.article ol {
    padding-left: 20px
}

.article ul {
    padding-left: 20px
}

.article ul li {
    list-style: disc
}

:root {
    --f-spinner-width: 36px;
    --f-spinner-height: 36px;
    --f-spinner-color-1: rgba(0, 0, 0, 0.1);
    --f-spinner-color-2: rgba(17, 24, 28, 0.8);
    --f-spinner-stroke: 2.75
}

.f-spinner {
    margin: auto;
    padding: 0;
    width: var(--f-spinner-width);
    height: var(--f-spinner-height)
}

.f-spinner svg {
    width: 100%;
    height: 100%;
    vertical-align: top;
    -webkit-animation: f-spinner-rotate 2s linear infinite;
    animation: f-spinner-rotate 2s linear infinite
}

.f-spinner svg * {
    stroke-width: var(--f-spinner-stroke);
    fill: none
}

.f-spinner svg :first-child {
    stroke: var(--f-spinner-color-1)
}

.f-spinner svg :last-child {
    stroke: var(--f-spinner-color-2);
    -webkit-animation: f-spinner-dash 2s ease-in-out infinite;
    animation: f-spinner-dash 2s ease-in-out infinite
}

@-webkit-keyframes f-spinner-rotate {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes f-spinner-rotate {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@-webkit-keyframes f-spinner-dash {
    0% {
        stroke-dasharray: 1, 150;
        stroke-dashoffset: 0
    }

    50% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -35
    }

    100% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -124
    }
}

@keyframes f-spinner-dash {
    0% {
        stroke-dasharray: 1, 150;
        stroke-dashoffset: 0
    }

    50% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -35
    }

    100% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -124
    }
}

.f-throwOutUp {
    -webkit-animation: var(--f-throw-out-duration, .175s) ease-out both f-throwOutUp;
    animation: var(--f-throw-out-duration, .175s) ease-out both f-throwOutUp
}

.f-throwOutDown {
    -webkit-animation: var(--f-throw-out-duration, .175s) ease-out both f-throwOutDown;
    animation: var(--f-throw-out-duration, .175s) ease-out both f-throwOutDown
}

@-webkit-keyframes f-throwOutUp {
    to {
        -webkit-transform: translate3d(0, calc(var(--f-throw-out-distance, 150px) * -1), 0);
        transform: translate3d(0, calc(var(--f-throw-out-distance, 150px) * -1), 0);
        opacity: 0
    }
}

@keyframes f-throwOutUp {
    to {
        -webkit-transform: translate3d(0, calc(var(--f-throw-out-distance, 150px) * -1), 0);
        transform: translate3d(0, calc(var(--f-throw-out-distance, 150px) * -1), 0);
        opacity: 0
    }
}

@-webkit-keyframes f-throwOutDown {
    to {
        -webkit-transform: translate3d(0, var(--f-throw-out-distance, 150px), 0);
        transform: translate3d(0, var(--f-throw-out-distance, 150px), 0);
        opacity: 0
    }
}

@keyframes f-throwOutDown {
    to {
        -webkit-transform: translate3d(0, var(--f-throw-out-distance, 150px), 0);
        transform: translate3d(0, var(--f-throw-out-distance, 150px), 0);
        opacity: 0
    }
}

.f-zoomInUp {
    -webkit-animation: var(--f-transition-duration, .2s) ease .1s both f-zoomInUp;
    animation: var(--f-transition-duration, .2s) ease .1s both f-zoomInUp
}

.f-zoomOutDown {
    -webkit-animation: var(--f-transition-duration, .2s) ease both f-zoomOutDown;
    animation: var(--f-transition-duration, .2s) ease both f-zoomOutDown
}

@-webkit-keyframes f-zoomInUp {
    from {
        -webkit-transform: scale(.975) translate3d(0, 16px, 0);
        transform: scale(.975) translate3d(0, 16px, 0);
        opacity: 0
    }

    to {
        -webkit-transform: scale(1) translate3d(0, 0, 0);
        transform: scale(1) translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes f-zoomInUp {
    from {
        -webkit-transform: scale(.975) translate3d(0, 16px, 0);
        transform: scale(.975) translate3d(0, 16px, 0);
        opacity: 0
    }

    to {
        -webkit-transform: scale(1) translate3d(0, 0, 0);
        transform: scale(1) translate3d(0, 0, 0);
        opacity: 1
    }
}

@-webkit-keyframes f-zoomOutDown {
    to {
        -webkit-transform: scale(.975) translate3d(0, 16px, 0);
        transform: scale(.975) translate3d(0, 16px, 0);
        opacity: 0
    }
}

@keyframes f-zoomOutDown {
    to {
        -webkit-transform: scale(.975) translate3d(0, 16px, 0);
        transform: scale(.975) translate3d(0, 16px, 0);
        opacity: 0
    }
}

.f-fadeIn {
    -webkit-animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
    animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
    z-index: 2
}

.f-fadeOut {
    -webkit-animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
    animation: var(--f-transition-duration, .2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
    z-index: 1
}

@-webkit-keyframes f-fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes f-fadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes f-fadeOut {
    100% {
        opacity: 0
    }
}

@keyframes f-fadeOut {
    100% {
        opacity: 0
    }
}

.f-fadeFastIn {
    -webkit-animation: var(--f-transition-duration, .2s) ease-out both f-fadeFastIn;
    animation: var(--f-transition-duration, .2s) ease-out both f-fadeFastIn;
    z-index: 2
}

.f-fadeFastOut {
    -webkit-animation: var(--f-transition-duration, .1s) ease-out both f-fadeFastOut;
    animation: var(--f-transition-duration, .1s) ease-out both f-fadeFastOut;
    z-index: 2
}

@-webkit-keyframes f-fadeFastIn {
    0% {
        opacity: .75
    }

    100% {
        opacity: 1
    }
}

@keyframes f-fadeFastIn {
    0% {
        opacity: .75
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes f-fadeFastOut {
    100% {
        opacity: 0
    }
}

@keyframes f-fadeFastOut {
    100% {
        opacity: 0
    }
}

.f-fadeSlowIn {
    -webkit-animation: var(--f-transition-duration, .5s) ease both f-fadeSlowIn;
    animation: var(--f-transition-duration, .5s) ease both f-fadeSlowIn;
    z-index: 2
}

.f-fadeSlowOut {
    -webkit-animation: var(--f-transition-duration, .5s) ease both f-fadeSlowOut;
    animation: var(--f-transition-duration, .5s) ease both f-fadeSlowOut;
    z-index: 1
}

@-webkit-keyframes f-fadeSlowIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes f-fadeSlowIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes f-fadeSlowOut {
    100% {
        opacity: 0
    }
}

@keyframes f-fadeSlowOut {
    100% {
        opacity: 0
    }
}

.f-crossfadeIn {
    -webkit-animation: var(--f-transition-duration, .2s) ease-out both f-crossfadeIn;
    animation: var(--f-transition-duration, .2s) ease-out both f-crossfadeIn;
    z-index: 2
}

.f-crossfadeOut {
    -webkit-animation: calc(var(--f-transition-duration, .2s) * .5) linear .1s both f-crossfadeOut;
    animation: calc(var(--f-transition-duration, .2s) * .5) linear .1s both f-crossfadeOut;
    z-index: 1
}

@-webkit-keyframes f-crossfadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes f-crossfadeIn {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes f-crossfadeOut {
    100% {
        opacity: 0
    }
}

@keyframes f-crossfadeOut {
    100% {
        opacity: 0
    }
}

.f-slideIn.from-next {
    -webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNext;
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInNext
}

.f-slideIn.from-prev {
    -webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrev;
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideInPrev
}

.f-slideOut.to-next {
    -webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNext;
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutNext
}

.f-slideOut.to-prev {
    -webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrev;
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-slideOutPrev
}

@-webkit-keyframes f-slideInPrev {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes f-slideInPrev {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@-webkit-keyframes f-slideInNext {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes f-slideInNext {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@-webkit-keyframes f-slideOutNext {
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
}

@keyframes f-slideOutNext {
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
}

@-webkit-keyframes f-slideOutPrev {
    100% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
}

@keyframes f-slideOutPrev {
    100% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%)
    }
}

.f-classicIn.from-next {
    -webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-classicInNext;
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-classicInNext;
    z-index: 2
}

.f-classicIn.from-prev {
    -webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-classicInPrev;
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-classicInPrev;
    z-index: 2
}

.f-classicOut.to-next {
    -webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-classicOutNext;
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-classicOutNext;
    z-index: 1
}

.f-classicOut.to-prev {
    -webkit-animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-classicOutPrev;
    animation: var(--f-transition-duration, .85s) cubic-bezier(.16, 1, .3, 1) f-classicOutPrev;
    z-index: 1
}

@-webkit-keyframes f-classicInNext {
    0% {
        -webkit-transform: translateX(-75px);
        transform: translateX(-75px);
        opacity: 0
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes f-classicInNext {
    0% {
        -webkit-transform: translateX(-75px);
        transform: translateX(-75px);
        opacity: 0
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@-webkit-keyframes f-classicInPrev {
    0% {
        -webkit-transform: translateX(75px);
        transform: translateX(75px);
        opacity: 0
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes f-classicInPrev {
    0% {
        -webkit-transform: translateX(75px);
        transform: translateX(75px);
        opacity: 0
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@-webkit-keyframes f-classicOutNext {
    100% {
        -webkit-transform: translateX(-75px);
        transform: translateX(-75px);
        opacity: 0
    }
}

@keyframes f-classicOutNext {
    100% {
        -webkit-transform: translateX(-75px);
        transform: translateX(-75px);
        opacity: 0
    }
}

@-webkit-keyframes f-classicOutPrev {
    100% {
        -webkit-transform: translateX(75px);
        transform: translateX(75px);
        opacity: 0
    }
}

@keyframes f-classicOutPrev {
    100% {
        -webkit-transform: translateX(75px);
        transform: translateX(75px);
        opacity: 0
    }
}

:root {
    --f-button-width: 40px;
    --f-button-height: 40px;
    --f-button-border: 0;
    --f-button-border-radius: 0;
    --f-button-color: #374151;
    --f-button-bg: #f8f8f8;
    --f-button-hover-bg: #e0e0e0;
    --f-button-active-bg: #d0d0d0;
    --f-button-shadow: none;
    --f-button-transition: all 0.15s ease;
    --f-button-transform: none;
    --f-button-svg-width: 20px;
    --f-button-svg-height: 20px;
    --f-button-svg-stroke-width: 1.5;
    --f-button-svg-fill: none;
    --f-button-svg-filter: none;
    --f-button-svg-disabled-opacity: 0.65
}

.f-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    position: relative;
    margin: 0;
    padding: 0;
    width: var(--f-button-width);
    height: var(--f-button-height);
    border: var(--f-button-border);
    border-radius: var(--f-button-border-radius);
    color: var(--f-button-color);
    background: var(--f-button-bg);
    -webkit-box-shadow: var(--f-button-shadow);
    box-shadow: var(--f-button-shadow);
    pointer-events: all;
    cursor: pointer;
    -webkit-transition: var(--f-button-transition);
    transition: var(--f-button-transition)
}

.f-button:active:not([disabled]) {
    background-color: var(--f-button-active-bg)
}

.f-button:focus:not(:focus-visible) {
    outline: 0
}

.f-button:focus-visible {
    outline: 0;
    -webkit-box-shadow: inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color));
    box-shadow: inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color))
}

.f-button svg {
    width: var(--f-button-svg-width);
    height: var(--f-button-svg-height);
    fill: var(--f-button-svg-fill);
    stroke: currentColor;
    stroke-width: var(--f-button-svg-stroke-width);
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: opacity .15s ease;
    transition: opacity .15s ease;
    -webkit-transform: var(--f-button-transform);
    -ms-transform: var(--f-button-transform);
    transform: var(--f-button-transform);
    -webkit-filter: var(--f-button-svg-filter);
    filter: var(--f-button-svg-filter);
    pointer-events: none
}

.f-button[disabled] {
    cursor: default
}

.f-button[disabled] svg {
    opacity: var(--f-button-svg-disabled-opacity)
}

.f-carousel__nav .f-button.is-next,
.f-carousel__nav .f-button.is-prev,
.fancybox__nav .f-button.is-next,
.fancybox__nav .f-button.is-prev {
    position: absolute;
    z-index: 1
}

.is-horizontal .f-carousel__nav .f-button.is-next,
.is-horizontal .f-carousel__nav .f-button.is-prev,
.is-horizontal .fancybox__nav .f-button.is-next,
.is-horizontal .fancybox__nav .f-button.is-prev {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.is-horizontal .f-carousel__nav .f-button.is-prev,
.is-horizontal .fancybox__nav .f-button.is-prev {
    left: var(--f-button-prev-pos)
}

.is-horizontal .f-carousel__nav .f-button.is-next,
.is-horizontal .fancybox__nav .f-button.is-next {
    right: var(--f-button-next-pos)
}

.is-horizontal.is-rtl .f-carousel__nav .f-button.is-prev,
.is-horizontal.is-rtl .fancybox__nav .f-button.is-prev {
    left: auto;
    right: var(--f-button-next-pos)
}

.is-horizontal.is-rtl .f-carousel__nav .f-button.is-next,
.is-horizontal.is-rtl .fancybox__nav .f-button.is-next {
    right: auto;
    left: var(--f-button-prev-pos)
}

.is-vertical .f-carousel__nav .f-button.is-next,
.is-vertical .f-carousel__nav .f-button.is-prev,
.is-vertical .fancybox__nav .f-button.is-next,
.is-vertical .fancybox__nav .f-button.is-prev {
    top: auto;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.is-vertical .f-carousel__nav .f-button.is-prev,
.is-vertical .fancybox__nav .f-button.is-prev {
    top: var(--f-button-next-pos)
}

.is-vertical .f-carousel__nav .f-button.is-next,
.is-vertical .fancybox__nav .f-button.is-next {
    bottom: var(--f-button-next-pos)
}

.is-vertical .f-carousel__nav .f-button.is-next svg,
.is-vertical .f-carousel__nav .f-button.is-prev svg,
.is-vertical .fancybox__nav .f-button.is-next svg,
.is-vertical .fancybox__nav .f-button.is-prev svg {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.f-carousel__nav .f-button:disabled,
.fancybox__nav .f-button:disabled {
    pointer-events: none
}

html.with-fancybox {
    width: auto;
    overflow: visible;
    scroll-behavior: auto
}

html.with-fancybox body {
    -ms-touch-action: none;
    touch-action: none
}

html.with-fancybox body.hide-scrollbar {
    width: auto;
    margin-right: calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));
    overflow: hidden !important;
    overscroll-behavior-y: none
}

.fancybox__container {
    --fancybox-color: #dbdbdb;
    --fancybox-hover-color: #fff;
    --fancybox-bg: rgba(24, 24, 27, 0.98);
    --fancybox-slide-gap: 10px;
    --f-spinner-width: 50px;
    --f-spinner-height: 50px;
    --f-spinner-color-1: rgba(255, 255, 255, 0.1);
    --f-spinner-color-2: #bbb;
    --f-spinner-stroke: 3.65;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    direction: ltr;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    color: #f8f8f8;
    -webkit-tap-highlight-color: transparent;
    overflow: visible;
    z-index: var(--fancybox-zIndex, 1050);
    outline: 0;
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    overscroll-behavior-y: contain
}

.fancybox__container *,
.fancybox__container ::after,
.fancybox__container ::before {
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

.fancybox__container::-ms-backdrop {
    background-color: rgba(0, 0, 0, 0)
}

.fancybox__container::backdrop {
    background-color: rgba(0, 0, 0, 0)
}

.fancybox__backdrop {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: -1;
    background: var(--fancybox-bg);
    opacity: var(--fancybox-opacity, 1);
    will-change: opacity
}

.fancybox__carousel {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-height: 0;
    z-index: 10;
    overflow-y: visible;
    overflow-x: clip
}

.fancybox__viewport {
    width: 100%;
    height: 100%
}

.fancybox__viewport.is-draggable {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab
}

.fancybox__viewport.is-dragging {
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: grabbing
}

.fancybox__track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    height: 100%
}

.fancybox__slide {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 100%;
    margin: 0 var(--fancybox-slide-gap) 0 0;
    padding: 4px;
    overflow: auto;
    -ms-scroll-chaining: none;
    overscroll-behavior: contain;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn {
    padding-top: 40px
}

.fancybox__slide.has-html5video,
.fancybox__slide.has-iframe,
.fancybox__slide.has-video {
    overflow: hidden
}

.fancybox__slide.has-image {
    overflow: hidden
}

.fancybox__slide.has-image.is-animating,
.fancybox__slide.has-image.is-selected {
    overflow: visible
}

.fancybox__slide::after,
.fancybox__slide::before {
    content: "";
    -webkit-box-flex: 0;
    -ms-flex: 0 0 0px;
    flex: 0 0 0;
    margin: auto
}

.fancybox__backdrop:empty,
.fancybox__slide:empty,
.fancybox__track:empty,
.fancybox__viewport:empty {
    display: block
}

.fancybox__content {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    margin: 0;
    padding: 2rem;
    max-width: 100%;
    color: var(--fancybox-content-color, #374151);
    background: var(--fancybox-content-bg, #fff);
    cursor: default;
    border-radius: 0;
    z-index: 20
}

.is-loading .fancybox__content {
    opacity: 0
}

.is-draggable .fancybox__content {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab
}

.can-zoom_in .fancybox__content {
    cursor: -webkit-zoom-in;
    cursor: zoom-in
}

.can-zoom_out .fancybox__content {
    cursor: -webkit-zoom-out;
    cursor: zoom-out
}

.is-dragging .fancybox__content {
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: grabbing
}

.fancybox__content [contenteditable],
.fancybox__content [data-selectable] {
    cursor: auto
}

.fancybox__slide.has-image>.fancybox__content {
    padding: 0;
    background: rgba(0, 0, 0, 0);
    min-height: 1px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    -webkit-transition: none;
    transition: none;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.fancybox__slide.has-image>.fancybox__content>picture>img {
    width: 100%;
    height: auto;
    max-height: 100%
}

.is-animating .fancybox__content,
.is-dragging .fancybox__content {
    will-change: transform, width, height
}

.fancybox-image {
    margin: auto;
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-filter: blur(0);
    filter: blur(0)
}

.fancybox__caption {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
    max-width: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin: 0;
    padding: 14px 0 4px 0;
    overflow-wrap: anywhere;
    line-height: 1.375;
    color: var(--fancybox-color, currentColor);
    opacity: var(--fancybox-opacity, 1);
    cursor: auto;
    visibility: visible
}

.is-closing .fancybox__caption,
.is-loading .fancybox__caption {
    opacity: 0;
    visibility: hidden
}

.is-compact .fancybox__caption {
    padding-bottom: 0
}

.f-button.is-close-btn {
    --f-button-svg-stroke-width: 2;
    position: absolute;
    top: 0;
    right: 8px;
    z-index: 40
}

.fancybox__content>.f-button.is-close-btn {
    --f-button-width: 34px;
    --f-button-height: 34px;
    --f-button-border-radius: 4px;
    --f-button-color: var(--fancybox-color, #fff);
    --f-button-hover-color: var(--fancybox-color, #fff);
    --f-button-bg: transparent;
    --f-button-hover-bg: transparent;
    --f-button-active-bg: transparent;
    --f-button-svg-width: 22px;
    --f-button-svg-height: 22px;
    position: absolute;
    top: -38px;
    right: 0;
    opacity: .75
}

.is-loading .fancybox__content>.f-button.is-close-btn {
    visibility: hidden
}

.is-zooming-out .fancybox__content>.f-button.is-close-btn {
    visibility: hidden
}

.fancybox__content>.f-button.is-close-btn:hover {
    opacity: 1
}

.fancybox__footer {
    padding: 0;
    margin: 0;
    position: relative
}

.fancybox__footer .fancybox__caption {
    width: 100%;
    padding: 24px;
    opacity: var(--fancybox-opacity, 1);
    -webkit-transition: all .25s ease;
    transition: all .25s ease
}

.is-compact .fancybox__footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 20;
    background: rgba(24, 24, 27, .5)
}

.is-compact .fancybox__footer .fancybox__caption {
    padding: 12px
}

.is-compact .fancybox__content>.f-button.is-close-btn {
    --f-button-border-radius: 50%;
    --f-button-color: #fff;
    --f-button-hover-color: #fff;
    --f-button-outline-color: #000;
    --f-button-bg: rgba(0, 0, 0, 0.6);
    --f-button-active-bg: rgba(0, 0, 0, 0.6);
    --f-button-hover-bg: rgba(0, 0, 0, 0.6);
    --f-button-svg-width: 18px;
    --f-button-svg-height: 18px;
    --f-button-svg-filter: none;
    top: 5px;
    right: 5px
}

.fancybox__nav {
    --f-button-width: 50px;
    --f-button-height: 50px;
    --f-button-border: 0;
    --f-button-border-radius: 50%;
    --f-button-color: var(--fancybox-color);
    --f-button-hover-color: var(--fancybox-hover-color);
    --f-button-bg: transparent;
    --f-button-hover-bg: rgba(24, 24, 27, 0.3);
    --f-button-active-bg: rgba(24, 24, 27, 0.5);
    --f-button-shadow: none;
    --f-button-transition: all 0.15s ease;
    --f-button-transform: none;
    --f-button-svg-width: 26px;
    --f-button-svg-height: 26px;
    --f-button-svg-stroke-width: 2.5;
    --f-button-svg-fill: none;
    --f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.5));
    --f-button-svg-disabled-opacity: 0.65;
    --f-button-next-pos: 1rem;
    --f-button-prev-pos: 1rem;
    opacity: var(--fancybox-opacity, 1)
}

.fancybox__nav .f-button:before {
    position: absolute;
    content: "";
    top: -30px;
    right: -20px;
    left: -20px;
    bottom: -30px;
    z-index: 1
}

.is-idle .fancybox__nav {
    -webkit-animation: .15s ease-out both f-fadeOut;
    animation: .15s ease-out both f-fadeOut
}

.is-idle.is-compact .fancybox__footer {
    pointer-events: none;
    -webkit-animation: .15s ease-out both f-fadeOut;
    animation: .15s ease-out both f-fadeOut
}

.fancybox__slide>.f-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: var(--f-spinner-top, calc(var(--f-spinner-width) * -.5)) 0 0 var(--f-spinner-left, calc(var(--f-spinner-height) * -.5));
    z-index: 30;
    cursor: pointer
}

.fancybox-protected {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.fancybox-ghost {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    -o-object-fit: contain;
    object-fit: contain;
    z-index: 40;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none
}

.fancybox-focus-guard {
    outline: 0;
    opacity: 0;
    position: fixed;
    pointer-events: none
}

.fancybox__container:not([aria-hidden]) {
    opacity: 0
}

.fancybox__container.is-animated[aria-hidden=false] .fancybox__carousel>:not(.fancybox__viewport),
.fancybox__container.is-animated[aria-hidden=false] .fancybox__slide>:not(.fancybox__content),
.fancybox__container.is-animated[aria-hidden=false]>:not(.fancybox__backdrop, .fancybox__carousel) {
    -webkit-animation: var(--f-interface-enter-duration, .25s) ease .1s backwards f-fadeIn;
    animation: var(--f-interface-enter-duration, .25s) ease .1s backwards f-fadeIn
}

.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop {
    -webkit-animation: var(--f-backdrop-enter-duration, .35s) ease backwards f-fadeIn;
    animation: var(--f-backdrop-enter-duration, .35s) ease backwards f-fadeIn
}

.fancybox__container.is-animated[aria-hidden=true] .fancybox__carousel>:not(.fancybox__viewport),
.fancybox__container.is-animated[aria-hidden=true] .fancybox__slide>:not(.fancybox__content),
.fancybox__container.is-animated[aria-hidden=true]>:not(.fancybox__backdrop, .fancybox__carousel) {
    -webkit-animation: var(--f-interface-exit-duration, .15s) ease forwards f-fadeOut;
    animation: var(--f-interface-exit-duration, .15s) ease forwards f-fadeOut
}

.fancybox__container.is-animated[aria-hidden=true] .fancybox__backdrop {
    -webkit-animation: var(--f-backdrop-exit-duration, .35s) ease forwards f-fadeOut;
    animation: var(--f-backdrop-exit-duration, .35s) ease forwards f-fadeOut
}

.has-html5video .fancybox__content,
.has-iframe .fancybox__content,
.has-map .fancybox__content,
.has-pdf .fancybox__content,
.has-vimeo .fancybox__content,
.has-youtube .fancybox__content {
    max-width: 100%;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    min-height: 1px;
    overflow: visible
}

.has-iframe .fancybox__content,
.has-map .fancybox__content,
.has-pdf .fancybox__content {
    width: calc(100% - 120px);
    height: 90%
}

.fancybox__container.is-compact .has-iframe .fancybox__content,
.fancybox__container.is-compact .has-map .fancybox__content,
.fancybox__container.is-compact .has-pdf .fancybox__content {
    width: 100%;
    height: 100%
}

.has-html5video .fancybox__content,
.has-vimeo .fancybox__content,
.has-youtube .fancybox__content {
    width: 960px;
    height: 540px;
    max-width: 100%;
    max-height: 100%
}

.has-html5video .fancybox__content,
.has-map .fancybox__content,
.has-pdf .fancybox__content,
.has-vimeo .fancybox__content,
.has-youtube .fancybox__content {
    padding: 0;
    background: rgba(24, 24, 27, .9);
    color: #fff
}

.has-map .fancybox__content {
    background: #e5e3df
}

.fancybox__html5video,
.fancybox__iframe {
    border: 0;
    display: block;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0)
}

.fancybox-placeholder {
    border: 0 !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
    white-space: nowrap !important
}

.f-carousel__thumbs {
    --f-thumb-width: 96px;
    --f-thumb-height: 72px;
    --f-thumb-outline: 0;
    --f-thumb-outline-color: #5eb0ef;
    --f-thumb-opacity: 1;
    --f-thumb-hover-opacity: 1;
    --f-thumb-selected-opacity: 1;
    --f-thumb-border-radius: 2px;
    --f-thumb-offset: 0px;
    --f-button-next-pos: 0;
    --f-button-prev-pos: 0
}

.f-carousel__thumbs.is-classic {
    --f-thumb-gap: 8px;
    --f-thumb-opacity: 0.5;
    --f-thumb-hover-opacity: 1;
    --f-thumb-selected-opacity: 1
}

.f-carousel__thumbs.is-modern {
    --f-thumb-gap: 4px;
    --f-thumb-extra-gap: 16px;
    --f-thumb-clip-width: 46px
}

.f-thumbs {
    position: relative;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin: 0;
    overflow: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.f-thumbs .f-spinner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 2px;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#ebeff2), to(#e2e8f0));
    background-image: linear-gradient(#ebeff2, #e2e8f0);
    z-index: -1
}

.f-thumbs .f-spinner svg {
    display: none
}

.f-thumbs.is-vertical {
    height: 100%
}

.f-thumbs__viewport {
    width: 100%;
    height: auto;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.f-thumbs__track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.f-thumbs__slide {
    position: relative;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    width: var(--f-thumb-width);
    height: var(--f-thumb-height);
    overflow: visible;
    cursor: pointer
}

.f-thumbs__slide.is-loading img {
    opacity: 0
}

.is-classic .f-thumbs__viewport {
    height: 100%
}

.is-modern .f-thumbs__track {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.is-modern .f-thumbs__track::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc((var(--f-thumb-clip-width, 0)) * -.5);
    width: calc(var(--width, 0) * 1px + var(--f-thumb-clip-width, 0));
    cursor: pointer
}

.is-modern .f-thumbs__slide {
    width: var(--f-thumb-clip-width);
    -webkit-transform: translate3d(calc(var(--shift, 0) * -1px), 0, 0);
    transform: translate3d(calc(var(--shift, 0) * -1px), 0, 0);
    -webkit-transition: none;
    transition: none;
    pointer-events: none
}

.is-modern.is-resting .f-thumbs__slide {
    -webkit-transition: -webkit-transform .33s ease;
    transition: -webkit-transform .33s ease;
    transition: transform .33s ease;
    transition: transform .33s ease, -webkit-transform .33s ease
}

.is-modern.is-resting .f-thumbs__slide__button {
    -webkit-transition: clip-path .33s ease;
    transition: clip-path .33s ease
}

.is-using-tab .is-modern .f-thumbs__slide:focus-within {
    -webkit-filter: drop-shadow(-1px 0 0 var(--f-thumb-outline-color)) drop-shadow(2px 0 0 var(--f-thumb-outline-color)) drop-shadow(0 -1px 0 var(--f-thumb-outline-color)) drop-shadow(0 2px 0 var(--f-thumb-outline-color));
    filter: drop-shadow(-1px 0 0 var(--f-thumb-outline-color)) drop-shadow(2px 0 0 var(--f-thumb-outline-color)) drop-shadow(0 -1px 0 var(--f-thumb-outline-color)) drop-shadow(0 2px 0 var(--f-thumb-outline-color))
}

.f-thumbs__slide__button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: var(--f-thumb-width);
    height: 100%;
    margin: 0 -100% 0 -100%;
    padding: 0;
    border: 0;
    position: relative;
    border-radius: var(--f-thumb-border-radius);
    overflow: hidden;
    background: rgba(0, 0, 0, 0);
    outline: 0;
    cursor: pointer;
    pointer-events: auto;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    opacity: var(--f-thumb-opacity);
    -webkit-transition: opacity .2s ease;
    transition: opacity .2s ease
}

.f-thumbs__slide__button:hover {
    opacity: var(--f-thumb-hover-opacity)
}

.f-thumbs__slide__button:focus:not(:focus-visible) {
    outline: 0
}

.f-thumbs__slide__button:focus-visible {
    outline: 0;
    opacity: var(--f-thumb-selected-opacity)
}

.is-modern .f-thumbs__slide__button {
    --clip-path: inset(0 calc(((var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0))) * (1 - var(--progress, 0)) * 0.5) round var(--f-thumb-border-radius, 0));
    clip-path: var(--clip-path)
}

.is-classic .is-nav-selected .f-thumbs__slide__button {
    opacity: var(--f-thumb-selected-opacity)
}

.is-classic .is-nav-selected .f-thumbs__slide__button::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: auto;
    bottom: 0;
    border: var(--f-thumb-outline, 0) solid var(--f-thumb-outline-color, transparent);
    border-radius: var(--f-thumb-border-radius);
    -webkit-animation: f-fadeIn .2s ease-out;
    animation: f-fadeIn .2s ease-out;
    z-index: 10
}

.f-thumbs__slide__img {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: var(--f-thumb-offset);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    pointer-events: none;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: var(--f-thumb-border-radius)
}

.f-thumbs.is-horizontal .f-thumbs__track {
    padding: 8px 0 12px 0
}

.f-thumbs.is-horizontal .f-thumbs__slide {
    margin: 0 var(--f-thumb-gap) 0 0
}

.f-thumbs.is-vertical .f-thumbs__track {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0 8px
}

.f-thumbs.is-vertical .f-thumbs__slide {
    margin: 0 0 var(--f-thumb-gap) 0
}

.fancybox__thumbs {
    --f-thumb-width: 96px;
    --f-thumb-height: 72px;
    --f-thumb-border-radius: 2px;
    --f-thumb-outline: 2px;
    --f-thumb-outline-color: #ededed;
    position: relative;
    opacity: var(--fancybox-opacity, 1);
    -webkit-transition: max-height .35s cubic-bezier(.23, 1, .32, 1);
    transition: max-height .35s cubic-bezier(.23, 1, .32, 1)
}

.fancybox__thumbs.is-classic {
    --f-thumb-gap: 8px;
    --f-thumb-opacity: 0.5;
    --f-thumb-hover-opacity: 1
}

.fancybox__thumbs.is-classic .f-spinner {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, .1)), to(rgba(255, 255, 255, .05)));
    background-image: linear-gradient(rgba(255, 255, 255, .1), rgba(255, 255, 255, .05))
}

.fancybox__thumbs.is-modern {
    --f-thumb-gap: 4px;
    --f-thumb-extra-gap: 16px;
    --f-thumb-clip-width: 46px;
    --f-thumb-opacity: 1;
    --f-thumb-hover-opacity: 1
}

.fancybox__thumbs.is-modern .f-spinner {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, .1)), to(rgba(255, 255, 255, .05)));
    background-image: linear-gradient(rgba(255, 255, 255, .1), rgba(255, 255, 255, .05))
}

.fancybox__thumbs.is-horizontal {
    padding: 0 var(--f-thumb-gap)
}

.fancybox__thumbs.is-vertical {
    padding: var(--f-thumb-gap) 0
}

.is-compact .fancybox__thumbs {
    --f-thumb-width: 64px;
    --f-thumb-clip-width: 32px;
    --f-thumb-height: 48px;
    --f-thumb-extra-gap: 10px
}

.fancybox__thumbs.is-masked {
    max-height: 0 !important
}

.is-closing .fancybox__thumbs {
    -webkit-transition: none !important;
    transition: none !important
}

.fancybox__toolbar {
    --f-progress-color: var(--fancybox-color, rgba(255, 255, 255, 0.94));
    --f-button-width: 46px;
    --f-button-height: 46px;
    --f-button-color: var(--fancybox-color);
    --f-button-hover-color: var(--fancybox-hover-color);
    --f-button-bg: rgba(24, 24, 27, 0.65);
    --f-button-hover-bg: rgba(70, 70, 73, 0.65);
    --f-button-active-bg: rgba(90, 90, 93, 0.65);
    --f-button-border-radius: 0;
    --f-button-svg-width: 24px;
    --f-button-svg-height: 24px;
    --f-button-svg-stroke-width: 1.5;
    --f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.15));
    --f-button-svg-fill: none;
    --f-button-svg-disabled-opacity: 0.65;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;
    color: var(--fancybox-color, currentColor);
    opacity: var(--fancybox-opacity, 1);
    text-shadow: var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, .5));
    pointer-events: none;
    z-index: 20
}

.fancybox__toolbar :focus-visible {
    z-index: 1
}

.fancybox__toolbar.is-absolute,
.is-compact .fancybox__toolbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0
}

.is-idle .fancybox__toolbar {
    pointer-events: none;
    -webkit-animation: .15s ease-out both f-fadeOut;
    animation: .15s ease-out both f-fadeOut
}

.fancybox__toolbar__column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-line-pack: start;
    align-content: flex-start
}

.fancybox__toolbar__column.is-left,
.fancybox__toolbar__column.is-right {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0
}

.fancybox__toolbar__column.is-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.fancybox__infobar {
    padding: 0 5px;
    line-height: var(--f-button-height);
    text-align: center;
    font-size: 17px;
    font-variant-numeric: tabular-nums;
    -webkit-font-smoothing: subpixel-antialiased;
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.fancybox__infobar span {
    padding: 0 5px
}

.fancybox__infobar:not(:first-child):not(:last-child) {
    background: var(--f-button-bg)
}

[data-fancybox-toggle-slideshow] {
    position: relative
}

[data-fancybox-toggle-slideshow] .f-progress {
    height: 100%;
    opacity: .3
}

[data-fancybox-toggle-slideshow] svg g:first-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

[data-fancybox-toggle-slideshow] svg g:last-child {
    display: none
}

.has-slideshow [data-fancybox-toggle-slideshow] svg g:first-child {
    display: none
}

.has-slideshow [data-fancybox-toggle-slideshow] svg g:last-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

[data-fancybox-toggle-fullscreen] svg g:first-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

[data-fancybox-toggle-fullscreen] svg g:last-child {
    display: none
}

:-webkit-full-screen [data-fancybox-toggle-fullscreen] svg g:first-child {
    display: none
}

:-ms-fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child {
    display: none
}

:fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child {
    display: none
}

:-webkit-full-screen [data-fancybox-toggle-fullscreen] svg g:last-child {
    display: -webkit-box;
    display: flex
}

:-ms-fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child {
    display: -ms-flexbox;
    display: flex
}

:fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.f-progress {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0;
    -ms-transform-origin: 0;
    transform-origin: 0;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear;
    background: var(--f-progress-color, var(--f-carousel-theme-color, #0091ff));
    z-index: 30;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none
}

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

    .header__phone {
        font-size: 22px
    }

    .mobile-contact-header {
        display: none !important
    }

    .quiz__warning {
        font-size: 20px
    }

    .quiz__sub-title {
        font-size: 20px
    }

    .calculation__sup-title {
        font-size: 20px
    }

    .calculation__item-top {
        height: 50px;
        padding: 20px;
        font-size: 18px
    }

    .feedback__list {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr)
    }

    .news__cards {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (min-width:992px) {
    .advantage-item {
        max-width: 250px
    }

    .free-form__inner {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (min-width:1200px) {
    .hero__content {
        width: calc(50% + 20px)
    }

    .hero__items {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}

@media (max-width:1199.98px) {
    .hero__img {
        right: -300px
    }

    .hero__items {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        width: 40%
    }

    .calculation__inner {
        gap: 30px
    }

    .calculation-item__img {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 70px;
        flex: 0 0 70px;
        width: 70px
    }

    .calculation-item__img.checked::after {
        width: 30px;
        height: 30px
    }

    .feedback__list {
        gap: 20px
    }

    .news__cards {
        gap: 20px
    }

    .contact__list {
        gap: 20px
    }
}

@media (max-width:1023px) {
    .advantages__list {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width:991.98px) {
    .hero__inner {
        padding-bottom: 300px
    }

    .hero__img {
        width: 788px;
        right: auto;
        left: 50%;
        translate: -50% 0;
        height: 400px
    }

    .calculation__inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

@media (max-width:767.98px) {
    .logo {
        width: 140px
    }

    .widget {
        padding: 2px;
        right: 5px;
        display: none
    }

    .widget ul {
        gap: 5px
    }

    .widget ul li {
        width: 30px
    }

    .btn {
        padding: 20px 40px;
        font-size: 14px
    }

    .btn--lg {
        min-height: 55px;
        font-size: 14px
    }

    .btn--decor {
        padding-left: 50px
    }

    .btn--decor::after {
        -webkit-animation: linear infinite garland-2 4s;
        animation: linear infinite garland-2 4s
    }

    .btn--decor::before {
        width: 70px
    }

    .desktop {
        display: none
    }

    .clients__title,
    .contact__title,
    .feedback__title,
    .news__title,
    .section-title,
    .title {
        font-size: 48px
    }

    .article,
    .clients,
    .section-margin {
        margin: 60px 0
    }

    .contact,
    .feedback,
    .news,
    .section-padding {
        padding: 60px 0
    }

    .clients__title,
    .feedback__title,
    .news__title,
    .section-title {
        margin-bottom: 60px
    }

    .header__menu {
        position: fixed;
        right: -120%;
        top: 0;
        width: 100%;
        height: 100vh;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-transition: .2s ease-in-out;
        transition: .2s ease-in-out;
        z-index: 5
    }

    .header__menu::after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: "";
        background-color: rgba(0, 0, 0, .7)
    }

    .header .menu__body {
        height: 100%;
        width: 90%;
        position: relative;
        z-index: 2;
        background-color: #000;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 25px
    }

    .header .menu__list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        font-size: 1.5rem
    }

    .header__modal {
        font-size: 11px;
        display: none
    }

    .icon-menu {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .icon-menu-wrap {
        position: relative;
        width: 1.375rem;
        height: .875rem;
        z-index: 5
    }

    .icon-menu-wrap span,
    .icon-menu-wrap::after,
    .icon-menu-wrap::before {
        content: "";
        -webkit-transition: all .3s ease 0s;
        transition: all .3s ease 0s;
        right: 0;
        position: absolute;
        width: 100%;
        height: .125rem;
        background-color: #fff
    }

    .icon-menu-wrap::before {
        top: 0
    }

    .icon-menu-wrap::after {
        bottom: 0
    }

    .icon-menu-wrap span {
        top: calc(50% - .0625rem)
    }

    .menu-open .icon-menu-wrap span {
        width: 0
    }

    .menu-open .icon-menu-wrap::before {
        top: calc(50% - .0625rem);
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .menu-open .icon-menu-wrap::after {
        bottom: calc(50% - .0625rem);
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .footer__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }

    .quiz {
        gap: 1rem;
        padding: 30px 20px !important
    }

    .quiz__title {
        font-size: 28px
    }

    .quiz__text {
        font-size: 12px
    }

    .quiz__steps {
        display: none
    }

    .quiz input {
        height: 50px
    }

    .quiz__type-list {
        -ms-grid-columns: (1fr)[3];
        grid-template-columns: repeat(3, 1fr)
    }

    .checkbox-type__title {
        font-size: 12px
    }

    .hero::after,
    .hero::before {
        opacity: .3
    }

    .hero__inner {
        padding-bottom: 0
    }

    .hero__img {
        width: 150%;
        height: 340px
    }

    .hero__title {
        font-size: 25px;
        text-align: center
    }

    .hero__content {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 20px
    }

    .hero__items {
        width: 100%
    }

    .hero__text {
        text-align: center;
        max-width: 300px;
        margin: 0 auto
    }

    .hero__text br {
        display: none
    }

    .hero--confirm .hero__items,
    .hero--confirm .hero__text {
        display: none
    }

    .advantages {
        padding: 20px 0 30px
    }

    .advantages__list {
        -ms-grid-columns: auto;
        grid-template-columns: auto
    }

    .advantage-item__img {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 60px;
        flex: 0 0 60px
    }

    .calculation {
        padding: 30px 0
    }

    .calculation__content {
        gap: 30px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center
    }

    .calculation__content .btn {
        width: 100%
    }

    .calculation__title {
        font-size: 25px
    }

    .calculation__frame {
        margin: 0 -15px;
        padding: 60px 30px;
        gap: 30px
    }

    .gallery__images {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr)
    }

    .gallery__btn {
        padding: 40px 0
    }

    .free-form {
        padding-top: 270px
    }

    .free-form__img {
        height: 534px;
        left: 50%;
        top: -100px;
        translate: -50% 0;
        width: 100%
    }

    .free-form__inner::after,
    .free-form__inner::before {
        display: none
    }

    .form-block__inner {
        padding: 30px;
        margin: 0 -15px
    }

    .form-block__title {
        font-size: 25px
    }

    .free-item {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        padding: 60px 30px 30px
    }

    .free-item__img {
        top: 0;
        left: 50%;
        translate: -50% -50%;
        width: 60px
    }

    .clients__cards {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
        gap: 0
    }

    .clients__card {
        margin: -20px 0
    }

    .feedback-item__block {
        font-size: 14px;
        padding: 15px
    }

    .news-card {
        padding: 15px;
        font-size: 14px
    }

    .contact__list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    .contact__text {
        font-size: 12px
    }

    .contact-item__img {
        width: 50px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50px;
        flex: 0 0 50px
    }
}

@media (max-width:767.98px) and (any-hover:none) {
    .icon-menu-wrap {
        cursor: default
    }
}

@media (max-width:575.98px) {
    .hero__quiz-btn {
        max-width: none;
        width: 100%
    }

    .calculation-item__images .calculation-item__img:last-child {
        display: none
    }
}

@media (hover:hover) {
    .f-button:hover:not([disabled]) {
        color: var(--f-button-hover-color);
        background-color: var(--f-button-hover-bg)
    }
}

.webp .btn--decor::before {
    background: url(../img/garland-btn.webp) center/contain no-repeat
}

.webp .header--dark {
    background: url(../img/hero.webp) center/cover no-repeat
}

.webp .hero {
    background: url(../img/hero.webp) center/cover no-repeat
}

.webp .hero::after,
.webp .hero::before {
    background: url(../img/lamp-decor.webp) center/contain
}

.webp .calculation {
    background: url(../img/calculation/calc-bg.webp) center/cover no-repeat
}

.webp .free-form__inner::after,
.webp .free-form__inner::before {
    background: url(../img/lamp-decor.webp) center/contain no-repeat
}



.language-switcher {
    position: relative;
    display: inline-block;
}

.language-switcher-list {
    list-style-type: none;
    margin: 0;
    padding: 0;
    background-color: #f9f9f9;
    border: 2px solid #ccc;
    border-radius: 5px;
}

.language-item {
    display: inline-block;
}

.language-link {
    display: block;
    padding: 8px 15px;
    font-size: 14px;
    text-decoration: none;
    color: #333;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.language-item:hover .language-link {
    background: linear-gradient(to bottom, #f5b774, #f29474);
    color: white;
    opacity: 0.5;
}

.language-item.active .language-link {
    background: linear-gradient(to bottom, #f5b774, #f29474);
    color: white;
    opacity: 1!important;
}

.language-link:focus {
    outline: none;
    background: linear-gradient(to bottom, #f5b774, #f29474);
    color: white;
}
