/**** normalize-5.0.0.css pieces ****/

html { line-height: 1.15; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }

body { margin: 0 }

hr {  box-sizing: content-box; height: 0; overflow: visible; }

a { background-color: transparent; -webkit-text-decoration-skip: objects; }

a:active, a:hover { outline: none }

b, strong { font-weight: inherit }
b, strong { font-weight: bolder }

/*small { font-size: 80%; }*/

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sub { bottom: -0.25em }
sup { top: -0.5em }

audio, video { display: inline-block }
audio:not([controls]) { display: none; height: 0; }

img { border-style: none }

button, input, select, textarea { font-family: sans-serif; font-weight: normal; font-size: 100%; line-height: 1.15; margin: 0; background: #fff }

button, input { overflow: visible }
button, select { text-transform: none }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

textarea { overflow: auto }

[type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0; }

[hidden] { display: none }



/**** layout ****/

html {height: 100%;}
body { margin: 0; height: 100%; display: flex; flex-direction: column;}
.site-header, .site-footer { flex: none;}
.site-main {flex: 1 0 auto;}


.container {margin: 0 auto; max-width: 1100px}

/* remove for responsive sites */ /* var */
/*
body { min-width: 880px}
.container { min-width: 800px; padding: 0 40px; }
*/

/* for browsers without flexbox */
.site-header:before, .site-header:after, .site-footer:before, .site-footer:after, .site-main:before, .site-main:after { display: table; content: " "; }
.site-header:after, .site-footer:after, .site-main:after { clear: both }


.main-sidebar { float: left; width: 240px; }
.main-content { margin-left: 260px; }

.badge {margin: 0 auto; width: 100% !important;}


/**** styles ****/

body {
    font-family: 'PT Serif', serif;
    font-size: 14pt;
    color: #414141; /* var */
    background-color: #fff;
}


a { color: #337ab7 } /* var */
a:hover { color: #23527c } /* var */

a.noline { text-decoration: none }

a.line-on-hover { text-decoration: none }
a.line-on-hover:hover { text-decoration: underline }

a.white { color: #fff }

a.dash { text-decoration: none; border-bottom: 1px dashed; }
a.dot {text-decoration: none; border-bottom: 1px dotted; }


.black { color: #404040 }
.white { color: #fff }
.red { color: #ee2958 }
.blue { color: #215c9a }
.green { color: #079a00 }


/* tables */
table.data { width: 100%; border: none; border-collapse: collapse; border-spacing: 0; }
table.data th { background: #ededed; text-align: left; font-weight: bold; padding: 5pt; border-bottom: 1px solid #bfbfbf; }
table.data td { padding: 5pt; border-bottom: 1px solid #bfbfbf; }



/* headings */
h1, h2, h3, h4, h5, h6 {
  /* var */ /* color, font-weight, font-family, font-style, text-align */
    color: #414141;
    font-weight: bold;
    /*font-family: 'bitterregular', sans-serif;*/
    padding: 0;
    text-align: center;
}
h1, h2, h3 { margin: 20pt 0 15pt 0; }
h4, h5, h6 { margin: 15pt 0 10pt 0; }
h1 { font-size: 32pt; }
h2 { font-size: 30pt; }
h3 { font-size: 26pt; }
h4 { font-size: 24pt; }
h5 { font-size: 20pt; }
h6 { font-size: 18pt; }
/*h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child { margin-top: 10pt; }*/

p { margin: 10pt 0; line-height: 1.2em; }
.margin0 { margin-top: 0; margin-bottom: 0; }
.margin3 { margin-top: 3pt; margin-bottom: 3pt }
.margin5 { margin-top: 5pt; margin-bottom: 5pt; }
.margin10 { margin-top: 10pt; margin-bottom: 10pt; }
.margin15 { margin-top: 15pt; margin-bottom: 15pt; }
.margin20 { margin-top: 20pt; margin-bottom: 20pt; }

img.left { float: left; margin: 5pt 12pt 5pt 0; }
img.right { float: right; margin: 5pt 0 5pt 12pt; }
p img { background: #ededed; padding: 10px; display: -moz-inline-block; display: inline-block; }
p[align='left'] img, p[style*='left'] img { float: left; margin: 5pt 15pt 5pt 0; }
p[align='right'] img, p[style*='right'] img { float: right; margin: 5pt 0 5pt 15pt; }
p > img[style*='left'] { float: left; margin: 5pt 15pt 5pt 0; }
p > img[style*='right'] { float: right; margin: 5pt 0 5pt 15pt; }

ol,ul { margin: 0 0 10pt 0; }
li { margin: 5pt 0 5pt 25pt; }


label { cursor: pointer }
textarea { resize: vertical }
input[type="text"], input[type="textarea"], input[type="password"], input[type="file"], input[type="date"], select, textarea {
    box-sizing: border-box;
    /*color: #ebebeb;*/
    padding: .75em;
    outline: none;
    border: none;
    /*border-radius: 3px;*/
    border: 1px solid #bfbfbf;
    border-radius: 5px;
    font-weight: 100;
}
input[type="text"]::placeholder, input[type="textarea"]::placeholder, input[type="password"]::placeholder, input[type="file"]::placeholder, input[type="date"]::placeholder, select::placeholder, textarea::placeholder {
    color: #bfbfbf;
}
input.x100, textarea.x100, select.x100 { width: 100%; }
input.x50, textarea.x50, select.x50 { width: 50%;}
input.x25, textarea.x25, select.x25 { width: 25%; }
/* button, input, select, textarea { font-family: inherit; font-size: inherit; line-height: inherit; } */


div.file { padding: 15pt 0; padding-left: 80px; background: no-repeat left; }
div.file32 { padding: 2pt 0 2pt 40px; background: no-repeat left; }
div.file span, div.file32 span { white-space: nowrap; }



.title28 { font-size: 28pt; }
.title24 { font-size: 24pt; }
.title20 { font-size: 20pt; }
.title18 { font-size: 18pt; }
.title16 { font-size: 16pt; }
.title14 { font-size: 14pt; }
.title13 { font-size: 13pt; }
.title12 { font-size: 12pt; }
.small { font-size: 12pt;}
.lite,.lite:visited { color: #999999; }
.strong { font-weight: bold; }
.italic { font-style: italic; }

.pattern { background: rgba(255, 244, 229, 0.4) url('/images/background.png') }


.block-margins:before, .block-margins:after { display: table; content: " "; }

.noselect {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

.nowrap { white-space: nowrap; }

.clear { clear: both }


.btn {
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: none;
  white-space: nowrap;
  padding: 15px 30px;
  text-decoration: none;
  color: #000 !important;
  outline: none !important;
  background-color: #f5bf6f; /* var */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
    border-radius: 50px;
    transition: background-color .25s;
    /*font-family: 'bitterregular', sans-serif;*/
    text-transform: uppercase;
    font-size: 11pt;
}

.btn:hover {
  background-color: #dbaa65; /* var */
    transition: background-color .25s;
}

.btn:active { background-color: #aaa }


div.block { padding: 10pt 15pt; background-color: #f2f2f2; }

div.tabled, div.tabled-top { display: table; width: 100%; border-collapse: collapse; border-spacing: 0; }
.tabled > div { display: table-cell; vertical-align: middle}
.tabled-top > div { display: table-cell; vertical-align: top}


.action-buttons > a {
    display: inline-block;
    padding: 3px;
    transition: background-color 0.3s;
}
.action-buttons > a:hover { background: #999 }
.action-buttons > a > img { display: block }


.pagination { margin: 20px 0}
.pagination > a, .pagination > span { display: inline-block; font-size: 10pt; padding: 5px 8px; margin-right: 10px;}
.pagination > a {
  background: #337ab7; /* var */
  color: white; /* var */
  text-decoration: none
}
.pagination > span.page-active,
.pagination > a:hover {
  background: #286090; /* var */
  color: white;
}


.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }

.text-lowercase { text-transform: lowercase; }
.text-uppercase { text-transform: uppercase; }
.text-capitalize { text-transform: capitalize; }

ul.list-unstyled,
ol.list-unstyled {
  padding-left: 0;
  list-style: none;
  margin: 0;
}

ul.list-unstyled > li,
ol.list-unstyled > li {
  margin: 0;
}

img.responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

/* requires inline-block or block for proper styling */
.text-overflow {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


form.site-form, div.site-form {
    display: block;
    padding: 30px 30px;
    background-color: #f2f2f2;
    margin: 20px 0;
    border-radius: 10px;
}

table.form-fields { width: 100% }
table.form-fields td:first-child { width: 25% }
table.form-fields td { padding: 6px 0}


/*
.row { margin-left: -15px; margin-right: -15px; }
.row:before, .row:after {display: table; content: ""; clear: both}
.row > .col4 { width: 25%; float: left; padding-left: 15px; padding-right: 15px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
.row > .col3 { width: 33.333333%; float: left; padding-left: 15px; padding-right: 15px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
*/

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

@font-face{
    font-family:'Arial Rub';
    src:url(data:application/font-woff2;base64,d09GMgABAAAAAAUEABEAAAAACowAAAShAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCYggOCYJzEQgKgzyDQgE2AiQDHAsQAAQgBYYIB1YMFj93ZWJmBhtWCcgekpRzBRRQAABFPIBVPPB/7L3v/ahFU0TpziiqDKIAv9gEhkmRItOdGZVT92TAEMqZnkNsB0kOohXiApJTeoWeJVSKVyJ44S8/MtocWvqHxHWuLy15xqf692OzIho5QrKHpEpMfPxhplMPcSGJt1VRyWsLIS71qYpzBBRVHv18LwTgeeaWChDu/r8yiKFP2u+99ykBdSAiCCVCbj0EEsmNZBcU5KkY+WNAMZWL9+iO3UmKNCSLnN4TeU9a3ausAlHaMabEBFJFBCMMCr/sEqC5ZkmE5vr+lEM8P6yeXCaihJp6cCnafDlgbHJSHlMbKvsfnfz1k/9B64zx3CFtbgMhguk6/jOQJP5YDRBfAJMpJwb0LzBoVq0jhOwQGZncyCA0nIeG7KQ5goH0U2qZKkiktdLI9TOQXmN+gqyf5kqygNxKq59Ibf6+BZ02mkt72zoleUBKOnfpsolRVELV7tS4t3rXKGWKfDGgSxSTIxjkFHS53SbyHjptNX0akXB8wosU/UVUkgWWWyus0hqBlzIFkTcaqUW6Vm4NCwJvFEXTpoQkaWTlVE9cqsqh7JXMaoIDqqxSJi9BvLHV+vkZpTU2G287gtZejOGarJCAmelkkMkllCyMrCnvNqyJjHxDmSh9gribKEQwaPqLqqwWlWL8OAjyP8kBkAGUgRQYA7O8pUkIJU/nbSOSlBt0ct1yh6Xtdhp9i07h0Ffzmn8l1lS/0uvhxDFqZVqiI9oOu763ZO2b2rO1esIVBMgtGr7gY87g48HIPX+GjvvsLNCX6FZY6qZGbim+sGCF/13TrNVp+9P8rvoN7R9aPVR3YO6F/i0rG+tWFLr8OcWMb/GkW4Ko8ZMqueKfeUSp+FRwZVwQI7IumiJ/UqVUjplGYvZjCBpioEMppcJBnsLfNJSlwAdQv0FxR1k8NCgvVAgqCVUARDAVLAVbQQ2BOgTqPKj7oOyOGGgFx9F+IuGpBq7DEyndLk9ti5tA9aJqXxT8iQFTuwyuQ/x5uCIT4gXIBJD1cXwnzjwf9hRGZiNWcTCEziXVHZ1EqifV/h3eT8MmEBCg5iT/R4tD6qh6ihrwDZ33g29JnSuGgW+WGbOHpIqTr5CuGZnwG7WDTPwLAfkSuZJmmvbWtwogI4ioiDxDd0eXVXoBGZLUAI4RJ0A4qhoeOPZmgUygFSBH7QYFbzdAyd4nUEn3G9QCQzBoWUMpOHIM+8GJfTgL9+AebsF9RIcP8ADqqBU/hDY6v/O9DN7RgByrze/QSzoXCNbxvATMov1SAqr9WWnNkiupHCdhLlaYzlr/4BQcHjHiqdnyUOlmA4Wg4C2gsTQjNk06Zs5czXjC/oVAYGqY7X/qrRZgErmKGa1TJqEwTQUutIEFfMDwvGmm23oEs8XjlrIcrmOXigX2aILgAbwUk2c9Yxf5R67Q1MKY4tFtl2opuQpT4ZwQmNmWTMySMSrJ4piQ0FQGpgt+aLOCqNbZMrLBVXa33oFlnX6bq/496Oa9JAMhEhmRQxYURKnsmbF0Tq9JtXDW1GjOLFRpMSlzdLaQPiQuN4cBfS6A4Kj6GPCfaQLdOlvfAQAA) format('woff2'),
    url(/fonts/arial-rub.woff) format('woff'),
    url(/fonts/arial-rub.ttf) format('truetype')
}
@font-face{
    font-family:'Arial Rub';
    font-weight:700;
    src:url(/fonts/arial-rub-bold.woff2?7c2b3ac) format('woff2'),
    url(/fonts/arial-rub-bold.woff?70aa249) format('woff'),
    url(/fonts/arial-rub-bold.ttf?601da18) format('truetype')
}
.rub { font-family:'Arial Rub', 'Helvetica Neue', Helvetica, Arial, sans-serif }

.square-image,
a.square-image {
    display: block;
    width: 100%;
    position: relative;
    padding-top: 100%;
    text-decoration: none;
    outline: none;
}
.square-image > div,
a.square-image > div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: center no-repeat;
    background-size: 100%;
    background-size: cover;
}

.logo { text-decoration: none; transition: opacity .25s }
.logo:hover { opacity: 50; transition: opacity .25s }

.header-margin { margin: 60px 0 60px }

.slides-text { font-size: 36pt }

/*.index-order-form { position: relative; top: 50px; z-index: 999; margin-bottom: 20px }*/
.index-order-form { padding: 40px 0 20px }

/* ------------------------------------ documents ------------------------------- */

div.file64 { padding: 15pt 0; padding-left: 80px; background: no-repeat left; }
div.file32 { padding: 2pt 0; padding-left: 40px; background: no-repeat left; }
div.file64 span, div.file32 span { white-space: nowrap; }

/* ---------------------------------- news ----------------------------------- */



/* -------------------------------- main menu ------------------------------------ */

.header-menu { /*background: #000;*/ }
.main-menu { width: 1024px; display: table; border-collapse: collapse; table-layout: auto; margin: 0 auto;/*color: #fff;*/ }
.main-menu > ul { display: table-row; }
.main-menu > ul > li { display: table-cell; list-style: none; vertical-align: middle; position: relative; text-align: center}
.main-menu > ul > li > a {
    padding: 20px 25px;
    /*line-height: 20px;*/
    text-align: center;
    white-space: nowrap;
    display: block;
    color: #404040;
    text-decoration: none;
    /*font-weight: 600;*/
    /*font-size: 16pt;*/
    /*font-family: "Philosopher", sans-serif;*/
}
.main-menu > ul > li.active > a { color: #000; text-decoration: underline }
.main-menu > ul > li:hover > a { color: #000; text-decoration: underline }

#main-menu-toggle {
    /*float: right;*/
    display: none;
    /*display: inline-block;*/
    background: #414141 url('/images/hamburger-white.png') center no-repeat;
    background-size: 50% 60%;
    width: 36px;
    height: 36px;
    padding: 10px;
    border-radius: 50px;
    margin: 15px 0;
    text-decoration: none;
    -webkit-transition: transform .25s;
    -moz-transition: transform .25s;
    -ms-transition: transform .25s;
    -o-transition: transform .25s;
    transition: transform .25s;
}

#main-menu-toggle.active {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: transform .25s;
    -moz-transition: transform .25s;
    -ms-transition: transform .25s;
    -o-transition: transform .25s;
    transition: transform .25s;
}



/* --------------------------------- slides --------------------------------------*/

#slide { height: 620px; background: url('/images/slide0.jpg') center no-repeat; background-size: cover }

/*.slides { overflow: hidden; position: relative; }*/
#slides { background: #000000; overflow: visible; position: relative; z-index: 0; /*margin-top: -30px*/ }
.slide { width: 100%; overflow: visible; background-size: cover; text-align: center; background-position: center; min-height: 750px; }
/*.slide > img { min-height: 600px; width: 100% }*/

a.slide-prev,
a.slide-next {
    display: block;
    width: 52px;
    height: 99px;
    position: absolute;
    top: 50%;
    margin-top: -50px;
    text-decoration: none;
    z-index: 200;
    opacity: 0.7;
    transition: opacity .25s;
}

a.slide-prev:hover,
a.slide-next:hover {
    opacity: 1;
    transition: opacity .25s;
}

a.slide-prev:active,
a.slide-next:active {
    opacity: 0.7;
    transition: opacity .25s;
}

a.slide-prev { left: 5%; }
a.slide-next { right: 5%; }



.gallery-photo {
    display: inline-block;
    vertical-align: top;
    width: 200px;
    margin: 0 20px 40px;
}

.gallery-photo__title {
    margin-top: 10px;
    font-size: 10pt;
}

a.gallery-photo__image-link {
    display: block;
    text-decoration: none;
}

a.gallery-photo__image {
    width: 200px;
}

.gallery-photo__buttons {
    margin-top: 10px;
}

/* catalog list */
.catalog-item { /*border: 1px #bfbfbf solid; border-radius: 10px;*/ margin-bottom: 80px; margin-top: 40px; transition: border-color .25s, box-shadow .25s }
/*.catalog-item:hover { -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .5); -moz-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .5); box-shadow: 0 0 10px 0 rgba(0, 0, 0, .5); transition: border-color .25s, box-shadow .25s }*/
.catalog-item > .tabled-top > div:first-child { width: 25% }
.catalog-item > .tabled-top > div:last-child { padding-left: 20px; padding-right: 20px }
.catalog-item .title { text-align: center; font-family: 'Philosopher', sans-serif; font-size: 18pt; margin: 10px auto }
/*.catalog-item .image { height: 240px; border-radius: 10px }*/
.catalog-item .image  { padding-top: 100%; position: relative }
.catalog-item .image > div { position: absolute; height: 100%; width: 100%; top: 0; left: 0; border-radius: 10px; background-size: cover; background-position: center; }
.catalog-item .icons { margin: 15px auto; text-align: center;  }
.catalog-item .icons div { margin: auto 5px; display: inline-block; }
.catalog-item .icons img { margin-right: 5px; vertical-align: -3px }
.catalog-item .description table { width: 100%; border: none; border-collapse: collapse; border-spacing: 0;  }
.catalog-item .description table td { padding-bottom: 5px; }
.catalog-item .description table td:last-child { font-weight: 600; width: 50% }
.catalog-item .description .icons { margin: 10px auto; text-align: left }
.catalog-item .description .icons img { vertical-align: -5px }
.photoproof { width: 20px; position: absolute; right: 6px; bottom: 6px }

.catalog-photo { display: inline-block; margin: 0 20px 20px 0; padding: 0; width: 150px; height: 150px; border-radius: 10px; background-position: center; background-size: cover }
.line { height: 1px; background: #bfbfbf; margin: 25px 15%;}
.equipment-list { list-style: none; margin-left: 0; margin-top: 20px; padding-left: 0 }
.equipment-list li { padding: 0; margin: 10px 0 }
.equipment-list li img { width: 42px; vertical-align: middle; padding: 3px; margin-right: 5px; border-radius: 50px; background-color: #f5bf6f }
.action-icon { margin-right: 5px; vertical-align: middle }

/*
.equipment-list-button { display: none }
.equipment-list-block { display: block }
*/
.equipment-list-button { display: block }
.equipment-list-block { display: none }

.catalog-photo-index { display: inline-block; margin: 20px 0 10px; width: 100%; min-height: 250px; border-radius: 10px; background-position: center; background-size: cover }
.index-catalog-table > div:last-child { display: none }

/* ----------------------------- forms --------------------------- */

div.form-fields input[type="text"], div.form-fields input[type="file"], div.form-fields select, div.form-fields textarea { width: 100%; margin-top: 5px }
div.form-fields .row > div { margin-top: 5px; margin-bottom: 10px }
#preview { position: relative }
#preview img { height: 100px; margin-right: 10px; margin-top: 10px; }
#preview .delete { background-color: #404040; position: relative; display: inline-block; height: 20px; width: 20px; margin-left: -30px; margin-right: 10px; }

/* ----------------------------- pulsing ---------------------------- */

.pulsing {
    animation: heartbeat 5s infinite;
}
@keyframes heartbeat
{
    0% {
        transform: scale(.85);
    }
    25% {
        transform: scale(1);
    }
    50% {
        transform: scale(.85);
    }
    75% {
        transform: scale(1);
    }
    100% {
        transform: scale(.85);
    }
}

/* ----------------------------- responsive --------------------------- */

/* свойство 'order' для flexbox -- изменение порядка блоков */

/*
for responsive layouts
@media (max-width: ...) {
  .main-sidebar { float: none; width: 100%}
  .main-content { margin-left: 0}
}
*/

@media (max-width: 1200px) {
    .container { margin: 0 20px; }
}

@media (max-width: 992px) {
    .index-order-form { position: relative; top: 0; margin-bottom: 0; margin-top: 20px }

    .index-catalog-table > div:last-child { display: block }
    .advantages > div > div.tabled { text-align: center }
    .advantages > div > div.tabled > div { display: inline; padding-right: 0 !important; }
}

/* main part */
@media (max-width: 768px) {

    .header-margin { margin: 40px 0 10px }

    h1, h2, h3, h4, h5, h6 {
        overflow-wrap: break-word;
    }

    .slides-text { font-size: 28pt }

    .options { width: 80%; margin: 0 10%; }
    .slide { width: 70%; padding: 20px 15% }

    .number-photo { margin: 0 2% 20px 2%; width: 45%; height: 150px; background-position: center; background-size: cover }

    .index-catalog-table > div:last-child { display: none }
    .catalog-photo-index { min-height: 400px }

    .catalog-photo-list { text-align: center; margin-bottom: 20px }
    .equipment-list li { width: 50%; display: inline-block }

    .catalog-photo { margin: 10px; width: 140px; height: 140px }


}

@media (max-width: 600px) {
    /*#main-menu-toggle { display: block }*/
    .main-menu { max-width: 320px; display: none; }
    .main-menu > ul { width: 100%; display: inline; padding: 0; margin: 0 }
    .main-menu > ul > li { display: block; margin: 0 }
    .main-menu > ul > li > a {
        padding: 5px 0 20px 0;
        text-align: center;
    }
    .main-menu .menu-delimiter { display: none }
    #main-menu-toggle { display: inline-block; text-align: center }

    .equipment-list li { width: 100%; display: block }

    .equipment-list-button { display: block }
    .equipment-list-block { display: none }


}

@media (max-width: 500px) {
}
