#panel, .container {
    position: relative
}

.header, .header .callback-header:hover .btn, .header .foodmarket-header-mobile:hover .btn, .header .foodmarket-header:hover .btn, .wtf-title-white .title::before {
    background: #fff
}

.breadcrumb li a, .search-results li a, .timezone .timezone-open.link span, a.info-text {
    text-decoration: none
}

.btn, .left-menu a, .link i {
    text-align: center
}

.btn img, .search-input-full button i {
    margin-left: .5rem
}

#panel {
    height: 0
}

#bx-panel.bx-panel-fixed {
    top: 0 !important;
    bottom: auto !important
}

#bx-panel.bx-panel-fixed.bx-panel-folded, #bx-panel.bx-panel-folded {
    top: auto !important;
    bottom: 0 !important
}

div.bx-component-opener {
    max-width: 100%;
    height: auto !important
}

span.bx-context-toolbar {
    height: auto !important
}

span.bx-context-toolbar-inner {
    max-width: 100vw;
    display: inline-flex !important;
    flex-wrap: wrap;
    height: auto !important;
    background-image: none !important
}

.header .left, .header .right {
    align-items: center;
    display: flex
}

.download-btn img, .instagram-news_block > span img, span.bx-context-toolbar-inner > span {
    display: inline-block
}

img {
    display: block;
    height: initial;
    max-width: 100%
}

.slick-slider:not(.slick-initialized) img {
    display: none;
    visibility: hidden
}

html {
    font-size: .9vw
}

body {
    font-family: OfficinaSans
}

.h1, h1 {
    font-size: 3rem
}

.h2, h2 {
    font-size: 2.6rem
}

.h3, h3 {
    font-size: 2.2rem;
    letter-spacing: -1px
}

.h4, h4 {
    font-size: 1.9rem
}

.h5, h5 {
    font-size: 1.6rem
}

.micro {
    font-size: .714rem
}

.mini {
    font-size: .857rem
}

.normal {
    font-size: 1rem
}

.big {
    font-size: 1.143rem
}

.extra {
    font-size: 1.286em
}

@media (min-width: 991px) {
    .h1-lg {
        font-size: 3rem
    }

    .h2-lg {
        font-size: 2.6rem
    }

    .h3-lg {
        font-size: 1.7rem
    }

    .h4-lg {
        font-size: 1.5rem
    }

    .h5-lg {
        font-size: 1.3rem
    }

    .micro-lg {
        font-size: .714rem
    }

    .mini-lg {
        font-size: .857rem
    }

    .normal-lg {
        font-size: 1rem
    }

    .big-lg {
        font-size: 1.143rem
    }

    .extra-lg {
        font-size: 1.286em
    }
}

.l-micro {
    line-height: .7
}

.l-mini {
    line-height: .9
}

.l-normal {
    line-height: 1.2
}

.l-big {
    line-height: 1.5
}

.l-extra {
    line-height: 1.8
}

.pt-extra {
    padding-top: 8rem
}

.pb-extra {
    padding-bottom: 8rem
}

.pt-big {
    padding-top: 6rem
}

.pb-big {
    padding-bottom: 6rem
}

.pt-normal {
    padding-top: 4rem
}

.pb-normal {
    padding-bottom: 4rem
}

.pt-mini {
    padding-top: 2rem
}

.pb-mini {
    padding-bottom: 2rem
}

.pt-micro {
    padding-top: 1rem
}

.pb-micro {
    padding-bottom: 1rem
}

.pb-none {
    padding-bottom: 0
}

.pt-none {
    padding-top: 0
}

.pl-none {
    padding-left: 0
}

.pr-none {
    padding-right: 0
}

.mt-extra {
    margin-top: 8rem
}

.mb-extra {
    margin-bottom: 8rem
}

.mt-big {
    margin-top: 6rem
}

.mb-big {
    margin-bottom: 6rem
}

.mt-normal {
    margin-top: 4rem
}

.mb-normal {
    margin-bottom: 4rem
}

.mt-mini {
    margin-top: 2rem
}

.mb-mini {
    margin-bottom: 2rem
}

.map-page .btn-map-back span, .mt-micro {
    margin-top: 1rem
}

.mainpage-reviews-slider, .mainpage-slider .item .btn.btn-shadow, .mb-micro {
    margin-bottom: 1rem
}

.mb-none {
    margin-bottom: 0
}

.mt-none {
    margin-top: 0
}

.mt-extra-minus {
    margin-top: -8rem
}

.mb-extra-minus {
    margin-bottom: -8rem
}

.mt-big-minus {
    margin-top: -6rem
}

.mb-big-minus {
    margin-bottom: -6rem
}

.mt-normal-minus {
    margin-top: -4rem
}

.mb-normal-minus {
    margin-bottom: -4rem
}

.mt-mini-minus {
    margin-top: -2rem
}

.mb-mini-minus {
    margin-bottom: -2rem
}

.mt-micro-minus {
    margin-top: -1rem
}

.mb-micro-minus {
    margin-bottom: -1rem
}

.text-gray {
    color: #7f7f7f
}

.info-text, .info-text a {
    color: #111
}

.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
    padding-right: .5rem;
    padding-left: .5rem
}

.row {
    margin-right: -.5rem;
    margin-left: -.5rem;
    margin-bottom: 10px;
}

.container {
    z-index: 10
}

.container + .slick-wrapper {
    z-index: 8;
    position: relative
}

.font-weight-black {
    font-weight: 900
}

.header {
    height: 5.8rem;
    padding-bottom: 1 rme;
    box-shadow: 8.817px 12.135px 49px 0 rgba(0, 0, 0, .1);
    z-index: 20;
    position: fixed;
    top: 0;
    width: 100%;
    left: 0;
    transition: .5s
}

.btn, .map-page-normal .btn-list .map-tabs li.active {
    box-shadow: 0 0 2rem 0 rgb(248 26 87 / 42%), 0 .3rem .5rem 0 rgb(0 0 0 / 13%)
}

.btn, .search-input button, i {
    transition: .2s
}

.logo img {
    height: 4.4rem
}

.header .left, .header .logo a {
    height: 100%
}

.btn.btn-long, .container-fluid {
    padding-left: 4rem;
    padding-right: 4rem
}

.header .wrapper {
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-content: center
}

.info-text {
    position: relative;
    font-weight: 800;
    display: flex;
    flex-wrap: nowrap
}

.header .info-text {
    margin-right: 3.5em
}

.header .mobile .info-text {
    padding: 4px 0;
    line-height: 1.1;
}

.header .mobile .info-text i {
    min-width: 10px
}

.info-text .upper-text {
    position: absolute;
    top: calc(-.7em - .2em);
    font-size: .7em;
    font-weight: 600
}

.info-text i {
    margin-right: .3em;
    min-width: 24px
}

.header .left .logo {
    height: 100%;
    margin-right: 4em;
    align-items: center;
    display: flex
}

input {
    border-radius: 99px;
    background: #f8f8f8;
    border: none;
    padding: .5rem 1.2rem;
    box-shadow: inset .1rem .1rem .6rem 0 rgb(0 0 0 / 10%);
    outline: 0
}

input::placeholder {
    font-style: italic;
    color: silver;
    font-weight: 100;
    letter-spacing: .03rem
}

.search-input input {
    padding-right: 3.5rem;
    min-width: 15rem
}

.search-input button {
    background: 0 0;
    border-radius: 50px;
    height: 100%;
    display: inline-flex;
    position: absolute;
    right: 0;
    width: 3rem;
    border: none;
    align-items: center;
    justify-content: center;
    color: #7f7f7f;
    outline: 0
}

.left-menu a, .left-menu a i, .left-menu a img {
    transition: none
}

.input-group i, .nano, .search-input {
    position: relative
}

.breadcrumb li a:hover, .breadcrumb li a:hover::after, .search-input button:hover {
    background: #e51a4b
}

.breadcrumb li a:hover i, .breadcrumb li a:hover span, .footer .social .item:hover i, .left-menu a.active i, .left-menu a:hover i, .link-white, .link-white i, .map-page-normal accordion .btn a, .search-input button:hover i, .subscribe-input-dark input, .wtf-title-white {
    color: #fff
}

.search-results {
    background-color: #fff;
    padding: 4px;
    border: 1px solid silver;
    position: absolute;
    top: 100%;
    width: 80vw;
    max-width: 380px
}

#preloader, .left-menu {
    position: fixed;
    z-index: 19
}

.mapsvgWrapper .search-results {
    position: absolute;
    top: 100%;
    max-width: 675px;
    left: 24px;
    z-index: 3
}

.mapsvg-menu .menuTopList, .product-properties, .product-properties > span, .product-slider-wrap, .search-results li, .timezone .timezone-close, .timezone.open .timezone-open {
    display: block
}

.search-results li a {
    display: block;
    padding: 5px 4px;
    cursor: pointer;
    color: #000
}

.search-results li a:hover {
    background-color: #ee1854;
    color: #fff
}

.btn {
    border-color: #ed114e;
    border-style: solid;
    background: #ed1651;
    border-radius: 99px;
    height: 3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
    transform: scale(1);
    line-height: 1
}

.footer .footer-4 .inner, .well-category {
    text-align: right
}

.text-pink {
    color: #ed1651
}

.header .callback-header span {
    margin-right: 1em;
    line-height: 1.3
}

.header .callback-header, .header .foodmarket-header, .header .foodmarket-header-mobile {
    display: flex;
    align-items: center;
    margin-left: 1rem;
    text-decoration: none !important;
    transition: .2s
}

.header .callback-header:hover i, .header .foodmarket-header-mobile:hover i, .header .foodmarket-header:hover i {
    color: #e51a4b !important
}

.header .callback-header:hover, .header .foodmarket-header-mobile:hover, .header .foodmarket-header:hover {
    transform: scale(1.04)
}

.header .foodmarket-header span {
    margin-left: 1em;
    margin-right: 1em;
    line-height: 1.1
}

.header .foodmarket-header .btn, .header .foodmarket-header-mobile .btn {
    width: 2.6rem !important;
    height: 2.6rem !important
}

.btn.btn-sm {
    height: 2rem
}

.btn.btn-sm.btn-curcle {
    width: 2rem;
    padding: 0
}

.left-menu {
    left: 0;
    width: 6rem;
    top: 0;
    background: #f9f9f9;
    box-shadow: .2rem .2rem 2rem 0 rgba(0, 0, 0, .13);
    height: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: space-between;
    overflow: auto
}

.breadcrumb, .breadcrumb > li, .well-image, .well-orange {
    position: relative
}

.left-menu a {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: .4rem;
    height: 4rem;
    justify-content: center;
    text-decoration: none !important;
    width: 6rem;
    color: #000
}

.left-menu a.active, .left-menu a:hover {
    color: #fff;
    background-size: cover;
    box-shadow: 0 0 .8rem 0 rgb(0 0 0 / 40%);
    background-image: linear-gradient(150deg, rgb(239 44 97 / 100%) 0, rgb(156 4 65 / 100%) 100%)
}

.left-menu a span {
    font-size: .8rem;
    margin-top: .2rem
}

.left-menu a img {
    height: 1.333rem
}

.left-menu a.active img, .left-menu a:hover img {
    height: 1.333rem;
    filter: brightness(.5);
    filter: brightness(999%)
}

.pagetitle .wrapper {
    border-radius: 1rem;
    background-image: -moz-linear-gradient(150deg, rgba(156, 4, 64, .99608) 0, #ef2c61 100%);
    background-image: -webkit-linear-gradient(150deg, rgba(156, 4, 64, .99608) 0, #ef2c61 100%);
    background-image: -ms-linear-gradient(150deg, rgba(156, 4, 64, .99608) 0, #ef2c61 100%);
    box-shadow: 2.939px 4.045px 24px 0 rgba(0, 0, 0, .15);
    color: #fff;
    padding: 1.5rem 1rem
}

.container {
    max-width: 86% !important;
    padding-left: calc(6rem + .5rem);
    padding-right: calc(6rem + .5rem)
}

.pagetitle .wrapper h1,
.pagetitle .wrapper h2 {
    font-weight: 900;
    text-shadow: .1rem .1rem .4rem rgba(0, 0, 0, .31);
    display: inline-flex;
    align-items: center
}

.pagetitle .wrapper h1::before,
.pagetitle .wrapper h2::before {
    content: "";
    background: #fff;
    height: .8rem;
    width: .8rem;
    display: inline-block;
    border-radius: 999px;
    margin-right: 1rem;
    box-shadow: .1rem .1rem .4rem rgb(0 0 0 / 31%)
}

.pagetitle-h1 {
    margin-top: -3rem;
    margin-bottom: 1.5rem;
}

.pagetitle-h1 h1 {
    font-size: 2rem;
    font-weight: 600;
}

.container-map_h1 {
    margin-top: 80px;
}

.breadcrumb li a.act, .breadcrumb li a.act span {
    color: #333
}

.breadcrumb li a.act:after, .breadcrumb > li:last-child::after, .timezone .timezone-open, .timezone.open .timezone-close {
    display: none
}

.breadcrumb-wrapper {
    overflow-x: scroll
}

.breadcrumb-wrapper-wrapper {
    height: 2.5rem;
    position: relative;
    overflow: hidden;
    border-radius: 1rem;
    margin-bottom: 3rem;
    background-color: #fff;
    box-shadow: .05rem .08rem .5rem 0 rgba(0, 0, 0, .16)
}

.breadcrumb-wrapper-wrapper::after {
    z-index: 2;
    content: "";
    background: linear-gradient(to right, #e9ecef00, #fff);
    position: absolute;
    height: 45px;
    width: 45px;
    right: 0;
    top: 0
}

.breadcrumb {
    background: #fff;
    border-radius: 0;
    z-index: 2;
    color: #131313;
    box-shadow: 0 .1rem .3rem 0 #000;
    display: flex;
    overflow: hidden;
    height: 2.5rem;
    align-items: center;
    min-width: 100%;
    width: max-content;
    padding: 0
}

.footer, .well {
    background-color: #fff;
    box-shadow: 0 .8rem 1.4rem 0 rgb(0 0 0 / 10%)
}

.breadcrumb li a, .wtf-title .title {
    font-weight: 800;
    align-items: center
}

.breadcrumb i, .breadcrumb span {
    z-index: 2;
    color: #b7b7b7;
    font-size: 1rem
}

.breadcrumb span {
    font-size: .9rem;
    font-weight: 200
}

.breadcrumb > li {
    text-shadow: 0 1px 0 #fff;
    padding: 0 20px;
    white-space: nowrap
}

.breadcrumb > li + li:before {
    content: "";
    padding: 0
}

.breadcrumb > li a:after {
    content: "";
    display: block;
    position: absolute;
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    height: 100%;
    width: 2.5rem;
    top: 0;
    right: -15px;
    z-index: 1;
    background: #fff;
    transition: .2s
}

.breadcrumb > li:last-child {
    pointer-events: none;
    opacity: .5
}

.breadcrumb li a {
    text-shadow: none;
    background: #fff;
    height: 100%;
    display: flex;
    padding-left: 2.5rem;
    padding-right: 1.5rem;
    transition: .2s;
    color: #000
}

.breadcrumb li {
    height: 100%;
    padding: 0
}

.breadcrumb li a:hover::before {
    background: #0ff
}

.breadcrumb li:first-child a {
    padding-left: 1.5rem;
    padding-right: .5rem
}

.well {
    padding: 1rem;
    border-radius: 1rem;
    height: 100%;
    transition: .2s
}

.well.well-normal {
    padding: 2rem
}

.well-orange::before {
    content: "";
    background-image: -moz-linear-gradient(-90deg, rgba(246, 144, 61, .99608) 0, #ee3349 100%);
    background-image: -webkit-linear-gradient(-90deg, rgba(246, 144, 61, .99608) 0, #ee3349 100%);
    background-image: -ms-linear-gradient(-90deg, rgba(246, 144, 61, .99608) 0, #ee3349 100%);
    height: 100%;
    width: 1rem;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0
}

.well-orange {
    overflow: hidden
}

.well.well-normal.well-orange {
    padding-left: 4rem
}

.btn img {
    height: 1.4rem
}

.map-page-normal .accordion .card-header, .well-none {
    padding: 0
}

.slick-wrapper {
    overflow: hidden;
    padding-bottom: 5rem;
    margin-bottom: -5rem;
    padding-top: 5rem;
    margin-top: -5rem
}

.slick-wrapper .slider-style .slick-slide.slick-active {
    opacity: 1;
    pointer-events: auto
}

.slick-wrapper .slider-style .slick-slide {
    opacity: .5;
    transition: .3s;
    pointer-events: none
}

.slick-wrapper .slick-list {
    overflow: inherit
}

.well-image {
    overflow: hidden;
    background: #fff
}

.well-image .expand {
    position: absolute;
    z-index: 2;
    right: .5rem;
    top: .5rem;
    background: rgb(0 0 0 / 20%);
    padding: .8rem;
    border-radius: .5rem
}

.well-image img {
    opacity: .9;
    position: relative;
    object-fit: cover
}

.wtf-title .title {
    font-style: italic;
    position: relative;
    display: flex;
    line-height: .8;
    margin-bottom: .8rem
}

.wtf-title .title::before {
    background: #e51a4b;
    content: "";
    width: .8rem;
    height: .8rem;
    display: inline-block;
    margin-left: -1.8rem;
    margin-right: 1rem;
    border-radius: 999px
}

.wtf-title .title-h1 {
    font-size: 2.6rem;
}

.footer .social .item, .link {
    display: inline-flex;
    text-decoration: none !important
}

.link, .link i {
    color: #e51a4b;
    transition: .2s
}

.link i {
    margin-right: .5rem;
    min-width: 1.33333em
}

.link:hover, .link:hover i {
    color: #ef7f1a
}

.btn.btn-white-pink, .category-list .item.active, .category-list .item:hover, .text-default, a:hover {
    color: #e51a4b
}

.link:visited, .link:visited i {
    color: #ac2045
}

.link {
    align-items: center
}

.link span {
    text-decoration: underline
}

.timezone .timezone-open.link i, .timezone-open.link {
    color: #75cd0e
}

.timezone .timezone-close.link span {
    text-decoration: none;
    color: #999
}

.timezone .timezone-close.link i {
    color: #999
}

.info-text .timezone-close, .info-text .timezone-open {
    position: absolute;
    display: inline-block;
    height: .4rem;
    width: .4rem;
    right: -.7rem;
    top: calc(50% - .2rem);
    border-radius: 999px
}

.info-text .timezone-open {
    background: #75cd0e
}

.info-text .timezone-close {
    background: #cd2b0e
}

.footer .footer-4 .inner .link {
    justify-content: flex-end
}

.footer {
    padding-bottom: 1rem
}

.footer .links .item a, .well-search:hover {
    color: #000
}

.footer .social .item {
    padding: .2rem;
    height: 3rem;
    width: 3rem;
    border: 1px solid #e3e3e3;
    border-right: 0;
    align-items: center;
    justify-content: center
}

.footer .social .item:last-child {
    border-right: 1px solid #e3e3e3
}

.footer .social {
    display: flex;
    height: 100%
}

.footer .social .item:hover {
    background: #e51a4b;
    border-color: #e51a4b
}

.footer .footer-3 .inner {
    height: 100%;
    display: flex;
    align-items: center;
    padding-top: 2rem;
    justify-content: center
}

.footer .inner {
    margin-bottom: 3rem;
    margin-top: 3rem
}

.footer .footer-4 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-end
}

.copyright .wrapper {
    display: flex;
    justify-content: space-between;
    color: #7b7b7b;
    font-weight: 100
}

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

.mainpage-slider .item {
    /* display: flex; */
    width: 100%;
    align-items: center;
    flex-wrap: nowrap;
    text-align: center;
    overflow: hidden;

}
.mainpage-slider .item a {
    width: 100%;
    display: block;
}

.mainpage-slider .item .image {
    width: 100% !important;
    display: block;
    margin-top: -1rem;
    margin-right: -1rem;
    /* max-width: inherit; */
    /* width: 60%; */
    margin-bottom: -1rem
}

.mainpage-slider .item .image img {
    display: block;
    object-fit: contain;
    width: 100%;
    height: 100%;
    margin: 1rem 0
}

.mainpage-slider .item .inner {
    width: 50%;
    flex-grow: 1
}

.mainpage-slider .item .title {
    color: #fff;
    font-style: italic;
    text-transform: uppercase;
    text-shadow: .2rem .2rem .2rem rgb(189 65 123 / 35%);
    font-weight: 800;
    letter-spacing: -1px;
    line-height: 1;
    margin-bottom: 1.5rem
}

.mainpage-slider .item p {
    font-style: italic;
    letter-spacing: 1.5px;
    color: #fff;
    opacity: .7;
    font-weight: 700;
    padding-left: .5rem
}

.btn.btn-shadow {
    box-shadow: inset 0 0 0 2px #fff;
    background: 0 0;
    border: none
}

.btn.btn-shadow:hover {
    background: #ed1651;
    box-shadow: none;
    color: #fff;
    box-shadow: 0 0 .7rem .1rem rgb(0 0 0 / 25%)
}

.btn:hover {
    color: #fff;
    transform: scale(1.03)
}

.mainpage-slider {
    margin-bottom: 0 !important
}

.mainpage-slider .slick-list {
    margin: -2rem;
    padding: 2rem
}

.mainpage-slider .item.slick-slide {
    opacity: 0;
    transition: .2s
}

.mainpage-slider .item.slick-current {
    opacity: 1
}

.mainpage-slider .slick-dots {
    bottom: 2.5rem
}

.well.well-shops {
    background: linear-gradient(180deg, #ef7f1a, #eb1e43);
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-height: 30rem
}

.well.well-shops .image {
    max-width: inherit;
    margin-left: -1rem;
    margin-right: -1rem;
    width: calc(100% + 2rem)
}

.well.well-shops .image-1 {
    position: relative;
    z-index: 0;
    min-width: 0;
    object-fit: contain;
    width: auto;
    height: auto
}

.well-shops .image-2 {
    position: absolute;
    top: 0;
    z-index: 3;
    padding: 1rem;
    max-width: 360px;
    width: 80%
}

.well-shops .image-3 {
    position: absolute;
    bottom: 0;
    width: 100%;
    max-height: 100px
}

.well-shops .buttons {
    margin-bottom: 3rem;
    position: absolute;
    bottom: 0
}

.well.well-shops .line {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.well.well-shops .line img {
    max-height: 45px;
    transform: scale(1);
    transition: .3s linear
}

.well.well-shops .line img:hover {
    transform: scale(1.1)
}

.well.well-shops {
    padding: 1.5rem
}

.btn.btn-white {
    background-color: #fff;
    box-shadow: 0 0 3rem 0 rgb(255 255 255 / 42%), .3rem .4rem .8rem 0 rgb(0 0 0 / 13%);
    color: #000;
    border-color: #fff
}

.gradient {
    align-items: center;
    background-image: linear-gradient(to right, #b5a5ed, #a2b3de, #f7ebd0, #8debd9, #f5c4f1);
    background-size: 600%;
    background-position: 0 0;
    height: 100%;
    animation-duration: 20s;
    animation-iteration-count: infinite;
    animation-name: gradients;
    position: relative
}

@keyframes gradients {
    0%, 100% {
        background-position: 0 0
    }
    25% {
        background-position: 50% 0
    }
    50% {
        background-position: 90% 0
    }
    60% {
        background-position: 60%
    }
    75% {
        background-position: 40%
    }
}

.gradient::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: url(/local/templates/cg21/img/mainpage-slider-bg.png) bottom center/contain no-repeat
}

.well-category, .well-item {
    position: relative;
    width: 100%
}

.well-banner .inner h3 {
    letter-spacing: -1px
}

.well-banner .inner {
    width: 70%;
    display: inline-block;
    padding-left: 2.5rem;
    padding-top: 2.5rem;
    padding-bottom: 2rem;
    height: fit-content;
    z-index: 1
}

.well-banner {
    display: flex;
    padding: 0;
    overflow: hidden;
    align-items: center
}

.well-banner .image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: right
}

.well-banner .image {
    max-height: 400px;
    position: relative;
    width: auto;
    height: 100%
}

.mainpage-what-slider .well-item .inner, .well .link-away {
    position: absolute
}

.well-banner .title {
    margin-bottom: .5rem;
    font-weight: 800;
    font-size: 2.2rem;
    width: 100%
}

.well-category {
    display: inline-flex;
    padding: 0;
    overflow: hidden;
    background-image: -moz-linear-gradient(90deg, #f4959b 0, #e96468 100%);
    background-image: -webkit-linear-gradient(90deg, #f4959b 0, #e96468 100%);
    background-image: -ms-linear-gradient(90deg, #f4959b 0, #e96468 100%);
    box-shadow: 0 1.5rem 3rem 0 rgba(255, 0, 8, .3), 1rem 1.5rem 4rem 0 rgba(0, 0, 0, .1);
    color: #fff;
    align-items: center;
    text-decoration: none !important;
    height: 17rem
}

.callback-modal, .category-list .item, .well-about-block, .well-item-promo, .well-subscribe {
    text-align: center
}

.well-category-1 {
    background-image: -moz-linear-gradient(90deg, #a9e0ca 0, #55c2a0 100%);
    background-image: -webkit-linear-gradient(90deg, #a9e0ca 0, #55c2a0 100%);
    background-image: -ms-linear-gradient(90deg, #a9e0ca 0, #55c2a0 100%);
    box-shadow: 0 1.5rem 3rem 0 rgba(86, 194, 160, .3), 17.634px 24.271px 97px 0 rgba(0, 0, 0, .1)
}

.well-category-2 {
    background-image: -moz-linear-gradient(90deg, #f5a864 0, #d67b2a 100%);
    background-image: -webkit-linear-gradient(90deg, #f5a864 0, #d67b2a 100%);
    background-image: -ms-linear-gradient(90deg, #f5a864 0, #d67b2a 100%);
    box-shadow: 0 1.5rem 3rem 0 rgba(240, 146, 24, .3), 17.634px 24.271px 97px 0 rgba(0, 0, 0, .1)
}

.well-category-3 {
    background-image: -moz-linear-gradient(90deg, #c7df73 0, #9ab535 100%);
    background-image: -webkit-linear-gradient(90deg, #c7df73 0, #9ab535 100%);
    background-image: -ms-linear-gradient(90deg, #c7df73 0, #9ab535 100%);
    box-shadow: 0 1.5rem 3rem 0 rgba(180, 216, 43, .3), 17.634px 24.271px 97px 0 rgba(0, 0, 0, .1)
}

.well-category-4 {
    background-image: -moz-linear-gradient(90deg, #75cef9 0, #28a1da 100%);
    background-image: -webkit-linear-gradient(90deg, #75cef9 0, #28a1da 100%);
    background-image: -ms-linear-gradient(90deg, #75cef9 0, #28a1da 100%);
    box-shadow: 0 1.5rem 3rem 0 rgba(43, 163, 219, .3), 17.634px 24.271px 97px 0 rgba(0, 0, 0, .1)
}

.well-category-5 {
    background-image: -moz-linear-gradient(90deg, #f9cc5e 0, #cb971c 100%);
    background-image: -webkit-linear-gradient(90deg, #f9cc5e 0, #cb971c 100%);
    background-image: -ms-linear-gradient(90deg, #f9cc5e 0, #cb971c 100%);
    box-shadow: 0 1.5rem 3rem 0 rgba(243, 200, 93, .3), 17.634px 24.271px 97px 0 rgba(0, 0, 0, .1)
}

.well-category .image img {
    height: 100%;
    object-fit: cover;
    object-position: right
}

.well-category .image {
    width: 55%;
    margin-right: -5%;
    height: 100%
}

.well-category .inner {
    width: 70%;
    margin-left: -20%;
    padding-right: 1.5rem
}

.well-category .inner .title {
    font-weight: 900;
    letter-spacing: .5px;
    text-shadow: .1rem .2rem .5rem rgba(0, 0, 0, .44);
    margin-bottom: 1rem;
    font-size: 2.2rem
}

.well-category:hover {
    color: #fff;
    transform: scale(1.05)
}

.well-category .btn:hover, .well-item-shop-close:hover {
    transform: scale(1)
}

.well-category .btn {
    box-shadow: 0 2rem 3.5rem 0 rgba(255, 255, 255, .38)
}

.well .link-away {
    right: .6rem;
    top: .8rem;
    opacity: .8;
    z-index: 2
}

.header.out {
    top: -8rem
}

.header.active {
    top: 0
}

.left-menu .logo {
    height: 5.8rem;
    padding: 1rem;
    background: #fff;
    border-bottom: 1px solid #eee;
    transition: .5s
}

.left-menu .logo img {
    height: 100%;
    transition: .5s
}

.left-menu .logo:hover {
    background: #fff;
    box-shadow: 0 0 2rem 0 rgb(0 0 0 / 40%)
}

.left-menu .logo:hover img {
    height: 100%;
    filter: inherit;
    transform: scale(1.08)
}

.well-item {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    color: #222;
    text-decoration: none !important;
    transition: .2s
}

.well-item:hover {
    transform: scale(1.03);
    box-shadow: 0 1.3rem 2.4rem 0 rgb(0 0 0 / 7%)
}

.well-item .title {
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: .5rem;
    margin-top: .5rem;
    display: inline-block;
    min-height: 2.1rem
}

.well-item .half-icon {
    background-image: -moz-linear-gradient(135deg, rgba(242, 142, 38, .99608) 0, #fd644f 100%);
    background-image: -webkit-linear-gradient(135deg, rgba(242, 142, 38, .99608) 0, #fd644f 100%);
    background-image: -ms-linear-gradient(135deg, rgba(242, 142, 38, .99608) 0, #fd644f 100%);
    box-shadow: 0 .3rem 1.3rem 0 rgb(255 186 0 / 28%), inset .3rem .5rem 1rem 0 rgb(0 0 0 / 17%);
    display: inline-flex;
    height: 4rem;
    width: 4rem;
    justify-content: center;
    align-items: center;
    margin-top: -3rem;
    position: absolute;
    border-radius: .5rem;
    overflow: hidden
}

.well-item .half-icon.circle {
    border-radius: 50%
}

.well-item .image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    background-color: #e5e5e5
}

.well-item .icons {
    padding-bottom: 1rem;
    display: flex;
    justify-content: flex-end;
    width: 100%
}

.well-item .image {
    margin: -1rem -1rem 1rem;
    height: 17rem;
    width: calc(100% + 2rem);
    position: relative
}

@media (max-width: 767px) {
    .well-item .image {
        height: 15rem
    }
}

@media (max-width: 576px) {

    .well-item .image {
        height: 18rem
    }
    .slick-slide > .well-item .image {
        height: 12rem
    }

}

.well-item .inner {
    height: auto;
    width: 100%;
    position: relative;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap
}

.well-item-action .inner .title {
    font-size: 1.4rem;
    letter-spacing: -.8px
}

.well-item-action .inner .date {
    margin-bottom: .2rem;
    font-size: 1.2rem;
    color: #ababab;
    letter-spacing: .5px;
    margin-top: auto
}

.well-item-food .title {
    display: flex;
    align-content: flex-start;
    align-items: flex-start;
    margin-top: .9rem;
    min-height: 2rem
}

.well-item-food .title img {
    object-fit: contain;
    margin-top: .1rem;
    margin-right: .5rem
}

.well-item-food .image {
    height: 14rem
}

.wtf-title {
    display: flex;
    justify-content: space-between;
    margin-bottom: .5rem
}

.wtf-title .btn {
    box-shadow: none;
    background: 0 0;
    border: none;
    color: #e51a4b;
    margin-right: -2.5rem;
    letter-spacing: 1px
}

.well-item-reviews .title {
    margin: -1rem 0 .5rem;
    background: #fff;
    min-height: inherit;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    padding-left: .5rem;
    padding-right: .5rem;
    position: relative;
    border-radius: .5rem;
    box-shadow: 0 .1rem .3rem 0 rgb(0 0 0 / 20%)
}

.well-item-reviews {
    overflow: inherit;
    margin-top: 1rem;
    height: 100%;
    padding-top: 0
}

.well-item-reviews:hover {
    color: #000;
    transform: none
}

.well-item-reviews .stars {
    margin-bottom: .5rem
}

.text-yellow {
    color: #ffc107
}

.slick-wrapper .col, .well-item-news .image {
    height: auto
}

.slick-wrapper .slick-track {
    display: flex;
    align-content: stretch;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: stretch;
    min-width: 100%
}

.well-item-what .image {
    height: 13rem;
    margin: 0
}

.well-item-what .play {
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    font-size: 4rem;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center
}

.well-item-what {
    padding: 0;
    background: #000
}

.well-item-what .image img {
    opacity: .8
}

.we-social .item {
    display: inline-flex;
    height: initial
}

.well-about-block {
    background: url(/local/templates/cg21/img/about-block-001.png) center center/cover no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff
}

.btn.btn-curcle {
    padding: 0;
    width: 3rem
}

.map-page-normal .accordion .btn i, .well-about-block .buttons .btn {
    margin-right: .5rem
}

.well-about-block .buttons .btn:last-child {
    margin-right: 0
}

.well-about-block .logo {
    border-radius: 1rem;
    background: #fff;
    margin-bottom: .5rem;
    padding: 1rem;
    display: inline-block
}

.gradient.gradient-social::before {
    background: url(/local/templates/cg21/img/shape-top.png) top center/contain no-repeat, url(/local/templates/cg21/img/shape-bottom.png) bottom center/contain no-repeat
}

.gradient.gradient-social {
    padding-top: 10rem;
    padding-bottom: 4rem;
    margin-top: -6rem;
    margin-bottom: 4rem;
    display: inline-flex;
    flex-wrap: wrap;
    animation-duration: 25s;
    width: 100%;
    background-image: linear-gradient(to right, #d13b97, #4b729f, #fb5244, #ff9749, #f61c0d);
    z-index: 0
}

.btn.btn-lg {
    height: 4rem
}

.we-social .item img {
    object-fit: contain;
    display: inline-block;
    width: 100%;
    height: auto
}

#preloader.hide {
    opacity: 0;
    pointer-events: none
}

#preloader {
    opacity: 1;
    pointer-events: auto;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, #111, #444);
    transition: .5s
}

#loader {
    display: block;
    position: relative;
    left: 50%;
    top: 50%;
    width: 150px;
    height: 150px;
    margin: -75px 0 0 -75px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #9370db;
    -webkit-animation: 2s linear infinite spin;
    animation: 2s linear infinite spin
}

#loader:before {
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    right: 5px;
    bottom: 5px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #ba55d3;
    -webkit-animation: 3s linear infinite spin;
    animation: 3s linear infinite spin
}

#loader:after {
    content: "";
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #f0f;
    -webkit-animation: 1.5s linear infinite spin;
    animation: 1.5s linear infinite spin
}

.category-list .item span, .tags .item {
    border-radius: 99px;
    white-space: nowrap
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0)
    }
    100% {
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0)
    }
    100% {
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.mobile-dark-wrapper {
    box-shadow: inset 0 0 30px #000
}

.subscribe-input input {
    height: 3.5rem;
    border-radius: 99px 0 0 99px;
    width: 100%;
    background: rgb(238 238 238 / 20%)
}

.btn-list .btn:last-child, .subscribe-input button {
    border-radius: 0 99px 99px 0
}

.subscribe-input {
    display: flex
}

.well-subscribe {
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    background: url(/local/templates/cg21/img/well-subscribe.png) center center/cover no-repeat
}

.subscribe-input button.btn {
    height: 3.5rem;
    box-shadow: 0 0 3rem 0 rgb(255 255 255 / 0%), .3rem .4rem .8rem 0 rgb(0 0 0 / 0%)
}

.subscribe-input button:hover {
    transform: scale(1);
    box-shadow: 0 0 3rem 0 rgb(255 255 255 / 42%), .3rem .4rem .8rem 0 rgb(0 0 0 / 13%)
}

.search-input-full, .well-subscribe .title {
    max-width: 30rem
}

.category-list .item {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 4rem;
    justify-content: center;
    text-decoration: none !important;
    color: #000;
    transition: none;
    margin-left: .1rem;
    margin-right: .1rem
}

.category-list .links {
    flex-wrap: nowrap;
    position: relative;
    max-width: none;
    display: flex;
    padding-left: .5rem;
    padding-right: .5rem
}

.category-list .item span {
    margin-top: .5rem;
    padding: .1rem 1.4rem
}

.category-list .item.active span, .tags .item.item-pink {
    background: #e51a4b;
    color: #fff
}

.category-list {
    width: 100%;
    background: #fff;
    border-radius: 1rem;
    box-shadow: 0 .1rem .3rem 0 rgb(0 0 0 / 10%);
    padding-top: .5rem;
    padding-bottom: .5rem;
    margin-bottom: .3rem;
    position: relative;
    overflow: hidden
}

.category-list .item:hover span {
    color: #fff;
    background: #e51a4b
}

.well-item-shop .image {
    width: calc(100% + 2rem);
    height: 15rem
}

.well-item-shop .title {
    color: #000;
    margin-left: 4.8rem
}

.well-item-shop .icon-shop {
    margin-top: -2rem;
    position: absolute
}

.arendator-detail-img {
    padding: 30% 0
}

.arendator-detail-img img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover
}

.arendator-detail-banner-img {
    padding: 50% 0;
    max-height: 500px
}

.arendator-detail-banner-img img {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%, 0);
    object-fit: cover
}

.arendator-slider-photo .slick-track {
    justify-content: center
}

.arendator-slider-photo .slick-slide.arendator-photo-slide {
    flex: 0 0 auto;
    width: clamp(250px, calc(390px * var(--photo-ratio, 1)), 780px);
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    margin-left: 20px;
    margin-right: 20px;
    box-sizing: border-box
}

.arendator-slider-photo .well-image a {
    display: block;
    position: relative;
    height: 390px;
    overflow: hidden
}

.arendator-slider-photo .well-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain
}

@media (max-width: 767px) {
    .arendator-slider-photo .slick-slide.arendator-photo-slide {
        flex: 0 0 auto;
        width: clamp(250px, calc(330px * var(--photo-ratio, 1)), 660px);
        max-width: none
    }

    .arendator-slider-photo .well-image a {
        height: 330px
    }
}

.tags .item {
    background: #f6f6f6;
    padding: .2rem .5rem;
    text-transform: uppercase;
    color: #b9b9b9;
    font-size: .8rem;
    display: inline-block;
    margin-right: 4px;
    margin-bottom: 4px
}

.well-item-shop .tags .item:hover {
    background: #eee;
    text-decoration: none
}

.category-list-list {
    border-radius: 1.5rem;
    padding-bottom: .2rem
}

.category-list-list .item {
    height: auto;
    display: inline-flex;
    width: auto;
    margin-left: .1rem;
    margin-right: .1rem;
    margin-bottom: .3rem;
    min-width: inherit !important
}

.category-list-list .links {
    flex-wrap: wrap
}

.category-list-list .item span {
    padding-left: 1rem;
    padding-right: 1rem;
    margin: 0;
    font-size: .9rem
}

.category-list::before {
    z-index: 2;
    content: "";
    background: linear-gradient(to right, #e9ecef00, #fff);
    position: absolute;
    height: 100%;
    width: 45px;
    right: 0;
    top: 0
}

.well-category-category-item {
    align-items: flex-start
}

.well-category-category-item .top {
    display: flex;
    margin-top: -2rem
}

.well-category-category-item .inner {
    width: 90%
}

.well-category-category-item .inner .social {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap
}

.well-category-category-item .inner .social .item {
    height: 3rem;
    width: 3rem;
    margin-left: .5rem;
    margin-bottom: .5rem;
    border-radius: .5rem;
    padding: .7rem !important
}

.well-category-category-item .info-text {
    margin-bottom: 1.4rem
}

.well-item-product .price {
    display: flex;
    flex-direction: column
}

.well-item-product .image img {
    object-fit: cover
}

.well-item-product .inner {
    height: auto;
    text-align: left;
    width: 100%
}

.well-item-product .title {
    margin: 0 0 .5rem;
    min-height: auto;
    font-size: 1.3rem
}

.well-item-product .price .old-price {
    text-decoration: line-through;
    color: #b9b9b9
}

.well-item-product .price .new-price {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1
}

.well-item .half-icon-sell {
    background-image: -moz-linear-gradient(135deg, #b6359c 0, #ef0a6a 100%);
    background-image: -webkit-linear-gradient(135deg, #b6359c 0, #ef0a6a 100%);
    background-image: -ms-linear-gradient(135deg, #b6359c 0, #ef0a6a 100%);
    box-shadow: 0 .3rem 1.3rem 0 rgb(211 0 255 / 28%), inset .3rem .5rem 1rem 0 rgb(0 0 0 / 17%)
}

.well-item-shop-close {
    box-shadow: none !important;
    opacity: .5
}

.form-group textarea, .input-group {
    background-color: #fefefe;
    box-shadow: 0 0 16px 0 rgba(85, 206, 219, .22), 0 3px 4px 0 rgba(0, 0, 0, .22)
}

.input-group {
    border-radius: 99px;
    height: 3.5rem
}

.form-group textarea {
    border-radius: 1rem;
    padding: 1rem 1.5rem
}

.input-group span {
    border-radius: 99px 0 0 99px;
    height: 100%;
    background: 0 0;
    border: none;
    padding-left: 1.5rem
}

.input-group input {
    border-radius: 0 99px 99px 0;
    height: 100%;
    background: 0 0;
    box-shadow: none;
    border: none
}

.input-group i span {
    position: absolute;
    top: -.5rem;
    right: -.5rem;
    color: red
}

.callback-modal {
    border-radius: 1rem;
    padding: 4rem;
    max-width: 50%
}

.well-item-news .image img {
    max-height: 16rem
}

.well-news-item .inner {
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    height: 100%;
    width: 100%
}

.well-image .blur img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .5;
    filter: blur(.3rem)
}

.well-item-promo .inner {
    height: auto;
    padding-top: 1.5rem
}

.well-item-promo .inner .discount-span {
    background: #e51a4b;
    color: #fff;
    padding: .3rem 2rem;
    border-radius: 99px;
    margin-bottom: 1rem;
    display: inline-block
}

.well-item-promo .image img {
    height: 100%;
    object-fit: contain
}

.well-video .link-away-video {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    font-size: 7rem
}

.well-video .image {
    opacity: .5;
    height: 100%;
    object-fit: cover;
    margin: 0
}

.well-rent-block {
    background: url(/local/templates/cg21/img/well-rent-block.jpg) center center/cover no-repeat
}

.well-rent-block .h1 {
    font-size: 4.2rem
}

.callback-modal .fancybox-close-small {
    background: red;
    color: #fff !important;
    opacity: .6;
    border-radius: 0 0 0 1rem
}

.search-input-full input {
    width: 100%;
    background: #fff;
    height: 3.5rem;
    padding-left: 2rem;
    border: 1px solid #a8a8a8
}

.search-input-full button {
    background: #e51a4b;
    width: auto;
    padding-left: 2rem;
    padding-right: 2rem;
    font-weight: 800;
    border-radius: 0 99px 99px 0;
    color: #fff
}

.well-search .desc {
    opacity: .4;
    margin-top: 1rem
}

.well-search .tags .item {
    font-size: 1.1rem;
    padding-left: 2rem;
    padding-right: 2rem;
    text-transform: none
}

.well-search .title {
    font-size: 2rem;
    margin-bottom: 1.4rem;
    color: #e51a4b
}

.well-action-item .inner .bottom hr, .well-search {
    width: 100%
}

.icon-shop {
    height: 4rem;
    width: 4rem;
    display: inline-block;
    object-fit: cover;
    border-radius: .5rem;
    overflow: hidden;
    box-shadow: 0 .1rem .4rem rgb(0 0 0 / 25%)
}

.well-action-item .inner .bottom {
    display: flex;
    justify-content: space-between;
    width: 100%;
    flex-wrap: wrap;
    align-items: center
}

.well-image .blur {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% + 4rem);
    height: calc(100% + 4rem);
    margin: -2rem
}

ul {
    padding-inline-start: 1.5rem
}

.btn-list .btn:first-child {
    border-radius: 99px 0 0 99px
}

.btn-list .btn, .map-page .selectize-input > input, .map-page-normal .accordion .card {
    border-radius: 0
}

.h-desk {
    display: block !important
}

.h-mob {
    display: none !important
}

@media (max-width: 767px) {
    .gradient.gradient-social {
        padding-top: 6rem
    }

    .h-desk {
        display: none !important
    }

    .h-mob {
        display: block !important
    }
}

.product-slider-wrap .product-slider-view {
    display: block;
    width: calc(100% + 2rem);
    margin: -1rem -1rem 0
}

.product-slider-wrap .product-slider-view .slick-list {
    padding: 1rem
}

.product-slider-wrap .product-slider-nav {
    display: block;
    width: 100%
}

.map-page .header-map .inner {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding-right: 4rem;
    align-items: center;
    height: 100%
}

.map-page .header-map {
    margin-top: -6rem;
    height: 8rem;
    align-items: center;
    display: flex;
    box-shadow: 0 0 1.2rem 0 #00000017;
    z-index: 2;
    position: relative
}

.map-page .selectize-control {
    display: flex;
    width: 20rem;
    height: 100%
}

.map-page .control-group .selectize-input {
    height: 100%;
    align-items: center !important;
    display: flex !important;
    box-shadow: inset .1rem .1rem .6rem 0 rgb(0 0 0 / 10%);
    border: 1px solid #a8a8a8;
    border-radius: 99px !important
}

.map-page .control-group {
    display: flex;
    align-items: center;
    position: relative
}

.map-page .control-group button {
    position: absolute;
    z-index: 2;
    right: 0;
    height: 100%;
    background: #e51a4b;
    border: none;
    color: #fff;
    width: 4rem;
    border-radius: 0 99px 99px 0;
    pointer-events: none
}

.map-page .control-group .optgroup-header {
    font-weight: 700;
    background: #eee !important
}

.map-page .control-group .selectize-dropdown, .selectize-input, .selectize-input input {
    font-size: 1rem !important
}

.map-page .btn-map-back {
    height: 100%;
    border-radius: 0;
    flex-direction: column;
    border: none
}

.map-page .btn-map-back:hover {
    transform: inherit;
    color: #ed1651;
    background: #fff
}

.map-page .map img {
    width: 100%;
    object-fit: contain;
    background: #f5f5f5
}

.map-page .selectize-input {
    padding-left: 1.4rem !important;
    padding-top: .5rem !important;
    padding-bottom: .5rem !important
}

.map-page-normal {
    display: flex;
    height: calc(100vh - 100px)
}

.map-page-normal .btn-list {
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin: 1rem 1rem 0;
    padding-top: 1.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    position: absolute;
    z-index: 18
}

@media (max-width: 575px) {
    .map-page-normal .btn-list {
        padding-left: .5rem;
        padding-right: .5rem;
        flex-direction: column !important;
        justify-content: flex-start
    }
}

.map-page-normal .btn-list .map-tabs {
    list-style: none;
    padding: 0;
    transition: .3s
}

.map-page-normal .btn-list .map-tabs.disabled {
    opacity: .7;
    filter: grayscale(100%);
    pointer-events: none
}

.map-page-normal .btn-list .map-tabs li {
    list-style: none;
    cursor: pointer
}

.map-page-normal .btn-list .map-tabs li.active {
    border-color: #ed114e;
    border-style: solid;
    background: #ed1651;
    color: #fff
}

.map-page-normal .map {
    position: relative;
    width: 100%
}

.map-page-normal .map-container {
    position: relative;
    z-index: 10;
    height: 100%
}

.map-page-normal .map-container .map-view {
    height: 100% !important;
    min-height: 70vh
}

.map-page-normal .accordion {
    margin-left: 6rem;
    width: 20rem;
    border-radius: 0;
    overflow: auto;
    padding-bottom: 80px
}

.map-page-normal .accordion .btn {
    background: 0 0;
    border: none;
    color: #000;
    box-shadow: none;
    width: 100%;
    height: 4rem;
    border-radius: 0;
    justify-content: flex-start;
    padding-right: 3rem;
    text-decoration: none
}

.map-page-normal .accordion .btn:hover {
    background: #eee;
    transform: inherit;
    text-decoration: none
}

.map-page-normal .accordion .btn span::after {
    background: url(/local/templates/cg21/svg/down-arrow.svg) center center no-repeat;
    content: "";
    display: inline-block;
    position: absolute;
    right: 1rem;
    height: 1rem;
    width: 1rem
}

.map-page-normal .accordion .btn.collapsed span::after {
    transform: rotate(-90deg)
}

.map-page-normal .selectize-control {
    width: 12rem !important
}

.map-page-normal .accordion .card-body .item {
    width: 100%;
    display: inline-block;
    color: #2f4f4f;
    padding: .3rem 1rem
}

.map-page-normal .accordion .card-body {
    padding: .5rem 0 1rem
}

.map-page-normal .accordion .card-body .item:hover {
    text-decoration: none;
    background: #eee
}

.nano-content {
    display: block;
    width: auto;
    position: relative;
    max-width: none
}

.nano-content .ps__rail-x {
    position: relative;
    opacity: .3;
    cursor: ew-resize
}

.categorys-box.sticky-top {
    background-color: #f9f9f9;
    z-index: 10
}

.categorys-box.sticky-top:before {
    display: block;
    position: absolute;
    left: -10px;
    top: 0;
    height: 100%;
    width: calc(100% + 20px);
    background-color: #f9f9f9;
    content: '';
    z-index: 0
}

.instagram-news_block {
    background: #fff;
    border-radius: 1rem;
    padding: .5rem
}

.instagram-news_block .well {
    margin: -.5rem -.5rem .5rem;
    width: auto;
    height: 0;
    padding-bottom: 100%;
    overflow: hidden;
    display: block
}

.instagram-news_block > span {
    display: block;
    white-space: nowrap
}

.instagram-news_block .text {
    font-size: .9rem;
    line-height: 1.3;
    min-height: 120px;
    font-weight: 200
}

.well.well-number .number {
    height: 100%;
    background: red;
    position: absolute;
    left: 0;
    top: 0;
    width: 7rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 7rem;
    font-weight: 800;
    color: #fff
}

.well.well-number {
    display: flex;
    overflow: hidden;
    position: relative;
    padding-left: 8.5rem !important;
    height: auto;
    min-height: 12rem;
    display: flex;
    align-items: center
}

.collapse-questions {
    background: #fff;
    box-shadow: 0 .8rem 1.4rem 0 rgb(0 0 0 / 10%);
    overflow: hidden;
    border-radius: 1rem
}

.collapse-questions .card {
    border: none;
    border-radius: 0;
    background: #eee;
    box-shadow: inset 0 1rem 9rem #0000001a
}

.collapse-questions .card-header {
    border: none;
    padding: 0;
    height: auto
}

.collapse-questions .card-header .btn {
    width: 100%;
    justify-content: flex-start;
    border-radius: 0;
    box-shadow: none;
    background: #fff;
    border: none;
    min-height: 4rem;
    font-size: 1.2rem;
    color: #000;
    text-decoration: none;
    text-align: left;
    height: fit-content;
    padding: 1rem 6rem 1rem 1rem
}

.collapse-questions .card-header .btn:hover {
    transform: scale(1);
    background: #eee
}

.collapse-questions .card-header .btn::after {
    content: '';
    background: url(../svg/arrow-right.svg) center center/1rem no-repeat;
    width: 2rem;
    height: 100%;
    position: absolute;
    right: 2rem;
    transform: rotate(90deg);
    top: 0
}

.collapse-questions .card-header .btn.collapsed::after {
    transform: rotate(270deg)
}

.collapse-questions .card-body {
    color: gray
}

.btn.btn-sand {
    width: 100%;
    background: #fff;
    color: #444;
    font-size: 1.2em;
    padding: 0.1rem 0.4rem;
    border-radius: 0.4em;
    border-color: #bdbcb0;
    box-shadow: 0 0 2rem 0 #bdbcb0, 0 0.3rem 0.5rem 0 #bdbcb0;
}
.btn.btn-sand img {
    height: 1.6em;
    width: auto;
    margin-right: 1em;
    color: #ed114e;
}
.btn.btn-sand span {
    display: inline-block;
    text-align: left;
    min-width: 190px;
    white-space: nowrap;
}
.btn.btn-sand span br {

}
@media (min-width: 576px) {
    .btn.btn-sand span br {
        display: none;
    }

}
@media (max-width: 575px) {
    .btn.btn-sand {
        display: flex;
        justify-content: flex-start;
    }
    .btn.btn-sand span {
        min-width: 0;
        flex-grow: 1;
    }
    .btn.btn-sand i {
        margin-right: 0.4em;
    }

}
.btn.btn-sand:hover {

}


.ktcslider-block {
    position: relative;
    clear: both;
    overflow: hidden;
    /* padding: 4% 0px 1% 0px !important;*/
}
.ktcslider-block:before {
    background-image: url(/local/templates/cg21/img/shape-top.png);
    background-size: 100% 100%;
    background-position: top center;
    background-repeat: no-repeat;
    z-index: 10;
    pointer-events: none;
    display:block;
    content: '';
    position:absolute;
    left:-1%;
    top:0;
    width:102%;
    height:0;
    padding-bottom:10%;
}
.ktcslider-block:after{
    background-image: url(/local/templates/cg21/img/shape-bottom.png);
    background-size: 100% 100%;
    background-position: bottom center;
    background-repeat: no-repeat;
    z-index: 10;
    pointer-events: none;
    display:block;
    content: '';
    position:absolute;
    left:-1%;
    bottom:0;
    width:102%;
    height:0;
    padding-top:10%;
}
.ktcslider {
    width: 100%;
    overflow: hidden;
    position: relative;
    z-index: 5;
    margin:0 !important;
}
.ktcslider .slick-list {

}
.ktcslider .slick-track {

}

.ktcslider .slick-slide .item {
    display: block;
    position: relative;
    width: 100%;
    max-width: 100vw;
    padding-bottom: 900px;
    height: 0;
}

.ktcslider .slick-slide .item picture,
.ktcslider .slick-slide .item video {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    /* max-height: 700px; */
    object-fit: cover;
    object-position: center;
    z-index: 1;
    left: 0;
    top: 0;
}
.ktcslider .slick-slide .item picture {

}
.ktcslider .slick-slide .item picture img {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

.ktcslider .slick-slide .item:before {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: transparent;
    background: linear-gradient(13deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.3) 45%, rgba(0, 0, 0, 0) 86%, rgba(0, 0, 0, 0) 100%);
    background-position: bottom left;
    content: '';
    background-size: 100% 100%;
    z-index: 2;
    pointer-events: none;
}
.ktcslider .slick-slide .item .inner {
    display: flex;
    position: absolute;
    flex-direction: column;
    justify-content: end;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    padding-bottom: calc(14% + 40px);
    align-items: flex-start;
    z-index: 10;

}

.ktcslider .slick-slide .item .inner .container {
    position: relative;

}
.ktcslider .slick-slide .item .inner .inner-content{
    position: relative;
    max-width:700px;
}

.ktcslider .slick-slide .item .inner .up_title {
    color: #fff;
    text-shadow: 0 0 2px #333;
    font-size: 20px;
}
.ktcslider .slick-slide .item .inner .title {
    color: #fff;
    text-shadow: 0 0 2px #333;
    font-size: 54px;
}
.ktcslider .slick-slide .item .inner .sub_title {
    color: #fff;
    text-shadow: 0 0 2px #333;
    font-size: 22px;
}
.ktcslider .slick-slide .item .inner .text {
    color: #fff;
    text-shadow: 0 0 2px #333;
    font-size: 18px;
    line-height: 1.4;
    margin: 20px 0;
}
.ktcslider .slick-slide .item .inner .btn {
    display: inline-flex;
    background-color: #ccc !important;
    color: #333;
    width: auto;
    min-width: 0;
    max-width: none;
}

.ktcslider .slick-slide .item .inner .btn:hover {
    color: #fff;
    background-color: #666 !important;
}

@media (max-width: 991px) {

    .ktcslider-block {
    }
    .ktcslider .slick-slide .item picture,
    .ktcslider .slick-slide .item video {

    }
    .ktcslider .slick-slide .item .inner {

    }
}
@media (max-width: 767px) {
    .ktcslider-block {
    }

    .ktcslider .slick-slide .item {
        padding-bottom: 600px;
    }
    .ktcslider .slick-slide .item picture,
    .ktcslider .slick-slide .item video {
        height: 700px;
        max-height: 700px;
    }
    .ktcslider .slick-slide .item .inner {

    }
    .ktcslider .slick-slide .item .inner .inner-content{
        padding: 0 1rem;
    }
}
@media (max-width: 575px) {
    .ktcslider-block {
        /* padding: 5% 0px 0% 0px !important;*/
    }

    .ktcslider .slick-slide .item picture,
    .ktcslider .slick-slide .item video {
        height: 750px;
        max-height: 750px;
    }
    .ktcslider .slick-slide .item .inner {

    }
    .ktcslider .slick-slide .item .inner .title {
        font-size: 42px;
    }
    .ktcslider .slick-slide .item .inner .text {
        line-height: 1.2;
        font-size: 14px;
    }
}
.ktcslider .slick-dots {
    position: absolute;
    right: 11%;
    bottom: 15%;
    width: auto;
    display: flex;
}
.ktcslider .slick-dots li {
    display: block;
    width: 16px;
    height: 16px;
    border: 1px solid #fff;
    border-radius: 50%;
    margin: 4px 5px;
    opacity: 0.7;
}
.ktcslider .slick-dots li span {
}
.ktcslider .slick-dots li.slick-active {
    background-color: #fff;
}
.ktcslider .slick-dots li.slick-active span {
}




.pagination {
    display: -ms-flexbox;
    display: flex;
    padding-left: 0;
    list-style: none;
    border-radius: .25rem
}

.page-link {
    position: relative;
    display: block;
    padding: .8rem 1rem;
    margin-left: -1px;
    line-height: 1.25;
    color: #4a4a4a;
    background-color: #fff;
    border: 1px solid #dee2e6
}

.page-link:hover {
    z-index: 2;
    color: #0056b3;
    text-decoration: none;
    background-color: #e9ecef;
    border-color: #dee2e6
}

.page-link:focus {
    z-index: 2;
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .25)
}

.page-item:first-child .page-link {
    margin-left: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius:0
}

.page-item:last-child .page-link {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.page-item.active .page-link {
    z-index: 1;
    color: #fff;
    background-color: #e5194b;
    border-color: #e5194b;
}

.page-item.disabled .page-link {
    color: #6c757d;
    pointer-events: none;
    cursor: auto;
    background-color: #fff;
    border-color: #dee2e6
}

.pagination-lg .page-link {
    padding: .75rem 1.5rem;
    font-size: 1.25rem;
    line-height: 1.5
}

.pagination-lg .page-item:first-child .page-link {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.pagination-lg .page-item:last-child .page-link {
    border-top-right-radius: 0;
    border-bottom-right-radius: .3rem
}

.pagination-sm .page-link {
    padding: .25rem .5rem;
    font-size: .875rem;
    line-height: 1.5
}

.pagination-sm .page-item:first-child .page-link {
    border-top-left-radius: .2rem;
    border-bottom-left-radius: .2rem
}

.pagination-sm .page-item:last-child .page-link {
    border-top-right-radius: .2rem;
    border-bottom-right-radius: .2rem
}



/*Опросник*/
.wrappers {
        width: 430px;
        height: auto;
      }
      .exmpl {
        overflow: hidden;
        display: flex;
        justify-content: center;
        align-items: center;
      }
      .exmpl img {
        height: 100%;
        width: auto;
      }

.poll {
	text-transform: uppercase;
	text-align: center;
    color: #000; /* Fallback for older browsers */
    color: rgba(0, 0, 0, 0.5);
}

.poll2 {
	text-align: center;
}

.popup-fade {
	display: none;
}

/*.poll{
	color: #000; 
    color: rgba(0, 0, 0, 0.5);
    font-size: 16pt;
}*/

.step2 {
	display: none;
}

.popup-fade:before {
	content: '';
	background: #000;
	position: fixed; 
	left: 0;
	top: 0;
	width: 100%; 
	height: 100%;
	opacity: 0.7;
	z-index: 9999;
}
.popup {
	position: fixed;
	top: 20%;
	left: 50%;
	padding: 20px;
	width: 470px;
	margin-left: -200px;	
	background: #fff;
	border: 1px solid orange;
	border-radius: 4px; 
	z-index: 99999;
	opacity: 1;	
	font-size: 18px;
}
.popup-close {
	position: absolute;
	top: 10px;
	right: 10px;
}


#widjetmain{
    background-color: #fff;
    width: 500px;
    height: 400px;
    position: fixed;
    top: -450px;
    left: 50%;
    margin-left: -250px;
    border-radius: 0 0 10px 10px;
    box-shadow: 0px 0px 6px 0px #806F6F;
    z-index: 999;
}

form {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

label {
  display: flex;
  cursor: pointer;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  margin-bottom: 0.375em;
  /* Accessible outline */
  /* Remove comment to use */
  /*
    &:focus-within {
        outline: .125em solid $primary-color;
    }
  */
}
label input {
  position: absolute;
  left: -9999px;
}
label input:checked + span {
  background-color: #d6d6e5;
}
label input:checked + span:before {
  box-shadow: inset 0 0 0 0.4375em #00005c;
}
label span {
  display: flex;
  align-items: center;
  padding: 0.375em 0.75em 0.375em 0.375em;
  border-radius: 99em;
  transition: 0.25s ease;
}
label span:hover {
  background-color: #d6d6e5;
}

label span:first-child:not(.b24-form-field-agreement-link):before {
  display: flex;
  flex-shrink: 0;
  content: "";
  background-color: #fff;
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
  margin-right: 0.375em;
  transition: 0.25s ease;
  box-shadow: inset 0 0 0 0.125em #00005c;
}

.containers {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
}


@media(max-width:480px){
	.popup {
	width: 380px;
	}
	
	.wrappers {
        width: 360px;
        height: auto;
      }
}

/*END Опросник*/


/*СТИЛИ ДЛЯ ФОРМЫ ОБРАТНОГО ЗВОНКА С БИТРИКС24*/

/* Основные стили для чекбокса согласия */
.b24-form-field-agreement .b24-form-control-container {
    display: flex;
    align-items: flex-start;
}

.b24-form-field-agreement input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}



/* Стили для активного состояния */
.b24-form-field-agreement input[type="checkbox"]:checked + .b24-form-control-desc {
    opacity: 1;
    background-color: #d6d6e5;
}

/* Псевдо-элемент для визуального чекбокса */
.b24-form-field-agreement .b24-form-control-desc::before {
    content: "";
    display: flex;
    flex-shrink: 0;
    background-color: #fff;
    width: 1.5em;
    height: 1.5em;
    border-radius: 50%;
    margin-right: 0.375em;
    transition: 0.25s ease;
    box-shadow: inset 0 0 0 0.125em #00005c;
}

.b24-form-field-agreement input[type="checkbox"]:checked + .b24-form-control-desc::before {
    box-shadow: inset 0 0 0 0.375em #00005c;
    background-color: #00005c;
}

.well.well-shops .extra {
	font-family: 'TD Afisha';
	font-size: 1.8em;
}

#scrollTopBtn {
    display: none;
    position: fixed;
    bottom: 2rem;
    right: 4rem;
    z-index: 99;
    width: 4rem;
    height: 4rem;
    border: none;
    outline: none;
    background: #ed1651;
    color: #fff;
    cursor: pointer;
    border-radius: 50%;
    box-shadow: 0 0 2rem 0 rgba(248, 26, 87, 0.42), 0 .3rem .5rem 0 rgba(0, 0, 0, 0.13);
    transition: all .25s ease-in-out;
}

#scrollTopBtn::before {
    content: "";
    display: block;
    width: .8rem;
    height: .8rem;
    border-top: 3px solid #fff;
    border-left: 3px solid #fff;
    transform: rotate(45deg) translate(.1rem, .2rem);
    transition: all .2s ease;
    position: relative;
    left: calc(50% - .4rem);
}

#scrollTopBtn:hover {
    transform: scale(1.03);
}

@media (max-width: 768px) {
    #scrollTopBtn {
        bottom: 4rem;
        right: 1.5rem;
        width: 3.5rem;
        height: 3.5rem;
    }
}

@media (max-width: 575px) {
    #scrollTopBtn {
        right: 1rem;
        width: 3rem;
        height: 3rem;
    }
    
    #scrollTopBtn::before {
        width: .6rem;
        height: .6rem;
        border-width: 2px;
        left: calc(50% - .3rem);
    }
}

/* ===== Модальное окно 18+ ===== */
.age-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(20, 24, 18, 0.75);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}

.age-modal {
  position: relative;
  width: 100%;
  max-width: 460px;
  box-sizing: border-box;
  padding: 40px 36px 32px;
  background: #ffffff;
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  text-align: center;
  animation: ageModalIn 0.3s ease;
}

@keyframes ageModalIn {
  from { opacity: 0; transform: translateY(20px) scale(0.97); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}

/* Бейдж 18+ */
.age-modal__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: #ed1651;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.5px;
}

.age-modal__title {
  margin: 0 0 14px;
  font-size: 24px;
  line-height: 1.3;
  font-weight: 700;
}

.age-modal__text {
  margin: 0 0 28px;
  font-size: 15px;
  line-height: 1.55;
}

/* Кнопки */
.age-modal__buttons {
  display: flex;
  gap: 12px;
}

.age-btn {
  flex: 1;
  padding: 14px 20px;
  border: none;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.1s ease, color 0.2s ease;
}

.age-btn--yes {
  background: #ed1651;
  color: #fff;
}
.age-btn:hover {transform: scale(1.03);}

.age-btn--no {
  background: #eef0eb;
}

/* Мобильная адаптация */
@media (max-width: 480px) {
  .age-modal {
    padding: 32px 22px 24px;
    border-radius: 16px;
  }
  .age-modal__title { font-size: 20px; }
  .age-modal__text  { font-size: 14px; }
  .age-modal__buttons { flex-direction: column-reverse; }
}

/* Блокировка прокрутки при открытом окне */
body.age-modal-locked {
  overflow: hidden;
}




.cg-faq__question::marker {
    content: "";
}

.faq-block_det .faq-answer {
    position: relative;
    margin: -8px 0 24px;
    padding-left: 16px;
    color: #687386;
    font-size: 16px;
    line-height: 1.5;
}

.faq-block_det .faq-answer::before {
    position: absolute;
    top: 0;
    left: 0;
    color: #f26b21;
    content: "•";
    font-size: 18px;
    line-height: 1.3;
}

.cg-faq__title {
    margin: 0 0 28px;
}

.cg-faq__list {
    border-top: 1px solid #dfe4eb;
}

.cg-faq__item {
    border-bottom: 1px solid #dfe4eb;
}

.cg-faq__question {
    position: relative;
    display: block;
    padding: 23px 52px 23px 0;
    color: #0c1420;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    cursor: pointer;
    list-style: none;
}

.cg-faq__question::-webkit-details-marker {
    display: none;
}

.cg-faq__question::after {
    position: absolute;
    top: 50%;
    right: 4px;
    color: #ee1854;
    content: "→";
    font-family: Arial, Helvetica, sans-serif;
    font-size: 26px;
    font-weight: 400;
    line-height: 1;
    transform: translateY(-50%);
    transition: transform .2s ease;
}

.cg-faq__item[open] .cg-faq__question::after {
    transform: translateY(-50%) rotate(90deg);
}

.cg-faq__question:focus-visible {
    outline: 2px solid #f26b21;
    outline-offset: 3px;
}

.cg-faq__answer {
    max-width: 920px;
    padding: 0 48px 24px 0;
    color: #687386;
    font-size: 16px;
    line-height: 1.55;
}

.cg-faq__answer p {
    margin: 0;
}

@media (max-width: 767px) {
    .cg-faq__question {
        padding: 18px 42px 18px 0;
        font-size: 17px;
    }

    .cg-faq__answer {
        padding: 0 36px 20px 0;
        font-size: 15px;
    }
}
/* Desktop layout stability: reserve the carousel before JS and image decoding. */
@media (min-width: 991px) {
 .mainpage-slider:not(.slick-initialized) > .item:not(:first-child) { display: none; }
 .mainpage-slider .item .image { aspect-ratio: 610 / 400; margin: 0; }
 .mainpage-slider .item .image img { height: 100%; width: 100%; object-fit: contain; margin: 0; }
 .mainpage-slider .slick-list { margin: 0; padding: 0; }
}
@media (min-width: 991px) {
 .mainpage-slider { position: relative; aspect-ratio: 610 / 400; }
 .mainpage-slider > .item, .mainpage-slider > .slick-list { position: absolute; inset: 0; width: 100%; height: 100%; }
 .mainpage-slider > .item:not(:first-child) { display: none; }
 .mainpage-slider .slick-track { height: 100%; }
}

/* Reserve mobile hero space during carousel initialization and image loading. */
@media (max-width: 990px) {
 .mainpage-slider { position: relative; aspect-ratio: 610 / 400; padding: 0; margin-top: 2rem; margin-bottom: 3.5rem !important; overflow: visible; }
 .mainpage-slider > .item, .mainpage-slider > .slick-list { position: absolute; inset: 0; width: 100%; height: 100%; }
 .mainpage-slider > .item:not(:first-child) { display: none; }
 .mainpage-slider .slick-track { height: 100%; }
 .mainpage-slider .item { padding: 0; }
 .mainpage-slider .item .image { aspect-ratio: 610 / 400; margin: 0; }
 .mainpage-slider .item .image img { height: 100%; width: 100%; object-fit: contain; margin: 0; }
 .mainpage-slider .slick-list { margin: 0; padding: 0; }
 .mainpage-slider .slick-dots { bottom: -2.5rem; }
}

@media(max-width:990px){
.mainpage-slider.cg-native-hero>.item[hidden]{display:none!important}
.mainpage-slider.cg-native-hero>.item:not([hidden]){display:block!important}
.mainpage-slider.cg-native-hero{touch-action:pan-y}
.mainpage-slider.cg-native-hero>.slick-arrow{z-index:2}
.mainpage-slider.cg-native-hero>.slick-arrow:disabled{opacity:.25;cursor:default}
}

@media(max-width:990px){
.mainpage-slider img{visibility:visible!important}
.mainpage-slider.cg-native-hero>.slick-dots{bottom:-2.5rem}
}

@media(max-width:990px){
.cg-home #main-content>div:nth-child(n+4){content-visibility:auto;contain-intrinsic-size:auto 700px}
.cg-home .left-menu:not(.active){content-visibility:hidden}
}

@font-face{font-family:"CG FA Solid";font-style:normal;font-weight:900;font-display:swap;src:url("/local/templates/cg21/fonts/cg-fa-solid-900.woff2") format("woff2");unicode-range:U+F002,U+F004,U+F005,U+F007,U+F00D,U+F015,U+F017,U+F02C,U+F04B,U+F059,U+F065,U+F073,U+F084,U+F0A3,U+F0C1,U+F0C4,U+F0D1,U+F0E0,U+F105,U+F124,U+F129,U+F133,U+F14A,U+F15C,U+F182,U+F183,U+F1B0,U+F276,U+F279,U+F291,U+F2A0,U+F2E7,U+F35D,U+F3C5,U+F439,U+F541,U+F77C,U+F879}.fa,.fas{font-family:"CG FA Solid","Font Awesome 5 Free"}
@font-face{font-family:"CG FA Regular";font-style:normal;font-weight:400;font-display:swap;src:url("/local/templates/cg21/fonts/cg-fa-regular-400.woff2") format("woff2");unicode-range:U+F004,U+F005,U+F007,U+F017,U+F059,U+F073,U+F0E0,U+F133,U+F14A,U+F15C,U+F279}.far{font-family:"CG FA Regular","Font Awesome 5 Free"}
@font-face{font-family:"CG FA Brands";font-style:normal;font-weight:400;font-display:swap;src:url("/local/templates/cg21/fonts/cg-fa-brands-400.woff2") format("woff2");unicode-range:U+F167,U+F189,U+F232,U+F2C6}.fab{font-family:"CG FA Brands","Font Awesome 5 Brands"}
@media(max-width:990px){.cg-home footer{content-visibility:auto;contain-intrinsic-size:auto 650px}}

@media(max-width:990px){.cg-home .gradient{animation:none!important;background-position:0 0}}
