@charset "UTF-8";
@font-face {
    font-family: 'RFDewi';
    src: url('/css/font/RFDewiExpanded-Regular.eot');
    src: local('RF Dewi Expanded Regular'), local('RFDewiExpanded-Regular'),
        url('/css/font/RFDewiExpanded-Regular.eot?#iefix') format('embedded-opentype'),
        url('/css/font/RFDewiExpanded-Regular.woff2') format('woff2'),
        url('/css/font/RFDewiExpanded-Regular.woff') format('woff'),
        url('/css/font/RFDewiExpanded-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root {
	/* Colors */
    --c-main: #505C68;
	--c-white: #ffffff;
	--c-black: #000000;
	--c-grey: #E8EBED;	
	--c-grey-light: #f6f8fa;
    --c-grey-light2: #C5CCD3; 
    --c-grey-dark: #A3AEB8; 
    --c-grey-dark2: #758595; 
    --c-grey-dark3: #758595; 
    --c-black-icon: #505C68;
    /*--c-hover: #CF005D;
    --c-hover: #ec008c;
    */
    --c-hover: #BA204C;

	/* Fonts */
	--f-base: 400 1rem "Inter", sans-serif;
	--f-s0: 400 1.125rem/140% "Inter", sans-serif;		    
	--f-s1: 400 1rem/150% "Inter", sans-serif;		
	--f-s2: 400 0.9375rem/150% "Inter", sans-serif;
    --f-s3: 400 0.875rem/150% "Inter", sans-serif;	 	
	--f-s3-bold: 600 0.875rem "Inter", sans-serif;		    
    --f-s4: 400 0.8125rem/150% "Inter", sans-serif;	  
    --f-s5: 500 0.75rem/130% "Inter", sans-serif;	           

	--f-h0: 400 3rem/130% "RFDewi", sans-serif;	
	--f-h1: 400 2.25rem/130% "RFDewi", sans-serif;	
    --f-h01: 400 2rem/130% "RFDewi", sans-serif;    	       
	--f-h2: 400 1.75rem/140% "RFDewi", sans-serif;
	--f-h02: 400 1.5rem/140% "RFDewi", sans-serif;    
	--f-h3: 400 1.25rem/150% "RFDewi", sans-serif;
	--f-h4: 400 1.125rem/150% "RFDewi", sans-serif;
	--f-h5: 400 1rem/130% "RFDewi", sans-serif;
	--f-h6: 400 0.875rem/130% "RFDewi", sans-serif;    
	--f-h7: 600 0.875rem "RFDewi", sans-serif;    
	--f-h8: 400 0.75rem "RFDewi", sans-serif;

	--b-black: 1px solid var(--c-main);
	--b-grey: 1px solid var(--c-grey-dark);
    --b-light: 1px solid var(--c-grey);
    --b-hover: 1px solid var(--c-hover);
    --b-white: 2px solid var(--c-white);

    --c-rgba-1: rgb(186, 32, 76);
    --c-rgba-06: rgba(186, 32, 76, 0.6);

    --g-line1: linear-gradient(135deg,  rgba(232, 235, 237, 1) 0%, var(--c-rgba-06) 100%);
    --g-line2: linear-gradient(135deg, rgba(232, 235, 237, 0.05) 0%, var(--c-rgba-1) 100%);
    --g-line3: linear-gradient(135deg, var(--c-rgba-06) 0%, var(--c-rgba-1) 100%);
    --g-line4: linear-gradient(135deg, rgba(232, 235, 237, 1) 0%, var(--c-rgba-1) 100%);    
    --g-grey: linear-gradient(135deg, rgba(225, 232, 236, 0.3) 10%, rgba(197, 210, 218, 0.5) 80%);
    --g-grey2: linear-gradient(135deg, rgba(117, 133, 149, 50%) 10%, rgba(117, 133, 149, 50%) 80%);
    --bg-grey: linear-gradient(180deg, rgba(49, 59, 70, 0.7) 0%, rgba(49, 59, 70, 0.3) 100%);

	--wrap-pdd: 5vw;
    --grid-gap: 3rem;
    --layout-gap: 4rem;
	--header-height: 5rem; 
    --top-layout-height: 100vh; 
    --hdr-gap: 2rem; 
}

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

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-grid {
	display: grid;
	grid-template-rows: 1fr auto;
	grid-template-columns: 100%;
	min-height: var(--top-layout-height);
}

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

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

[class*="-popup"] {
	border: var(--b-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(--c-grey);
}
[class*="-popup"] .close:hover svg {
	fill: var(--c-black);
}

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

.content.col-layout, .content > .col-layout {
	font: var(--f-s2);
}

.content a {
	font-weight: 500;
}

.content p:not(:last-child) {
	margin-bottom: 1.25rem;
}

.content > p:last-child {
	margin-bottom: 0;
}

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

.content ul:not([class]) li li:first-of-type, .content ol:not([class]) li li:first-of-type {
	margin-top: 1.25rem;
}

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

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

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

.content ul:not([class]) li:before {
    position: absolute;
    top: 0.5rem;
    left: 0;
    content: "";
    background-image: url('/css/icons.svg?2025#u-romb');
    background-repeat: no-repeat;
    background-position: center;
    width: 0.5rem;
    height: 0.5rem;
    font-weight: 500;
}

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

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

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

.content sub {
    vertical-align: sub;
    font-size: 80%;
}

.content .small-grey {
    font: var(--f-s3);
    color: var(--c-grey-dark2);
}

.content p+h2,  .content ul+h2,  .content ol+h2 {
	margin-top: 1rem;
}

.content p+h3, .content ul+h3, .content ol+h3 {
	margin-top: 1rem;
}

.content > h2,  .content > h3 {
	max-width: 90%;
}

.content h2+h3, .content h2+h4 {
    margin-top: 1rem;
}

.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-grey-light);
} 
 
input:-internal-autofill-selected {
    color: #000;
}

::-webkit-input-placeholder { 
    color: var(--c-grey-dark);
    font: var(--f-s3);
}

::-moz-placeholder { 
	color: var(--c-grey-dark);
    font: var(--f-s3);
}

:-ms-input-placeholder { 
	color: var(--c-grey-dark);
    font: var(--f-s3);
}

input.error, textarea.error {
    border: var(--b-hover) !important;
	color: var(--c-hover) !important;
}

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

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

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

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

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

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

select {
    text-indent: 0.01px;
    padding-right: 2rem;
    background: #fff url('/css/icons.svg?2025#u-arrow-down') no-repeat;
    background-size: 0.75rem;
    background-position: right 0.75rem center;
    cursor: pointer;
    height: 2.5em;
    text-align: left;
    color: var(--c-main);
}
 
header {
	width: 100%;
	display: grid; 
	grid-template-columns: 1fr; 
	grid-template-rows: var(--header-height);
	grid-template-areas: 
		"hdr-main-panel";
	z-index: 1000;
    position: fixed;
}

.container {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;    
}

.hdr-main-layout {
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: 1fr;
    grid-template-areas: "hdr-logo-fx hdr-menu-fx hdr-tools-fx";
    justify-content: space-between;
    padding-left: var(--wrap-pdd);
    padding-right: var(--wrap-pdd);    
    z-index: 1000;
}

.search-mode .hdr-main-layout {
    grid-template-columns: 1fr 0 2fr;
}

.phone-mode .hdr-main-layout {
    grid-template-columns: auto 0 auto;
}

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

.logo {
    background-image: url('/img/logo-dantex.svg?2025');
    background-size: contain;
    background-position: 50%;
	background-repeat: no-repeat;	
    width: 13rem;
    height: var(--header-height);
}

header .hdr-tools-fx {
    grid-area: hdr-tools-fx;
    flex-wrap: nowrap;
    justify-content: flex-end;
}

.search-mode .hdr-tools-fx {
    margin-left: -1rem;
}

.hdr-main-layout .icon {
    stroke: var(--c-white);
    stroke-width: 1.5px;
    fill: none;
}

.hdr-main-layout .icon:hover {
    stroke: var(--c-hover);
}

header:not(.active) .icon:hover {
    stroke-width: 2.25px;
    stroke: var(--c-white);
}

.main-layout {
    background-color: #fff;
    z-index: 100;
}

.main-layout:first-of-type {
    padding-top: var(--header-height);
}

.hdr-tools-fx  > div {
    display: flex;
    align-items: center;
}

.hdr-tools-fx  > *+* {
	margin-left: 2rem;
}

.search-link-fx	> *+* {
	margin-left: 0.5rem;
	font: var(--f-s3);
}

.hdr-main-panel {
    grid-area: hdr-main-panel;
    background: transparent;    
    color: var(--c-white);  
    transition: background-color 300ms ease-out;   
}

.hdr-search-fx .block-fx {
    width: 0;
    overflow: hidden;
    flex-wrap: nowrap;
}

.hdr-tools-fx .icon.close {
    width: 0.875rem;
    height: 0.875rem;
    stroke-width: 1.5px;
    margin-left: 1rem;
}

.hdr-tools-fx .icon.menu {
    display: none;
}

.search-mode .hdr-search-fx {
    flex: 1;
    justify-content: flex-end;
    flex-wrap: nowrap;
}

.search-mode .hdr-search-fx .block-fx {
    width: 100%;
    padding-left: 0.75rem;
    transition: width 500ms ease-out;
}

.hdr-search-fx .block-fx input {
    background-color: transparent;
    border: 0;
    font: var(--f-s3);
    color: var(--c-white);
    padding: 0.375rem 0.5rem;
    background: var(--c-grey-light);
    min-height: 1.5rem;
}

.hdr-phone-fx {
    justify-content: flex-end;
}

.hdr-phone-fx .block-fx {
    width: 9.25rem;
    font: var(--f-s3);  
    flex-wrap: nowrap;
    height: var(--header-height);
    overflow: hidden;
    justify-content: flex-start;
}	

.hdr-phone-fx a:hover {
    color: var(--c-white);
    text-shadow: 0.25px 0px 0px #fff, -0.25px 0px 0px #fff;
}

.hdr-phone-fx a:nth-child(n+2), .hdr-phone-fx span {
    display: none;
}

header.active .hdr-phone-fx a:hover {
    color: var(--c-hover);
    text-shadow: none;
}

.hdr-phone-fx .icon.close {
    padding: 0;
    margin-left: 1.5rem;
}

.phone-mode .hdr-phone-fx {
    flex-wrap: nowrap;
    flex: 1;
}

.phone-mode .hdr-phone-fx .block-fx {
    width: 100%;
    transition: width 500ms ease-out;
    white-space: nowrap;
}

.phone-mode .hdr-phone-fx a, .phone-mode .hdr-phone-fx span {
    margin: 0 1.5rem 0 0;
    display: block;
}

.phone-mode .hdr-phone-fx span {
    margin: 0 2rem 0 0;
}

header .logo {
    background-image: url('/img/logo-dantex-white.svg?2025');
}

footer .logo {
    background-image: url('/img/logo-dantex-m.svg?2025');
}

header.active .hdr-main-panel, .search-mode .hdr-main-panel, .menu-mode .hdr-main-panel {
    background: var(--c-white);
    color: var(--c-main);
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .2);
}

header.active .hdr-main-layout .icon, .search-mode .hdr-main-layout .icon, .menu-mode .hdr-main-layout .icon {
    stroke: var(--c-main);
}

header.active .hdr-main-layout .icon:hover, .search-mode .hdr-main-layout .icon:hover, .menu-mode .hdr-main-layout .icon:hover {
    stroke: var(--c-hover);
}

header.active .logo, .search-mode .logo, .menu-mode .logo {
    background-image: url('/img/logo-dantex.svg?2025');
}

header.active .hdr-menu-fx li.active {
    color: var(--c-hover);
}

header.active .hdr-search-fx .block-fx input, .search-mode .hdr-search-fx .block-fx input {
    /*
    border-bottom: 1.25px solid var(--c-main); */
   
    color: var(--c-main);
}

header.active input:focus, 
header.active input:-webkit-autofill,
header.active input:-webkit-autofill:hover,
header.active input:-webkit-autofill:focus,
header.active input:-webkit-autofill:active {
    /*
    border: 0;
    border-bottom: 1px solid var(--c-grey-dark2);
    */
    color: var(--c-main);
    -webkit-text-fill-color: var(--c-main);
    transition: background-color 5000s ease-in-out 0s !important;
}

body.mutted .page-grid:after, body.search-mode .page-grid:after, body.menu-mode .page-grid:after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    background: rgba(22,32,42, 70%);
    z-index: 800;
    pointer-events: none;
}

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

.list-fx {
    list-style: none;
    flex-flow: column nowrap;
    justify-content: flex-start;    
    align-items: flex-start;
}

.hdr-menu-fx .list-fx {
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
}

*:not(ul).amark span:after, .list-fx.amark li a span:after {
    content: "";
    width: 0.5rem;
    height: 0.5rem;
    padding-left: 1.25rem;
    margin-top: -0.25rem;
	background-image: url('/css/icons.svg?2025#u-right');
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    vertical-align: middle;
    opacity: 0;
}

*.amark:hover span:after, .list-fx.amark li.active a span:after, .list-fx.amark li a:hover span:after {
    opacity: 1;
    background-image: url('/css/icons.svg?2025#u-right-active');
}

.list-fx.amark li a span, .amark > span, .amark > h2 > span {
    white-space: nowrap;
}

.cmark {
    display: inline-block;
    padding-right: 1.25rem;
}

.cmark:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0.25rem;
    right: 0;
    width: 1rem;
    height: 1rem;
}

.vmark:before {
    content: "";
    width: 2px;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    opacity: 0.2;
    background: var(--g-line1);
    filter: brightness(1.1);
}

.vmark.active:before {
    opacity: 1;
}

.list-fx.vmark li, .vmark > .list-fx {
    padding-left: 1.5rem;
}

.list-fx.vmark li.active:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 2px;
   background: var(--g-line1);
}

.list-fx.vmark li.active {
    color: var(--c-hover);
}

.hdr-menu-fx {
	grid-area: hdr-menu-fx;
    overflow: hidden;
    padding: 0 5%;
}

.hdr-menu-fx .list-fx {
    font: var(--f-s3);
	justify-content: space-between;
	width: 100%;
    height: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.hdr-menu-fx .list-fx li {
    display: flex;
    align-items: center;        
	height: 100%;	
    white-space: nowrap;
}

.hdr-menu-fx .list-fx li:last-child {
    padding-right: 0;
}

.hdr-menu-fx .list-fx li:after {
    display: none;
}

.hdr-menu-fx .list-fx li[data-panel]:after {
    content: "";
    display: block;
    position: unset;
    width: 1rem;
    height: 1.125rem;
    margin: 0.125rem 0 0 0.25rem;
}

.hdr-menu-fx .list-fx li[data-panel]:after, .panel-switcher-fx .list-fx li:after {
    transform: rotate(90deg);
}

.panel-switcher-fx .list-fx li:after {
    top: calc(50% - 0.5rem);
}

.hdr-menu-fx .list-fx li[data-panel].active:after, .panel-switcher-fx .list-fx li.active:after {
    transform: rotate(-90deg);
}

.hdr-menu-fx .list-fx a {
    display: flex;
    align-items: center;
	height: 100%;	  
}

.hdr-menu-fx .list-fx a:hover {
    color: var(--c-white);
    text-shadow: 0.25px 0px 0px #fff, -0.25px 0px 0px #fff;
}

header.active .hdr-menu-fx .list-fx a:hover {
    color: var(--c-hover); 
}

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

.sub-layout.path {
    padding-top: calc(var(--layout-gap)/2);
    padding-bottom: 0.75rem;
}

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

.path .list-fx {
    flex-flow: row nowrap;
    font: var(--f-s4);
}

.path .list-fx span {
    color: var(--c-grey-dark);
}

.path .cmark:after {
    top: -0.0625rem;
}
.path .list-fx li {
    white-space: nowrap;
    line-height: 1;
}

.path .list-fx li+ li {
    padding-left: 0.25rem;
}

.path h1 {
    margin: calc(var(--grid-gap)/3) 0 calc(var(--grid-gap)/1.5);
    font: var(--f-h1);
}

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

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

.path .simplebar-vertical {
    visibility: hidden !important;
}

.path .simplebar-track.simplebar-horizontal {
    left: calc(var(--wrap-pdd)*-1);
    right: calc(var(--wrap-pdd)*-1);;
}

.h0 {
	font: var(--f-h0);
}

h1, .h1 {
	font: var(--f-h1);
	margin-bottom: var(--hdr-gap);
    max-width: 60%;
    display: block;
}

.h01 {
	font: var(--f-h01);
	margin-bottom: 1.5rem;
    display: block;
}

h2, .h2 {
	font: var(--f-h2);
	margin-bottom: 1.5rem;
}

.h02 {
	font: var(--f-h02);
	margin-bottom: 1.5rem;
    display: block;
}

h3, .h3 {
	font: var(--f-h3);
	margin-bottom: 1.25rem;
}

h4, .h4 {
	font: var(--f-h4); 
	margin-bottom: 0.75rem;
}

h5, .h5 {
	font: var(--f-h5);
	margin-bottom: 0.5rem;
}

h6, .h6 {
	font: var(--f-h6);
	margin-bottom: 0.5rem;
}

.h0, h1, .h1, h2, .h2, .h01, .h02, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .sect-title, .item-title {
    letter-spacing: -0.025rem;  
    text-transform: uppercase;
}

:is(h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, .sub-title ).center {
	text-align: center;
}

.h0 h1 {
    font: inherit;
}

.pic {
	text-align: center;
}

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

.top-layout {
    height: var(--top-layout-height);
}

.top-layout .top-slide {
    display: flex;
    overflow: hidden;
    height: var(--top-layout-height);
}

.top-layout.top-main, .top-layout.top-main .top-slide,
.top-intro, .top-intro .top-slide {
    height: 100vh;
}

.top-layout.top-main .title {
    max-width: 50%;
}

.top-slide h1 {
    max-width: unset;
    margin: 0;
    font: var(--f-h0);
}

.top-slide .h01 { 
    font: var(--f-h1);
}

.top-slide .h2, .top-slide .h3 { 
    font: var(--f-h01);
}

.top-slide .h4 { 
    font: var(--f-h2);
}
 
.top-main .top-slide h1 {
    font: var(--f-h0);
}

.top-main .top-slide h1.h4 {
    font: var(--f-h2);
}

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

.top-layout .io-target {
    position: absolute;
    top: var(--header-height);
}

.top-layout.hide-title .sub-menu-fx, .top-layout.hide-title .title, .top-layout.hide-uplink .up-link-fx  {
    opacity: 0;
    -webkit-transition: opacity 0.5s linear;
    -moz-transition: opacity 0.5s linear;
    transition: opacity 0.5s linear;
}

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

.top-slide.white {
    color: var(--c-white);
    /*
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    */
}

.top-slide .bg.grey:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    background: var(--bg-grey);
}

.top-slide .container {
    padding-top: 25vh; 
    padding-left: var(--wrap-pdd);
    padding-right: var(--wrap-pdd);      
}

.top-slide .container .split-fx {
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    height: 100%;
}

.top-slide .split-fx .note {
    padding: 0 0 0.5rem;
    font: var(--f-h5);
    text-transform: uppercase;
}

.top-slide .h1 {
    color: inherit;
    text-transform: uppercase;
    padding: 0;
}

.top-slide .split-fx .title {
    margin: 0;
    padding: 0 1rem 0 0;  
    max-width: 60%;
    word-break: break-word;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;    
}

.top-slide .h1+.note {
    font: var(--f-h5);
    letter-spacing: -0.025rem;
    text-transform: uppercase;
    padding: 1rem 0 0;
}

.top-slide .sect-item-fx .item-txt {
    color: var(--c-white);
    width: 100%;
}

.sect-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(2rem, 1fr));
    grid-auto-rows: 1fr;
    grid-auto-flow: row dense;
    /*
    column-gap: var(--grid-gap);
    */
    row-gap: var(--layout-gap);
    z-index: 0;
}

.sect-list:not(.toplist) .sect-title {
    width: 100%;
    text-align: center;
    min-height: 2.5rem;
    margin-bottom: 1rem;       
}

.sect-list:not(.toplist) .sect-item-fx > * {
    padding: 0 calc(var(--grid-gap)/1.5);
}

.sect-case .sect-title {
    font: var(--f-h4);
}

.toplist {
    grid-template-columns: repeat(2, minmax(2rem, 1fr));
}

.top-slide .sect-list .sect-item-fx {
    display: grid;
    grid-template-columns: 2fr 3fr;
    grid-template-rows: 3.5rem 1fr;
    padding: 2rem;
    background: var(--g-grey2);
    backdrop-filter: blur(10px);
    border-radius: 0.5rem;    
}

.top-slide .sect-list .sect-item-fx .sect-title {
    grid-column-start: 2;
    grid-row-start: 1;
    font: var(--f-h2);
    margin: 0;
    padding: 0;
    text-align: left;    
}

.top-slide .sect-list .sect-item-fx .item-txt {
    grid-column-start: 2;
    grid-row-start: 2;
    padding: 0;
    max-width: 100%;    
}

.top-slide .sect-list .sect-item-fx .sect-pic {
    grid-row: span 2 / span 2;
}

.top-slide .sect-list .sect-item-fx .sect-pic .pic-frame {
    padding-top: 70%;
}

.top-slide .sect-list .sect-item-fx .sect-pic .pic-frame picture { 
    transform: none;
}

.top-slide .sect-list {
    position: absolute;
    bottom: var(--grid-gap);
    column-gap: var(--grid-gap);
}

.top-slide .sect-list .vmark:before {
    display: none;
}

.toplist .sect-title {
    font: var(--f-h01);
    margin: 0 0 1rem;
    padding: 0;
    text-align: left;
}

.top-slide .sect-list .sect-item-fx:hover .sect-title {
	color: var(--c-white);
	font-weight: 600;
}

.top-slide .toplist .sect-pic .pic-frame picture {
    width: 100%;
    padding: 0;
}

.sub-menu-fx {
    margin-top: 0.75rem;
} 

.sub-menu-fx .list-fx {
    font: var(--f-h5);
    letter-spacing: -0.025rem;
    text-transform: uppercase;   
    padding-right: 5%;
}

.sub-menu-fx .list-fx li a {
    transition: font-size 0.3s;
}

.sub-menu-fx .list-fx li a:hover, 
.sub-menu-fx .list-fx li a:hover *,
.sub-menu-fx .list-fx li.active, 
.sub-menu-fx .list-fx li.active * {
    color: var(--c-white);
    font-weight: 600;
    font-size: 1.25rem;
    transition: font-size 0.3s;
}

.sub-menu-fx .list-fx li + li {
    margin-top: 1.25rem;
}

.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;	
}
.content h1, .content .h1 {
    font: var(--f-h2);
}

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

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

footer {
	color: var(--c-white);
    background-color: var(--c-grey-dark2);
}

.footer-main {
	display: grid; 
	grid-template-columns: 1fr 1fr 1fr; 
	grid-auto-rows: auto;
    grid-template-areas:
        "footer-logo . ."
        "footer-contact footer-menu footer-menu"
        "footer-copy footer-copy footer-copy";
        
    column-gap: calc(var(--grid-gap)/1.5);
    row-gap: calc(var(--grid-gap)/2);
}

.footer-menu {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: auto;
	grid-area: footer-menu;	
	align-items: flex-start;
    justify-content: space-between;
}

footer .hdr {
    margin: 0 0 1rem;
}

.footer-contact {
	grid-area: footer-contact;	
    font: var(--f-s3);    
    line-height: 1.5;
}

.footer-contact .note {
    margin: 0 0 1.5rem;
}

.footer-contact p {
    margin-bottom: 0.5rem;
}

.footer-menu .list-fx {
    font: var(--f-s2);
}

footer .list-fx {
    color: var(--c-white);
}

footer a:hover  {
    color: var(--c-grey-light2);
}

.footer-menu .list-fx li+li {
    margin-top: 0.875rem;
}

.footer-menu .vmark .list-fx {
    text-transform: uppercase;
    font: var(--f-h5);
    letter-spacing: -0.025rem;
}

.footer-menu .vmark .list-fx li+li {
    margin: 1rem 0 0;
}

.footer-menu .vmark:before {
    opacity: 1;
}

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

footer .phone.hover {
    color: var(--c-hover);
}

.footer-logo {
	grid-area: footer-logo;    
}

.footer-logo .logo {
    height: 2.75rem;
}

.footer-copy {
	grid-area: footer-copy;    
    font: var(--f-s4);
    /*
    color: var(--c-grey-dark);
    */
}

.footer-copy p {
    margin-bottom: 0.25rem;
}

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

.footer-desc-fx .list-fx {
    flex-flow: row wrap;
}

.footer-desc-fx .list-fx li {
    padding-bottom: 0.25rem;
}

.footer-desc-fx .list-fx  li:not(:last-child) {
    padding-right: 1rem;
}

.up-link-fx {
    width: 1.75rem;
    height: 1.75rem;
    justify-content: center;
    margin-top: -0.5rem;
    background-color: transparent;
    border: 1px solid var(--c-white);
    border-radius: 0.5rem;
    transform: rotate(-45deg);
}

.up-link-fx:after {
    content: "";
    width: 0.875rem;
    height: 0.75rem;
    background-image: url('/css/icons.svg?2025#u-right-white');
    background-repeat: no-repeat;    
}

footer .up-link-fx {
    position: absolute;
    right: var(--wrap-pdd);
    top: calc(var(--grid-gap) * 1.5);  
}

footer .up-link-fx:after {
    transform: rotate(-45deg);
}

.top-layout .up-link-fx {
    position: absolute;
    bottom: 3rem;
    left: calc(50% - 1.375rem);
    transform: rotate(-45deg);
}

.top-layout .up-link-fx:after {
    transform: rotate(135deg);
}

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

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

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

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

.align-left .slick-track {
    margin-left: 0;
}

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

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

.slick-slider.slick-dotted {
    padding-bottom: 2rem;
}

.top-layout .slick-slider.slick-dotted {
    padding-bottom: 0;
}

.slick-dots {
    padding: 0 var(--wrap-pdd);
    width: 20%;
    right: 0;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    list-style: none;
    position: absolute;
    bottom: 0.5rem;
    z-index: 100;
}

.top-layout .slick-dots {
    bottom: 1rem;
}

.slick-dots li {
    flex: 1;
    cursor: pointer;
    border-bottom: 1px solid transparent;
    border-image-slice: 1;
    border-width: 2px;
    border-image-source: var(--g-line1);
    opacity: 0.35;
}

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

.slick-dots li button {
    height: 1.5rem;
    opacity: 0;
    position: absolute;
    bottom: -1rem;
    min-height: 1.5rem;
}

.slick-dots li.slick-active {
    opacity: 1;
}

.slick-slider:not(.thumb-slider).scroll-slider.slick-dotted  {
	padding-bottom: 2.5rem;
}

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

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

.split-fx .slider-case {
    margin-bottom: -2.625rem;
}

.split-fx .slick-slider.scroll-slider {
    padding-bottom: 2.5rem;
    margin-bottom: calc(var(--grid-gap) * 0.5);
}

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

.btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: -moz-max-content;
    width: fit-content;
    padding: 0 1.5rem;
    border: 1px solid var(--c-hover);
    border-radius: 0.25rem;
    background: transparent;
    font: var(--f-s3);
    color: var(--c-hover);
    cursor: pointer;
    min-height: 2.5rem;  
    position: relative;
}

.spin-block-fx {
	display: none;
}

.btn:hover, .btn-group > a:hover, .btn.active, .btn.submit  { 
    background-color: var(--c-hover);
    color: var(--c-white);  
}

.btn svg {
	width: 1rem;
    height: 1rem;
    margin-left: 0.125rem;
	fill:  var(--c-white);
	stroke-width: 20;
}

.btn:hover svg {
	fill: var(--c-hover);
}

.form-line-fx input + .btn {
    margin-left: 1.5rem;
}

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

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

.menu-close {
	display: none;	
}

.nobr, .phone {
    white-space: nowrap;
}

/* 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 !important;
    left: 0;
    width: 100%;
    height: 100% !important;
    z-index: 1043;
    position: fixed !important;
    outline: none !important;
    -webkit-backface-visibility: hidden;    
    backface-visibility: hidden;	
    overflow: hidden !important;
}

.mfp-container {
    display: flex;
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0;
	overflow-y: auto;
    -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 {
    display: flex;
    align-items: center;
    padding: 3rem 0 9rem;
    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 {
	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-wrap .arrow, .mfp-close {
    display: block;
    overflow: visible;    
    position: absolute;
    padding: 0;
    margin: 0;
    cursor: pointer;  
    border: 0;
    background-color: transparent;
    -webkit-tap-hlight-color: rgba(0, 0, 0, 0);    
    appearance: none;
    -webkit-appearance: none;
    outline: none;
    z-index: 1100;
}

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

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

.mfp-wrap .arrow {
    top: calc(50% - 4rem); 
    width: 4rem;
    height: 3rem;
    background-repeat: no-repeat;  
}
  
.mfp-close, .mfp-wrap .arrow, .mfp-preloader, .mfp-counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

header:not(.active) .hdr-menu-fx li[data-panel]:after, 
header:not(.active) .hdr-menu-fx li[data-panel]:after {
    background-image: url('/css/icons.svg?2025#u-arrow-right-white');   
}

.arrow, 
.cmark:after,
.part-data-wrap:after,
.hdr-menu-fx li[data-panel]:after {
    background-image: url('/css/icons.svg?2025#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,
.part-data-wrap.active:after,
.hdr-menu-fx li[data-panel]:hover:after, 
.hdr-menu-fx li[data-panel].active:after {
    background-image: url('/css/icons.svg?2025#u-arrow-right-active');   
}

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

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

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

.iframe .btn.submit {
    width: 100%;
}

.iframe .sub-layout {
    padding: 0 !important;
    width: 100%;
}

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

.spin-loader:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--c-main) !important;
    opacity: 0.05;
    z-index: 900;
}

.spin-loader:after {
	content: "";
	display: inline-block;
	width: 5rem;
	height: 5rem;
    border: 1rem solid rgba(189, 199, 205, 0.25);
    border-radius: 50%;
    border-top-color: rgba(70, 81, 91, 0.25);
	animation: spin 0.8s ease-in-out infinite;
	-webkit-animation: spin 1s ease-in-out infinite;
	z-index: 950;
    position: absolute;
    top: calc(50% - 3rem);
    left: calc(50% - 3rem);
    margin: auto;
}

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

.active .spin-loader {
	display: none
}

.mfp-close:before  {
    display: block;    
    content: "";
    background-image: url('/css/icons.svg?2025#u-close');
    background-position: center;
    background-repeat: no-repeat;
    width: 1.25rem;
    height: 1.25rem;
}

.mfp-close:hover:before {
    background-image: url('/css/icons.svg?2025#u-close-hover');
}

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

body.iframe > div {
	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%;*/
    padding-top: calc(100vh - 12rem);
}

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.mfp-figure, .mfp-figure > figure {
    height: 100%;
}

.mfp-img-frame {
    padding: 0;
    display: flex;    
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100% !important;
}

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

.mfp-iframe-modal.short {
    width: 50%;
    margin: 0 auto;
}

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

.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: auto;
    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: 1rem var(--wrap-pdd);
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
}

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

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

.small {
	font: var(--f-s3);
}

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-black);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	margin: 0.125rem 0.75rem 0 0;
}

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

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

button:disabled, button[disabled], input[type=submit]:disabled, input[type=submit][disabled], .btn[disabled], select[disabled] {
    background-color: #e4e9ec;
    color: var(--c-grey-dark2);
    cursor: default;
    border-color: transparent;
}

.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;
    background: var(--c-grey-light);
}

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

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

.youtube, .item-preview .video {
    display: block;
    padding-bottom: 66.67%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
    margin: 0 auto;
}

.youtube {
    padding-bottom: 56.25%;
}

.youtube img, .item-preview .video 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 {
    content: "";
    height: 72px;
    width: 72px;
    left: 50%;
    top: 50%;
    margin-left: -36px;
    margin-top: -36px;
    position: absolute;
    background-image: url('/img/play.png');
    background-size: cover;
    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');
    background-size: cover;
    transform: translate(-50%, -50%);
    z-index: 200;
}

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

.rutube {
    display: block;
    padding-bottom: 55%;
    width: 100%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
    margin: 0 auto;
}

.video-case {
    max-width: 1200px;
    margin: var(--grid-gap) auto;
}

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

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

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

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

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

.map > * {
    visibility: hidden;
}

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

.sub-layout.wrap-layout {
    display: none;
}

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

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

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

.part-data-main .pic-frame.portrait {
    padding-top: 75%;
}

.col-layout .split-fx .pic-frame.portrait {
    height: 100%;
}

.pic-frame picture, .pic-frame .picture, .pic-frame > img, .pic-frame .sect-intro {
	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%;
    height: 100%;
	padding: 0;
}

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

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

/* drop-panel */
.drop-panel {
    position: fixed;
    top: 0;
    height: 0;
    overflow: hidden;
    -webkit-backface-visibility: hidden;    
    backface-visibility: hidden;
	background-color: var(--c-white);
	visibility: hidden;
    transform: scaleY(0);
    transform-origin: top;
    opacity: 0;
    transition: transform 0.3s ease-in-out;
    z-index: 900;
}

.drop-panel.show {
    position: fixed;
    width: 100%;    
    height: auto;
    max-height: calc(100vh - var(--header-height));
    overflow: scroll;
	visibility: visible;
    opacity: 1;
    transform: scaleY(1);
}

.drop-panel.show .drop-panel-fx { 
    flex-flow: column nowrap;   
}

.panel-switcher-fx {
    background-color: var(--c-grey);
    width: 100%;
    justify-content: center;    
    height: 3.75rem;
    opacity: 0;
}

.drop-panel.show .panel-switcher-fx {
    opacity: 1;	
    transition: opacity 0.5s ease-in-out;
}

.panel-switcher-fx.gtile {
    padding: 0;
    border-radius: unset;
}

.panel-switcher-fx .list-fx {
    flex-flow: row nowrap;
    align-items: center;
    font: var(--f-h5);
    letter-spacing: -0.025rem;
    text-transform: uppercase;
}

.panel-switcher-fx .list-fx li {
    display: flex;
    align-items: center;    
    cursor: pointer;
    white-space: nowrap;
    padding: 1.75rem 1.5rem 1.75rem 0;    
    margin-left: calc(var(--grid-gap)/2);
}

.panel-switcher-fx .list-fx li:hover, 
.panel-switcher-fx .list-fx li.active {
    color: var(--c-hover);
}

.panel-sect-fx {
    width: 100%;
    align-items: flex-start;
    padding-left: var(--wrap-pdd);   
    overflow: hidden;     
    display: none;
    min-height: 30vh;
    transition: height 1000ms ease-out;
}

.panel-sect-fx.active {
    display: flex;
}

.panel-sect-group {
    width: calc((100% - var(--wrap-pdd))/4);
    overflow: hidden;
}

.panel-sect-fx .list-fx  {
    font: var(--f-s3);
    padding: 2rem 1rem 2rem 2rem;
    width: 100%;
}

.panel-sect-fx .list-fx li+li {
    margin-top: 0.75rem;
}

.panel-sect-fx .list-fx li {
    width: 100%;
}

.panel-sect-fx .list-fx li a {
    padding-right: 0.5rem;
}

.panel-sect-fx .cmark:after {
    position: absolute;
    top: 0.25rem;
    right: 0;
}

.panel-sect-fx .list-fx li.active {
    color: var(--c-hover);
}

.panel-sect-group, .panel-sect-group .list-fx {
    opacity: 1;
    transition: width 800ms ease, opacity 600ms ease 400ms;
}

.panel-sect-group.hide, .panel-sect-group .list-fx.hide {
    transition: opacity  0ms ease 0ms;    
    opacity: 0;
    width: 0;
    height: 0;
    padding: 0;
    margin: 0;
}

.panel-pic-fx {
    align-self: stretch;
    align-items: stretch;
    flex: 1;
}

.panel-pic-fx picture.panel-sect-pic {
    opacity: 0;
}

.panel-pic-fx.active picture:not(.panel-sect-pic) {
    opacity: 0;
}

.panel-pic-fx a .title:hover {
    color: var(--c-hover);
}

.panel-pic-fx > * {
    flex: 1;
    mix-blend-mode: darken;
    background-color: var(--c-grey-light);
}

.panel-pic-fx > *+* {
    padding-left: 1px;
}

.panel-pic-fx .pic-frame {
    padding-top: 0;
    height: 100%;
    mix-blend-mode: darken;
}

.panel-pic-fx .title {
    position: absolute;
    left: 0;
    top: 49%;
    color: var(--c-white);
    text-align: center;
    width: 100%;
    font: var(--f-h1);
    text-transform: uppercase;
    transform: translateY(-50%);
}

.panel-pic-fx.active .pic-frame {
    width: auto;
    height: calc(100% - var(--layout-gap));
    margin: 2rem;
}

.panel-pic-fx.active .pic-frame:after {
    display: none;
}

.panel-pic-fx.active .title {
    display: none;
}

.panel-pic-fx.active .pic-frame img {
    height: auto;
    width: auto;   
}

.sub-title {
    font: var(--f-h5);
    letter-spacing: unset;   
    text-transform: uppercase;
}

.sub-title h1, .sub-title .h1, .sub-title h2 .sub-title .h2 {
    font: inherit;
    margin: 0;
    padding: 0;
    max-width: none;
}

.sub-title +.part-data {
    margin-top: 1rem;
}

.sect-layout.grey {
    z-index: -1;
}

.sect-item-fx.sect-intro {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;         
    border-radius: 0.5rem;
    padding: var(--grid-gap);
    border: var(--b-white);
}

.sect-item-fx.sect-intro + .sect-item-fx .sect-pic.vmark:before {
    display: none;
}

.sect-intro .sect-title {
    font: var(--f-h4);
    margin: 0 !important;
}

.sect-item-fx {
    flex-flow: column nowrap;
    justify-content: flex-start;
    align-items: flex-start;
}

.item-title, .sect-title {
    display: block;
    font: var(--f-h5);
    margin: 0;
}

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

.item .item-title {
    word-break: break-word;
}

.item-title + .item-txt {
    margin-top: 0.75rem;
}

.item-txt {
    font: var(--f-s2);
}

.sect-title h2 {
    font: inherit;
    display: inline;
}

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

.item-title.base {
    font: var(--f-s1);
    text-transform: none;
}

.sect-item-fx .item-txt {
    padding: 0 0 1.5rem;
    color: var(--c-grey-dark2);
    flex: 1;
    max-width: 82%;
}

.sect-pic {
    width: 100%;
}

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

.sect-pic .pic-frame img {
    max-width: 90%;
    /*
    -webkit-filter: contrast(1.1);
    filter: contrast(1.1);
    */
}

.sect-list .sect-pic .pic-frame img {
    filter: contrast(1.1) drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

.toplist .sect-pic .pic-frame {
    padding-top: 32%;
}

.toplist .sect-pic .pic-frame picture {
    width: 75%;
}

.sect-pic .pic-frame picture {
    /*padding-left: var(--grid-gap); */
    -webkit-transition: transform 0.3s linear;
    -moz-transition: transform 0.3s linear;
    transition: transform 0.3s linear;
}

.sect-item-fx:hover .pic-frame:not(.pic-switch-area) picture {
    transform: scale(1.2);
}

.sub-layout {
    padding-left: var(--wrap-pdd);
    padding-right: var(--wrap-pdd);   
    padding-top: var(--grid-gap);
    padding-bottom:  var(--grid-gap);    
}

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

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

.sub-layout.grey.hidden+.sub-layout.content {
    background-color: var(--c-grey-light);   
}

.sub-layout.path ~ .sub-layout:nth-of-type(2):not(.prod-top):not(.grey) {
    padding-top: 0;
}

/*
.sub-layout.path ~ .sub-layout:nth-of-type(2).grey {
    margin-top: 2rem;
}
*/
.sub-layout:not(.grey):not(.path)+.sub-layout:not(.grey):not(.gap) {
    padding-top: 0;
}

.sub-layout.gap {
    padding-top: 2rem;
}

.sub-layout.grey.hidden+.sub-layout.content:not(.grey) + .sub-layout:not(.grey) {
	padding-top: var(--layout-gap);
}

.main-layout > .container > .part-data:last-of-type, .main-layout > .container > .sub-layout:last-of-type {
    padding-bottom: var(--layout-gap);
}
 
.sub-layout .sub-title {
    margin-bottom: 1.5rem;    
}

.sub-layout .sub-title.gmark {
    display: table;
    padding-bottom: 1rem;
    margin-bottom: 1.5rem;
} 

.sub-layout .sub-title.gmark.line {
    width: calc(100% / 3 - var(--grid-gap)/2);
}

.sub-title.gmark.sticky {
    display: block;
}

.sub-title.h3 {
    font:var(--f-h3);
    max-width: 80%;
}

.sub-title.h2 {
    font:var(--f-h2);
    max-width: 80%;
}

.split-fx .title {
    max-width: 80%;    
    margin-bottom: 2rem;
}

.sub-layout.short .split-fx .title {
    max-width: 60%;
}

.split-fx .h1 {
    margin-bottom: 2rem;
}

.sub-layout.grey.hidden + .sub-layout:not(.grey) {
    padding-top: 0;
}

.sub-layout.grey + .sub-layout.grey:last-child {
    background-color: transparent;
    padding-bottom: calc(var(--grid-gap) * 1.25);
}

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

.split-fx > * {
    flex: 1;
    min-width: 30%;
}

.split-fx.left > *:nth-child(1), .split-fx.right > *:nth-child(2) {
    flex: 2 0 var(--grid-gap);
}

.split-fx > *:nth-child(1) {
    padding-right: calc(var(--grid-gap)/1.5);
}

.split-fx  .split-fx > *:nth-child(1) {
    padding-right: calc(var(--grid-gap)/1.5);
}

.split-fx .content {
    font: var(--f-s2);
}

.split-fx .pic-cover, .split-fx .pic-contain {
    border-radius: 0.5rem;
    overflow: hidden;
}

.split-fx:not(.grey) + .split-fx:not(.grey) {
    margin-top: var(--layout-gap);
}

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

.split-fx.center > * {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    flex: 1;
}

.split-fx .video-frame {
    max-width: 100%;
    border-radius: 0.5rem;
    overflow: hidden;
    min-height: 100%;
}

.split-fx .video-frame video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sub-layout .split-fx > .grey {
    background-color: var(--c-grey-light);
    padding: var(--grid-gap);  
}

.sub-layout > .split-fx > .grey:nth-child(1) {
    margin-right: 1.5rem;
}
.sub-layout > .split-fx > .grey:nth-child(2) {
    margin-left: 1.5rem;
}

.sub-layout.short.grey {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.sub-layout.short .split-fx .pic-frame {
    padding-top: 12rem;
}

.sub-layout.short .split-fx {
    align-items: center;
}

.content.lh-expand {
    line-height: 175%;
}

.content.lh-expand p {
    margin: 0;
}

figure {
    margin-bottom: 1rem;
}

figcaption {
    margin-top: 0.5rem;
    font: var(--f-s4);
}

.btn-group {
    display: grid;
    grid-template-columns: min-content;
}

.btn-group .btn {
    white-space: nowrap;
    width: auto;
}

.split-fx .btn-group .btn, .split-fx .btn-group > a {
    min-width: 15rem;
}

.btn-group .btn+.btn {
    margin-top: 2rem;
}

.sect-case {
    display: grid;
    grid-template-columns: 2.25fr 2.75fr 1.75fr;
    grid-template-rows: 1fr;
    grid-template-areas: "sect-pic sect-desc sect-fact";
    justify-content: space-between;
	column-gap: var(--grid-gap);
    padding: 1rem 0 0;
}

.sect-case .sect-pic {
    grid-area: sect-pic;
}

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

.sect-desc {
    grid-area: sect-desc;  
}

.sect-desc .item-txt {
    padding: 0;
    font: var(--f-s2);
    padding-bottom: 1rem;
}

.sect-desc .sect-note {
    font: var(--f-s3);
    color: var(--c-grey-dark2);
}

.sect-desc > *:last-child {
    padding-bottom: 0;
}

.link-wrap {
    display: inline-flex;
    align-items: center;    
    margin-top: 0.375rem;
    border-radius: 0.25rem;    
    padding: 0.5rem 0.75rem;
    background-color: var(--c-grey-light);
    font: var(--f-h8);
    color: var(--c-main);
    line-height: 1;
    text-transform: uppercase;
    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;
}

.sect-fact {
    grid-area: sect-fact;  
    width: 100%;
    padding: calc(var(--grid-gap)/2) 0;
}

.fact {
    text-align: center;
}

.sect-fact.left .fact {
    padding: 0 20% 0 0; 
}

.fact .title {  
    font: var(--f-h1);
    color: var(--c-hover);
    padding-bottom: 1rem;
    width: 100%;
    max-width: 100%;
    margin: 0;
}

.fact .note {
    font: var(--f-s2);
    padding: 1rem 10% 0;
}

.gtile .sect-fact .title {
    max-width: 80% !important;
    margin: 0 auto;
}

.gtile.content {
    justify-content: flex-start;
    align-items: flex-start;
    opacity: 0.9;
}

.gtile.content h3 {
    margin-top: 0;
}

.gtile.content p+h3, .gtile.content ul+h3 {
    margin-top: 0.25rem;
}

.gtile {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;   
    align-items: center;   
    height: 100%;  
    padding: calc(var(--grid-gap)/1.5) var(--grid-gap);
    border-radius: 0.5rem;
    background: var(--g-grey);
}

a.gtile.grey {
    background: var(--c-grey);
    opacity: 1;
}

.sub-layout.promo-case .gtile {
    min-height: 35vh;
}

.block-slider {
    max-width: 100%;
}

.block-slider.slick-slider.scroll-slider.slick-dotted {
    padding-bottom: 3.5rem;
    margin-bottom: 0;
}

.fact-slider .fact .title {
    border-bottom: 2px solid var(--c-grey);
}

.fact-slider .fact .gmark:before {
    bottom: -2px;
}

.fact-slider .slick-current .fact .gmark:before {
    opacity: 1;
}

.fact-slider .fact .gmark:before {
    opacity: 0;
    transition: 2s ease-out;   
}

.fact-slider .fact .note {
    font: var(--f-s3);
}

.fact-slider {
    margin-top: var(--grid-gap);
    margin-bottom: 1rem;
}

.split-fx .fact-slider {
    margin-bottom: var(--grid-gap);
}

.gmark:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: var(--g-line2);
    filter: brightness(1.1);
}

.grey .gmark:before, .gtile .gmark:before {
    background: var(--g-line4);
}

.tbl-grid {
    display: grid;
    grid-template-rows: 1fr;
    grid-template-columns: auto;
    margin: 2rem 0 0;
    width: 100%;
    min-width: 100%;
    font: var(--f-s3);
}

.tbl-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10px, 1fr));
    grid-template-rows: minmax(5rem, 1fr);    
    border-bottom: 1px solid transparent;
    border-image-slice: 1;
    border-width: 1px;
    border-image-source: var(--g-line1);
    grid-auto-flow: column;
    grid-auto-columns: 50%;
}

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

.tbl-row:not(.head) {
    font: var(--f-h5);
    letter-spacing: -0.025rem;
}

.prod-param .tbl-row:not(.head) {
    font: var(--f-h6);
}

.tbl-row.head {
    font: var(--f-s3);
    color: var(--c-grey-dark2);
}

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

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

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

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

.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:not(.head) > div:not(.name):not(.price-ctrl-fx) {
    color: var(--c-main);
    opacity: 0.8;
    font: var(--f-s2);
}
*/
.tbl-row .price-group-fx > s {
    margin-top: -1.125rem;
}

.tbl-row.sticky {
    top: var(--header-height) !important;
    z-index: 20;
}

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

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

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

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

.grey .tbl-row.head .name.sticky {
    align-items: flex-end;
}

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

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

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

.sub-layout.grey > .tbl-grid {
    margin: -2rem 0;
}

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

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

.price-ctrl-fx .btn { 
    min-height: 2.125rem;
    padding: 0.375rem 1.25rem;
    min-width: 7rem;
}

.price-group-fx + .btn.cart-ctrl {
    margin-left: 1.5rem;
}

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

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

.price-group-fx > i span {
    font: var(--f-h7);
    text-transform: uppercase;
}

.price-group-fx .note {
    font: var(--f-h6);
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: -0.025rem;
}

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

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

.price-block-fx .prompt, .prod-list.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, .prod-list.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;
    background-color: var(--c-hover);
    color: var(--c-white);
}

.sticker {
    background-color: var(--c-white);
    border: var(--b-hover);
    border-radius: 0.125rem;
    color: var(--c-hover);
    font: var(--f-h8);
    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;
}

.icon-feat-case {
    list-style: none;
    column-gap: 4rem;
    margin-top: -0.25rem;
    margin-bottom: -2rem;    
    font: var(--f-s2);
}

.icon-feat-case li {
    display: inline-flex;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 0 0 2rem;
}

.icon-feat-case li .icon {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.25rem;
    border: 1.25px solid var(--c-black-icon);
    border-radius: 0.25rem;   
}

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

.icon-feat-case li .icon svg {
    fill: var(--c-black-icon);
    width: 1.875rem;
    height: 1.875rem;
}

.icon-feat-case li .icon:hover {
    border-color: var(--c-hover);
}

.icon-feat-case li .icon:hover svg {
    fill: var(--c-hover);
}

.icon-feat-case li > div:not(.icon) {
    padding-left: 2rem;
    flex: 1;
}

.icon-feat-case li .title {
    margin-bottom: 0.5rem;
}

.feat-case {
    list-style: none;
    column-gap: 4rem;
    margin-bottom: -2rem;   
    font: var(--f-s2);
}

.feat-case > li {
    padding: 0 0 2rem 0;
}

.feat-case .title {
    margin-bottom: 0.5rem;
    font: var(--f-h5);
    text-transform: uppercase;
    color: var(--c-grey-dark3);
    max-width: 100%;
}

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

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

.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-group {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
}

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

.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-group .form-field.split-fx {
    flex-flow: row wrap;
}

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

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

.slider-case {
    overflow: hidden;
}

.slider-case .slick-list {
    margin: 0 calc(var(--grid-gap)/-3);
    width: auto;
}

.slider-case > .title {
    font: var(--f-h2);
    letter-spacing: -0.025rem;
    padding-bottom: calc(var(--grid-gap)/1.5);
    text-transform: uppercase;
    max-width: 60%;
}

.sub-layout.grey.slider-case {
    padding-bottom : calc(var(--grid-gap)/2);
}

.item-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(10rem, 1fr));
    grid-auto-rows: auto;
    grid-auto-flow: row dense;
    column-gap: calc(var(--grid-gap)/1.5);
    row-gap: var(--grid-gap);    
}

.prod-list.item-list {
    grid-template-columns: repeat(4, minmax(10rem, 1fr));
}  

.item-list.layout1 {
    justify-content: center;
    grid-template-columns: calc(100% / 3 - 2rem);
}

.item-list.layout2 {
    justify-content: flex-end;
    grid-template-columns: calc(100% / 3 - 2rem) calc(100% / 3 - 2rem);
}

.part-data .item-list {
    grid-template-columns: repeat(2, minmax(10rem, 1fr));
}

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

.item {
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
}

.item .pic-frame {
    width: 100%;
    padding-top: 50%;
    border-radius: 0.5rem;
    overflow: hidden;
}

.item-list .item .pic-frame {
    border: var(--b-light);
}

.item-list .item picture, .item-slider .item:not(.prod-layout) picture, .text-over picture {
    -webkit-transition: transform 0.3s linear;
    -moz-transition: transform 0.3s linear;
    transition: transform 0.3s linear;
}

.item-list .item:hover picture, .item-slider .item:not(.prod-layout):hover picture,  .text-over a:hover picture {
    transform: scale(1.2);
}

.item .item-desc {
    flex: 1;
    display: flex;
    flex-flow: column nowrap;
}

.top-bline {
    padding: 1rem 0 0;
    border-top: 1px solid transparent;
    border-image-slice: 1;
    border-width: 1px;
    border-image-source: var(--g-line1);
}

.item-slider .item {
    margin: 0 calc(var(--grid-gap)/3);
    height: 100%;
}

.promo-case .item-slider .item {
    margin: 0;
}

.text-over .pic-frame:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    background:linear-gradient(180deg, rgba(29, 39, 50, 0.10) 0, rgba(29, 39, 50, 0.70) 50%, rgba(29, 39, 50, 0) 100%);
    z-index: 1;
    pointer-events: none;
}

.text-over .item-desc {
    position: absolute;
    left: 50%;
    bottom: 50%;
    transform: translate(-50%, 50%);
    text-align: center;
    color: var(--c-white); 
    margin: 0;
    z-index: 2;
}

.text-over .item-desc {
    width: 100%;
    padding: 0 1.5rem;
}


.text-over.text-bottom .pic-frame:after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
}

.text-over.text-bottom .item-desc {
    position: absolute;
    left: 0;
    bottom: 1.5rem;
    transform: none;
    text-align: left;
    width: auto;    
}

.text-over.text-bottom .item-title {
    font: var(--f-h6);
}

.item-slider.text-over .item-txt {
    display: none;
}

.item .pic-frame +.item-desc {
    margin-top: 1.25rem;
}

.item-date {
    font: var(--f-h8);
    color: var(--c-grey-dark2);
    margin-bottom: 0.375rem;
    text-transform: uppercase;
}

.pic-frame + .item-date {
    margin-top: 1.25rem;
}

.item-note {
    font: var(--f-s3);
    color: var(--c-grey-dark2);
}

.item-note.right {
    text-align: right;
}

.item-content {
    margin-bottom: 0.75rem;   
}


.item .item-txt {
    color: var(--c-grey-dark2);
}

.item .pic-frame img {
    width: 100%;
    height: 100%;
}

.item.prod-layout .pic-frame {
    padding-top: 60%;
    background-color: var(--c-white);
}

.item.portrait-layout .pic-frame {
    padding-top: 75%;
    background-color: var(--c-white);
    border: none;
}

.split-fx .slider-case .item.portrait-layout .pic-frame {
    padding-top: 50%;
}

.item.portrait-layout .amark span:after {
    display: none;
}

.item.prod-layout .pic-frame img, .item.portrait-layout .pic-frame img {
    width: auto;
    height: auto;
}

.item.prod-layout .item-desc, .item.portrait-layout .item-desc {
    text-align: center;
}

.pic-grey-bg {
    background-color: #f6f8fa;
    background-blend-mode: darken;
    background-position: center;
    background-size: contain;
}

.bim-layout.tbl-grid {
    margin: 0 0 0;
    top: -2rem;
} 

.bim-layout .pic-grey-bg {
    width: 5rem;
    height: 5rem;
}

.bim-layout .sub-title.gmark {
    top: calc(var(--header-height) + 5rem) !important;
    padding: 2.75rem 0 1.75rem;
    margin: 0;
}

.bim-layout .tbl-grid .sub-title.sticky {
    top: 10rem;
    z-index: 20;
}

.item-param {
    color: var(--c-grey-dark2);
}

.item-param li+li {
    padding-top: 0.125rem;
}

.item-param span {
    color: var(--c-main);
    display: inline-block;
    padding-right: 0.5rem;
}

.visible {
	visibility: visible;
}

.prod-top {
    display: grid;
    grid-template-columns: 2.375fr 3fr 1.5fr;
    grid-template-rows: 1fr;
    grid-template-areas: 
        "prod-preview prod-hdr prod-key"
        "prod-preview prod-main prod-key";
    justify-content: space-between;	
    padding-top: calc(var(--grid-gap)/1.5);
}

.prod-top .prod-hdr {
    grid-area: prod-hdr;
    padding: 0 calc(var(--grid-gap)/1.5);
    margin: -0.5rem 0 0;
}

.prod-top .prod-preview-fx {
    grid-area: prod-preview;
	z-index: 100;
}

.preview-frame-fx {
    height: 100%;
    width: 100%;
}

.preview-frame-fx .sticker {
    position: absolute;
    right: 0.75rem;
    top: 0.0625rem;
}

.prod-preview-fx .pic-frame, .pic-thumb .pic-frame {
    padding-top: 80%;
}

.prod-preview-fx .pic-thumb {
    width: 25%;
    padding: 0 1.75rem;
    height: 100%;
}

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

.prod-preview-fx .thumb-slider  {
    height: 100%;
    padding: 0;
}

.thumb-slide  {
    display: block;    
    padding: 0.25rem;
    border-radius: 0.125rem;
    margin: 0 0 1rem;
}

.thumb-slide.active, .thumb-slide.active picture  {
    mix-blend-mode: darken;
    background-color: var(--c-grey);
}

.mfp-thumb .thumb-slide  {
    width: 5rem;
    height: auto;
    margin: 0 0.5rem;
}

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

.prod-preview-fx .video {
    display: flex;
    height: 80%;
    width: 100%;
}

.prod-preview-fx .thumb-slide.video:before, .prod-preview-fx .video:before {
    content: "";
    z-index: 100;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
 
.prod-preview-fx .thumb-slide.video:after, .prod-preview-fx .video:after, .mfp-thumb .thumb-slide.video:after {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    left: 50%;
    top: 50%;
    border-style: solid;
    border-width: 0 0.75rem 1.5rem 0.75rem;
    border-color: transparent transparent var(--c-hover) transparent;
    transform: rotate(90deg) translate(-50%, 25%);
    z-index: 200;
}

.prod-preview-fx .video:after {
    border-width: 0 1.25rem 2.5rem 1.25rem;
}

.prod-top .prod-main {
    grid-area: prod-main;
    display: flex;
    flex-flow: column nowrap;    
    padding: 0 calc(var(--grid-gap)/1.5);
}

.prod-top .prod-main .tbl-grid { 
    margin: 0;
}

.prod-top h1 {
    font: var(--f-h2);
    margin: 0 0 calc(var(--grid-gap)/2);
    max-width: 100%;
}

.prod-top h1.h2 {
    font: var(--f-h02);
}

.prod-top h1.h3 {
    font: var(--f-h3);
}

.prod-top h1.h4 {
    font: var(--f-h4);
}

.prod-top .prod-main .price-block-fx {
    margin-top: calc(var(--grid-gap)/1.5);
}
 
.item-grey {
    margin-top: 2rem;
    padding: 1.5rem;
    background-color: var(--c-grey-light);
    border-radius: 0.25rem;
    font: var(--f-s3);
    color: var(--c-main);
}

.item-grey a {
    font-weight: 500;
}
 
.prod-key-fx {
    grid-area: prod-key;
    border-left: 2px solid var(--c-grey);
    flex-flow: column nowrap;
    justify-content: center;
    color: var(--c-grey-dark2);
}

.prod-key-fx .icon {
    width: 2.75rem;
    height: 2.75rem;
    fill: var(--c-grey-dark);
}


.prod-key-fx {
    padding-left: 2.5rem;
    text-align: center;
}

.prod-key-fx div+div {
    padding-top: 2rem;
}

.prod-key-fx span {
    display: block;
    padding-top: 0.5rem;
    font: var(--f-s3);
    text-align: center;    
    margin: 0 10%;
}

.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;    
    padding-bottom: var(--layout-gap);
}

.part-data-sub.grey {
    background-color: var(--c-grey-light);
    margin-left: calc(var(--wrap-pdd)* -1);
    padding: var(--grid-gap) var(--grid-gap) var(--grid-gap) var(--wrap-pdd);
}

.part-data-sub .sub-title:not(.gmark), .part-data-main .sub-title:not(.gmark) {
    font: var(--f-h3);
    margin-bottom: 1rem;
}

.part-data-sub > .part-data-index {
    top: calc(2.5rem + var(--header-height));    
    -webkit-position: sticky;
    position: sticky;  
}

.part-data-sub .item-list {
    grid-template-columns: repeat(1, minmax(5rem, 1fr));
}

/*
.part-data-sub .sub-title+.item-list {
    margin-top: var(--grid-gap);
}
*/

.part-data-sub.grey + .part-data-main.content {
    padding-top: 2.5rem;
}

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

.part-data.part-flex {
    display: flex;
    flex-flow: row wrap;
}

.part-data.part-flex > * {
    width: 100%;
}

.part-data.part-flex .part-data-sub .item-list {
    grid-template-columns: repeat(3, minmax(10rem, 1fr));
}

.prod-list.item-list .item {
    padding: calc(var(--grid-gap)/2);
    border: var(--b-light);
    border-radius: 0.5rem;
    background-color: var(--c-white);
}

.prod-list.item-list .item .pic-frame {
    width: auto;
    height: auto;
    border: none;
}

.prod-list.item-list .item .pic-frame img {
    object-fit: contain;
    height: 90%;
}

.prod-list.item-list .price-ctrl-fx .price-group-fx > i {
    font: var(--f-h4);
    line-height: 1;
    letter-spacing: -0.025rem;
}

.prod-list.item-list .price-ctrl-fx .price-group-fx > s {
    font: var(--f-h6);
    padding-right: 2.75rem;
}

.prod-list.item-list .price-ctrl-fx .btn {
    grid-area: price-btn;
    justify-self: flex-end;
    min-width: 9rem;
    margin: 0;
}

.item .pic-frame +.item-param, .item .pic-frame +.item-note {
    margin-top: 1rem;
}

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

.sub-layout .sticky {
    top: calc(2.5rem + var(--header-height));    
}

.part-data-index {
    text-transform: uppercase;
    font: var(--f-h5);    
}

.part-data-index.list-fx li+li {
    margin-top: 1.75rem;
}

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

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

.part-data-index li.active:after {
    display: none;
}

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

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

.part-data-sub.pic-frame {
    padding-top: unset;
    min-height: 3rem;
}

.part-data-sub > .pic-frame {
    padding-top: 50%;
}

.part-data-section .tbl-grid.prod-param, .part-data-section .tbl-grid.file-list {
    margin: 0.125rem 0 0;
}

.pic-switch-area {
    min-height: 35vh; 
    width: auto;
    height: auto;
}

.pic-switch-area.pic-frame picture {
    position: absolute;
    opacity: 0;
    -webkit-transition: opacity 500ms ease-out;
    -moz-transition: opacity 500ms ease-out;
    -o-transition: opacity 500ms ease-out;
    transition: opacity 500ms ease-out;
}

.pic-switch-area.pic-frame picture.active {
    opacity: 1;
    -webkit-transition: opacity 0 ease-out;
    -moz-transition: opacity 0 ease-out;
    -o-transition: opacity 0 ease-out;
    transition: opacity 0 ease-out;    
}

.pic-switch-index .list-fx.thesis {
    width: 70%;
}

.pic-switch-index li {
    cursor: pointer;
}

.pic-switch-index {
    display: flex; 
    align-self: center;
}

.pic-switch-index .thesis li +li {
    margin-top: 1.5rem;
}

.pic-switch-index .list-fx.thesis li.sub-title {
    font: var(--f-s0);
	text-transform: none;
	letter-spacing: -0.0125rem;
	opacity: 0.85;
}

.tbl-grid.prod-param .tbl-row {
    grid-template-rows: minmax(3.5rem, 1fr);   
}

.tbl-grid.prod-param .tbl-row:first-of-type, .tbl-grid.file-list .tbl-row:first-of-type {
    border-top: 1px solid transparent;
}

.tbl-grid.prod-param .tbl-row .name, .tbl-grid.file-list .tbl-row .name {
    font: var(--f-s2);
    letter-spacing: normal;
    color: var(--c-main);
    grid-column: unset;
}

.tbl-grid.prod-param .tbl-row .name {
    opacity: 0.7;
}

.tbl-grid.prod-param .tbl-row > div:not(.name), .tbl-grid.file-list .tbl-row > div:not(.name) {  
    text-align: right;
    justify-self: flex-end;
}

.part-data-main .tbl-grid.prod-param .tbl-row > div:not(.name) {
    grid-column: span 2;    
    padding-right: 50%;
}

.part-data-main .tbl-grid.prod-param .btn {
    min-width: 10rem;
}

.item-list .tbl-grid {
    margin: 1rem 0 2rem;
}

.item-list .tbl-grid.prod-param .tbl-row .name {
    padding-left: 0;
    font: var(--f-s3);
    line-height: 1.25;
}

.item-list .tbl-grid.prod-param .tbl-row > div:not(.name) {
    padding: .75rem 0;
    grid-column: unset;
}

.item-list .tbl-grid.prod-param .tbl-row {
    grid-template-columns: auto;
    grid-auto-columns: auto;
    column-gap: 0.5rem;
}

.tbl-grid.file-list .tbl-row {
    grid-template-rows: minmax(6.5rem, 1fr);   
}

.tbl-grid.file-list .tbl-row:last-child {
    border: none;
}

.tbl-grid.file-list .tbl-row .name:before {
    content: "";
    display: inline-block;
    width: 2.5rem;
    height: 2.5rem;
    position: absolute;
    top: 0.75rem;
    left: 1.5rem;    
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0.6;
}

.tbl-grid.file-list .tbl-row:hover .name:before {
    opacity: 0.9;
}

.tbl-grid.file-list .tbl-row:hover .name {
    color: var(--c-hover);
}

.tbl-grid.file-list .tbl-row .name {
    grid-column: span 2;
    padding-left: 4.75rem;
    color: var(--c-main);
}

.tbl-grid.file-list .tbl-row .name.pdf:before {
    background-image: url('/css/icons.svg?2025#u-pdf');
}

.tbl-grid.file-list .tbl-row:hover .name.pdf:before {
    background-image: url('/css/icons.svg?2025#u-pdf-active');
}

.tbl-grid.file-list .tbl-row .name.zip:before {
    background-image: url('/css/icons.svg?2025#u-zip');
}

.tbl-grid.file-list .tbl-row:hover .name.zip:before {
    background-image: url('/css/icons.svg?2025#u-zip-active');
}

.tbl-grid.file-list .tbl-row .name.xls:before {
    background-image: url('/css/icons.svg?2025#u-xls');
}

.tbl-grid.file-list .tbl-row:hover .name.xls:before {
    background-image: url('/css/icons.svg?2025#u-xls-active');
}

.tbl-grid.file-list .tbl-row .name.rar:before {
    background-image: url('/css/icons.svg?2025#u-rar');
}

.tbl-grid.file-list .tbl-row:hover .name.rar:before {
    background-image: url('/css/icons.svg?2025#u-rar-active');
}

.tbl-grid.file-list .tbl-row .name.doc:before {
    background-image: url('/css/icons.svg?2025#u-doc');
}

.tbl-grid.file-list .tbl-row:hover .name.doc:before {
    background-image: url('/css/icons.svg?2025#u-doc-active');
}

.tbl-grid.file-list .tbl-row .name.exe:before {
    background-image: url('/css/icons.svg?2025#u-exe');
}

.tbl-grid.file-list .tbl-row:hover .name.exe:before {
    background-image: url('/css/icons.svg?2025#u-exe-active');
}

.imark {
    padding-left: 1.5rem;
}

.imark:before {
    content: "";
    display: inline-block;
    width: 1.25rem;
    height: 1.25rem;
    position: absolute;
    top: 0rem;
    left: 0rem;    
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0.6;
}

.imark.ifc:before {
    background-image: url('/css/icons.svg?2025#u-ifc');
}

.imark.rfa:before {
    background-image: url('/css/icons.svg?2025#u-rfa');
}

.tbl-grid.file-list .tbl-row > div.btn {
    padding: 0.6125rem 1.5rem;
    min-width: 12rem;
}

.tbl-grid.file-list .tbl-row .name span {
    font: var(--f-s5);
    color: var(--c-grey-dark);
    display: block;
    padding-top: 0.25rem;
} 

/* 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: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;
    overflow: hidden;
    z-index: 100;
    background-color: var(--c-grey);
    border-image-slice: 1;
    border-image-source: var(--g-line1);
}
  
.simplebar-track.simplebar-vertical {
    width: 0.125rem;
    left: 0;
    bottom: 0;
}
  
.simplebar-track.simplebar-horizontal {
    right: 0;
    bottom: 0;
}
  
.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: var(--g-line2);
}
  
.simplebar-scrollbar.simplebar-visible:before {
    opacity: 0.5;
    transition-delay: 0s;
    transition-duration: 0s;
}
  
.simplebar-track.simplebar-vertical {
    top: 0;
    opacity: 0.9;
}
  
.simplebar-track.simplebar-horizontal {
    left: 0;
    height: 0.125rem;
}
  
.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    right: auto;
    left: 0;
    top: 0;
    bottom: 0;
    min-height: 0;
    min-width: 10px;
    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;
}
  
.pg-fx {
    align-items: flex-start;
    margin-top: var(--grid-gap);
    padding: 0;
    border-top: 2px solid var(--c-grey);
}

.menu-level-case {  
    margin-bottom: 2rem;
}

.menu-level-case + .part-data-main .pg-fx {
    margin-bottom: -2.5rem;
}

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

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

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

.pg-list-fx .active {
    border-top: 2px solid transparent;
    border-image-slice: 1;
    border-width: 2px;
    border-image-source: var(--g-line3);
}

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

.symbol-group {
    padding-bottom: 2rem;
}

.symbol-group .title {
    color: var(--c-hover);
    font: var(--f-h5);
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.symbol-group .list-fx li+li {
    margin-top: 0.75rem;
}

.dealer-list a {
    display: block;
    font: var(--f-h5);
    margin-bottom: 0.5rem;
}

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

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

.dealer-list .item-txt {
    color: var(--c-grey-dark2);
}

.rmark li {
    padding-left: 2.5rem;
}

.rmark li:after {
    content: "";
    display: block;
    position: absolute;
    top: 0.375rem;
    left: 0.3125rem;
    width: 0.75rem;
    height: 0.75rem;
    background-repeat: no-repeat;
} 

.rmark li:after {
	background-image: url('/css/icons.svg?2025#u-right');
    background-repeat: no-repeat;
    background-position: center;
}

.dealer-list.rmark li:after {
    background-image: url('/css/icons.svg?2025#u-right-active');
}

.rmark li:before { 
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 1.25rem;
    height: 1.25rem;
    transform: rotate(45deg);
    border: 1px solid var(--c-hover);
    border-radius: 0.25rem;
}

.rmark:not(.dealer-list) li + li {
    margin-top: 2rem;
}

.sub-layout +.ymap {
    margin-top: 1rem;
}

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

.ymap > * {
    visibility: hidden;
}

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

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

.sub-layout.path + .ymap {
    margin-top: 2rem;
}

.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(95%);
    -webkit-filter: grayscale(95%);
    -moz-filter: grayscale(95%);
    -ms-filter: grayscale(95%);
}

.dealer-list .amark {
    font-size: 12px;
    text-transform: uppercase;
    color: var(--c-hover);
}

.dealer-list .amark { 
    display: none;
    margin: 0.5rem 0 0; 
}

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

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

ymaps[class*="copyrights"] {
    opacity: 0;
}

.calc-result b {
    color: var(--c-hover);
}

.thesis .sub-title {
    margin-bottom: 0.5rem;
}

.sub-title + .thesis {
    margin-top: 1rem;
}

.thesis li {
    padding-left: 1.5rem;
}

.thesis li +li {
    margin-top: 1.5rem;
}

.thesis li .vmark {
    margin-left: -1.5rem;
    padding-left: 1.5rem;
}

.vmark .vmark:before {
    opacity: 0;
}

.vmark .vmark.active:before {
    opacity: 1;
}

.thesis .item-note {
    width: 90%;
    padding-bottom: 0.5rem;
}

.sub-layout.bg:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-repeat: no-repeat;
    background-size: cover;
}

.sub-layout.rf-map {
    padding-top: var(--layout-gap);
    padding-bottom: var(--layout-gap);
}

.rf-map:before {
    background-image: url('/img/stock/rf-map-bg2.png');
    background-position: 100% 0;
    background-size: contain !important;
    opacity: 0.5;
}

.sect-fact + .sect-fact {
    margin-top: calc(var(--grid-gap)/2);
}

.sect-fact + .sect-fact:last-child {
    margin-bottom: 1rem;
}

.title-search-result {
    position: fixed !important;
    width: 100% !important;
    left: 0;
    top: var(--header-height) !important;
    margin: 0 !important;
    max-height: 80vh;
    z-index: 1000;
    /* font: var(--f-s2); */
    overflow: scroll;
    background: #fff!important;
    display: none;
    color: var(--c-main);
}

.search-result {
    padding-top: 0;
    padding-bottom: 0;
}

.search-mode .search-result .part-data-sub .sticky {
    top: 2.5rem;
}

.search-result .sect-case {
    grid-template-columns: 1fr 2fr;
    grid-template-areas: "sect-pic sect-desc";
}

.search-result .sect-pic .pic-frame {
    padding-top: 80%;
}

.search-result .sect-fact {
    display: none;
}

.search-result .sub-layout.grey > .tbl-grid {
    padding: 0 2rem;
}

.search-result .tbl-row.sticky {
    top: 0 !important;
}

.search-result .sub-layout:not(.part-data):last-child {
    padding-bottom: 2rem;
}

.part-data-main .sub-layout {
    padding: var(--grid-gap) 0;
}

.search-mode, .menu-mode , html.fixed body { 
    height: 100%;
    overflow: hidden;
    position: fixed;
}

.search-mode #title-search {
    width: 100%;
    position: static;
}

#title-search-reset.active {
    display: block;
}

.title-search-block .item-param + .btn {
    margin: 2rem 0 1rem;
}

.title-search-block ul {
    list-style: none;
}

.title-search-block ul li+li {
    margin-top: 1rem;
}

.title-search-block {
    width: 100%;
}

.search-result .part-data-main {
    padding-bottom: 5rem;
}

.sub-title + .sub-menu-fx {
    margin: 2rem 0 0;
}

.sub-menu-fx + .btn, .part-data-index + .btn {
    margin-top: 2.5rem;
}

.promo-layout {
    padding-bottom:0; 
    margin-bottom: 2rem; 
    padding-top: 2rem;
}

.promo-layout .slick-slider {
    bottom: -2rem;
    padding-bottom: 6rem;
}

.promo-layout .h1 + .split-fx {
    margin-top: var(--grid-gap);
}

.sub-layout .slick-dots {
    padding-left: 0;
    padding-right: 0;
}

.video-frame .item-slider {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.video-frame .slick-list, .video-frame .slick-track {
    height: 100%;
}

.promo-case .video-frame .item-desc {
    font: var(--f-h4);
    text-transform: uppercase;
}

.menu-mobile {
    display: none;
}

.hdr-gap {
    padding-left: var(--grid-gap);
}

.group-list .list-fx  {
    flex-flow: row wrap;
}

.group-list .list-fx li {
    margin: 0 0.5rem 0.5rem 0;
    white-space: nowrap;
}

.more-items svg {
    margin-right: 0.5rem;
}

.more-items.active  svg {
    transform: rotate(180deg);
}

.group-list li.hidden {
    display: none;
    margin: 0;
}

.search-result .form {
    margin-bottom: 2rem;
}

.toplist .pic-switch-area {
    min-height: unset;
    padding-top: 40%;
    width: 80%;
}

.toplist .pic-switch-area.pic-frame picture {
    -webkit-transition: opacity 1000ms ease-out;
    -moz-transition: opacity 1000ms ease-out;
    -o-transition: opacity 1000ms ease-out;
    transition: opacity 1000ms ease-out;
}

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

@container (max-width: 1160px) {
    .tbl-grid.tbl-prod-layout .tbl-row {
        grid-template-columns: calc(100% / 3 - var(--grid-gap)) repeat(auto-fit, minmax(10px, 1fr));
    }
    
    .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-prod-layout .tbl-row {
        grid-template-columns: repeat(auto-fit, minmax(10px, 50vw));
    }
}

@media only screen and (max-width: 1439px) {
    h1, .h1 {
        max-width: 70%;
    }  
    .prod-list.item-list {
        grid-template-columns: repeat(3, minmax(10rem, 1fr));
    }      
}

@media only screen and (max-width: 1365px) {
    :root {	
        --f-h0: 400 2.25rem/140% "RFDewi", sans-serif;	
        --f-h1: 400 1.75rem/140% "RFDewi", sans-serif;	
        --f-h02: 400 1.5rem/150% "RFDewi", sans-serif;  	    
        --f-h2: 400 1.375rem/150% "RFDewi", sans-serif;
        --f-h02: 400 1.25rem/140% "RFDewi", sans-serif;    
        --f-h3: 400 1.125rem/150% "RFDewi", sans-serif;      
        --f-h4: 400 1rem/150% "RFDewi", sans-serif;
        --wrap-pdd: 3vw;
        --grid-gap: 2rem;
        --layout-gap: 3rem;        
    }    
    .hdr-phone-fx .block-fx {
        width: 3.5rem;
    }
    .hdr-phone-fx a {
        background: linear-gradient(0, #fff, transparent 3.5rem);
        background: -webkit-linear-gradient(0, #fff, transparent 3.5rem);
        background-clip: text;
        text-fill-color: transparent;	
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    header.active .hdr-phone-fx a {
        background: linear-gradient(0, #333, transparent 3.5rem);
        background: -webkit-linear-gradient(0, #333, transparent 3.5rem);
        background-clip: text;	
    } 

    .phone-mode .hdr-phone-fx a, .phone-mode header.active .hdr-phone-fx a {
        background: none;
        background-clip: unset;
        text-fill-color: unset;	
        -webkit-background-clip: unset;
        -webkit-text-fill-color: unset;	
    }
}

@media only screen and (max-width: 1279px) {
    html {
        font-size: 15px;
    }
    :root {	
        --f-h0: 400 2.25rem/140% "RFDewi", sans-serif;	
        --f-h1: 400 1.75rem/140% "RFDewi", sans-serif;	
        --f-h02: 400 1.5rem/150% "RFDewi", sans-serif;  	    
        --f-h2: 400 1.375rem/150% "RFDewi", sans-serif;
        --f-h02: 400 1.25rem/140% "RFDewi", sans-serif;    
        --f-h3: 400 1.125rem/150% "RFDewi", sans-serif;      
        --f-h4: 400 1rem/150% "RFDewi", sans-serif; 
    }	
    .body:not(.iframe) {
        :root {	
            --wrap-pdd: 3vw;
            --grid-gap: 2rem;
            --layout-gap: 3rem;
        }
    }     
    .logo {
        width: 11rem;
    }
    .icon {
        width: 1.125rem;
        height: 1.125rem;
    }      
    .fact .note {
        font: var(--f-s2);
        padding: 1rem 5% 0;
    }    
	.pic-switch-area {
		margin-left: var(--grid-gap);
	}
	.promo-layout .slick-slider {
		padding-bottom: 5rem;
	}	
	.thesis li +li {
		margin-top: 1rem;
	}	
    h1, .h1 {
        max-width: 80%;  
    }
    .prod-preview-fx .pic-thumb {
        width: 30%;
    }
}

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

.form-switch {
    display: flex;
    flex-flow: row wrap;
    align-items:  flex-start;
    justify-content: flex-start;
    text-transform: uppercase;
}

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

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

[class*="-ctrl"] {
    cursor: pointer;
}

[class*="-ctrl"]:not(.btn):hover {
    color: var(--c-hover);
}

[class*="-ctrl"].cmark.active:after, .part-data-wrap.active:after {
    transform: rotate(-90deg);
    top: 0.125rem;
}

[class*="-ctrl"].cmark:after {
    transform: rotate(90deg);
    top: 0.125rem;
}

[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-grey-light);
    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;
}

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

.iframe #CalltouchWidgetFrame {
    display: none !important;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

@keyframes gradient {
    0% {
        background-position: 0 0;
    }
    100% {
        background-position: -200% 0%;
    }
}