/* ---- ---- ---- ---- ---- ---- ---- ---- */
html, body { background: #eff2f7; font-size: 14px; color: #6d7681; width: 100%; height: 100%; }
dl, li, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, body, html, blockquote, input, textarea, select, button, a { margin: 0; padding: 0; outline: none; font-family: 'IBM Plex Sans', sans-serif; }
img { border: 0; vertical-align: top; } a { color: #0066b2; text-decoration: none; } a:hover { text-decoration: underline; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.reset { margin: 0; padding: 0; list-style: none; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.messages-true { background: #1ab394; border-radius: 2px; margin-bottom: 30px; color: #fff; font-size: 13px; padding: 15px 20px; }
.messages-false { background: #df3d3d; border-radius: 2px; margin-bottom: 30px; color: #fff; font-size: 13px; padding: 15px 20px; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.button { display: inline-block; cursor: pointer; border: none; transition: all .2s; font-weight: 500; border-radius: 3px; font-size: 14px; }
.button:hover { text-decoration: none; }
.button.buttonBlock { padding: 0; text-align: center; display: block; width: 100%; box-sizing: border-box; }
.button.buttonSmall { height: 32px; line-height: 32px; padding: 0 15px; }
.button.buttonMedium { height: 42px; line-height: 42px; padding: 0 20px; }
.button.buttonLarge { height: 50px; line-height: 50px; padding: 0 35px; }
.button.buttonBlack { background: rgba(0,0,0,0.6); color: #fff; }
.button.buttonBlack:hover { background: #000; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.pageFaq { padding: 10px 10px; border: 1px solid #ddd; width: 100%; display: inline-block; box-sizing: border-box; box-shadow: 0 1px 3px rgba(0,0,0,0.1); }
.pageFaq .pageFaqLeft { float: left; width: 322px; padding: 0 10px; box-sizing: border-box; }
.pageFaq .pageFaqRight { margin-left: 322px; padding: 0 10px; box-sizing: border-box; }
.pageFaq .pageFaqItem { padding: 10px 0; width: 100%; display: inline-block; }
.pageFaq .pageFaqItem span { display: block; padding-bottom: 7px; }
.pageFaq .pageFaqItem input { height: 42px; width: 100%; border: 1px solid #ddd; line-height: 40px; padding: 0 10px; box-sizing: border-box; transition: all .3s; }
.pageFaq .pageFaqItem input:active, .pageFaq .pageFaqItem input:focus { border-color: #0075d3; }
.pageFaq .pageFaqItem textarea { resize: none; height: 202px; width: 100%; border: 1px solid #ddd; line-height: normal; padding: 10px; box-sizing: border-box; transition: all .3s; }
.pageFaq .pageFaqItem textarea:active, .pageFaq .pageFaqItem textarea:focus { border-color: #0075d3; }
.pageFaq .pageFaqItem .pageFaqCode { margin-right: 250px; }
.pageFaq .pageFaqItem .pageFaqCode input { height: 70px; line-height: 70px; font-size: 30px; text-align: center; }
.pageFaq .pageFaqItem .pageFaqCode input::-webkit-input-placeholder { font-size: 20px; }
.pageFaq .pageFaqItem .pageFaqImage { float: right; width: 210px; }
.pageFaq .pageFaqItem .pageFaqImage .pageFaqCaptcha { padding: 2px; border: 1px solid #eee; }
.pageFaq .pageFaqBottom { clear: both; padding: 0 20px 10px 20px; text-align: center; }
.pageFaqAnswer { margin-top: 30px; }
.pageFaqAnswer .pageFaqItem { display: inline-block; width: 100%; position: relative; padding-bottom: 15px; margin-bottom: 15px; }
.pageFaqAnswer .pageFaqItem .left { float: left; background: #f1f1f1; padding: 15px; text-align: center; width: 170px; box-sizing: border-box;  }
.pageFaqAnswer .pageFaqItem .left h3 { font-size: 13px; }
.pageFaqAnswer .pageFaqItem .right { margin-left: 210px; }
.pageFaqAnswer .pageFaqItem .right h3 { font-size: 13px; padding-bottom: 10px; }
.pageFaqAnswer .pageFaqItem .right span { display: block; width: 100%; padding: 30px; background: #f9f9f9; margin-top: 10px; font-size: 13px; box-sizing: border-box; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.containerImages { width: calc(100% + 20px); position: relative; left: -10px; display: inline-block; }
.containerImages .containerImages--element { float: left; width: 20%; padding: 0 10px; margin-bottom: 20px; box-sizing: border-box; }
.containerImages .containerImages--element a { position: relative; text-decoration: none; color: #fff; font-size: 14px; display: block; }
.containerImages .containerImages--element a img { width: 100%; }
.containerImages .containerImages--element a:hover > .containerImages--element--window { opacity: 1; visibility: visible; }
.containerImages .containerImages--element a .containerImages--element--window { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(51,51,51,0.9); text-align: center; color: #fff; opacity: 0; visibility: hidden; transition: all .2s; }
.containerImages .containerImages--element a .containerImages--element--window i.gallery--plus { display: inline-block; width: 30px; height: 30px; background: url('../img/plus.png') no-repeat; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; }
.containerImages .containerImages--element a .containerImages--element--window .gallery--title { position: absolute; bottom: 0; left: 0; width: 100%; background: rgba(0,0,0,0.2); padding: 15px 0;  }
.containerImages .containerImages--element a .containerImages--element--window .gallery--title:empty { padding: 0; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.containerArticle { width: 100%; overflow: hidden; margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px solid #eff2f7; }
.containerArticle .containerArticle--image { float: left; width: 140px; margin-right: 25px; overflow: hidden; }
.containerArticle .containerArticle--present { overflow: auto; }
.containerArticle .containerArticle--present .present--title { padding: 5px 0 5px 0; font-size: 16px; font-weight: 500; }
.containerArticle .containerArticle--present .present--date { color: #6d7681; padding-bottom: 10px; }
.containerArticle .containerArticle--present .present--intro { color: #000; line-height: 18px; }
.containerArticle .containerArticle--present .present--more { padding-top: 10px; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.containerPost { position: relative; padding: 10px 0; }
.containerPost .containerPost--image { width: 100%; display: inline-block; position: relative; margin-bottom: 10px; text-align: center; }
.containerPost .containerPost--image img { max-width: 100%; }
.containerPost .containerPost--content { position: relative; font-size: 14px; }
.containerPost .containerPost--content img { max-width: 100%; }
.containerPost .containerPost--information { padding-top: 15px; margin-top: 15px; border-top: 2px solid #eff2f7; overflow: hidden; }
.containerPost .containerPost--information .information--date { float: left; margin-right: 30px; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.containerCookies { position: fixed; left: 0; bottom: 0; width: 100%; background: rgba(0,0,0,0.9); color: rgba(255,255,255,0.8); z-index: 500; padding: 25px 0; display: none; }
.containerCookies .containerCookies--button { float: right; width: 160px; }
.containerCookies .containerCookies--button a { border: 2px solid rgba(255,255,255,0.8); border-radius: 4px; height: 38px; line-height: 38px; color: #fff; text-decoration: none; font-weight: 400; font-size: 14px; display: block; text-align: center; width: 100%; transition: all .2s; }
.containerCookies .containerCookies--button a:hover { background: rgba(255,255,255,0.2); }
.containerCookies .containerCookies--present { margin-right: 160px; padding-right: 40px; line-height: 21px; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.containerCategories { position: relative; background: #fff; }
.containerCategories .containerCategories--title { font-size: 14px; font-weight: 500; padding: 15px 20px; border-bottom: 2px solid #eff2f7; color: #000; }
.containerCategories .containerCategories--content { position: relative; }
.containerCategories .containerCategories--content.padding { padding: 20px; }
.containerCategories .containerCategories--content a { display: block; padding: 14px 20px; border-bottom: 1px solid #eff2f7; color: #6d7681; text-decoration: none; font-weight: 700; position: relative; transition: all .2s; }
.containerCategories .containerCategories--content a.sub {font-weight: 500; padding: 14px 20px 14px 35px;}
.containerCategories .containerCategories--content a:last-child { border-bottom: none; }
.containerCategories .containerCategories--content a:hover { background: rgba(0,0,0,0.02); }
.containerCategories .containerCategories--content a.active { background: #eb6008; color: #fff; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.containerPagination { text-align: center; padding-top: 20px; width: 100%; display: inline-block; }
.containerPagination .containerPagination--element { height: 32px; padding: 0 15px; border: 1px solid #ddd; border-radius: 2px; line-height: 32px; margin: 0 2px 4px 2px; display: inline-block; color: #666; text-decoration: none; transition: all .2s; cursor: pointer; }
.containerPagination .containerPagination--element.current { background: #d54949; border-color: #d54949; color: #fff; }
.containerPagination .containerPagination--element.current:hover { background: #d54949; }
.containerPagination .containerPagination--element:hover { background: #f9f9f9; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.windowGenerated { position: fixed; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); z-index: 900; display: none; }
.windowGenerated .windowGenerated--container { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: #fff; border-radius: 3px; box-sizing: border-box; width: 380px; margin: auto; height: auto; }
.windowGenerated .windowGenerated--container .windowGenerated--close { position: absolute; top: 5px; right: 15px; font-size: 30px; cursor: pointer; }
.windowGenerated .windowGenerated--container .windowGenerated--title { font-size: 16px; font-weight: 500; color: #000; padding: 30px 40px 20px 40px; }
.windowGenerated .windowGenerated--container .windowGenerated--content--button { padding: 10px 40px; }
.windowGenerated .windowGenerated--container .windowGenerated--label { width: 100%; display: inline-block; padding: 10px 40px; box-sizing: border-box; border-bottom: 1px solid #eee; position: relative; }
.windowGenerated .windowGenerated--container .windowGenerated--label.policy { padding: 20px 40px 10px 40px; border-bottom: none; }
.windowGenerated .windowGenerated--container .windowGenerated--label .title { position: absolute; top: 7px; left: 35px; padding: 2px 7px; background: #fff; }
.windowGenerated .windowGenerated--container .windowGenerated--label .windowGenerated--text { width: 100%; height: 40px; border: 1px solid #ddd; border-radius: 2px; line-height: 40px; box-sizing: border-box; padding: 0 12px; font-size: 13px; }
.windowGenerated .windowGenerated--container .windowGenerated--label .windowGenerated--area { width: 100%; height: 76px; border: 1px solid #ddd; border-radius: 2px; box-sizing: border-box; padding: 12px; font-size: 13px; }
.windowGenerated .windowGenerated--container .windowGenerated--label .windowGenerated--checkbox { width: 16px; height: 16px; }
.windowGenerated .windowGenerated--container .windowGenerated--label .checkbox_title { line-height: 18px; position: relative; top: -1px; padding-left: 2px; }
.windowGenerated .windowGenerated--container .windowGenerated--message { padding: 20px; text-align: center; }
.windowGenerated .windowGenerated--container .windowGenerated--content { position: relative; }
.windowGenerated .windowGenerated--container .windowGenerated--loader { position: absolute; width: 100%; height: 100%; background: rgba(255,255,255,0.8); z-index: 100; display: none; }
.windowGenerated .windowGenerated--container .windowGenerated--loader img { width: 43px; height: 11px; position: absolute; top: 0; right: 0; left: 0; bottom: 0; margin: auto; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.containerDefault--present .containerCompanies--official { display: flex; flex-wrap: wrap;  }
.containerDefault--present .containerCompanies--official .containerCompany { box-shadow: 0 10px 30px rgba(0,0,0,0.15); border-radius: 2px; width: calc(25% - 20px); max-width: 360px; margin-right: 20px; margin-bottom: 20px; background: rgba(239, 242, 247, 1); }
.containerDefault--present .containerCompanies--official .containerCompany--img { padding: 20px; box-sizing: border-box; background: #fff; }
.containerDefault--present .containerCompanies--official .containerCompany--img a img { width: 100%; }
.containerDefault--present .containerCompanies--official .containerCompany .containerCompany--title { background: rgba(235, 96, 8, 0.8); text-align: center; padding: 10px; }
.containerDefault--present .containerCompanies--official .containerCompany .containerCompany--title a { color: #fff; text-decoration: none; }
.containerDefault--present .containerCompanies--official .containerCompany .containerCompany--text { padding: 5px 20px;  color: #000; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.containerDefault--present .containerColors--wrapper { display: flex; flex-wrap: wrap; margin: 0 -10px; }
.containerDefault--present .containerColors--wrapper .colorRoof { display: flex; flex-direction: column; max-width: 120px; padding: 10px; text-align: center; }
.containerDefault--present .containerColors--wrapper .colorRoof .colorRoof--text { line-height: 16px; margin-top: 10px; }

.containerDefault--present table.specificRoof { width: 100%; }
.containerDefault--present table.specificRoof td { padding: 10px; }
.containerDefault--present table.specificRoof tr:nth-child(odd) { background-color: #f3f3f3; }

.containerDefault--present .pdfBlock { display: inline-block; width: 100%; margin-top: 20px; }
.containerDefault--present .pdfBlock .pdfIcon { display: inline-block; vertical-align: middle; margin-right: 10px; }
.containerDefault--present .pdfBlock .pdfIcon img { max-width: 48px; }
.containerDefault--present .pdfBlock .pdfTitle { color: inherit; }
.containerDefault--present .pdfBlock .pdfTitle:hover { text-decoration: none; }

.containerDefault--present .containerCollection--img { display: flex; flex-wrap: wrap; list-style: none; padding: 0; }
.containerDefault--present .containerCollection--img li { width: 50%; padding: 20px; box-sizing: border-box; }
.containerDefault--present .containerCollection--img li img { width: 100%; }

/* ---- ---- ---- ---- ---- ---- ---- ---- */
.containerDefault--present ol, ul { overflow: auto; }
.containerDefault--present .productBlock--wrapper { display: flex; }
.containerDefault--present .productBlock--wrapper .productLeft { margin-right: 20px; }
.containerDefault--present .productBlock--wrapper .productLeft .productImg { box-shadow: 0 10px 30px rgba(0,0,0,0.1); }
.containerDefault--present .productBlock--wrapper .productLeft .productImg img { width: 100%; }
.containerDefault--present .productBlock--wrapper .productRight { width: 75%; }

.photo--container { display: inline-block; width: 100%; }
.photo--container.col-3 .photo--block { width: 33.333%; float: left; display: inline-block; box-sizing: border-box; text-align: center; padding: 5px; }
.photo--container.col-3 .photo--block img {max-width: 100%;}
.photo--container.col-2 .photo--block { width: 50%; float: left; display: inline-block; box-sizing: border-box; text-align: center; padding: 5px; }
.productDoors--wrapper { display: flex; flex-wrap: wrap; margin-left: -20px; }
.productDoors--wrapper .productDoors { padding: 20px; box-sizing: border-box; }
.productDoors--wrapper .productDoors img { width: 100%; }

.card--gallery { float: left; max-width: 350px; margin: 0 30px 30px 0; box-shadow: 0 10px 30px rgba(0,0,0,0.1); }
.card--gallery .gallery--block { background: rgba(105, 105, 105, 0.25); width: 100%; }
.card--gallery .gallery--block img { max-width: 100%; }
.card--gallery .gallery--block .gallery--prev { padding: 8px 15px; }
.card--gallery .gallery--block .gallery--prev a { display: inline-block; box-sizing: border-box; padding: 0 5px; width: 19%; }

.containerDefault--present .waterSystems--color { display: flex; list-style: none; padding: 0; }
.containerDefault--present .waterSystems--color li { margin-right: 20px; }
.containerDefault--present .waterSystems--color li:before { content: ""; display: inline-block; margin-right: 10px; width: 24px; height: 24px; border: 1px solid #e6e6e6; vertical-align: middle; }
.containerDefault--present .waterSystems--color li.white:before { background: #FFFFFF; }
.containerDefault--present .waterSystems--color li.bordo:before { background: #AA1627; }
.containerDefault--present .waterSystems--color li.bej:before { background: #ffb660; }
.containerDefault--present .waterSystems--color li.brown:before { background: #533313; }
.containerDefault--present .waterSystems--color li.grey:before { background: #5c5c5c; }
.containerDefault--present .waterSystems--products { display: flex; flex-wrap: wrap; margin: 20px 0; min-width: 150px; }
.containerDefault--present .waterSystems--products .waterSystem { width: calc(15% - 20px); min-width: 120px; margin: 0 30px 30px 0; box-shadow: 0 10px 30px rgba(0,0,0,0.1); }
.containerDefault--present .waterSystems--products .waterSystem .waterSystem--img { min-height: 118px; }
.containerDefault--present .waterSystems--products .waterSystem .waterSystem--img img {  width: 100%; padding: 20px; box-sizing: border-box; }
.containerDefault--present .waterSystems--products .waterSystem  .waterSystem--text { text-align: center; padding: 20px; }
.containerDefault--present .waterSystems--products .waterSystem  .waterSystem--text .waterSystemText--top { font-weight: 600; margin: 20px 0; }

.containerCatalogue .containerCatalogue--element.rowStyle { width: 100%; min-height: auto; }
.containerCatalogue .containerCatalogue--element.rowStyle .containerCatalogue--element--images { margin-right: 20px; }
.containerCatalogue .containerCatalogue--element.rowStyle .containerCatalogue--element--present { max-width: 400px; float: left; margin-left: 0; }
.containerCatalogue .containerCatalogue--element.rowStyle .containerCatalogue--element--small { display: flex; flex-wrap: wrap; margin-left: 710px; }
.containerCatalogue .containerCatalogue--element.rowStyle .containerCatalogue--element--small a.new { position: relative }
.containerCatalogue .containerCatalogue--element.rowStyle .containerCatalogue--element--small a.new img.newIcon { position: absolute; width: 32px; top: 5px; right: 5px; transform: rotate(340deg); }
.containerCatalogue .containerCatalogue--element.rowStyle .containerCatalogue--element--small a { display: block; max-width: 120px; min-width: 100px; margin-right: 20px; line-height: 18px; color: #6d7681; height: fit-content; width: 15%; margin-bottom: 10px; }
.containerCatalogue .containerCatalogue--element.rowStyle .containerCatalogue--element--small a:hover { text-decoration: none; }
.containerCatalogue .containerCatalogue--element.rowStyle .containerCatalogue--element--small a img { width: 100%; }
.containerCatalogue .containerCatalogue--element.rowStyle .containerCatalogue--element--small a .containerCatalogue--element--small--text { display: block; margin-top: 10px; text-align: center; }
.prBlock--element1 { width: 25%; float: left; text-align: center; font-size: 15px; padding: 15px; box-sizing: border-box; }
.prBlock--element1 img{ width: 100%; }
.prBlock { width: 100%; display: inline-block; }

.ventilationBlock--wrapper { border-top: 5px solid #eee; padding: 0 0 20px 0; margin: 0 0 20px 0; }
.ventilationBlock--wrapper:first-child {  border-top: none; }
.ventilationBlock--wrapper .ventilationImg { display: inline-block; vertical-align: top; padding: 20px; box-sizing: border-box; }
.ventilationBlock--wrapper .ventilationImg img { width: 100%; }
.ventilationBlock--wrapper .ventilatioText { display: inline-block; width: calc(100% - 250px); }

.prev-container { width: 100%; position: relative; display: inline-block; }
.prev-container .prev--block { width: calc(20% - 20px); display: inline-block; position: relative; overflow: hidden; opacity: 0.9; transition: all .2s; padding: 5px; box-sizing: border-box; }
.prev-container .prev--block:hover { opacity: 1; }
.prev-container .prev--block .prev--const { overflow: hidden; display: block; }
.prev-container .prev--block .prev--const img { width: 100%; }
.prev-container .prev--block .prev--title { position: absolute; width: calc(100% - 20px); bottom: 4px; left: 5px;  text-align: center; text-transform: uppercase; font-weight: 700; color: #fff; background: rgba(235, 96, 8, 0.6);  padding: 5px; }

.containerPrice--element--wrapper .containerPrice--element { width: 20%; max-width: 300px; float: left; padding: 20px; box-sizing: border-box; height: 370px; }
.containerPrice--element--wrapper .containerPrice--element .containerPrice--element--text { line-height: 16px; margin-top: 10px; }
.containerPrice--element--wrapper .containerPrice--element a { display: block; text-decoration: none; color: inherit; margin-bottom: 10px; }
.containerPrice--element--wrapper .containerPrice--element img { width: 100%; }