@charset "UTF-8";

/* Reset */
/* -------------------------------------------------------------------- */
html { color: #000; background: #fff; }
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, select, textarea, p, blockquote, th, td {
margin: 0; padding: 0; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border: 0; }
ol, ul { list-style: none; list-style-position: inside;}
caption, th { text-align: left; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }
input, textarea, select { font-family: inherit; font-size: inherit; font-weight: inherit; }
legend { color: #000; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
* { box-sizing: border-box; vertical-align: top; }

/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; user-select: none;  -webkit-touch-callout: none; 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: pointer;
    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;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide {
    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 { }
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

div.pp_default .pp_top, div.pp_default .pp_top .pp_middle, div.pp_default .pp_top .pp_left, div.pp_default .pp_top .pp_right, div.pp_default .pp_bottom, div.pp_default .pp_bottom .pp_left, div.pp_default .pp_bottom .pp_middle, div.pp_default .pp_bottom .pp_right { height: 13px }

div.pp_default .pp_top .pp_left { background: url(images/prettyPhoto/default/sprite.png) -78px -93px no-repeat }

div.pp_default .pp_top .pp_middle { background: url(images/prettyPhoto/default/sprite_x.png) top left repeat-x }

div.pp_default .pp_top .pp_right { background: url(images/prettyPhoto/default/sprite.png) -112px -93px no-repeat }

div.pp_default .pp_content .ppt { color: #f8f8f8 }

div.pp_default .pp_content_container .pp_left { background: url(images/prettyPhoto/default/sprite_y.png) -7px 0 repeat-y; padding-left: 13px }

div.pp_default .pp_content_container .pp_right { background: url(images/prettyPhoto/default/sprite_y.png) top right repeat-y; padding-right: 13px }

div.pp_default .pp_next:hover { background: url(images/prettyPhoto/default/sprite_next.png) center right no-repeat; cursor: pointer }

div.pp_default .pp_previous:hover { background: url(images/prettyPhoto/default/sprite_prev.png) center left no-repeat; cursor: pointer }

div.pp_default .pp_expand { background: url(images/prettyPhoto/default/sprite.png) 0 -29px no-repeat; cursor: pointer; width: 28px; height: 28px }

div.pp_default .pp_expand:hover { background: url(images/prettyPhoto/default/sprite.png) 0 -56px no-repeat; cursor: pointer }

div.pp_default .pp_contract { background: url(images/prettyPhoto/default/sprite.png) 0 -84px no-repeat; cursor: pointer; width: 28px; height: 28px }

div.pp_default .pp_contract:hover { background: url(images/prettyPhoto/default/sprite.png) 0 -113px no-repeat; cursor: pointer }

div.pp_default .pp_close { width: 30px; height: 30px; background: url(images/prettyPhoto/default/sprite.png) 2px 1px no-repeat; cursor: pointer }

div.pp_default .pp_gallery ul li a { background: url(images/prettyPhoto/default/default_thumb.png) center center #f8f8f8; border: 1px solid #aaa }

div.pp_default .pp_social { margin-top: 7px }

div.pp_default .pp_gallery a.pp_arrow_previous, div.pp_default .pp_gallery a.pp_arrow_next { position: static; left: auto }

div.pp_default .pp_nav .pp_play, div.pp_default .pp_nav .pp_pause { background: url(images/prettyPhoto/default/sprite.png) -51px 1px no-repeat; height: 30px; width: 30px }

div.pp_default .pp_nav .pp_pause { background-position: -51px -29px }

div.pp_default a.pp_arrow_previous, div.pp_default a.pp_arrow_next { background: url(images/prettyPhoto/default/sprite.png) -31px -3px no-repeat; height: 20px; width: 20px; margin: 4px 0 0 }

div.pp_default a.pp_arrow_next { left: 52px; background-position: -82px -3px }

div.pp_default .pp_content_container .pp_details { margin-top: 5px }

div.pp_default .pp_nav { clear: none; height: 30px; width: 110px; position: relative }

div.pp_default .pp_nav .currentTextHolder { font-family: Georgia; font-style: italic; color: #999; font-size: 11px; left: 75px; line-height: 25px; position: absolute; top: 2px; margin: 0; padding: 0 0 0 10px }

div.pp_default .pp_close:hover, div.pp_default .pp_nav .pp_play:hover, div.pp_default .pp_nav .pp_pause:hover, div.pp_default .pp_arrow_next:hover, div.pp_default .pp_arrow_previous:hover { opacity: 0.7 }

div.pp_default .pp_description { font-size: 11px; font-weight: 700; line-height: 14px; margin: 5px 50px 5px 0 }

div.pp_default .pp_bottom .pp_left { background: url(images/prettyPhoto/default/sprite.png) -78px -127px no-repeat }

div.pp_default .pp_bottom .pp_middle { background: url(images/prettyPhoto/default/sprite_x.png) bottom left repeat-x }

div.pp_default .pp_bottom .pp_right { background: url(images/prettyPhoto/default/sprite.png) -112px -127px no-repeat }

div.pp_default .pp_loaderIcon { background: url(images/prettyPhoto/default/loader.gif) center center no-repeat }

div.light_rounded .pp_top .pp_left { background: url(images/prettyPhoto/light_rounded/sprite.png) -88px -53px no-repeat }

div.light_rounded .pp_top .pp_right { background: url(images/prettyPhoto/light_rounded/sprite.png) -110px -53px no-repeat }

div.light_rounded .pp_next:hover { background: url(images/prettyPhoto/light_rounded/btnNext.png) center right no-repeat; cursor: pointer }

div.light_rounded .pp_previous:hover { background: url(images/prettyPhoto/light_rounded/btnPrevious.png) center left no-repeat; cursor: pointer }

div.light_rounded .pp_expand { background: url(images/prettyPhoto/light_rounded/sprite.png) -31px -26px no-repeat; cursor: pointer }

div.light_rounded .pp_expand:hover { background: url(images/prettyPhoto/light_rounded/sprite.png) -31px -47px no-repeat; cursor: pointer }

div.light_rounded .pp_contract { background: url(images/prettyPhoto/light_rounded/sprite.png) 0 -26px no-repeat; cursor: pointer }

div.light_rounded .pp_contract:hover { background: url(images/prettyPhoto/light_rounded/sprite.png) 0 -47px no-repeat; cursor: pointer }

div.light_rounded .pp_close { width: 75px; height: 22px; background: url(images/prettyPhoto/light_rounded/sprite.png) -1px -1px no-repeat; cursor: pointer }

div.light_rounded .pp_nav .pp_play { background: url(images/prettyPhoto/light_rounded/sprite.png) -1px -100px no-repeat; height: 15px; width: 14px }

div.light_rounded .pp_nav .pp_pause { background: url(images/prettyPhoto/light_rounded/sprite.png) -24px -100px no-repeat; height: 15px; width: 14px }

div.light_rounded .pp_arrow_previous { background: url(images/prettyPhoto/light_rounded/sprite.png) 0 -71px no-repeat }

div.light_rounded .pp_arrow_next { background: url(images/prettyPhoto/light_rounded/sprite.png) -22px -71px no-repeat }

div.light_rounded .pp_bottom .pp_left { background: url(images/prettyPhoto/light_rounded/sprite.png) -88px -80px no-repeat }

div.light_rounded .pp_bottom .pp_right { background: url(images/prettyPhoto/light_rounded/sprite.png) -110px -80px no-repeat }

div.dark_rounded .pp_top .pp_left { background: url(images/prettyPhoto/dark_rounded/sprite.png) -88px -53px no-repeat }

div.dark_rounded .pp_top .pp_right { background: url(images/prettyPhoto/dark_rounded/sprite.png) -110px -53px no-repeat }

div.dark_rounded .pp_content_container .pp_left { background: url(images/prettyPhoto/dark_rounded/contentPattern.png) top left repeat-y }

div.dark_rounded .pp_content_container .pp_right { background: url(images/prettyPhoto/dark_rounded/contentPattern.png) top right repeat-y }

div.dark_rounded .pp_next:hover { background: url(images/prettyPhoto/dark_rounded/btnNext.png) center right no-repeat; cursor: pointer }

div.dark_rounded .pp_previous:hover { background: url(images/prettyPhoto/dark_rounded/btnPrevious.png) center left no-repeat; cursor: pointer }

div.dark_rounded .pp_expand { background: url(images/prettyPhoto/dark_rounded/sprite.png) -31px -26px no-repeat; cursor: pointer }

div.dark_rounded .pp_expand:hover { background: url(images/prettyPhoto/dark_rounded/sprite.png) -31px -47px no-repeat; cursor: pointer }

div.dark_rounded .pp_contract { background: url(images/prettyPhoto/dark_rounded/sprite.png) 0 -26px no-repeat; cursor: pointer }

div.dark_rounded .pp_contract:hover { background: url(images/prettyPhoto/dark_rounded/sprite.png) 0 -47px no-repeat; cursor: pointer }

div.dark_rounded .pp_close { width: 75px; height: 22px; background: url(images/prettyPhoto/dark_rounded/sprite.png) -1px -1px no-repeat; cursor: pointer }

div.dark_rounded .pp_description { margin-right: 85px; color: #fff }

div.dark_rounded .pp_nav .pp_play { background: url(images/prettyPhoto/dark_rounded/sprite.png) -1px -100px no-repeat; height: 15px; width: 14px }

div.dark_rounded .pp_nav .pp_pause { background: url(images/prettyPhoto/dark_rounded/sprite.png) -24px -100px no-repeat; height: 15px; width: 14px }

div.dark_rounded .pp_arrow_previous { background: url(images/prettyPhoto/dark_rounded/sprite.png) 0 -71px no-repeat }

div.dark_rounded .pp_arrow_next { background: url(images/prettyPhoto/dark_rounded/sprite.png) -22px -71px no-repeat }

div.dark_rounded .pp_bottom .pp_left { background: url(images/prettyPhoto/dark_rounded/sprite.png) -88px -80px no-repeat }

div.dark_rounded .pp_bottom .pp_right { background: url(images/prettyPhoto/dark_rounded/sprite.png) -110px -80px no-repeat }

div.dark_rounded .pp_loaderIcon { background: url(images/prettyPhoto/dark_rounded/loader.gif) center center no-repeat }

div.dark_square .pp_left, div.dark_square .pp_middle, div.dark_square .pp_right, div.dark_square .pp_content { background: #000 }

div.dark_square .pp_description { color: #fff; margin: 0 85px 0 0 }

div.dark_square .pp_loaderIcon { background: url(images/prettyPhoto/dark_square/loader.gif) center center no-repeat }

div.dark_square .pp_expand { background: url(images/prettyPhoto/dark_square/sprite.png) -31px -26px no-repeat; cursor: pointer }

div.dark_square .pp_expand:hover { background: url(images/prettyPhoto/dark_square/sprite.png) -31px -47px no-repeat; cursor: pointer }

div.dark_square .pp_contract { background: url(images/prettyPhoto/dark_square/sprite.png) 0 -26px no-repeat; cursor: pointer }

div.dark_square .pp_contract:hover { background: url(images/prettyPhoto/dark_square/sprite.png) 0 -47px no-repeat; cursor: pointer }

div.dark_square .pp_close { width: 75px; height: 22px; background: url(images/prettyPhoto/dark_square/sprite.png) -1px -1px no-repeat; cursor: pointer }

div.dark_square .pp_nav { clear: none }

div.dark_square .pp_nav .pp_play { background: url(images/prettyPhoto/dark_square/sprite.png) -1px -100px no-repeat; height: 15px; width: 14px }

div.dark_square .pp_nav .pp_pause { background: url(images/prettyPhoto/dark_square/sprite.png) -24px -100px no-repeat; height: 15px; width: 14px }

div.dark_square .pp_arrow_previous { background: url(images/prettyPhoto/dark_square/sprite.png) 0 -71px no-repeat }

div.dark_square .pp_arrow_next { background: url(images/prettyPhoto/dark_square/sprite.png) -22px -71px no-repeat }

div.dark_square .pp_next:hover { background: url(images/prettyPhoto/dark_square/btnNext.png) center right no-repeat; cursor: pointer }

div.dark_square .pp_previous:hover { background: url(images/prettyPhoto/dark_square/btnPrevious.png) center left no-repeat; cursor: pointer }

div.light_square .pp_expand { background: url(images/prettyPhoto/light_square/sprite.png) -31px -26px no-repeat; cursor: pointer }

div.light_square .pp_expand:hover { background: url(images/prettyPhoto/light_square/sprite.png) -31px -47px no-repeat; cursor: pointer }

div.light_square .pp_contract { background: url(images/prettyPhoto/light_square/sprite.png) 0 -26px no-repeat; cursor: pointer }

div.light_square .pp_contract:hover { background: url(images/prettyPhoto/light_square/sprite.png) 0 -47px no-repeat; cursor: pointer }

div.light_square .pp_close { width: 75px; height: 22px; background: url(images/prettyPhoto/light_square/sprite.png) -1px -1px no-repeat; cursor: pointer }

div.light_square .pp_nav .pp_play { background: url(images/prettyPhoto/light_square/sprite.png) -1px -100px no-repeat; height: 15px; width: 14px }

div.light_square .pp_nav .pp_pause { background: url(images/prettyPhoto/light_square/sprite.png) -24px -100px no-repeat; height: 15px; width: 14px }

div.light_square .pp_arrow_previous { background: url(images/prettyPhoto/light_square/sprite.png) 0 -71px no-repeat }

div.light_square .pp_arrow_next { background: url(images/prettyPhoto/light_square/sprite.png) -22px -71px no-repeat }

div.light_square .pp_next:hover { background: url(images/prettyPhoto/light_square/btnNext.png) center right no-repeat; cursor: pointer }

div.light_square .pp_previous:hover { background: url(images/prettyPhoto/light_square/btnPrevious.png) center left no-repeat; cursor: pointer }

div.facebook .pp_top .pp_left { background: url(images/prettyPhoto/facebook/sprite.png) -88px -53px no-repeat }

div.facebook .pp_top .pp_middle { background: url(images/prettyPhoto/facebook/contentPatternTop.png) top left repeat-x }

div.facebook .pp_top .pp_right { background: url(images/prettyPhoto/facebook/sprite.png) -110px -53px no-repeat }

div.facebook .pp_content_container .pp_left { background: url(images/prettyPhoto/facebook/contentPatternLeft.png) top left repeat-y }

div.facebook .pp_content_container .pp_right { background: url(images/prettyPhoto/facebook/contentPatternRight.png) top right repeat-y }

div.facebook .pp_expand { background: url(images/prettyPhoto/facebook/sprite.png) -31px -26px no-repeat; cursor: pointer }

div.facebook .pp_expand:hover { background: url(images/prettyPhoto/facebook/sprite.png) -31px -47px no-repeat; cursor: pointer }

div.facebook .pp_contract { background: url(images/prettyPhoto/facebook/sprite.png) 0 -26px no-repeat; cursor: pointer }

div.facebook .pp_contract:hover { background: url(images/prettyPhoto/facebook/sprite.png) 0 -47px no-repeat; cursor: pointer }

div.facebook .pp_close { width: 22px; height: 22px; background: url(images/prettyPhoto/facebook/sprite.png) -1px -1px no-repeat; cursor: pointer }

div.facebook .pp_description { margin: 0 37px 0 0 }

div.facebook .pp_loaderIcon { background: url(images/prettyPhoto/facebook/loader.gif) center center no-repeat }

div.facebook .pp_arrow_previous { background: url(images/prettyPhoto/facebook/sprite.png) 0 -71px no-repeat; height: 22px; margin-top: 0; width: 22px }

div.facebook .pp_arrow_previous.disabled { background-position: 0 -96px; cursor: default }

div.facebook .pp_arrow_next { background: url(images/prettyPhoto/facebook/sprite.png) -32px -71px no-repeat; height: 22px; margin-top: 0; width: 22px }

div.facebook .pp_arrow_next.disabled { background-position: -32px -96px; cursor: default }

div.facebook .pp_nav { margin-top: 0 }

div.facebook .pp_nav p { font-size: 15px; padding: 0 3px 0 4px }

div.facebook .pp_nav .pp_play { background: url(images/prettyPhoto/facebook/sprite.png) -1px -123px no-repeat; height: 22px; width: 22px }

div.facebook .pp_nav .pp_pause { background: url(images/prettyPhoto/facebook/sprite.png) -32px -123px no-repeat; height: 22px; width: 22px }

div.facebook .pp_next:hover { background: url(images/prettyPhoto/facebook/btnNext.png) center right no-repeat; cursor: pointer }

div.facebook .pp_previous:hover { background: url(images/prettyPhoto/facebook/btnPrevious.png) center left no-repeat; cursor: pointer }

div.facebook .pp_bottom .pp_left { background: url(images/prettyPhoto/facebook/sprite.png) -88px -80px no-repeat }

div.facebook .pp_bottom .pp_middle { background: url(images/prettyPhoto/facebook/contentPatternBottom.png) top left repeat-x }

div.facebook .pp_bottom .pp_right { background: url(images/prettyPhoto/facebook/sprite.png) -110px -80px no-repeat }

div.pp_pic_holder a:focus { outline: none }

div.pp_overlay { background: #000; display: none; left: 0; position: absolute; top: 0; width: 100%; z-index: 9500 }

div.pp_pic_holder { display: none; position: absolute; width: 100px; z-index: 10000 }

.pp_content { height: 40px; min-width: 40px }

* html .pp_content { width: 40px }

.pp_content_container { position: relative; text-align: left; width: 100% }

.pp_content_container .pp_left { padding-left: 20px }

.pp_content_container .pp_right { padding-right: 20px }

.pp_content_container .pp_details { float: left; margin: 10px 0 2px }

.pp_description { display: none; margin: 0 }

.pp_social { float: left; margin: 0 }

.pp_social .facebook { float: left; margin-left: 5px; width: 55px; overflow: hidden }

.pp_social .twitter { float: left }

.pp_nav { clear: right; float: left; margin: 3px 10px 0 0 }

.pp_nav p { float: left; white-space: nowrap; margin: 2px 4px }

.pp_nav .pp_play, .pp_nav .pp_pause { float: left; margin-right: 4px; text-indent: -10000px }

a.pp_arrow_previous, a.pp_arrow_next { display: block; float: left; height: 15px; margin-top: 3px; overflow: hidden; text-indent: -10000px; width: 14px }

.pp_hoverContainer { position: absolute; top: 0; width: 100%; z-index: 2000 }

.pp_gallery { display: none; left: 50%; margin-top: -50px; position: absolute; z-index: 10000 }

.pp_gallery div { float: left; overflow: hidden; position: relative }

.pp_gallery ul { float: left; height: 35px; position: relative; white-space: nowrap; margin: 0 0 0 5px; padding: 0 }

.pp_gallery ul a { border: 1px rgba(0, 0, 0, 0.5) solid; display: block; float: left; height: 33px; overflow: hidden }

.pp_gallery ul a img { border: 0 }

.pp_gallery li { display: block; float: left; margin: 0 5px 0 0; padding: 0 }

.pp_gallery li.default a { background: url(images/prettyPhoto/facebook/default_thumbnail.gif) 0 0 no-repeat; display: block; height: 33px; width: 50px }

.pp_gallery .pp_arrow_previous, .pp_gallery .pp_arrow_next { margin-top: 7px !important }

a.pp_next { background: url(images/prettyPhoto/light_rounded/btnNext.png) 10000px 10000px no-repeat; display: block; float: right; height: 100%; text-indent: -10000px; width: 49% }

a.pp_previous { background: url(images/prettyPhoto/light_rounded/btnNext.png) 10000px 10000px no-repeat; display: block; float: left; height: 100%; text-indent: -10000px; width: 49% }

a.pp_expand, a.pp_contract { cursor: pointer; display: none; height: 20px; position: absolute; right: 30px; text-indent: -10000px; top: 10px; width: 20px; z-index: 20000 }

a.pp_close { position: absolute; right: 0; top: 0; display: block; line-height: 22px; text-indent: -10000px }

.pp_loaderIcon { display: block; height: 24px; left: 50%; position: absolute; top: 50%; width: 24px; margin: -12px 0 0 -12px }

#pp_full_res { line-height: 1 !important }

#pp_full_res .pp_inline { text-align: left }

#pp_full_res .pp_inline p { margin: 0 0 15px }

div.ppt { color: #fff; display: none; font-size: 17px; z-index: 9999; margin: 0 0 5px 15px }

div.pp_default .pp_content, div.light_rounded .pp_content { background-color: #fff }

div.pp_default #pp_full_res .pp_inline, div.light_rounded .pp_content .ppt, div.light_rounded #pp_full_res .pp_inline, div.light_square .pp_content .ppt, div.light_square #pp_full_res .pp_inline, div.facebook .pp_content .ppt, div.facebook #pp_full_res .pp_inline { color: #000 }

div.pp_default .pp_gallery ul li a:hover, div.pp_default .pp_gallery ul li.selected a, .pp_gallery ul a:hover, .pp_gallery li.selected a { border-color: #fff }

div.pp_default .pp_details, div.light_rounded .pp_details, div.dark_rounded .pp_details, div.dark_square .pp_details, div.light_square .pp_details, div.facebook .pp_details { position: relative }

div.light_rounded .pp_top .pp_middle, div.light_rounded .pp_content_container .pp_left, div.light_rounded .pp_content_container .pp_right, div.light_rounded .pp_bottom .pp_middle, div.light_square .pp_left, div.light_square .pp_middle, div.light_square .pp_right, div.light_square .pp_content, div.facebook .pp_content { background: #fff }

div.light_rounded .pp_description, div.light_square .pp_description { margin-right: 85px }

div.light_rounded .pp_gallery a.pp_arrow_previous, div.light_rounded .pp_gallery a.pp_arrow_next, div.dark_rounded .pp_gallery a.pp_arrow_previous, div.dark_rounded .pp_gallery a.pp_arrow_next, div.dark_square .pp_gallery a.pp_arrow_previous, div.dark_square .pp_gallery a.pp_arrow_next, div.light_square .pp_gallery a.pp_arrow_previous, div.light_square .pp_gallery a.pp_arrow_next { margin-top: 12px !important }

div.light_rounded .pp_arrow_previous.disabled, div.dark_rounded .pp_arrow_previous.disabled, div.dark_square .pp_arrow_previous.disabled, div.light_square .pp_arrow_previous.disabled { background-position: 0 -87px; cursor: default }

div.light_rounded .pp_arrow_next.disabled, div.dark_rounded .pp_arrow_next.disabled, div.dark_square .pp_arrow_next.disabled, div.light_square .pp_arrow_next.disabled { background-position: -22px -87px; cursor: default }

div.light_rounded .pp_loaderIcon, div.light_square .pp_loaderIcon { background: url(images/prettyPhoto/light_rounded/loader.gif) center center no-repeat }

div.dark_rounded .pp_top .pp_middle, div.dark_rounded .pp_content, div.dark_rounded .pp_bottom .pp_middle { background: url(images/prettyPhoto/dark_rounded/contentPattern.png) top left repeat }

div.dark_rounded .currentTextHolder, div.dark_square .currentTextHolder { color: #c4c4c4 }

div.dark_rounded #pp_full_res .pp_inline, div.dark_square #pp_full_res .pp_inline { color: #fff }

.pp_top, .pp_bottom { height: 20px; position: relative }

* html .pp_top, * html .pp_bottom { padding: 0 20px }

.pp_top .pp_left, .pp_bottom .pp_left { height: 20px; left: 0; position: absolute; width: 20px }

.pp_top .pp_middle, .pp_bottom .pp_middle { height: 20px; left: 20px; position: absolute; right: 20px }

* html .pp_top .pp_middle, * html .pp_bottom .pp_middle { left: 0; position: static }

.pp_top .pp_right, .pp_bottom .pp_right { height: 20px; left: auto; position: absolute; right: 0; top: 0; width: 20px }

.pp_fade, .pp_gallery li.default a img { display: none }

@media only screen and (max-device-width: 600px) {

	.pp_pic_holder.pp_default { width: 100% !important; left: 0 !important; overflow: hidden; }

	div.pp_default .pp_content_container .pp_left { padding-left: 0 !important; }

	div.pp_default .pp_content_container .pp_right { padding-right: 0 !important; }

	.pp_content { width: 100% !important; height: auto !important; }

	.pp_fade { width: 100% !important; height: 100% !important; }

	a.pp_expand, a.pp_contract, .pp_hoverContainer, .pp_gallery, .pp_top, .pp_bottom { display: none !important; }

	#pp_full_res img { width: 100% !important; height: auto !important; }

	.pp_details { width: 94% !important; padding-left: 3%; padding-right: 4%; padding-top: 10px; padding-bottom: 10px; background-color: #fff; margin-top: -2px !important; }

	a.pp_close { right: 10px !important; top: 10px !important; }
}
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8; }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  background: white; padding: 4rem;
  width: auto;
  max-width: 500px;
  margin: 20px auto;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  .mfp-close:hover,
  .mfp-close:focus {
    opacity: 1; }
  .mfp-close:active {
    top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent; }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover,
  .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before,
  .mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }

@charset "UTF-8";


:root {

  --color-red: #dc2625;
  --color-blue: #004e70;

  --color-green: #91b529;
  --color-darken-green: #7a9e11;

  --color-white: #ffffff; 
  --color-black: #000000;
  --color-gray: #e8e8e8;
  --color-light-gray: #f1f4f6;

  --color-yellow: #ffce24;

  --color-light-brown: #f0edea;
  --color-brown: #67502a;

  --button-color: var(--color-green);
  --button-text-color: white;
  --button-hover-color: var(--color-black);
  --button-hover-text-color: var(--color-white);

  --link-color: var(--color-green);
  --text-color: black;
  --background-color: var(--color-white);
  --heading-color: var(--color-black);
  
  --span: 2rem;
	--span-small: calc(var(--span) / 2);
  --span-large: calc(var(--span) * 2);
  --span-x-large: calc(var(--span) * 4);
  --span-xx-large: calc(var(--span) * 6);

  --block-padding: calc(var(--span) * 3);
  --block-inner-padding: 6rem;
  --block-width-small: 110rem;

  --page-width: 1400px;

  --input-color: white;
  --input-border-color: var(--color-gray);
  --input-border: 1px solid var(--color-gray);
  --input-active-border: 1px solid var(--color-red);
  --input-padding: calc(var(--span-small) * 1.5) var(--span);

  --border-radius: 1rem; 
  --shadow: 0 0 15px 0 #00000020;

  --font: "Roboto", sans-serif;

}
/* Формы */
/* -------------------------------------------------------------------- */
.form .form-heading .comment { font-size: 90%; font-style: italic; }

.form input:not([type="submit"]),
.form textarea,
.form select { width: 100%; }
.form textarea { min-height: 10rem; }
.form.-horizontal .container { display: flex; align-items: center; gap: 1rem; }
.form.-horizontal .form-inputs { flex-grow: 1; }
.form.-horizontal .form-input { margin-bottom: 0; flex-grow: 1; }

body.-safari .form.-horizontal > * { margin: 0.5rem; }

.form > *:not(:last-child) { margin-bottom: var(--span); }
.form-inputs.-double { 	display: grid; grid-template-rows: auto; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); justify-content: center; gap: var(--span); }

@media screen and (max-width: 640px) {
	.form-inputs.-double { display: flex; flex-flow: column; }
	.form .container { flex-wrap: wrap; justify-content: center; }
}

.form-inputs.-double > .form-input { margin:0; }
.form-inputs.-double > .form-input.-double { grid-area: auto / auto / auto / span 2; }

.form-input.-required label::after { content: '*'; display: inline; color: var(--color-red); }
.form-input.-error label { color: var(--color-red);  }
.form-input.-error input, .form-input.-error select, .form-input.-error textarea {
 --input-border: 2px solid var(--color-red);
}

.form .form-input { margin-bottom: var(--span); }
.form .form-input label { font-weight: normal; margin-bottom: 0.5em; display: block; font-size: 90%; }

.form .form-heading { margin-bottom: var(--span); }
.form .form-input.-fancy { display: flex; margin-bottom: var(--span); border: var(--input-border); }
.form .form-input.-fancy > * { margin-bottom: 0; border: none; }
.form .form-input.-fancy label { width: 30%; min-width: 200px; background: #f7f7f7; padding: 0.5rem 1rem; font-size: 90%; text-align: right; }

@media screen and (max-width: 640px) {
	.form .form-input.-fancy { flex-wrap: wrap; }
	.form .form-input.-fancy > * { flex-grow: 1; }

}

.ui-button, input[type="button"], input[type="submit"], button {
  display: inline-flex; align-items: center; justify-content: center; flex-wrap: nowrap; cursor: pointer;
  text-decoration: none; white-space: nowrap; font-size: 1.6rem; margin: 0; padding: 1rem var(--span);
  border-radius: var(--border-radius); align-items: center;  height: 5rem; 
  text-shadow: 1px 1px 0 #0005;
 	background: linear-gradient(#91b529 70%, #81a31e); color: var(--button-text-color); outline: none; border: 0;  position: relative; transition: 0.3s all;
}

.ui-button i[data-icon] { background: white; }

.ui-button:hover { background: linear-gradient(#81a31e, #91b529 30%); }

.ui-button > i { margin-right: 0.5rem; background-size: auto; }
.ui-button.-mini { padding: 0.5rem 1rem; height: auto; }
.ui-button.-black { background: #202020; color: white; }
.ui-button.-black:hover { background: #505050; }
.ui-button.-black i { background: white; }

.ui-button.-tag { padding: 3rem; background: white; color: black; }

.ui-button.-hollow { background: white; border: var(--input-border); color: var(--text-color); display: inline-block; }
.ui-button.-hollow:hover { background: var(--input-text-color); color: var(--input-color); }

.ui-button.-white { background: white; color: var(--color-green); text-shadow: none; }
.ui-button.-white i { background: var(--color-green); }
.ui-button.-white:hover { background: black; color: white; }
.ui-button.-white:hover i { background: white; }

.ui-button.-gray { background: #e0e0e0; color: black; text-shadow: none; }
.ui-button.-gray i { background: black; }
.ui-button.-gray:hover { background: var(--color-green); color: white; text-shadow: 1px 1px 0 #000a; }
.ui-button.-gray:hover i { background: white; }

.ui-button.-red { background: var(--color-red); color: white; text-shadow: none; }
.ui-button.-red i { background: white; }
.ui-button.-red:hover { background: black; color: white; }
.ui-button.-red:hover i { background: white; }


.ui-round-button { display: flex; align-items: center; position: relative;  }
.ui-round-button::before { content: ''; display: block; border-radius: 50%; background: no-repeat center/auto 1.5rem, var(--button-color); width: 3rem; height: 3rem; margin-right: 0.5rem; transition: all .3s;}
.ui-round-button:hover::before { background-color: var(--button-hover-color); color: var(--button-hover-text-color); }
.ui-round-button.-blue::before { background: var(--color-blue); color: var(--color-white); }
.ui-round-button.-blue:hover::before { background: var(--color-black); }

.ui-button.-large { width: 100%; }

.ui-button.-disabled { opacity: 0.7; pointer-events: none; filter: grayscale(100%); }

.ui-input, input[type="text"], input[type="checkbox"], input[type="password"], input[type="email"], select, textarea {
	min-height: 5rem; padding: var(--input-padding); font-size: 1.5rem; outline: 0; border-radius: var(--border-radius); border: 1px solid transparent; 
  display: block; color: var(--color-black); overflow: hidden; background: var(--input-color); transition: all .3s; }

.ui-input::placeholder, input[type="text"]::placeholder, input[type="checkbox"]::placeholder, select, textarea::placeholder {
	color: #0008; font-weight: 300; font-style: italic; 
}

.ui-input:focus, input:focus[type="text"], input:focus[type="checkbox"], input:focus[type="password"], input:focus[type="email"], select:focus, textarea:focus {
	border-color: var(--color-blue); box-shadow: var(--shadow); border:var(--input-active-border); }

input[type="text"]:focus, input[type="checkbox"]:focus, select:focus, textarea:focus { background: white; box-shadow: var(--shadow); border: 1px solid #0005; }
input[type="text"]::placeholder, textarea::placeholder { opacity: 0.8;  }

input[type="checkbox"] {  }
textarea { min-height: 5rem; }

/* Checkbox */
input[type="checkbox"] { cursor: pointer; width: 2rem; height: 2rem; appearance: none; -webkit-appearance: none;
	border: none; background: white; padding: 0; max-width: var(--span); position: relative; margin-right: 1rem; display: inline-block;
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); border-radius: 0; min-height: 1rem; }  
input[type="checkbox"]:checked::after { display: inline-block; content: ''; position: absolute; top: 4px; left: 4px; right: 4px; bottom: 4px; background: var(--color-red); }

/* Select */
select { appearance: none; -webkit-appearance: none;  position: relative;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' height='1rem' width='1rem'%3E%3Ctext x='0' y='10' fill='black'%3E%E2%96%BE%3C/text%3E%3C/svg%3E"); 
	background-repeat: no-repeat; background-size: 1.5rem 1.5rem; background-position: calc(100% - 1rem) center;
	background-clip: border-box;}

select:focus { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' height='1rem' width='1rem'%3E%3Ctext x='0' y='10' fill='black'%3E%E2%96%BE%3C/text%3E%3C/svg%3E"); 
	background-repeat: no-repeat; background-size: 1.5rem 1.5rem; background-position: calc(100% - 1rem) center;
	background-clip: border-box; }

input:disabled, select:disabled, textarea:disabled { opacity: 0.7; }



/* Капча */
/* -------------------------------------------------------------------- */
.vcap-input { display:flex; align-items:center; align-content:center; margin-bottom:1rem; flex-wrap: wrap; gap: 1rem; position: relative; }
.vcap-input label { margin-bottom:0 !important; font-weight: normal; flex-basis: 100px; flex-grow: 1; }
.vcap-input a { color: #3c60b3; }
.vcap-input .vcap { appearance: none; width: 2rem; height: 2rem; border: 2px solid #aaa; padding: 0; outline: none; }
.vcap-input .vcap::before { border:none; left: 4px; top: 4px; right: 4px; bottom: 4px;  background: transparent; width: auto; height: auto; content: ''; display: block; position: absolute;}
.vcap-input .vcap::after { display: none !important; }
.vcap-input .vcap:checked::before { background: red; }
.vcap-input.-error .vcap { border-color: red; }
.vcap-input .vcap_question { display: none; position: absolute; color: black; z-index: 20000; top: 100%; left: -1rem; width: 50rem; max-width: 80vw;  }
.vcap_question { flex-basis: 100%; filter: drop-shadow(0 0 10px #0003); }
.vcap_question .close-button { position: absolute; right: 1rem; top: 2rem; color: black; width: 2rem; height: 2rem; cursor: pointer; border: 1px solid #0002; display: flex; align-items: center; justify-content: center; transition: .3s; }
.vcap_question .close-button:hover { background: black; color: white; }
.vcap_question_inner { padding: 2rem; padding-top: 3rem; background: white; 
	clip-path: polygon(0 1rem, 1rem 1rem, 2rem 0, 3rem 1rem, 100% 1rem, 100% 100%, 0 100%); }
.vcap_question .title { font-size: 16px; font-weight: bold; margin-bottom: 15px; }
.vcap_question .confirm-button { margin-top: 1rem; }
.vcap_question .variants { display: flex; gap: 1rem; align-items: center; justify-content: start; flex-wrap: wrap; }
.vcap_question .variants .variant { display: inline-block; padding: 0.5rem 1rem; font-size: 16px; border-radius: 3px; background: #f0f0f0; cursor: pointer; transition: .3s; }
.vcap_question .variants .variant:hover { background: #e0e0e0; }
.vcap_question .variants .variant.-active { background: #3c60b3; color: white; }
.vcap_value.error + input { border: 1px solid red !important; }

input.error { border-bottom: 2px solid red !important; }



/* Slider */
/* -------------------------------------------------------------------- */
.slider { display: block; position: relative; }
.slick-list { display: block;  position: relative; height: 100% !important;}
.slick-track { display: block; height: 100%; }
.slick-slider { position: relative; }

.slick-slider .slick-arrow { padding: 0; position: absolute !important; top: 50% !important;
	width: 5rem; height: 5rem; color: transparent !important;  transform: translateY(-50%); z-index: 100;
	box-shadow: none;  background: transparent; opacity: 0.5; transition: all .3s;  }

.slick-slide { opacity: 0; }
.slick-slide.slick-current { opacity: 1; }
.slick-slider .slick-arrow:hover { opacity: 1; }
.slick-slider .slick-arrow::after { --image: url(../img/icon-arrow-right.svg); content: ''; display: inline-block; width: 2rem; height: 4rem; position: absolute; top: 50%; left: 50%; transform: translateX(-50%) translateY(-50%); background: var(--color-green); transition: .3s all; mask: var(--image) center/contain no-repeat; -webkit-mask: var(--image) center/contain no-repeat;}
.slick-slider .slick-arrow:hover::after { background: var(--color-black); }
.slick-slider .slick-prev { --image: url(../img/icon-arrow-left.svg); position: absolute; left: -6rem; transform: translateY(-50%) rotate(180deg);}	

.slick-slider .slick-next { right: -6rem;   }
.slick-slider .slick-dots { bottom: -1rem;  left: 50%; white-space: nowrap; transform: translateX(-50%); }
.slick-slider .slick-dots li { display: inline-block; margin: 0.2rem; }
.slick-slider .slick-dots li button { display: inline-block; padding: 0; background: #ececec; color: transparent; width: 2rem !important; height: 2rem !important; border-radius: 50%; border: 2px solid white; }.slick-slider .slick-dots li.slick-active button { background: #2d67b6; }

@media screen and (max-width: 960px) {
	.slick-slider .slick-prev { left: 0.5rem; }
	.slick-slider .slick-next { right: 0.5rem; }
}

/* HTML */
/* -------------------------------------------------------------------- */
html { height: 100%; font-size: 10px; }
body {  width: 100%; min-height: 100%; vertical-align: top;	background: var(--background-color);
	color: var(--text-color); font-size: 1.7rem; font-family: var(--font); font-weight: 300; line-height: 1.4; }
body > .container { overflow: hidden; }

/* Main elements */
/* -------------------------------------------------------------------- */
img { display: inline-block; max-width: 100%; height: auto; }
p { margin-bottom: 0.5em; }
b { font-weight: bold; }
a { text-decoration: none; color: inherit; }
em { font-weight: bold; }
strong { font-weight: bold;}

/* Headings */
/* -------------------------------------------------------------------- */
h1, h2, h3, h4 { margin-bottom: 0.5em; line-height: 1.1; color: var(--heading-color); font-weight: 300; }
h2:not(:first-child), h3:not(:first-child), h4:not(:first-child) { margin-top: 1em;}
h1 { font-size: 4rem; }
h2 { margin-bottom: 1em; }
h3 { font-size: 2.8rem; }
h2 { font-size: 3.6rem; color: var(--heading-color);  }

/* Lists */
/* -------------------------------------------------------------------- */
ol > li::marker  {  display: inline; }
ol > li::before,
ul > li::before { display: inline-block; }
ol > li > p { display: inline; }
ul > li > p { display: inline; }

.hidden { display: none !important; }
.clearfix { clear: both; }


a { color: var(--link-color); text-decoration: underline; }
a:hover { color: black; text-decoration: none; }
p { margin-bottom: 0.5em; }
i { width: auto; height: auto; }
em { font-weight: bold; font-style: normal; }
strong { font-weight: bold; }

article .ui-slider { margin-left: -1rem; margin-right: -1rem; }

/* Картинки */
/* -------------------------------------------------------------------- */
img.-full { width: 100%; height: auto; float: none; max-width: none; margin-left: 0; margin-right: 0; }
img.-left { float: left; margin-right: var(--span); margin-bottom: var(--span); max-width: 50rem; height: auto; position: relative; }
img.-right { float: right; margin-left: var(--span); margin-bottom: var(--span); max-width: 50rem; height: auto; position: relative; }
img.-left.-small { max-width: 30rem; }
img.-right.-small { max-width: 30rem; }
img.-center { margin: 0 auto; max-height: 60rem; width: auto; display: block; margin:2rem auto; }
img.-frame { border: 2px solid #00000020; box-shadow: var(--shadow); }

@media screen and (max-width: 768px) {
	img.-left, img.-right { float: none; max-width: none; margin:0; margin-bottom: 2rem; width: 100%; }
}

/* Таблицы */
/* -------------------------------------------------------------------- */
table { width: 100%; border: 1px solid #e0e0e050; margin-bottom: 4rem; background: white; border-radius: 1rem;  text-align: center; overflow: hidden; }
table caption { display: none; }
table td,
table th { border: 1px solid #e0e0e050; padding: 2rem; text-align: center;  }
table th { background: var(--color-blue); color: white; font-size: 1.8rem; }
table td { text-align: center; padding: 1rem 2rem; }
table td strong { color: #2a1c72; }


@media screen and (max-width: 960px) {
	table { overflow: auto; max-width: 100%; }
}

i { --image: linear-gradient(transparent, transparent); display: inline-block; width: 2rem; height: 2rem;
	mask: var(--image) center / contain no-repeat; -webkit-mask: var(--image) center / contain no-repeat;
	background: black; }

i[data-icon="phone"] { --image: url(../img/icons/phone.png); }
i[data-icon="more"] { --image: url(../img/icon-more.svg); }
i[data-icon="calculator"] { --image: url(../img/icons/calculator.png); }
i[data-icon="phone-call"] { --image: url(../img/icons/phone-call.png); }

i[data-icon="filters-all"] { --image: url(../img/ui-close.svg); }

i[data-icon="arrow-up"] { --image: url(../img/icon-arrow-up.svg); }
i[data-icon="arrow-down"] { --image: url(../img/icon-arrow-down.svg); }
i[data-icon="arrow-left"] { --image: url(../img/icon-arrow-left.svg); }
i[data-icon="arrow-right"] { --image: url(../img/icon-arrow-right.svg); }

i[data-icon="header-1"] { --image: url(../img/icons/header-1.png); }
i[data-icon="header-2"] { --image: url(../img/icons/header-2.png); }
i[data-icon="header-3"] { --image: url(../img/icons/header-3.png); }
i[data-icon="header-4"] { --image: url(../img/icons/header-4.png); }

i[data-icon="achievement-1"] { --image: url(../img/icons/achievement-1.png); }
i[data-icon="achievement-2"] { --image: url(../img/icons/achievement-2.png); }
i[data-icon="achievement-3"] { --image: url(../img/icons/achievement-3.png); }

i[data-icon="advantage-1"] { --image: url(../img/icons/advantage-1.png); }
i[data-icon="advantage-2"] { --image: url(../img/icons/advantage-2.png); }
i[data-icon="advantage-3"] { --image: url(../img/icons/advantage-3.png); }
i[data-icon="advantage-4"] { --image: url(../img/icons/advantage-4.png); }

i[data-icon="project-open"] { --image: url(../img/icons/project-open.png); }
i[data-icon="project-area"] { --image: url(../img/icons/project-area.png); }
i[data-icon="project-size"] { --image: url(../img/icons/project-size.png); }

i[data-icon="steps-1"] { --image: url(../img/icons/steps-1.png); }
i[data-icon="steps-2"] { --image: url(../img/icons/steps-2.png); }
i[data-icon="steps-3"] { --image: url(../img/icons/steps-3.png); }
i[data-icon="steps-4"] { --image: url(../img/icons/steps-4.png); }
i[data-icon="steps-5"] { --image: url(../img/icons/steps-5.png); }
i[data-icon="steps-6"] { --image: url(../img/icons/steps-6.png); }


.ui-button i { display: inline-block; width: 2rem; height: 2rem; background-position: center; background: white; 
	mask-repeat: no-repeat; -webkit-mask-repeat: margin-right: 0.5rem; }

.ui-tabs > nav { display: flex; flex-wrap: wrap; margin-bottom: 2px }
.ui-tabs > nav a { display: inline-block; padding: 1rem 2rem; text-decoration: none; font-size: 1.6rem; cursor: pointer; flex-grow: 1; text-align: center; margin-right:0.5rem; background: var(--color-gray); }
.ui-tabs > nav a:hover { background: var(--color-black); color: white; }
.ui-tabs > nav a.active { background: var(--color-blue); color: white; }
.ui-tabs > .content {	}
.ui-tabs > .content > * { display: none; padding: var(--span-large); border: 2px solid var(--color-gray); }
.ui-tabs > .content > *.active { display: block; }

.slider .slick-slide {margin: 1rem; display: block; }

.ui-links-group a { color: black; display: inline-block; padding: 0.5rem 1rem; background: #e0e0e0; font-size: 1.6rem; margin-right: 0.5rem; margin-bottom: 0.5rem; text-decoration: none; transition: .3s all; border-radius: 0.3rem; }
.ui-links-group a:hover { color: white; background: black; }

/* Панели */
/* -------------------------------------------------------------------- */
.ui-panel { padding: var(--span-large); box-shadow: var(--shadow); background: white;  }
.ui-panel.-gray { background: var(--color-light-gray); }
.ui-panel.-blue { background: var(--color-blue); }
.ui-panel.-white { --text-color: var(--color-black); background: var(--color-white); color: var(--text-color); --heading-color: black;}
.ui-panel.-frameless { padding:0; overflow: hidden; }

.ui-panel.-with-image { display: flex; align-items: center; min-height: 10rem; padding-right: 30rem; position: relative; overflow: hidden; }
.ui-panel.-with-image > .image { width: 30rem;  position: absolute; right:0; top: 0; bottom:0;  }
.ui-panel.-with-image > .image img { margin-bottom: 0; width: 100%; height: 100%; object-fit: cover; }


@media screen and (max-width: 768px) {
	.ui-panel { padding: var(--span); }
}

.ui-center { text-align: center; }
.ui-center.-panel { max-width: 60rem; margin:0 auto;}
.ui-inline { display: flex; align-items: center; gap: 0.5rem; justify-content: center; }




/* Контейнеры для элементов */
/* -------------------------------------------------------------------- */
.ui-flex-container { display: flex; gap: 2rem; align-items: center; flex-wrap: wrap; }
.ui-flex-container > * { flex-shrink: 0; }

@media screen and (max-width: 768px) {
	.ui-flex-container { flex-wrap: wrap; }
	.ui-flex-container > * { flex-basis: 100%; }
}



.mfp-content { --text-color: black; --heading-color: var(--color-red); color: black; padding: 4rem; overflow:hidden; background: white; display: inline-block; width: auto; max-width: 700px; z-index: 52;}
.mfp-bg { z-index: 49;}
.mfp-wrap { z-index: 50; }
.mfp-content .ui-form { padding: 0; box-shadow: none; }
.mfp-content input, .mfp-content select, .mfp-content textarea { background: #f0f0f0; }
.mfp-content .form-buttons { display: flex; align-items: center; justify-content: center; margin-bottom: 0; }
.mfp-content .vcap-input > label { font-weight: normal; }
.mfp-content .vcap-input > label a:hover { text-decoration: none; }
.mfp-content h2 { color: var(--color-darken-green); text-align: center; font-size: 2.5rem; }
.mfp-close { border-radius: 50%; width: 3.5rem; height: 3.5rem; right: 1rem; top: 1rem; line-height: 0; }
.mfp-close:hover, .mfp-close:focus { color: white; }


.ui-container { display: grid; grid-template-rows: auto; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 3rem;}
.ui-container.-small { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.ui-container.-smaller { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.ui-container.-normal { grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)); }
.ui-container.-wide { grid-template-columns: repeat(auto-fit, minmax(500px, 1fr)); }

@media screen and (max-width: 1024px) {
	.ui-container.-wide { grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); }
}

@media screen and (max-width: 960px) {
	.ui-container { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; }		
}

@media screen and (max-width: 640px) {
	.ui-container { display: flex; flex-flow: wrap; gap: 1rem; }
	.ui-container > * { flex-grow: 1;  }
}



.ui-grid { display: grid; grid-template-rows: auto; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; justify-content: center;  }
.ui-grid.-narrow { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1rem; grid-gap: 1rem; }
.ui-grid.-narrower { grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); }
.ui-grid.-wider { grid-template-columns: repeat(auto-fill, minmax(400px, 1fr)); }
.ui-grid.-wide { grid-template-columns: repeat(auto-fill, minmax(500px, 1fr)); }

@media screen and (max-width: 960px) {
	.ui-grid.-narrower { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
	.ui-grid.-wider { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
	.ui-grid.-wide { grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); }
}



/* Адптивное меню */
/* -------------------------------------------------------------------- */
.ui-mobile-menu { display:none; position: fixed; top:0; left:0; width: 100%; height: auto; z-index: 20; max-height: 100%; overflow: auto;  }
.ui-mobile-menu .menu-main li ul { position: relative; color: white; background: transparent;}
.ui-mobile-menu .menu-main li.active { background: none !important; color: white !important; }
.ui-mobile-menu .menu-main li.active > a,
.ui-mobile-menu .menu-main li.active > span { font-weight: bold; }
.ui-mobile-menu .menu-main li.active > ul { margin-left: 2rem; padding-left: 0;  background: #00000020;  }
.ui-mobile-menu .menu-main li ul li { border: none !important; }
.ui-mobile-menu li { display: block; } 
.ui-mobile-menu li a,
.ui-mobile-menu li span { display: block; padding: 0.5rem 0; }
.ui-mobile-menu li:hover > a { text-decoration: underline; }
.ui-mobile-menu .open-button { width: 100%; border-radius: 0; text-align: left; padding-left: 4rem; justify-content: start; background: black; height: 5rem; }
.ui-mobile-menu > ul { display: none; background: black; padding: 2rem 4rem; z-index: 100;  overflow: auto;  position: relative; }
.ui-mobile-menu a { color: white; text-decoration: none;  }
.ui-mobile-menu.open::after { content: ''; display: block; top: 100%; height: 2rem; left:0; right:0; background: linear-gradient(#0003, transparent); }
.ui-mobile-menu > ul > li > ul { display: none; padding: 1rem; margin: 0 -4rem; font-size: 90%; padding-left: 5rem; }
.ui-mobile-menu > ul > li.active > ul { display: block; background: #00000020; border-bottom: 1px solid rgba(255,255,255,0.3); border-top: 1px solid rgba(255,255,255,0.3); }
.ui-mobile-menu li.active > a { font-weight: bold; }
.ui-mobile-menu li.active > ul { display: block; }
.ui-mobile-menu .open-button::after {
	transition: all .3s; display: block; content: ''; right: 4rem; top: 50%; transform: translateY(-50%); position: absolute;
	width: 1.5rem; height: 1.5rem; background: url(../img/icon-burger.png) no-repeat center; background-size: 1.5rem auto;
}

@media screen and (max-width: 768px) {
	body { padding-top: 5rem; }
	#header .navigation { display: none; }
	.ui-mobile-menu { display: block;  }
	.ui-mobile-menu.open > ul { display: block; height: 100%; }
	.ui-mobile-menu.open .open-button { background: var(--color-green); }
	.ui-mobile-menu.open .open-button::after { opacity: 1; background-image: url(../img/ui-close.svg); filter: invert(100%); }
}




/* Page block */
/* -------------------------------------------------------------------- */
.page-block { padding: var(--block-padding); overflow: hidden; position: relative; color: var(--text-color); background: var(--background-color); --text-color: inherit; --background-color: transparent;}
.page-block > .container { max-width: var(--page-width); margin: 0 auto; position: relative; }

.page-block.-narrow { padding-top: var(--span); padding-bottom: var(--span); }
.page-block.-promo > .container { display: flex; align-items: center; justify-content: center; min-height: 35vh; }

@media screen and (max-width: 960px) {
	.page-block { --block-padding: calc(var(--span) * 3); }
}
@media screen and (max-width: 768px) {
	.page-block { --block-padding: var(--span-large) var(--span); }
	.page-block h2 { text-align: center; }
}


.page-block.-black { --background-color: black; --text-color: var(--color-white); --heading-color: var(--color-white); }

/* Блок с внутренними */
.page-block:not(.-inset) { background: var(--background-color); }
.page-block.-inset > .container { background: var(--background-color); color: var(--text-color); padding: var(--span-large); }
@media screen and (max-width: 960px) {
	.page-block.-inset > .container { padding: var(-span-small); }
}

.page-block.-full { padding:0; }
.page-block.-full > .container { max-width: none; }
.page-block.-min-height { min-height: 35rem; display: flex; align-items: center; }
.page-block.-min-height > .container {  flex-grow: 1; }

.block-heading { font-size: 4.8rem; text-align: center; color: var(--heading-color); margin:0 auto; margin-bottom: 1em; max-width: 70rem; font-weight: 300; }
.block-heading .green { color: var(--color-green); }
.block-heading .line { display: block; }
.block-subheading { font-size: 3.4rem; text-align: center; }


@media screen and (max-width: 640px) {
	.block-heading { font-size: 3.2rem; }
}

.message-queue { position: fixed; top: 50%; padding: 3rem; left: 50%; right: 0; background: rgba(0, 0, 0, 0.7); transform: translate(-50%, -50%); max-width: 800px; border-radius: 1rem;  z-index: 5000; }
.message-queue .message { margin: 0 auto; max-width: 700px; display: block; background: white; padding: 1rem; margin-bottom: 0.5rem; border-radius: 3px; box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);  }
.message-queue .message: last-child { margin-bottom: 0;  }
.message-queue .message.error { border-left: 5px solid #a6051b;  }
.message-queue .message strong { font-weight: bold; }
.message-queue .message .large { font-size: 2.5rem;}
.message-queue .message .large strong { color: #a6051b; }
.message-queue .message.critical { border-left: 5px solid transparent; color: white; background: #a6051b;  }
.message-queue .message.warning { border-left: 5px solid #ffd376;  }

@media screen and (max-width: 640px) {
	 .message-queue { padding: 1rem; bottom: 0; width: 100%; border-radius: 0; top: auto; transform: none; left:0; right:0; }
	 .message-queue .message { padding: 0.5rem; }
}


/* Блок сообщений */
/* -------------------------------------------------------------------- */
.message-box {
	--text-color: var(--color-black); color: var(--text-color);
	--image: url("../img/icon-message-box-info.png");
	clear: both; 
  position: relative; display: flex; justify-content: flex-start;
  align-items: flex-start; padding: 4rem; padding-left: 12rem;  text-align: left; margin: 3rem 0; flex-flow: column; 
 	min-height: 10rem; border-radius: var(--border-radius); min-height: 100px;
 	border: 2px solid #e0e0e0; 
 	background: linear-gradient(45deg, #00000020, white 5rem);
}

.message-box::after { content:''; display: block; width: 4px; position: absolute; top:-2px; right:-2px; bottom:-2px; background: var(--color-blue); }
.message-box h2 { text-align: left; font-size: 2.4rem; margin-bottom: 1rem; margin-top: 0; }
.message-box a { color: var(--text-color); text-decoration: underline; }
.message-box > * { margin-bottom: 0.5rem;}
.message-box > *:last-child { margin-bottom: 0; }
.message-box::before { content: ''; display: block; position: absolute; top: 50%; bottom: 0; left: 2rem; width: 8rem; height:8rem; transform: translateY(-50%); background: var(--color-blue); mask: var(--image) center / contain no-repeat; -webkit-mask: var(--image) center / contain no-repeat; }
.message-box.-home { --image:url(../img/icon-mb-home.png); }
.message-box.-alert { --image:url(../img/icon-mb-alert.png); }
.message-box.-alert::before { background: var(--color-red); }
.message-box.-alert::after { background: var(--color-red); }
.message-box.-center { text-align: center; align-items: center; }
.message-box.-center::before { display:none;  }
.message-box.-with-image { padding-left: 25rem; }
.message-box.-with-image .image { position: absolute; left:0; top:0; height: 100%; width: 20rem; mask: linear-gradient(to left, transparent, white 2rem); }
.message-box.-with-image .image img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }
@media screen and (max-width: 768px) {
	.message-box.-with-image .image { display: none; }
	.message-box.-with-image::before { display: none; }
}

@media screen and (max-width: 768px) {
	.message-box { padding: 2rem !important; }
	.message-box::before { display: none; }
}

.pagination { display: flex; margin: 4rem 0; text-align: center; align-items: center; justify-content: center; flex-wrap: wrap; }
.pagination .title { margin-right: 2rem; }
.pagination ul { margin-bottom: 0; margin-left: 0; display: flex; flex-wrap: wrap; gap: 0.4rem; grid-gap: 0.4rem; }
.pagination li a { display: inline-flex; margin: 0.5rem 0.5rem; }
.pagination li.active a { background: #2d67b6;  color: #ffffff; }
.pagination li { display: inline-flex; list-style-type: none; margin-bottom: 0; margin-left: 0; align-items: center; }
.pagination li:not(.control) a { border-radius: 50%; min-width: 30px; width: 30px; height: 30px; align-items: center; justify-content: center; text-decoration: none; }
.pagination li:hover:not(.active):not(.control) a { background: #dddddd; }

/* Social icons */
/* -------------------------------------------------------------------- */
.social-icons { white-space: nowrap; display: flex; align-items: center; gap: 1rem;}
.social-icons a { --image:linear-gradient(transparent, transpatent); width: 3rem; height: 3rem; border-radius: 50%;  background: no-repeat center; position: relative; display: inline-flex; justify-content: center; align-items: center; transition: .3s all; gap: 0.5rem; grid-gap: 0.5rem; background: white; border-radius: 50%; }
.social-icons a::after { content: ''; display: inline-block; width: 60%; height: 60%; transition: .3s; 
	mask: var(--image) center/contain no-repeat; background: var(--color-red);
	-webkit-mask: var(--image) center/contain no-repeat; background: var(--color-red);
}
.social-icons a.vk { --image: url(../img/icons/social-vk.png); }
.social-icons a.telegram { --image: url(../img/icons/social-telegram.png); }
.social-icons a.whatsapp { --image: url(../img/icons/social-whatsapp.png); }

.social-icons a:hover { background: var(--color-red); }
.social-icons a:hover::after { background: white; }

.button-up {transition: opacity .3s ease;opacity: 0.6;background-color: #005ca1; height: 55px;width: 55px;bottom: 30px;right: 30px;cursor: pointer;display: none;position: fixed;z-index: 999; color: #fff;align-items: flex-end;justify-content: center;border-radius: 35px;  user-select: none;}
.button-up:before { content: "";position: absolute;top: 40%;width: 40%;height: 40%;border-left: 3px solid white;border-top: 3px solid white;transform: rotate(45deg); left: 27%;}
.button-up:hover {opacity: 1;}

                                
.cities-list { background: linear-gradient(to top, #775132a3, transparent 10rem), url(../img/bg-calculator-nav.webp) center repeat; color: black; position: fixed; left:0; top:0; width: 100%; z-index: 100; display: none; opacity: 0;  box-shadow: var(--shadow); font-weight: normal; }
.cities-list-inner { position: relative; max-height: 60rem; overflow: auto; padding: var(--span-large); b}
.cities-list .container { max-width: var(--page-width); margin:0 auto;  position: relative; }
.cities-list .cities-container {  width: 100%; text-align: left; }
.cities-list .city { display: inline-block; clear: both; border-radius: 3px; }
.cities-list .city.-important { font-weight: bold; }
.cities-list .city.-active { border-left:5px solid white; font-weight: bold; padding-left: 10px;  background: #fff5; text-decoration: underline; }
.cities-list a { display: inline-block; padding: 0.3rem 0.5rem; font-size: 1.6rem; color: var(--color-brown);}
.cities-list a:hover { color: black; }
.cities-list h2 { text-align: left; color: black; font-size: 3rem; margin-bottom: 3rem; font-weight: normal; }

.cities-list .cities-group .cities { display: grid; gap: 0 2rem; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
.cities-list .cities-group .cities.-important { margin-bottom: 2rem; }
.cities-list .cities-group:not(:last-child) { margin-bottom: 2rem; border-bottom: 1px dashed #775132a3; padding-bottom: 2rem; }

.cities-list .cities-heading { padding: 0.5rem 1rem; margin-bottom: 1rem; color: white; position: relative; overflow: hidden; 
	display: inline-block; width: auto; background: var(--color-darken-green); color: white;  border-radius: 1rem; 
}

.cities-list .cities-heading.-secondary{ background: white; color: var(--color-brown);  padding-left: 2rem;}
.cities-list .cities-heading.-secondary::after { content:''; display: block; width: 1rem; top:0; bottom:0; left:0; background: var(--color-darken-green); position: absolute;  }

.cities-list .close-button { position: absolute; top:0; right:0; width: 3rem; height: 3rem;
	-webkit-mask: url(../img/ui-close.svg) center/contain no-repeat; mask: url(../img/ui-close.svg) center/contain no-repeat; background: black; 
}

#cities-list.page-block { background: url(../img/cities-list-bg.jpg) center/cover no-repeat; }
#cities-list { font-size: 1.5rem; }
#cities-list a { display: inline-block; padding: 0.5rem; }
#cities-list a:hover { background: var(--color-red); color: white; }

.cities-selector { display: flex; align-items: center; font-size: 1.6rem; gap: 1rem; justify-content: center; padding: 1rem 2rem; height: 5rem; white-space: nowrap; background: #fff;  border-radius: 1rem; }
.cities-selector span { display: inline-block; }
.cities-selector .title { border-right: 1px solid #d0d0d0; padding-right: 1rem; }
.cities-selector .city { display: flex; align-items: center; gap: 1rem; cursor: pointer; }
.cities-selector .city::after { content: ''; display: inline-block; width: 1rem; height: 2rem; background: url(../img/icon-arrow-down.svg) center/contain no-repeat;}


#header { padding-bottom: 4rem; overflow: visible; background: linear-gradient(white, #b3d6e7, transparent 50%),	url(../img/bg-header-nature.webp) center calc(100% + 24rem) repeat-x; #e0e0e0;}

#header > .container { position: relative; }

#header .bg-house { width: 100rem; height: 51rem; background: url(../img/bg-header-house.webp) center/contain no-repeat; position: absolute; right: -32%; bottom: -6rem;}
#header .bg-plants { height: 20rem; background: url(../img/bg-header-plants.webp) center calc(100% + 13rem) repeat-x; position: absolute; bottom: -6rem; height: 20rem; left:-990em; right: -999em;}

#header .site-logo { text-decoration: none; color: black; line-height: 1.1; position: relative; padding-left: 10rem; }
#header .site-logo::before { content: ''; display: block; width: 8rem; height: 8rem; background: url(../img/logo-site.png) center/contain no-repeat; position: absolute; left:0; top: 50%; transform: translate(0, -50%); }
#header .site-logo .text { font-size: 3rem; font-weight: bold;  text-transform: uppercase; }
#header .site-logo .text strong { color: var(--color-green); }
#header .site-logo .subtext { font-size: 2rem; }

#header .cities-selector-container { flex-grow: 1; display: flex; justify-content: center; align-items: center; flex-shrink: 0; }

#header h1 { font-size: 5rem; font-weight: 300; text-transform: uppercase; line-height: 1.1; margin: 0; }
#header h1 .green { color: var(--color-green); }
#header h2 { font-size: 5rem; margin:0; font-weight: normal; }

#header .header-top { display: flex; gap: 2rem; align-items: center; justify-content: center; flex-wrap: wrap;}
#header .header-content { min-height: 28rem; display: flex; flex-direction: column; justify-content: center; position: relative; z-index: 2; }

#header .phone { font-size: 5rem; color: black; font-weight: 300; text-decoration: none; }
#header .phone strong { color: var(--color-green); font-weight: normal; }

#header-bottom {
	background:
		url(../img/bg-header-wood-top.webp) top center repeat-x,
		linear-gradient(#473313, #473313, transparent 10rem),
		linear-gradient(to top, #47331390, transparent 5rem),
		url(../img/bg-header-wood-planks.webp) center repeat-x,
		#e2bd8d;
}

#header-bottom { overflow: visible; }
#header-bottom > .container { position: relative; }
#header-bottom .bg-keys { position: absolute; right: 0; top:-17rem; width: 40rem; height: 16rem; background: url(../img/bg-header-keys.webp) no-repeat; }

#header-bottom .vcap-input { color: white; }
#header-bottom .vcap-input input { height: 2rem !important; }
#header-bottom .vcap-input a { color: white; }

#header-bottom .callback-form { display: flex; justify-content: center; gap: 2rem; flex-wrap: wrap; margin-top: 5rem; }
#header-bottom .callback-form form { width: 100%; }
#header-bottom .callback-form .form-inputs { display: flex; justify-content: center; gap: 2rem; flex-wrap: wrap; flex-basis: 110rem; margin:0; }
#header-bottom .callback-form .form-input { flex-basis: 40%; flex-grow: 1; margin: 0; }
#header-bottom .callback-form input { height: 5.5rem; }
#header-bottom .callback-form .ui-button { text-transform: uppercase; font-size: 2rem; margin-bottom: 0; height: 5.5rem;}


.header-teasers { width: 60%; }
.header-teasers.ui-container { gap: 1rem;}

.header-teaser { background: white; border-radius: 1rem; display: flex; gap: 1rem; align-items: center; box-shadow: 0 0 5px 0 #0003; font-size: 2rem; padding: 2rem; line-height:1.3; height: 10rem; position: relative; transition: .3s; cursor: pointer; }
.header-teaser .image { width: 7rem; flex-shrink:0;}
.header-teaser .image i { width: 7rem; height: 7rem; background: var(--color-green); }
.header-teaser .text { display: none; position: absolute; left:0; right:0; top: calc(100% + 1rem); background: var(--color-darken-green); color: white; padding: 2rem; font-size: 1.5rem; z-index: 10; border-radius:1rem; box-shadow: var(--shadow); }
.header-teaser .text::after { content:''; display: block; position: absolute; left: 4rem; top: -0.9rem; height:2rem; width: 4rem; transform: translate(0, -50%); background: var(--color-darken-green);  
	--image: url(../img/delivery-arrow.svg); -webkit-mask: var(--image) bottom center/contain no-repeat; mask: var(--image) bottom center/contain no-repeat;
}
.header-teaser .arrow { background: var(--color-green); position: absolute; left:0; bottom:0; right:0; height: 2rem; border-radius: 0 0 1rem 1rem; height: 0; opacity: 0; transition: .3s; }
.header-teaser .arrow::after { content: ''; position: absolute; left: 50%; top: 50%; width: 3rem; height: 3rem; --image: url(../img/icon-arrow-down.svg); background: white; transform: translate(-50%, -50%); -webkit-mask: var(--image) center/100% 1rem no-repeat; }
.header-teaser:hover { padding-bottom: 4rem;}
.header-teaser:hover .arrow { height: 2rem; opacity: 1;}
.header-teaser:hover .text { display: block; }


@media screen and (max-width: 1024px) {
	#header .bg-house { right: -75%; }
	#header .header-content {min-height: auto; padding: 4rem 0; }
	#header h1 { font-size: 4rem; }
	#header h2 { font-size: 4rem; }

	#header .site-logo { white-space: nowrap; }
	#header .site-logo .text { font-size: 2.5rem; }
	#header .site-logo .subtext { font-size: 1.6rem; }
	#header .header-teasers { width: 65%; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
}

@media screen and (max-width: 640px) {
	#header .bg-house { right: -85%; }
	#header .header-content { text-align: center; }
	#header .header-teasers { width: 100%; }
	#header-bottom .bg-keys { display: none; }
	#header-bottom .callback-form { margin-top: 1rem; }
	#header-bottom { background: linear-gradient(to top, #47331390, transparent 5rem), url(../img/bg-header-wood-planks.webp) center repeat-x, #e2bd8d;} 
	#header .site-logo { padding-left: 8rem; }
	#header .site-logo::before { height: 6rem; width: 6rem; }
}

@media screen and (max-width: 480px) {
	#header .site-logo { transform: scale(80%); }
	#header .phone { font-size: 4rem; texta-align: center; }
	#header .header-content { padding-top: 2rem; }
}



#links { padding-bottom: 1rem; }
.quick-links { display: flex; align-items: center; gap: 1rem; font-size: 2rem; flex-wrap: wrap;  justify-content: center; font-weight: 300px; }
.quick-links a { border-radius: 1rem; box-shadow: var(--shadow); display: flex; padding: 1rem;
	color: black; transition: .3s; 
	text-decoration: none; background: white; flex-shrink: 0; height: 5rem; border-left: 8px solid var(--color-green);
	display: flex; align-items: center; padding: 0.5rem 2rem; position: relative; z-index: 0; overflow: hidden; align-items: center; transition: .3s; }
.quick-links a:hover { background: var(--color-green); color: white; }

@media screen and (max-width: 1024px) {
	.quick-links a { font-size: 1.5rem; padding: 1rem 1rem; flex-grow: 1; height: auto;}
}

@media screen and (max-width: 640px) {
	.quick-links a { flex-basis: 100%;  }
}


/* About block */
/* ----------------------------------------------------- */
#about > .container { display: flex; align-items: center; position: relative; min-height: 50rem; }
#about .content { flex-basis: 60%; }
#about .side-image { position: absolute; max-height: 50rem; top: 50%; right:-20rem; width: 70rem; padding-top: 100%; background: url(../img/bg-about.webp) center/contain no-repeat; transform: translate(0, -50%); z-index:5; }
#about .block-heading { text-align: left; margin:0; margin-bottom: 1em;}

@media screen and (max-width: 1280px) {
	#about .side-image { right: -30rem; }
}

@media screen and (max-width: 960px) {	
	#about .side-image { right: -50rem; } 
	#about .content { flex-basis: 80%; }
}

@media screen and (max-width: 640px) {
	#about > .container { min-height: auto; }
	#about .side-image { display: none; }
	#about .content { flex-basis: 100%; }
}


/* Projects block */
#projects {}

#projects .projects-list { display: grid; grid-template-rows: auto; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 2rem; margin: 4rem 0;} 
#projects .projects-status { font-size: 1.5rem; font-style: italic; }
#projects .projects-status .count { font-weight: bold; }

.project-card { box-shadow: var(--shadow); border-radius: 1rem; overflow: hidden; transition: .3s; }
.project-card .image { padding-top: 75%; position: relative; }
.project-card .image img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }
.project-card .content { padding: 1rem; }
.project-card .title { font-weight: normal; color: var(--color-green); height: 4rem; line-height: 1.1;  text-align: center; display: flex; align-items: center; justify-content: center; font-size: 2rem;}
.project-card .controls { background: #f0f0f0; display: flex; align-items: center; padding: 1rem;  gap: 1rem 2rem; justify-content: center; flex-wrap: wrap;  padding-top:0; }
.project-card .controls .price { display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; font-size: 1.5rem; }
.project-card .controls .price strong { color: var(--color-green); font-size: 2.2rem; font-weight: normal; }
.project-card .properties { display: flex; gap: 0.5rem 1rem; align-items: center; justify-content: center; margin: 1rem; flex-wrap: wrap; font-size: 1.5rem; }
.project-card .property { flex-grow: 1; display: flex; justify-content: center; gap: 0.5rem; color: inherit; text-decoration: none; }
.project-card .property strong { font-weight: normal; }
.project-card .property i { background: var(--color-green); margin-right: 0.5rem; width: 2.2rem; height: 2.2rem; }
.project-card .project-full { display: none; }
.project-card .ui-button { padding: 1rem; height: 4rem; font-size: 1.5rem; }
.project-card .ui-button i { width: 1.5rem; height: 1.5rem; }
.project-card .price { color: inherit; text-decoration: none; f}

.project-card:hover { box-shadow: 0 0 5px 0 var(--color-green);}

.project-card .content { display: flex; align-items: center; justify-content: center; font-size: 1.8rem; flex-direction: column; padding: 1rem; text-align: center; line-height: 1.1; flex-grow: 1;  }
.project-card .content .top { font-size: 2.5rem; font-weight: normal; color: var(--color-green); margin-bottom: 2rem; }
.project-card .controls { background: none; }

.project-card.-hint { background: linear-gradient(#000a, #000a), url(../img/bg-projects-hint.webp) center/cover no-repeat, black; color: white; display: flex; flex-direction: column; cursor: pointer; }
.project-card.-hint:hover { background: linear-gradient(#000d, #000d), url(../img/bg-projects-hint.webp) center/cover no-repeat, black; }
.project-card.-hint .content { height: 100%; }


/* Project full preview */
.project-full { display: flex; gap: 2rem;  font-size: 1.5rem; }
.project-full .project-image { flex-basis: 40%; flex-shrink:0; margin-bottom: 2rem; display: block;}
.project-full .project-title { font-size: 2.6rem; color: var(--color-green); margin-bottom: 2rem; line-height: 1.2; text-decoration: none; }
.project-full .description { font-size: 1.5rem; line-height: 1.3; margin-bottom: 2rem;}

.project-full .gallery { display: flex; gap: 0.5rem; }
.project-full .gallery .image { border: 1px solid #f0f0f0; padding: 2px; flex-basis: 9rem; cursor: pointer; display: block;}
.project-full .gallery .image:hover { border-color: var(--color-green); }
.project-full .gallery .image-wrapper { padding-top: 70%; position: relative; display: block;}
.project-full .gallery .image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }


.project-full .price { display: flex; gap: 1rem; align-items: center; font-size: 2rem; }
.project-full .price strong { font-size: 2.5rem; font-weight: normal; color: var(--color-green); }

.project-full .properties-block { min-width: 30rem; }
.project-full .properties { margin: 2rem 0; padding: 2rem;  background: #f0f0f0; box-shadow: 0 0 5px 0 #0002; }
.project-full .properties i { width: 2rem; height: 2rem; background: var(--color-green); margin-right: 0.3rem; }
.project-full .properties .additional { margin-top: 2rem; padding-top: 2rem; border-top: 1px solid #ddd; }
.project-full .properties .title { font-weight: normal; }
.project-full .properties .values .value { color: var(--color-darken-green); }
.project-full .properties .values .value::after { content: ","; margin-right: 0.5rem; display: inline-block; color: gray; }
.project-full .properties .values .value:last-child::after { display: none; }
.project-full .properties .property {  align-items: center; margin-bottom: 0.5rem; }
.project-full .ui-button { width: 100%; }

@media screen and (max-width: 960px) {
	.project-full { flex-wrap: wrap; }
	.project-full { text-align: center; }
	.project-full .price { justify-content: center; }
}



#projects .button { display: flex; justify-content: center; margin-top: 2rem; }

.project-filters { background: white; border-radius: 2rem; padding: 2rem; box-shadow: 0 0 20px 0 #0002; display: flex; gap: 2rem; overflow: hidden; position: relative; padding-left: 4rem; margin-bottom: 4rem; padding-top: 4rem;}
.project-filters::before { content: ''; display: block; background: var(--color-green); left:0; top:0; width: 1.5rem; bottom:0; position: absolute; }

.project-filters .group.-left { flex-basis: 60%; border-right: 1px solid #d8d8d8; flex-grow: 1; }
.project-filters .filter { margin-bottom: 1rem; }
.project-filters .filter .title { font-weight: normal; }
.project-filters .filter .values { font-size: 1.5rem; margin-left: -0.5rem; margin-top: -0.2rem; }
.project-filters .filter .values span { display: inline-block; color: var(--color-green); text-decoration: underline;  padding: 0.5rem; cursor: pointer;  border-radius: 0.5rem; transition: .3s; }
.project-filters .filter .values span:hover { background: #f0f0f0; text-decoration: none; }
.project-filters .filter .values span::after { display: inline-block; content: ','; color: black; text-decoration: none; }
.project-filters .filter .values span:last-child::after { display: none; }
.project-filters .filter .values span.-active { color: white; text-decoration: none; background: var(--color-green); }
.project-filters .filter .values span.-active::after { opacity: 0; }
.project-filters .reset { position: absolute; right: 2rem; font-size: 1.5rem; color: var(--color-green); top: 1rem; text-decoration: underline; cursor: pointer; display: flex; gap: 0.5rem; align-items: center; }
.project-filters .reset i { background: var(--color-green); width: 1rem; height: 1rem; }

@media screen and (max-width: 1024px) {
	.project-filters { flex-wrap: wrap; }
	.project-filters .filter { line-height: 1.1;}
	.project-filters .group.-left { border: none; }
	.project-filters .filter .title { margin-bottom: 1rem; }
	.project-filters .filter .values { margin-left: 2px; }
	.project-filters .filter .values span { padding: 2px; }
}


/* Advantages block */
#advantages {}

.advantage-card { background: #f0f0f0; padding: 4rem 2rem; box-shadow: 0 0 15px 0 #0003; text-align: center; line-height: 1.5;}
.advantage-card .image { display: flex; aling-items: center; justify-content: center; margin-bottom: 2rem; }
.advantage-card .image i { width: 10rem; height: 10rem; background: linear-gradient(210deg, #a0c13c, #6d8b16); }
.advantage-card .title { color: var(--color-darken-green); margin-bottom: 1rem; height: 4rem; font-weight: normal; display: flex; align-items: center; justify-content: center; line-height: 1.3; }
.advantage-card .text { font-size: 1.4rem; }

@media screen and (max-width: 960px) {
	.advantage-card { padding: 2rem; }
	.advantage-card .image i  { width: 8rem; height: 8rem; } 
	.advantage-card .title { heigh: auto; }
}

@media screen and (max-width: 640px) {
	.advantage-card .image { display: none; }
	
}


/* Calculator block */
/* ----------------------------------------------------- */
#calculator { background: url(../img/bg-calculator.webp) center repeat, #f7e8d4; }

#calculator .block-subheading { margin-top: -4rem;}
#calculator .heading-hint { margin-bottom: 4rem; font-size: 2rem; font-weight: 300; text-align: center; }

.calculator { display: flex; align-items: center; border-radius: 1rem; overflow: hidden; box-shadow: var(--shadow); }

.calculator-nav { flex-basis: 34rem; flex-grow: 1; flex-shrink:0; background: linear-gradient(to right, #57471f30, transparent 3rem), url(../img/bg-calculator-nav.webp) center repeat, #e6c9a0; font-size: 2rem; align-self: stretch;  padding: 1rem 0 1rem 2rem; }
.calculator-nav .step-button { color: var(--color-brown); padding: 1rem; padding-left: 2rem; border-radius: 1rem 0 0 1rem; position: relative; font-weight: normal;}
.calculator-nav .step-button::after { content:''; display: block; border-bottom: 1px solid #67502a50; position: absolute; left:0; bottom:0; right:0; } 
.calculator-nav .step-button:last-child::after { border:none;}
.calculator-nav .step-button.-active { background: var(--color-brown); color: white; }

.calculator-content { background: white; flex-basis: 90%; flex-grow: 1; align-self: stretch; display: flex; flex-direction: column;  }

.calculator-wrapper { position: relative; }
.calculator-wrapper::after { content: ''; display: block; left: calc(100% - 20rem); top:-4rem; bottom:0; padding-left: 24%;  background: url(../img/bg-calculator-woman.webp) bottom center/contain no-repeat; position: absolute;}

.calculator-step { padding: 4rem; flex-grow: 1; display: flex; flex-direction: column; justify-content: center;  padding-right: 17rem; }
.calculator-step input, .calculator-step select { background: #f0f0f0; }
.calculator-step:nth-child(n+2) { display: none; }
.calculator-step > .content { flex-grow: 1; display: flex; flex-direction: column; justify-content: center; }
.calculator-step .step-title { font-weight: normal; color: var(--color-green); font-size: 2rem; text-transform: uppercase; margin-bottom: 1rem;}

.calculator-step .hint { display: flex; justify-content: start; gap: 1rem 2rem; align-items: center; flex-wrap: wrap; font-size: 1.9rem; margin-top: 2rem; }
.calculator-step .hint-item { display: flex; gap: 0.5rem; justify-content: center; align-items: center; }
.calculator-step .hint-item .value { font-weight: normal; color: var(--color-green); }
.calculator-step .hint i { width: 3rem; height: 3rem; background: var(--color-green); }

.calculator .inputs-container { display: flex; flex-wrap: wrap; gap: 1rem 2rem; flex-wrap: wrap; justify-content: start; }

.calculator .options-input { display: flex; gap: 2rem; }

.calculator .options-input .option { display: flex; justify-content: start; }
.calculator .options-input .option-inner { flex-basis: 12rem; display: flex; flex-direction: column; gap: 0.5rem; text-align: center; align-items: center; cursor: pointer; justify-content: start;  }
.calculator .options-input .option .image { width: 12rem; height: 12rem; border-radius: 1rem; border: 2px solid transparent; overflow: hidden; position: relative; }
.calculator .options-input .option .image img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; } 
.calculator .options-input .option .text { font-size: 1.5rem; font-weight: normal; padding: 0.5rem; background: #f0f0f0; border-radius: 1rem; min-height: 4rem; line-height: 1.4rem; display: flex; align-items: center; width: 100%; text-align: center; justify-content: center; }

.calculator .options-input .option.-active .image { border-color: var(--color-green); }
.calculator .options-input .option.-active .text { background: var(--color-green); color: white; text-shadow: 1px 1px 0 #000a; }

.calculator-buttons { padding: 1rem 4rem; }
.calculator-buttons .ui-button[data-action="prev"] { background: #eee; color: black; text-shadow: none; }

.calculator .result-table p { margin-bottom: 0.3em; line-height: 1.2; color: #000a; }
.calculator .result-table strong { font-weight: normal; color: black;  }
.calculator .result { border-top: 1px solid #eee; padding-top: 1rem; margin-top: 1rem; font-size: 1.8rem; }
.calculator .result .value { font-weight: bold; color: var(--color-green); }

.mfp-content .result-message { border: 1px solid #eee; padding:2rem; font-size: 1.5rem; margin-bottom: 1rem;}
.mfp-content .result-message p { margin-bottom: 0.3em; line-height: 1.2; color: #000a; }
.mfp-content .result-message p strong { font-weight: normal; color: black;  }

@media screen and (max-width: 1024px) {
	.calculator { flex-wrap: wrap; }
	.calculator-nav { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; font-size: 1.8rem;}
	.calculator-nav .step-button { padding: 0.5rem 1rem; border-radius: 1rem;  }
	.calculator-nav .step-button::after { display: none; }
	.calculator-wrapper::after { display: none; }
	.calculator-step { text-align: center; }
	.calculator-buttons { text-align: center; }
	.calculator-step { padding: 2rem; }

	.calculator .inputs-container { justify-content: center; }
	.calculator-step .hint { justify-content: center; }
	.calculator .options-input .option { justify-content: center; }
}



#delivery-map { border: 3px solid var(--color-green); padding: 4rem; border-radius: 1rem; overflow: hidden; min-height: 60rem; background: #e0e0e0;  position: relative; }
#delivery-map-container { position: absolute; top:0; left:0; width: 100%; height: 100%; z-index: 1; }
#delivery-map .delivery-map-panel { background: white; position: absolute; left: 50%; top: 4rem; display: flex;  gap: 1rem 2rem; align-items: center; transform: translate(-50%,0); padding: 1rem 2rem; border-radius: 1rem; box-shadow: var(--shadow); font-size: 2rem; z-index: 2;  justify-content: center; width: 80%; } 
#delivery-map .delivery-map-panel .input { display: flex; gap: 1rem 2rem; align-items: center; flex-grow: 1; flex-basis: 25rem; flex-basis: 20rem; }
#delivery-map .delivery-map-panel .input input { padding:1rem; font-size: 1.8rem; color: var(--color-darken-green); min-height: auto; text-align: center; font-weight: normal; flex-basis: 20rem; flex-grow: 1; }
#delivery-map .delivery-map-panel .input.from { border-right: 1px solid #e0e0e0; }

#delivery-map .delivery-map-result { background: white; border-radius: 1rem; position: absolute; bottom: 2rem; left: 50%; transform: translate(-50%,0); box-shadow: var(--shadow); border-top:8px solid var(--color-green); padding: 2rem; padding-left: 12rem; min-width: 35rem; font-size: 2rem; z-index: 2; display: none; }
#delivery-map .delivery-map-result::before { content:''; display: block; position: absolute; width: 10rem; height: 2rem; background: url(../img/delivery-arrow.svg) center bottom no-repeat; left: 50%; top: -2.7rem; transform: translate(-50%,0);}
#delivery-map .delivery-map-result .image { position: absolute; left:0; top:0; bottom: 0; width: 10rem; background: var(--color-green); border-radius: 0 0 0 1rem; }
#delivery-map .delivery-map-result .image i { position: absolute; left: 50%; top: 50%; width: 5rem; height: 6rem; background: white; transform: translate(-50%, -50%); } 
#delivery-map .delivery-map-result .value { font-weight: bold; color: var(--color-green); }


@media screen and (max-width: 1280px) {
	#delivery-map .delivery-map-panel { flex-wrap: wrap; }
	#delivery-map .delivery-map-panel .input input { width: 10rem; }
}	

@media screen and (max-width: 960px) {
	#delivery-map .delivery-map-panel { gap: 0.5rem 1rem; top: 1rem; }
	#delivery-map .delivery-map-panel { font-size: 1.8rem; }
	#delivery-map .delivery-map-panel .input label { flex-basis: 10rem; }
	#delivery-map .delivery-map-panel .input input { padding: 0.5rem 1rem; background: #f0f0f0; }
	#delivery-map .delivery-map-panel .input.from { border: none; }
	#delivery-map .ui-button { height: 4rem; }
}


/* Steps block */
/* ----------------------------------------------------- */
#steps { counter-reset: step; }

.step-card { display: flex; gap: 2rem; align-items: center; line-height: 1.2; counter-increment: step; min-height: 15rem; }
.step-card .image { flex-shrink: 0; }
.step-card .image i { width: 10rem; height: 10rem; background: linear-gradient(210deg, #a0c13c, #6d8b16); }
.step-card .title { color: var(--color-green); font-weight: bold; font-size: 2rem; text-transform: uppercase; margin-bottom: 0.5em; }
.step-card .title::before { content: counter(step) ". "; }


@media screen and (max-width: 960px) {
	.step-card { min-height: 12rem; }
	.step-card .image i { width:8rem; height: 8rem; }
}

/* Achievements block */
#achievements { display: flex; align-items: center; min-height: 60rem; background: linear-gradient(#000a, #000a), url(../img/bg-achievements.webp) center/cover no-repeat, black;}
#achievements > .container { width: 100%; }

.achievement-card { background: white; display: flex; border-radius: 1rem; color: black; overflow: hidden; min-height: 17rem; }
.achievement-card .image { background: #f0f0f0; flex-shrink: 0; width: 13rem; display: flex; align-items: center; justify-content: center; }
.achievement-card .image i { width: 9rem; height: 9rem; background: linear-gradient(210deg, #a0c13c, #6d8b16); }
.achievement-card .content { padding: 2rem; display: flex; flex-direction: column; justify-content: center; }
.achievement-card .number { font-weight: bold; font-size: 2.7rem; color: var(--color-green); }

@media screen and (max-width: 1024px) {
	.achievement-card { min-height: 14rem; }
	.achievement-card .image { width: 10rem; height: 14rem; }
	.achievement-card .image i { width: 7rem; height: 7rem; }
}


/* Manufacture block */
#manufacture > .container { display: flex; align-items: center; min-height: 60rem; position: relative; }
#manufacture > .container::before { content:''; position: absolute; display: block; 
	top: 0; bottom:0; left:-1007em; right:-999em; background: url(../img/bg-manufacture.webp) center/contain no-repeat;
}

#manufacture .block-heading { text-align: left; margin: 0; margin-bottom: 1em;}
#manufacture .side-image { flex-basis: 45%; flex-shrink: 0; }
#manufacture .content { flex-basis: 50%; flex-grow: 1; position: relative; padding-right: 15rem;}
#manufacture .bg-saw { width: 40rem; height: 100%; position: absolute; right: -20rem; top:50%; background: url(../img/bg-manufacture-saw.webp) center/contain no-repeat; transform: translate(0, -50%); }

@media screen and (max-width: 1024px) {
	#manufacture > .container::before { left: -1017em; }
	#manufacture .side-image { flex-basis: 35%; }
	#manufacture .bg-saw { right: -30rem; }
}

@media screen and (max-width: 640px) {
	#manufacture .side-image { flex-basis: 10rem; }
	#manufacture .bg-saw { display: none;  }
	#manufacture .content { padding-right: 0; }
}


/* Wood block */
#wood { background: url(../img/bg-material.webp) bottom center repeat-x; padding-bottom:0; }
#wood .wood-list { margin: 8rem 0; }
#wood .block-heading { margin-bottom: 0.5em; }
#wood .bg-brus { display: block; width: 30rem; height: 30rem; position: absolute; left:0; bottom:0; background: url(../img/bg-material-brus.webp) center 5rem/contain no-repeat; }
#wood .bottom {  position: relative; padding: 6rem 0; padding-left: 25%;}
#wood .bottom h3 { font-size: 3.2rem; }
#wood .bottom h3 strong { color: var(--color-green); font-weight: 300; text-transform: uppercase; }
.wood-card { padding-top: 48%; position: relative; flex-basis: 40rem; }
.wood-card .image { position: absolute; left:0; top:0; width: 100%; height: 100%; }
.wood-card .image img { position: absolute; left:0; top:0; width: auto; height: 100%; object-fit: cover;}

@media screen and (max-width: 1024px) {
	#wood .bottom	 { padding-left: 10rem; }
	#wood .bg-brus { left: -20rem; }
	.wood-card .image img { height: 20rem; width: auto; left: 50%; transform: translate(-50%,0); }
}

@media screen and (max-width: 640px) {
	#wood .bottom { padding-left:0; padding-top: 0; }
	#wood .bg-brus { display: none; }
}

#material .text { max-width: 100rem; text-align: center; margin: 0 auto; margin-bottom: 4rem; }

.material-card { border-radius: 1rem; background: #eecea6; text-align: center; padding: 2rem; padding-top: 40%; position: relative; overflow: hidden; }
.material-card .image { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; z-index: 0; -webkit-mask: linear-gradient(120deg, #000f 40%, #0000); }
.material-card .image img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover;}
.material-card .title { background: white; padding: 1rem 2rem; font-size: 2.8rem; font-weight: normal; text-align: center; color: var(--color-darken-green); display: inline-block; border-radius: 1rem; box-shadow: 0 0 5px 0 0002#; position: relative; z-index: 10;}



#feedbacks {}
#feedbacks .feedbacks-list .slick-list { padding: 1rem; margin: 0 -1rem;}

@media screen and (max-width: 960px) {
	#feedbacks { padding: 2rem; }
}

.feedback-card { background: #f0f0f0; display: flex !important; align-items: center; border-radius: 1rem; overflow: hidden; min-height: 30rem; transition: .3s; box-shadow: var(--shadow); }
.feedback-card .content { padding: 4rem; }
.feedback-card .content .text { font-style: italic; font-size: 1.5rem; }
.feedback-card .user { display: flex; align-items: center; gap: 1rem; margin-bottom: 2rem; }
.feedback-card .user .name { color: var(--color-darken-green); font-size: 2rem; font-weight: normal; }
.feedback-card .user .image { width: 8rem; height: 8rem; background: #ddd; border-radius: 50%; overflow: hidden; }
.feedback-card .images { flex-basis: 66%; flex-shrink:0; background: black; align-self: stretch; display: flex; }
.feedback-card .images .image { flex-basis: 45%; flex-grow: 1; position: relative; }
.feedback-card .images .image:nth-child(even) { background: #222;}
.feedback-card .images .image img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }

@media screen and (max-width: 1024px) {
	.feedback-card .images { flex-basis: 50%; }
	.feedback-card .images .image:nth-child(n+2) { display: none; }	
}

@media screen and (max-width: 640px) {
	.feedback-card .images { display: none; }
	.feedback-card .content { text-align: center; }
	.feedback-card .user { justify-content: center; }
}


/* Часто задаваемый вопрос */
/* ----------------------------------------------------- */
#faq { overflow: visible; }

.faq-item { background: #f0f0f0; padding: 4rem; border-radius: 1rem; position: relative;  transition: .3s; box-shadow: 0 0 15px 0 #0003; display: flex; }
.faq-item::before { content: ''; position: absolute; left:0; top:0; bottom:0; width: 1.5rem; background: var(--color-green); border-radius: 1rem 0 0 1rem;}
.faq-item .question { font-weight: normal; position: relative; display: flex; gap: 1rem; align-items: center;  padding-right: 10rem; cursor: pointer; }
.faq-item .question .opener { border-left: 1px solid #a0a0a0; position: absolute; right:-3rem; top: 50%; transform: translate(0, -50%); }
.faq-item .question .opener-button { content:''; display: inline-block; width: 8rem; height: 8rem; 
	-webkit-mask: url(../img/icon-arrow-down.svg) center/3rem auto no-repeat; 
	-mask: url(../img/icon-arrow-down.svg) center/3rem auto no-repeat; 
	background: var(--color-green);
}
.faq-item .answer { display: none; position: absolute; top: 100%; left: 0; width: 100%; padding: 4rem; border-radius: 0 0 1rem 1rem; z-index: 10; background: white;  color: black; box-shadow: var(--shadow); }

.faq-item:hover { background: var(--color-green); color: white; box-shadow: 0 0 0 0 #0000; }
.faq-item:hover .question .opener { border-color: white; }
.faq-item:hover .question .opener-button { background: white; }

.faq-item.-open { border-radius: 1rem 1rem 0 0; background: white; box-shadow: var(--shadow); }
.faq-item.-open .question .opener { border-color: #eee; }
.faq-item.-open .question .opener-button { background: var(--color-green); }
.faq-item.-open::before { border-radius: 1rem 0 0 0; }
.faq-item.-open .answer { display: block;  }
.faq-item.-open .question { color: black; }
.faq-item.-open .question .opener-button { transform: scaleY(-100%); }

@media screen and (max-width: 960px) {
	.faq-item { padding: 2rem 4rem; }
	.faq-item .answer { padding: 2rem 4rem;}
}


/* Contacts block */
/* ---------------------------------------- */
#contacts { --background-color: url(../img/bg-contacts.webp) center/cover no-repeat, #eee; }
#contacts .content { max-width: 50%; padding: 2rem 6rem; text-align: center; border-radius: 1rem; overflow: hidden; position: relative; z-index: 5; box-shadow: var(--shadow);
	background:
		url(../img/bg-contacts-line.webp) 2rem center repeat-y,
		url(../img/bg-contacts-line.webp) calc(100% - 2rem) center repeat-y,
		linear-gradient(45deg, #dd903f9c, transparent 10rem),
		linear-gradient(210deg, #dd903f9c, transparent 10rem),
		url(../img/bg-calculator.webp), #f1e2cb;  }
#contacts .block-heading { margin-bottom:0; }
#contacts .block-subheading { font-size: 1.7rem; margin:0; margin-bottom: 2rem; }
#contacts .bg-image { position: absolute; width: 100rem; top:-2rem; bottom:-6rem; right:-10%; background: url(../img/bg-contacts-people.webp) bottom center/contain no-repeat; z-index: 1; transition: .3s; }


@media screen and (max-width: 1280px) {
	#contacts .bg-image { right: -20%; }
}

@media screen and (max-width: 1024px) {
	#contacts .bg-image { right: -40%; }
}

@media screen and (max-width: 960px) {
	#contacts .bg-image { display: none; }
	#contacts .content { max-width: none; }
}

/* Footer block */
/* --------------------------------------------- */
#footer { background: linear-gradient(310deg, #91b52966, transparent 10rem), linear-gradient(120deg, #91b52966, transparent 10rem)  black; }
#footer > .container { display: flex; align-items: center; gap: 2rem; flex-wrap: wrap; justify-content: center; }

#footer .info { padding-left: 10rem; position: relative; min-height: 8rem; display: flex; flex-direction: column; justify-content: center; flex-grow: 1; }
#footer .info::before { content: ''; position: absolute; left:0; top: 50%; width: 8rem; height: 8rem; background: url(../img/logo-site.png) center/contain no-repeat; transform: translate(0, -50%); }
#footer .info .copyrights { font-size: 90%; font-style: italic; opacity: 0.6;}

#footer .developer a { display: block; font-size: 1.4rem; color: white; text-decoration: none; padding-top: 5rem; position: relative; }
#footer .developer a::before { content: ''; display: block; position: absolute; top:0; width: 100%; height: 5rem; background: url(../img/logo-vebas.png) center/contain no-repeat; }

@media screen and (max-width: 960px) {
	#footer .info { padding-left: 0;}
	#footer .info::before { display: none; }
	#footer .info { width: 60%; min-width: 40rem; text-align: center; }
}


.tippy-content { font-size: 1.5rem; padding: 2rem; }
.tippy-box { background: #ffffffe0; color: black; border-radius: 1rem; }
.tippy-arrow  { color: #ffffffe0;}



