/* Typography. */

@font-face {
   font-family: 'MYRIADPRO';
   src: url("../fonts/MYRIADPRO-REGULAR.woff")format("woff");
   font-style: normal;
   font-weight: 400;
   font-display: swap;
}

/* Typography. */

/* Root. */

:root {
   /* icon. */
   --icon_size: 24px;
   /* icon. */
   /* font-size. */
   --main_title: 85px;
   --title_big: 65px;
   --title: 55px;
   --title_small: 45px;
   --big_text: 35px;
   --label: 30px;
   --body: 25px;
   --family: 'MYRIADPRO', sans-serif;
   --font2: 'PT Serif', serif;
   /* font-size. */
   /* color. */
   --color: var(--black);
   --bg: #fff;
   --white: #F4F0ED;
   --black: #48424C;
   --red: red;
   /* color. */
   /* btn.*/
   --btn_height: 46px;
   --btn_inner: 16px;
   --btn_color: var(--black);
   --btn_font: var(--label);
   --btn_bg: transparent;
   --btn_bd_size: 1px;
   --btn_bd_color: var(--black);
   --btn_shadow: #48424C52;
   --btn__lh: 0px;
   /* btn.*/
   /* inner. */
   --i1: 180px;
   --i2: 120px;
   --bone: 60px;
   --bone_w: 1760px;
   --bone_size: max((100vw - var(--bone_w) - var(--scroll)) / 2, var(--bone));
   /* inner. */
   /* grid. */
   --grid_2: 2;
   --grid_3: 3;
   --grid_4: 4;
   /* grid. */
}

/* Root. */

/* Null. */

* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
   color: var(--color);
}
.none {
   display: none !important;
}
html {
   display: block;
}

body {
   margin: 0;
   padding: 0;
   color: var(--color);
   font-size: var(--body);
   font-weight: 400;
   font-style: normal;
   line-height: 1.6;
   font-family: var(--family);
   background-color: var(--bg);
}

img,
svg {
   display: block;
   width: 100%;
   height: auto;
}

a {
   text-decoration: none;
}

li {
   list-style-type: none;
}

input,
button,
textarea {
   display: block;
   font-family: var(--family);
   background-color: transparent;
   border: 0 none;
   box-shadow: none;
   appearance: none;
   outline: none;
   resize: none;
}

input::placeholder,
textarea::placeholder {
   color: var(--color);
   font-family: var(--family);
}

/* Null. */

/* Global. */

html.hidden {
   overflow: hidden;
}

.bone {
   width: 100%;
   max-width: calc(var(--bone_w) + var(--bone) * 2);
   margin: 0 auto;
   padding: 0 var(--bone);
}

/* Global. */

/* Grid. Flex. */

[class*=__grid] {
   display: grid;
   flex-wrap: wrap;
   grid-gap: var(--inner_g);
}

.__grid-twoo {
   grid-template-columns: repeat(var(--grid_2), 1fr);
}

.__grid-three {
   grid-template-columns: repeat(var(--grid_3), 1fr);
}

.__grid-four {
   grid-template-columns: repeat(var(--grid_4), 1fr);
}

[class*=__flex] {
   display: flex;
}

.__flex-align {
   align-items: center;
}

.__flex-start {
   align-items: flex-start;
   justify-content: space-between;
}

.__flex-end {
   align-items: flex-end;
   justify-content: space-between;
}

.__flex-center {
   align-items: center;
   justify-content: space-between;
}

/* Grid. Flex. */

/* Icon. */

[class*=__icon-] {
   position: relative;
}

[class*=__icon-]:before {
   content: '';
   position: absolute;
   top: calc(50% - var(--icon_size) / 2);
   width: var(--icon_size);
   height: var(--icon_size);
   background-position: center;
   background-repeat: no-repeat;
   background-size: contain;
}

/* Icon. */

/* Slider. */

/* Слайдер */

.slick-slider {
   /* slide inner. */
   --inner_slider-x: 0px;
   --inner_slider-y: 0px;
   --inner_slider-shadow: 0px;
   /* slide inner. */
   /* slide arrow. */
   --arrow-size: max(8.33vw, 60px);
   --arrow-ind: var(--bone_size);
   /* slide arrow. */
   position: relative;
}

.slick-slider._all {
   overflow: hidden;
   margin: 0 calc(var(--bone_size) * -1);
}

.slick-slider._all .slick-list {
   padding: 0 var(--bone_size);
}

/* Ограничивающая оболочка */

.slick-list {
   overflow: hidden;
   position: relative;
   height: 100%;
   margin: min(var(--inner_slider-y) * -1, var(--inner_slider-shadow) * -1) min(var(--inner_slider-x) / -2, var(--inner_slider-shadow) * -1);
   padding: 0 max(var(--inner_slider-shadow) - var(--inner_slider-x) / 2, 0);
}

/* Лента слайдов */

.slick-track {
   overflow: hidden;
   display: flex;
   align-items: flex-start;
   height: 100%;
}

/* Слайд */

.slick-slide {
   outline: 0 !important;
   margin: var(--inner_slider-y) calc(var(--inner_slider-x) / 2);
}

/* Точки (pins) */

.slick-dots {
   position: absolute;
   right: calc(168px + var(--bone_size));
   bottom: var(--i2);
   z-index: 9999;
}

/* Стили точки. */

.slick-dots button {
   position: absolute;
   font-size: var(--body);
   letter-spacing: .1em;
   transition: opacity .43s;
}

.slick-dots button:not(:first-child) {
   position: absolute;
   right: 0;
}

.slick-dots li:not(.slick-active) button {
   pointer-events: none;
   opacity: 0;
}

/* Стрелка. */

.slick-arrow {
   position: absolute;
   top: calc(50% - var(--arrow-size) / 2);
   left: var(--arrow-ind);
   width: var(--arrow-size);
   height: var(--arrow-size);
   font-size: calc(var(--arrow-size) * .225);
   text-transform: uppercase;
   border: 3px solid var(--white);
   border-radius: 50%;
   line-height: 1;
   cursor: pointer;
   z-index: 9999;
   transition: transform .43s;
}

/* Стрелка вправо. */

.slick-arrow.slick-next {
   left: auto;
   right: var(--arrow-ind);
}

.slick-arrow.slick-next:border {
   transform: rotate(200grad);
}

/* Стрелка hover. */

.slick-arrow:not(.slick-disabled):hover {
   transform: scale(1.2);
}

/* Slider. */

/* Button. */

[class*=__btn] {
   --color: var(--btn_color);
   display: inline-block;
   position: relative;
   min-width: min(var(--btn_w), 100%);
   height: var(--btn_height);
   padding: 0 var(--btn_inner);
   font-size: var(--btn_font);
   text-align: center;
   line-height: calc(var(--btn_height) - (var(--btn_bd_size) * 2) - var(--btn__lh));
   background-color: var(--btn_bg);
   border: var(--btn_bd_size) solid var(--btn_bd_color);
   /* border-radius: ; */
   cursor: pointer;
   transition: box-shadow .43s;
}

[class*=__btn]:hover {
   box-shadow: 0 4px 32px var(--btn_shadow);
}

[class*=__btn] [class*=__icon] {
   padding-left: cacl(var(--icon_size) + 8px);
}

[class*=__btn] [class*=__icon]:border {
   left: 0;
}

/*.__btn-COLOR_NAME {

	--btn_color: ;

	--btn_bg: ;

}*/

/* Button. */

/* Input. */

._input {
   display: block;
   position: relative;
}

input:not([type=checkbox], [type=radio], [type=submit], [type=range]),
textarea {
   width: 100%;
   min-height: 60px;
   padding: 0 min(32px, var(--bone));
   font-size: min(20px, var(--body));
   text-overflow: ellipsis;
   background-color: rgba(72, 66, 76, .25);
   transition: border-color .43s, color .43s;
}

textarea {
   height: 120px;
   padding-top: 24px;
}

/* Input. */

/* Error. */

._error input,
._error textarea {
   --color: var(--red) !important;
   border-color: var(--red) !important;
}

._error .error_text {
   display: block;
}

.error_text {
   display: none;
   position: absolute;
   left: min(32px, var(--bone));
   bottom: 2px;
   color: var(--red);
   font-size: 10px;
   z-index: 1;
}

/* Error. */

/* Input fixed placeholder. */

.input_palceholder {
   pointer-events: none;
   position: absolute;
   top: 19px;
   left: min(32px, var(--bone));
   color: var(--black);
   line-height: 1;
   cursor: text;
   transform-origin: left top;
   transition: top .43s, transform .43s;
}

.input_palceholder.active {
   top: 4px;
   transform: scale(.7);
}

.input_palceholder+input:not([type=checkbox], [type=radio], [type=submit], [type=range]) {
   padding-top: 6px;
}

/* Input fixed placeholder. */

/* Hover_line. */

[class*=__hover_line] {
   --line_l: 0px;
   --line_r: 0px;
   display: inline-block;
   position: relative;
   cursor: pointer;
   line-height: 1.4;
   outline: 0 none !important;
   white-space: nowrap;
   transition: color .43s;
}

[class*=__hover_line]:after {
   content: '';
   position: absolute;
   left: var(--line_l);
   right: 100%;
   bottom: 0;
   border-bottom: 1px solid var(--color);
   transition: right .43s ease-out;
}

[class*=__hover_line]:hover:after,
.__hover_line-active:after {
   right: var(--line_r);
}

.__hover_line-active:hover:after {
   right: 100%;
}

/* Hover_line. */

/* Header. */

.header {
   --color: var(--white);
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   padding: 20px 0;
   z-index: 9999;
}

.header._black {
   --color: var(--black);
}

.header_net {
   grid-gap: 40px;
}

.header_logo:not(._big) {
   max-width: max(8vw, 100px);
}

.header_logo._big {
   margin-top: 12px;
}

.header_right {
   grid-gap: max(3.75vw, 20px);
   padding-top: 20px;
}

.header_res {
   font-size: calc(var(--title_small) * .88);
   font-family: var(--font2);
}

/* Header. */

/* Bar. */

.bar {
   z-index: 10;
}

.bar_burger {
   overflow: hidden;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   width: 60px;
   height: 40px;
   margin: -10px -8px;
   padding: 10px 8px;
   border-radius: 4px;
   cursor: pointer;
   z-index: 20;
   transition: background .43s, transform .43s;
}

.bar_burger.active:hover {
   transform: scale(1.2);
}

.bar_burger span {
   width: 100%;
   height: 2px;
   background-color: var(--color);
   transition: transform .43s, opacity .43s, width .43s;
}

.bar_burger:not(:hover) span:nth-child(2) {
   width: 64%;
}

.bar_burger.active span:nth-child(1) {
   transform: rotate(50grad) translate3d(7px, 7px, 0);
}

.bar_burger.active span:nth-child(2) {
   opacity: 0;
   transform: translateX(-100%);
}

.bar_burger.active span:nth-child(3) {
   transform: rotate(-50grad) translate3d(5px, -6px, 0);
}

.bar_burger.active span {
   background-color: var(--black);
}

.bar_wrapper {
   overflow: hidden;
   display: none;
   position: fixed;
   left: 0;
   right: 0;
   bottom: 0;
   height: 100vh;
   max-height: calc(100vh);
   background-color: var(--bg);
   z-index: -1;
}

.bar_net {
   overflow-y: scroll;
   width: calc(100% + 40px);
   height: 100%;
   max-height: 100vh;
   margin-right: -40px;
   padding-right: calc(40px - var(--scroll));
}

.bar_bg {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   min-height: 100vh;
   z-index: -1;
}

.bar_bg img {
   height: 100%;
   object-fit: cover;
   object-position: center;
}

.bar_nav {
   --color: #5B6365;
   flex-direction: column;
   align-items: flex-start;
   grid-gap: 36px;
   width: min(50%, 832px);
   height: 100%;
   margin-left: auto;
   padding: 100px max(20px, 5.2vw);
   font-size: var(--title);
   font-family: var(--font2);
   line-height: 1;
   background-color: rgba(255, 255, 255, .87);
}

.bar_nav_li:after {
   border-width: 4px;
}

/* Bar. */

/* Footer. */

.footer {
   position: relative;
   padding: var(--i2) 0 32px;
   background-color: var(--bg);
   z-index: 1;
}

.footer_net {
   grid-gap: 32px;
   justify-content: flex-end;
}

.footer_hrefs {
   grid-gap: 44px;
}

.footer_href {
   font-size: var(--label);
}

.footer_href:after {
   border-width: 2px;
}

.footer_soc {
   --size: 64px;
   grid-gap: 32px;
}

.footer_soc a {
   width: var(--size);
   height: var(--size);
}

.footer_soc a:hover {
   --color: #422918;
}

.footer_soc path {
   transition: fill .43s;
}

/* Footer. */

/* Main. */

.main {
   position: sticky;
   top: 0;
   --color: var(--white);
}

.main_slider .slick-track {
   align-items: stretch;
}

.main_slide {
   position: relative;
   z-index: 1;
}

.main_slide_bg {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   z-index: -1;
}

.main_slide_bg:after {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background-color: rgba(0, 0, 0, .5);
}

.main_slide_bg img {
   height: 100%;
   object-fit: cover;
   object-position: center;
}

.main_slide_content {
   flex-direction: column;
   justify-content: flex-end;
   min-height: 100vh;
   padding: max(var(--i2), var(--header)) 0 var(--i2);
   padding-right: 200px;
}

.main_slide_title {
   padding-bottom: 24px;
   font-size: var(--main_title);
   font-family: var(--font2);
   line-height: 1.17;
}



.main_dots {
   display: flex;
   flex-wrap: nowrap;
   align-items: center;
   grid-gap: 32px;
   position: absolute;
   bottom: calc(var(--i2) - var(--body) * 1.7 / 2);
   right: var(--bone_size);
   z-index: 9999;
}

.main_dot {
   --size: 12px;
   position: relative;
   width: var(--size);
   height: var(--size);
   background-color: var(--white);
   border-radius: 50%;
   cursor: pointer;
}

.main_dot:before {
   content: '';
   position: absolute;
   top: calc(50% - var(--size) / 2);
   left: calc(50% - var(--size) / 2);
   width: var(--size);
   height: var(--size);
   border: 1px solid var(--white);
   border-radius: 50%;
   box-sizing: border-box;
   transition: transform .43s;
}

.main_dot:hover:before {
   transform: scale(2);
}

.main_dot.active:before {
   transform: scale(2.8);
}

/* Main. */

/* Was. */

.was {
   overflow: hidden;
   position: relative;
   grid-gap: 32px;
   padding: var(--i1) 0;
   background-color: var(--bg);
   z-index: 1;
}



.was_content {
   display: flex;
   flex-wrap: wrap;
   flex-direction: column;
   justify-content: space-between;
   padding-bottom: 100px;
   padding-right: var(--bone_size);
}

.was_text {
   font-size: var(--title_small);
   font-family: var(--font2);
   line-height: 2;
}

.was_q {
   margin-top: 40px;
   font-size: var(--big_text);
}

/* Was. */

/* Treeple. */

.treeple {
   padding: var(--i2) 0 var(--i1);
   background-color: var(--white);
   z-index: -1;
}

.treeple .bone {
   position: sticky;
   top: 0;
}

.treeple_net {
   grid-template-areas: 'title title2 title3'
      'list list2 list3'
      'label label2 label3'
      'btn btn2 btn3';
   grid-gap: 0 max(7.2vw, 32px);
}

.treeple_title {
   grid-area: title;
   font-size: var(--title_small);
   font-family: var(--font2);
}

.treeple_title._to {
   grid-area: title2;
}

.treeple_title._three {
   grid-area: title3;
}

.treeple_list {
   grid-area: list;
   position: relative;
   margin-top: 20px;
}

.treeple_list li {
   position: relative;
   line-height: 1.2;
}

.treeple_list li:before {
   --size: 4px;
   content: '';
   position: absolute;
   top: calc(var(--body) * .6 - var(--size) / 2);
   left: calc((var(--size) + 8px) * -1);
   width: var(--size);
   height: var(--size);
   background-color: #48424C;
   border-radius: 50%;
}

.treeple_list._to {
   grid-area: list2;
}

.treeple_list._three {
   grid-area: list3;
}

.treeple_label {
   grid-area: label;
   margin-top: 28px;
   font-size: var(--label);
   font-family: var(--font2);
   line-height: 1.2;
}

.treeple_label._to {
   grid-area: label2;
}

.treeple_label._three {
   grid-area: label3;
}

.treeple_btn {
   grid-area: btn;
   margin-top: 52px;
   text-align: center;
}

.treeple_btn._to {
   grid-area: btn2;
}

.treeple_btn._three {
   grid-area: btn3;
}

/* Treeple. */

/* Centeral. */

.centaral {
   --bone_w: 1452px;
   padding: var(--i2) 0;
   text-align: center;
   background-color: var(--bg);
}

.centaral_title {
   font-size: var(--title_small);
   font-family: var(--font2);
}

.centaral_text {
   margin-top: 32px;
   line-height: 1.2;
}

.centaral_text p+p {
   margin-top: 1.2em;
}

/* Centeral. */

/* Lag. */

.lag {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   justify-content: center;
   min-height: 532px;
   font-size: var(--label);
   background-color: var(--white);
   position: relative;
}

.lag__img {
   position: absolute;
   bottom: 80px;
   left: 139px;


}

@media (max-width:1550px) {
   .lag__img {
      max-width: 800px;
   }
}

@media (max-width:1250px) {
   .lag__img {
      max-width: 500px;
      left: 20px;
   }
}

@media (max-width:768px) {
   .lag__img {
      max-width: 100%;
      bottom: 50px;
      left: 10px;
   }
}

/* Lag. */

/* Main. */

.gallery {
   --color: var(--white);
}

.gallery_slide {
   position: relative;
}

.gallery_slide:after {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background-color: rgba(0, 0, 0, .3);
}

.gallery_slide p {
   position: absolute;
   top: calc(var(--header) + 40px);
   max-width: 1600px;
   margin: 0 var(--bone_size);
   font-size: var(--title);
   font-family: var(--font2);
   z-index: 1;
}

.gallery_slide img {
   height: 100vh;
   object-fit: cover;
   object-position: center;
}

/* Main. */

/* Contact. */

.contact {
   --bone_w: 1024px;
   position: relative;
   min-height: 100vh;
   padding: max(72px, var(--header) + 40px) 0 72px;
}

.contact_bg {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   z-index: -1;
}

.contact_bg:after {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background-color: rgba(0, 0, 0, .2);
}

.contact_bg img {
   height: 100vh;
   object-fit: cover;
   object-position: center;
}

.contact_wrapper {
   padding: 92px 60px;
   background-color: var(--white);
   box-shadow: 7px 7px 12px rgba(40, 80, 100, .3);
   line-height: 1;
}

.contact_title {
   font-size: var(--label);
   font-family: var(--font2);
}

.contact_label {
   font-size: min(20px, var(--body));
}

.contact_net {
   grid-gap: 40px 6.25vw;
   margin-top: 80px;
}

.contact_form {
   display: flex;
   flex-direction: column;
   grid-gap: 20px;
   width: 412px;
}

.contact_form_btn {
   padding: 0 20px;
   margin-top: 16px;
   font-size: min(20px, var(--body));
   text-align: left;
   cursor: pointer;
}

.contact_info {
   min-width: 200px;
   line-height: 1.4;
}

.contact_info_line {
   font-family: 'Open sans', sans-serif;
   font-weight: 300;
   font-size: min(var(--body), 20px);
}

/* Contact. */

/* Event. */

.event_wrapper {
   position: relative;
   z-index: 1;
}

.event_wrapper .main {
   position: sticky;
   top: 0;
   z-index: -1;
}

.event {
   padding: 87px 0 var(--i1);
   background-color: var(--bg);
}

.event_net.__grid-twoo.two {
   padding-top: 60px;
}

.event_pink-text {
   font-size: 73px;
   font-weight: 400;
   font-family: var(--font2);
   padding-left: var(--bone_size);
}


.event_net {
   grid-gap: 40px max(4vw, 40px);
   align-items: center;
}

.event_info {
   padding-left: var(--bone_size);
}

.event_title {
   font-size: var(--title_small);
   font-family: var(--font2);
   line-height: 1.3;
}

.event_label {
   margin-top: 32px;
   font-size: var(--title_small);
   font-family: var(--font2);
   line-height: 1.3;
}

.event_sharp {
   margin-top: calc(var(--i2) * .83);
   font-size: var(--title_small);
   font-family: var(--font2);
}

.event_text {
   font-size: var(--label);
}

.event_bottom {
   font-size: var(--label);
}

.event_bottom span {
   font-size: var(--big_text);
}

.event_img {
   position: relative;
}

.event_img:after {
   content: '';
   display: block;
   padding-bottom: 90%;
}

.event_img img {
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   object-fit: contain;
   object-position: center;


}

.event_img img.img {
   top: 140px;
}

.gift__title {
   max-width: 809px;
   margin: 0 auto 50px;

}

.gift {
   padding-top: 100px;
}

.gift__text {
   width: 1500px;
}

.gift__wrap {
   position: absolute;
   display: flex;
   white-space: nowrap;
   will-change: transform;
   animation: marquee 55s linear infinite;
   height: 100%;
}

.gift__text img {
   height: 100%;

}

.gift__marquee {
   margin-bottom: 40px;
   overflow: hidden;
   position: relative;
   width: 100vw;
   max-width: 100%;
   display: flex;
   height: 55px;
}

.gift .header_res {
   color: rgb(72, 66, 76);
}

.gift .bar_burger span {
   background: rgb(72, 66, 76);
   ;
}

@media (max-width:1920px) {
   .gift__title {
      max-width: 42%;
   }
}

@keyframes marquee {
   from {
      transform: translateX(0);
   }

   to {
      transform: translateX(-50%);
   }
}

/* Event. */


@media only screen and (max-width: 1200px) {
   .event_net.__grid-twoo.two {
      padding-top: 150px;
   }

   .gift__title {
      margin: 0 auto 20px;
   }

   .event_pink-text {
      margin-top: -120px;
      font-size: 40px;
   }

   .event_img img.img {
      top: 0;
   }

}



.giftcard-details .giftcard-entries .giftcard-entry .image {
   height: auto;
   width: 100px;
}

@media only screen and (max-width:768px) {
   .event_net.__grid-twoo.two {
      padding-top: 100px;
   }

   .gift__text {
      width: 900px;
   }

   .gift__marquee {
      margin-bottom: 20px;
   }

   .gift__marquee {
      height: 30px;
   }

   .gift__title {
      margin: 30px auto 30px;
   }



   .event_pink-text {
      margin-top: -70px;
      font-size: 32px;
   }
}

@media only screen and (max-width:768px) {
   .gift__title {
      max-width: 280px;
   }
}

/* Wein. */

.wein {
   overflow: hidden;
}

.wein_main {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: space-between;
   grid-gap: 40px;
   min-height: 100vh;
   padding: var(--i1) 0 max(var(--i1) / 2, 40px);
}

.wein_menu {
   display: inline-block;
}

.wein_menu_img img {
   max-width: max(160px, 20vw);
   max-height: max(140px, 41vh);
   margin: 0 auto;
   height: 100%;
   object-fit: contain;
   object-position: center;
}

.wein_menu_name {
   margin-top: -1.4em;
   font-size: min(7vw, 134px);
   font-family: var(--font2);
   text-align: center;
}

.wein_information {
   padding: 40px 0 60px;
   background-color: var(--white);
}

.wein_information_title {
   font-size: var(--title_big);
   font-family: var(--font2);
   text-align: center;
}

.wein_information_subtitle {
   margin-top: 52px;
   font-size: var(--big_text);
   /*font-family: var(--font2);*/
}

.wein_information_text {
   margin-top: 32px;
}

.wein_information_net {
   grid-gap: 20px;
   margin-top: calc(var(--i2) * .8);
}

.wein_information_left {
   width: min(56%, 980px);
}



.wein_information_net_list {
   margin-top: 2em;
}

.wein_information_net_list li {
   --inner: max(8vw, 28px);
   position: relative;
   padding-left: calc(var(--inner));
}

.wein_information_net_list li:before {
   --icon_size: 11px;
   content: '';
   position: absolute;
   top: calc(var(--body) * .8 - var(--icon_size) / 2);
   left: calc(var(--inner) - 28px);
   width: var(--icon_size);
   height: var(--icon_size);
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.65' height='10.963' viewBox='0 0 11.65 10.963'%3E%3Cg id='Сгруппировать_39' data-name='Сгруппировать 39' transform='translate(-6206.435 -1756.502)'%3E%3Cpath id='Контур_804' data-name='Контур 804' d='M6210.087,1767.456a.56.56,0,0,1-.51-.221,16.685,16.685,0,0,1-2.07-2.5c-.334-.468-.679-.929-.971-1.426-.067-.114-.169-.242-.037-.366s.238,0,.343.057c.929.536,1.848,1.087,2.738,1.686.369.249.459.228.694-.152a27.774,27.774,0,0,1,5.163-6.172,15.558,15.558,0,0,1,2.335-1.755,1.314,1.314,0,0,1,.207-.106c.029-.011.07.012.106.019a.493.493,0,0,1-.026.106.247.247,0,0,1-.062.062,26.778,26.778,0,0,0-4.109,5.046q-1.794,2.653-3.331,5.466A.409.409,0,0,1,6210.087,1767.456Z' fill='%2348424c'/%3E%3C/g%3E%3C/svg%3E%0A");
   background-position: center;
   background-repeat: no-repeat;
   background-size: contain;
}

.wein_information_menu {
   display: flex;
   flex-direction: column;
   align-items: center;
   margin-top: 52px;
}

.wein_information_menu_img {
   max-width: 328px;
}

.wein_information_menu_btn {
   margin-top: 12px;
}

.wein_information_img {
   flex-grow: 1;
   position: relative;
   margin-right: calc(var(--bone_size) * -1);
}

.wein_information_img:after {
   content: '';
   display: block;
   padding-bottom: max(56%, 480px);
}

.wein_information_img img {
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   object-fit: cover;
   object-position: center;
}

.wein_information_list {
   margin-top: 32px;
}

.wein_information_label {
   margin-top: 1em;
   font-size: var(--label);
}

.wein_information_btn {
   margin-top: 40px;
   text-align: center;
}

.wein_img {
   --color: var(--white);
   display: flex;
   align-items: center;
   justify-content: center;
   height: 800px;
   max-height: 100vh;
   font-size: var(--main_title);
   font-family: var(--font2);
   background-attachment: fixed;
   background-position: center;
   background-repeat: no-repeat;
   background-size: cover;
}

.wein_img._big {
   height: 1000px;
   max-height: 100vh;
}

.wein_star {
   --bone_w: 1400px;
   padding: 60px 0 var(--i2);
   text-align: center;
}

.wein_star_title {
   font-size: var(--title_small);
   font-family: var(--font2);
}

.wein_star_title+.wein_star_text {
   margin-top: 40px;
}

.wein_star_text p+p {
   margin-top: 1em;
}

.wein_stars {
   margin: 1.6em 0;
}

.wein_star_btn {
   margin-top: 24px;
   text-align: center;
}

.wein_visit {
   padding-bottom: 60px;
   background-color: var(--white);
}

.wein_visit_img {
   position: relative;
}

.wein_visit_img:after {
   content: '';
   display: block;
   padding-bottom: 66.7%;
}

.wein_visit_img img {
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   object-fit: cover;
   object-position: center;
}

.wein_visit_info {
   padding: 20px min(40px, var(--bone));
}

.wein_visit_title {
   font-size: var(--big_text);
   font-family: var(--font2);
   line-height: 1.28;
}

.wein_visit_text_big {
   margin-top: 48px;
   font-size: var(--label);
   line-height: 1.16;
}

.wein_visit_text {
   margin-top: 48px;
   line-height: 1.2;
}

.wein_ski {
   display: flex;
   flex-direction: column;
   grid-gap: 60px;
   background-color: var(--white);
   padding: 80px 0;
}

.wein_ski_net {
   grid-gap: 32px;
   align-items: center;
}

.wein_ski_img {
   position: relative;
}

.wein_ski_img:after {
   content: '';
   display: block;
   padding-bottom: 79%;
}

.wein_ski_img img {
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   object-fit: cover;
   object-position: center;
}



.wein_ski_title {
   font-size: var(--big_text);
   font-family: var(--font2);
   line-height: 1;
}

.wein_ski_text {
   margin-top: 36px;
   line-height: 1;
}

.wein_ski_dich {
   font-size: var(--label);
   font-family: var(--font2);
   line-height: 1.16;
}

.wein_ski_dich:not(:first-child) {
   margin-top: 40px;
}

.wein_ski_list {
   margin-top: 32px;
   padding-left: max(4vw, 20px);
}

.wein_ski_list li {
   position: relative;
   padding-left: 16px;
   line-height: 1.2;
}

.wein_ski_list li:before {
   --size: 4px;
   content: '';
   position: absolute;
   top: calc(var(--body) * .6 - var(--size) / 2);
   left: 0;
   width: var(--size);
   height: var(--size);
   background-color: #48424C;
   border-radius: 50%;
}

.wein_ski_menu {
   justify-self: center;
}

.wein_ski_menu_img {
   max-width: 132px;
}

.wein_ski_menu_btn {
   margin-top: 16px;
   text-align: center;
}

/* Wein. */

/* Block_anim. */

.block_anim {
   position: relative;
   z-index: 1;
}

.block_anim .treeple {
   position: relative;
   z-index: 1;
}

.block_anim .centaral {
   position: sticky;
   bottom: 0;
   z-index: -1;
}

.block_anim .lag {
   position: sticky;
   bottom: 0;
   z-index: -2;
}

/* Block_anim. */

/* Anim. */

._anim-drop {
   animation: drop 1s infinite linear alternate;
}

.__anim:not(.main_coin) {
   opacity: 0;
   transition: all 1s;
}

.__anim._anim_act {
   opacity: 1;
   transform: translate3d(0, 0px, 0px) !important;
}

._anim-x {
   transform: translate3d(-100%, 0px, 0px);
}

._anim-x_r {
   transform: translate3d(100%, 0px, 0px);
}

._anim-y {
   transform: translate3d(0, 100px, 0px);
}

@keyframes drop {
   from {
      transform: translate3d(0, 2%, 0px);
   }

   to {
      transform: translate3d(0, -2%, 0px);
   }
}

/* Animation. */

@media only screen and (max-width: 1500px) {
   /* Root. */

   :root {
      /* font-size. */
      --main_title: 68px;
      --title_big: 52px;
      --title: 44px;
      --title_small: 36px;
      --big_text: 28px;
      --label: 24px;
      --body: 20px;
      /* font-size. */
   }

   /* Root. */

   /* Footer. */

   .footer_soc {
      --size: 52px;
   }

   /* Footer. */
}

@media only screen and (max-width: 1200px) {
   /* Root. */

   :root {
      /* font-size. */
      --main_title: 60px;
      --title_big: 46px;
      --title: 40px;
      --title_small: 32px;
      --big_text: 25px;
      --label: 22px;
      --body: 18px;
      /* font-size. */
      /* grid. */
      --grid_4: var(--grid_3);
      /* grid. */
   }

   /* Root. */

   /* Footer. */

   .footer_soc {
      --size: 44px;
   }

   /* Footer. */

   /* Event. */

   .event {
      padding-bottom: 0;
   }

   .event_net {
      --grid_2: 1;
   }

   /* Event. */
}

@media only screen and (max-width: 1030px) {
   /* Was. */

   .was {
      display: flex;
      flex-direction: column-reverse;
      padding-bottom: 0;
   }

   .was_content {
      padding-left: var(--bone_size);
      padding-bottom: 0;
   }

   /* Was. */

   /* Treeple. */

   .treeple_net {
      display: flex;
      flex-direction: column;
   }

   .treeple_title:not(:first-child) {
      margin-top: 40px;
   }

   .treeple_title br {
      display: none;
   }

   .treeple_btn {
      margin-top: 16px;
      text-align: left;
   }

   /* Treeple. */
}

@media only screen and (max-width: 900px) {
   /* Root. */

   :root {
      /* font-size. */
      --main_title: 40px;
      --title_big: 36px;
      --title: 32px;
      --title_small: 24px;
      --big_text: 20px;
      --label: 18px;
      --body: 16px;
      /* font-size. */
      /* inner. */
      --i1: 120px;
      --i2: 80px;
      --bone: 40px;
      /* inner. */
      /* grid. */
      --grid_3: var(--grid_2);
      /* grid. */
   }

   /* Root. */
}

@media only screen and (max-width: 770px) {
   /* Main. */

   .main_slide_content {
      padding-right: 0;
   }

   .main_dots {
      left: calc(var(--bone_size) + 60px);
      right: auto;
      bottom: calc(var(--i2) / 2 - var(--body) * 1.7 / 2);
   }

   .main .slick-dots {
      left: var(--bone_size);
      right: auto;
      bottom: calc(var(--i2) / 2);
   }

   /* Main. */

   /* Contact. */

   .contact_wrapper {
      padding: 40px 32px;
   }

   .contact_net {
      margin-top: 32px;
   }

   /* Contact. */

   /* Wein. */

   .wein_menu_name {
      font-size: 92px;
   }

   .wein_information_net {
      flex-direction: column-reverse;
   }

   .wein_information_left {
      width: auto;
   }

   .wein_information_img {
      width: calc(100% + var(--bone_size) * 2);
      margin-left: calc(var(--bone_size) * -1);
      margin-right: calc(var(--bone_size) * -1);
   }

   .wein_visit,
   .wein_ski_net {
      --grid_2: 1;
   }

   .wein_ski_info {
      padding: 0 var(--bone_size);
   }

   /* Wein. */
}

@media only screen and (max-width: 600px) {
   /* Root. */

   :root {
      /* font-size. */
      --main_title: 28px;
      --title_big: 28px;
      --title: 24px;
      --title_small: 22px;
      --big_text: 18px;
      --label: 17px;
      --body: 15px;
      /* font-size. */
      /* grid. */
      --grid_2: 1;
      /* grid. */
      --bone: 20px;
   }

   /* Root. */

   /* Slider. */

   .slick-arrow {
      font-size: 12px;
      border-width: 2px;
   }

   /* Slider. */

   /* Input fixed placeholder. */

   .input_palceholder.active {
      top: 10px;
   }

   /* Input fixed placeholder. */

   /* Header. */

   .header_logo:not(._big) {
      max-width: 80px;
   }

   /* Header. */

   /* Bar. */

   .bar_burger {
      width: 30px;
      height: 24px;
      margin: -5px -4px;
      padding: 5px 4px;
   }

   .bar_burger span {
      height: 1px;
   }

   .bar_burger.active span:nth-child(1) {
      transform: rotate(50grad) translate3d(5px, 5px, 0);
   }

   .bar_burger.active span:nth-child(3) {
      transform: rotate(-50grad) translate3d(4px, -4px, 0);
   }

   .bar_nav {
      width: 252px;
   }

   /* Bar. */

   /* Footer. */

   .footer_hrefs {
      grid-gap: 32px;
   }

   .footer_soc {
      --size: 32px;
      grid-gap: 20px;
   }

   /* Footer. */

   /* Main. */

   .main_slide_text {
      font-size: 14px;
   }

   .main_slide_text {
      line-height: 1.4;
   }

   /* Main. */

   /* Contact. */

   .contact {
      --bone_w: 380px;
   }

   .contact_net {
      flex-direction: column-reverse;
   }

   .contact_form {
      width: 100%;
   }

   /* Contact. */

   /* Wein. */

   .wein_menu_name {
      font-size: 15vw;
   }

   .wein_img {
      background-attachment: unset;
   }

   /* Wein. */
}

@media only screen and (max-width: 600px) {
   /* Block_name. */
   .lang_btn_menu {
          top: 7px;
          right: 30px;
          position: absolute;
}
.btn_lng_mar {
   margin-right: 20px;
   padding: 6px;
   display: inline;
}
}
/*  impressum        */
.bg-color__impressum {
   background-color: #f4f0ee;
}
.title__impressum {
   display: block;
   text-align: center;
   padding-top: 15px;
   color: #3f3a40;
   font-size: 32px;
   
}
.container {
   font-size: 21px;
   padding: 0 25px 0 87px;
}
.text__impressum {
   padding-bottom: 30px;
}
.tel-fax-em {
   padding: 15px 0px;
}
.dutov {
   padding-bottom: 15px;
}
/*  impressum        */