:root {
  --text-black: #3f3f3f;
  --green: #0dd770;
  --green-accent: #01a451;
  --white: #fff;
}

body { color: var(--text-black); }

::-webkit-input-placeholder { color: #909090; font-size: 1em; }
:-ms-input-placeholder { color: #909090; font-size: 1em; }
::-moz-placeholder { color: #909090; opacity: 1; font-size: 1em; }
:-moz-placeholder { color: #909090; opacity: 1; font-size: 1em; }
::-webkit-datetime-edit { color: #909090; font-size: 1em; }


.gdlr-core-parallax { will-change: transform; }
.gdlr-core-pbf-background-wrap { position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; overflow: hidden; z-index: -1;}
.gdlr-core-parallax { background-size: cover; background-position: center; height: 100%; will-change: transform; }
@media (max-width: 1025px) {
  .gdlr-core-parallax { transform: translate(0,0) !important; height: 100% !important; }
}

.slick-slider {   
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.slick-arrow.slick-disabled { opacity: .2; pointer-events: none; }
.slick-arrow [class^="icon-"]:before { margin: 0; }
.slick-track { display: -ms-flexbox; display: flex; justify-content: center; will-change: transform; }
.slick-track:before, .slick-track:after {  content: " ";  display: table;}
.slick-track:after { clear: both;}
.slick-list { overflow: hidden;}

.wrapper {
  margin: 0 auto;
  padding: 0 1em;
  position: relative;
  width: 100%;
  min-width: 320px;
  max-width: 1200px;
  box-sizing: border-box;
  font-family: 'Roboto', sans-serif;
}
.clear:before, .clear:after {  content: " ";  display: table;}
.clear:after { clear: both;}

.row:before, .row:after {  content: " ";  display: table;}
.row:after { clear: both;}
.row {  margin-left: -.5em;  margin-right: -.5em; }

[class*='col-'] {  
  float: left;  
  padding: 0 .5em;
  box-sizing: border-box;
}

h1, .h1, h2, h3, h4, h5, h6, .h2, .h3, .h4, .h5, .h6 { line-height: 1.2;  }
h1, .h1 { font-size: 2.4em; font-weight: 800; margin-bottom: .66em; margin-top: 0; }
h2, .h2 { font-size: 2em; font-weight: 800; margin: 1em 0 .5em; }
h3, .h3 { font-size: 1.3em; margin: .5em 0 1em; font-weight: 800; }

.b, strong { font-weight: bold; }

input[type=checkbox] { margin: -2px 4px 0 0;}
input[type="text"], input[type="password"], input[type="email"], input[type="number"], input[type="tel"], input[type="url"], input[type="date"], textarea {
  -webkit-autofill: none;
  appearance: none;
  box-sizing: border-box;
  transition: all 0.2s ease;
}

select { 
  color: var(--grey-lite);
  border: 0 solid #d4d4d4;
  outline: none;
  appearance: menulist;
}
input[type="date"] { padding-right: 20px; }

.form_wrap { 
  background-color: rgba(177,177,162,.2); box-sizing: border-box; border-radius: 1em; padding: 3em 4em; max-width: 768px;
}
.form input[type="text"], .form input[type="password"], .form input[type="email"], .form input[type="number"], .form input[type="tel"], .form input[type="url"], .form input[type="date"], .form textarea {
  height: 76px;
  padding-left: 1em;
  font-size: 28px;
  box-sizing: border-box;
  background-color: transparent;
  appearance: none;
  outline: none;
  border: none;
  border: 0 none;
  border-radius: 3em;
  color: var(--text-black);
  background-color: var(--white);
}

.form input[type="text"]:focus, .form input[type="password"]:focus, .form input[type="email"]:focus, .form input[type="number"]:focus, .form input[type="tel"]:focus, .form input[type="url"]:focus, .form textarea:focus {
  border-color: var(--green-accent);
} 

.form select { 
  height: 76px;
  padding-left: 1em;
  padding-right: 2.2em;
  box-sizing: border-box;
  background-color: transparent;
  appearance: none;
  color: var(--text-black);
  background-color: var(--white);
  outline: none;
  border: 0 none;
  border-radius: 3em;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NDggNTEyIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik00NDMuNSAxNjIuNmwtNy4xLTcuMWMtNC43LTQuNy0xMi4zLTQuNy0xNyAwTDIyNCAzNTEgMjguNSAxNTUuNWMtNC43LTQuNy0xMi4zLTQuNy0xNyAwbC03LjEgNy4xYy00LjcgNC43LTQuNyAxMi4zIDAgMTdsMjExIDIxMS4xYzQuNyA0LjcgMTIuMyA0LjcgMTcgMGwyMTEtMjExLjFjNC44LTQuNyA0LjgtMTIuMy4xLTE3eiIgY2xhc3M9IiI+PC9wYXRoPjwvc3ZnPg==") no-repeat scroll calc(100% - 10px) center / 13px #fff;
}

.btn {
  align-items: center;
  border-radius: 2em;
  display: inline-flex;
  font-weight: 800;
  outline: 0;
  text-decoration: none;
  transition: .3s cubic-bezier(.25,.8,.5,1),color 1ms;
  position: relative;
  z-index: 1;
  vertical-align: middle;
  user-select: none;
  color: #fff;
  padding: 0 2em;
  border: 0 none;
  text-align: center;
  justify-content: center;
  box-sizing: border-box;
  text-transform: uppercase;
  background-color: var(--green);
  cursor: pointer;
  height: 76px;
  line-height: 76px;
  font-size: 24px;
  white-space: nowrap;
}

.btn:hover { background-color: var(--green-accent); }

.section_title { text-align: center; font-size: 48px; font-weight: bold; line-height: 1.2; }
.section_subtitle { text-align: center; font-size: 36px; font-weight: bold; line-height: 1.2; color: var(--green); }

.main { position: relative; overflow: hidden; min-height: 641px; height: 67vh; display: flex; align-items: center; justify-content: center; color: #fff; }
.main_title { text-align: center; line-height: 1.2; font-weight: bold; text-transform: uppercase; font-size: 48px; margin-bottom: 20px; }
.main_subtitle { text-align: center; line-height: 1.2; font-weight: bold; font-size: 36px; margin-bottom: 90px; }
.main_form { display: flex; align-items: center; justify-content: center; gap: 35px; }
.main_form > * { flex: 1 1 auto; }
/*.main_form .btn:before { content: url(/events/img/btn_before.png); margin-right: 10px; margin-top: 15px; }
.main_form .btn:after { content: url(/events/img/btn_after.png); margin-left: 10px; margin-top: 15px; }*/

.grid { position: relative; padding: 120px 0; }
.grid_list { margin-top: 80px; display: flex; flex-wrap: wrap; justify-content: center; }
.grid_item { width: 50%; display: flex; align-items: center; font-size: 18px; line-height: 1.24; }
.grid_item_img { margin-right: 80px; display: block; line-height: 1; width: 150px; }
.grid .section_title:nth-child(1):before { content: url(/events/img/header_before.png); margin-right: 10px; }
.grid .section_title:nth-child(1):after { content: url(/events/img/header_after.png); margin-left: 10px; }

.grid:before { position: absolute; z-index: -1; left: 0; top: 0; content: url(/events/img/grid_l.png); }
.grid:after { position: absolute; z-index: -1; right: 0; top: 0; content: url(/events/img/grid_r.png); }

.slider { padding: 60px 0; overflow: hidden; }
.slider .wrapper { max-width: 980px; }
.slider .slick-dots { display: flex !important; gap: 15px; justify-content: center; align-items: center; margin-top: 40px; }
.slider .slick-dots button { padding: 0; border: 0 none; width: 17px; height: 17px; font-size: 0; border-radius: 17px; background-color: var(--text-black); }
.slider .slick-dots .slick-active button { background-color: var(--green); }
.slider .slick-list { overflow: visible; }
.slider_list { font-size: 0; }
.slider_item { display: inline-block; opacity: .6; }
.slider_item.slick-active.slick-current { opacity: 1; }
.slider_item_img { display: block; line-height: 1; margin: auto; max-width: 100%; }
.slider_arrow { width: 65px; height: 96px; padding: 0; border: 0 none; position: absolute; top: 50%; transform: translateY(-50%); cursor: pointer; z-index: 10; }
.slider_arrow:hover { background-position: center top; }
.slider_arrow-prev { background: url(/events/img/arrow_left.png) no-repeat scroll center bottom transparent; left: 0; }
.slider_arrow-next { background: url(/events/img/arrow_right.png) no-repeat scroll center bottom transparent; right: 0; }


.list { position: relative; overflow: hidden; padding: 60px 0; }
.list .section_title { color: var(--green); }
.list .section_subtitle { color: var(--white); margin-bottom: 10px; }
.list_item { display: flex; align-items: center; gap: 35px; font-size: 18px; line-height: 1.34; }
.list_item_top { text-transform: uppercase; color: var(--green); font-weight: bold; margin-bottom: 10px; }
.list_item_bottom { color: var(--white); font-weight: medium; }


.price { padding: 60px 0 15px; background-color: #f3f3f3; }
.price .section_title:nth-child(1):before { content: url(/events/img/header_before.png); margin-right: 10px; }
.price .section_title:nth-child(1):after { content: url(/events/img/header_after.png); margin-left: 10px; }
.price .section_title:nth-child(2) { margin-bottom: 20px; }
.price .section_subtitle { color: var(--text-black); font-size: 18px; font-weight: normal; margin-bottom: 50px; }
.price_list > .col- { width: 33.33%; margin-bottom: 45px; }
.price_list > .col-:nth-child(3n+1) { clear: left; }
.price_item { border-radius: 16px; background-color: #fff; box-shadow: 0 0 10px rgba(0,0,0,0.15); padding-bottom: 32px; }
.price_item__title { background-color: var(--green); color: #fff; text-align: center; padding: 25px 15px; font-weight: bold; font-size: 24px; border-radius: 16px 16px 0 0; }
.price_item__img { display: block; line-height: 1; width: 100%; }
.price_item__price { background-color: var(--green); color: #fff; text-align: center; padding: 25px 15px; font-weight: bold; font-size: 18px; }
.price_item__charlist { padding: 20px 15px; font-size: 18px; font-weight: medium; }
.price_item__charitem { margin-bottom: 10px; display: flex; align-items: flex-start; }
.price_item__charitem:before { flex: 0 0 21px; width: 21px; height: 16px; background: url(/events/img/ok.png) no-repeat scroll transparent; content: ''; margin-right: 14px; }
.price_item .btn { font-size: 18px; height: 42px; margin: 0 auto; display: flex; }


.gallery { padding: 60px 0; position: relative; }
.gallery .section_title { margin-bottom: 50px; }
.gallery .section_title:before { content: url(/events/img/header_before.png); margin-right: 10px; }
.gallery .section_title:after { content: url(/events/img/header_after.png); margin-left: 10px; }
.gallery_list.row { display: flex; align-items: flex-start; flex-wrap: wrap; }
.gallery_list > .col- { width: 50%; margin-bottom: 40px; }
.gallery_item { position: relative; }
.gallery_item__title { position: absolute; z-index: 2; left: -15px; top: -15px; color: var(--white); width: 256px; height: 121px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; background: url(/events/img/gallery_title.png) no-repeat scroll center / contain transparent; line-height: 1; font-size: 18px; font-weight: bold; text-align: center; padding: 0 50px 0 20px; }
.gallery_item__list img { display: block; line-height: 1; float: left; }
.gallery_item__list .slick-dots { display: flex !important; gap: 15px; justify-content: center; align-items: center; margin-top: 20px; }
.gallery_item__list .slick-dots button { padding: 0; border: 0 none; width: 17px; height: 17px; font-size: 0; border-radius: 17px; background-color: var(--text-black); }
.gallery_item__list .slick-dots .slick-active button { background-color: var(--green); }

.gallery:before { position: absolute; z-index: -1; left: 0; top: 0; content: url(/events/img/gallery_l.png); }
.gallery:after { position: absolute; z-index: -1; right: 0; top: 0; content: url(/events/img/gallery_r.png); }


.form_block { position: relative; overflow: hidden; padding: 200px 0; background: url(/events/img/form_back.png) no-repeat scroll center / cover transparent; }
.form_block .wrapper { display: flex; flex-direction: column; justify-content: center; }
.form_block .section_title { color: var(--white); font-size: 60px; margin-bottom: 75px; }
.form_block .section_subtitle { color: var(--white); margin-bottom: 75px; font-size: medium; font-size: 30px; }
.form_block_form { display: flex; align-items: center; justify-content: center; gap: 17px; }
.form_block_form.form input[type=text],
.form_block_form.form input[type=date],
.form_block_form.form button { flex: 1 1 auto; font-size: 16px; height: 45px; }
.form_block .gdlr-core-parallax { height: 150% !important; }


.contacts { padding: 60px 0; position: relative; background: url(/events/img/contacts.jpg) no-repeat scroll center / cover #fff; }
.contacts .section_title { text-transform: uppercase; margin-bottom: 30px; }
.contacts .section_title:before { content: url(/events/img/header_before.png); margin-right: 10px; }
.contacts .section_title:after { content: url(/events/img/header_after.png); margin-left: 10px; }
.contacts .section_subtitle { font-size: 30px; font-weight: medium; margin-bottom: 25px; color: var(--text-black); }
.contacts_phone { font-size: 30px; font-weight: bold; margin-bottom: 25px; color: var(--text-black); display: flex; align-items: center; gap: 20px; justify-content: center; }
.contacts_phone:before { content: url(/events/img/phone.png); }
.contacts_address { text-align: center; margin-bottom: 10px; }
.contacts .soc { display: flex; align-items: center; justify-content: center; gap: 15px; margin-top: 30px; }

