:root {
    --primary-color: #8660B0;
    --secondary-color: #FFCF03;
    --text-color: #5d5c5d;
    --background-color: #ffffff;
}
*{
    color: inherit;
    font-family: 'VAG Rounded Next';
}
html,
body{
    color: var(--text-color) !important;
    overflow-x: hidden;
}
img{
    max-width: 100%;
    height: auto;
}
a{
    text-decoration: none;
    color: inherit;
}
b, strong{
    font-weight: 700;
}
header{
    padding: 0 0 30px;
    position: relative;
    z-index: 10;
}
.header_main{
    padding: 40px 0;
}
header .container,
.main_slider .container,
.decor_slider .container{
    max-width: 1600px;
}
header a{
    text-decoration: none;
    color: inherit;
}
nav.lang-switcher {
    display: flex;
    gap: 16px;
}
.lang-btn {
    font-size: 14px;
    width: 35px;
    height: 35px;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    border: 3px solid var(--primary-color);
    border-radius: 100%;
    color: var(--primary-color);
}
span.lang-btn.active{
    color: #fff;
    background-color: var(--primary-color);
}
.top_socs {
    font-size: 12px;
    gap: 10px;
    display: flex;
    align-items: center;
}
.top_phone{
    color: var(--primary-color);
    font-weight: 500;
}
.top_butt{
    color: var(--primary-color);
    background-color:var(--secondary-color);
    font-weight: 500;
    font-size: 16px;
    padding:10px 25px;
    border-radius: 9px;
    border: 1px solid #8660b0;
    box-shadow: 1px 1px 0 0 #8660b0;
    cursor: pointer;
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.top_butt:hover{
    transform: scale(1.07);
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.gap-30{
    gap: 30px;
}
nav.menu ul{
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 16px;
    color:#5d5c5d;
    font-weight: 700;
}
nav.menu ul li {
    position: relative;
}
nav.menu ul ul {
    display: none;
    position: absolute;
    top: 99%;
    left: 0;
    background-color: #fff;
    box-shadow: rgba(134, 96, 176, 0.33) 0px 0px 21px 0px;
    border-radius: 10px;
    overflow: hidden;
}
nav.menu ul ul li a {
    display: block;
    padding: 10px 21px;
    text-wrap-mode: nowrap;
    border-bottom: 1px solid #8660b055;
}
nav.menu ul li:hover>ul{
    display: block;
}
nav.menu a:hover{
    color: var(--primary-color);
}
.main_slider{
    text-align: center;
    padding: 200px 0;
    background: url(/images/main-slide24.jpg) center center/cover no-repeat;
}
.sl_zag {
    font-size: 50px;
    font-weight: 600;
    color: #E52142;
    text-transform: uppercase;
    line-height: 1;
}
.sl_text {
    font-weight: 300;
    font-size: 37px;
    color: #5D5C5D;
    margin: 30px 0;
}

.sl_text span {
    font-weight: 600;
}
.sl_butt{
    display: inline-block;
    color: var(--primary-color);
    background-color:var(--secondary-color);
    font-weight: 500;
    font-size: 25px;
    padding:10px 75px;
    border-radius: 9px;
    border: 1px solid #8660b0;
    box-shadow: 1px 1px 0 0 #8660b0;
    cursor: pointer;
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.sl_butt:hover{
    transform: scale(1.07);
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.section{
    padding: 60px 0;
    position: relative;
    z-index: 1;
}
.section .container{
    position: relative;
    z-index: 99;
}
/* Bootstrap: 5 колонок */
.five-columns {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 30px;
}
.six-columns {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 30px;
}
.hd_text{
    font-size: 31px;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    margin: 0 0 60px;
}
.hd_text span{
    color: var(--primary-color);
}
.fa_item {
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    padding: 30px 0;
    border-radius: 10px;
    min-height: 250px;
}
.fa_item.fa_item1 {
    background-color: #EBE2FF;
    color: #5C75C7;
}
.fa_item.fa_item2 {
    background-color: #D3F1FB;
    color: #1E74B4;
}
.fa_item.fa_item3 {
    background-color: #BFF3E1;
    color: #009A90;
}
.fa_item.fa_item4 {
    background-color: #FFF49F;
    color: #A38917;
}
.fa_item.fa_item5 {
    background-color: #F8E4E7;
    color: #DB3B52;
}
.fa_item.fa_item6 {
    background-color: #FFD5BC;
    color: #A66D4B;
}
.fa_img {
    min-height: 110px;
    margin: 0 0 15px;
}
.rest_item{
    padding: 258px 0 0;
    border-radius: 30px;
    box-shadow: 2px 3px 3px 0 #d9d9d9;
    position: relative;
}
.rest_link {
    color: var(--primary-color);
    background-color: var(--secondary-color);
    font-weight: 500;
    font-size: 16px;
    padding: 3px 25px;
    border-radius: 9px;
    border: 1px solid var(--primary-color);
    box-shadow: 1px 1px 0 0 var(--primary-color);
    display: inline-block;
    position: absolute;
    top: 7px;
    right: -21px;
    transform: rotate(21deg);
}
.rest_item1{
    background: url(/images/rest1.jpg) center top/cover no-repeat;
}
.rest_item2{
    background: url(/images/rest2.jpg) center top/cover no-repeat;
}
.rest_item3{
    background: url(/images/rest3.jpg) center top/cover no-repeat;
}
.rest_cont{
    background: url(/images/rest24.svg) center center/cover no-repeat;
    text-align: center;
    padding: 118px 0 30px;
}
.rest_name {
    font-size: 31px;
    line-height: 1;
}
.rest_addr {
    font-size: 18px;
    color: #DFA9B5;
    margin: 10px 0;
}
.rest_butt,
.ep_butt{
    color: var(--primary-color);
    background-color: var(--secondary-color);
    font-weight: 500;
    font-size: 16px;
    padding: 10px 25px;
    border-radius: 9px;
    border: 1px solid var(--primary-color);
    box-shadow: 1px 1px 0 0 var(--primary-color);
    display: inline-block;
}
.cb_hd_text{
    font-size: 33px;
    text-transform: uppercase;
    font-weight: 600;
    line-height: 1.21;
    margin: 0 0 30px;
}
.every_park ul {
    margin: 0 0 30px;
    padding: 0 0 0 24px;
    list-style: disc;
}
.every_park ul li {
    margin: 0 0 21px;
    font-size: 25px;
}
.ep_butt{
    text-decoration: none;
    padding: 8px 63px;
}
.hbday{
    background: url(/images/bday-bg24.svg) center center/cover no-repeat;
    padding: 150px 0;
}
.cb_text {
    margin: 0 0 45px;
}
.cb_butt,
.order_cake{
    cursor: pointer;
    color: var(--primary-color);
    background-color: var(--secondary-color);
    font-weight: 500;
    font-size: 16px;
    padding: 10px 25px;
    border-radius: 9px;
    border: 1px solid var(--primary-color);
    box-shadow: 1px 1px 0 0 var(--primary-color);
    display: inline-block;
    transform: scale(1.00);
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.cb_butt:hover,
.order_cake:hover{
    transform: scale(1.07);
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.mclasses{
    margin: -150px 0 0;
}
.hcakes{
    background: url(/images/cakes-bg24.svg) center center/cover no-repeat;
    padding: 150px 0;
    margin: -150px 0 0;
}
.andersen_at_home{
    background: url(/images/home-bg24.svg) center center/cover no-repeat;
    padding: 150px 0;
    margin: -150px 0;
}
.andersen_at_home img,
.owner img{
    max-width: none;
}
.owner{
    background: url(/images/ost1.png) left 3% top no-repeat, url(/images/ost2.png) left 1% top 30% no-repeat, url(/images/ost3.png) right top no-repeat, url(/images/ost4.png) bottom 10% right 10% no-repeat;
}
.owner_hd {
    font-size: 31px;
    font-weight: 600;
    margin: 0 0 30px;
}
.owner_txt span{
    color:#DFA9B5;
}
.cta_order{
    background: url(/images/cta-bg24.svg) center bottom no-repeat;
    padding: 200px 0;
}
.cta_hd{
    color: var(--primary-color);
    text-transform: uppercase;
    font-weight: 800;
    font-size: 51px;
    line-height: 1.21;
}
.cta_form_text {
    color: #fff;
    font-size: 33px;
    padding: 30px 0;
}
form.cta_form{
    color: #fff;
}
.form_row{
    display: block;
    margin-bottom: 18px;
}
form.cta_form input,
form.cta_form select {
    width: 100%;
    border-radius: 7px;
    box-shadow: none;
    border: 0;
    padding: 10px 21px;
    color: #D9D9D9;
}
form.cta_form input::placeholder {
    color: inherit;
}
form.cta_form input[type=checkbox]{
    display: inline-block;
    float: left;
    width: auto;
}
form.cta_form input[type=submit]{
    color: var(--primary-color);
    background-color: var(--secondary-color);
    font-weight: 500;
    font-size: 16px;
    padding: 10px 25px;
    border-radius: 9px;
    border: 1px solid var(--primary-color);
    box-shadow: 1px 1px 0 0 var(--primary-color);
    display: inline-block;
    width: auto;
}
.go_to_faq {
    color: #5D5C5D;
    display: flex;
    align-items: center;
    padding: 10px 30px;
    gap: 60px;
    width: 100%;
    justify-content: center;
    box-shadow: 0 0 10px 0 #ccc3e1;
    border-radius: 25px;
    position: relative;
}
.go_to_faq:before{
    display: block;
    content: '';
    width: 111px;
    height: 111px;
    background: url(/images/faq-gift24.png) center center no-repeat;
    position: absolute;
    top: -50%;
    left: 10%;
}
.gtf_hd{
    text-transform: uppercase;
    font-size: 30px;
    font-weight: 600;
}
.news{
    background: url(/images/news-bg24.png) right bottom no-repeat, url(/images/news-bg42.png) left 100px bottom 100px no-repeat;
}
.block_hd {
    text-align: center;
    font-weight: 600;
    font-size: 31px;
    text-transform: uppercase;
    color: var(--text-color);
    position: relative;
    margin: 0 0 30px;
}
.gallery .block_hd{
    margin: 0 0 0px;
}
.block_hd span{
    color: var(--secondary-color);
}


.block_hd:after,
.user_form .f_zag:after{
    content: '';
    display: block;
    height: 3px;
    width: 75px;
    margin:5px auto 0;
    background-color: var(--text-color);
}
.news_item{
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 2px 3px 3px 0 #d9d9d9;
}
.news_item img{
    width: 100%;
    height: auto;
    position: relative;
    z-index: 0;
}
.news_cont{
    padding:60px 21px 21px;
    margin: -60px 0 0;
    background: url(/images/news24.png) no-repeat top left;
    background-size: 100% 100%;
    position: relative;
    z-index: 1;
    min-height: 310px;
}
.news_cont svg {
    display: block;
    width: 100%;
    height: 100%;
}
.news_date {
    font-weight: 200;
    font-size: 14px;
    color: var(--text-color);
}
.news_title {
    font-weight: 900;
    font-size: 20px;
    line-height: 1;
    text-transform: uppercase;
    color: var(--text-color);
    margin: 10px 0;
    display: block;
}
.news_excerpt {
    font-weight: 400;
    font-size: 12px;
    color: var(--text-color);
}
.go_more {
    font-weight: 500;
    font-size: 14px;
    color: var(--secondary-color);
    text-transform: uppercase;
}
.all_news {
    display: block;
    text-align: center;
    text-transform: uppercase;
}
a.all_news span {
    color: var(--secondary-color);
}
.slick-slider{
    position: relative;
}
.slick-list {
    overflow: hidden;
    position: relative;
    z-index: 0;
}
.slick-slide{
	float:left;
}
.news_slider .slick-list {
	margin: 0 10px;
}
.news_slider .slick-slide{
    padding: 0 20px;
}
ul.slick-dots {
    list-style: none;
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin: 30px 0;
}
ul.slick-dots button {
    display: none;
}
ul.slick-dots li {
    width: 10px;
    height: 10px;
    background-color: #d9d9d9;
    border-radius: 100%;
    margin: 0 5px;
}
ul.slick-dots li.slick-active {
    background-color: #8660b0;
}
.gal_text {
    margin: 10px 0 30px;
}
.subscribe_instagram {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: space-between;
    box-shadow: 0 0 21px 0 #ccc3e1;
    border-radius: 25px;
    position: relative;
    padding-right: 140px;
}
.subscribe_text {
    text-align: center;
    font-weight: 300;
    font-size: 27px;
}
.subscribe_hd {
    font-size: 33px;
    font-weight: 600;
    line-height: 1.21;
}
.subscribe_link a {
    font-weight: 600;
    font-size: 38px;
}
img.si1 {
    margin-top: -40px;
    margin-bottom: -40px;
    position: relative;
    transform: scale(0);
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
img.si1.animated{
    animation: pulseOnce 1s forwards;
}
@keyframes pulseOnce {
    0% {
        transform: scale(1);
    }
    40% {
        transform: scale(1.2); /* сначала увеличиваем */
    }
    55% {
        transform: scale(1.15); /* маленький откат */
    }
    70% {
        transform: scale(1.2); /* снова чуть увеличиваем */
    }
    85% {
        transform: scale(1.18); /* слегка уменьшаем */
    }
    100% {
        transform: scale(1); /* финальный размер */
    }
}
img.si2 {
    position: absolute;
}
.subscribe_container{
    padding: 150px 0;
}
.gallery{
    background: url(/images/mg-bg24.png) left 100px top no-repeat;
}
#main_gallery img,
.big_gallery img{
    border-radius: 25px;
    overflow: hidden;
    padding: 0 3px;
}
.slick-arrow{
    position: absolute;
    display: block;
    width: 60px;
    height: 60px;
    top: 50%;
    left: -100px;
    z-index: 1;
    transform: translateY(-50%);
    cursor: pointer;
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.slick-arrow:hover{
    scale:1.07;
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.slick-arrow.left-arrow{
    background: url(/images/prev-arrow24.svg) center center/cover no-repeat;
}
.slick-arrow.right-arrow{
    background: url(/images/next-arrow24.svg) center center/cover no-repeat;
    left: auto;
    right: -100px;
}
.insta_rev_slider .slick-slide{
    padding: 100px 30px;
    transform: scale(1);
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.slick-active.slick-center{
    transform: scale(1.21);
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.insta_reviews.section .block_hd span {
    color:var(--primary-color);
}
.go_to_faq_container{
    padding: 100px 0;
}
.go_to_faq_container .animated img{
    animation: swayOnce 1s forwards;
}
@keyframes swayOnce {
    0% { transform: rotate(0deg); }
    15% { transform: rotate(10deg); }
    30% { transform: rotate(-10deg); }
    45% { transform: rotate(8deg); }
    60% { transform: rotate(-8deg); }
    75% { transform: rotate(5deg); }
    90% { transform: rotate(-5deg); }
    100% { transform: rotate(0deg); }
}
footer {
    background-color: #948ECE;
    padding: 45px 0;
    color: #fff;
    font-size: 16px;
}
.ft_text{
    padding: 15px 0 0;
    font-size: 14px;
}
ul{
    list-style: none;
    margin: 0;
    padding: 0;
}
footer ul{
    margin:30px 0 0;
}
.ft_phone{
    display: block;
    font-size: 36px;
    font-weight: 600;
}
.ft_mail a {
    display: block;
}
.ft_socs{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 45px 0;
}
.ft_socs a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 3px solid #fff;
    border-radius: 100%;
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.ft_socs a svg {
    width: 21px;
    fill: #fff;
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.ft_socs a:hover{
    background-color: #fff;
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.ft_socs a:hover svg{
    fill: var(--primary-color);
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.breadcrumbs ul{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    list-style: none;
    margin: 45px 0;
    gap: 15px;
}
.breadcrumbs ul a{
    color:#d9d9d9;
}
.breadcrumbs ul a:after{
    content: '»';
    margin: 0 0 0 15px;
}
.about_parks_block {
    background-color: #CCC3E1;
    border-radius: 25px;
    color: #fff;
    padding: 21px 30px 21px 100px;
    position: relative;
}
.about_parks_block:before{
    content: '';
    display: block;
    position: absolute;
    width: 80px;
    height: 79px;
    background: url(/images/ab-el1.png) center center no-repeat;
    top: 60px;
    left: -30px;
}
.about_parks_block:after{
    content: '';
    display: block;
    position: absolute;
    width: 69px;
    height: 69px;
    background: url(/images/ab-el2.png) center center no-repeat;
    top: 30px;
    right: -30px;
}
.about_parks_block img{
    margin: -103px 0 -30px;
}
.apb_hd {
    text-transform: uppercase;
    margin: 0 0 15px;
    font-size: 36px;
}
.apb_text {
    font-size: 21px;
}
.loyalty .block_hd span{
    color: #DFA9B5;
}
.loyalty_text {
    text-align: center;
    font-size: 21px;
    font-weight: 300;
    margin: 0 0 45px;
}
.loyalty_card {
    text-align: center;
    font-weight: 900;
    font-size: 31px;
    padding: 290px 0 27px;
    line-height: 1;
}
.silver_card{
    background: url(/images/silver-card24.png) center center/cover no-repeat;
}
.golden_card{
    background: url(/images/golden-card24.png) center center/cover no-repeat;
}
.platinum_card{
    background: url(/images/platinum-card24.png) center center/cover no-repeat;
}
.show_container .container,
.candy_shop_container .container,
.decor_container .container,
.banner .container,
.nacinki .container{
    max-width: 1600px;
}
.show_box{
    background: url(/images/show24.jpg) center center/cover no-repeat;
    color: #fff;
    border-radius: 25px;
    padding:77px 0;
    position: relative;
}
.show_hd {
    font-size: 39px;
    font-weight: 600;
}
.show_shd {
    font-size: 29px;
    margin: 0 0 30px;
}
.show_text {
    margin: 0 0 30px;
    font-size: 26px;
    font-weight: 200;
}
.show_box .cb_butt{
    padding:10px 60px;
}
.show_box:after{
    content: '';
    display: block;
    position: absolute;
    width:412px;
    height:524px;
    background: url(/images/hulk24.png) center center/cover no-repeat;
    top: -50px;
    right: -100px;
    filter: drop-shadow(0 4px 3px rgba(0,0,0,0.35))
        drop-shadow(0 10px 8px rgba(0,0,0,0.2))
        drop-shadow(0 15px 20px rgba(0,0,0,0.15));
    transform: scale(0);
    transform-origin: center center;
    transition: transform 0.7s ease-out;
}
.show_box.animated:after{
    transform: scale(1);
}
.wd_text {
    text-align: center;
    font-weight: 300;
    font-size: 21px;
}
.ab_hd_text {
    font-size: 31px;
    font-weight: 500;
    margin: 0 0 30px;
}
.ab_text {
    font-size: 24px;
    font-weight: 300;
}
.happy{
    background: url(/images/happy-bg24.svg) bottom center no-repeat;
    padding: 150px 0 200px;
}
.magic{
    background: url(/images/magic-bg24.svg) bottom center/cover no-repeat;
    padding: 240px 0 240px;
}
.toys{
    background: url(/images/toys-bg24.svg) center center/cover no-repeat;
    padding: 150px 0 150px;
}
.candy_shop_box {
    background-color: #FFE8E8;
    border-radius: 25px;
    padding: 30px 30px 0;
    position: relative;
}
.candy_shop_box:before{
    content: '';
    display: block;
    width: 182px;
    height: 163px;
    background: url(/images/cand1.png) center center no-repeat;
    position: absolute;
    left: -91px;
    top: 150px;
    z-index: 1;
    animation: inimate__one 3s infinite;
}
.candy_shop_box:after{
    content: '';
    display: block;
    width: 197px;
    height: 192px;
    background: url(/images/cand2.png) center center no-repeat;
    position: absolute;
    right: 70px;
    top: -120px;
    z-index: 1;
    animation: inimate__one 3.9s infinite;
}
@keyframes inimate__one {
  0% {
    transform: translate(0, -5%);
    filter: drop-shadow(0 4px 4px rgba(0,0,0,0.15)) drop-shadow(0 8px 10px rgba(0,0,0,0.15));
  }
  50% {
    transform: translate(0%, 0%);
    filter: drop-shadow(0 4px 4px rgba(0,0,0,0.15)) drop-shadow(0 8px 10px rgba(0,0,0,0.15));
  }
  100% {
    transform: translate(0%, -5%);
    filter: drop-shadow(0 4px 4px rgba(0,0,0,0.15)) drop-shadow(0 8px 10px rgba(0,0,0,0.15));
  }
}
.candy_hd {
    font-size: 38px;
    text-transform: uppercase;
    font-weight: 600;
    color: #E52142;
    margin: 0 0 15px;
}
.candy_shd {
    font-size: 28px;
    line-height: 1.21;
    margin: 0 0 15px;
}
.candy_text {
    font-size: 24px;
    font-weight: 200;
    margin: 0 0 15px;
}
.candy_advert {
    font-size: 12px;
    line-height: 1.21;
}
.candy_shop_container .cb_butt {
    margin: 0 0 15px;
}
.decor_box {
    color: #fff;
    background: url(/images/decor24.jpg) center center/cover no-repeat;
    border-radius: 25px;
    padding: 60px;
    position: relative;
}
.decor_box:before{
    content: '';
    display: block;
    width: 232px;
    height: 365px;
    background: url(/images/dec1.png) center center/cover no-repeat;
    position: absolute;
    left: -100px;
    top: 0;
    animation: inimate__one 5.9s infinite;
}
.decor_box:after{
    content: '';
    display: block;
    width: 139px;
    height: 174px;
    background: url(/images/dec2.png) center center/cover no-repeat;
    position: absolute;
    right: -60px;
    top: 50px;
    animation: inimate__one 5s infinite;
}
.decor_hd {
    font-size: 38px;
    line-height: 1.21;
}
.decor_shd {
    font-size: 28px;
    margin: 0 0 15px;
}
.decor_txt {
    font-size: 25px;
    line-height: 1.21;
    font-weight: 200;
    margin: 0 0 30px;
}
.cards_banner{
    background: url(/images/cards24.jpg) center center/cover no-repeat;
    color: #fff;
    padding: 90px 0;
}
.cards_hd {
    font-size: 57px;
    font-weight: 600;
    text-shadow: 3px 3px 6px 0 rgba(0, 0, 0, 0.25);
    margin: 0 0 15px;
}
.cards_text {
    font-size: 28px;
}
.loyalty_rules_block {
    box-shadow: 0 0 21px 0 #8660B077;
    padding: 30px;
    border-radius: 25px;
}
.lrb_hd {
    font-size: 27px;
    font-weight: 600;
    text-transform: uppercase;
    margin: 0 0 15px;
}
.lrb_hd span{
    color: #8660B0;
}
.lrb_thd {
    text-align: center;
    font-size: 24px;
    text-transform: uppercase;
    font-weight: 700;
    margin: 0 0 7px;
}
.lrb_thd span {
    color: var(--primary-color);
}
.loyalty_rules_block ul{
    list-style: disc;
    padding: 0 0 0 30px;
    margin: 0 0 30px;
    font-weight: 300;
    font-size: 18px;
}
.loyalty_rules_block table {
    font-size: 15px;
    text-align: center;
    width: 100%;
    margin: 0 0 30px;
}
.loyalty_rules_block table th{
    background-color: var(--primary-color);
    color: #fff;
    overflow: hidden;
    text-transform: uppercase;
    font-size: 12px;
    padding: 10px 0;
    /*border: 1px solid var(--primary-color);*/
}
.loyalty_rules_block table td{
    border: 1px solid var(--primary-color);
    padding: 15px;
}
.loyalty_rules_block table tr th:first-child{
    border-radius: 20px 0 0 0;
}
.loyalty_rules_block table tr th:last-child{
    border-radius: 0 20px 0 0;
}
.loyalty_rules_block table tr td:first-child{
    font-weight: 700;
    text-transform: uppercase;
}
.lrb_advert {
    font-size: 15px;
    text-align: center;
    color: #d6134a;
    text-transform: uppercase;
}
.abonements,
.gifts{
    box-shadow: 0 0 21px 0 #8660B077;
    padding: 30px;
    border-radius: 25px;
    margin: 45px 0 0;
}
.abonements img{
    border-radius: 15px;
}
.abonements ul{
    margin: 0 0 15px 30px;
    list-style-type: disc;
}
.master_classes img{
    border-radius: 20px;
}
.purple_text{
    color: var(--primary-color);
}
.buiucani_banner{
    background: url(/images/buiucani24.jpg) center center/cover no-repeat;
    padding: 100px 0;
}
h1.restaurant_name {
    font-weight: 600;
    margin: 0 0 30px;
    text-transform: uppercase;
}
.restaurant_text {
    margin: 0 0 30px;
}
.rest_about {
    text-align: center;
    background-color: #F4F0FF;
    border-radius: 27px;
}
.rest_ab_text{
    padding: 30px 30px 0;
    font-size: 29px;
    font-weight: 500;
}
.ab_mail{
    font-size:21px;
}
.rest_ab_hd {
    color: #DFA9B5;
    font-size: 29px;
    font-weight: 500;
    background: url(/images/restabout24.svg) center bottom/100% 100% no-repeat;
    padding: 75px 0 30px;
}
.round_purple_box{
    box-shadow: 0 0 21px 0 #8660B077;
    padding: 30px;
    border-radius: 25px;
}
.rpb_text_hd {
    font-weight: 600;
    font-size: 26px;
    margin: 0 0 15px;
}
.round_purple_box .col-sm-7{
    position: relative;
}
.round_purple_box img{
    border-radius: 20px;
}
a.cb_butt.menu_butt {
    position: absolute;
    top: 0;
    right: 0;
    transform: rotateZ(27deg);
}
.buiucani_zaly .round_purple_box,
.andersen_wait .round_purple_box,
.oformlenie .round_purple_box,
.virtual_world .round_purple_box,
.vr_entertainment .round_purple_box{
    margin: 0 0 45px;
}
.rests_row {
    margin: 0 0 15px;
    font-size: 26px;
}
.rests_name {
    font-weight: 600;
    font-size: 31px;
    text-transform: uppercase;
    color: var(--text-color);
    position: relative;
}
.rests_hd {
    color: #DFA9B5;
    font-weight: 500;
}
.rest_email {
    font-size: 16px;
}
.entertainment{
    text-align: center;
    font-size: 28px;
    font-weight: 500;
}
.entertainment .col-sm-4{
    margin-bottom: 30px;
}
.entertainment .col-sm-4 a{
    display: block;
    margin: 0 0 15px;
    text-transform: uppercase;
}
.no-margin .andersen_at_home{
    margin: 0;
}
.ob-margin .andersen_at_home{
    margin: -50px 0 -150px;
}
.riscani_banner{
    background: url(/images/riscani21.jpg) center center/cover no-repeat;
    padding: 100px 0;
}
.parks_banner{
    background: url(/images/parks24.jpg) center center/cover no-repeat;
    padding: 100px 0;
    color: #fff;
}
.parks_banner h1{
    margin: 0 0 45px;
}
.parks_banner .cb_butt{
    margin: 0 0 45px;
}
.parks_text{
    font-size: 44px;
    color: #00448C;
    line-height: 1.21;
}
.ep_grid_container{
    max-width: 1700px;
    margin: 0 auto;
}
.ep_grid {
    display: grid;
    text-align: center;
    grid-template-columns: repeat(8, 1fr);
    gap: 30px;
}
.ep_grid_item{
    display: block;
    border-radius: 10px;
    background-color:#FEF5C9;
    color:#826C00;
    padding: 15px;
}
.ep_grid_img{
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ep_grid span {
    display: block;
}
.epgi2{
    background-color: #B2DAFF;
    color: #008FDE;
}
.epgi3{
    background-color: #FFFFA2;
    color:#CAC405;
}
.epgi4{
    background-color: #FFDDE2;
    color:#DE3636;
}
.epgi5{
    background-color: #D8DBFF;
    color:#7161AB;
}
.epgi6{
    background-color: #CDFDFF;
    color:#01AFDC;
}
.epgi7{
    background-color: #DEFFC4;
    color:#4D8A00;
}
.epgi8{
    background-color: #fef5c9;
    color: #9E881D;
}
.epgi9{
    background-color: #b3e9ed;
    color: #28878e;
}
.epgi10{
    background-color: #d3f1fb;
    color: #0e82a9;
}
.epgi11{
    background-color: #FFD5BC;
    color: #A66D4B;
}
.select_park .round_purple_box{
    margin: 0 0 45px;
}
.sp_header{
    font-size: 36px;
}
.andersen_abonament{
    background:url(/images/abon1.png) left center no-repeat, url(/images/abon2.png) right center/contain no-repeat, url(/images/abonements24.svg) center center no-repeat;
}
.andersen_toys{
    background: url(/images/abonements24.svg) center center no-repeat;
}
.vak_hd_text {
    font-weight: 600;
    font-size: 38px;
    margin: 0 0 21px;
    color: var(--primary-color);
}
.vak_item{
    font-size: 15px;
    margin: 0 0 44px;
}
.vak_name {
    font-weight: 500;
    font-size: 21px;
    margin: 0 0 24px;
    color: var(--primary-color);
}
.vak_text{
    margin: 0 0 24px;
}
.vak_detail_title {
    font-weight: 700;
    margin: 0 0 24px;
}
.vak_detail_text {
    margin: 0 0 24px;
}
.vak_detail_text ul {
    list-style: disc;
    margin: 0 0 0 30px;
}
ul.price_tab_switch {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    margin: 0 0 45px;
    font-weight: 600;
    font-size: 31px;
}
ul.price_tab_switch .active{
    color: var(--primary-color);
}
.prices_parents_child .round_purple_box {
    margin: 0 0 45px;
    position: relative;
    padding-left: 200px;
}
.ppc_box{
    font-weight: 300;
    font-size: 18px;
}
.ppc_title {
    font-weight: 500;
    font-size: 25px;
    text-transform: uppercase;
}
.ppc_title span{
    color: #DFA9B5;
}
.ppc_box img {
    position: absolute;
    bottom: 0;
    left: 64px;
}
.mc_title {
    text-align: center;
    font-weight: 600;
    font-size: 31px;
    margin: 0 0 30px;
}
.gift_cards{
    background: url(/images/gift-cards24.jpg) center center/cover no-repeat;
}
.gift_cards .cb_hd_text span{
    color: var(--primary-color);
}
.holidays_banner{
    background: url(/images/prazdniki24.jpg) center center/cover no-repeat;
    padding: 150px 0;
    color: #fff;
}
.holidays_name{
    font-weight: 600;
    font-size: 45px;
    text-transform: uppercase;
    text-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.25);
    margin: 0 0 45px;
}
.holidays_text{
    font-weight: 300;
    font-size: 41px;
    margin: 0 0 45px;
}
.fp_img_container{
    background: url(/images/bday-bg24.svg) center center no-repeat;
    margin: 0 0 45px;
}
ul.decors_tab_switch {
    display:grid;
    grid-template-columns: repeat(6, 1fr);
    text-align: center;
    border: 1px solid #602F9E;
    border-radius: 10px;
    overflow: hidden;
    margin: 0 0 45px;
}
ul.decors_tab_switch li button.nav-link {
    font-weight: 600;
    font-size: 25px;
    text-transform: uppercase;
    padding: 10px;
    text-align: center;
    display: block;
    width: 100%;
    border-right: 1px solid #602F9E;
}
ul.decors_tab_switch li:last-child>button.nav-link{
    border-right: 0;
}
ul.decors_tab_switch button.active{
    background-color: var(--primary-color);
    color: #fff;
}
.sl-container {
    border: 3px solid #BFE2FF;
    margin: 5px auto;
    overflow: hidden;
    position: relative;
    width: min(90vh, 90vw);
    height: min(90vh, 90vw);
    box-sizing: border-box;
}
.sl-container .view {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
}
.sl-container .view img {
    width: min(90vh, 90vw);
}
.sl-container .view-after {
    width: min(45vh, 45vw);
    z-index: 200;
}
.sl-container .dragme {
    position: absolute;
    width: 3px;
    height: 100%;
    top: 0px;
    left: min(45vh, 45vw);
    background-color: #BFE2FF;
    cursor: pointer;
    z-index: 300;
}
.sl-container .dr-circle {
    position: absolute;
    top: calc(50% - 20px);
    left: -15px;
    border-radius: 100%;
    width: 40px;
    height: 40px;
    background-color: #BFE2FF;
    cursor: pointer;
    z-index: 300;
}
.twentytwenty-before-label,
.twentytwenty-after-label{
    display: none;
}
div#before-afterTabsContent {
    border-radius: 24px;
    /*overflow: hidden;*/
}
.aw_header {
    font-weight: 600;
    font-size: 26px;
    margin: 0 0 24px;
    text-transform: uppercase;
    color: var(--primary-color);
}
.cakes_links{
    font-weight: 600;
    font-size: 24px;
    text-transform: uppercase;
}
.cakes_links img{
    display: block;
    margin: 0 0 24px;
    border-radius: 20px;
}
.nacinka_item{
    padding:30px 15px;
    border-radius: 25px;
    margin: 0 0 30px;
    box-shadow: 0 0 21px 0 #8660B077;
}
.nacinka_item img{
    border-radius: 20px;
}
.nac_name {
    font-size: 26px;
    font-weight: 600;
    margin: 0 0 10px;
    line-height: 1;
    text-transform: uppercase;
}
.nac_price {
    margin: 0 0 15px;
}
.nac_descr {
    font-size: 12px;
}
.candy_delivery {
    padding: 100px 0 60px;
    background: url(/images/happy-bg24.svg) center center / cover no-repeat;
}
.cd_zag {
    font-size: 31px;
    font-weight: 500;
    margin: 0 0 10px;
}
.cd_txt {
    font-size: 24px;
    margin: 0 0 45px;
}
.cakes_gallery{
    background: url(/images/cg24.png) left top no-repeat, url(/images/cg48.png) right top no-repeat;
}
.decor_slider{
    background: url(/images/decor-slider24.jpg) center center/cover no-repeat;
    padding: 50px 0 75px;
    color: #fff;
}
.decor_slider img{
    display: block;
    margin: 0 0 42px;
}
h1.decor_h1 {
    font-size: 65px;
}
.decor_after_h1{
    font-size: 32px;
    margin: 0 0 42px;
}
.decor_slider .cb_butt{
    font-size: 29px;
    margin: 0 0 42px;
}
.decor_items_slider {
    margin: 0 0 45px;
}
.decor_gallery_switch {
    text-align: center;
}
.dg_item {
    margin: 0 0 30px;
}
.decor_gallery_switch a {
    display: block;
    margin: 0 0 15px;
    font-weight: 600;
    font-size: 28px;
    line-height: 1;
    text-transform: uppercase;
}
.dg_item img{
    width: 100%;
    border-radius: 15px;
}
.of_hd {
    font-size: 26px;
    font-weight: 600;
    text-transform: uppercase;
    margin: 0 0 30px;
}
.of_txt{
    margin: 0 0 30px;
}
.tematika{
    background:url(/images/tem-bg24.svg) center center/cover no-repeat;
    padding: 150px 0;
}
.tem_hd {
    font-size: 27px;
    font-weight: 600;
    margin: 0 0 30px;
}
.tem_txt {
    margin: 0 0 30px;
}
.dop_item {
    margin: 0 0 30px;
    text-align: center;
}
.dop_item a {
    display: block;
    font-size: 28px;
    font-weight: 600;
    text-transform: uppercase;
}
.dop_item img {
    display: block;
    width: 100%;
    margin: 0 0 10px;
    border-radius: 15px;
}
.show_preview_slider {
    margin: 0 0 30px;
}
/*.show_preview_slider .slick-slide{
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;    
}
.show_preview_slider .slick-slide:hover{
    z-index: 9;
    transform: scale(1.07);
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}*/
.sp_item {
    padding: 0 8px;
    position: relative;
    display: inline-block;
    cursor: pointer;
    z-index: 1;
}
.sp_item img {
    width: 100%;
    position: relative;
    z-index: 0;
}
.sp_item svg {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
}
.sp_text {
    position: absolute;
    z-index: 3;
    bottom: 12px;
    left: 0;
    right: 0;
    width: 100%;
    text-align: center;
    font-size: 14px;
    line-height: 1.21;
    font-weight: 600;
    text-transform: uppercase;
}
.sp_item svg path {
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
}
.sp_item:hover svg path {
    -webkit-transition: all 0.21s ease 0s;
	-moz-transition: all 0.21s ease 0s;
	-ms-transition: all 0.21s ease 0s;
	-o-transition: all 0.21s ease 0s;
	transition: all 0.21s ease 0s;
    fill: var(--primary-color);
}
.sp_item:hover {
    color: #fff;
}
.show_item{
    padding:0 8px 10px;
}
.show_name {
    color: var(--primary-color);
    font-weight: 600;
    font-size: 26px;
    margin: 0 0 15px;
}
.show_det_text {
    font-size: 20px;
    margin: 0 0 30px;
}
.show_in_hd {
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
    margin: 0 0 10px;
}
.show_item ul {
    list-style: disc;
    margin: 0 0 15px 30px;
}
.show_details{
    margin: 0 0 15px;
}
.show_details strong {
    color: var(--primary-color);
}
.sd_row {
    margin: 0 0 10px;
    padding-left: 45px;
    line-height: 36px;
}
.sd_age{
    background: url(/images/sd-age24.png) left center no-repeat;
}
.sd_length{
    background: url(/images/sd-length24.png) left center no-repeat;
}
.sd_count{
    background: url(/images/sd-count24.png) left center no-repeat;
}
.sd_lang{
    background: url(/images/sd-lang24.png) left center no-repeat;
}
.animations{
    background: url(/images/anim-bg24.svg) center center no-repeat;
}
.anim_hd{
    font-size: 27px;
    font-weight: 600;
    margin: 0 0 30px;
}
.anim_text{
    margin: 0 0 30px;
}
.pers_item {
    text-align: center;
    text-transform: uppercase;
    margin: 0 0 30px;
    font-size: 19px;
    font-weight: 600;
}
.pers_item img {
    display: block;
    margin: 0 0 10px;
}
.every_holiday_in{
    background: url(/images/home-bg24.svg) center center no-repeat;
}
.ehin_box{
    position: relative;
}
.ehin_box_item {
    text-align: left;
    position: absolute;
    background-color: #fff;
    border-radius: 25px;
    box-shadow: 0 0 21px 0 #ccc3e177;
    font-size: 16px;
    padding: 10px;
    display: flex;
    align-items: center;
    /*max-height: 70px;*/
}
.ehin_box_item img{
    position: absolute;
}
.eh_name {
    font-size: 20px;
    font-weight: 600;
}
.ehinb1{
    top: 10%;
    left: 10%;
    padding: 21px 21px 21px 100px;
}
.ehinb1 img{
    bottom: 0;
    left: 0;
}
.ehinb2{
    top: 40%;
    left: 0;
    padding: 10px 21px 10px 100px;
}
.ehinb2 img{
    bottom: -10px;
    left: 0;
}
.ehinb3{
    bottom: 10%;
    left: 7%;
    padding: 10px 21px 10px 100px;
}
.ehinb3 img{
    bottom: -10px;
    left: 0;
}
.ehinb4{
    top: 10%;
    right: -100px;
    padding: 10px 21px 10px 150px;
}
.ehinb4 img{
    bottom: 0;
    left: 0;
}
.ehinb5{
    top: 40%;
    right: -100px;
    padding: 10px 21px 10px 100px;
}
.ehinb5 img{
    bottom: 0;
    left: -10px;
}
.ehinb6{
    bottom: 10%;
    right: 0;
    padding: 10px 21px 10px 100px;
}
.ehinb6 img{
    bottom: 0;
    left: 0;
}
.spectacles-buttons {
    gap: 30px;
    padding: 30px 0;
}
.restaurants_banner{
    padding: 150px 0;
    background: url(/images/restaurants24.jpg) center center/cover no-repeat;
}
.restaurants_banner .cb_butt{
    margin: 0 0 30px;
}
.restaurants_text{
    font-size: 42px;
    line-height: 1.21;
}
.vr_banner{
    color: #fff;
    padding: 150px 0 250px;
    background: url(/images/vr-andersen24.jpg) center center/cover no-repeat;
}
.vw_item_hd {
    text-transform: uppercase;
    font-size: 27px;
    font-weight: 600;
    color: #0033A0;
    margin: 0 0 21px;
}
.vre_item {
    position: relative;
    text-align: center;
}
.vre_item img {
    position:relative;
    z-index:0;
}
.vre_name {
    color: #fff;
    font-size: 39px;
    font-weight: 1000;
    position: absolute;
    z-index: 1;
    bottom: 33px;
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    line-height: 1.21;
}
.gc_item {
    text-align: center;
    margin: 0 0 30px;
    font-size: 18px;
    font-weight: 600;
}
.gc_item img {
    margin: 0 0 15px;
}
.game_catalog .round_purple_box{
    padding-bottom: 0;
}
#bd {
    background: #000;
    opacity: 0.7;
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 99999999;
	top:-100%;
}
.user_form {
    display: none;
    position: fixed;
    background-color:#948ECE;
    color: #fff;
    z-index: 999999999999;
    padding: 30px;
    border-radius: 21px;
    font-size: 19px;
	top:50%;
    transform: translateY(-50%);
    width: 100vw;
	max-width:600px;
    margin: 0 auto;
	max-height:97vh;
	overflow-y:auto;
	left:100%;
	right:0;
}
.user_form .f_zag {
    margin: 21px 0;
    text-align: center;
    font-size: 30px;
    font-weight: 600;
    text-transform: uppercase;
}
.user_form .f_zag span{
    color: var(--secondary-color);
}
.user_form form input:not([type=checkbox]){
    width: 100%;
	margin-bottom:15px;
    border-radius: 10px;
    padding: 10px 21px;
    box-shadow: none;
    border:1px solid #5D5C5D;
}
label.form-check-label.right.soglasie {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-weight: 300;
    gap: 10px;
    margin: 0 0 15px;
}
.user_form form input[type=submit]{
    display: inline-block;
    width: auto;
    font-size: 21px;
}
.call_us,
.write_us{
	cursor:pointer;
}
.close-container {
    position: absolute;
    margin: auto;
    width: 25px;
    height: 25px;
    top: 7px;
    right: 7px;
    cursor: pointer;
	z-index:999;
}
.close-container .leftright{
	height: 1.999px;
	width: 25px;
	position: absolute;
	margin-top: 12px;
	background-color: #fff;
	border-radius: 2px;
	transform: rotate(45deg);
	transition: all .3s ease-in;
}
.close-container .rightleft{
	height: 1.999px;
	width: 25px;
	position: absolute;
	margin-top: 12px;
	background-color: #fff;
	border-radius: 2px;
	transform: rotate(-45deg);
	transition: all .3s ease-in;
}
.close-container label{
	color: white;
	font-family: Helvetica, Arial, sans-serif; 
	font-size: .6em;
	text-transform: uppercase;
	letter-spacing: 2px;
	transition: all .3s ease-in;
	opacity:1;
}
.close-container .closes{
	margin:48px 0 0 0px;
	position: absolute;
	font-size:8px;
	color:#fff;
}
.close-container:hover .leftright{
	transform: rotate(-45deg);
	background-color:#f00;
}
.close-container:hover .rightleft{
	transform: rotate(45deg);
	background-color:#f00;
}
.close-container:hover label{
	opacity: 1;
}
.hide{
	display:none !important;
}
.advert {
    font-size: 10px;
    padding-top: 10px;
    clear: both;
}
video {
    width: 100%;
    height: auto;
    display: block;
    position: relative;
    margin: 0;
    padding: 0;
    z-index: 0;
}
.ent_hd {
    font-size: 31px;
    font-weight: 600;
    margin: 0 0 30px;
}
.rent2{
    background:url(/images/rent2-2.png) left center no-repeat, url(/images/ent1.jpg) center center/100% 100% no-repeat ;
    padding: 90px 0;
}
.rent4{
    background:url(/images/ent4.jpg) center center/100% 100% no-repeat ;
    padding: 90px 0;    
}
.rent6{
    background:url(/images/ent6.jpg) center center/100% 100% no-repeat ;
    padding:120px 0;    
}
.wait{
    /*background: url(/images/wait24.jpg) left 5% center/contain no-repeat;*/
    color: var(--primary-color);
    font-size: 1.7vw;
    font-weight: 300;
}
.rest_addr_row1 {
    margin: 0 0 150px;
}
.map_container{
    border-radius: 24px;
    overflow: hidden;
}
.mb-45{
    margin: 0 0 45px;
}
.mb-60{
    margin: 0 0 60px;
}
.bent2,
.bent4{
    background: url(/images/b-ent2.jpg) center center/100% 100% no-repeat;
}
.bent6{
    background: url(/images/b-ent6.jpg) center center/100% 100% no-repeat;
}
.bui_toys{
    background: url(/images/b-toys24.jpg) center center/100% 100% no-repeat;
}
.bs_item {
    position: relative;
    text-align: center;
    padding: 0 21px;
}
.bs_item img {
    width: 100%;
}
.bs_item svg {
    width: 100%;
    max-width: 100%;
}
.bs_name {
    position: absolute;
    z-index: 10;
    bottom: 30px;
    width: 100%;
    font-size: 29px;
    font-weight: 600;
}
.bsn_bg{
    display: block;
    width: calc(100% - 42px);
    height: 166px;
    position: absolute;
    left: 21px;
    bottom: 0;
    background: url(/images/bsn-bg24.png) center center/100% 100% no-repeat;
    z-index: 9;
}
.at-home_banner{
    background: url(/images/at-home24.jpg) center center/cover no-repeat;
    padding:150px 0;
}
.at_home_sl_text{
    font-size: 27px;
}
.guest_personage{
    background: url(/images/guest-bg24.jpg) center center/100% 100% no-repeat;
}
ul.decors_tab_switch.home_shows_switch {
    grid-template-columns: repeat(5, auto);
}
.home_advantages{
    font-size: 25px;
    font-weight: 300;
}
.home_advantages img{
    border-radius: 20px;
}
.ha_hd {
    font-size: 27px;
    font-weight: 600;
    text-transform: uppercase;
    margin: 0 0 15px;
}
.ha_hd span {
    color: var(--primary-color);   
}
.home_advantages ul{
    padding: 0 0 0 30px;
}
.home_advantages li{
    margin: 0 0 10px;
    list-style: disc;
    line-height: 1.19;
}
.parallax1{
    position: absolute;
    right: 0;
}
.parallax2{
    position: absolute;
    right: 3%;
}
.parallax4{
    position: absolute;
    left: 5%;
}
.ost2{
    width: 58px;
    height: 63px;
    background: url(/images/ost2.png) center center/cover no-repeat;
    margin-left: 5%;
}
.ost4{
    width: 232px;
    height: 233px;
    background: url(/images/ost4.png) center center/cover no-repeat;
    position: absolute;
    right: 10%;
}
.user_form.cake_form {
    color: var(--text-color);
    padding: 221px 30px 30px;
    background:#fff url(/images/cake-order21.jpg) center top no-repeat;
}
.user_form.rest_form {
    color: var(--text-color);
    padding: 221px 30px 30px;
    background:#fff url(/images/rest-form24.jpg) center top no-repeat;
}
.user_form.rest_form .close-container .leftright,
.user_form.rest_form .close-container .rightleft{
    background-color: #000;
}
.user_form.rest_form .block_hd,
.user_form.rest_form .loyalty_text{
    margin: 0 0 15px;
}
.afisha_slide{
    padding: 200px 0;
    background: url(/images/afisha24.jpg) center center/cover no-repeat;
    color: #fff;
}
.afisha_header{
    font-weight: 600;
    font-size: 50px;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.25);
    margin: 0 0 30px;
}
.afisha_text{
    font-size: 30px;
}
.masterclass-grid { gap: 30px; margin-top: 40px; }
.mc-card {
    background: #fff;
    border-radius: 40px;
    border: 1px solid #f3e8ff;
    overflow: hidden;
    width: 100%;
    max-width: 380px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}
.mc-img-wrap {
    height: 350px;
    overflow: hidden;
    /* Тот самый срез «дугой» снизу из прототипа */
    clip-path: ellipse(90% 100% at 50% 0%);
}
.mc-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.mc-content { padding: 35px 25px; }
.mc-title {
    font-weight: 800;
    text-transform: uppercase;
    font-size: 26px;
    color: #4a4a4a;
    margin-bottom: 15px;
}
.mc-description {
    color: #7a7a7a;
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 25px;
}
.mc-details p {
    font-size: 20px;
    color: #555;
    margin-bottom: 5px;
}
.mc-details strong { font-weight:500; }
.creative_birthday{
    background: url(/images/abonements24.svg) center center/cover no-repeat;
}
.main_slider.home_slide1.hp_slide {
    padding: 169px 0 170px;
}
.at-home_banner.banner.hp_slide {
    padding: 158px 0;
}
.cake_item{
    text-align: center;
    font-size: 24px;
    margin-bottom: 30px;
}
.cake_item img{
    border-radius: 20px;
    display: block;
    width: 100%;
    margin: 0 0 10px;
}
.sandwich {
    position: relative;
    z-index: 1;
}
.sandwich_item {
    overflow: hidden;
    position: relative;
    margin: 0 0 15px;
    border-radius: 40px;
    box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.1);
    background: #fff;
}
.sandwich_item.act {
    box-shadow: 0 1px 5px 0 #E8505B;
}
.sand_zag {
    padding: 30px;
    font-size: 21px;
    color: #000;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.zag_text {
    display: flex;
    align-items: center;
}
.sand_zag span {
    font-size: 33px;
    font-weight: 800;
    color: var(--primary-color);
    line-height: 1;
    margin: 0 30px 0 0;
}
.sand_zag:after {
    content: '';
    display: block;
    width: 33px;
    height: 33px;
    background: url(/images/down24.svg) center center/cover no-repeat;
}
.sandwich_item.act .sand_zag:after {
    transform: rotate(180deg);
}
.sand_txt {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
}
.st_cont {
    padding: 0 30px 30px;
    font-size: 19px;
    color: #455A64;
}
.sandwich_item.act .sand_txt {
    max-height: 500px;
    -webkit-transition: all 1s ease .5s;
    -moz-transition: all 1s ease .5s;
    -o-transition: all 1s ease .5s;
    transition: all 1s ease .5s;
}
.video-bg{
    border-radius: 15px;
    overflow: hidden;
    border: 5px solid var(--primary-color);
}
.mb-30{
    margin-bottom: 30px;
}
.green_block{
    background: url(/images/green-block21.jpg) center center/cover no-repeat;
    padding: 150px 0;
}
.camp-text{
    font-weight: 700;
    font-size: 31px;
    text-align: center;
    color: #fff;
    text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
.camp_man {
    font-size: 24px;
    line-height: 1.21;
    background: url(/images/campman-bg21.png) center center/cover no-repeat;
    position: relative;
    padding: 150px 0;
    margin: -150px 0;
}
.camp_man::before{
    content: '';
    display: block;
    width: 263px;
    height: 464px;
    background: url(/images/cm-bef21.png) center center/cover no-repeat;
    position: absolute;
    top: 0;
    left: 0;
}
.camp_man::after{
    content: '';
    display: block;
    width: 338px;
    height: 464px;
    background: url(/images/cm-aft21.png) center center/cover no-repeat;
    position: absolute;
    bottom: 0;
    right: 0;
}
.cm_hd {
    color: #EB6320;
    font-size: 31px;
    font-weight: 1000;
    margin: 0 0 30px;
}
.cwu_block {
    background-color: #fff;
    border-radius: 80px;
    padding: 50px;
    text-align: center;
}
.cwu_hd {
    font-size: 42px;
    font-weight: 1000;
    color: #EB6320;
    margin: 0 0 30px;
}
.cwu_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}
.cwu_img::before{
    content: '';
    display: block;
    position:absolute;
    width: 63px;
    height: 63px;
    background: url(/images/cwuib21.png) center center/cover no-repeat;
    top: 0px;
    left: 0px;
}
.cwu_img {
    position: relative;
    z-index: 0;
}
.cwu_name {
    color: #fff;
    background-color: #EB6320;
    border-radius: 50px;
    height: 50px;
    line-height: 1.21;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: -30px 15px 0;
    position: relative;
    z-index: 1;
}
.camp_activities{
    background: url(/images/camp-activities-bg21.png) center center/cover no-repeat;
    padding: 250px 0 250px;
}
.ca_hd {
    color: #EB6320;
    font-size: 31px;
    font-weight: 1000;
    text-transform: uppercase;
    margin:0 0 45px;
}
.ca_hd:after {
    display: block;
    content: '';
    background-color: #5D5C5D;
    width: 99px;
    height: 3px;
    border-radius: 3px;
    margin: 10px auto 0;
}
.cag_row{
    display: flex;
    width: 100%;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 30px;
    margin: 0 0 45px;
}
.cag_item{
    width: 25%;
}
.cag_name {
    height: 63px;
    color: #6A6A6A;
    background-color: #FFD00D;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    padding: 0 15px;
    margin: -38px 0 0;
    position: relative;
}
.camp_information_block {
    background-color: #fff;
    border-radius: 70px;
    overflow: hidden;
}
.camp_information_content{
    padding: 50px;
}
.cib_hd {
    text-align: center;
    text-transform: uppercase;
    color: #EB6320;
    font-weight: 1000;
    font-size: 30px;
    margin: 0 0 30px;
}
.cib_hd.nm{
    margin: 0;
}
.cib_item {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 0 0 30px;
    font-size: 19px;
}
.cib_img {
    width: 70px;
    min-width: 70px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 70px;
    overflow: hidden;
    border: 3px solid #FFD00D;
}
.cib_text{
    text-align: center;
    font-size: 27px;
}
.camp_butt .cb_butt{
    position: relative;
    margin: 50px 0;
}
.camp_butt .cb_butt:before {
    content: '';
    display: block;
    width: 266px;
    height: 134px;
    background: url(/images/camp-reserve21.png) center center/cover no-repeat;
    position: absolute;
    left: -280px;
    top: -28px;
}
.cib_bottom{
    font-size: 31px;
    font-weight: 700;
    text-align: center;
    background: url(/images/camp-reserve-bg21.jpg) center center/cover no-repeat;
    padding: 70px 0 25px;
}