@import "../fonts/RoundedMplus1c/stylesheet.css";
@import "lightgallery.min.css";


:root {
    --blue : #488D9D;
    --or : #FE6134;
    --green: #6EC2B5;
    --blue1 : #4490A0;
    
    
}
html * { max-height: 1000000px; }
* { -webkit-text-size-adjust: none; margin: 0; padding: 0; box-sizing: border-box; outline: none; }
html, body { font-family: "Rounded Mplus 1c", Arial, sans-serif;
    font-size: 14px; color: #202124; scroll-behavior: smooth; }
li { list-style: none; }
img { max-width: 100%; display: block; height: auto; }
a img { border:none; }
a { text-decoration: none; color: inherit; }
input, select, button, textarea { outline:none;
    font-family:"Google Sans", Arial, sans-serif; font-size: 14px;
    /*-moz-appearance:none;-webkit-border-radius: 0; -moz-border-radius: 0; -webkit-appearance: none;*/
}
input[type=file], button, input[type="submit"],
input[type=file]::-webkit-file-upload-button { cursor: pointer; }
.container { max-width: 1206px; width: 100%; padding: 0 20px; margin: 0 auto; }

.btn { background: var(--or); display: inline-flex; min-width: 210px; border: none; border-radius: 30px;
    color: #FFF; padding: 0 40px 4px; height: 46px; align-items: center; justify-content: center;
    font-size: 20px; line-height: 1.5; text-align: center; }
.btn.tr { border: 1px solid #737476; color: #202124; background: transparent; }
.link { font-size: 20px; line-height: 1.5; font-weight: normal; text-decoration: underline; }
.btn:hover { background: #202124; color: #FFF; }
.btn.tr:hover { background: transparent; color: var(--or); border-color: var(--or); }
.link:hover { color: var(--or); }


header { z-index: 2; padding: 15px 0 46px; position: relative; }
header:after { content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 21px;
    background: url(../img/decor.svg) repeat-x 50% 50% / cover; }
.header { display: flex; align-items: stretch; }
.logo { flex: 0 0 auto; width: 199px; margin-right: 100px; align-self: center; }

.h_right { flex: 1 1 auto; display: flex; flex-direction: column; justify-content: space-between; }
.h_top { display: flex; justify-content: space-between; align-items: center; }
.tel { font-size: 16px; line-height: 1.5; }
.partner { display: flex; align-items: center; font-size: 16px; line-height: 1.5; }
.partner img { margin-left: 13px; }


.partner .agency { display: inline-table; width: 180px; margin-left: 7px; line-height: 1.2; font-weight: bold; font-size: 14px; }


.rss { display: flex; margin: 0 -13px 0 8.2%; flex: 1 1 auto; }
.rss a { margin: 5px 13px; width: 30px; height: 30px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center; background: var(--blue1); }
.rss a img[src*="im_icon"] { margin-left: 1px; margin-top: -1px; }
.rss a:hover { background: var(--or); }
nav ul { display: flex; justify-content: space-between; margin: 0 -10px; }
nav ul li { margin: 14px 10px; font-weight: bold; font-size: 16px; line-height: 1.5; }
nav ul li a:hover { color: var(--or); }
.main_slider_block { margin-top: -12px; }
.main_slide_item { position: relative; min-height: 620px!important; display: flex!important; align-items: center; }
.main_slide_item > img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.main_slide_item > .container { position: relative; z-index: 2; color: #FFF; }
.main_slide { padding: 0 60px; }
.main_slider .slick-dots { position: absolute; bottom: 21px; left: 0; right: 0;
    justify-content: center; margin: auto; display: flex; }
.main_slider .slick-dots button { opacity: .4; width: 12px; height: 12px; display: block;
    border-radius: 50%; border: none; background: #FFF; font-size: 0; margin: 0 6px; }
.main_slider .slick-dots .slick-active button { opacity: 1; }
.main_slider .slick-prev,.main_slider .slick-next { width: 18px; height: 36px; opacity: .4; transition: opacity .3s;
    position: absolute; top: 0; bottom: 0; margin: auto; font-size: 0; border: none; cursor: pointer; }
.main_slider .slick-prev { left: calc(50% - 583px);
    background: url(../img/slider_arrow_prev.svg) no-repeat 50% 50% / contain; }
.main_slider .slick-next { left: calc(50% + 583px);
    background: url(../img/slider_arrow_next.svg) no-repeat 50% 50% / contain; }
.main_slider .slick-prev:hover,.main_slider .slick-next:hover { opacity: 1; }
.main_slide h3 { font-size: 39px; line-height: 1.2; font-weight: 800; }
.main_slide h5 { font-size: 20px; line-height: 1.5; font-weight: 700; padding: 20px 0; }
.main_slide h1 { background: var(--blue); display: inline-block; vertical-align: middle; padding: 0 47px 9px;
    border-radius: 50px; font-size: 73px; line-height: 1.2; font-weight: 800; margin: 35px 0; }
.main_slide h2 { font-size: 25px; font-weight: 700; line-height: 1.2; }
.main_slide p { font-size: 16px; line-height: 1.5; padding: 20px 0 10px; }
.main_slide h3 + p { padding-top: 40px; }
.main_slide .btn { margin-top: 47px; }


.about_block { padding: 75px 0 100px; }
.about { display: flex; flex-wrap: wrap; margin: 0 -12px 0 -13px; }
.about_item { display: flex; justify-content: space-between;
    width: calc(50% - 25px); margin: 25px 12px 0 13px; }

.about_item:nth-child(3),
.about_item:nth-child(4),
.about_item:nth-child(7),
.about_item:nth-child(8),
.about_item:nth-child(11),
.about_item:nth-child(12)  { flex-direction: row-reverse; }

.about_img { width: calc(50% - 12px); }
.about_text { width: calc(50% - 12px); }
.about_text h6 { font-size: 25px; line-height: 1.2; color: var(--blue); font-weight: bold; }
.about_text p { padding-top: 10px; font-size: 16px; line-height: 1.5; }


.festival_block { overflow-x: hidden; color: #FFF; background: var(--blue1); padding: 70px 0 120px; }
.decor:before { content: ""; position: absolute; top: -11px; left: 0; width: 100%; height: 21px;
    background: url(../img/decor.svg) repeat-x 50% 50% / cover; }
.decor {  position: relative; }

.decor_bottom:after { content: ""; position: absolute; bottom: -11px; left: 0; width: 100%; height: 21px;
    background: url(../img/decor.svg) repeat-x 50% 50% / cover; }
.decor_bottom {  position: relative; }

.festival_box { display: flex; padding-top: 20px; justify-content: space-between; align-items: center; }
.festival_box > * { margin-top: 40px; }
h4 { font-size: 39px; line-height: 1.2; font-weight: 800; }
.festival_text { width: calc(50% - 15px); flex: 0 0 auto; }
.festival_text .btn { margin-top: 15px; }
.festival_text p { font-size: 16px; line-height: 1.5; padding-bottom: 24px; }
.festival_text p + p {  }
.festival_text h4 { margin-bottom: 30px; text-align: center; }
.festival_img { width: calc(50% - 20px); }
/*.festival_img img { max-width: 1000px; } */
.festival_img img { max-width: 90%; }
.program_block { padding: 80px 0; }
.program h4 { color: var(--blue); }
.program_list { padding-top: 60px; display: flex; flex-wrap: wrap; margin: 0 -12px; position: relative; }
.program_list:after { content: ""; background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);
    display: block; position: absolute; bottom: 0; left: 0; width: 100%; height: 160px; }
.program_item { display: flex; width: calc(100% / 3 - 24px); margin: 0 12px; padding: 15px 0;
    border-top: 1px solid #AFB1B3; }
.program_item:nth-child(n+13) { display: none; }
.program_list.active .program_item:nth-child(n+13) { display: flex; }
.program_list.active:after { display: none; }

.program_list ~ .prog_footer .program_toggle:before { content: "Вся программа"; }
.program_list.active ~ .prog_footer .program_toggle:before { content: "Скрыть программу"; }

.prog_item_time { font-size: 16px; font-weight: bold; width: 60px; flex: 0 0 auto; margin-right: 15px; }
.prog_item_text {  }
.prog_item_text h6 { font-size: 16px; line-height: 1.5;  }
.prog_item_text p { font-size: 14px; line-height: 1.5; padding-top: 5px; }

.prog_footer { position: relative; z-index: 2;  display: flex; justify-content: space-between; }
.prog_footer > * { margin-top: 30px; }
.prog_f_left { display: flex; }
.prog_f_left .btn.tr { margin-right: 70px; }


.map_block { padding: 80px 0; background: var(--green); }
.map h4 { color: #FFF; }
.map_box { display: flex; }
.map_box > * { margin-top: 60px; }
.map_left { margin-right: 20px; padding: 0 60px; }
.map_text { padding-left: 30px; position: relative;  }
.map_text:before { font-size: 16px; line-height: 1.5; font-weight: bold;
    content: attr(data-num)"."; position: absolute; top: 0; left: 0;  }
.map_text + .map_text { margin-top: 15px; }
.map_text h6 { font-size: 16px; line-height: 1.5; font-weight: bold; }
.map_text p { font-size: 16px; line-height: 1.5; }
.map_text + p { margin-top: 30px; }
.map_text + p + p { margin-top: 40px; }

.eat_block { padding: 80px 0 60px; }
.eat h4 { color: var(--blue); }
.eat_box { display: flex; margin: 0 -12px; color: #202124; padding-top: 30px; }

/* .eat_column { width: calc(25% - 24px); margin: 30px 12px 0; } */
.eat_column { width: calc(33% - 24px); margin: 30px 12px 0; }

.eat_item { border-top: 1px solid #9B9EA0; margin-top: 30px; padding-top: 8px; }
.eat_column img { display: block; max-width: 100%;  }
.eat_item + img { margin-top: 30px; }
.eat_item:first-child { margin-top: 0; }
.eat_item h6 { font-weight: bold; font-size: 20px; line-height: 1.5; color: var(--blue); padding-bottom: 7px; }
.eat_item h6 span { margin-top: -5px; display: block; font-size: 14px; line-height: 1.5; font-weight: normal; color: #202124; }
.eat_item p { font-size: 14px; line-height: 1.5; }

.drink_block { padding: 80px 0 100px; background: #fe6134; }
.drink h4 { color: #ffffff; }
.drink_box { display: flex; margin: 0 -12px; color: #202124; padding-top: 30px; }
.drink_column { width: calc(25% - 24px); margin: 30px 12px 0; }
.drink_item { margin-top: 30px; padding-top: 8px; }
.drink_item.border-top { border-top: 1px solid #ffffff; }
.drink_column img { display: block; max-width: 100%;  }
.drink_item + img { margin-top: 30px; }
.drink_item:first-child { margin-top: 0; }
.drink_item h6 { font-weight: bold; font-size: 20px; line-height: 1.5; color: #ffffff; padding-bottom: 7px; }
.drink_item h6 span { margin-top: -5px; display: block; font-size: 14px; line-height: 1.5; font-weight: normal; color: #ffffff; }
.drink_item p { font-size: 14px; line-height: 1.5; }

.where_block { padding: 80px 0 90px 0; }
.where h4 { color: var(--blue); }
.where_box { display: flex; justify-content: space-between; }
.where_column { width: calc(50% - 12px); }
.where_column:first-child .where_item { max-width: 475px; }
.where_item { color: #202124; padding-top: 40px; }
.where_item h5 { font-size: 31px; line-height: 1.2; font-weight: bold; color: var(--blue); }
.where_item h5 + p { padding-top: 15px; }
.where_item p { font-size: 16px; line-height: 1.5; }
.where_item p b { font-weight: bold; }
.where_item p + p { margin-top: 20px; }
.where_item p img { display: block; margin-top: 15px; }
.where_item a { text-decoration: underline; }

.residence_block { padding: 80px 0; }
.residence > h4 { color: var(--blue); }
.residence_box { display: flex; padding-top: 60px; }
.residence_text { width: 50%; padding-top: 20px; margin-right: 12px; }
.residence_text > p { font-size: 16px; line-height: 1.5; color: #202124; }
.residence_item { margin-top: 18px; }
.residence_item h6 { text-decoration: underline; font-weight: bold;
    font-size: 20px; line-height: 1.5; cursor: pointer; }
.residence_item h6:hover { color: var(--or); }
.residence_item.active h6 { color: var(--blue); }
.residence_item > p {  }
.residence_item p { padding: 5px 0 0; font-size: 16px; line-height: 1.5; color: #202124; }
.residence_hidden { padding-top: 12px; display: none; }
.residence_img { width: calc(50% - 12px); margin-right: -150px; }
.residence_img img { max-width: 10000px; }
.tickets_block { color: #FFF; background: var(--blue1); padding: 80px 0; }
.tickets_list { display: flex; padding-top: 20px; }
.ticket { display: flex; flex-direction: column; justify-content: space-between; margin-top: 40px;
    width: 33%; padding: 0 22px; min-height: 320px; }
.ticket h6 { font-size: 20px; font-weight: bold; line-height: 1.5; }
.tick_top .price { display: inline-flex; background: #FFF; padding: 0 25px;
    color: var(--blue1); align-items: center; justify-content: center; margin: 20px 0;
    height: 59px; border-radius: 30px; font-size: 39px; font-weight: 800; line-height: 1.2;  }
.tick_top .price span { font-size: 20px; line-height: 1.5; font-weight: normal;
    margin-left: 3px; margin-top: -12px; }
.tick_text p { font-size: 16px; font-weight: bold; line-height: 1.5; }
.tick_text ul li { margin-top: 5px; font-size: 16px; line-height: 1.5; position: relative; padding-left: 15px; }
.tick_text ul li:before { content: ""; display: block; position: absolute; top: 10px; left: 0;
    width: 4px; height: 4px; border-radius: 50%; background: #FFF; }

.tick_bot {}
.tick_bot p { padding-bottom: 30px; font-size: 14px; line-height: 1.5; }
.tickets > p { width: 100%; max-width: 770px; font-size: 16px; line-height: 1.5; margin-top: 60px;  }

.history-block { padding: 80px 0 100px 0; background: var(--blue1); }
.history {}
.history h4 { color: #ffffff; }
.history-block-title { font-size: 20px; color: #ffffff; margin: 20px 0; font-weight: bold; }

.get_block { padding: 80px 0; }
.get h4 { color: var(--blue1); }
.get_box { padding-top: 50px; column-count: 3; column-gap: 30px; }
.get_item { display: table; position: relative; padding-left: 20px; margin: 20px 0 0; }
.get_item:first-child { margin-top: 0; }
.get_item:before { content: ""; position: absolute; border-radius: 50%; width: 8px;
    height: 8px; background: var(--blue1); top: 10px; left: 0; display: block; }
.get_item h6 { font-size: 20px; font-weight: bold; line-height: 1.5; }
.get_item p { font-size: 16px; line-height: 1.5; color: #202124; padding-top: 5px; }

.stat_block { padding: 80px 0; }
.stat h4 { color: var(--blue1); }
.stat_box { padding-top: 10px; column-count: 3; column-gap: 30px; }
.stat_item { display: table; position: relative; padding-left: 20px; margin: 20px 0 0; }
.stat_item:first-child { margin-top: 0; }
.stat_item h6 { font-size: 20px; font-weight: bold; line-height: 1.5; }
.stat_item p { font-size: 16px; line-height: 1.5; color: #202124; padding-top: 5px; }
.stat_img_wrapper { margin: 0 auto; text-align: center; }
.stat_img_wrapper img { display: inline-block; }

.byg_stat {}
.byg_stat h4 { text-align: center; }


.festival-day-title { color: var(--blue); font-size: 22px; font-weight: bold; margin-top: 40px; }

.village h4 { color: var(--blue1); }
.village_text { color: #202124; padding: 40px 0; column-count: 2; column-gap: 24px; }
.village_text p { display: table; font-size: 16px; line-height: 1.5; margin-top: 12px; }
.village_text p:first-child { margin-top: 0; }


.gallery_slider .slick-dots { position: absolute; bottom: 21px; left: 0; right: 0;
    justify-content: center; margin: auto; display: flex; }
.gallery_slider .slick-dots button { opacity: .4; width: 12px; height: 12px; display: block;
    border-radius: 50%; border: none; background: #FFF; font-size: 0; margin: 0 6px; }
.gallery_slider .slick-dots .slick-active button { opacity: 1; }
.gallery_slider .slick-prev,.gallery_slider .slick-next { width: 18px; height: 36px; opacity: .4;
    transition: opacity .3s;
    position: absolute; top: 0; bottom: 0; margin: auto; font-size: 0; border: none; cursor: pointer; }
.gallery_slider .slick-prev { left: 20px;
    background: url(../img/slider_arrow_prev.svg) no-repeat 50% 50% / contain; }
.gallery_slider .slick-next { right: 20px;
    background: url(../img/slider_arrow_next.svg) no-repeat 50% 50% / contain; }
.gallery_slider .slick-prev:hover,.gallery_slider .slick-next:hover { opacity: 1; }


.wait { display: flex; justify-content: space-between; }
.wait_column { width: calc(50% - 12px); margin: 12px 0; display: flex; flex-wrap: wrap; justify-content: space-between; }
.wc-50 { width: calc(50% - 12px); margin: 12px 0; height: 220px; }
.wc-100 { width: 100%; margin: 12px 0; height: 220px; }
.bgb { background: var(--blue1); color: #FFF; }
.bgr { background: var(--or); color: #FFF; }
.text { font-size: 16px; line-height: 1.5; display: flex; align-items: center; padding: 20px; }
.img,.vid { position: relative; }
.abs { margin-left: calc(50% + 12px); }
.img.wc-h-100 > img { width: 100%; height: 464px; object-fit: cover; }
.img:not(.wc-h-100) > img,.vid > img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.vid:before { content: ""; display: block; width: 74px; height: 74px; z-index: 3;
    top: 0; left: 0; right: 0; bottom: 0; margin: auto; position: absolute;
    background: url(../img/play_btn.svg) no-repeat 50% 50% / contain; }
.vid a { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 5; }

.partners_block { padding: 30px 0 1px; }
.partners > h4 { margin: 0; padding: 40px 0 0; color: var(--blue1); display: block;}
.partners_items {padding: 30px 0 1px; text-align: left;}
.partners_items img {max-width: 130px; max-height: 100px; width: auto; height: auto; margin: 0 35px 20px 0; display: inline-block; vertical-align: middle;}
.partners_items_large img {max-width: 180px; max-height: 140px; margin: 0 40px 0 0;}


.contacts_block { padding: 80px 0; }
.contacts > h4 { margin-bottom: -10px; color: var(--blue1); }
.contacts_box { display: flex; }
.contacts_right { width: 276px; flex: 0 0 auto; }
.contacts_left { display: flex; flex-wrap: wrap; justify-content: space-between; }
.contacts h5 { padding-bottom: 10px; font-size: 20px; color: var(--blue); line-height: 1.5; font-weight: bold; }

.con_item { width: calc(50% - 12px); margin-top: 40px; }
.con_item .btn { margin-top: 20px; }
.con_name { padding-bottom: 10px; }
.con_name h6 { font-size: 16px; font-weight: bold; line-height: 1.5; }
.con_name p { font-size: 16px; line-height: 1.5; }
.contacts a[href^="tel:"] { font-size: 25px; font-weight: bold; line-height: 1.2; }
.contacts a[href^="mailto:"] { font-size: 16px; line-height: 1.5; }

.after_contacts { margin-top: 60px; padding: 30px 35px; max-width: 677px; border: 2px solid #4490A0; }
.after_contacts h5 { font-size: 25px; font-weight: bold; }
.after_contacts p { padding-bottom: 10px; font-size: 16px; line-height: 1.5; }

footer { background: var(--blue1); padding: 40px 0; }
.footer { display: flex; justify-content: space-between; color: #FFF; }
.f_left { max-width: 275px; }
.f_left p:not(.links) { margin: 21px 0 12px; }
.f_left p.links a:hover { text-decoration: underline; }
.f_nav { max-width: 400px; }
.f_nav ul { display: flex; flex-wrap: wrap; }
.f_nav ul li { width: calc(50% - 10px); margin: 8px 0;font-size: 16px; line-height: 1.5; }
.f_nav ul li a:hover { color: #202124; }
.f_right p + p { margin-top: 30px; }
.f_right p span { display: block; font-size: 16px; line-height: 1.5; }
.f_right p img { display: block; margin-top: 12px; }
.f_right .rss { margin: 25px -13px 0; }




/*popup*/
.black_layout { display: none; z-index: 90; position: fixed; top: 0;
    left: 0; width: 100%; height: 100%; background: rgba(15,22,33,.85); }
.popup_wrapper { display: none; position: absolute; top: 0; left: 0;
    width: 100%; min-height: 100%; z-index: 95; padding: 0; }

.popup_inner { display: flex; min-height: 100%; align-items: center; padding: 50px 20px;
    justify-content: center; }
.popup { background: #FFF; padding: 35px 50px; width: 100%; max-width: 474px; position: relative; }
.close_popup,.back_popup { width: 20px; height: 20px; display: block;
    position: absolute; z-index: 5; top: 20px; }
.close_popup { right: 20px; background: url(../img/close_icon.svg) no-repeat 50% 50% / 18px auto; }

.popup_icon img { display: block; margin: auto; padding: 16px 0; }
.popup_body { width: 100%; margin: auto; }
.quest_popup { text-align: center; }
.popup h4 { color: var(--blue); }
.form input,.form textarea { font-size: 16px; line-height: 1.5; color: #000; display: block; width: 100%;
    border: 1px solid #202124; border-radius: 30px; height: 46px; padding: 0 20px; margin-top: 20px; text-align: left; }
.form textarea { resize: vertical; min-height: 164px; padding: 18px 20px; }
.form input:focus,.form textarea:focus { border-color: var(--blue); }
.form .error { color: var(--or); }
.form input.error,.form textarea.error { border-color: var(--or); }
.form .agree { font-size: 12px; line-height: 1.4; color: #909396; padding: 11px 0 20px; margin: 0 -10px; }


.mobile_toggle { cursor: pointer; display: none; flex: 0 0 auto;
    width: 33px; height: 27px; position: relative; overflow: hidden; }
.mobile_toggle span { height: 3px; width: 100%; background: var(--blue1); margin: auto;
    display: block; position: absolute; border-radius: 2px; transition: .3s; }
.mobile_toggle span:first-child { top: 5px; }
.mobile_toggle span:last-child { bottom: 5px; }
.mobile_toggle span:nth-child(2) { top: 0; bottom: 0; margin: auto; }
.mobile_toggle.active span:first-child { margin-top: -1px; top: 50%; transform: rotate(45deg); }
.mobile_toggle.active span:last-child { margin-bottom: -2px; bottom: 50%; transform: rotate(-45deg);}
.mobile_toggle.active span:nth-child(2) { left: 100%; opacity: 0; }

.mobile_phone { display: none; }
.main_mobile_img,.main_mobile { display: none; }
.village_mobile { display: none; }
@media(max-width: 641px) {
    h4 { font-size: 32px; }
    header {  padding: 15px 0; }
    header:after { display: none; }
    .header { align-items: center; }
    .logo { width: 97px; }
    .h_top { display: none; }
    .mobile_phone { display: flex; flex: 1 1 auto; }
    .mobile_toggle { display: block; }
    .main_slider_block { display: none; }
    .main_mobile_img,.main_mobile { display: block; }
    .main_mobile_img { width: 100%; }
    .main_mobile { background: var(--blue1); color: #FFF; padding: 20px 20px 35px; }
    .main_mobile h5, .main_mobile h2 { font-size: 16px; }
    .main_mobile h5 { padding: 10px 0 0; }
    .main_mobile h3 { font-size: 28px; }
    .main_mobile h1 { font-size: 48px; line-height: 1.2; padding: 0; margin: 20px 0; }
    .main_mobile .btn { margin-top: 30px; }
    nav { position: absolute; top: 0; left: -100%; transition: .3s; width: 100%; background: #FFF; }
    nav ul { flex-direction: column; margin: 0; padding: 15px 0; }
    nav ul li { margin: 15px 20px; }
    nav.active { left: 0; }
    
    .mobile_phone { margin-right: 45px; }
    .mobile_phone a { width: 30px; height: 30px; display: block; background: url(../img/phone_icon.svg) no-repeat 50% 50% / contain;   }
    .about_block { padding: 30px 0 0; }
    .about { margin: 0 -20px 0 -12px; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 30px; }
    .about_item { margin: 0 12px; flex-direction: column; justify-content: flex-start; width: 72%; flex: 0 0 auto; }
    .about_item:nth-child(3), .about_item:nth-child(4), .about_item:nth-child(7), .about_item:nth-child(8) { flex-direction: column; }
    .about_img { margin-bottom: 18px; }
    .about_img,.about_text { width: 100%; }
    .about_text h6 { font-size: 18px; }
    .about_text p { font-size: 14px; }
    .about:after { display: block; content: ""; width: 12px; flex: 0 0 auto;  }
    
    .decor:before { display: none; }
    .festival_block { padding: 10px 0 30px; color: #202124; background: #FFF; }
    .festival h4 { color: var(--blue1); }
    .festival_img { display: none; }
    .festival_box > * { margin-top: 0; }
    .festival_text { width: 100%; }
    .festival_text p { font-size: 14px; padding-bottom: 18px; }
    .program_block { padding: 30px 0; }
    .program_list { padding-top: 30px; }
    .program_item { flex-direction: column; width: calc(50% - 24px); }
    .program_item:nth-child(n+9) { display: none; }
    .program_list.active .program_item:nth-child(n+9) { display: flex; }
    .prog_item_time { width: 100%; margin-right: 0; }
    .prog_footer { flex-direction: column; align-items: center; }
    .prog_footer > * { margin-top: 20px; }
    .prog_f_left { flex-direction: column; }
    .prog_f_left .btn.tr { margin-right: 0; margin-bottom: 20px; }

    .map_block { padding: 40px 0 50px; }
    .map_box { flex-direction: column; }
    .map_box > * { margin-top: 20px; }
    .map_left { padding: 0; margin-right: 0; }
    .map_text + p { margin-top: 20px; }
    .map_text + p + p { margin-top: 20px; }

    .eat_block { padding: 40px 0; }
    .eat_box { flex-direction: column; margin: 0; padding-top: 0; }
    .eat_column { width: 100%; margin: 30px 0 0; }

    .drink_block { padding: 40px 0; }
    .drink_box { flex-direction: column; margin: 0; padding-top: 0; }
    .drink_column { width: 100%; margin: 30px 0 0; }

    .where_box { flex-direction: column; }
    .where_column { width: 100%; }

    .stat_box { column-count: 2; column-gap: 20px; }

    .residence_block { padding: 0 0 40px 0; }
    .residence_box { padding-top: 10px; }
    .residence_text { width: 100%; margin-right: 0; }
    .residence_img { display: none; }

    .tickets_block { padding: 40px 0; }
    .tickets_list { padding-bottom: 20px; margin: 0 -20px; overflow-x: auto; flex-wrap: nowrap; }
    .tickets_list:after { content: ""; display: block; flex: 0 0 auto; width: 20px; }
    .ticket { width: 72%; }
    .ticket:first-child { border: none; }
    .tickets > p { margin-top: 10px; }

    .get_block { padding: 40px 0; }
    .get_box { column-count: 1; column-gap: 0; padding-top: 30px; }

    .village > h4 { font-size: 0; }
    .village > h4:before { content: "Ловите яркие эмоции в деревне"; font-size: 30px; }
    .village_text { padding: 20px 0; column-count: 1; display: none; }
    .village_mobile { margin-top: 20px; display: inline-block; text-decoration: underline; font-size: 16px; }
    .gallery_slider { margin: 20px -20px 0; }
    .gallery_slide img { height: 342px; object-fit: cover; }
    .gallery_slider .slick-dots { position: static; margin-top: 10px; }
    .gallery_slider .slick-dots button { opacity: 1; background: #c3c3c3; }
    .gallery_slider .slick-dots .slick-active button{ background: var(--or); }
    .wait_block { display: none; }

    .contacts_block { padding: 40px 0; }
    .con_item { width: calc(100% - 12px); margin-top: 25px; }
    .con_item:nth-child(2) h5 { display: none; }
    .contacts_right { display: none; }
    .after_contacts { margin-top: 30px; padding: 20px; }


    .footer { flex-direction: column; }
    .f_left { width: 100%; margin-bottom: 8px; }
    .links span { display: block; margin-top: 5px; }
    .links span a { text-decoration: underline; }
    .f_nav ul li { width: 100%; }
    .f_right { margin-top: 8px; }

}


/* Слайдеры */
.slick-slider{ position: relative;display: block;-moz-box-sizing: border-box;box-sizing: border-box;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;-webkit-touch-callout: none;-khtml-user-select: none;-ms-touch-action: pan-y;touch-action: pan-y;-webkit-tap-highlight-color: transparent;}
.slick-list {position: relative;display: block;overflow: hidden;margin: 0;padding: 0;}
.slick-list:focus{outline: none;}
.slick-list.dragging{cursor: hand;}
.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform: translate3d(0, 0, 0);-moz-transform: translate3d(0, 0, 0);-ms-transform: translate3d(0, 0, 0);-o-transform: translate3d(0, 0, 0);        transform: translate3d(0, 0, 0);}
.slick-track {position: relative;top: 0;left: 0;display: block;}
.slick-track:before,.slick-track:after{display: table; content: '';}
.slick-track:after{clear: both;}
.slick-loading .slick-track{visibility: hidden;}
.slick-slide{display: none;float: left;height: 100%;min-height: 1px;}
[dir='rtl'] .slick-slide{float: right;}
.slick-slide img{display: block;}
.slick-slide.slick-loading img{ display: none;}
.slick-slide.dragging img{pointer-events: none;}
.slick-initialized .slick-slide{display: block;}
.slick-loading .slick-slide{visibility: hidden;}
.slick-vertical .slick-slide{display: block;height: auto;border: 1px solid transparent;}