/* Основной лайаут */ 

html {
	height: 100%;
}
body {
	position: relative;
	height: auto !important;
	height: 100%;
	min-height: 100%;
	width: 100%;
	margin: 0px 0px;
	padding: 0px 0px;
	background-color: #fff;
	background-image: url('/img/bgr-grid.gif');
	background-position: top center;
	background-repeat: repeat;
	font-family: Tahoma, Sans-serif; 
	font-size: 80%;
	line-height: 140%; 
	color: #666;
}

#measurer { 
	position: relative; 
	top: 0px;
	width: 100%; 
	min-width: 980px; 
	font-size: 0px;
	line-height: 0px;
	height: 0px;
	margin: 0px;
	padding: 0px;
	float: left;
} 
#measurer .d { 
	width: 980px !important; 
	height: 0px;
}

#visual {
	clear: both;
	left: 0;
	position: absolute;
	width: 100%;
	height: 396px;
	background-image: url('/img/brand-motive.gif');
	background-position: top center;
	background-repeat: no-repeat;
}

.main #visual1, .main #visual2, .main #visual3 {
	clear: both;
	left: 0;
	position: absolute;
	width: 100%;
	height: 680px;
	background-position: center -60px;
	background-repeat: no-repeat;
}
.main #visual1 {
	background-image: url('/img/visuals/visual1.jpg');
}
.main #visual2 {
	background-image: url('/img/visuals/visual2.jpg');
}
.main #visual3 {
	background-image: url('/img/visuals/visual3.jpg');
}
.main #visual1 .comment,
.main #visual2 .comment,
.main #visual3 .comment {
	z-index: 100;	
}
.main #visual1 .comment {
	position: absolute;
	width: 250px;
	top: 300px;
	left: 68%;
}
.main #visual2 .comment {
	position: absolute;
	width: 200px;
	top: 292px;
	left: 76%;
}
.main #visual3 .comment {
	position: absolute;
	width: 200px;
	left: 74%;
	top: 290px;
}
.main #visual1 .comment h3, .main #visual2 .comment h3, .main #visual3 .comment h3 {
	font-size: 140%;
	line-height: 130%;
	margin: 0 0 5px 0;
	color: #777;
}
.main #visual1 .comment div, .main #visual2 .comment div, .main #visual3 .comment div {
	font-size: 80%;
	line-height: 130%;
	color: #777;
}

#page {
	position: relative;
	padding-bottom: 70px;
	height: auto;
	z-index: 1;  
	overflow: hidden;
}

.container {
	clear: both;
	position: relative; 
	margin: 0px auto;  
	max-width: 1200px; 
	min-width: 940px; 
	width: 78%;
	padding: 0 30px;
}

#logo {
	position: relative;
	padding: 90px 0 40px 0;
}
.main #logo {
	padding: 90px 0 40px 0;
}

#icons {
	margin: 0 0 10px 4px;
	padding: 0;
	list-style-type: none;
}
#icons li {
	float: left;
	margin: 0 40px 0 0;
	list-style-type: none;
}
#icons li img {
	background-image: url('/img/icons-navigation.gif');
	background-repeat: no-repeat;
}
#icons #icon-home img {
	width: 11px;
	height: 11px;
	background-position: 0 0;
}
#icons #icon-home.active img {
	background-position: 0 -12px;
}
#icons #icon-contents img {
	width: 11px;
	height: 11px;
	background-position: -12px 0;
}
#icons #icon-contents.active img {
	background-position: -12px -12px;
}
#icons #icon-feedback img {
	width: 15px;
	height: 11px;
	background-position: -24px 0;
}
#icons #icon-feedback.active img {
	background-position: -24px -12px;
}

.sidebar {
	position: relative;
	float: left;
	width: 27%;
}
#sidebar {
	padding-bottom: 150px;
}

.content {
	position: relative;
	float: right;
	width: 69%;
}
#content {
}
.main #content {
	margin-top: 170px;
}

#menu {
	margin-bottom: 80px;
	padding: 0;
	list-style-type: none;
}
#menu li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	font-family: Tahoma;
	font-size: 320%;
	line-height: 120%;
	color: #999;
}
#menu li a {
	text-decoration: none;
}
#menu li ul {
	margin: 8px 0 12px 20px;
	padding: 0;
	list-style-type: none;
}
#menu li ul li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	font-family: Tahoma;
	font-size: 50%;
	line-height: 150%;
	color: #999;
}
#menu li ul li a {
	text-decoration: underline;
}

#footer {
	position: absolute;
	width: 100%;
	bottom: 70px;
}
#footer .phone {
	font-size: 160%;
	line-height: 130%;
	color: #999;
}
#footer .phone strong {
	font-weight: normal;
	color: #666;
}
#footer .outer {
	position: absolute;
	margin-left: -16px;
}
#footer .container p {
	width: 250px;
	z-index: 2;	
}

/* Колонки на все случаи жизни */ 

.columns { margin: 0px; padding: 0px; width: 100%; overflow: visible; position: relative; z-index: 0; clear: both; //padding-right: 1px; }
.columns:after { content: "."; display: block; height: 0px; font-size: 0px; line-height: 0px; overflow: hidden; clear: both; visibility: hidden; }
.c { margin: 0px; padding: 0px; border: none; float: left; //display: inline; //margin-right: -1px; -overflow: hidden; }
.c .inner { padding-right: 30px; }
.c .inner-center { padding-right: 5px; padding-left: 5px; }

.c-fulls { overflow: hidden; }
.c-full { overflow: hidden; position: relative; padding-bottom: 1000em; margin-bottom: -1000em; }

.c-bottoms { display: table; position: relative; //overflow-y: hidden; width: 100%; }
.c-bottoms .cc { display: table-row; position: relative; width: 100%; }
.c-bottoms .c { display: table-cell; //display: inline; position: relative; float: none; //float: left; vertical-align: top; }
.c-bottoms .v-bottom { //top: 100%; vertical-align: bottom; }
.c-bottoms .cc .cc { display: block; width: auto; //width: 100%; }
.c-bottoms .cc .v-bottom .cc { //top: -100%; }

.bottom { position:absolute; bottom:0px; //width:100% !important; }
.bottom .in { position:absolute; bottom:0px; width:100% !important; }
	
.c05 { width: 5%; }
.c10 { width: 10%; }
.c15 { width: 15%; }
.c20 { width: 20%; }
.c25 { width: 25%; }
.c30 { width: 30%; }
.c35 { width: 35%; }
.c40 { width: 40%; }
.c45 { width: 45%; }
.c50 { width: 50%; }
.c55 { width: 55%; }
.c60 { width: 60%; }
.c65 { width: 65%; }
.c70 { width: 70%; }
.c75 { width: 75%; }
.c80 { width: 80%; }
.c85 { width: 85%; }
.c90 { width: 90%; }
.c95 { width: 95%; }
.c10 { width: 100%; }


/* Система заголовков */ 

h1, .h1 {
	position: relative;
	font-weight: normal;
	font-size: 380%;
	line-height: 70%;
	color: #312d81;
	padding: 0px;
	-padding-bottom: 8px;
	margin: 0px;
	margin-left: -5px;
	margin-bottom: 0.2em;
}
body.main h1, body.main .h1 {
	font-size: 460%;
	line-height: 70%;
}
h2, .h2 {
	position: relative;
	font-size: 170%;
	line-height: 120%;
	font-weight: normal;
	color: #312d81;
	margin: -4px 0px 10px -2px;
	padding: 0px;
	-padding-bottom: 4px;
}
h3, .h3 { 
	position: relative;
	font-size: 140%;
	line-height: 130%;
	font-weight: normal;
	color: #312d81; 
	margin: 0 0px 8px 0;
	padding: 0;
	-padding-bottom: 2px;
}
p { 
	padding: 0px 0px 0px 0px; 
	margin: 0px 0px 1.2em 0px; 
	position: relative; 
}

/* Распорки (для крайних случаев) */

.spacer { margin-bottom: 2.4em; }
.spacer-small { margin-bottom: 1.2em; }
div.p { position: relative; margin-bottom: -1.2em; }

/* Стили для списков */

ul { margin: 0px 0px 1.2em 0px; }
ul.spacer { margin-bottom: 2.4em; }
ul li { margin: 0px 0px 0.6em 0px; list-style-position: outside; list-style-type: disc; }
ul li ul li { margin-left: 20px; }
ul.small li { margin-bottom: 0.4em; }
ul.none { padding: 0; margin: 0; }
ul.none li { padding: 0px 0px; list-style-type: none; }
ul.floats { margin: 0px; padding: 0px; }
ul.floats li { margin: 0px; padding: 0px; list-style-type: none; float: left; white-space: nowrap; }
ul.list { border-top: 1px solid #fff; }
ul.list li { list-style-type: none; margin: 0px; padding: 5px; border-bottom: 1px solid #fff; }
ul.columns2 { position: relative; width: 110%; white-space: nowrap; } 
ul.columns2 li { //zoom: 1; position: relative; width: 45%; white-space: normal; margin: 0px 0px 0px 0px; display: inline-block; //display: inline; }	
ol { padding: 0px 0px 0px 0px; margin-left: 0px; margin-top: 0px; margin-bottom: 1.2em; list-style-type: decimal; list-style-position: outside; //height: 1%; }
ol li { position: relative; padding: 0px 0px 0px 0px; margin: 0px 0px 0.6em 0px; //margin-left: 30px; }

ul.blt li {
	list-style-position: inherit;
	list-style-image: url('/img/blt.gif');
}

/* Определение цветов и размеров */

a { color: #312d81; }
.white, .white a, .white a:hover, a.white, a.white:visited, a.white:hover { color: #fff; } 
.black, a.black, a.black:visited { color: #000; }
.dark { color: #222; }
.gray, a.gray, a.gray:visited, a.gray:hover { color: #999; }
.linkcolor { color: #312d81; }
.textcolor { color: #666 !important; }

.x-small { font-size: 75%; line-height: 140%; font-family: Tahoma, sans-serif; }
.small { font-size: 85%; line-height: 150%; }
.large { font-size: 120%; line-height: 120%; }


/* Подзаголовок страницы */
.subtitle {
	font-family: Arial, sans-serif;
	font-style: italic;
	font-weight: normal;
	font-size: 23px;
	line-height: 30px;
	color: #666;
}
/* Большой курсивный текст */
.lead {
	font-family: Arial, sans-serif;
	font-style: italic;
	font-weight: normal;
	font-size: 160%;
	line-height: 130%;
}
.lead-small {
	font-family: Arial, sans-serif;
	font-style: italic;
	font-weight: normal;
	font-size: 140%;
	line-height: 130%;
}

.values-list {
	
}
.values-list td {
	padding-right: 5px;
}
.values-list td div {
	position: relative;
	margin-bottom: 10px;
}
.values-list td span.label {
	position: relative;
	background-color: #fff;
	padding: 0 5px;
	z-index: 1;
}
.values-list td span.d {
	position: absolute;
	left: 0px;
	bottom: 2px;
	width: 100%;
	height: 1px;
	visibility: visible;
	background-color: #ccc;
}

/* Цитата в правой части */
.quotation {
	position: absolute;
	left: 67%;
	width: 35%;
}
.quotation .lead,
.quotation .lead-small {
	color: #312d81;
	margin-bottom: 8px;
}
.quotation .outer {
	position: absolute;
	margin-left: -26px;
}

/* Представление персоны в колонке слева */
.person {
	width: 228px;
	margin: 30px 0;
}
.person .name {
	padding: 10px 15px;
	background-color: #312d81;
	color: #f5f5f5;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
.person .name .fn {
	font-size: 130%;
	line-height: 100%;
	color: #fff;
}
.person .contacts {
	padding: 10px 15px;
}

/* Нумерованный список с буллитами в виде цифр в кружочках */
ol.features-list {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
ol.features-list li {
	margin: 0 0 15px 32px;
	padding: 0;
}
.blt-large {
	position: absolute;
	width: 23px;
	height: 22px;
	margin-left: -32px;
	margin-top: 2px;
	background: url('/img/blt-large/blt.gif') center center no-repeat;
	text-align: center;
	color: #fff;
	line-height: 22px;
}

div.box {
	position: relative;
	padding: 20px 30px;
	background-image: url('/img/box-bgr.png');
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}

div.blue-box {
	position: relative;
	padding: 15px 20px 17px 20px;
	background-color: #312d81;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
}
div.blue-box, div.blue-box * {
	color: #fff !important;
}

/* Новостная лента */

.news-feed { width: 75%; }
.news-feed .item { margin-bottom: 30px; }
.news-feed .date { color: #999; }
.news-feed .title { font-size: 130%; line-height: 130%; margin: 5px 0; }
.news-feed .paging a {
	display: block;
	float: left;
	width: 23px;
	height: 22px;
	text-align: center;
	line-height: 21px;
}
.news-feed .paging a.current {
	background: url('/img/blt-large/blt-gray.gif') center center no-repeat;
	color: #fff;
	text-decoration: none;
}
.news-feed .paging a.backward,
.news-feed .paging a.forward {
	width: 15px;
	height: 15px;
	margin-top: 4px;
	margin-right: 5px;
	font-size: 0;
	line-height: 0;
}
.news-feed .paging a.backward {
	background: url('/img/blt/blt-backward.gif') center center no-repeat;
}
.news-feed .paging a.forward {
	background: url('/img/blt/blt-forward.gif') center center no-repeat;
}

ul.news-years {
	float: left;
	margin: 0 20px 0 0;
	padding: 0;
}
ul.news-years li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	font-size: 160%;
	line-height: 160%;
}
ul.news-monthes {
	float: left;
	margin: 13px 0 0 20px !important;
	padding: 0;
	font-size: 80% !important;
	line-height: 140% !important;
}
ul.news-monthes li {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

/* Фотогалерея (в новостях или проектах) */

.photos {
	position: relative;
	float: right;
	width: 320px;
	margin-left: 30px;
	z-index: 2;
}
.photos .photo {
	position: relative;
	margin-bottom: 12px;
}
.photos ul li {
	float: left;
	margin: 0 12px 12px 0;
	padding: 0;
	list-style-type: none;
}

.news .photos {
	float: none;
	width: auto;
	margin: 30px 0 30px 0;
}
.news .photos .photo {
	float: left;
	margin: 0 12px 0 0;
}
.news .photos .photo span {
	position: absolute;
	left: 320px;
	bottom: -3px;
	width: 250px;
	font-size: 85%;
	line-height: 140%;
}

/* Проекты */

.projects {
	/*width: 90%;*/
	margin-bottom: 70px;
}
.project {
	margin-bottom: 20px;
	min-height: 100px;
}
.project .title {
	font-size: 140%;
	line-height: 130%;
	margin-bottom: 10px;
}
.project .outer-logo {
	position: absolute;
	width: 300px;
	margin-left: -300px;
	margin-top: 5px;
	text-align: center;
}

/* Партнёры */

.partner {
	float: left;
	margin: 0 30px 30px 0;
	width: 45%;
}
.partner .logo {
	width: 133px;
	height: 133px;
	background-image: url('/img/logo-stand.png');
	vertical-align: middle;
	text-align: center;
}
.partner .info {
	padding-left: 10px;
	vertical-align: middle;
	text-align: left;
}

body.contacts #page {
	background-image: url('/img/map.gif');
	background-position: center bottom;
	background-repeat: no-repeat;
}

/* Страница ошибка 404 */

.error404 .title {
	margin-left: -150px;
	margin-bottom: 50px;
	margin-top: -50px;
}
.error404 #menu {
	width: 270px;
	margin-bottom: -8px;
}
.error404 #menu li ul {
	margin-left: 0;
	margin-right: 20px;
}

/* Цветовые схемы разделов */

body.strategy a, body.strategy linkcolor,
body.strategy h1, body.strategy .h1,
body.strategy h2, body.strategy .h2,
body.strategy h3, body.strategy .h3,
body.strategy .quotation .lead,
body.strategy .quotation .lead-small {
	color: #6d0677;
}
body.strategy ul.blt li { list-style-image: url('/img/blt/blt-strategy.gif'); }
body.strategy .blt-large { background-image: url('/img/blt-large/blt-strategy.gif'); }
body.strategy .person .name { background-color: #6d0677; }

body.process a, body.process linkcolor,
body.process h1, body.process .h1,
body.process h2, body.process .h2,
body.process h3, body.process .h3,
body.process .quotation .lead,
body.process .quotation .lead-small {
	color: #648cd2;
}
body.process ul.blt li { list-style-image: url('/img/blt/blt-process.gif'); }
body.process .blt-large { background-image: url('/img/blt-large/blt-process.gif'); }
body.process .person .name { background-color: #648cd2; }

body.applications a, body.applications linkcolor,
body.applications h1, body.applications .h1,
body.applications h2, body.applications .h2,
body.applications h3, body.applications .h3,
body.applications .quotation .lead,
body.applications .quotation .lead-small {
	color: #1b4a95;
}
body.applications ul.blt li { list-style-image: url('/img/blt/blt-applications.gif'); }
body.applications .blt-large { background-image: url('/img/blt-large/blt-applications.gif'); }
body.applications .person .name { background-color: #1b4a95; }

body.technologies a, body.technologies linkcolor,
body.technologies h1, body.technologies .h1,
body.technologies h2, body.technologies .h2,
body.technologies h3, body.technologies .h3,
body.technologies .quotation .lead,
body.technologies .quotation .lead-small {
	color: #e92100;
}
body.technologies ul.blt li { list-style-image: url('/img/blt/blt-technologies.gif'); }
body.technologies .blt-large { background-image: url('/img/blt-large/blt-technologies.gif'); }
body.technologies .person .name { background-color: #e92100; }

body.service a, body.service linkcolor,
body.service h1, body.service .h1,
body.service h2, body.service .h2,
body.service h3, body.service .h3,
body.service .quotation .lead,
body.service .quotation .lead-small {
	color: #00c8aa;
}
body.service ul.blt li { list-style-image: url('/img/blt/blt-service.gif'); }
body.service .blt-large { background-image: url('/img/blt-large/blt-service.gif'); }
body.service .person .name { background-color: #00c8aa; }

body.personal a, body.personal linkcolor,
body.personal h1, body.personal .h1,
body.personal h2, body.personal .h2,
body.personal h3, body.personal .h3,
body.personal .quotation .lead,
body.personal .quotation .lead-small {
	color: #e35d06;
}
body.personal ul.blt li { list-style-image: url('/img/blt/blt-personal.gif'); }
body.personal .blt-large { background-image: url('/img/blt-large/blt-personal.gif'); }
body.personal .person .name { background-color: #e35d06; }


/* Набор рисунков-схем */

.schema {
	position: relative;
	margin-bottom: 30px;
}
.schema h3 {
	color: #666 !important;
}
#schema01 h3 {
	position: absolute;
	left: 220px;
	top: 45px;
	width: 250px;
}
#schema01 div {
	position: absolute;
	left: 220px;
	top: 230px;
	width: 250px;
}
#schema02 h3 {
	position: absolute;
	left: -160px;
	top: 40px;
}
#schema02 img {
	position: relative;
	margin-left: -145px;
}
#schema03 {
	position: relative;
	margin-left: -40px;
}
#schema03 h2 {
	position: absolute;
	left: 40px;
	top: 0;
}
#schema03 .block1 {
	position: absolute;
	left: 40px;
	top: 195px;
	width: 250px;
}
#schema03 .block2 {
	position: absolute;
	left: 320px;
	top: 100px;
	width: 280px;
}
#schema03 * {
	color: #fff !important;
}
#schema04 {
	position: absolute;
	left: 50%;
	margin-top: -50px;
}
#schema04 .block1 {
	position: absolute;
	left: 70px;
	top: 80px;
	width: 160px;
}
#schema04 .block2 {
	position: absolute;
	left: 210px;
	top: 270px;
	width: 180px;
}
#schema04 .block1 img {
	position: absolute;
	margin-left: -35px;
	margin-top: 4px;
}
#schema04 .block2 img {
	position: absolute;
	margin-left: -50px;
	margin-top: 4px;
}
#schema04 * {
	color: #fff !important;
}
#schema05 ul li {
	margin-bottom: 3px;
}
#schema05 .block1 {
	position: absolute;
	left: 30px;
	top: 115px;
	width: 190px;
}
#schema05 .block2 {
	position: absolute;
	left: 270px;
	top: 50px;
	width: 280px;
}
#schema05 .block3 {
	position: absolute;
	left: 520px;
	top: -70px;
	width: 140px;
}
#schema05 img {
	margin-left: -30px;
	margin-top: -100px;
}
#schema05 * {
	color: #fff !important;
}
#schema06 img {
	position: relative;
	margin-left: -40px;
	margin-top: 50px;
}
#schema06 .block1,
#schema06 .block2,
#schema06 .block3,
#schema06 .block4 {
	position: absolute;
	left: 320px;
}
#schema06 .block1 { top: 0; left: 334px; }
#schema06 .block2 { top: 170px; }
#schema06 .block3 { top: 276px; }
#schema06 .block4 { top: 394px; }

