@charset "UTF-8";

:root {
	/* Colors */
	--color-white: #ffffff;
	--color-black: #000000;
	--color-grey: #999;	
	--color-bg-light-grey: #fefefe;
	--color-bg-grey: #f7f7f7;
	--color-bg-grey1: #747474;;
	--color-bg-dark-grey: #5c5c5c;
	--color-orange: #E78D23;
	--color-dark-grey: #303030;
	/* Fonts */

	--typo-base: 400 1rem "Source Sans 3", sans-serif;
	--typo-medium: 500 1rem "Source Sans 3", sans-serif;
	--typo-bold: 600 1rem "Source Sans 3", sans-serif;	
	--typo-content-light: 300 1rem/140% "Source Sans 3", sans-serif;
	
	--typo-light: 300 1rem "Source Sans 3", sans-serif;
	--typo-s-1-medium: 500 0.875rem "Source Sans 3", sans-serif;
	--typo-s-1-bold: 600 0.875rem "Source Sans 3", sans-serif;
	--typo-s-1-light: 300 0.875rem "Source Sans 3", sans-serif;
	--typo-s-1-regular: 400 0.875rem "Source Sans 3", sans-serif;
	
	--typo-s-2-light: 300 0.9375rem "Source Sans 3", sans-serif;
	--typo-s-2-regular: 400 0.9375rem "Source Sans 3", sans-serif;
	--typo-s-2-medium: 500 0.9375rem "Source Sans 3", sans-serif;	
	--typo-s-3-regular: 400 0.75rem "Source Sans 3", sans-serif;
	--typo-s-3-light: 300 0.75rem "Source Sans 3", sans-serif;

	--typo-s-4-light: 300 0.8125rem "Source Sans 3", sans-serif;
	
	
	--typo-t-1-regular: 400 1.125rem "Source Sans 3", sans-serif;
	--typo-t-1-light: 	300 1.125rem "Source Sans 3", sans-serif;
	--typo-t-1-medium: 	500 1.125rem "Source Sans 3", sans-serif;
	--typo-t-1-bold: 	600 1.125rem "Source Sans 3", sans-serif;
	

	--typo-t-2-light: 300 1.25rem/120% "Source Sans 3", sans-serif;
	--typo-t-2-regular: 400 1.25rem "Source Sans 3", sans-serif;
	--typo-t-2-medium:  500 1.25rem "Source Sans 3", sans-serif;


	--typo-h-0-bold: 600 3rem/110% "Source Sans 3", sans-serif;
	--typo-motto: 500 2.5rem/110% "Source Sans 3", sans-serif;
	
	--typo-h-1-medium: 500 1.875rem/110% "Source Sans 3", sans-serif;
	--typo-h-2-bold: 500 1.375rem/120% "Source Sans 3", sans-serif;	
	--typo-h-2-medium: 400 1.375rem/120% "Source Sans 3", sans-serif;
	--typo-h-2-light:  300 1.375rem/120% "Source Sans 3", sans-serif;
	--typo-h-3-medium: 500 1.125rem/120% "Source Sans 3", sans-serif;		

	--border-black: 0.0625rem solid var(--color-black);
	--border-grey: 0.0625rem solid var(--color-grey);
	--border-ffffff: 0.0625rem solid var(--color-white);
	--border-orange: 0.0625rem solid var(--color-orange);
	--border-orange-solid: 0.25rem solid var(--color-orange);

	--hdr-top-height: 2.5rem; 
	--hdr-main-height: 5.5rem; 
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, 
p, blockquote, pre, a, abbr, address, cite, code, del, dfn, em, 
img, ins, kbd, q, samp, small, strong, sub, supl, var, b, i, hr, 
dl, dt, dd, ol, ul, li, fieldset, form, label, legend, 
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figure, figcaption, hgroup, 
menu, ftr, header, nav, section, summary, time, mark, audio, video, input, textarea, select {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
    outline: none;
    background-repeat: no-repeat;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;	
}

article, aside, canvas, figure, figure img, figcaption, hgroup,
ftr, header, nav, section, audio, video {
    display: block;
}

:focus {
    outline: none;
}
/*
::-moz-selection {
    background: var(--color-secondary-f1f1f1);
}
::-webkit-selection {
	background: var(--color-secondary-f1f1f1);
}

::selection  {
    background: var(--color-secondary-f1f1f1);
}
*/

a {
    color: inherit;
    text-decoration: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-appearance: none;
    -moz-appearance: none;
	-ms-appearance: none;	
    appearance: none;
	cursor: pointer;
	font-weight: 400;
}

a:hover {
    color: var(--color-orange);
}

html {
    width: 100%;
    height: 100%;    
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    font-size: 16px;
	background-color: #fff;
}

body {
    font: var(--typo-base);
	line-height: 1;
    color: var(--color-black);
    background-color: var(--color-bg-dark-grey);
	position: unset;
   	width: 100%;
	min-height: 100%;
    height: auto;	
    text-size-adjust: none;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body.noscroll {
	height: 100%;
    overflow: hidden;
}

.page-grid {
	display: grid;
	grid-template-rows: 1fr auto;
	grid-template-columns: 100%;
	min-height:100vh;
	min-height:100svh;	
}

.bx-panel {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2000;
    width: 100%;
}

.bx-panel ~ .page-grid, .bx-panel ~ .page-grid header {
    margin-top: 39px !important;
}

[class*="-fx"] {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: space-between;
}

[class*="-slider"]  {
	visibility: hidden;
}

*:not(.form) > [class$="-popup"] {
	border: var(--border-black);
	backdrop-filter: blur(0.625rem);
}

[class$="-popup"] .close {
	position: absolute;
	top: 0.6125rem;
	right: 0.6125rem;
	cursor: pointer;
}
[class$="-popup"] .close svg {
	fill: var(--color-secondary-8d8d8d);
}
[class$="-popup"] .close:hover svg {
	fill: var(--color-black);
}

header {
	width: 100%;
	display: grid; 
	grid-template-columns: 1fr; 
	grid-template-rows: 0 var(--hdr-main-height);
	grid-template-areas: 
		"hdr-top"
		"hdr-main";
	z-index: 100;
	position: fixed;
    top: 0;
    left: 0;	
}

header:before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -moz-transition: background 0.5s;
    -webkit-transition: background 0.5s;
    transition: background 0.5s;	
    content: "";
    background: linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.5) 50%, rgba(0,0,0,0) 100%);
}

header.active:before {
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0.8) 30%, rgba(0,0,0,0.7) 70%, rgba(0,0,0,0.6) 100%);
}

.pwrap {
	padding-left: 5%;
	padding-right: 5%;
}

.hdr-top-fx {
	grid-area: hdr-top;
	background: var(--color-bg-dark-grey);
	justify-content: flex-end;
}

.hdr-main {
    grid-area: hdr-main;
    display: grid;
    grid-template-columns: 17% 66% 17%;
    grid-template-rows: var(--hdr-main-height);
    grid-template-areas: "hdr-logo-fx menu-main-fx hdr-phone menu-tools-fx";
    width: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-transition: background 0.5s;
    -webkit-transition: background 0.5s;
    transition: background 0.5s;
    color: #fff;
}

.logo {
	display: block;
    width: 5rem;
    height: 3.5rem;
}

.hdr-phone-fx {
	grid-area: hdr-phone;
	color: var(--color-white);
    font: var(--typo-s-2-medium);  
    white-space: nowrap;
    letter-spacing: 0.05rem;  
}

.hdr-top-fx ul {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-end;
	list-style: none;
	color: var(--color-white);
	font: var(--typo-s-1-medium);
	text-transform: uppercase;
    letter-spacing: 0.125rem;
}

.hdr-top-fx ul > li+ li {
	padding-left: 1rem;
}

.menu-tools-fx {
    justify-content: flex-end;
}

.menu-tools-fx > div {
	margin-left: 1rem;
}

.search-link-fx {
    display: flex;
}

.search-block {
    overflow: hidden;
    webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform .3s cubic-bezier(.25,.46,.45,.94) 0ms;
    transition: transform .3s cubic-bezier(.25,.46,.45,.94) 0ms;
    margin-top: -0.125rem;
    width: 0;
}

.menu-tools-fx.active .hdr-phone-fx {
    width: 0;
    overflow: hidden;
}

.menu-tools-fx.active .search-block {
	-webkit-transform-origin: right top;
	transform-origin: right top;
	-webkit-transform: scale(1);
	transform: scale(1);
    width: 100%;
}

.search-block input {
	height: 1.25rem;
    font-size: 0.875em;
    border: 0  !important;
    border-bottom: 1px solid var(--color-white)  !important;
	background-color: transparent !important;
    border-radius: 0 !important;
    color: var(--color-white);
    padding-left: 2px !important;
}

.search-block input:focus {
    outline: none;
	border: none;
	border-bottom: 1px solid var(--color-white);
}

.search-block .btn, .search-block .close {
    display: none;
}

.icon.search {
    display: block;
    content: "";
    background-image: url('/css/icons.svg?26#u-search');
    background-repeat: no-repeat;
}

input::-webkit-input-placeholder {
	color: var(--color-grey);
}

input::-moz-placeholder {
	color: var(--color-grey);
}

input:-ms-input-placeholder {
	color: var(--color-grey);
}

input::placeholder {
	color: var(--color-grey);
}

input:-internal-autofill-selected {
	color: #000;
}

header input::-webkit-input-placeholder {
	color: var(--color-white);
}

header input::-moz-placeholder {
	color: var(--color-white);
}

header input:-ms-input-placeholder {
	color: var(--color-white);
}

header input::placeholder {
	color: var(--color-white);
}

input.error, textarea.error, select.error { 
    border: var(--border-orange) !important;
	color: var(--color-orange) !important;
}

input.error::-webkit-input-placeholder, textarea.error::-webkit-input-placeholder {
	color: var(--color-orange) !important;
}

input.error::-moz-placeholder, textarea.error::-moz-placeholder {
	color: var(--color-orange) !important;
}

input.error:-ms-input-placeholder, textarea.error:-ms-input-placeholder {
	color: var(--color-orange) !important;
}

input.error::placeholder, textarea.error::placeholder {
	color: var(--color-orange) !important;
}

.icon {
	width: 1.25rem;
	height: 1.25rem;
	overflow: visible;
	cursor: pointer;
}

.menu-main-fx {
    grid-area: menu-main-fx;
    padding-right: 0;
    justify-content: center;
}

.menu-main-fx > ul {
    list-style: none;
    width: 100%;
    font: var(--typo-s-1-medium);  
    letter-spacing: 0.0875rem;  
    justify-content: space-evenly;
    text-transform: uppercase;    
    max-width: 900px; 
}

.menu-main-fx > ul li {
    white-space: nowrap;
}

.menu-main-fx > ul li + li {
	margin-left: 2%;
}

[class*="-mobl"] {
	display: none;
}

.path {
	padding: 0.25rem 0 0.5rem;
}

.path ul {
	list-style: none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font: var(--typo-s-4-light);
}

.path ul li {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
}

.path ul li+li:before {
	display: block;
	content: "";
    background-image: url('/css/icons.svg?721#u-right');
	width: 0.75rem;
	margin: -0.125rem 0.375rem 0;
	height: 0.75rem;
}

h1, .h1 {
	font: var(--typo-h-1-medium);
	padding-bottom: 2rem;
}

h2, .h2 {
	font: var(--typo-h-2-medium);
	padding-bottom: 1rem;
}

h3, .h3 {
	font: var(--typo-h-3-medium);
	padding-bottom: 0.375rem;
}

.content h3 {
	margin-bottom: 1rem;
}

.promo-fx h3 {
	margin-top: 1rem;
}


.border-top {
	border-top: var(--border-black);
}

.border-top-grey {
	border-top: var(--border-dfdfdf);	
}

.border-bottom {
	border-bottom: var(--border-black);
}

.col-layout {
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
	-moz-column-fill: balance;
	column-fill: balance;
	column-gap: 4rem;
}

.col-layout.col2 {
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
}
.col-layout.col3 {
	-webkit-column-count: 3;
	-moz-column-count: 3;
	column-count: 3;	
}
.col-layout.col4 {
	-webkit-column-count: 4;
	-moz-column-count: 4;
	column-count: 4;	
}

.col-layout > ul, .col-layout > ul > li, .col-layout > div, .col-layout > h1, .col-layout .h2, .col-layout > li > ul, .col-layout p  {
    display: inline-block;
    width: 100%;
}

.item-slider .slick-slide > div {
    padding: 0 0.25rem;
}

.visible {
	visibility: visible;
}

.slick-slider .ibtn {
    overflow: visible;    
    position: absolute; 
    z-index: 500;
	backdrop-filter: blur(0.25rem);	
}

.slick-slider .ibtn {
    top: calc(50% - var(--size-ibtn)/2);
}

.slick-slider .ibtn.left {
    left: 0.625rem;	
}

.slick-slider .ibtn.right {
	right: 0.625rem;
}

.sub-menu {
	display: none;	
}

footer {
	background: var(--color-bg-grey1);
	border-top: var(--border-orange-solid);
	color: var(--color-white);
}

footer a {
	color: var(--color-white);
	
}

footer .footer-main {
	display: grid; 
	grid-template-columns: auto 1fr; 
	grid-auto-rows: auto;
	grid-template-areas: 
	  "footer-logo-fx footer-menu-cat-fx";
	padding-top: 2rem;
	padding-bottom: 2rem;
}

footer  .footer-menu-cat-fx {
	grid-area: footer-menu-cat-fx;	
	align-items: flex-start;
	justify-content: flex-end;	
}

footer  .footer-menu-cat-fx > *+*{
	margin-left: 8vw;
}

footer .footer-menu-hdr, footer .footer-contact-hdr .title {
	opacity: 0.6;
	font: var(--typo-t-1-regular);
	margin-bottom: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.05rem;
}

footer .footer-menu {	
	list-style: none;
}

footer .footer-menu li {
	color: var(--color-white);
	font: var(--typo-s-2-medium);
    margin-bottom: 0.75rem;
	display: flex;
}

footer .footer-menu li a:hover {
	color: var(--color-orange);
}

footer .footer-contact-hdr .title {
	text-align: right;
}

footer .footer-contact-line-fx {
	color: var(--color-black);
	font: var(--typo-medium);
    flex-flow: column;
    align-items: flex-end;
    justify-content: flex-end;
}

footer .footer-mail {
	font: var(--typo-light);
}

footer .footer-phone {
	font: var(--typo-t-2-medium);
}

footer .footer-contact-line-fx > *+* {
	margin-left: 1.25rem;
}

footer .footer-contact-line-fx > * {
	text-align: right;
	white-space: nowrap;	
}	
footer .footer-contact-fx {
	grid-area: footer-contact-fx;	
	margin-bottom: 3.5rem;
	flex-flow: column wrap;
    justify-content: flex-start;
	align-items: flex-end;
}

footer .logo-fx {
	align-items: flex-start;
}

footer .logo-fx .logo {
	width: 7rem;
    height: 5rem;
}

footer .icon {
	width: 0.625rem;
	height: 0.625rem;
	fill:  var(--color-white);
}

footer .footer-logo-fx {
	grid-area: footer-logo-fx;
    align-items: flex-start;	
}	

footer .footer-copy-fx {
	justify-content: flex-start;
    flex-flow: row wrap;
	font: var(--typo-s-3-regular);
	background: var(--color-bg-dark-grey);
	padding-top: 1rem;
	padding-bottom: 1rem;
	color: var(--color-white);
}

footer .footer-copy-fx > *{
    margin-right: 1rem;
}

footer .footer-copy-fx span:first-child {
    width: 100%;
}

.footer-social-fx {
	justify-content: flex-end;
	align-items: flex-start;	
	margin: 1rem 0 0;	
}

.footer-social-fx > *+* {
	margin-left: 1.5rem;
}

.footer-social-fx .icon {
	width: 1.5rem;
	height: 1.5rem;
	fill: var(--color-orange);
}

input[type=text],
textarea,
button, select {    
    font: var(--typo-base);
    width: 100%;
    margin: 0;
    padding: 0.25rem 0.375rem;
    background-color: var(--color-white);
    border: var(--border-grey);
    border-radius: 0.125rem;
	
 	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-appearance: none;
    -moz-appearance: none;
	-ms-appearance: none;	
    appearance: none;	
}

input[type=text]:focus,
textarea:focus {
	border: var(--border-black);
}

label > input[type=checkbox] {
    display: none;
}

label {
    display: flex;
	flex-flow: row nowrap;
    cursor: pointer;
    min-height: 1rem;
	align-items: flex-start;	
}
	
label > input[type=checkbox] + span:first-of-type:before {
    content: "";
    display: inline-block;
    width: 1rem;
    height: 1rem;
    border: var(--border-black);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	margin: 0.25rem 0.75rem 0 0;
}

label > input[type=checkbox]:checked + span:first-of-type:before {
    content: "";
	background-color: var(--color-orange);
    border: var(--border-orange);
}


label > input[type=radio] {
    display: none;
}


label input[type=radio] + span:first-of-type:before {
    content: "";
    display: inline-block;
    width: 1rem;
    height: 1rem;  
    border: var(--border-black);
	border-radius: 50%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	margin-right: 0.75rem;
}

label input[type=radio]:checked + span:first-of-type:before {
    content: "";
	background-color: var(--color-orange);
    border: var(--border-orange);
}

button:disabled, button[disabled], input[type=submit]:disabled, input[type=submit][disabled], .btn[disabled], select[disabled] {
    background-color: var(--color-bg-grey);
    cursor: default;
	opacity: 0.5;
}

.form dt {
	font: var(--typo-light);
    color: var(--color-dark-grey);
    padding-bottom: 0.25rem;
    display: none;
}

.form dd {
    margin-bottom: 1.5rem;
    display: block;
}

/*---- SLICK ----*/


.slick-slider {
    visibility: hidden;
}

.slick-slider.active {
    visibility: visible;	
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;	
    margin: 0;
    padding: 0;
	width: 100%;
}

.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: -webkit-box;      
	display: -moz-box;         
	display: -ms-flexbox;      
	display: -webkit-flex;     
	display: flex;             
    flex-flow: row wrap;
    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 {
    display: none;
}

.slick-slide > div {
  -webkit-box-flex: 1;      
  -moz-box-flex: 1;         
  -webkit-flex: 1;          
  -ms-flex: 1;              
  flex: 1;  
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-initialized {
	visibility: visible;	
}

.slick-initialized .slick-slide {
	display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-flow: row wrap;	
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

main {
	background: var(--color-bg-light-grey);
}

main > .main-layout:first-child {
	padding-top: 7.5rem;
}

.main-layout {
	padding-top: 2.5rem;
	padding-bottom: 3rem;
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-start;
}

.main-layout .sub-block {
	padding-right: 4rem;
	width: 16vw;
}

.main-layout .prime-block {
	flex: 1;
}

.main-layout .prime-block:only-child {
	width: 100%;
}

.sub-block nav ul {
	list-style: none;
    margin-left: -0.5rem;
	font: var(--typo-t-1-regular);
}

.sub-block nav li+li {
	margin-top: 0.375rem;
}

.sub-block nav li {
	padding: 0.125rem 0.5rem;
}

.sub-block nav li.active {
	background: var(--color-bg-grey);
}

.content {
	font: var(--typo-content-light);
}

.content p {
	padding-bottom: 1rem;
}

.content ul:not([class]) {
	list-style: none;
}

.content ul:not([class]) li {
	padding-left: 1.5rem;
}

.content ul:not([class]) li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "\2014";
	width: 0.375rem;
	font-weight: 500;
}

.content ul:not([class]) li+li {
	margin-top: 0.375rem;
}

.content strong, .content b {
	font-weight: 500;
}

.content p+h2, .content div+h2, .content p+div {
	padding-top: 0.5rem;
}

.pic-auto, .item-pic img {
	width: 100%;
	height: 100%;
    object-fit: cover;
}

.item-list:not(.slick-slider) {
	display: grid;
	grid-template-columns: repeat(4, minmax(2rem, 1fr));
    grid-auto-rows: 1fr;
    grid-auto-flow: row dense;
	column-gap: 1rem;
	row-gap: 2rem;
	margin: 0 -1rem 3rem;
}

@media only screen and (max-width: 1160px) {
	.item-list:not(.slick-slider) {
		grid-template-columns: repeat(3, minmax(2rem, 1fr));
	}
    .pwrap {
        padding-left: 3%;
        padding-right: 3%;
    }    
}

.item-list .item, .news-list .item {
    display: flex !important;
	height: 100%;
    flex-flow: column nowrap;
    justify-content: space-between;
	padding: 1rem;
	border: 1px solid transparent;
}

.item-list .item:hover, .news-list .item:hover {
	border: var(--border-orange);
	background: var(--color-white);
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
}

.item-desc {
	padding-top: 1rem;
	text-align: center;
	display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    height: 100%;	
}

.item-desc .sub-title {
	color: var(--color-dark-grey);
	font: var(--typo-s-3-light);
}

.item-desc .title {
	color: var(--color-black);
	font: var(--typo-s-2-medium);
	padding-bottom: 0.75rem;
}

.item-desc .price {
	color: var(--color-orange);
	font: var(--typo-t-1-bold);
	letter-spacing: 0.05rem;
}

.item-desc .price del {
	display: block;
    color: var(--color-bg-grey1);
    font: var(--typo-s-2-light);
}

.item-desc .note, .item-note {
	color: var(--color-black);
	font: var(--typo-s-4-light);	
}

.news-list:not(.slick-slider) {
	display: grid;
	grid-template-columns: repeat(3, minmax(2rem, 1fr));
    grid-auto-rows: 1fr;
    grid-auto-flow: row dense;
	column-gap: 1rem;
	row-gap: 2rem;
	margin: 0 -1rem 3rem;
}


.item-page {
	display: grid;
	width: 100%;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: auto;	
	grid-template-areas: 
		"item-page-gallery item-page-param"
		"item-page-content item-page-param";	
    align-items: start;
	column-gap: 3rem;
}

.item-page-param {
	grid-area: item-page-param;
}

.item-page-content {
	grid-area: item-page-content;
}

.item-page > * {
    overflow: hidden;
}

.item-page-param {
    overflow: hidden;
	top: 2rem;
	position: -webkit-sticky;
    position: sticky;
}

.item-page h1 {
	font: var(--typo-h-2-bold);
	padding-bottom: 1rem;
}

.item-page-gallery {
	grid-area: item-page-gallery;	
	display: flex;
	flex-flow: column nowrap;
	align-items: flex-start;
	width: 100%;
}

.item-page-gallery .item-preview {
	width: 100%;
}

.item-page-gallery .item-preview img {
    width: 100%;
    height: 100%;
    object-fit: fill;
}

.item-page-gallery .item-thumb {
	width: 100%;
    text-align: center;
	opacity: 0;
    visibility: hidden;
	padding: 1.5rem 2rem;
}

.item-thumb.slick-initialized {
    visibility: visible;
    opacity: 1;
	-webkit-animation: fadein 2s;
    animation: fadein 2s;	
}

.slick-slider:not(.main-banner) .slick-slide > div {
	padding: 0 0.5rem;
}

.item-thumb .thumb {
    display: flex !important;
    align-items: center;
	justify-content: center;	
    overflow: hidden;
    vertical-align: top;
    position: relative;
    border: var(--border-grey);
    background: #fff;
    width: 100%;
	height: 2.75rem;
}

.item-thumb .thumb:hover  {
    border: var(--border-orange);
}

.item-thumb .thumb.active {
    border:  var(--border-orange) !important;
}

/*.item-thumb .slick-current .thumb */

.item-thumb .thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.scrl-thumb {
	display: inline-block;
	cursor: pointer;
    width: 1.5rem;
    height: 1.5rem;	
}

.scrl-thumb:before {
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;	
}

.scrl-thumb.up:before {
	content: "";
    background-image: url('/css/icons.svg?7111#u-up');
}

.scrl-thumb.down:before {
	content: "";
    background-image: url('/css/icons.svg?71#u-down');
}

.scrl-thumb.left {
    position: absolute;
    left: 0;
    top: 50%;
	transform: translateY(-50%);	
}
.scrl-thumb.left:before {
	content: "";
    background-image: url('/css/icons.svg?71121#u-left');
}

.scrl-thumb.right {
    position: absolute;
    right: 0;
    top: 50%;
	transform: translateY(-50%);
}

.scrl-thumb.right:before {
	content: "";
    background-image: url('/css/icons.svg?71111#u-right');
}

.item-preview-layout {
	width: 100%;
	padding-top: 66.67%;
	overflow: hidden;
	background: var(--color-bg-grey);
}

.item-preview-layout .item-preview {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	cursor: zoom-in;
}

.item-page-gallery.vertical {
	flex-flow: row nowrap;
	align-items: flex-start;
	height: 100%;
}

.item-page-gallery.vertical .item-preview {
	width: 85%;
}

.item-page-gallery.vertical .item-thumb {
	order: -1;
	width: 15%;
	height: 100%;
	padding-right: 1rem;
}

.item-page-gallery.vertical .item-thumb .thumb {
    margin: 0.25rem 0;
    width: 100%;
	height: 3rem;
}

.item-action-block {
	padding: 0.5rem 0 2rem;
}

.item-price-group .price {
	color: var(--color-orange);
	font: var(--typo-h-1-medium);
	letter-spacing: 0.0125rem;	
}

.item-price-group .price del {
	display: block;
    color: var(--color-bg-grey1);
    font: var(--typo-t-1-light);
}

.item-param {
    font: var(--typo-s-2-light);
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;	
}

.item-param dt, .item-param dd {
    display: inline-block;
    margin-bottom: 1rem;
    vertical-align: top;
}

.item-param dt {
    width: 50%;
    border-bottom: 1px dashed #CCCCCC;
    margin-right: 2%;
}

.item-param dt span {
    background: var(--color-bg-light-grey);
    top: 0.25rem;
    padding-right: 0.5rem;
}

.item-param dd {
    width: 48%;
    font: var(--typo-s-2-regular);
	color: var(--color-dark-grey);
    vertical-align: bottom;    
}

.item-param dd a {
	border-bottom: 1px dotted var(--color-dark-grey);
	font-weight: 400;
}

.item-param dd a:hover {
	border-bottom-color: var(--color-orange);
}

.item-param a {
    font-weight: 600;
}

.item-param a .icon:before {
    display: inline-block;
    vertical-align: bottom;
    font-size: 1.5em;
    padding-right: 0.125em;
}

.btn-fx {
	margin: 2.5rem 0 1rem;
	justify-content: flex-start;
}

.btn-fx .btn+.btn {
	margin-left: 1rem;
}

.btn-fx.center {
	justify-content: center;
}

.btn-fx + .hdr-block {
	margin-top: 3rem;
}

.btn {
	display: flex;
	padding: 0.625rem 1.5rem 0.5rem 1.5rem;
	flex-flow: column nowrap;	
	justify-content: center;
	align-items: center;
	width: -moz-max-content;	
	width: fit-content;
	border: var(--border-grey);
	color: var(--color-black);
	text-align: left;
	font: var(--typo-s-1-regular);
	letter-spacing: 0.05rem;
	text-transform: uppercase;
	cursor: pointer;
}

.btn:not(.orange):hover {
	background: var(--color-orange);
	border: var(--border-orange);
	color: var(--color-white);	
}

.btn.orange {
	background: var(--color-orange);
	border: var(--border-orange);
	color: var(--color-white);	
	font: var(--typo-s-1-bold);
}

.filetype {
    display: flex !important;
    align-items: center;
}

.filetype .fileicon {
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 0;
    margin: 0 12px 0 0;
    width: 22px;
    height: 26px;
}

.filetype + .filetype {
    margin-top: 0.5rem;
}



.promo-layout {
	padding-top: 4rem;
	padding-bottom: 4rem;
}

.promo-fx {
	align-items: flex-start;
}

.promo-layout .promo-fx+.promo-fx{
	margin-top: 2rem;
}

.promo-fx.center {
	align-items: center;
}

.promo-call-fx {
	margin-top: 1rem;
	flex-flow: column;
	align-items: center;
	font: var(--typo-h-1-medium);
	text-align: center;	
}

.promo-call-fx p {
	margin-bottom: 2rem;
}

.promo-fx > * {
	flex: 1;
}

.promo-fx .content {
	font: var(--typo-t-1-light);
}

.promo-fx > *+* {
	margin-left: 4rem;
}

.promo-frame-gray {
	background: var(--color-bg-dark-grey);
	color: var(--color-white);	
	padding: 3rem 0;
}

.promo-frame-gray .motto + .promo-fx {
	margin-top: 3rem;
}

.promo-fx .title {
	font: var(--typo-h-1-medium);
	color: var(--color-white);
	margin-bottom: 1rem;
}

.promo-fx .title span {
	color: var(--color-orange);
}

.promo-video-title {
	text-align: center;
	font: var(--typo-h-1-medium);
	max-width: 800px;
	margin: 0 auto;
}


.promo-pic-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    grid-auto-flow: row dense;
	column-gap: 0.5rem;
	row-gap: 0.5rem;
}

.promo-pic-grid > * {
    overflow: hidden;
    padding-top: 75%;
    height: 0;
}

.promo-pic-grid  a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
}

.promo-pic-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;	
}

.menu-close {
	display: none;	
}


/* Magnific Popup CSS */
.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: rgba(255,255,255,1);
}

.blur {
    -webkit-filter: blur(2px); 
    -moz-filter: blur(2px); 
    -o-filter: blur(2px);
    filter: blur(2px);     
    -ms-filter: blur(2px); 
    filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='2');   
}

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

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0;
	overflow-y: scroll;
    webkit-overflow-scrolling: touch;	
}

.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;
    z-index: 1045;
	-webkit-transition: opacity 0.3s linear;
    -moz-transition: opacity 0.3s linear;
    transition: opacity 0.3s linear;
    opacity: 0;		
}

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
}

.main-gallery .mfp-img-frame {
    padding: 2rem 0 3rem 0;   
}

.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 {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-link img, .menu-list img {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in;
}

.mfp-zoom, .glr-link, .mfp-link > *, .gallery img {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in;
}

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

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

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

.mfp-preloader, .pic-box:after {
	content: "";
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
    z-index: 800;
    background: transparent; /* url('/img/loader.png') 50% 50% no-repeat;*/
    position: absolute;
    left: 0;
    top: 0;
	right: 0;
	bottom: 0;
	opacity: 0.3;
}

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

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

.mfp-arrow, .mfp-close {
    display: block;
    overflow: visible;    
    position: absolute;
    padding: 0;
    margin: 0;
    cursor: pointer;  
    background: transparent;
    border: 0;
    -webkit-tap-hlight-color: rgba(0, 0, 0, 0);    
    -webkit-appearance: none;
    outline: none;
    z-index: 1100;
}

.mfp-wrap .mfp-arrow, .mfp-wrap .mfp-close {
    width: 3rem;
    height: 3rem;
}

.mfp-wrap .mfp-close {
    height: 3rem;
}

.mfp-wrap .mfp-arrow {
    top: calc(50% - 2rem);
	z-index: 1100;
}

.mfp-arrow {
    top: calc(50% - 0.5em);
	margin-top: 0;
	color: #fff;
    text-shadow: -1px 0px 0px #000;
    width: 1em;
    height: 1em;
	font-size: 1.75em;
}

.pic-box .mfp-arrow {
    text-shadow: -1px 0px 0px rgba(255,255,255,1);
	display: none;
}

.pic-box .mfp-arrow:hover {
    text-shadow: none;
}

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

.mfp-arrow.left {
    left: 0;
	background-image: url(/css/icons.svg?71111#u-left);
}

.mfp-arrow.right {
    right: 0;
	background-image: url(/css/icons.svg?71111#u-right);
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
}

.mfp-arrow.slick-disabled {
	opacity: 0.2;
	cursor: default;	
}

.mfp-close {
    top: 0;    
    right: 0;
    margin: 0;
}

.mfp-wrap .mfp-close:before, .mfp-wrap .mfp-arrow {
    color: #000;
}

.mfp-wrap .mfp-close:hover:before, .mfp-wrap .mfp-arrow:hover:before {
	color: var(--color-orange);
}

.mfp-close:before  {
    content: "\00D7";
    font-size: 3rem;
	font-weight: 300;
}

body.iframe {
	display: flex;
    flex-flow: row nowrap;
    justify-content: center;	
    font-size: 1em;
	background: #fff;
}

body.iframe > div {
	width: 100%;
	height: 100%;
}

.mfp-iframe {
    width: 100%;
}

.mfp-iframe-holder.active .mfp-content, .mfp-content.active {
    opacity: 1;
}
/*
.mfp-iframe-holder .mfp-close {
    display: none;
}
*/
.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%;
}

.mfp-img-frame {
    padding: 2rem 2rem 5rem 2rem;
    text-align: center;
    vertical-align: middle;
    display: table-cell;    
}

.mfp-iframe-modal {
    background: #FFF;
    padding: 2em;
    line-height: 0;
	width: 100%;
    box-shadow: 1px 1px 5px rgba(0,0,0,0.2);	
}

.mfp-iframe-modal.short {
    padding: 2rem;
    width: 40%;
    margin: 0 auto;
	box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
}

.mfp-iframe-modal .mfp-close {	
    width: 3rem;
    height: 3rem;
}

.mfp-iframe-modal.so {
    max-width: 100%;    
    padding: 0;
    width: 96%;
    margin: 0 auto;
}

.mfp-iframe-modal.so .mfp-close:before {
    color: #aaa;
}

.mfp-iframe-modal .mfp-close:before {
	display: block;
    color: #555;
    font-size: 2rem;
    font-weight: 300;
}

img.mfp-img {
    /*
    display: block;
    max-width: 100%;
    height: auto; */   
    height: 100%;
    display: inline;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    line-height: 0;
    margin: 0 auto;
	padding: 0;
    background: #fff;
}

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

.mfp-title {
    text-align: center;
    line-height: 1.375;
    color: #fff;
    word-wrap: break-word;
}

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


@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0;
    }
    .mfp-img-mobile img.mfp-img {
        padding: 0;
    }
    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, 0.6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
    }
    .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: 1023px) {
    .mfp-container {
        padding-left: 0;
        padding-right: 0;
    }
    img.mfp-img {
        width: auto;
        height: auto;
        max-width: 100%;
    }
}

.mfp-popup-bg {
    background: rgba(0,0,0, 0.4) 
}



.mfp-popup {
	display: none;
    position: relative;
    background: #FFFFFF;
    padding: 2rem;
    width: auto;
    max-width: 34rem;
    margin: auto;
    -moz-box-shadow: 0 0 8px rgba(0,0,0,0.4);
    -webkit-box-shadow: 0 0 8px rgba(0,0,0,0.4);
    box-shadow: 0 0 8px rgba(0,0,0,0.4);
}

.mfp-ready .mfp-popup {
	display: block;
}


.mfp-glr {
    position: absolute;
    bottom: 0;
    width: 100%;
    z-index: 1100;
    padding: 1rem 2rem;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
}

.mfp-glr .thumb {
    margin: 0 0.5rem;
    padding: 0;
	width: 72px;
    height: 40px;
    text-align: center;
	border: var(--border-grey);
}

.mfp-glr .thumb img {
    width: auto;
    width: 70px;
    height: 38px;
    display: inline-block;
    object-fit: cover;

}

.mfp-glr .thumb.active  {
	border: var(--border-orange);
}

.mfp-glr .video:after {
    font-size: 1.5rem;
}

.form-ctrl {
	margin-top: 1.5rem;
}

.small {
	font: var(--typo-s-1-light);
}

.contact-fx {
	align-items: flex-start;
}

.contact-fx > div {
	flex: 1;
}

.contact-fx > div+div {
	padding-left: 4rem;
}
	
.form .step1 {
    visibility: visible;
    opacity: 1;   
}

.form.response .step1 {
    visibility: hidden;
    opacity: 0;
}

.form.response .step2 {
    visibility: visible;
    opacity: 1;
	min-height: 10rem;	
}

.form .step2 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    visibility: hidden;
    opacity: 0;
    -moz-transition: opacity 1s linear;     
    -webkit-transition: opacity 1s linear;
    transition: opacity 1s linear;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
	
.youtube, .item-preview .video, .rutube {
    display: block;
    padding-bottom: 66.67%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
    margin: 0 auto;
}

.youtube, .rutube {
    padding-bottom: 56.25%;
}

.youtube img, .item-preview .video img, .rutube img {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
    height: auto;
    cursor: pointer;
    -webkit-transition: .4s all;
    -moz-transition: .4s all;
    transition: .4s all;
}

.youtube:after, .item-preview .video:after, .rutube:after {
    content: "";
    height: 72px;
    width: 72px;
    left: 50%;
    top: 50%;
    margin-left: -36px;
    margin-top: -36px;
    position: absolute;
    background: url('/img/play.png?1') no-repeat;
    cursor: pointer;
}

.thumb.video:before {
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.2);
	z-index: 100;
}

.thumb.video:after {
	content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2rem;
    height: 2rem;
    background-image: url('/img/play.png?1');
    background-size: cover;
    transform: translate(-50%, -50%);
    z-index: 200;
}

article.content .video-frame {
	max-width: 800px;
}

.video-frame {
	max-width: 100%;
}

.video-frame > div {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
}

.video-frame iframe, .youtube iframe, .rutube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 500;
}

.main-banner {
    height: calc(100vh);
    background-color: var(--color-bg-grey);
	overflow: hidden;
}

.main-banner .banner-slide {
	height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;	
}

.main-banner.short, .main-banner.short .banner-slide {
    height: calc(70vh);
    background-size: cover;
    background-position: 50%;	
}

.main-banner.slick-slider .banner-slide {
    height: calc(100vh);
}

.main-banner video {
	min-width: 100%; 
	min-height: 100%; 
	width: auto;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.banner-slide .bg {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    background-size: cover;
    background-position: 50%;
    display: flex;
    align-items: center;
    justify-content: center;	
}

.banner-slide .bg .txt {
	display: flex;
	flex-flow: column nowrap;
    align-items: center;
    justify-content: center;	
}

.banner-slide .bg .title {
	font: var(--typo-motto);
	color: var(--color-white);
	text-align: center;
}
.banner-slide .bg .title h1 {
    font: inherit;
}

.banner-slide .bg .subtitle {
    margin-top: 2rem;
    font: var(--typo-h-2-bold);
    color: var(--color-white);
}

.banner-slide .btn {
	color: var(--color-white);
    border: 1px solid #fff;	
}
	
.main-banner.full {
    height: auto;
}

.main-banner .form-case {
    width: 40%;
    margin: 0 auto;
    padding: 3rem 0;
}

.main-banner .form-case .form {
	padding: 2rem;
	background: var(--color-bg-grey);
}

.banner-motto-fx {
	background: var(--color-bg-dark-grey);
	padding: 3rem 0;
	color: var(--color-white);
	jusitfy-content: space-between;
}

.banner-motto-fx > * {
	flex: 1;
}

.motto {
	font: var(--typo-motto);
	text-align: center;
	width: 100%;
}

.main-banner .slogan-fx {
	flex-flow: column nowrap;
	text-align: center;
}

.main-banner .slogan-fx .title {
	font: var(--typo-motto);
	letter-spacing: 0.5rem;
}

.main-banner .slogan-fx .subtitle {
    font: var(--typo-h-2-bold);
	color: var(--color-white);
	margin-top: 1rem;
}

.main-banner .slogan-fx .btn {
	margin-top: 2.75rem;
}

.main-banner + .main-banner {
	margin-top: 0.5rem;
}

.main-banner .video-frame {
    width: 100%;
    height: 100%;
}

.main-banner .video-frame.-cover video {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    object-position: top;
}

.main-banner .video-frame.-contrast:after { 
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    z-index: 10;
    background-color: rgb(9 43 110 / 5%);
}

.main-banner .video-frame.-contrast video {
    filter: contrast(1.1) brightness(1.05);
}

.main-banner + .main-banner {
	margin-top: 0.5rem;
}

.banner-case {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.2);
    z-index: 100;
}

.banner-case .title {
    font: var(--typo-h-0-bold);
    letter-spacing: 0.025rem;
    color: var(--color-white);
    text-transform: uppercase;
    max-width: 60%;
    text-align: center;
}

.banner-case .subtitle {
    font: var(--typo-h-2-bold);
    color: var(--color-white); 
    text-align: center;    
    margin-top: 1rem;
}

.banner-case .btn {
    margin: 1.5rem 0 0;
    width: auto;
}

.badge {
    position: absolute;
    height: 0;
    top: 1em;
    left: 1em;
    background: var(--color-orange);
    width: 2.25rem;
    height: 2.25rem;
    color: #FFF;
    font-weight: 700;
    font-size: 0.675em;
    letter-spacing: 0.025em;
    z-index: 100;
    text-transform: uppercase;
    border-radius: 100%;
    text-align: center;
    line-height: 1.125em;
    display: table !important;
}

.badge.hide {
	visibility: hidden;
}

.badge.big {
    width: 4.5rem;
    height: 4.5rem;
    left: -0.625rem;
    top: -0.625rem;
}

.badge span {
    display: table-cell;
    vertical-align: middle;    
}

.badge + .badge {
    top: 5em;    
}

.slick-gallery .badge.big {
	left: 1rem;
    top: 1rem;
    background: #fff;
    background: var(--color-orange);
}

.slick-gallery .badge.white {
    width: 2.75rem;
    height: 2.75rem;	
    left: 0.5rem;
    top: 0.5rem;
    background: #fff;
    background: var(--color-orange);
    font-weight: 600;
    font-size: 0.5625em;
    letter-spacing: 0.025em;
}

.rating {
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: rgba(0,0,0, 0.5);
    padding: 0.375em 0.75em;
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-end;
	
}

.rating span {
	padding: 0 0 0 0.5rem;
    font-weight: 500;
    font-size: 1.125em;
    color: #FFFFFF;
    display: inline-block;
    vertical-align: middle;
}

.vote {
    cursor: default;
    color: #ccc;       
}

.vote.active .icon {
    cursor: pointer;
    fill: var(--color-white);
}

.vote.active:hover .icon {
    fill: var(--color-orange);
}

.vote-info {
    background-color: rgba(255, 255, 255, 0.8);
    font-size: 14px;
    line-height: 16px;
    color: var(--color-orange);
    text-align: center;
    width: 100%;
    padding: 10px 0 10px 0;
    position: absolute;
    left: 0;
    top: 80px;
}

.vote .icon {
	width: 1.375rem;
    height: 1.375rem;
    fill: var(--color-orange);
	cursor: initial;
}

.pic-frame {
	padding-top: 66%;	
}

.pic-frame img {
	position: absolute;
	top: 0;
	left: 0;
}

.col-layout + .gallery-fx {
	margin-top: 2rem;
}

.gallery-fx {
    align-items: flex-start;
}

.gallery-fx > div {
    align-self: flex-start;
}

.gallery-fx > *{
	flex: 1;
}

.gallery-fx > *:nth-child(1) {
	margin-right: 1rem
}

.gallery-fx .item-frame {
	padding-top: 66%;
}

.gallery-fx > *:nth-child(1) .item-pic {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;	
}

.tile {
    width: 30%;
    float: left;
    margin-bottom: 1rem;
}

.tile-gap {
    width: 1rem;
}

.content + .hdr-block, .col-layout +.hdr-block {
	margin-top: 2rem;
}

.hdr-block.border {
    padding: 2rem 0 1rem;
    border-top: 1px dashed #ccc;
}

.hdr-block h2 {
	color: var(--color-orange);
}

.list {
	list-style: none;
}

.list li + li {
	margin-top: 1rem;
}

.file-link-fx {
	justify-content: flex-start;
}

.file-link-fx .icon {
	width: 1.5rem;
	height: 1.5rem;
	padding-right: 0.5rem;
}

.order-fx {
    align-items: stretch;
    width: 100%;
    height: 100%;
}

.order-fx > *:nth-child(1) {
	flex: 1;
}

.order-fx > *:nth-child(2) {
	flex: 2;
	padding-left: 2rem;
}

.map-layout {
    margin-top: 5.5rem;
} 

.map {
    width: 100%;
    height: 30rem;
    overflow: hidden; 
}

.form.request .map {
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.map > * {
    visibility: hidden;
}

.map-overlay {
    display: none;
}
.map-overlay.error {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    background: rgba(255,255,255,0.8);
    z-index: 200;
    color: #c00006;
    padding-top: 20%;
	text-align: center;	
}	

.map.active > * {
    visibility: visible;
}

.city-select {
    position: absolute;
    z-index: 50;
    right: 5em;
    top: 2em;
    margin: 0;
}

select {
    text-indent: 0.01px;
    padding-right: 2rem;
    background: #fff url(/css/icons.svg?8#u-right) no-repeat;
    cursor: pointer;
    height: 2.25em;
    border-radius: 0;
    text-align: left;
	color: #000000;
    background-size: 1rem;
    background-position: right 0.25rem center;
    cursor: pointer;
    text-align: left;
    padding-top: 0.25rem;    
}

.loader {
    background: #fff url('/img/loader.gif?2') 50% 50% no-repeat;
    min-height: 10em;
    width: 100%;
}

.loader.stop {
    background: none;
}

.map .grey {
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
}

ymaps[class*="copyrights-promo"] {
    display: none;
}

.map .btn.red {
	font-size: 16px;
	margin: 10px 0;
}

.h2-light {
	font: var(--typo-h-2-light);
	margin-bottom: 1rem;
}

.columns {
    -webkit-column-gap: 3rem;
    -moz-column-gap: 3rem;
    column-gap: 3rem;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
    -moz-column-fill: balance;
    column-fill: balance;
	z-index: 100;
}

.columns.count2 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
}

.columns.count3 {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
}

.columns > li, .columns > ul, .columns > ul > li, .columns > div, .columns > h1, .columns > h2, .columns .h2-light, .columns > li > ul, .columns p  {
    display: inline-block;
    width: 100%;
}

.columns.list .content {
    display: inline-block;
    width: 100%;
}

.columns img, .col-layout img {
    width: 100%;
    height: auto;
}

.list ul, .list ol {
	list-style: none;
}

.date {
    display: block;
    margin: 0 0 0.5rem;
    font: var(--typo-s-3-light);
    color: #000;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.preview-txt {
    font-weight: 400;
    border-bottom: var(--border-orange-solid);
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
}

.map-overlay.error {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    background: rgba(255,255,255,0.8);
    z-index: 200;
    color: #c00006;
    padding-top: 20%;
    text-align: center;
}

.part-data {
    padding-top: 3rem;
    border-top: 1px dashed #ccc;
}
 
.part-data-sub {
    grid-area: part-data-sub;
}

.part-data-main {
    grid-area: part-data-main;
    grid-column: span 2;
}

.part-data-wrap {
    display: none;
}

.part-data-index {
    list-style: none;
}

.part-data-index li {
    cursor: pointer;
}

.part-data-index li {
	color: var(--c-black);
}

.part-data-index li:hover, .part-data-index li.active {
	color: var(--c-hover);
}

.part-data-index li+li {
    margin-top: 1.5rem;
}

.part-data-section {
    visibility: hidden;
    opacity: 0;
    height: 0;
    width: 0;
    transform: scaleY(0);
    transform-origin: top;
    transition: transform 0.5s ease-in-out;
}

.part-data-section.active {
    visibility: visible;
    transform: scaleY(1);
    height: auto;
    width: auto;
    opacity: 1;
    transition: 0.5s ease-in-out;
}

.city-list {
	display: flex;
	flex-flow: row wrap;
    list-style: none;
}

.city-list > li {
    margin-bottom: 2rem;
}

.city-list > li  ul {
    margin-top: 0.5rem;
}

.city-list > * {
	width: 25%;
	padding-right: 2rem;
}

.city-list .title {
	line-height: 1;
	margin-bottom: 1rem;
}

.dealer-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(2rem, 1fr));
    grid-auto-rows: 1fr;
    grid-auto-flow: row dense;
    column-gap: 2rem;
    row-gap: 1rem;
    list-style: none;
}

.dealer-list .item-txt {
	margin-top: 0.5rem;	 
	font: var(--f-s2);
}

.dealer-list .item-txt a {
    display: inline-block;
    padding-top: 0.25rem;    
}

select:invalid {
  color: #999; 
}