html, body, form, ul, li, dl, dd, dt, fieldset, form, blockquote { margin:0; padding:0; border:0 none; }
ul, dl, dd, dt { list-style:none; }

table, tbody, tr, td, th { margin:0; padding:0; border:0 none; border-collapse:collapse; border-spacing:0; vertical-align:top; }

input, select, textarea { font: 12px Arial, Helvetica, sans-serif; box-sizing:border-box; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; }

html, body { width:100%; height: 100%; }
html { background: #d6eff7 url('../i/bg01.png') repeat-y center 0; }
body { position: relative; font: 12px/20px Arial, Helvetica, sans-serif; color:#383838; background: url('../i/bg03.png') no-repeat center top; }

h1, h2, h3, h4, h5, h6 { margin:0; padding:0; }
h1, h2, h3 { font-weight: normal; }
h1 { margin-bottom: 27px; font: 35px/31px Trebuchet MS, Arial, Helvetica, sans-serif; color: #174585; }
h2 { margin-bottom: 11px; font-size: 18px; line-height: 18px; }
h3 { margin-bottom: 11px; font-size: 15px; line-height: 15px; }
h4, h5, h6 { margin-bottom: 11px; font-size: 12px; line-height: 14px; font-weight: bold; }

h2.title { height: 23px; text-indent: -999px; overflow: hidden; background: url('../i/header.gif') no-repeat 0 0; }
h2#h_services { margin-bottom: 8px; width: 73px; }

p { margin:0 0 20px 0; }

a { color:#383838; }
a:hover { text-decoration: none; }
a img, fieldset { border:0 none; }


.fl_l { float: left; }
.fl_r { float: right; }

#container { position: relative;  margin-bottom: -215px; min-height: 100%;  background: url('../i/bg02.png') no-repeat center bottom; }

* html #container { height: 100%; }

#mainwrap { position: relative; margin: 0 auto; width: 990px; padding-bottom: 197px; }

.general_cont { position: relative; //zoom: 1; }
.general_cont:after { display: block; content: ' '; height: 0; overflow: hidden; clear: both; }

#header { position: relative; height: 155px; z-index: 2; }
#header .logo { display: block; position: absolute; top: 32px; left: 24px; width: 346px; height: 72px; }
#header .logo img { display: block; width: 346px; height: 72px; }

#header .enter { display: block; position: absolute; top: 67px; left: 427px; padding: 0 0 4px 23px; font-size: 11px; line-height: 14px; color: #18498e; background: url('../i/icons.gif') no-repeat 0 0; }
#header .mapsite { display: block; position: absolute; top: 67px; right: 84px; font-size: 11px; line-height: 14px; color: #777777; }

#header .search { position: absolute; top: 63px; //top: 64px; right: 238px; width: 164px;  }
#header .search input.inp { padding-left: 5px; width: 162px; //width: 151px; font-size: 11px; color: #c9c9c9; border: 1px solid #d6d6d6; background: #ffffff; }
#header .search label { display: block; position: absolute; top: 5px; left: 7px; //top: 4px; //left: 6px; font-size: 11px; line-height: 12px; color: #c9c9c9; }
#header .search input.but { display: block; position: absolute; top: 1px; left: 164px; width: 19px; height: 19px; text-indent: -999px; overflow: hidden; background: url('../i/icons.gif') no-repeat 5px -26px; }

.menu1 { position: absolute; top: 110px; left: 590px; width: 328px; }

.menu1 ul { float: left; width: 96px; margin-right: 12px; }
.menu1 ul li { margin-bottom: 6px; padding-left: 11px; background: url('../i/li1.gif') no-repeat 0 9px; }
.menu1 ul li a { color: #164585; }
.menu1 ul li.act { color: #878787; }

#middle { position: relative; margin-left: 68px; padding-bottom: 50px; z-index: 1; //zoom: 1; }
#middle:after { display: block; content: ' '; height: 0; overflow: hidden; clear: both; }

.block1 { position: relative; float: left; width: 240px; }
.block2 { position: relative; float: right; width: 590px; margin-top: 31px; }
.block3 { position: relative; float: left; width: 657px; margin-top: 0; }


ul.menu2 { margin-bottom: 18px; }
ul.menu2 li { padding: 0 0 0 17px; line-height: 30px; }
ul.menu2 li a { color: #18498e; }
ul.menu2 li.act { padding: 0; color: #ffffff; }
ul.menu2 li.act span { padding: 7px 28px 8px 17px; line-height: 30px; background: #c3354c url('../i/bg04.gif') no-repeat 100% 0; }

.contacts { margin-bottom: 47px; width: 149px; padding: 11px 20px 14px 23px; font-size: 11px; line-height: 12px; color: #454545; border: 1px solid #e3e4e5; }
.contacts a { margin-left: 23px; color: #18498e;}
.contacts div { margin: 8px 0 5px 23px; }
.contacts a.mail { margin-left: 0; padding-left: 23px; font-size: 12px; background: url('../i/icons.gif') no-repeat 0 -47px; }
.phone { display: block; margin: 0 0 11px 0; width: 155px; height: 22px; text-indent: -999px; overflow: hidden; background: url('../i/phone.gif') no-repeat 0 0;  }

.addquestion { position: relative; width: 111px; padding: 8px 10px 23px 69px; font-size: 11px; line-height: 12px; color: #818181; background: #ebeff5 url('../i/bg05.gif') no-repeat bottom left; }
.addquestion img { display: block; position: absolute; top: 10px; left: 10px; width: 52px; height: 52px; }
.addquestion dfn { display: block; margin-bottom: 1px; font-size: 16px; line-height: 18px; color: #000000; font-style: normal; }
.addquestion div.descr { margin-bottom: 9px; font-style: italic; }
.addquestion span { color: #bd2038; font-size: 12px; line-height: 14px; cursor: pointer; //cursor: hand; border-bottom: 1px dashed #bd2038; }

.addquestion_form { position: absolute; bottom: -26px; left: -50px; width: 290px; }
.addquestion_form .cont, .addquestion_form .b { position: relative; width: 290px; overflow: hidden; }
.addquestion_form .cont .t, .addquestion_form .b div { position: absolute; top: 0; left: 0;  width: 290px; height: 400px; z-index: 0; overflow: hidden; background: url('../i/ramka1.png') no-repeat 0 0; //-background:none; //-filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="/i/ramka1.png", sizingMethod="crop"); }
.addquestion_form .b { height: 25px; }
.addquestion_form .b div { top: -375px; }
.addquestion_form .in { position: relative; padding: 27px 35px 4px 31px; z-index: 2;  }
.addquestion_form .close { position: absolute; top: 9px; right: 17px; width: 12px; height: 12px; text-indent: -999px; overflow: hidden; cursor: pointer; //cursor: hand; background: url('../i/icons.gif') no-repeat 0 -110px; }

.addquestion_form .f_field { position: relative; margin-bottom: 9px; }
.addquestion_form .f_field label { display: block; position: absolute; top: 5px; //top: 6px; left: 10px; //left: 9px; font-size: 12px; color: #666666; }
.addquestion_form .f_field input { display: block; width: 216px; //width: 210px; padding-left: 7px; color: #666666; }
.addquestion_form .f_field textarea { display: block; width: 216px; //width: 210px; height: 123px; //height: 117px; padding-left: 7px; color: #666666; }
.addquestion_form .but { text-align: center; }



#flash { position:absolute; top:-24px; left:-24px; width:450px; height:450px; overflow:hidden; }

#flash { top: 40px; left: 0px; }


.textabout { position: relative; margin: 0 0 88px 436px; padding: 0 0 0 15px; min-height: 271px; //-height: 271px; }
.textabout h2.title {  margin: 65px 0 16px -15px; width: 127px; background-position: 0 -25px; }
.textabout p { margin:0 0 12px 0; }
.textabout a, .products .more { padding: 0 23px 5px 0; color: #bd2038; background: url('../i/icons.gif') no-repeat 100% -68px; }


.news_list { position: relative; }
.news_list h2.title {  margin: 0 0 16px 4px; width: 88px; background-position: 0 -50px; }

.news_list ul { margin-left: 18px; //zoom: 1; }
.news_list ul:after { display: block; content: ' '; height: 0; overflow: hidden; clear: both; }
.news_list ul li { float: left; width: 175px; height: 66px; margin-right: 15px; padding-right: 21px; font-size: 13px; line-height: 17px; overflow: hidden; background: url('../i/bg06.gif') no-repeat 100% 0; }
.news_list ul li.last { margin-right: 0; background: none; }

.news_list .more { display: block; position: absolute; top: 4px; right: 25px; font-size: 11px; color: #bd2038; }
.news_list .rss { display: block; position: absolute; top: 0; left: 114px; padding-left: 19px; color: #919191; text-decoration: none; background: url('../i/icons.gif') no-repeat 0 -86px; }


.typical { position: relative; //zoom: 1; }
.typical:after { display: block; content: ' '; height: 0; overflow: hidden; clear: both; }
.typical ul { margin: 0 0 30px 14px; }
.typical ul li { margin-bottom: 2px; padding-left: 11px; color: #878787; font-style: italic; background: url('../i/li1.gif') no-repeat 0 9px; //zoom: 1; }

.typical .foto_right { display: block; float: right; margin: 0 0 10px 30px; }
.typical .foto_left { display: block; float: left; margin: 0 30px 10px 0; }


ul.news { float: left; width: 480px; }
ul.news li { margin-bottom: 20px; }

ul.filtr_years { float: right; width: 46px; margin-top: 4px; }
ul.filtr_years li { margin-bottom: 3px; font-size: 14px; text-align: center; }
ul.filtr_years li a { color: #18498e; }
ul.filtr_years li.act { color: #ffffff; background: #c3354c; }

ul.pager { padding-top: 20px; //zoom: 1;}
ul.pager:after { display: block; content: ' '; height: 0; overflow: hidden; clear: both; }
ul.pager li { float: left; margin-right: 8px; padding: 2px 4px 2px 4px; font-size: 14px; }
ul.pager li a { color: #18498e; }
ul.pager li.act { color: #ffffff; background: #c3354c; }


.portfolio { margin-bottom: 30px; padding-top: 26px; border-top: 1px solid #e4e4e4; //zoom: 1; }
.portfolio:after { display: block; content: ' '; height: 0; overflow: hidden; clear: both; }

.portfolio dl { width: 260px; overflow: hidden; }
.portfolio dl dt { margin-bottom: 11px;  font-size: 14px; }
.portfolio dl dt a { color: #000000; }
.portfolio dl dd { font-size: 11px; line-height: 16px; color: #6d6d6d; }
.portfolio dl dd img { display:block; width: 258px; height: 165px; margin-bottom: 9px;  border: 1px solid #e2e2e2; }
.portfolio dl dd ul.links { margin-bottom: 4px; }
.portfolio dl dd ul.links li { display: inline; padding-left: 6px; margin-right: 3px; background: url('../i/li2.gif') no-repeat 0 2px; }
.portfolio dl dd ul.links li a { color: #174585; }
.portfolio dl dd ul.links li.first { padding-left: 0; background: none; }

.first_line { padding-top: 21px; border-top: 0 none; }


.products { position: relative; padding: 67px 55px 0 237px; }

#product1 { min-height: 420px; //-height: 420px; background: url('../i/product1.jpg') no-repeat 0 0; }


ul.partner_list li { margin-bottom: 20px; min-height: 57px; //-height: 57px; font-size: 18px; line-height: 18px; }
ul.partner_list li a { display: block; position: relative; margin-left: 140px; padding-top: 20px; color: #000000; text-decoration: none; }
ul.partner_list li a span { display: block;position: absolute; top: 0; left: -140px; width: 114px; padding: 4px 0 4px 4px; border: 1px solid #dbdbdb; cursor: pointer; //cursor: hand; background: #ffffff; }
ul.partner_list li a span img { display: block; width: 110px; height: 49px; }

.date_news { margin-bottom: 4px; font-size: 11px; color: #999999; }
.typical .more { margin-top: 10px; }


ul.project_list li { position: relative; min-height: 86px; //-height: 86px; margin: 0 0 25px 150px; font-size: 12px; color: #6d6d6d; //zoom: 1; }
ul.project_list li img { display: block; position: absolute; top: 3px; left: -150px; width: 129px; height: 83px; border: 1px solid #e2e2e2; }
ul.project_list li a { display: block; margin-bottom: 8px; font-size: 16px; color: #000000; }

.foto_project { margin-bottom: 10px; }
.foto_project img { display: block; }

.link_project { margin-bottom: 5px; }

dl.search_elements { margin-top:43px; }
dl.search_elements dt { margin-bottom: 8px; font-size: 14px; }
dl.search_elements dt span { display: block; margin-bottom:8px; font-size: 10px; line-height: 12px; color: #939393; }
dl.search_elements dt span span { margin-bottom:0; color: #3d3c3c; }
dl.search_elements dt span span a { color: #3d3c3c; }
dl.search_elements dd { margin-bottom:30px; padding-bottom:28px; border-bottom:1px solid #E1E4E7; }

ul.sort { margin-top: 30px;}
ul.sort li { display: inline; margin-right: 20px; padding: 5px; }
ul.sort li.act { background: #dddddd; }

ul.map-level-0 li { margin-bottom: 8px; font-size: 16px; }
ul.map-level-0 ul { margin: 5px 0 20px 20px; }
ul.map-level-0 ul li { margin-bottom: 3px; font-size: 12px; }

.typical .f_field { position: relative; margin-bottom: 9px; }
.typical .f_field label { font-size: 12px; color: #666666; }
.typical .f_field input { display: block; width: 340px; //width: 334px; padding-left: 7px; color: #666666; }
.typical .f_field textarea { display: block; width: 583px; //width: 583px; height: 123px; //height: 117px; padding-left: 7px; color: #666666; }
.typical .but { margin-top: 15px; }


/*------------------------------------*/
.contactBlock { position: relative; font-size: 13px; //zoom: 1; }
.contactBlock:after { display: block; content: ' '; height: 0; overflow: hidden; clear: both; }

.contactBlock h2 { margin-bottom: 19px; color: #ffffff; font-weight: normal;font-size: 13px; }
.contactBlock h2 span { padding:5px 25px 5px 18px; background: #c3354c url('../i/bg07.png') no-repeat 100% 0;}

.mapBlock { width: 451px; text-align: right; }
.mapBlock a { padding-right: 25px; color: #bd1f38; background: url('../i/icons.gif') no-repeat 100% -70px; }
.contactBlock img { display: block; margin: 5px 0 30px 0; } 

.iForm label { display: block; }
.iForm .field { margin-bottom: 10px; height: 27px; padding-top: 7px; background: url('../i/form.png') no-repeat 0 0; overflow: hidden; }
.iForm .field input  { width: 302px; //width: 296px; border:0 none; display: block; background: none; }
.iForm .fieldTextarea { margin-bottom: 10px; height: 110px; background: url('../i/form.png') no-repeat 0 -72px; overflow: hidden; }
.iForm .fieldTextarea textarea {height: 110px; width: 452px;border:0 none; display: block; background: none; //width: 446px; //height: 104px; }
.iForm .code { position:relative; height: 34px;}
.iForm .code input { width: 132px; border:0 none; display: block; background: none; }
.iForm .code .field { background: url('../i/form.png') no-repeat -113px -198px; overflow: hidden; position: absolute; top:0; left:114px; }
.iForm .code img { position: absolute; top:0; left:254px;}
.iForm .code a { position: absolute; top:5px; left:376px; color: #bd1f38; }
.iForm .code label { display: block; position: absolute; top: 5px; left: 0; }



.ibutton { 
    display: inline-block;
   //zoom: 1; //display: inline;
   width: auto;
   vertical-align: baseline;
   outline: none;
   cursor: pointer; //cursor: hand;
   text-align: center;
   text-decoration: none;
   color: #ffffff;
   font: 18px/100% Arial, Helvetica, sans-serif;
   margin-top:22px;
   padding: 3px 20px 5px 20px;
   //padding: 6px 20px 4px 20px;
   min-height: 28px;

   -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px;
   -webkit-box-sizing:content-box; -moz-box-sizing:content-box; box-sizing:content-box;
   
   border: 0 none;
   background: #c3354c;
   //overflow: visible;
  }

.licensesList li, 
.commentList li { position: relative; margin-bottom: 28px; padding: 44px 0 0 220px; min-height: 258px; //-height: 258px; font-size: 13px; line-height: 20px; border-top: 1px solid #efefef; //zoom: 1; }
.licensesList li img,
.commentList li img { display: block; position: absolute; top: 26px; left: 0; width: 200px; height: auto; }
.licensesList li span { display: block; color: #777777; }
.licensesList li.first,
.commentList li.first { padding-top: 20px; border-top: 0 none; }
.licensesList li.first img,
.commentList li.first img { top: 0; }

.commentList li { font-weight: bold; }
.commentList li img { border: 1px solid #efefef; }


.workOneBlock a.back { padding-right: 25px; color: #bd1f38; background: url('../i/icons.gif') no-repeat 100% -70px; }
.workOneBlock a.archive { font-size: 12px; color: #000000; }
.workOneBlock dl dt { margin-bottom: 3px; font-size: 12px; }
.workOneBlock dl dt a { color: #000000; }

.fotoBlock { margin: 8px 0 13px 0; //zoom: 1; }
.fotoBlock:after { display: block; content: ' '; height: 0; overflow: hidden; clear: both; }	
.fotoBlock img { display: block; border: 1px solid #e3e4e5; }	

.fotoBlock .big { float: left; width: 430px; margin-right: 15px; }
.fotoBlock .preview { position: relative; float: left; width: 111px; }

.fotoBlock .lentaWrap { position: relative; width: 111px; height: 300px; overflow: hidden; }
.fotoBlock .lentaWrap .block {top:0; position: relative; margin-bottom: 5px; width: 111px; height: 71px; overflow: hidden; cursor: pointer; //cursor: hand; }
.fotoBlock .lentaWrap .block div { display: none; position: absolute; top: 0; left: 0; width: 104px; height: 64px; border: 3px solid #bf2635; }
.fotoBlock .lentaWrap .block img { width: 108px; height: 68px; }
.fotoBlock .lentaWrap .cur { cursor: default; }
.fotoBlock .lentaWrap .cur div { display: block; }

.fotoBlock .preview .top,
.fotoBlock .preview .bot { position: absolute; left: 0; width: 111px; height: 13px; text-indent: -999px; overflow: hidden; cursor: pointer; //cursor: hand; background: url('../i/icons.gif') no-repeat 46px -140px; }

.fotoBlock .preview .top { top: -13px; }
.fotoBlock .preview .bot { bottom: -13px; background-position: 46px -155px; }

/*------------------------------------*/


#footer { position: relative; margin: 0 auto; width: 990px; height: 165px; padding-top: 32px; font-size: 11px; color: #989797; }
#footer dfn { display: block; margin-left: 300px; font-style: normal; }
#footer dfn a { color:#989797; }
#footer .counter { position: absolute; bottom: 22px; left: 95px; width: 310px; }

#footer ul.lenta { margin: 0 55px 20px 55px; padding-left: 40px; border-top: 1px solid #d6d6d6; //zoom: 1; }
#footer ul.lenta:after { display: block; content: ' '; height: 0; overflow: hidden; clear: both; }
#footer ul.lenta li { float: left; position: relative; width: 120px; margin: -33px 0 0 48px; font-size: 12px; line-height: 16px; font-weight: bold; }
#footer ul.lenta li.first { margin-left: 0; }
#footer ul.lenta li a { display: block; color: #000000; text-decoration: none; text-transform: uppercase; }
#footer ul.lenta li a span { display: block; margin-bottom: 4px; width: 114px; padding: 4px 0 4px 4px; border: 1px solid #dbdbdb; cursor: pointer; //cursor: hand; background: #ffffff; }
#footer ul.lenta li a span img { display: block; width: 110px; height: 49px; }

.mainsliderblock .slidermain { position: relative; width: 520px; height: 200px; overflow: hidden; }
.mainsliderblock .slidermain .slider { position: absolute; width:10000px; top: 0; left: 0; }
.mainsliderblock .block { display: block; float: left; width: 155px; margin-right: 30px; color: #4c4c4c; }
.mainsliderblock .block span { display: block; margin-bottom: 20px; width: 148px; height: 200px; overflow: hidden; }
.mainsliderblock .block span img { display: block; }

.adv {margin: 0 0 0 96px;font-size:75%; color:gray;}
.adv a {color:gray;text-decoration: none;}


