@charset "UTF-8";

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

@charset "UTF-8";

:root {

  --color-red: #cd3201;
  --color-blue: #1d6568;
  --color-light-blue: #7bb6b8;

  --color-white: #ffffff; 
  --color-black: #000000;
  --color-gray: #efefef;
  --color-light-gray: #f7f7f7;
  --color-dark-gray: #333;

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

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

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

  --page-width: 1400px;

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

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

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

}

@media screen and (min-width: 2000px) {
	:root {
		--page-width: 1800px; 
	}
}

@media screen and (min-width: 3000px) {
	:root {
		--page-width: 2400px; 
	}
}
/* Обычные поля */
/* -------------------------------------------------------------------- */
input[type="text"]:focus, input[type="checkbox"]:focus, select:focus, textarea:focus { background: white; box-shadow: var(--shadow); border: 1px solid #0005; }
input[type="text"]::placeholder, textarea::placeholder { opacity: 0.3;   }

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

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

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

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

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



/* Формы */
/* -------------------------------------------------------------------- */
.form input:not([type="submit"]), .form textarea, .form select { width: 100%; }
.form textarea { min-height: 10rem; }

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

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

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

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

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

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

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

}

.ui-button, input[type="button"], input[type="submit"], button {
  display: inline-flex; align-items: center; justify-content: center; flex-wrap: nowrap; cursor: pointer;
  text-decoration: none; white-space: nowrap; font-size: 1.6rem; margin: 0; padding: 1rem var(--span);
  border-radius: var(--border-radius); align-items: center;  height: 5rem;
 	background: var(--button-color); color: var(--button-text-color); outline: none; border: 0; 
 	position: relative; transition: 0.3s all; text-decoration: none; gap: 1rem; 
}
.ui-button:hover { --button-color: black; --button-text-color: white; text-decoration: none; color: var(--button-text-color); }

.ui-button i[data-icon] { background: var(--button-text-color); }
.ui-button i { display: inline-block; width: 2rem; height: 2rem;  }


.ui-button.-mini { padding: 0.5rem 1rem; height: auto; }

.ui-button.-black { background: #202020; color: white; }
.ui-button.-black:hover { background: #505050; }
.ui-button.-black i { background: white; }

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

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

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

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

.ui-hollow-button { border: 2px solid var(--button-color); display: inline-flex; align-items: center;
	justify-content: center; gap: 1rem; height: 5rem; border-radius: var(--border-radius); outline: none;
	cursor: pointer; position: relative; transition: 0.3s all; padding: 0.5rem 1.5rem; text-decoration: none; transition: .3s; } 
.ui-hollow-button i { background: var(--button-text-color); transition: .3s; }

.ui-hollow-button:hover { background: var(--button-color); color: var(--button-text-color); }

.ui-hollow-button.-white { --button-color: white; --button-text-color: white; }
.ui-hollow-button.-white:hover { --button-text-color: #333; }


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

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


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

.ui-input::placeholder, input[type="text"]::placeholder, input[type="checkbox"]::placeholder, select, textarea::placeholder {
	color: #111; font-weight: 400;
}

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


/* Капча */
/* -------------------------------------------------------------------- */
.vcap-input { display: flex; align-items: center; align-content: center; margin-bottom: var(--input-padding);  }
.vcap-input input { margin-bottom: 0; width: 3rem !important; min-height: 3rem; padding:0; max-width: none; flex-shrink: 0;}
.vcap-input label { margin-bottom: 0 !important; font-size: 1.3rem; text-align: left; }
.vcap-input label a { color: var(--link-color); text-decoration: underline; }
.vcap-input.-error input { border: 2px solid var(--color-red); }
.vcap_value.error { border: 2px solid var(--color-red);}

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

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

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

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

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

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

@media screen and (min-width: 2000px) {
	html { font-size: 13px; }
}
@media screen and (min-width: 3000px) {
	html { font-size: 20px; }
}

/* Main elements */
/* -------------------------------------------------------------------- */
img { display: inline-block; max-width: 100%; height: auto; }
p { margin-bottom: 0.5em; }
b { font-weight: bold; }
a { text-decoration: none; color: inherit; }
a:hover { text-decoration: underline; color: inherit; }
strong { font-weight: bold;}
i { width: auto; height: auto; }
em { font-weight: normal; font-style: italic; }
.-red-text { color: var(--color-red); }

/* Headings */
/* -------------------------------------------------------------------- */
h1, h2, h3, h4 { margin-bottom: 0.5em; line-height: 1.1; color: var(--heading-color); font-weight: 300; font-family: 'Roboto Condensed', sans-serif; }
h2:not(:first-child), h3:not(:first-child), h4:not(:first-child) { margin-top: 1em;}
h1 { font-size: 3rem; font-weight: bold;  text-transform: uppercase; margin-bottom: 1em; }
h2 { font-size: 2.6rem; margin-bottom: 1em; font-weight: bold;  text-transform: uppercase; }
h3 { font-size: 2.8rem; }
h2 { font-size: 3.6rem; color: var(--heading-color);  }

@media screen and (max-width: 768px) {
	h1{ text-align: left !important; }
}

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

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


.swiper-button-prev, .swiper-button-next { color: var(--color-gray); }
.swiper-button-prev:hover, .swiper-button-next:hover { color: var(--color-blue); }


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

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

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

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


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

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

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

i[data-bg="youtube"] { --image: url(../img/icons/youtube.svg); }
i[data-bg="akron"] { --image: url(../img/icons/akron.png); }

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

i[data-icon="fits-wood"] { --image: url(../img/icons/fits-wood.png); }
i[data-icon="fits-furniture"] { --image: url(../img/icons/fits-furniture.png); }
i[data-icon="fits-rolls"] { --image: url(../img/icons/fits-rolls.png); }

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

i[data-icon="advantage-protection"] { --image: url(../img/icons/advantage-protection.png); }
i[data-icon="advantage-friction"] { --image: url(../img/icons/advantage-friction.png); }
i[data-icon="advantage-wood-fit"] { --image: url(../img/icons/advantage-wood-fit.png); }
i[data-icon="advantage-anti-theft"] { --image: url(../img/icons/advantage-anti-theft.png); }


.ui-tabs > nav { display: flex; flex-wrap: wrap; margin-bottom: 2px }
.ui-tabs > nav a { display: inline-block; padding: 2rem; text-decoration: none; font-size: 2rem; cursor: pointer; flex-grow: 0; text-align: center; margin-right:0.5rem; background: var(--color-gray); font-weight: bold; font-family: 'Roboto Condensed', sans-serif;  text-transform: uppercase; }
.ui-tabs > nav a:hover { background: var(--color-black); color: white; }
.ui-tabs > nav a.active { border-left: 5px solid var(--color-blue); color: var(--color-blue); background: var(--color-gray); }
.ui-tabs > nav a.active:hover { border-color: #333; color: #333; }
.ui-tabs > .tabs-content > .tab { padding: 4rem; background: var(--color-light-gray); display: none; }
.ui-tabs > .tabs-content > .tab.active { display: block; }

/* ============================================================== */
.popup-overlay { position: fixed; left: 0; top: 0; width: 100%; height: 100%; background: #000a; display: block; cursor: pointer; }
.popup-container { position: fixed; left: 0%; top: 0%; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; pointer-events: none; }
.popup-frame { background: white; padding: 4rem; max-width: 50rem; position: relative; border-radius: var(--border-radius); box-shadow: 0 0 10px #0004; pointer-events: all;}
.popup-frame .popup-close { background: #eee; width: 3rem; height: 3rem; color: white; display: flex; justify-content: center; align-items: center; position: absolute; right: -1rem; top: -1rem; cursor: pointer; border-radius: 50%; }
.popup-frame .popup-close i { background: black; width: 1.5rem; height: 1.5rem; }
.popup-frame .popup-close:hover { background: black; }
.popup-frame .popup-close:hover i { background: white; }
.popup-frame .form-bottom { text-align: center;  }

.popup-frame form { max-width: 44rem; margin:0 auto; }
.popup-frame input,
.popup-frame select,
.popup-frame textarea { background: #f0f0f0; }
.popup-frame .form-buttons { display: flex; align-items: center; justify-content: center; margin-bottom: 0; }
.popup-frame .vcap-input { justify-content: center; }
.popup-frame .vcap-input > label { font-weight: normal; }
.popup-frame .vcap-input > label a:hover { text-decoration: none; }
.popup-frame h2 { color: var(--color-blue); text-align: center; font-size: 2.5rem; }

/* Контент всплывающих окон */
/* -------------------------------------------------------------------- */
.mfp-content { --text-color: black; --heading-color: var(--color-red); color: black; padding: 4rem; overflow:hidden; background: white; display: inline-block; width: auto !important; max-width: 50rem; z-index: 52; }
.mfp-bg { z-index: 50;}
.mfp-wrap { z-index: 51; }

.mfp-content form { max-width: 44rem; margin:0 auto; }
.mfp-content input, .mfp-content select, .mfp-content textarea { background: #f0f0f0; }
.mfp-content .form-buttons { display: flex; align-items: center; justify-content: center; margin-bottom: 0; }
.mfp-content .vcap-input { justify-content: center; }
.mfp-content .vcap-input > label { font-weight: normal; }
.mfp-content .vcap-input > label a:hover { text-decoration: none; }
.mfp-content h2 { color: var(--color-blue); text-align: center; font-size: 2.5rem; }
.mfp-close { border-radius: 50%; width: 3.5rem; height: 3.5rem; right: 1rem; top: 1rem; line-height: 0; }
.mfp-close:hover, .mfp-close:focus { color: white; }


.split-container { display: flex; gap: 3rem; flex-wrap: wrap; }
.split-container > * { flex-grow: 2;  flex-basis: 45rem; }
.split-container[data-split-container~="center"] { align-items: center; }


.yandex-feedbacks { position: realtive; overflow: hidden;  }
.yandex-feedbacks-container  h2 { text-align: left !important; }
.yandex-feedbacks iframe { width: 540px !important; height: 800px !important; }

@media screen and (max-width: 960px) {
	.split-container { justify-content: center; }
	.split-container > * { flex-grow: none; }
}
@media screen and (max-width: 640px) {
	.yandex-feedbacks iframe { max-width: 100%; }
}


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

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

/* Адптивное меню */
/* -------------------------------------------------------------------- */
.ui-mobile-menu { display:none; position: fixed; top:0; left:0; width: 100%; height: auto; z-index: 20; max-height: 100%; background: white;
	box-shadow: 0 3px 5px 0 #0003; }

.ui-mobile-menu .site-logo-wrapper { flex-grow: 1; display: flex; margin:0 1rem;}
.ui-mobile-menu .site-logo { background: url(../img/logo-site.webp) center/contain no-repeat; width: 12rem; height: 4rem;  display: inline-block; }

.ui-mobile-menu-top { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; margin: 0 2rem; padding-top: 1rem; }
.ui-mobile-menu-top .phone-block { flex-basis: 100%; display: flex; gap: 1rem; align-items: center;   justify-content: end; } 
.ui-mobile-menu-top .phone { font-size: 2.4rem; }

.ui-mobile-menu .open-button {  width: 4rem; height: 4rem; color: white; display: flex; position: relative; cursor: pointer; }
.ui-mobile-menu .open-button::after { --image: url(../img/icon-burger.png) center/contain no-repeat; mask: var(--image); -webkit-mask: var(--image); display: block; content: ''; background: black; transition: all .3s; left: 50%; top: 50%; transform: translate(-50%, -50%); position: absolute; width: 1.5rem; height: 1.5rem;}
.ui-mobile-menu .phone-button {  width: 4rem; height: 4rem; color: white; display: flex; position: relative; cursor: pointer; }
.ui-mobile-menu .phone-button::after {
	--image: url(../img/icons/whatsapp.png) center/contain no-repeat;
		background: var(--image); display: block; content: ''; transition: all .3s; left: 50%; top: 50%; transform: translate(-50%, -50%); position: absolute; width: 2.5rem; height: 4rem;}
.ui-mobile-menu .search-button {  width: 3rem; height: 4rem; color: white; display: flex; position: relative; cursor: pointer; }
.ui-mobile-menu .search-button::after { --image: url(../img/icons/search.svg) center/contain no-repeat; mask: var(--image); -webkit-mask: var(--image); display: block; content: ''; background: black; transition: all .3s; left: 50%; top: 50%; transform: translate(-50%, -50%); position: absolute; width: 2rem; height: 4rem;}

.ui-mobile-menu .menu { display: none; background: white; border-top: 1px solid #eee;  color: black; padding: 2rem; z-index: 100;  overflow: auto;  position: absolute; text-align: left;  line-height: 1.1; top:6rem; height: auto; max-height: calc(100vh - 10rem); width: 100%; z-index:20; box-shadow: 0 5px 5px 0 #0003;}
.ui-mobile-menu .menu a {  text-decoration: none; }
.ui-mobile-menu .menu li { display: block; } 
.ui-mobile-menu .menu li ul { position: relative; background: transparent;}
.ui-mobile-menu .menu li ul li { border: none !important; }
.ui-mobile-menu .menu li a  { display: flex; padding: 0.5rem 1rem; gap: 1rem; align-items: center; min-height: 3rem; }
.ui-mobile-menu .menu li a > .text { flex-grow: 1; }
.ui-mobile-menu .menu li > a > .opener { display: inline-block; width: 3rem; height: 2.5rem; background: url(../img/icons/arrow-down.svg) center/1.5rem no-repeat; flex-shrink: 0; }
.ui-mobile-menu .menu li.open > a > .opener { background: url(../img/icons/arrow-up.svg) center/1.5rem no-repeat; }
.ui-mobile-menu .menu li.open > ul { display: block; }

.ui-mobile-menu .menu li a:hover {  background: #f0f0f0; }
.ui-mobile-menu .menu li > ul { display: none;  font-size: 1.5rem; margin-left: 2rem; padding-left: 0; }
.ui-mobile-menu .menu li.open { border-bottom: 1px solid #f0f0f0; margin-bottom: 1rem; padding-bottom: 1rem;}
.ui-mobile-menu .menu li.open > a { font-weight: bold; margin-bottom: 0.5rem; }
.ui-mobile-menu .menu li.open > ul {  display: block; }

.ui-mobile-menu .search { position: absolute; left:0; top: 100%; display: none; padding: 1rem 2rem; background: white; width: 100%; box-shadow: 0 5px 5px 0 #0003; }
.ui-mobile-menu .search-form { position: relative; }
.ui-mobile-menu .search input { background: #f0f0f0; width: 100%; min-height: 4rem; height: 4rem; }
.ui-mobile-menu .search input:focus { border: 1px solid var(--color-blue); }
.ui-mobile-menu .search button { position: absolute; right: 1rem; width: 3rem; height: 3rem; top: 50%; background: url(../img/icons/search.svg) center/2rem no-repeat; transform: translateY(-50%); opacity: 0.2; }
.ui-mobile-menu.open-search .search { display: block; }

.ui-mobile-menu.open .open-button::after { --image: url(../img/ui-close.svg) center/contain no-repeat; }
.ui-mobile-menu.open-search .search { display: block; }
.ui-mobile-menu.open .menu { display: block;  }

@media screen and (max-width: 768px) {
	body { padding-top: 10rem; }
	#header { display: none; }
	.ui-mobile-menu { display: block;  }
	
}



.button-up { --color: var(--color-blue); transition: opacity .3s ease; opacity: 0.8; background-color: var(--color-light-gray); height: 5.5rem; width: 5.5rem; bottom: 3rem; right: 3rem; cursor: pointer; display: none; position: fixed; z-index: 999; align-items: flex-end;justify-content: center; border-radius: 50%;  user-select: none; box-shadow: 0 0 5px 0 #0003; }	
.button-up:before { content: "";position: absolute;top: 40%;width: 40%;height: 40%;border-left: 3px solid var(--color);border-top: 3px solid var(--color);transform: rotate(45deg); left: 27%;}
.button-up:hover {opacity: 1;}


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

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

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


/* UI:Block heading */
/* -------------------------------------------------------------------- */
.block-heading { font-size: 4rem ; text-align: center; color: var(--color-blue); margin:0 auto; margin-bottom: 1em; max-width: 80rem; font-weight:bold; font-family: 'Roboto Condensed', sans-serif; }
#article .block-heading { font-size: 4rem; }
.block-heading .green { color: var(--color-green); }
.block-heading .line { display: block; }
.block-subheading { font-size: 3.4rem; text-align: center; }

@media screen and (max-width: 768px) {
	.block-heading { text-align: center; font-size: 3rem; }
	h1, h2, h3 { text-align: center; }
}


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

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


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

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

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

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

/* Social icons */
/* -------------------------------------------------------------------- */
.social-icons { white-space: nowrap; display: flex; align-items: center; gap: 1rem;}
.social-icons a { --image:linear-gradient(transparent, transpatent); width: 3.5rem; height: 3.5rem; border-radius: 50%;  background: no-repeat center; position: relative; display: inline-flex; justify-content: center; align-items: center; transition: .3s all; gap: 0.5rem; grid-gap: 0.5rem; background: white; border-radius: 50%; }
.social-icons a::after { content: ''; display: inline-block; width: 50%; height: 50%; transition: .3s; mask: var(--image) center/contain no-repeat; -webkit-mask: var(--image) center/contain no-repeat; background: #ccc; }
.social-icons a.vk { --image: url(../img/icons/social-vk.png); }
.social-icons a.telegram { --image: url(../img/icons/social-telegram.png); }
.social-icons a.whatsapp { --image: url(../img/icons/social-whatsapp.png); }
.social-icons a:hover::after { background: var(--color-blue); }
                                
.cities-list { background: linear-gradient(to top, #0001, transparent 5rem), var(--color-light-gray); color: black; position: fixed; left:0; top:0; width: 100%; z-index: 100; display: none; opacity: 0;  box-shadow: var(--shadow); font-weight: normal; }
.cities-list-inner { position: relative; max-height: 60rem; overflow: auto; padding: var(--span-large); b}
.cities-list .container { max-width: var(--page-width); margin:0 auto;  position: relative; }
.cities-list .cities-container {  width: 100%; text-align: left; }
.cities-list .city { display: inline-block; clear: both; border-radius: 3px; color: var(--color-blue); background: white; padding: 0.5rem 1rem; transition: .3s; }
.cities-list .city:hover { background: var(--color-blue); color: white; text-decoration: none; }
.cities-list .city.-active { border-left:5px solid white; font-weight: bold; padding-left: 10px;  background: #fff5; text-decoration: underline; }
.cities-list a { display: inline-block; padding: 0.3rem 0.5rem; font-size: 1.6rem; color: var(--color-brown);}
.cities-list a:hover { color: black; }
.cities-list h2 { text-align: left; color: black; font-size: 3rem; margin-bottom: 3rem; font-weight: normal; }
.cities-list .cities-group .cities { display: grid; gap: 1rem 2rem; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
.cities-list .cities-group .cities.-important { margin-bottom: 2rem; }
.cities-list .cities-group:not(:last-child) { margin-bottom: 2rem; border-bottom: 1px dashed #775132a3; padding-bottom: 2rem; }
.cities-list .cities-heading { padding: 0.5rem 1rem; margin-bottom: 1rem; color: white; position: relative; overflow: hidden; display: inline-block; width: auto; background: var(--color-darken-green); color: white;  border-radius: 1rem; }
.cities-list .cities-heading.-secondary{ background: white; color: var(--color-brown);  padding-left: 2rem;}
.cities-list .cities-heading.-secondary::after { content:''; display: block; width: 1rem; top:0; bottom:0; left:0; background: var(--color-darken-green); position: absolute;  }
.cities-list .close-button { position: absolute; top:0; right:0; width: 3rem; height: 3rem;	-webkit-mask: url(../img/ui-close.svg) center/contain no-repeat; mask: url(../img/ui-close.svg) center/contain no-repeat; background: black; }

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

.cities-selector-container { text-align: center; margin-top: 1rem; }
.cities-selector-container .select-button { cursor: pointer; display: inline-flex; gap: 0.5rem; align-items: center; justify-content: center; margin-top: 0.5rem; }
.cities-selector-container .select-button::after { content: ''; display: inline-block; width: 1rem; height: 2rem; background: url(../img/icon-arrow-down.svg) center/contain no-repeat;}
.cities-selector-container:hover .select-button { text-decoration: underline; }
.cities-selector { display: flex; align-items: center; font-size: 1.6rem; gap: 1rem; justify-content: center; white-space: nowrap; background: #fff;  }
.cities-selector span { display: inline-block; }
.cities-selector .title { border-right: 1px solid #d0d0d0; padding-right: 1rem;  }
.cities-selector .city { display: flex; align-items: center; gap: 1rem;  color: var(--color-blue); }


.article ul { list-style-type: disc; margin-bottom: 1em; }
.article ol { list-style-type: decimal; margin-bottom: 1em; }
.article ul li::marker { color: var(--color-blue); }

.cards-container { display: grid; grid-template-rows: auto; grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); gap: 1rem; justify-content: center;  }

/* Card: Simple generic card */
/* -------------------------------------------- */
.simple-card { background: var(--color-light-gray); }
.simple-card .image {   padding-top: 70%; position: relative;}
.simple-card .image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%;  object-fit: cover; }
.simple-card .bottom { margin-top: 1rem; display: flex; justify-content: center; }
.simple-card .content { padding: 2rem 4rem; font-size: 1.6rem; color: #666; }

/* Card: Project */
/* -------------------------------------------- */
.project-card { background: #888; position: relative; }
.project-card { position: relative; padding-top: 70%;}
.project-card .images {  position: absolute; left:0; top:0; width: 100%; height: 100%; }
.project-card .image { padding-top: 70%; position: relative; }
.project-card .image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%;  object-fit: cover; }
.project-card .content { position: absolute; bottom:0; left:0; width: 100%;  min-height: 4rem; color: white; text-align: left; padding: 2rem; z-index: 10; transition: .3; text-decoration: none; text-shadow: 1px 1px 0 #0004; font-size: 1.5rem; }
.project-card .swiper-button-prev, .project-card .swiper-button-next { opacity: 0; transition: .3s; }

.project-card .swiper-button-prev::after,
.project-card .swiper-button-next::after { font-size: 2.5rem;}
.project-card .swiper-button-prev:hover,
.project-card .swiper-button-next:hover { color: var(--color-red);}
.project-card:hover .content { background: linear-gradient(to top, #0005, transparent 5rem) }
.project-card:hover .swiper-button-prev,
.project-card:hover .swiper-button-next { opacity: 1; }


/* Card: News */
/* -------------------------------------------- */
.news-card .image { background: #fff; padding-top: 70%; position: relative;}
.news-card .image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%;  object-fit: contain; }
.news-card .bottom { margin-top: 1rem; display: flex; justify-content: center; }
.news-card .content { padding: 2rem 4rem; background: var(--color-light-gray); font-size: 1.5rem; color: #333; display: flex; flex-direction: column; gap: 1rem; }
.news-card .content .date { font-size: 90%; opacity: 0.8; }
.news-card .content .more { color: var(--color-blue); font-size: 90%; }
.news-card .title { font-family: 'Roboto Condensed', sans-serif; transition: .3s; line-height:1.1; font-size: 2rem; font-weight: bold; }
.news-card:hover .title { color: #333; }


/* Card: News (for news-page) */
/* -------------------------------------------- */
.news-card-list { display: flex; gap: 4rem; align-items: start; flex-wrap: wrap; }
.news-card-list .image { flex-basis: 30rem; position: relative; flex-shrink: 0;   }
.news-card-list .content { flex-basis: 40rem; flex-grow: 1; }
.news-card-list .content .date { margin-bottom: 1rem; font-size: 90%; opacity: 0.8; }
.news-card-list .content .title { font-weight: bold; font-size: 2rem; margin-bottom: 1rem; font-family: 'Roboto Condensed', sans-serif; line-height:1.1; }
.news-card-list .content .more { color: var(--color-blue); margin-top: 1rem; display: block; }
@media (max-width: 768px) {
	.news-card-list { gap: 2rem; }
	.news-card-list .image { flex-grow: 1; }
}


/* Card: Partner */
/* -------------------------------------------- */
.partner-card { filter: saturate(0%); opacity: 0.3; transition: .3s;}
.partner-card .image { height: 7rem; position: relative; margin:1rem 1rem}
.partner-card .image img { position: absolute; left: 50%; top: 50%; height: 100%; width: auto; object-fit: contain; transform: translate(-50%, -50%); }
.partner-card:hover { filter: saturate(100%); opacity: 1; }


/* Card: Product */
/* -------------------------------------------- */
.product-card { background: var(--color-gray); }
.product-card .image { background: #fff; padding-top: 70%; position: relative; display: block; border: 1px solid var(--color-gray); overflow: hidden; }
.product-card .image img { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 100%; height: 100%;  object-fit: contain; }
.product-card .image.-is-png img { width: calc(100% - 4rem); height: calc(100% - 4rem); object-fit: contain; }
.product-card .bottom { margin-top: 1rem; display: flex; justify-content: center; }
.product-card .content { padding: 1rem;  font-size: 1.5rem; color: #666; }
.product-card .content .properties { padding: 2rem 0; }
.product-card .content ul { list-style-type: disc; list-style-position: outside; margin-left: 2rem; }
.product-card .content ul li { margin-bottom: 0.2rem; }
.product-card .content ul li strong { color: black; }
.product-card .content ul li::marker { color: var(--color-blue); }
.product-card .title { color: var(--color-blue); font-weight: bold; text-transform: uppercase; text-align: center; padding: 2rem; border-bottom: 1px solid #0002; font-family: 'Roboto Condensed', sans-serif; font-size: 2rem; transition: .3s; line-height:1.1; } 
.product-card:hover .title { color: #333; }


/* Card: Category */
/* -------------------------------------------- */
.category-card { display: flex; background: var(--color-light-gray); align-items: center; }
.category-card .image { width: 15rem; height: 15rem; position: relative; flex-shrink:0; }
.category-card .image img { position: absolute; left:50%; top: 50%; width: 80%; height: 80%; object-fit: contain; transform: translate(-50%, -50%); }
.category-card .content { padding: 2rem; background: var(--color-gray); font-size: 1.5rem; border-left:0px solid transparent; transition: .3s; align-self: stretch; }
.category-card .content .title { font-weight: bold; color: #333; margin-bottom: 0.5rem; text-transform: uppercase; font-family: 'Roboto Condensed', sans-serif; }
.category-card .ui-button { height: 4rem; }
.category-card:hover .content { border-left: 5px solid var(--color-blue); padding-left: 1.2rem; }
.category-card:hover .content .title { color: var(--color-blue); }


/* Card: Image */
/* -------------------------------------------- */
.image-card { background: #333; padding-top: 75%; position: relative; }
.image-card img { position: absolute; left:0; top:0; width: 100%; height: 100%; }

/* Card: Category */
/* -------------------------------------------- */
.category-large-card { background: #f9f9f9; }
.category-large-card .image {   padding-top: 70%; position: relative;}
.category-large-card .image img { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: calc(100% - 4rem); height: calc(100% - 4rem); object-fit: contain; }
.category-large-card .content { padding: 1rem;  font-size: 1.5rem; color: #666; }
.category-large-card .title { color: var(--color-blue); font-weight: bold; text-transform: uppercase; text-align: center; font-family: 'Roboto Condensed', sans-serif; font-size: 2rem; display: flex; align-items: center; justify-content: center; margin: 2rem; text-align: center; transition: .3s; border-bottom: 1px solid #ddd; padding-bottom: 1rem; line-height:1.1;} 

.category-large-card:hover { text-decoration: none; }
.category-large-card:hover .title { color: #333; }



/* UI: Video */
/* -------------------------------------------- */
.ui-video { background: var(--color-light-gray); position: relative; padding-top: 56%;}
.ui-video .content { background: #fffc; padding: 2rem 4rem; display: flex; flex-direction: column; gap: 2rem; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); text-align: center; z-index: 3; opacity: 1; transition: .3s;}
.ui-video .content .title { color: #333; font-size: 2.2rem; font-weight: bold; line-height: 1.1; font-family: 'Roboto Condensed', sans-serif; }
.ui-video .content .play-button { background: var(--color-blue); color: white; padding: 1rem; height: 5rem; display: inline-flex; gap: 1rem; justify-content: center; cursor: pointer; align-items: center; }
.ui-video .content .loading-status { display: block; height: 4px; background: white; position: relative; }
.ui-video .content .loading-status .bar { position: absolute; left: 0; top:0; width: 0; height: 100%; background: var(--color-blue); }
.ui-video .cover { position: absolute; top:0; left:0; width: 100%; height: 100%; z-index:2; opacity: 1; transition: .3s; }
.ui-video .cover img { position: absolute; top:0; left:0; width: 100%; height: 100%; object-fit: cover; } 
.ui-video .video { position: absolute; top:0; left:0; width: 100%; height: 100%; z-index: 1}
.ui-video .video iframe { position: absolute; top:0; left:0; width: 100% !important; height: 100% !important; }
.ui-video.-active .cover { opacity:0; pointer-events: none; }
.ui-video.-active .content { opacity:0; pointer-events: none; }

@media screen and (max-width: 768px) {
	.ui-video .content { padding: 2rem; gap: 1rem; }
	.ui-video .content .title { font-size: 1.8rem; }
	.ui-video .content .play-button { padding: 0.5rem 1rem; }
}

/* Teaser: Advantage teaser */
/* -------------------------------------------- */
.advantage-teaser { background: var(--color-light-gray); display: flex; gap: 2rem; align-items: center; }
.advantage-teaser .image { width: 18rem; height: 18rem; flex-shrink: 0; position: relative; }
.advantage-teaser .image i { position: absolute; left: 50%; top: 50%; width: 80%; height: 60%; transform: translate(-50%, -50%); background: #333; }
.advantage-teaser .content { padding: 2rem; font-size: 1.6rem; color: #0009; border-left: 1px solid #e8e8e8; align-self: stretch; display: flex; flex-direction: column; justify-content: center; }
.advantage-teaser .content .title { font-weight: bold; font-family: 'Roboto Condensed', sans-serif; margin-bottom: 0.5rem; font-size: 2rem; color: #333; }
.advantage-teaser .content > *:last-child { margin-bottom:0; }

@media screen and (max-width: 768px) {
	.advantage-teaser .image { width: 10rem; height: 10rem; }
}

@media screen and (max-width: 640px) {
	.advantage-teaser { flex-flow: column; justify-content: center;  gap: 0; }
	.advantage-teaser .content { border: none; padding-top: 0; }
}


/* Block: Contacts block */
/* -------------------------------------------- */
.contacts-block .panel { background: linear-gradient(210deg, #0002, transparent 20rem), var(--color-gray); display: flex;
	align-items: center; justify-content: center; flex-direction: column; gap: 2rem; 
	padding: 4rem; text-align: center; align-self: stretch; min-height: 30vh;  }
.contacts-block .panel h2 { text-transform: uppercase; font-size: 2.6rem; color: var(--color-blue); margin-bottom:0; }
.contacts-block .panel h3 {  margin-bottom:0; font-size: 1.6rem; color: #333; margin-top: 0.75rem; font-family: "Roboto", sans-serif; }
.contacts-block .panel > *:last-child { margin-bottom:0; }
.contacts-block .panel .form {  width: 100%; max-width: 50rem; margin-top: 0rem; }
.contacts-block .panel .form > *:last-child { margin-bottom: 0; }
.contacts-block .panel .form input { text-align: center; }
.contacts-block .panel .form .form-input { margin-bottom: 0.75rem; width: 100%;}
.contacts-block .panel .form .vcap-input { justify-content: center; }
.contacts-block .panel .form .ui-button { width: 100%; }
.contacts-block .panel p { margin-bottom: 0.2rem; }
.contacts-block .image { position: relative; align-self: stretch; min-height: 40rem;}
.contacts-block .image img { position: absolute; left: 50%; top: 50%; width: 100%; height: 100%; object-fit: contain; transform: translate(-50%, -50%); }
.contacts-block .page-block-container { display: flex; align-items: center; gap: 2rem; flex-wrap: wrap; }
.contacts-block .page-block-container > * { flex-basis: 35rem; flex-grow: 1; }
.contacts-block p { opacity: 0.6; }

@media screen and (max-width: 768px) {
	.contacts-block .page-block-container > .image { display: none; }
	.contacts-block .panel { padding: 4rem 2rem; }
}


/* UI: Breadcrumbs */
/* -------------------------------------------- */
.breadcrumbs { margin-bottom: 4rem; font-size: 1.6rem; flex-wrap: wrap; }
.breadcrumbs ul { display: flex;  color: var(--color-blue); gap: 1rem; flex-wrap: wrap; }
.breadcrumbs ul li { display: inline-block; margin-right: 0.5rem;}
.breadcrumbs ul li:not(:last-child)::after { content: '>'; display: inline-block; margin-left: 1rem; }
.breadcrumbs a { color: #0008; text-decoration: none; }
.breadcrumbs a:hover { text-decoration: underline; }

@media screen and (max-width: 768px) {
	.breadcrumbs { font-size: 1.4rem; }
	.breadcrumbs ul	 { justify-content: start; gap: 0rem; }
}


/* Header block */
/* ----------------------------------------------------- */
#header { overflow: visible; font-size: 1.5rem; line-height: 1.1; }
#header .page-block-container { display: flex; justify-content: center; gap: 2rem 4rem; flex-wrap: wrap; align-items: center; }
#header .page-block-container > * { flex-basis: 10rem; flex-grow: 1; }

#header .site-logo { background: url(../img/logo-site.webp) center/contain no-repeat; width: 20rem; height: 7rem; flex-grow: 0; flex-shrink:0; flex-basis: 20rem; }
#header .search-form { display: block; position: relative; flex-basis: 20rem; }
#header .search-form input { background: var(--color-light-gray); width: 100%; }
#header .search-form button { display: block; position: absolute; right: 1rem; top: 50%; transform: translate(0,-50%); width: 1.5rem; height: 1.5rem; background: url(../img/icons/search.svg) center/contain no-repeat; }

#header .email-container { flex-grow: 1; display: flex; align-items: center; justify-content: center; }
#header .email { text-align: left; position: relative; padding-left: 3.5rem; }
#header .email i { position: absolute; left: 0; top:50%; width: 2.3rem; height: 2.3rem; transform: translate(0, -50%); }
#header .email .title { font-weight: bold; color: #333; font-size: 1.8rem; margin-bottom: 0.25rem;}
#header .email a { color: var(--color-blue); text-decoration: underline; }
#header .email a:hover { color: #333; text-decoration: none; }

#-header .youtube { text-align: center; display: flex; align-items: center; flex-direction: column; gap: 1rem; }
#-header .youtube i { width: 3rem; }

#header .cities-selector-container { flex-grow: 0; cursor: pointer; }
#header .contacts { text-align: right; display: flex; flex-wrap: wrap; align-items: center; justify-content: end; }
#header .contacts .phone { font-size: 3.5rem; color: #9d9d9d; white-space: nowrap; font-weight: bold; transition: .3s; display: inline-flex; gap: 1rem; align-items: center; justify-content: center; font-family: 'Roboto Condensed', sans-serif; }
#header .contacts .phone::before { content: ''; display: block; width: 2rem; height: 2.8rem; background: #333; transition: .3s; --image: url(../img/icons/phone.png); mask: var(--image) center/contain no-repeat; -webkit-mask: var(--image) center/contain no-repeat; }
#header .contacts .phone strong { color: #333; transition: .3s; }
#header .contacts .phone:hover { text-decoration: none; color: var(--color-light-blue); }
#header .contacts .phone:hover::before { background: var(--color-blue); }
#header .contacts .phone:hover strong  { color: var(--color-blue)}

@media screen and (max-width: 1280px) {
	#header .youtube { display: none; }
	#header .contacts { gap: 0 2rem; }
}

@media screen and (max-width: 768px) {
	#header .page-block-container { gap: 1rem; }
	#header .site-logo { flex-basis: 100%; }
	#header .cities-selector-container { flex-basis: 100%; margin: 1rem 0; }
	#header .cities-selector-container .select-button { display: none; }
	#header .search { flex-basis: 100%; }
}

/* Navigation block */
/* ----------------------------------------------------- */
#navigation { padding-top:0; padding-bottom:0; overflow: visible; z-index: 20; }
#navigation .page-block-container { background: var(--color-blue); color: white; padding: 1.5rem;  display: flex; align-items: center; }
#navigation i { background: white; width: 1.5rem; height: 1.5rem;}

#navigation .menu { display: flex; align-items: center; justify-content: center; gap: 1rem; justify-content: center; flex-wrap: wrap; position: relative; z-index: 1; width: 100%; }
#navigation .menu a { text-decoration: none; display: inline-flex; gap: 1rem; padding: 1rem 1.5rem; text-align: left; position: relative; align-items: center; width: 100%; justify-content: start; }
#navigation .menu li { flex-grow: 1; position: relative; cursor: pointer; text-align: center; z-index: 0; display: flex; align-items: center; justify-content: center; z-index: 1; }
#navigation .menu > li:not(:last-child) { border-right: 1px solid #fff4; }
#navigation .menu li ul { display: none; background: white; box-shadow: var(--shadow); color: #333; position: absolute; top:0; left:100%; min-width: 30rem; text-align: left; border-left: 2px solid var(--color-blue); z-index: 10; }
#navigation .menu ul li { border-bottom: 1px solid var(--color-gray);  text-align: left; justify-content: start; }
#navigation .menu > li > ul { left: 0; top:100%; }
#navigation .menu > li > a::before { content:'';  background: #175558; position: absolute; left:0; top:0; bottom:0; right: 0; filter: blur(7px);  z-index:-1; opacity: 0; transition: .3s;  }
#navigation .menu > li:hover > a::before { opacity:1;  }
#navigation .menu > li li::before { content: ''; position: absolute; width: 0px; top:0; bottom:0; transition: .3s; background: var(--color-blue); }
#navigation .menu > li > a { text-align: center; padding: 0.5rem 1rem; justify-content: center; }
#navigation .menu > li.has-children > a::after { content: ''; display: inline-block; width: 1rem; height: 1rem; --image: url(../img/icons/arrow-open.svg);  background: white; mask: var(--image) center/contain no-repeat; -webkit-mask: var(--image) center/contain no-repeat; }
#navigation .menu > li li:hover { background: var(--color-light-gray); }
#navigation .menu > li li:hover::before { width: 0.5rem; }
#navigation .main-menu { flex-grow: 1; }
#navigation .catalog-button { border-right: 1px solid #fff4; flex-basis: 18rem; }
#navigation .menu li:hover > ul { display: block; }

@media screen and (max-width: 768px) {
	#navigation { display: none; }
}

/* About block */
/* ----------------------------------------------------- */
#about .page-block-container { display: flex; align-items: center; position: relative; flex-wrap: wrap; gap: 2rem; }
#about .page-block-container > * { flex-basis: 40rem; flex-grow: 1; }
#about .page-block-container .image-container { padding-top: 75%; position: relative; }
#about .page-block-container .image-container img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }
#about .block-heading { text-align: left; margin:0; margin-bottom: 1em;}


/* Footer block */
/* --------------------------------------------- */
#footer { font-size: 1.6rem; padding-top: 4rem; padding-bottom: 4rem; }
#footer .page-block-container { display: flex; align-items: center; justify-content: center; gap: 2rem; flex-wrap: wrap; }
#footer .page-block-container > *  { flex-grow: 1; }

#footer .bottom-links { flex-basis: 63rem; display: flex; justify-content: center; gap: 2rem; flex-wrap: wrap; }
#footer .bottom-links .links-section { flex-basis: 20rem; flex-grow: 1; position: relative; border-right: 1px solid #fff4; padding: 1rem 2rem; }
#footer .bottom-links .links-section::after {}
#footer .bottom-links a { display: block; }
#footer .bottom-links li { margin-bottom: 0.5rem; }
#footer .bottom-links h2 { font-size: 2rem; margin-bottom: 1rem; text-transform: uppercase; font-family: 'Roboto Condensed', sans-serif; }

#footer .copyrights { flex-basis: 20%;}
#footer .copyrights p { margin-bottom: 0; }
#footer .copyrights .text { font-size: 90%; opacity: 0.8; margin-top: 0.5rem; }

#footer .copyrights .vebas { display: block; margin-top: 2.5rem; font-size: 1.4rem; opacity: 0.5; }

#footer .contacts { flex-basis: 25%; display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; align-items: center; flex-direction: column; }
#footer .contacts .phone { display: block; font-size: 3.8rem; text-decoration: none; font-weight: bold; color: var(--color-light-blue); white-space: nowrap; font-family: 'Roboto Condensed', sans-serif; }
#footer .contacts .phone strong { color: white; }
#footer .contacts .order-button { min-width: 28rem; flex-shrink: 0; }

@media screen and (max-width: 1280px) {
	#footer .contacts { flex-basis: 100%; }
}

@media screen and (max-width: 960px) {
	#footer .copyrights { text-align: center; }
	#footer .bottom-links { display: block; text-align: center; }
	#footer .bottom-links h2 { margin-bottom: 0.5rem; }
	#footer .bottom-links .links-section { border:none; }
	#footer .bottom-links ul { display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; padding: 0; justify-content: center;  }

}

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




.strip-teasers-container { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; margin-top: 2rem; flex-direction: column; align-items: start; }
.strip-teaser { display: inline-flex; background: var(--color-light-gray); gap: 1rem; min-height: 4rem; padding: 1rem; padding-right: 2rem; white-space: nowrap; align-items: center; }
.strip-teaser i { width: 3rem; height: 3rem; background: var(--color-blue);  margin-right: 1rem;}

@media screen and (max-width: 960px) {	
	.strip-teasers-container { align-items: start; }
	.strip-teaser { white-space: normal; }
}



#slider { padding-top: 2rem;}
#slider .swiper { width: 100%; }
#slider .swiper-slide { padding-top: 35%; background: #eee; position: relative; overflow: hidden; height: auto; }
#slider .swiper-slide::after { display: block; content: ''; position: absolute; left: 0; bottom: 0; height: 20%; pointer-events: none; background: linear-gradient(to top, #0005, transparent); right: 0; }
#slider .swiper-slide .image { position: absolute; left:0; top:0; width: 100%; height: 100%; }
#slider .swiper-slide .image img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }
#slider .swiper-slide .content { position: absolute; background: #dfeeece6; padding: 4rem; bottom: 5rem; left: 0; width: 47rem; }
#slider .swiper-slide .content h2 { font-size: 2.4rem; margin-bottom: 1em; text-transform: none; }
#slider .swiper-slide .content .options { display: flex; flex-wrap: wrap; gap: 0.5rem; }
#slider .swiper-slide .content .options li { display: inline-flex; background: transparent; padding: 0 1; min-height: 4rem; color: #333; gap: 1rem; align-items: center; min-width: 80%}
#slider .swiper-slide .content .options li::before { content:''; width: 1em; height: 1em; display: inline-block; background: #333; 
mask: url(../img/icons/plus.svg) center/contain no-repeat; -webkit-mask: url(../img/icons/plus.svg) center/contain no-repeat;}

#slider .slider-controls { position: absolute; bottom: 1rem; left: 4rem; display: flex; gap: 1rem; align-items: center; }
#slider .swiper-button-prev, #slider .swiper-button-next {
	position: relative; width: 2rem; height: 2rem; right:0; left: 0; color: white; 
	margin:0; 
}
#slider .swiper-button-prev::after, #slider .swiper-button-next::after { font-size: 2rem; }
#slider .swiper-pagination { position: relative; bottom:0; display: flex; align-items: center; }
#slider .swiper-pagination-bullet { border-radius: 0; width: 2.5rem; height: 0.5rem; background: white; }

@media screen and (max-width: 960px) {
	#slider .swiper-slide .content { width: 100%; max-width: 80%; left: 50%; top:50%; transform: translate(-50%, -50%); bottom: auto; text-align: center; }
	#slider .swiper-slide .content .options { justify-content: center; }
	#slider .swiper-slide { padding-top: 50%; }
}

@media screen and (max-width: 768px) {
	#slider { display: none; }
}


.product-top { display: flex; gap: 4rem; align-items:start; justify-content: center; flex-wrap: wrap;  }
.product-top .side-info { background: var(--color-light-gray); padding: 4rem 2rem; flex-basis: 35rem; flex-shrink: 0; align-self: start; display: flex; gap: 2rem;  justify-content: center; align-items: center; flex-wrap: wrap; }
.product-top .side-info h2 { text-align: center; font-size: 2rem; color: var(--color-blue); margin-bottom: 0; flex-basis: 100%; }
.product-top .side-info .buttons { display: flex; gap: 1rem; flex-wrap: wrap; }
.product-top .side-info .ui-button {  flex-basis: 30rem; text-align: center; font-size: 1.5rem; }
.product-top .side-info .price { flex-basis: 100%; display: flex; justify-content: center; gap: 1rem; align-items: center; font-size: 2rem; }
.product-top .side-info .price strong { font-size: 3rem; font-family: 'Roboto Condensed', sans-serif; color: var(--color-blue); }
.product-top .side-info .download-link { font-size: 1.5rem; line-height: 1.1; display: inline-flex; gap: 1rem; align-items: center; flex-basis: 25rem; }
.product-top .side-info .download-link .icon { display: inline-flex; background: white; width: 5rem; height: 5rem; border-radius: 50%; flex-shrink:0; justify-content: center; align-items: center; border: 1px solid #7bb6b8; transition: .3s; }
.product-top .side-info .download-link .icon i { background: var(--color-blue); width: 3rem; height: 3rem; transition: .3s; }
.product-top .side-info .download-link:hover .icon { background: var(--color-blue); border-color: transparent; }
.product-top .side-info .download-link:hover .icon i { background: white; }
.product-top .images { flex-basis: 35rem; flex-shrink:0;  }
.product-top .images .large-image { display: block; }
.product-top .images .gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(8rem, 1fr)); gap: 1rem; margin-top: 2rem; }
.product-top .images .gallery .image { position: relative; padding-top: 75%; border: 1px solid #eee; transition: .3s; display: block; }
.product-top .images .gallery .image img { position: absolute; left:2px; top:2px; right: 2px; bottom: 2px; object-fit: cover; width: auto;  transition: .3s; width: calc(100% - 4px); height: auto; }
.product-top .images .gallery .image:hover { border: 1px solid var(--color-blue); }
.product-top .info { flex-basis: 35rem; flex-grow: 1; }
.product-top .info .properties { margin-top: 2rem; }
.product-top .info .properties .title { font-weight: bold; color: var(--color-blue); font-size: 1.8rem; margin-bottom: 0.3rem; }
.product-top .info .properties .property:not(:last-child) { margin-bottom: 1rem; }

@media screen and (max-width: 768px) {
	.product-top .images .gallery { justify-content: center; display: flex; }
	.product-top .images .gallery .image { width: 12rem; }
}


/* Block: Product details */
/* ----------------------------------------------------- */
#product-details .page-block-container { display: flex; align-items: start; gap: 4rem; flex-wrap: wrap; }
#product-details .product-details-content { flex-basis: 60%; flex-grow: 1; }
#product-details .text.-hidden { display: none; }
#product-details .ui-button { margin-top: 1rem; }
#product-details .description { margin-bottom: 4rem; }
#product-details .description h2 { font-size: 2rem; color: var(--color-blue); }
#product-details .description > *:last-child { margin-bottom: 0; }
#product-details .detail h2 { font-size: 2rem; color: var(--color-blue); }
#product-details .detail:not(:last-child) { margin-bottom: 4rem; }
#product-details .detail .fits-for { display: flex; align-items: center; gap: 1.5rem; flex-wrap: wrap; }
#product-details .detail .fits-for .fit { width: 6rem; height: 6rem; background: white; border-radius: 50%; box-shadow: 0 0 3px 0 #0003; position: relative; }
#product-details .detail .fits-for .fit i { background: var(--color-blue); position: absolute; width: 60%; height: 60%; left:50%; top:50%; transform: translate(-50%, -50%); }
#product-details .product-details-packaging { flex-basis: 20%; flex-grow: 1; min-width: 35rem;}
#product-details .product-details-packaging .packaging-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 1rem; }
#product-details .product-details-packaging .packaging { background: gray; padding-top: 76%; position: relative; }
#product-details .product-details-packaging .packaging img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }

@media screen and (max-width: 768px) {
	#product-details .detail .fits-for { justify-content: center; }
	#product-details .page-block-container > * { min-width: auto; width: 100%; }
	#product-details .product-details-packaging { flex-basis: 100%; }
}


/* Block: Product video */
/* ----------------------------------------------------- */
#product-video { padding-top:0; padding-bottom:0; }
#product-video .video-content { margin-top: 4rem; }
#product-video .video-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(600px, 1fr)); gap: 1rem;}


/* Block: Clients */
/* ----------------------------------------------------- */
#clients .clients-container { grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr)); gap: 2rem; margin: 6rem 0 4rem 0; }

#clients-map { background: var(--color-gray); position: relative; }
#clients-map .map { position: absolute; left:0; top:0; width: 100%; height: 100%; filter: saturate(80%); }
#clients-map .map *[class*="copyrights-promo"] { display: none; }
#clients-map .client-counters { display: flex; align-items: center; gap: 1rem 4rem; justify-content: center; min-height: 30rem; padding-top: 8rem;}
#clients-map .client-counter { background: white; width: 15rem; height: 15rem; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 50%; text-align: center; flex-shrink:0; }
#clients-map .client-counter { font-size: 3rem; }
#clients-map .client-counter .title { color: #0005; }
#clients-map .client-counter .count { color: #333; font-weight: bold; font-size: 4.2rem; }

@media screen and (max-width: 768px) {
	#clients-map .client-counters { flex-direction: column; gap: 2rem; }
	#clients-map .client-counter { border-radius: 0; width: auto; height: auto; min-width: 20rem; padding: 1rem; }
}

.side-image-block .page-block-container { display: flex; flex-wrap: wrap; }
.side-image-block .page-block-container > * { flex-grow: 1; min-width: 40rem; }
.side-image-block .page-block-container > .content { flex-basis: 40%; display: flex; gap: 2rem; justify-content: center; padding: 4rem; align-items: start; flex-direction: column; }
.side-image-block .page-block-container > .content h2 { color: #333; font-size: 3rem; text-transform: uppercase; margin-bottom:0; width: 100%; }
.side-image-block .page-block-container > .image { flex-basis: 40%; background: #333; align-self: stretch;  }
.side-image-block .page-block-container .image-wrapper { padding-top: 75%; position: relative; height: 100%; }
.side-image-block .page-block-container > .image img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }
.side-image-block .page-block-container > .content ul li::marker { color: var(--color-red); }
.side-image-block .page-block-container > .content ul li:not(:last-child) { margin-bottom: 1rem; }

.side-image-block.-gray { background: transparent; }
.side-image-block.-gray .page-block-container { background: var(--color-gray); }


@media screen and (max-width: 768px) {
	.side-image-block .page-block-container { flex-wrap: wrap; }
	.side-image-block .page-block-container > * { min-width: auto; flex-basis: 100% !important;  }
	.side-image-block .page-block-container > .image { min-width: 100%; }
	.side-image-block.-reverse .page-block-container { flex-direction: column-reverse; }
	.side-image-block .page-block-container > .content { align-items: center; }
}


#projects .buttons { display: flex; justify-content: center; width: 100%; margin-top: 2rem; }

#product-additional .content h2 { font-size: 1.8rem; margin-bottom: 1rem; }
#product-additional .check-option { padding-left: 6rem; position: relative; }
#product-additional .check-option *:last-child { margin-bottom: 0; }
#product-additional .check-option::before { content: ''; position: absolute; width: 4rem; height: 4rem; background: var(--color-blue); top: -1rem; left:0; --image: url(../img/icons/checkmark.svg);	mask: var(--image) center/contain no-repeat; -webkit-mask: var(--image) center/contain no-repeat; }
@media screen and (max-width: 768px) {
	#product-additional .check-option { text-align: left; }
	#product-additional .content h2 { text-align: left; }
}


/* Block: Contacts top */
/* ----------------------------------------------------- */
#contacts-top { display: flex; gap: 4rem; flex-wrap: wrap; align-items: center; }
#contacts-top h2 { font-size: 2rem; margin-bottom: 1rem; }
#contacts-top .icon { display: inline-flex; width: 5rem; height: 5rem; background: white; box-shadow: 0 0 3px 0 #0003; border-radius: 50%; align-items: center; justify-content: center; }
#contacts-top .icon i { background: var(--color-blue); width: 2rem; height: 2rem; }
#contacts-top .phones { margin: 0; }
#contacts-top .phones .phone { font-size: 2.4rem; display: flex; gap: 1rem; align-items: center; }
#contacts-top .emails { margin-top: 2rem; }
#contacts-top .email { display: flex; align-items: center; gap: 1rem; margin-bottom: 0.5rem; }
#contacts-top .email a { color: var(--color-blue); text-decoration: underline; display: block; }
#contacts-top .email a:hover { text-decoration: none; color: #333; }
#contacts-top .content { flex-grow: 1; flex-basis: 40rem; font-size: 1.6rem; }
#contacts-top .address { margin-bottom: 0.25em;}
#contacts-top .addresses { margin-bottom: 2rem; }
#contacts-top .contacts-map { min-height: 40rem; background: #eee; flex-grow: 2; position: relative; flex-basis: 50rem }
#contacts-top .contacts-map .ymaps-2-1-79-map { position: absolute; left:0; top: 0; width: 100%; height: 100%; }


#category-bottom .text-top { margin-bottom: 4rem; }

#advantages > .page-block-container > .content { font-size: 2rem; text-align: center; max-width: 80rem; margin:0 auto 4rem auto; }

.articles-list-container > *:not(:last-child) { margin-bottom: 4rem; }

#article { padding-top: 4rem; min-height: 60vh;}

#content { padding-top: 4rem; padding-bottom:0; }
#content > .page-block-container { display: flex; gap: 1rem; }
#content #article { padding:0; flex-grow: 1; min-height: auto; }
#content #side { padding-left:0; padding-right:0; padding-top: 0; flex-basis: 25rem; flex-shrink: 0; flex-grow: 0; overflow: visible; z-index: 10; padding-bottom:0; }
#content #article .breadcrumbs { margin-bottom: 3rem; }

@media screen and (max-width: 960px) {
	#content #side { display: none; }
	#content > .page-block-container { display: block; }
}

.category-group:not(:last-child) { margin-bottom: 6rem; }
.category-group > h2 { font-size: 2.6rem; background: var(--color-light-gray); padding: 2rem;  display: inline-block; border-left: 5px solid var(--color-blue); }
.category-group .category-description { margin-bottom: 2rem;  }
.category-group .category-description p { margin-bottom: 0.2em; }
.category-group .open-category-button { margin-top: 2rem; }



.side-menu h2 { font-size: 2rem; padding: 2rem 2rem; margin-bottom:0; display: flex; gap: 1rem; background: linear-gradient(to top, #0002, transparent 1rem); align-items: center; padding-left: 1rem; }
.side-menu { background: var(--color-light-gray); }
.side-menu h2 i { width: 3.5rem; height: 3.5rem; }
.side-menu li { position: relative; }
.side-menu a { display: flex; padding: 1rem; gap:1rem; align-items: center; border-left: 4px solid transparent; transition: .3s;  }
.side-menu a:hover { text-decoration: none; }
.side-menu li:not(:last-child) { border-bottom: 1px solid #ddd; }
.side-menu li ul { display: none; position: absolute; left:100%; top: 0;  background: var(--color-light-gray); }
.side-menu li:hover > ul { display: block; font-size: 1.5rem; min-width: 30rem; box-shadow: 0 0 5px 0 #0003; }
.side-menu .menu > li > a { padding: 1rem 2rem; padding-left: 1rem; line-height: 1.2; padding-right: 4rem; font-size: 1.5rem; }
.side-menu .menu > li.-has-children > a::after { content: ''; position: absolute; width:2rem; height:1.3rem; top:50%; right: 0.5rem; background: url(../img/icon-arrow-right.svg) center/contain no-repeat; transform: translate(-50%, -50%); }
.side-menu .menu > li > a::before { display: block; width: 3.5rem; height: 3.5rem; content: ''; background: gray; flex-shrink:0; background: center/contain no-repeat;}
.side-menu .menu li:hover > a { border-left: 4px solid var(--color-blue); }
.side-menu .menu li.page-id-18 > a::before { background-image: url(../img/icons/menu-termo.png); }
.side-menu .menu li.page-id-22 > a::before { background-image: url(../img/icons/menu-vacuum.png); }
.side-menu .menu li.page-id-23 > a::before { background-image: url(../img/icons/menu-horizontal.png); }
.side-menu .menu li.page-id-24 > a::before { background-image: url(../img/icons/menu-vertical.png); }
.side-menu .menu li.page-id-25 > a::before { background-image: url(../img/icons/menu-palette.png); }
.side-menu .menu li.page-id-318 > a::before { background-image: url(../img/icons/menu-zapayschiki.png); }
.side-menu .menu li.page-id-352 > a::before { background-image: url(../img/icons/menu-skladskoe.png); }
.side-menu .menu li.page-id-110 > a::before { background-image: url(../img/icons/menu-plenka.png); }

.side-image-block:not(.-gray):not(.-reverse) .page-block-container > .content { padding: 4rem; padding-left:0; }
.side-image-block.-reverse:not(.-gray) .page-block-container > .content { padding: 4rem; padding-right:0; }
@media screen and (max-width: 768px) {
	.side-image-block:not(.-gray):not(.-reverse) .page-block-container > .content { padding:4rem 0; }
	.side-image-block.-reverse:not(.-gray) .page-block-container > .content { padding:0; padding-bottom: 2rem; }
}


.page-template-6 #project-top { padding-bottom:0; }
.page-template-9 .projects-list { margin-top: 4rem;}
.page-template-9 .projects-list .button { margin-top: 4rem; display: flex; justify-content: center; }
.page-template-4 #article {  min-height: auto; }

#article .search-form { display: flex; align-items: center;  margin-bottom: 2rem; }
#article .search-form input { background: var(--color-gray); }

.content-wrapper .page-block { padding-top:0; padding-bottom:0; }
.content-wrapper { padding: 4rem 0; }

#content-top { margin: 0; }

.category-top { margin-bottom: 4rem; display: flex; align-items: center; gap: 4rem; justify-content: center; flex-wrap: wrap;  }
.category-top > * { flex-basis: 30rem; flex-grow: 1; }
.category-top .content { flex-basis: 60%; }
.category-top .image { display: flex; justify-content: center; }
.category-top .content .ui-button { margin-top: 2rem; max-height: 4rem; height: 4rem; }
.category-top .content .ui-button i { width: 1.5rem; height: 1.5rem; }
.category-top .text.-hidden { display: none; }

.category-teaser { margin: 6rem 0; }
.category-bottom { margin-top: 4rem; }
.category-advantages { margin-top: 4rem; }
.category-subcategories { margin-bottom: 4rem; }

#article .category-products { margin-top: 4rem; }
#article .category-products .cards-container { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
#article .category-subcategories .cards-container { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
#article .page-block { padding: 4rem 0; }
#article h2 { font-size: 2.4rem; }
#article h3 { font-size: 2rem; }

#company-about .page-block-container { display: flex; gap: 4rem; align-items: center; margin-bottom: 4rem; }
#company-about .page-block-container > * { flex-basis: 40rem; flex-grow:1; }
#company-about .image-wrapper { position: relative; padding-top: 60%; }
#company-about .image-wrapper img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: contain; }

@media screen and (max-width: 768px) {
	#company-about .page-block-container { flex-wrap: wrap; }
}

#company-production .image { display: flex; padding-top: 0; flex-wrap: wrap; gap: 1rem; background: none; }
#company-production .image .image-item { flex-basis: 40%; flex-grow: 1;  flex-wrap: wrap; align-self: stretch; }
#company-production .image .image-inner { padding-top: 75%; position: relative; }
#company-production .image .image-item img { position: absolute; left:0; top:0; width: 100%; height: 100%; object-fit: cover; }


.catalog-content { margin-bottom:4rem;}
#product-specs .page-block-container > *:last-child { margin-bottom: 0 !important; }

.project-video { margin-bottom: 4rem; }
.project-gallery { margin-bottom: 4rem; }
.project-gallery .cards-container { grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); }

#service-top { margin-bottom: 4rem; }
#service-top .content { gap: 0.5rem !important; }
#service-top .image { background: none; }
#service-top .image img { object-fit: contain !important; }


#guarantee-more .content { background: var(--color-gray); padding: 4rem; }
#guarantee-more .image { background: none; padding: 2rem;}
#guarantee-more .image img { object-fit: contain !important; }



/* Calculator form */
#calculator {}
#calculator .submit-form { display:none; }
#calculator .calculator-container { display: flex; aling-items: center; box-shadow: 0 0 5px 0 #0002; flex-wrap: wrap; }
#calculator .calculator-container .help { padding: 4rem; flex-basis: 40rem;  display: flex; flex-direction: column; align-items: start; justify-content: center;  border-left: 1px solid #eee; font-size: 1.5rem; gap: 2rem; background: linear-gradient(to right, #0001, transparent 4rem); }
#calculator .calculator-container .help .logo { width: 20rem; }
#-calculator .calculator-heading { padding: 3rem 4rem; font-size: 2.5rem; margin-bottom:0; color: var(--color-blue); display: flex; align-items: center; gap: 1rem; justify-content: start; background: linear-gradient(to top, #e3e3e350, transparent 3rem); flex-basis: 100%; }
#-calculator .calculator-heading i { background: var(--color-blue); width: 4rem; height: 4rem; }
#calculator .calculator-heading { padding: 3rem 4rem; font-size: 2.5rem; margin-bottom:0; color: white; display: flex; align-items: center; gap: 1rem; justify-content: start; background: var(--color-blue); flex-basis: 100%; }
#calculator .calculator-heading i { background: white; width: 4rem; height: 4rem; }

#calculator .pages-container { flex-grow: 1;  }

#calculator .page { display: none; }
#calculator .page .content { flex-grow: 1;  padding: 2rem 4rem; }
#calculator .page h2 { font-size: 2rem; margin: 2rem 0 3rem 0; }
#calculator .page .heading-text { margin-top: -2rem; margin-bottom: 2rem; font-style: italic; }
#calculator .page .help { display: none; }

#calculator .page.-active { display: flex; }

#calculator .group { display: grid; align-items: center; gap: 1rem; flex-wrap: wrap; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
#calculator .simple-input { box-shadow: 0 0 5px 0 #0002;  border: 2px solid transparent; padding: 1rem 2rem; display: flex; align-items: center; gap: 1rem; height: 6.5rem; }
#calculator .simple-input label { flex-basis: 30%; }
#calculator .simple-input input[type="text"] { background: var(--color-light-gray); border: 2px solid #eee;  padding: 1rem; height: 4rem; flex-grow: 1; min-height: auto; }
#calculator .option { display: flex; align-items: center; gap: 1rem;  padding: 2rem; box-shadow: 0 0 5px 0 #0002;  border: 2px solid transparent; height: 6.5rem;}
#calculator .option.-active { border-color: var(--color-blue); }
#calculator .option input[type="radio"] { border-radius:0; width: 2rem; height: 2rem; }

#calculator .controls { border-top: 1px solid #eee; padding: 2rem 4rem; display: flex; gap: 2rem; align-content: center; margin-top: 2rem; }
#calculator .controls .status {  flex-grow: 1; }
#calculator .controls .status-count { margin-bottom: 0.5rem; }
#calculator .controls .status-count strong { font-weight: bold; color: var(--color-blue); }
#calculator .controls .status-bar { height: 1rem; border-radius: 99rem; background: #f0f0f0; position: relative; overflow: hidden; }
#calculator .controls .status-bar-inner { display: block; position: absolute; left:0; top:0; height: 100%; width: 20%; background: var(--color-blue); border-radius: 99rem; }
#calculator .controls .ui-button { display: none; height: 4rem; border-radius: 0.5rem; --button-color: var(--color-blue); }
#calculator .controls .ui-button.-disabled { opacity: 0.4; --button-color: #888; --button-text-color: white; }
#calculator .controls .ui-button.-visible { display: inline-flex; }
#calculator .controls .ui-button[data-action="submit"] { --button-color: var(--color-red); --button-text-color: white; }

#calculator .finish-dialog { position: absolute; top:50%; left:50%; width: 100%; max-width: 50rem;  height: 30rem; background: #fff9; display: flex; align-items: center; justify-content: center; border: 2px solid var(--color-blue); text-align: center; padding: 4rem; transform: translate(-50%, -50%); box-shadow: 0 0 10px 0 #0002; display: none; }
#calculator .finish-dialog h2 { color: var(--color-blue); margin-bottom: 2rem; }

#calculator.-finished .calculator-container { filter: blur(10px); opacity:0.5; }
#calculator.-finished .finish-dialog { display: flex; }

/* Pages overrides */
.page-id-1 #contacts-consult { padding-top:0; }

.info-panels-container { display: flex; gap: 2rem; flex-wrap: wrap;  }
.info-panels-container > * { flex-grow: 1; flex-basis: 60rem; }
.info-panel { align-self: stretch; display: flex; flex-direction: column; }
.info-panel > h2 { background: var(--color-light-gray); padding: 1.5rem 2rem; display: inline-block; text-align: left; margin-bottom:0; color: var(--color-blue); border-bottom: 1px solid #ddd; padding-right: 6rem; clip-path: polygon(0 0, calc(100% - 3rem) 0, 100% 100%, 0 100%); align-self: start; }
.info-panel > .content { background: var(--color-light-gray); padding: 4rem; flex-grow: 1; }


.link-banner { background: linear-gradient(210deg, #0002, transparent 20rem), var(--color-gray); display: flex; align-items: center; border-left: 7px solid var(--color-blue); border-right: 7px solid var(--color-blue); text-decoration: none !important; overflow: hidden; transition: .3s; min-height: 20rem; }
.link-banner .image { flex-basis: 45%; position: relative; flex-shrink: 0; align-self: stretch;
	mask: linear-gradient(to top, white 80%, #000a);
}
.link-banner .image img { position: absolute; left: 2rem; right: 2rem; top:61%; bottom: 0; object-fit: cover; transform: translate(0, -50%); width: calc(100% - 4rem); }
.link-banner h2 { font-size: 3rem !important; color: #333; margin-bottom: 1rem; text-align: left !important; }
.link-banner .content { padding: 4rem 2rem; position: relative; padding-left: 3rem; }
.link-banner .content::after { content: ''; display: block; position: absolute; left:0; top: 4rem; bottom: 4rem; border-left: 1px solid #0002; }
.iink-banner .ui-button { height: 7rem; font-size: 1.8rem; }
.link-banner:hover .ui-button { background-color: black; }
.link-banner:hover { background: linear-gradient(45deg, #fffa, transparent 20rem), linear-gradient(210deg, #1d656850, transparent 20rem), var(--color-gray); }
@media screen and (max-width: 768px) {	
	.link-banner .image img { top: 50%; }
	.link-banner h2 { font-size: 2rem !important; }
}

@media screen and (max-width: 640px) {
	.link-banner { flex-wrap: wrap; }
	.link-banner .image { flex-basis: 100%; display: flex; justify-content: center; padding-top: 2rem; }
	.link-banner .image img { position: relative; transform: none; width: 80%; top: auto; bottom: auto; left:auto; right: auto; }
	.link-banner .content { padding: 2rem; display: flex; justify-content: center; flex-wrap: wrap; }
}

#banner-catalog .link-banner { min-height: 30rem; }

.articles-years { display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; }
.articles-years .title {  font-weight: 500;  }
.articles-years .years-container { display: flex; gap: 0.5rem; flex-wrap: wrap; align-items: center; }
.articles-years .years-container a { display: inline-block; padding: 0.5rem; background: #f0f0f0; font-size: 1.7rem; text-decoration: none;  transition: .3s; }
.articles-years .years-container a:hover { background: var(--color-blue); color: white; }
.articles-years .years-container a.-active { background: var(--color-blue); color: white; }

.articles-tags { margin-bottom: 2rem; }
.articles-tags .tag { display: inline-block; padding: 0.5rem 1rem; background: #f0f0f0; font-size: 1.7rem; text-decoration: none;  transition: .3s; }
.articles-tags .tag:hover { background: var(--color-blue); color: white; }
.articles-tags .tag.-active { background: var(--color-blue); color: white; }
.articles-options { display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; margin-bottom: 4rem; }
.articles-options .articles-years { flex-grow: 1; flex-basis: 20rem; }
.articles-sort { display: flex; align-items: center; gap: 1rem; }
.articles-sort select { background: #f0f0f0; appearance: auto; border: 2px solid transparent; }
.articles-sort select option { position: relative; display: block; appearance: auto; }
.articles-sort select option::after { content:''; display: block; width: 1rem; height: 1rem; background: black; position: absolute; right: 1rem; top: 50%; }

.-articles-list-container { display: flex; flex-direction: column; gap: 1rem; }

/* #preloader { display: none; }
body > .container { opacity: 1; }
*/

#order-consult { display: flex; flex-wrap: wrap; gap: 2rem 4rem; }
#order-consult > * { flex-basis: 30rem; flex-grow: 1; }

/* ============================================================== */
#cookie-popup { display: none; position: fixed; bottom: 2rem; left: 50%; width: 100%;
	max-width: 75rem; box-shadow: 0 0 10px 0 #0002; border-radius: 0rem; padding: 3rem 4rem; background: white; transform: translate(-50%, 0); z-index:10000; flex-wrap: wrap; justify-content: center; gap: 1rem; align-items: center; color: black; font-size: 1.5rem; }
#cookie-popup .text { flex-basis: 20rem; flex-grow: 1; }
#cookie-popup .link { color: var(--color-blue); text-decoration: underline; }
#cookie-popup.-active { display: flex; }



/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; user-select: none;  -webkit-touch-callout: none; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

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

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide { }
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

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

/**
 * Swiper 8.3.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: July 26, 2022
 */

@font-face {
  font-family: 'swiper-icons';
  src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}
.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-pointer-events {
  touch-action: pan-y;
}
.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
/* 3D Effects */
.swiper-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999;
}
.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}
.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}
.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: 'prev';
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: 'next';
}
.swiper-button-lock {
  display: none;
}
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 10px;
  left: 0;
  width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: 50%;
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
          appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}
.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}
/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-lock {
  display: none;
}
/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}
.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}
.swiper-vertical > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-vertical {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.swiper-slide-zoomed {
  cursor: move;
}
/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}
.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube {
  overflow: visible;
}
.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev,
.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
.swiper-cube .swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}
.swiper-cube .swiper-cube-shadow:before {
  content: '';
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}
.swiper-flip {
  overflow: visible;
}
.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
}
.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-flip .swiper-slide-shadow-top,
.swiper-flip .swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}
.swiper-cards {
  overflow: visible;
}
.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  overflow: hidden;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

div.dark_square .pp_nav { clear: none }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

div.pp_pic_holder a:focus { outline: none }

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

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

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

* html .pp_content { width: 40px }

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

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

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

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

.pp_description { display: none; margin: 0 }

.pp_social { float: left; margin: 0 }

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

.pp_social .twitter { float: left }

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

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

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

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

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

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

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

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

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

.pp_gallery ul a img { border: 0 }

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

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

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

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

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

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

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

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

#pp_full_res { line-height: 1 !important }

#pp_full_res .pp_inline { text-align: left }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

	a.pp_close { right: 10px !important; top: 10px !important; }
}
