@charset "UTF-8";

:root {
	/* Colors */
	--c-white: #FFFFFF;
	--c-main: #334550;

	--c-grey: #5A626B;	
	--c-light-grey:#F7F7F8;
	--c-light-grey2:#F9F9FA;    
    --c-middle-grey: #8C9197;
	--c-dark-grey: #313B46;

	--c-red: #D73A40;
      
    --c-active: #D73A40;
    --c-warn: #D77300;

	/* Fonts */
	--f-light: 300 1rem "Manrope", sans-serif;
	--f-base: 400 1rem "Manrope", sans-serif;
	--f-base-txt: 400 1rem/150% "Manrope", sans-serif;		

	--f-h0: 500 3rem/120% "Inter", sans-serif;    
	--f-h1: 400 2.25rem/100% "Inter", sans-serif;		
	--f-h2: 400 2rem/120% "Inter", sans-serif;
	--f-h3: 500 1.5rem/110% "Inter", sans-serif;
	--f-h4: 500 1.25rem/120% "Inter", sans-serif;
	--f-h5: 400 1.125rem/120% "Inter", sans-serif;
	--f-h6: 400 1.0625rem/120% "Inter", sans-serif;

    --f-h3s: 400 1.5rem/120% "Manrope", sans-serif;
    --f-h4s: 500 1.375rem/120% "Manrope", sans-serif;

	--f-subtitle: 500 1.25rem/140% "Manrope", sans-serif;     
	--f-s0: 500 1.125rem/140% "Manrope", sans-serif;    
	--f-s1: 400 0.9375rem/140% "Manrope", sans-serif;	
	--f-s2: 400 0.875rem/140% "Manrope", sans-serif;	
	--f-s3: 400 0.8125rem/140% "Manrope", sans-serif;	   
	--f-s4: 400 0.75rem "Manrope", sans-serif;

	--f-base-semi: 500 1rem "Manrope", sans-serif;		
	--f-s1-semi: 500 0.9375rem "Manrope", sans-serif;	
	--f-s1-bold: 600 0.9375rem "Manrope", sans-serif;	

	--trn-bg: rgba(245, 245, 245, 0.90);	
	
	--b-main: 1px solid var(--c-main);
	--b-grey: 1px solid var(--c-grey); 
	--b-grey2: 1px solid var(--c-middle-grey);    
    --b-grey3: 1px solid #D9D9D9; 
	--b-white: 1px solid var(--c-white);
	--b-active: 1px solid var(--c-active);
    --b-dark-grey: 1px solid var(--c-dark-grey);
    --b-warn: 1px solid var(--c-warn);

	--width-side: 20%;
	--width-center: 60%;
	--wrap-pdd: 9vw;
	--hdr-top-height: 2rem; 
	--header-height: 4.5rem; 

    --grid-gap: 3rem;
    --row-gap: 3rem;
}

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;
}

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;
}

a:hover {
    color: var(--c-red);
}

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

body {
    font: var(--f-base);
	line-height: 1;
    color: var(--c-main);
    background-color: var(--c-white);
	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-layout {
	display: grid;
	grid-template-rows: auto 1fr auto;
	grid-template-columns: 100%;
	min-height: 100svh;	
    overflow: hidden;
}

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

[class*="-popup"] {
	border: var(--b-main);
	backdrop-filter: blur(0.625rem);
}
[class*="-popup"] .close {
	position: absolute;
	top: 0.6125rem;
	right: 0.6125rem;
	cursor: pointer;
}

.amark span:after, ul.amark > li > a span:after {
    content: "";
    width: 0.5em;
    height: 0.5em;
    padding-left: 1.25em;
    background-image: url(/css/icons.svg#u-right);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 0.625em;
    display: inline;
    vertical-align: middle;
}

.amark:hover span:after, a:hover .amark span:after, ul.amark > li > a:hover span:after, .-red.amark span:after, .more-link.amark span:after {
	background-image: url('/css/icons.svg#u-right-active');
}

.-red.amark {
    font-weight: 500;
}

.content {
	font: var(--f-base-txt);
	color: var(--c-main);
}

.content.-center {
    text-align: center;
}

.content img {
    max-width: 100%;
}

.content img.-full {
    width: 100%;
}

.content img.-trim21 {
    object-fit: cover;
    object-position: center;
    aspect-ratio: 2 / 1;
}

.content img.-trim32 {
    object-fit: cover;
    object-position: center;
    aspect-ratio: 3 / 2;
}

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

.content p + img {
	margin-top: 0.75rem;
}

.content ul:not([class]),  .content ol:not([class]) {
	list-style: none;
	margin-bottom: 1rem;
}

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

.content ol:not([class]) {
	padding: 0 0 0 1.5rem;
}

.content ol:not([class]) > li {
    counter-increment: item;
}

.content ol:not([class]) > li:before {
    margin-left: -1.5rem;
    content: counter(item) '. ';    
    color: #000;
    text-align: left;
    position: absolute;
}

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

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

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

.content p+h2, .content div+h2, .content p+div:not([class]), .content ul:not([class]) +h2, .content ul:not([class])+h3  {
	margin-top: 1.5rem;
}
.content ul:not([class]):not(:first-child) {
    margin-top: 1rem;
}

.content a {
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-thickness: from-font;
}

.content a:hover {
    color: var(--c-active);
}

.content img[width], .content *:not(picture) > img, .content > img {
    width: auto !important;
    max-width: 100%;
    height: auto !important;
}

.content img[align] {
    max-width: 50%;
}

.content p img[width] {
    padding: 1rem 0;
    margin: 0;
}

.content div[align], .content p[align], .content *[style*="justify"] {
    text-align: left !important;
}

.content iframe {
    max-width: 100% !important;
    background: var(--c-light-grey);
} 

header {
	width: 100%;
	display: grid; 
	grid-template-columns: var(--width-side) var(--width-center) var(--width-side);
	grid-template-rows: var(--header-height);
	    grid-template-areas: "hdr-logo-fx menu-main-fx menu-tools-fx";
	z-index: 100;
    border-bottom: 1.5px solid #ddd;
    background-color: var(--c-white);
    justify-content: space-between;
    color: var(--c-main);     
}

.-side-wrap {
	padding-left: var(--wrap-pdd);
	padding-right: var(--wrap-pdd);
}

.hdr-main {
    grid-area: hdr-main;
    display: grid;
    grid-template-columns: var(--width-side) var(--width-center) var(--width-side);
    grid-template-rows: 1fr;
    grid-template-areas: "hdr-logo-fx menu-main-fx menu-tools-fx";
    background: var(--c-white);
    justify-content: space-between;
    color: var(--c-main);
}

.hdr-logo-fx {
	grid-area: hdr-logo-fx;
}

.logo img {
    width: 6.5rem;
    height: 2rem;
}

.hdr-phone-fx {
	white-space: nowrap;
	justify-content: flex-end;    
    font: var(--f-s1);
}

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

.search-link-fx	> *+* {
	margin-left: 0.5rem;
}

.menu-tools-fx > div {
    flex-wrap: nowrap;    
	margin-left: 1.5rem;
}

.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.5rem;
    font: var(--f-s1) !important;
    border: 0  !important;
    border-bottom: 1px solid var(--c-main)  !important;
	background-color: transparent !important;
    border-radius: 0 !important;
    color: var(--c-main);
    padding: 2px !important;
}

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

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

.icon.search {
    display: block;
    content: "";
    background-image: url('/css/icons.svg#u-search');
    background-repeat: no-repeat;
    width: 1.125rem;
    height: 1.0625rem;
    margin-top: 3px;
}

.icon.search.white {
    background-image: url('/css/icons.svg#u-search-white') !important;
}

.icon.search:hover {
    background-image: url('/css/icons.svg#u-search-active');
}

input::-webkit-input-placeholder {
	color: var(--c-main);
    opacity: 0.5;
    font: var(--f-s1);
}
textarea::-webkit-input-placeholder {
	color: var(--c-main);
    opacity: 0.5;
    font: var(--f-s1);
}

input::-moz-placeholder {
	color: var(--c-main);
    opacity: 0.5;
    font: var(--f-s1);
}
textarea::-moz-placeholder {
	color: var(--c-main);
    opacity: 0.5;
    font: var(--f-s1);
}

input::placeholder {
	color: var(--c-main);
    opacity: 0.5;
    font: var(--f-s1);
}
textarea::placeholder {
	color: var(--c-main);
    opacity: 0.5;
    font: var(--f-s1);
}
/*
*:-internal-autofill-selected {
	color: #000;
}
*/

input.error, textarea.error, select.error {
    border: var(--b-warn) !important;
	color: var(--c-warn) !important;
    opacity: 1;
}

*.error::-webkit-input-placeholder {
	color: var(--c-warn) !important;
    opacity: 1;
}

*.error::-moz-placeholder {
	color: var(--c-warn) !important;
    opacity: 1;
}

*.error:-ms-input-placeholder {
	color: var(--c-warn) !important;
    opacity: 1;
}

*.error::placeholder {
	color: var(--c-warn) !important;
    opacity: 1;    
}

h1, .h1 {
	font: var(--f-h1);
}

h2, .h2 {
	font: var(--f-h2);
}

h3, .h3 {
	font: var(--f-h3);
}

h4, .h4 {
	font: var(--f-h4);
}

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

.menu {
    list-style: none;
}

.menu-block-fx {
	grid-area: menu-main-fx;
    justify-content: center;
}

.menu-block-fx > ul {
    font: var(--f-s1-semi);    
    max-width: 750px;
	width: 100%;
    height: 100%; 
}

.menu-block-fx .menu.list-fx > li, .menu-block-fx .menu.list-fx > li > a {
    display: flex;
    align-items: center;  
    height: 100%;      
}

.menu-block-fx .menu.list-fx > li + li {
	margin: 0 0 0 1rem;
}

.menu-block-fx .menu.list-fx > li ul {
    display: none;
    position: absolute;
    top: var(--header-height);
    left: -2rem;
    padding: 1.5rem 2rem 1rem;
    min-width: 15rem;
    background-color: var(--c-white);
    border-top: 1px solid #fff;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
    z-index: 10;
    font: var(--f-s2);
}

.menu-block-fx .menu.list-fx > li > ul li {
    margin-bottom: 1rem;
    white-space: nowrap;
}

.menu-block-fx .menu.list-fx > li:hover ul, .menu-block-fx .menu.list-fx > li.active ul {
    display: block;
}

.-mobl {
	display: none;
}

.menu-mode {
    height: 100%;
    overflow: hidden;
    position: fixed;
}

.path {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 3rem;
}

.path ul {
	list-style: none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font: var(--f-s3);
    line-height: 1;
    margin-top: -1px; 
    height: 100%;
}

.path ul li {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
    white-space: nowrap;
    line-height: 1;
}

.path .dtx-scroll {
    width: 100%;
    height: 100%;    
}

.path ul li:before {
	display: none;
}

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

.path ul li span {
    color: var(--c-dark-grey);   
}

.grey-line-layout {
    height: 3.75rem;
    background-color: var(--c-grey);
    color: var(--c-white);
    font: var(--f-base-semi);
    z-index: 1;
}

.grey-line-layout > * {
    height: 100%;
}

.grey-line-layout a:hover {
    color: var(--c-white);
    opacity: 0.6;
}

.grey-line-layout .menu-block-fx .menu.list-fx {
    justify-content: flex-start;
    max-width: none;
    width: auto;    
    flex-wrap: nowrap;    
}

.grey-line-layout .menu-block-fx .menu.list-fx > li + li {
    margin-left: 2.5vw;
}

.grid4, .grid2, .grid3 {
    display: grid;
    grid-auto-flow: row dense;
    row-gap: calc(var(--row-gap)/1.5);
    row-gap:  var(--row-gap);    
}

.grid2 {
    grid-template-columns: repeat(2, minmax(2rem, 1fr));
    column-gap: var(--grid-gap);
}

.grid3 {
    grid-template-columns: repeat(3, minmax(2rem, 1fr));
    column-gap: calc(var(--grid-gap) / 1.5);
}

.grid4, .tbl-grid.grid4 {
    grid-template-columns: repeat(4, minmax(min-content, 1fr));
    column-gap: calc(var(--grid-gap) / 1.5);
}

.grid4 .item {
    display: flex;
    height: 100%;    
}

.grid2.-center .item, .grid4.-center .item {
    align-items: center;
    justify-content: center;
}

.-row-gap0 {
    row-gap: 0;
}

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

.-grey-bg-odd {
	padding-top: var(--row-gap) !important;   
}

main :nth-child(odd of .-grey-bg-odd) {
    background-color: var(--c-light-grey2);
}

main :nth-last-child(1 of .-grey-bg-odd) {
    background: none;
}

.cat-sect-layout {
    padding-top: var(--row-gap);
    padding-bottom: var(--row-gap);
}

.cat-sect-layout .item {
    flex-flow: column nowrap;
    justify-content: space-between;
}

.cat-sect-layout .item-case {
	display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    height: 100%;
    padding: calc(var(--grid-gap) / 3) 0 0;
}

.cat-sect-layout .item-case .title {
    font: var(--f-base);
}

.cat-sect-layout .item-pic {
    width: 70%;
    max-width: 10rem;
}

.cat-sect-layout .pic-frame picture {
    transition: transform 0.3s linear;
    transform: scale(1);
}

.cat-sect-layout .item:hover picture {
    transform: scale(1.05);
}

.cat-sect-layout .pic-frame img {
    object-fit: contain;
    max-height: 90%;
    max-width: 90%;    
    filter: contrast(1.1) drop-shadow(0 1px 2px rgba(0, 0, 0, 0.4));    
}

.cat-group-layout { 
    padding-top: calc(var(--row-gap) / 2);
    padding-bottom: calc(var(--row-gap) / 2);
}

.cat-group-layout .grid4 {
    grid-template-columns: unset;
    column-gap: calc(var(--grid-gap) / 2);
    grid-auto-flow: column dense; 
    grid-auto-columns: minmax(0, 1fr);    
}

.cat-group-layout .item {
    display: flex;
    flex-flow: row nowrap;
}

.cat-group-layout .item > * {
    flex: 1;
}

.cat-group-layout .item-pic {
    border-radius: 0.25rem;
    overflow: hidden;
}

.cat-group-layout .item-case  {
    margin-left: 1rem;
    align-self: center;
}

.cat-group-layout .item-case .title {
    font: var(--f-s1-semi);    
}

.cmp-slider .slide {
    height: 60vh;
}

.cmp-slider .slide .bg {
    background-position: 50% 0;
}

.select-layout {
    background-color: var(--c-middle-grey);
    color: var(--c-white);
    padding-top: var(--row-gap);
    padding-bottom: var(--row-gap);
}

.select-layout .hdr-block {
    padding-bottom: 0;
}

.-red {
    color: var(--c-red);
}

.split-title {
    font: var(--f-h3);
    margin-bottom: calc(var(--row-gap)/1.5);
}

.news-list .item {
    display: flex;
    flex-flow: column nowrap;
    -webkit-column-break-inside: avoid; 
    page-break-inside: avoid; 
    break-inside: avoid; 
}

.news-list:not(.grid2):not(.grid4) .item + .item {
    margin-top: calc(var(--row-gap) / 1.5);
} 

.news-list .title, .item-case .title {
    display: block;
    font: var(--f-subtitle);
}

.news-list .pic-frame + * {
    margin-top: calc(var(--row-gap)/2);
}

.news-list .item-case {
    margin-top: 0;
    padding: calc(var(--row-gap)/1.5) calc(var(--grid-gap)/1.5);
    flex: 1;
    border-bottom-left-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}

.news-list .item-case .more-link {
    margin-top: 2rem;
}

.news-list .title + *, .item-case .title + * {
    margin-top: 1rem;
}

.news-list .note, .item-case .note {
    display: block;    
	font: var(--f-s1);	  
    margin-top: 0.625rem;      
}

.news-list .date, .content .date {
    display: block;  
    margin-bottom: 0.375rem;     
	font: var(--f-s4);	
}

.news-list .subtitle {
    font: var(--f-subtitle);  
}

.item-case  .subtitle {
    font: var(--f-base-semi);  
}

.item-case > .note {
    margin-top: 1rem;      
}

.item-case .subtitle+.title {
    margin-top: 1rem;
}

.item.-rnd {
    border-radius: 0.5rem;
    overflow: hidden;
}

.item .item-desc {
    padding: 2rem 1.5rem;
}

.news-list .menu {
    margin-top: calc(var(--row-gap)/2);
    font: var(--f-base-semi);
}

.content h2:not(:first-child), .content h3:not(:first-child) {
	margin-top: calc(var(--row-gap)/2);
}

.content h2:not(:only-child), .content h3:not(:only-child) {
	margin-bottom: calc(var(--grid-gap)/2);
}

.split-layout {
	display: grid; 
	grid-template-columns: 1fr 1fr; 
	grid-auto-rows: auto;
    column-gap: var(--grid-gap);
    row-gap:  var(--row-gap);
    grid-auto-flow: dense;
}

.split-layout.-tile {
    column-gap: 0;
    row-gap: 0;
}

.split-layout > * {
    overflow: hidden;
}

.split-layout.-shift {
	grid-template-columns: 1fr 2fr; 
}

.split-layout .content h2 {
    font: var(--f-h3);
}

.split-layout .content h3 {
    font: var(--f-h4);
}

.split-layout .sticky {
    top: 0;
}

.split-layout .bg {
    min-height: 22rem;
}

.split-layout.-tile .tile-case {
    padding: var(--grid-gap) var(--grid-gap);
}

.split-layout.-tile > *:nth-child(4n + 3) {
    grid-column-start: 2;
}

.split-layout.-tile.-rnd > *:nth-child(4n + 3), .split-layout.-tile.-rnd > .tile-case:nth-child(4n + 2) {
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}

.split-layout.-tile > .tile-case:nth-child(4n+1) {
    padding-left: var(--wrap-pdd);
}

.split-layout:not(.-side-wrap).-tile > .tile-case:nth-child(4n + 2) {
    padding-right: var(--wrap-pdd);
}
/*
.-side-wrap .split-layout.-tile > .tile-case:nth-child(4n) {
    padding-left: var(--grid-gap);
}

.-side-wrap .split-layout.-tile > .tile-case:nth-child(4n + 2) {
    padding-right: var(--grid-gap);
}
*/
.split-layout.-tile.-rnd > :nth-child(4n+1), .split-layout.-tile.-rnd > :nth-child(4n+4) {
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
}

.split-layout.-shift .item-list {
    grid-template-columns: repeat(1, minmax(2rem, 1fr));
}

.split-layout.-center {
    align-items: center;
}

.split-layout .bg {
	background-position: 50%;
    background-size: cover;
    height: 100%;
}

.split-layout:not(.-relative) .bg {
    padding-top: 66.66%;
}

.split-layout.-rnd {
    row-gap: 2rem    
}

.pic-frame.-logo  {
    margin: 0 auto;    
    max-width: 300px;
    height: 300px;
}

.-logo-bg:before, .-logo-bg-white:before {
    content: "";
    width: 25rem;
    height: 25rem;
    position: absolute;
    bottom: -5rem;
    right: -5rem;
    background-image: url('/img/bg-logo.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.-logo-bg-white:before {
    background-image: url('/img/bg-logo-white.svg');
}

.menu-block-fx.-logo-bg-white:before {
    display: none;
}

.item-slider .item.content {
    padding: var(--grid-gap) var(--grid-gap);
}

.item-slider .item {
    height: 100%;
}

.item-slider:not(:last-child) {
    margin-bottom: 1rem;
}

.slider-case .slick-list {
    margin: 0 -1rem;
    width: auto;
}

.news-slider .item {
    margin: 0 calc(var(--grid-gap) / 3);
    border-radius: 0.5rem;
    overflow: hidden;    
}

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

.video-frame video {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
    height: 100%;
	max-width: 100%;
	max-height: 100%;
	object-fit: cover;
}
 
.video-frame > div {
	position: relative;
	padding-top: 56.25%;
	height: 0;
} 

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

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

.col-layout .video-frame {
    display: block;

}

.main-banner {
    height: calc(100vh - var(--header-height));
	overflow: hidden;
    z-index: 1;    
}

.main-banner .slide {
	height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;	
    height: calc(100vh - var(--header-height));
}

.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);*/
    filter: contrast(0.9) brightness(0.90);    
}

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

.slide .bg {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    background-size: cover;
    background-position: 50%;
}

.slide-title {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    z-index: 100;
}

.main-banner .slide-title .title {
    font: var(--f-h0);
    color: var(--c-white);
    max-width: 60%;
    text-align: center;
}

.main-banner .slide-title .subtitle {
    font: var(--f-h3s);
    color: var(--c-white);
    margin: calc(var(--grid-gap) / 4) 0 0;  
    text-align: center;  
}

.main-banner .slide-title .btn {
    margin-top: calc(var(--grid-gap)/1.5);
    width: auto;
}

.slide-title.-top {
    justify-content: flex-start;    
    margin-top: 13vh;
}

.main-banner .promo-sticker {
    position: absolute;
    bottom: var(--row-gap);
    right: var(--row-gap);    
    width: 8rem;
    height: 8rem;
    z-index: 100;    
    background-color: var(--c-white);
    border: var(--b-active);
    border-radius: 50%;
    color: var(--c-active);
    text-transform: uppercase;
}

.col-layout {
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
	-moz-column-fill: balance;
	column-fill: balance;
	column-gap: var(--grid-gap);
}

.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, .col-layout > li  {
    display: inline-block;
    width: 100%;
}

.slider-case {
    overflow: hidden;
}

.slider-case .item.content {
    padding-top: 0;
    padding-bottom: 0;
}

.slider-case .item.content.-center {
    display: flex !important;
    align-items: center;
    text-align: center;
}

.pic-frame {
    display: block;
    width: 100%;
	padding-top: 66.67%;	
 	overflow: hidden;   
}

.pic-frame.-ar20 {
	padding-top: 20%;	
}

.pic-frame.-ar50 {
	padding-top: 50%;	
}

.pic-frame.-ar45 {
	padding-top: 45%;	
}

.pic-frame.-ar100 {
	padding-top: 100%;	
}

.pic-frame.-btm img {
    object-position: bottom;
}

.pic-frame picture, .pic-frame .picture, .pic-frame > img {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}


.pic-frame img {
	max-height: 100%;
	max-width: 100%;
    object-fit: cover;
}

.-pic-cover, .-pic-contain {
    display: block;
    width: 100%; 
}

.-pic-cover img, .-pic-contain img {
	width: 100%;
	height: 100%;	
}

.-pic-contain img {
    object-fit: contain;
}

.visible {
	visibility: visible;
}

footer {
	display: grid; 
	grid-template-columns: 1fr 1fr 1fr; 
	grid-auto-rows: auto;
	grid-template-areas: 
        "footer-logo . ."
        "footer-contact-fx footer-menu-fx footer-extra"
        "footer-copy . footer-extra";
    grid-column-gap: var(--grid-gap);
    grid-row-gap: calc(var(--grid-gap) / 1.5);    
	padding-top: calc(var(--grid-gap)*1.25);
	padding-bottom: var(--grid-gap);
    background: var(--c-dark-grey);
    color: var(--c-white);
    z-index: 1;
}

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

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

footer .title {
    font: var(--f-h5);
    margin-bottom: calc(var(--row-gap)/2);
}

.menu {	
    font: var(--f-s1);
}

.menu li+li {
    margin-top: 0.75rem;
}

footer .footer-contact-line-fx {
    flex-flow: column;
    align-items: flex-start;
    justify-content: flex-start;
    font: var(--f-s1);    
}

footer .footer-contact-line-fx p+p {
	margin-top: 1rem;
}

footer .footer-logo {
    grid-area: footer-logo; 
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
}

footer .footer-logo > *+* {
    margin-left: calc(var(--grid-gap)/1.5);
}

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

footer .logo.flag {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
}

footer .logo.flag img {
    width: 2.25rem;
}

footer .logo.flag span {
    margin-left: calc(var(--grid-gap)/3);
    font: var(--f-s3);
}

footer .logo.flag span {
    margin-left: calc(var(--grid-gap)/3);
    font: var(--f-s3);
}

.footer-phone {
    font: var(--f-base);    
}

footer .footer-contact-fx {
	flex-flow: column nowrap;
    align-items: flex-start;
	justify-content: flex-start;
	grid-area: footer-contact-fx;
}	

footer .footer-extra {    
    font: var(--f-s3);   
    grid-area: footer-extra;
    text-align: right;
}

footer .footer-copy {    
    font: var(--f-s3);   
    grid-area: footer-copy;   
}

footer .search-fx {
    margin-bottom: calc(var(--grid-gap)/1.5);
}

footer input[type=text] {   
    background: none;
    border: var(--b-grey2);
    color: var(--c-white);
}

footer *::-webkit-input-placeholder {
	color: var(--c-white);
}

footer *::-moz-placeholder {
	color: var(--c-white);
}

footer *:-ms-input-placeholder {
	color: var(--c-white);
}

footer *::placeholder {
	color: var(--c-white);
}
footer .icon.search {
    position: absolute;
    right: 1rem;
}

input[type=text],
textarea,
button, select {    
    font: var(--f-s1);
    width: 100%;
    margin: 0;
    padding: 0.5rem;
    background-color: var(--c-white);
    border: var(--b-grey2);
    border-radius: 0.25rem;
 	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-appearance: none;
    -moz-appearance: none;
	-ms-appearance: none;	
    appearance: none;	
}

input[type=text] {
    height: 2.5rem;
}

button {
    border: none;
}

select {  
    text-indent: 0.01px;
    padding-right: 2rem;
    background: #fff url('/css/icons.svg#u-arrow-right') no-repeat;
    background-size: 1rem;
    background-position: right 0.25rem center;
    cursor: pointer;
    text-align: left;    
}

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

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(--b-main);
    -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(--c-red);
    border-color: var(--c-red);
}

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(--b-main);
	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(--c-red);
    border: var(--b-active);
}

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

select[disabled] {
    cursor: default;    
    background-color: var(--c-light-grey);
}

h2 +.form, h3 +.form, h1 +dl {
    margin-top: 1.75rem;
}

.form h2, .form h3 {
    margin-bottom: 1.75rem;
}

.form dt {
	font: var(--f-light);
    color: var(--c-main);
    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;  
	display:flex;
	align-items:center;  
}

.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;
}

.slick-slider .ibtn {
    overflow: visible;    
    position: absolute; 
    z-index: 500;
	backdrop-filter: blur(0.25rem);	
    top: calc(50% - var(--size-ibtn)/2);
}

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

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

.slick-dots {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;    
    position: absolute;    
    bottom: 0;    
    left: 50%;
    transform: translateX(-50%);
    list-style: none;
    z-index: 100;
}

.slick-dots li {
    flex: 1;
    width: 0.6125rem;
    min-width: 0.6125rem;
    height: 0.6125rem;
    cursor: pointer;
    opacity: 0.5;
    border-radius: 50%;
    background-color: var(--c-white);   
    border: var(--b-active);
}

.slick-dots li + li {
    margin-left: 1rem;
}

.slick-dots li button {
    height: 0;
    width: 0;
    opacity: 0;
    min-height: 0;
    padding: 0;
}

.slick-dots li.slick-active {
    opacity: 1;
    background-color: var(--c-red);        
}

.slick-slider:not(.thumb-slider).slick-dotted  {
	padding-bottom: var(--row-gap);
}

.scroll-slider .slick-scrollbar {
	position: absolute;
    bottom: 0;
    left: 0;
	width: 100%;
}

.scroll-slider .slick-dots, .thumb-slider .slick-dots {
	display: none !important;
}

.slick-scrollbar input[type=range] {
    appearance: none;
    -webkit-appearance: none;
    padding: 1rem 0 0;
    width: 100%;
    background: transparent;
}

.slick-scrollbar input[type=range]:focus {
    outline: none;
}

.slick-scrollbar input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 10px;
    cursor: default;
    animation: 0.2s;
    box-shadow: none;
    background: none;
    border-radius: none;
    border: none;
	border-top: 2px solid var(--c-grey);
}

.slick-scrollbar input[type=range]::-moz-range-track {
    width: 100%;
    height: 10px;
    cursor: default;
    animation: 0.2s;
    box-shadow: none;
    background: none;
    border-radius: none;
    border: none;
	border-top: 2px solid var(--c-grey);
}

.gtile .slick-scrollbar input[type=range]::-webkit-slider-runnable-track {
	border-top: 2px solid var(--c-white);
}

.gtile .slick-scrollbar input[type=range]::-moz-range-track {
	border-top: 2px solid var(--c-white);
}

.slick-scrollbar input[type=range]::-webkit-slider-thumb {
    box-shadow: none;
    border-top: 2px solid transparent;
    border-image-slice: 1;
    border-width: 2px;
    background: transparent;
	border-image-source: var(--g-line2);
    height: 10px;
    width: 15%;
    border-radius: none;
    cursor: grab;
    -webkit-appearance: none;
    margin-top: -2px;
}

.slick-scrollbar input[type=range]::-moz-range-thumb {
    box-shadow: none;
    border-top: 2px solid transparent;
    border-image-slice: 1;
    border-width: 2px;
    background: transparent;
	border-image-source: var(--g-line2);
    height: 10px;
    width: 15%;
    border-radius: none;
    cursor: grab;
    margin-top: -2px;
}
.slick-scrollbar input[type=range]::-webkit-slider-thumb:active,
.slick-scrollbar input[type=range]::-webkit-slider-thumb:focus {
    cursor: grabbing;
}
.slick-scrollbar input[type=range]:focus::-webkit-slider-runnable-track {
    background: none;
}

.slick-scrollbar input[type=range]::-moz-range-thumb:active,
.slick-scrollbar input[type=range]::-moz-range-thumb:focus {
    cursor: grabbing;
}

.scroll-slider.slick-vertical .slick-scrollbar {
    left: 100%;
    bottom: 100%;
    transform: rotate(90deg);
    transform-origin: 0% 100%;
}

.slick-vertical .slick-scrollbar input[type=range] {
    padding: 0 0 1rem;
}

img.side-left {
	padding: 0 1rem 1rem 0;
}

.gallery-layout {
	display: grid; 
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	margin: 1rem 0;
	justify-content: center;
    align-items: stretch;
	grid-gap: 1rem;
}

/* filter */
.filter-panel {
    margin: 0 0 2rem;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 2rem 0;
}

.filter-panel .prompt {
	display: block;
    font-size: 0.875em;
    font-weight: 200;
    margin-bottom: 1.125rem;
}

.filter-panel .grid-flex {
    flex-flow: row wrap;	
}

.filter-panel .grid-flex > div:nth-child(n+1) {
	padding-right: 2rem;
}

.filter-panel .grid-flex > div {
	margin-bottom: 1.5rem;
}

.filter-case-fx {
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
}

.filter-case-fx > * {
	margin-right: var(--grid-gap);
}

.filter-prompt {
	font: var(--f-s2);
}

.filter-prompt +.colors {
	margin-top: 0.25rem;
}

.ballon > li.disabled > * {
    background: #f9f9f9;
    color: #777;
    border-color: #ccc;
    cursor: default;
}

.ballon > li.active > ul {
    display: inline-block;
    width: auto;  
}

.ballon > li > ul > li {
    margin-bottom: 0;
}

.ballon input {
	display: none;
}

/* COLORS */
.colors {
    list-style: none;
    display: flex;
    flex-flow: wrap;
    align-items: flex-start;
}
.colors li {
    display: inline-block;
    width: 4rem;
    height: 1.75rem;
    margin-bottom: 0.5rem;
    padding: 2px;
    border: 1px solid transparent;
    border-radius: 6px;
    cursor: pointer;
}

.colors li:not(.active):not(.selected) {
    padding: 0;
}

.colors li:not(:last-child) {
    margin-right: 0.75em;
}
    
.colors li span, .colors li a {
    display: inline-block;
    margin: 0;
    width: 100%;
    height: 100%;
    border-radius: 5px;
    background-position: 50% 50%;
    background-size: cover;
	box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.5);   
}

.colors li.disabled, .colors li.restricted {
    cursor: default;
}

.colors li.disabled span,  .colors li.restricted span {
    box-shadow: inset 0 1px 1px rgba(0,0,0,0.5);
    cursor: default;
}

.colors li.disabled:hover, .colors li.restricted:hover {
    border-color: transparent;
}

.colors li.active, .colors li:hover {
    border: var(--b-active); 
}

.colors li:hover span, .colors li.selected span, .colors li.active span {
    box-shadow: none;
}

.colors li a {
    border: 0;
}

/******************/

.item-layout {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: auto 1fr;
    grid-template-areas:
        "item-gallery item-case"
        "item-content item-case";
    align-items: flex-start;
	column-gap: var(--grid-gap);
    margin-bottom: var(--row-gap);
}

.item-content {
	grid-area: item-content;
    margin: var(--grid-gap) 0 0; 
}
 
.item-gallery {
	grid-area: item-gallery;	
	display: flex;
	flex-flow: column nowrap;
	align-items: flex-start;
	width: 100%;
    overflow: hidden;
}

.item-gallery .item-preview-layout {
    width: 100%;
    overflow: hidden; 
    margin-bottom: calc(var(--row-gap)/2);
}

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

.item-preview-layout:after {
    content: "";    
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 1, .02);
    pointer-events: none;
}

.item-gallery .item-preview img {
    width: 100%;
    height: auto;
    object-fit: cover; 
    filter: contrast(1.1) brightness(0.95);       
}

.item-gallery .item-preview img:not(.poster) {
    padding: 0 1rem 0.5rem;   
}

.item-thumb {
	width: 100%;
}

.item-thumb .slick-slider {
	width: 100%;
	opacity: 0;
    visibility: hidden;
}

.item-thumb .scrl-thumb+.slick-list {
    margin: 0 auto;
}

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

.item-gallery .item-thumb .slick-track {
    margin-left: 0;
}

.item-thumb .thumb-slide {
    display: block;
    padding: 0.25rem;
    border-radius: 0.125rem;
    border: var(--b-grey3);
    border-radius: 0.25rem;    
    overflow: hidden;    
}

.item-thumb .slick-list {
    margin: 0 -0.5rem;
}

.item-thumb .slick-slide {
    margin: 0 0.5rem;
}

.item-thumb .thumb-slide:hover  {
    border: var(--b-active); 
}

.item-thumb .thumb-slide.active {
    border: var(--b-active); 
}

.item-thumb .thumb-slide img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    display: block;
    object-fit: cover;
}

.item-preview-layout .pic-frame, .item-thumb .pic-frame {
    padding-top: 75%;
}

.slick-slider.prod-list .slick-list {
    margin: 0 calc(var(--row-gap)/-2);
}

.slick-slider.prod-list .slick-slide {
    margin: 0 calc(var(--row-gap)/2);
}

.prod-list .item-case .title {
    display: block;
    font: var(--f-h4s);
}

.scrl-thumb {
	display: inline-block;
	cursor: pointer;
    z-index: 10;    
}

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

.scrl-thumb.up:before {
	content: "";
    background-image: url('/css/icons.svg#i-up');
    background-repeat: no-repeat;
}

.scrl-thumb.down:before {
	content: "";
    background-image: url('/css/icons.svg#i-down');
    background-repeat: no-repeat;
}

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

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

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


.item-layout .item-case {
	grid-area: item-case;
}

.item-param .tbl-row {
    border-bottom: var(--b-grey3);
}

.btn {
    display: flex;
    height: 2.5rem;
    padding: 0 2rem;
    justify-content: center;
    align-items: center;
    width: -moz-max-content;
    width: fit-content;
    background-color: var(--c-red);
    color: var(--c-white);
    box-shadow: 2px 1px 6px rgba(0, 0, 0, 0.15);
    transition: .3s;    
    font: var(--f-s1-semi);
    line-height: 1;    
    border-radius: 2.5rem;
    text-decoration: none;
    cursor: pointer;   
    border-width: 0.625rem;
}

.btn:hover {
	background-color: var(--c-dark-grey);
    color: var(--c-white);    
}

.btn.-trn {
    border: var(--b-active);    
    background-color: transparent;
    color: var(--c-red);   
    box-shadow: none; 
}

.btn.-trn:hover {
    background-color: var(--c-red);
    color: var(--c-white);  
}

.doc-layout + .doc-layout {
    margin-top: var(--row-gap);
}

.doc-layout .title {
    display: block;
    margin-bottom: calc(var(--row-gap)/2);
}

.file-list + a {
    display: inline-block;
}

.file-block {
    display: flex;  
    align-items: flex-start;       
    text-decoration: none;
}

.item-case .file-block {
    padding: 0 0 1rem;
}

.file-list .file-block {
    padding: 0.875rem;
    border: var(--b-grey2);
    border-radius: 0.375rem;
    min-height: 3.875rem;
}

.file-block .name {
    display: flex;
    align-items: flex-start;    
    color: var(--c-main);
    font: var(--f-s1-semi);
}

.file-block:hover .name {
    color: var(--c-active);
}

.file-block .name:before {
    content: "";
    display: inline-block;
    width: 2.25rem;
    height: 2.25rem;
    background-repeat: no-repeat;
    background-position: center;
}

.file-block .name.pdf:before {
    background-image: url('/css/icons.svg?2026#u-pdf');
}

.file-block .name.zip:before {
    background-image: url('/css/icons.svg?2026#u-zip');
}

.file-block .name.xls:before {
    background-image: url('/css/icons.svg?2026#u-xls');
}

.file-block .name.rar:before {
    background-image: url('/css/icons.svg?2026#u-rar');
}

.file-block .name.doc:before {
    background-image: url('/css/icons.svg?2026#u-doc');
}

.file-block .name.exe:before {
    background-image: url('/css/icons.svg?2026#u-exe');
}

.file-block:hover .name.pdf:before {
    background-image: url('/css/icons.svg?2026#u-pdf-active');
}

.file-block:hover .name.zip:before {
    background-image: url('/css/icons.svg?2026#u-zip-active');
}

.file-block:hover .name.xls:before {
    background-image: url('/css/icons.svg?2026#u-xls-active');
}

.file-block:hover .name.rar:before {
    background-image: url('/css/icons.svg?2026#u-rar-active');
}

.file-block:hover .name.doc:before {
    background-image: url('/css/icons.svg?2026#u-doc-active');
}

.file-block:hover .name.exe:before {
    background-image: url('/css/icons.svg?2026#u-exe-active');
}

.file-block .name:before {
    margin: 0.125rem 0.5rem 0 0;    
    opacity: 0.8;
}

.file-block:hover .name:before {
    opacity: 1;
}

.file-list .file-block:hover {
    border: var(--b-active);
}

.file-block .name > div {
    flex: 1;
}

.file-block .name span {
    display: block;
    padding-top: 0.125rem;
    opacity: 0.6;
    font: var(--f-s3);      
    font-weight: 500;  
}

.file-block .name span:before {
    content: "\21E9";    
    display: inline-block;
    padding-right: 0.25rem;
}

.file-list .file-block .name span {
    display: inline-block;
}

.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%;
    max-width: 1280px;	
}

.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% - 1.25rem);
	z-index: 1100;
}

.mfp-arrow {
    top: calc(50% - 1.25rem);
    margin-top: 0;
    color: #fff;
    text-shadow: -1px 0px 0px #000;
    width: 2.5rem;
    height: 2.5rem;
}

.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.5rem;
	background-image: url('/css/icons.svg#u-arrow-left');
    background-repeat: no-repeat;
}

.mfp-arrow.right {
    right: 0.5rem;
	background-image: url('/css/icons.svg#u-arrow-right');
    background-repeat: no-repeat;
}

.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(--c-red);
}

.spin-loader {
	min-height: 50vh;
}

.spin-loader:after {
	content: "";
	display: inline-block;
	width: 6rem;
	height: 6rem;
    border: 1.5rem solid rgba(245,245,245,.2);
    border-radius: 50%;
    border-top-color: #f5f5f5;
	animation: spin 0.8s ease-in-out infinite;
	-webkit-animation: spin 1s ease-in-out infinite;
	z-index: 2000;
	position: absolute;
	top: calc(50% - 6rem);
	left: calc(50vw  - 3rem);
    margin: auto;
	z-index: 900;
}

.spin-loader .item-list {
	opacity: 0.05;
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}
@-webkit-keyframes spin {
	to {
		-webkit-transform: rotate(360deg);
	}
}

.active .spin-loader {
	display: none
}

.mfp-close:before  {
    content: "\2715";
    font-size: 1.5rem;
	font-weight: 300;
}

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

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

.iframe .main-layout {
    width: 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 6rem 2rem;
    text-align: center;
    vertical-align: middle;
    display: table-cell;    
}

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

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

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

.mfp-iframe-modal .mfp-close:before {
	display: block;
    color: #555;
    font-size: 1.5rem;
    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-thumb {
    position: absolute;
    bottom: 0;
    width: 100%;
    z-index: 1100;
    padding: 1.5rem 2rem;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
}

.mfp-thumb .item-thumb, .mfp-thumb .thumb-slider {
    max-width: 50vw;
    width: 100%;
    overflow: hidden;
}

.mfp-thumb .thumb-slide {
    width: 6rem;
}

.mfp-thumb .slick-slide > div {
    display: flex;
    justify-content: center;
}

.mfp-thumb .thumb-slide img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    padding: 3px;
}

.mfp-thumb .thumb-slide .active  {
	border: var(--b-active);
}

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

.small {
	font: var(--f-s2);
}
	
.youtube, .item-preview .video, .rutube {
    display: block;
    width: 100%;
    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-image: url('/images/play.png');
    background-size: cover;
    background-repeat: no-repeat;
    cursor: pointer;
}

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

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

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

.map > * {
    visibility: hidden;
}

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

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

.ymap {
    height: 70vh;
    background-color: var(--c-light-grey);
}

.ymap > * {
    visibility: hidden;
}

.ymap a, .ymap a:hover {
    color: var(--c-active) !important;
}

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

.city-select {
    position: absolute;
    z-index: 50;
    right: var(--wrap-pdd);
    top: var(--grid-gap);
    margin: 0;
}

.ymap .grey, .ymaps3x0--main-engine-container, .ymaps3x0--top-engine-container {
    filter: grayscale(90%) contrast(0.90);
    -webkit-filter: grayscale(90%) contrast(0.90);
    -moz-filter: grayscale(90%) contrast(0.90);
    -ms-filter: grayscale(90%) contrast(0.90);
}

ymaps ymaps[class*=cluster-tabs__menu-item-text] {
    color: var(--c-main);
}

ymaps ymaps[class*=cluster-tabs__menu-item-text]:hover {
    color: var(--c-active);
}

ymaps[class*="copyrights"] {
    opacity: 0;
}
.pg-fx {
    align-items: flex-start;
    margin-top: var(--grid-gap);
    padding: 0;
    justify-content: center;
}

.pg-fx .btn {
    margin-top: 2rem; 
}

.pg-list-fx {
    align-items: self-start;    
    margin-top: -2px;    
    list-style: none;
    font: var(--f-base-semi);
}

.pg-list-fx li {
    text-align: center;
}

.pg-list-fx li:not(.shift) > * {
    border-top: 2px solid transparent;
    display: inline-block;
    min-width: 1.25rem;
    padding: 1.3125rem 1rem;
}

.pg-list-fx li.shift > * {
    display: inline-block;
    padding: 1.375rem 0.5rem;
}

.pg-list-fx a:hover, .pg-list-fx .active {
    color: var(--c-active);
}

.pg-list-fx .active {
    border-top: 2px solid transparent;
}

.pg-list-fx .active {
    cursor: initial;
}

.pg-list-fx .arrow  {
    width: 1.5rem;
    height: 1.5rem;
    padding: 0;
    opacity: 0.8;
}

.pg-list-fx .arrow + li,.pg-list-fx li + .arrow {
    margin-left: 2rem;
}


.arrow, 
.cmark:after {
    background-image: url('/css/icons.svg#u-arrow-right');
    background-position: center;
    background-repeat: no-repeat;    
}

.arrow.left {
    left: 0;
    transform: rotate(-180deg);
}

.mfp-wrap .arrow.right {
    right: 0;
}

.arrow:hover,
.cmark:hover:after,
.cmark.active:after {
    background-image: url('/css/icons.svg?#u-arrow-right-active');   
}

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

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

.footer-social-fx {
	grid-area: footer-social-fx;	
	justify-content: flex-end;
	align-items: flex-start;	
	margin: calc(var(--row-gap) / 2) 0 0;
}

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

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

.title-param {
	font: var(--f-s2);
	text-transform: uppercase;
	padding-bottom: 1rem;
}

.wrap-block {
	border-top: var(--b-grey);
	overflow: hidden;	 
}

.item-layout .item-case .wrap-block {
    border-top: none;
    border-bottom: var(--b-grey);
}
.item-layout .item-case  .wrap-ctrl-fx {
    padding: 1rem 0;
}

.item-layout .item-case .wrap-ctrl-fx .title {
    margin: 0;
    font: var(--f-s1-bold) !important;
}

.grid2 > .wrap-block:nth-last-child(-n+2), .wrap-block:last-child {
	border-bottom: var(--b-grey);
}

.wrap-ctrl-fx {
	padding: 1.25rem 0;
	cursor: pointer;
    z-index: 10;	
	flex-wrap: nowrap !important;    
}

.wrap-ctrl-fx .title {
	margin: 0;
    font: var(--f-s0) !important;
    flex: 1;
}

.wrap-ctrl-fx:after {
    content: "";
	display: block;
	width: 1.5rem;
	height: 1.5rem;
    margin: 0.125rem -0.125rem 0 0;
	background-image: url('/css/icons.svg#u-plus');
    background-repeat: no-repeat;
}

.wrap-block.active .wrap-ctrl-fx:after {
	background-image: url('/css/icons.svg#u-minus');
    background-repeat: no-repeat;
}

.wrap-block .wrapped {
	height: 0;	
	opacity: 0;
	overflow: hidden;
	transform: translateY(-50%);
	transition: transform 0.6s ease-out, height 0.2s ease-in-out, opacity 0.2s;
}

.wrap-block.active .wrapped {
	height: 100%;
	margin-bottom: 1.25rem;
	opacity: 1;
	transform: translateY(0);
	transition: opacity 0.4s;    
}

.wrap-block .content {
    font: var(--f-s1);
} 

.wrapped .menu a {
    display: inline-block;
    padding-left: 2rem;
}

.wrapped .menu a:before {
	display: inline-block;
	content: "";
    position: absolute;
    left: 0;    
    top: 0.125rem;
    background-image: url('/css/icons.svg#u-right');
    background-repeat: no-repeat;
	width: 1.25rem;
	height: 1.25rem;
    padding-right: 0.75rem;
}

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

.wrapped .tbl-grid {
    margin: 0;
}

.wrapped .menu {
    margin: 0 0 calc(var(--grid-gap)/2);
}

.city-select {
    position: absolute;
    z-index: 50;
    right: var(--wrap-pdd);
    top: var(--grid-gap);
}

.city-select select {
    border: 1px solid var(--c-active);
}

.link-wrap {
    display: inline-flex;
    align-items: center;    
    border-radius: 0.25rem;    
    padding: 0.5rem 0.75rem;
    background-color: var(--c-light-grey);
    font: var(--f-s1-semi);
    color: var(--c-main);
    line-height: 1;
    cursor: pointer;
}

.link-wrap div {
    display: inline-flex;
    align-items: center;   
}

.link-wrap div:last-of-type {
    display: none;
} 

.link-wrap.active div:first-of-type {
    display: none;
} 

.link-wrap.active div:last-of-type {
    display: flex;
} 

.link-wrap svg {
    margin-right: 0.75rem;
    stroke: var(--c-main);
    stroke-width: 1px;
}

.link-wrap.var2 {
    background: none;
    padding: 0.5rem 0.75rem;
}

.part-data {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    grid-template-areas: "part-data-sub part-data-main";
    column-gap: calc(var(--grid-gap) / 1.5);
    overflow: unset;
}

.part-data-sub {
    grid-area: part-data-sub;
}

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

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

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

.part-data-index li {
    cursor: pointer;
    font: var(--f-h5);
}

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

.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;
}

.symbol-group {
    margin-bottom: var(--row-gap);
}

.symbol-group .title {
    margin-bottom: 0.75rem;
    font: var(--f-h3);
    color: var(--c-active);    
}

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

.dealer-list a.-red {
    font: var(--f-s2);
}

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

.dealer-list .hashlink {
    font: var(--f-s0);
}

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

.dealer-list > li:only-child {
    grid-column-start: 2;
    text-align: center;    
}

.sticky {
    position: sticky;
    -webkit-position: sticky;
    z-index: 10;
}

/* Table */
.tbl-grid {
    display: grid;
    grid-template-rows: 1fr;
    grid-template-columns: auto;
    width: 100%;
}

.tbl-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10px, 1fr));
    grid-template-rows: minmax(2rem, 1fr);    
    border-bottom: var(--b-grey3);
    grid-auto-flow: column;
    grid-auto-columns: 50%;
    font: var(--f-s1);    
}

.tbl-grid, .tbl-grid .tbl-row {
    container-type: inline-size;
}

.tbl-row.head {
    grid-template-rows: minmax(2rem, 1fr);    
    font: var(--f-s2);    
}

.tbl-row.head > div:not(.name) {
    max-width: 12rem;
    margin: 0;
}

.tbl-row.head > div {
    align-self: flex-start;
}

.tbl-row > .name {
    text-align: left;
}

.tbl-row .-bold {
    font: var(--f-s1-semi);
}

.tbl-grid.item-param {
    margin: var(--row-gap) 0 0;
}

.tbl-grid:not(.item-param) .tbl-row:last-child {
    border-bottom: none;
}

.tbl-grid.item-param .tbl-row:first-child {
    border-top: var(--b-grey3);
}

.tbl-row > div {
    padding: .75rem 0;
    text-align: center;
    align-self: center;
    justify-self: center;    
}

.tbl-row > .wrap {
    white-space: unset;
}

.tbl-row > .left, .tbl-row > .name {
    text-align: left;
    justify-self: flex-start;       
}

.tbl-row .price-group-fx > s {
    margin-top: -1.125rem;
}

.tbl-row.sticky {
    top: 0 !important;
    z-index: 20;
}

.tbl-row > .sticky {
    left: 0;
    top: unset !important;
}

.tbl-row .name.sticky {
	align-self: center;
	height: 100%;
	display: flex;
	align-items: center;	
}

.tbl-grid .sticky {
    background-color: var(--c-light-grey);
}

.tbl-grid .tbl-row.active, .tbl-grid .tbl-row.active > * {
    background-color: var(--c-white) !important;
}

.tbl-grid .tbl-row.active {
    margin: -1px -1rem 0;
    padding: 0 1rem;
    border-top: var(--b-grey3);
}

.tbl-row > .-span2 {
    grid-column: span 2;
}

.tbl-row > .-right {
    text-align: right;
    justify-self: flex-end;          
}

.tbl-row > .-nowrap {
   white-space: nowrap;
}

.price-ctrl-fx { 
    justify-content: flex-end;
}

.item-case .price-ctrl-fx { 
    margin-bottom: calc(var(--grid-gap) / 2);
}

.prod-list .price-ctrl-fx { 
    justify-content: flex-start;    
    margin: calc(var(--grid-gap) / 2) 0 0;
    align-items: flex-start;    
}

.item-case .price-group-fx {
    font: var(--f-h4);
    letter-spacing: 0.0125rem;
}

.tbl-grid .tbl-row div.price-ctrl-fx { 
    justify-self: flex-end;
    margin-right: 1px;
}

.tbl-grid .tbl-row.head div.price-ctrl-fx { 
    flex-flow: column;
}

.tbl-grid .tbl-row:not(.head) div.price-ctrl-fx { 
    white-space: nowrap;
}

.tbl-grid .price-ctrl-fx .btn { 
    height: 1.875rem;
    padding: 0 1.25rem;
    font: var(--f-s1-semi);
}

.tbl-grid +.tbl-grid {
    margin-top: var(--grid-gap);
}

.price-group-fx {
    flex-flow: column nowrap;
    align-items: flex-end;
}

.price-group-fx > s {
    color: var(--c-dark-grey);    
}

.price-group-fx > i span {
    text-transform: uppercase;
}

.price-group-fx .note {
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: -0.025rem;
}

.price-ctrl-fx > *+* {
    margin-left: 1.25rem;    
}
.price-ctrl-fx .btn {
    padding: 0 1.25rem;
}

.price-block-fx, .item-list .price-ctrl-fx {
    display: grid; 
    grid-template-columns: 1fr 1fr; 
    grid-template-rows: 1fr; 
    row-gap: calc(var(--grid-gap)/2);
    grid-template-areas: 
      "price-prompt price-group"
      ". price-btn"; 
    flex: 1;
}

.item-list .price-ctrl-fx {
    row-gap: calc(var(--grid-gap) / 2);
}

.price-block-fx .prompt, .item-list .price-ctrl-fx .prompt {
    grid-area: price-prompt;
    width: 100%;
    align-self: flex-end;    
    font: var(--f-s2);
    line-height: 1;
}

.price-block-fx .price-group-fx, .item-list .price-ctrl-fx .price-group-fx {
    grid-area: price-group;
    align-self: flex-end;
    justify-self: flex-end;
}

.price-block-fx .price-group-fx > s {
    padding-right: 2.875rem;
    display: inline-block;    
    font: var(--f-h5);
}

.price-block-fx .price-group-fx > i {
    font: var(--f-h3);
    line-height: 1;
    letter-spacing: -0.025rem;
}

.price-block-fx .btn {
    grid-area: price-btn;
    justify-self: flex-end;
    min-width: 10rem;
}

.sticker {
    background-color: var(--c-white);
    border: var(--b-active);
    border-radius: 0.125rem;
    background-color: var(--c-light-grey);
    letter-spacing: -0.025rem;
    text-transform: uppercase;
    padding: 0.25rem 0.5rem;
    width: fit-content;
    max-width: 8rem;
    z-index: 100;
}
 
.pic-frame .sticker {
    position: absolute;
    top: 0;
    right: 0;
}

.tbl-row .sticker {
    margin: 0.25rem 0 0 0.5rem;
}

@media only screen and (max-width: 1366px) {
	:root {	
		--wrap-pdd: 8vw;
	}	 
}

@media only screen and (max-width: 1280px) {
	:root {	
		--wrap-pdd: 5vw;
	}	
}

@media only screen and (max-width: 1160px) {
    html {
        font-size: 15px;  
           
    }	
	:root {	
		--wrap-pdd: 3vw;
	}	    
}

@media only screen and (min-width: 1800px) {
    html {
        font-size: 18px;    
    }

}

@container (min-width: 1024px) {
    .tbl-grid .tbl-row {
        grid-template-columns: calc(100% / 3 - var(--grid-gap) / 2) repeat(auto-fit, minmax(10px, 1fr));
    }
}

@container (max-width: 600px) {
    .tbl-grid  div.price-ctrl-fx {
        flex-flow: column;
        align-items: center;
    }
    .price-group-fx {
        padding-bottom: 0.5rem;
    }
    .price-ctrl-fx .btn {
        margin: 0 !important;
    }
}

/*
@container (max-width: 767px) {
    .tbl-grid .tbl-row {
        grid-template-columns: repeat(auto-fit, minmax(10px, 50vw));
    }
}
*/

/* Scroll */
[data-simplebar] {
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start;
}
  
.simplebar-wrapper {
    overflow: hidden;
    height: inherit;
    max-width: inherit;
    max-height: inherit;
    width: 100%;
}
  
.simplebar-mask {
    direction: inherit;
    position: absolute;
    overflow: hidden;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
    z-index: 0;
}
  
.simplebar-offset {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch;
}
  
.simplebar-content-wrapper {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%; 
    max-width: 100%; 
    max-height: 100%; 
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
  
.simplebar-content-wrapper::-webkit-scrollbar,
.simplebar-hide-scrollbar::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

.simplebar-content {
    height: 100%;
}
  
.simplebar-content:before,
.simplebar-content:after {
    content: ' ';
    display: table;
}
  
.simplebar-placeholder {
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events: none;
}
  
.simplebar-height-auto-observer-wrapper {
    box-sizing: inherit !important;
    height: 100%;
    width: 100%;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    flex-grow: inherit;
    flex-shrink: 0;
    flex-basis: 0;
}
  
.simplebar-height-auto-observer {
    box-sizing: inherit;
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 1000%;
    width: 1000%;
    min-height: 1px;
    min-width: 1px;
    overflow: hidden;
    pointer-events: none;
    z-index: -1;
}
  
.simplebar-track {
    z-index: 1;
    position: absolute;
    pointer-events: none;
    z-index: 100;
    background-color: transparent;
}
  
.sub-menu-fx.dtx-scroll {
    max-height: 54vh;
    padding-left: 2rem;
}
  
[data-simplebar].simplebar-dragging {
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
  
[data-simplebar].simplebar-dragging .simplebar-content {
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
  
[data-simplebar].simplebar-dragging .simplebar-track {
    pointer-events: all;
}
  
.simplebar-scrollbar {
    position: absolute;
    left: 0;
    right: 0;
    min-height: 10px;
    cursor: -webkit-grab;
    border: 0;
    opacity: 1;
    background-color: transparent;
}

.dtx-scroll.simplebar-scrollable-x:before  {
    content: '';
    display: inline-block;
    position: absolute;
    right: 0;
    bottom: 1px;
    width: 2rem;    
    height: 100%;
    z-index: 100;
    /*background-image: linear-gradient(90deg, rgba(249, 249, 247, 0) 0%, rgba(249, 249, 247, 1) 50%);  */
}
/*
.dtx-scroll.simplebar-scrollable-x .simplebar-track.simplebar-horizontal:after {
    content: '';
    display: inline-block;
    position: absolute;
    right: 0;
    right: -0.25rem;
    width: 1.75rem;
    height: 1.75rem;
    top: -0.875rem;
    z-index: 110;
    background-image: url(/css/icons.svg#u-left);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-color: var(--c-light-grey);
} 

.tbl-grid .dtx-scroll .simplebar-track.simplebar-horizontal:after {
    background-color: var(--c-white);   
}
*/

/*
.simplebar-horizontal .simplebar-scrollbar:before, 
.simplebar-horizontal .simplebar-scrollbar:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: -0.1825rem;
    height: 0.375rem;
    width: 0.375rem;
    z-index: 100;
    background-color:  var(--c-dark-grey);
    border-radius: 50%;
}
*/
.simplebar-horizontal .simplebar-scrollbar:before {
    left: 0;
}
.simplebar-horizontal .simplebar-scrollbar:after {
    right: 0;
}
  
.simplebar-track.simplebar-vertical {
    top: 0;
    bottom: 0;    
    left: 0;
    width: 1px;
    opacity: 0.9;
}
  
.simplebar-track.simplebar-horizontal {
    left: 0;
    right: 0;
    bottom: 0;    
    height: 1px;
}
  
.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    right: auto;
    left: 0;
    top: 0;
    bottom: 0;
    min-height: 0;
    min-width: 1px;
    width: auto;
}
  
  /* Rtl support */
[data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical {
    right: auto;
    left: 0;
}
  
.simplebar-dummy-scrollbar-size {
    direction: rtl;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    height: 500px;
    width: 500px;
    overflow-y: hidden;
    overflow-x: scroll;
    -ms-overflow-style: scrollbar !important;
}
  
.simplebar-dummy-scrollbar-size > div {
    width: 200%;
    height: 200%;
    margin: 10px 0;
}
  
.simplebar-hide-scrollbar {
    position: fixed;
    left: 0;
    visibility: hidden;
    overflow-y: scroll;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

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

.map > * {
    visibility: hidden;
}

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

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

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

.spin-loader {
	min-height: 50vh;
}

.spin-loader:after {
	content: "";
	display: inline-block;
	width: 6rem;
	height: 6rem;
    border: 1.5rem solid rgba(245,245,245,.2);
    border-radius: 50%;
    border-top-color: #f5f5f5;
	animation: spin 0.8s ease-in-out infinite;
	-webkit-animation: spin 1s ease-in-out infinite;
	z-index: 2000;
	position: absolute;
	top: calc(50% - 6rem);
	left: calc(50vw  - 3rem);
    margin: auto;
	z-index: 900;
}

.spin-loader .item-list {
	opacity: 0.05;
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}
@-webkit-keyframes spin {
	to {
		-webkit-transform: rotate(360deg);
	}
}

.active .spin-loader {
	display: none
}

select:invalid {
  color: #999; 
}

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

.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;
}

.form-case-fx {
    align-items: stretch;
}

.form-case-fx .btn {
    min-width: 15rem;
}

.form-case-fx .form-field + .btn {
    margin-top: 1.375rem;
}

.form-case-fx .form-group {
    flex: 1;
}

.form-case-fx > .form-group + .form-group {
    margin-left: calc(var(--grid-gap)/1.5);
}

.form-case-fx.-center {
    justify-content: center;  
}

.form-case-fx .split-fx > * {
    flex: 1;
}

.form-case-fx .split-fx > *+* {
    margin: 0 0 0 1rem;
}

.form-case-fx .split-fx input {
    min-width: 15rem;
}

.title + .form-case-fx {
    margin-top: calc(var(--row-gap)/1.5);
}

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

.order-layout + section {
    margin-top: var(--row-gap);
}

.form-group {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
}

.form-group .state-submit {
    display: flex;
    flex-flow: column nowrap;
    flex: 1;
}

.form .state-result {
    display: none;
}

.form.response .state-submit {
    display: none;
}

.form.response .state-result {
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
}

.state-result .text {
    padding: var(--layout-gap) var(--grid-gap);
    text-align: center;
    font: var(--f-s2);
}

.form label .msg {
    display: inline-block;
    padding-left: 0.25rem;    
    font: var(--f-s3);
}

.form label .msg.active {    
    color: var(--c-active);
}

.form label .msg:not(:empty):before {
    content: '\2014';
    display: inline-block;   
    padding: 0 0.25rem;    
}

.form-group.stretch {
    justify-content: space-between;
}

.form-group.stretch .state-submit {
    justify-content: space-between;
}

.form-group.bottom, .form-group.bottom .state-submit {
    justify-content: flex-end;
}

.state-submit .content {
    margin-bottom: 1.75rem;
}

.form-group label:nth-child(n+2) {
    margin-top: 0.75rem;
}

.form-group.stretch .form-field,  .form-field.stretch {
    display: flex;
    flex-flow: column nowrap;
}

.form-field.stretch {
    height: 100%;
    flex: 1;
}

.form-field.short {
    margin-top: 1.75rem;
}

.form-group.stretch .form-field textarea, .form-field.stretch textarea {
    flex: 1;
}

.form-field + .form-field {
    margin-top: 1rem;
}

.form-field-fx .form-field {
    margin-top: 1rem;
    flex: 1;
}

.form-field-fx .form-field + .form-field {
    margin-left: 1.5rem;
}

.form-field label .prompt {
    display: inline-block;
    font: var(--f-s3);
}

.form-field-prompt {
    display: block;
    padding-bottom: 0.5rem;        
    font: var(--f-s3);
}

.form-field-prompt.req:after {
    content: '\002A';
    display: inline-block;
    padding-left: 0.125rem;
    font: var(--f-s4);
    color: var(--c-active);
}

.form-field a {
    font-weight: 500;
}

.line-fx {
    list-style: none;
}

[data-block] {
    transform: scaleY(1);
    transform-origin: top;
    height: auto;
    opacity: 1;
    transition: 0.5s ease-in-out;     
}

[data-block].hidden {
    opacity: 0;
    height: 0;
    margin: 0;
    padding: 0;    
    transform: scaleY(0);   
    transition: 0.5s ease-in-out;     
}  

[data-block].hidden > * {
    display: none;
}

.chat-layout textarea {
    height: 12rem;
}

.chat-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: none;
    padding: 0.25rem;
    z-index: 10;
}

.chat-text > div {
    background-color: var(--c-light-grey);
    border-bottom: var(--b-grey);
    height: 8rem;
    margin-right: 1px;
    font: var(--f-s3);
    padding: 0.25rem 0.5rem;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125);
}

.chat-layout.active .chat-text {
    display: block;  
}

.chat-text.content p {
    margin-bottom: 0.5rem;
}

.chat-layout.active textarea {
    padding-top: 8.5rem;
    box-shadow: 0 -2px 3px rgba(0, 0, 0, 0.125) inset;
}

.chat-layout .simplebar-track.simplebar-vertical {
    left: unset;
    right: 0;
}

.form .submit.active {
    border: none;
}

.form .submit.active:after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(-90deg, rgba(255, 255, 255, 0.0) 0%, rgba(255, 255, 255, 0.7) 20%, rgba(255, 255, 255, 0) 50%);
    background-size: 200% 100%;
    animation: gradient 2s ease infinite;
}

.form-switch {
    display: flex;
    flex-flow: row wrap;
    align-items:  flex-start;
    justify-content: flex-start;
    margin-bottom: calc(var(--grid-gap)/1.5);
}

.form-switch .line-fx { 
    font: var(--f-h6);
    margin: 0.375rem 0 0 calc(var(--grid-gap)/1.5);
    flex-wrap: nowrap;
}

.line-fx .active {
    color: var(--c-active);
}

.line-fx li+li {
    margin-left: calc(var(--grid-gap)/2);
}

.switch-ctrl {
    cursor: pointer;
}

.switch-ctrl:hover {
    color: var(--c-active);
}

.cmp-layout .h1 {
    z-index: 1;
    position: absolute;
    top: var(--row-gap);
    left: 50%;
    transform: translateX(-50%);
    max-width: 40rem;    
    font: var(--f-h1);
    line-height: 120%;    
    text-align: center;
    color: #fff;    
}

.cmp-rating-mark .item {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1rem;   
    align-items: center;      
}

.cmp-rating-mark .item+.item {
    margin-top: 1rem;
}

.cmp-rating-mark .title {
    font-size: clamp(12px, 1cqw, 1rem); 
}

.cmp-rating-mark .mark {
    display: grid;
    grid-template-columns: repeat(12, minmax(1rem, 1fr));
    column-gap: 0.625rem;
    justify-content: flex-end;  

}

.cmp-rating-mark .mark span {
    display: block;
    width: 1rem;
    height: 1rem;
    background-color: var(--c-white);    
    border: var(--b-white);
    border-radius: 50%;
}

.cmp-rating-mark .mark span.grey {
    border: var(--b-grey2);
}

.cmp-rating-mark .mark span.active {
    border: var(--b-active);
    background-color: var(--c-active);
}

.cmp-rating-desc {
    display: grid;    
}
 
.cmp-rating-desc dl {
    opacity: 0;
    grid-column: 1;
    grid-row: 1; 
}

.cmp-rating-desc dl.active {
    opacity: 1;
}

.cmp-rating-desc dt {
    font: var(--f-h3);
    margin-bottom: calc(var(--row-gap) / 2);
}

.more-link, .less-link {
    display: block;
    margin-top: 1rem;
    font: var(--f-s1-semi);
    color: var(--c-active);
    text-decoration: none !important;
}

.feat-case {
    margin: var(--row-gap) 0;
    row-gap: calc(var(--row-gap) / 2);
}

.feat-case .icon {
    width: 2rem;
    height: 2rem;
}

.feat-case .icon img {
    max-width: 100%;
    max-height: 100%;
}

.feat-case .hdr {
    margin-top: 0.75rem;
    font: var(--f-s1-bold);
}

.feat-case .note {
    font: var(--f-s3);
    margin-top: 0.5rem;
}

.model-layout {
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-template-rows: 1fr;
    grid-template-areas: 
        "model-pic model-case"
        "model-size model-tbl";
    justify-content: space-between;
    column-gap: var(--grid-gap);
    margin-bottom: var(--row-gap);   
    row-gap: var(--row-gap);
}

.model-layout .model-pic {
    grid-area: model-pic;
}

.model-layout .item-case {
    grid-area: model-case;
}

.model-layout .model-tbl {
    grid-area: model-tbl;
}

.model-layout .model-tbl .tbl-grid {
    background-color: var(--c-light-grey);
    padding: 0.5rem 1rem 0;
}

.model-layout .model-pic .pic-frame {
    padding-top: 0;
    height: 100%;
}

.model-layout .model-pic .pic-frame picture {
    align-items: flex-start;
}

.model-layout .model-pic .pic-frame img {
    height: 100%;
}

.model-layout.-short {
    grid-template-areas: "model-size model-tbl";
}

.feat-case.-short {
    margin: calc(var(--row-gap)/1.5) 0 0;
}

.tile-case .feat-case {
    margin: calc(var(--row-gap)/1.5) 0;
}

.feat-case.-short > div {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;  
}

.feat-case.-short .hdr {
    margin: 0 0 0 0.75rem;
    font: var(--f-s3);
}

.model-layout .item-case {
    max-width: 80%;
}

/* SIZES */
.model-size {
    grid-area: model-size;
    width: 20rem;
    justify-self: flex-end;    
}

.ctl-size {
    margin-top: var(--row-gap);
    list-style: none;
}

.ctl-size a {
    display: block;
}

.ctl-size span {
    display: block;
    height: 36px;
    line-height: 48px;
    width: 100%;
    position: absolute;
    top: 0;
    right: 0;
    text-align: center;
    /*color: #32556B;*/
    color: #FFFFFF;
    text-shadow: -1px -1px 0 #555555;
    font-size: 12px;
    background: -webkit-linear-gradient(-45deg, rgba(234,235,235, 1) 0%, rgba(251,251,252, 1) 30%, rgba(254,254,255, 1) 100%);
    background: -moz-linear-gradient(-45deg, rgba(234,235,235, 1) 0%, rgba(251,251,252, 1) 30%, rgba(254,254,255, 1) 100%); 
    background: -ms-linear-gradient(-45deg, rgba(234,235,235, 1) 0%, rgba(251,251,252, 1) 30%, rgba(254,254,255, 1) 100%);
    background: linear-gradient(-45deg, rgba(234,235,235, 1) 0%, rgba(251,251,252, 1) 30%, rgba(254,254,255, 1) 100%);
    border: 1px solid #DDDDDD;
    border-color: #DDDDDD #AAAAAA #AAAAAA #DDDDDD;
    -moz-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.3);
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
}

.ctl-size span.height-300 {
    height: 60px;
    line-height: 94px;
}

.ctl-size span.height-400 {
    height: 74px;
    line-height: 124px;
}

.ctl-size span.height-500  {
    height: 88px;
    line-height: 150px;
}

.ctl-size span.height-600  {
    height: 110px;
    line-height: 194px;
}

.ctl-size span:before {
    display: block;
    content: "";
    position: absolute;
    height: 1px;
    left: 2px;
    right: 2px;
    top: 5px;
    border: 1px solid #DDDDDD;
    border-color:  #BBBBBB #DDDDDD #DDDDDD #BBBBBB;
}

.ctl-size span:after {
    display: block;
    content: "";
    position: absolute;
    height: 1px;
    left: 2px;
    right: 2px;
    top: 10px;
    border: 1px solid #DDDDDD;
    border-color:  #BBBBBB #DDDDDD #DDDDDD #BBBBBB;
}

.ctl-size li:nth-child(1) span {
    top: 0;
    z-index: 500;
}

.ctl-size li:nth-child(2) span {
    top: 34px;
    z-index: 480;
}

.ctl-size li:nth-child(3) span {
    top: 64px;
    z-index: 460;
}

.ctl-size li:nth-child(4) span {
    top: 94px;
    z-index: 440;
}

.ctl-size li:nth-child(5) span {
    top: 124px;
    z-index: 420;
}

.ctl-size li:nth-child(6) span {
    top: 154px;
    z-index: 400;
}

.ctl-size li:nth-child(7) span {
    top: 184px;
    z-index: 380;
}

.ctl-size span.size-425 {
    width: 28%;
}

.ctl-size span.size-525 {
    width: 37%;
}

.ctl-size span.size-625 {
    width: 48%;
}

.ctl-size span.size-675 {
    width: 50%;
}

.ctl-size span.size-725 {
    width: 59%;
}

.ctl-size span.size-775 {
    width: 43%;
}

.ctl-size span.size-825 {
    width: 62%;
}

.ctl-size span.size-925 {
    width: 77%;
}

.ctl-size span.size-975 {
    width: 75%;
}

.ctl-size span.size-1025 {
    width: 89%;
}

.ctl-size span.size-1075 {
    width: 60%;
}

.ctl-size span.size-1325 {
    width: 100%;
}

.ctl-size span.size-1375 {
    width: 77%;
}

.ctl-size span.size-1575 {
    width: 89%;
}

.ctl-size span.size-1775 {
    width: 100%;
}

.ctl-size li span.active {
    z-index: 600;
}

.ctl-size span.shadow {
    background: #FFFFFF;
    border: 1px solid #EEEEEE;
    -moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0);
    -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0);
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0);
    font-weight: normal;
    color: #999999;
    text-shadow: none;
}

.ctl-size span.shadow:before {
    border: 1px solid #EEEEEE;
}

.ctl-size span.shadow:after {
    border: 1px solid #EEEEEE;
}

.ctl-size span.current {
    border: var(--b-active);
}

.prod-list .item {
    display: grid !important;
    grid-template-columns: 1fr 2fr;
    column-gap: var(--grid-gap);
}


/***********************/
.hdr-layout {
    z-index: 1;
}
        
.hdr-layout + .main-layout, .main-layout:not(:empty):not(.-grey-bg) +.main-layout:not(.-grey-bg) {
    padding-top: 0;
}

.main-layout {
	padding-top: var(--row-gap);
	padding-bottom: calc(var(--row-gap) + 1rem);    
}

.main-layout:empty {
	padding: 0;
}

.split-layout + .main-layout:empty {
    padding-top: calc(var(--row-gap) + 1rem);    
}

.hdr-layout {
	padding-top: calc(var(--row-gap) / 2);
	padding-bottom: var(--row-gap);    
}

.form + .news-list {
    padding-top: var(--row-gap);    
}

.-padd-top {
    padding-top: calc(var(--row-gap) + 1rem);    
}

header, 
.main-layout, 
.hdr-layout, 
.grey-line-layout, 
.select-layout, 
.item-layout,
.cat-sect-layout,
.cat-group-layout,
.main-banner .slide-title,
footer {
	padding-left: var(--wrap-pdd);
	padding-right: var(--wrap-pdd);   
}

.hdr-layout.-shift {
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-template-rows: 1fr;
    grid-template-areas: ". path"        
                         ". hdr";
    justify-content: space-between;
    column-gap: var(--grid-gap);
}

.hdr-layout.-shift .path {
    grid-area: path; 
    justify-content: flex-start;
}

.hdr-layout.-shift .hdr-block {
    grid-area: hdr; 
    flex-flow: row;
    justify-content: flex-start;    
}

.hdr-block {
    display: flex;
    flex-flow: column;
    align-items: center;    
}

.main-layout .hdr-block {
    padding-bottom: var(--row-gap);
}

.hdr-block > * {
    text-align: center;
}

.hdr-block > h2, .hdr-block > h3 {
    width: 80%;
}

.hdr-block .btn {
    margin-top: calc(var(--row-gap) / 2);
}

.hdr-layout .hdr-block:first-child {
    padding-top: var(--row-gap);
}

.archive-block {
    font: var(--f-s1);
    margin: calc(var(--row-gap)/2) 0;
    background-color: var(--c-light-grey);
    padding: 1rem;
    width: fit-content;
}

.d3-box { 
    position: relative;
    overflow: hidden;
    cursor: move;
    margin: 0 auto;
}

.thumb-slide.d3:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('/css/360.svg');
    background-repeat: no-repeat;
    background-size: 50%;
    background-position: center;
    z-index: 1;
    opacity: 0.9;
    background-color: #fff;    
}