* { margin: 0; padding: 0; }
body { font-family: "Times New Roman", Times, serif; font-size: 100.01%; line-height: 1.25; background-color: #FFF; }
ins { display: block; text-decoration: none; }

a:link { color: #246C96; text-decoration: underline; }
a:visited { color: #909; text-decoration: underline; }
a:hover { color: #C18F45; }
a:active { color: #C18F45; }

img { border: none; }
ul { list-style: none; }
p, ul, ol, dl, h1, h2, h3 { font-size: 1em; }
li ul, li ol, li p, dl dl, dl ul, dl ol, dl p, dl h2, dl h3, td p, td ul, td ol { font-size: 100%; }
h1, h2, h3 { font-style: italic; }
h1 { font-size: 2.5em; color: #000; font-weight: normal; }
h2 { font-size: 1.25em; color: #3F3F40; margin-top: 1.2em; }
h3 { font-size: 1.125em; color: #7D9033; margin: 1.5em 0 0.3em 0; }
h4 { font-size: 1em; font-weight: bold; font-style: italic; margin: 0.5em 0 0.4em 0; }
h2 + h3 { margin-top: 0.5em; }
.header { margin: 2em 0 0.5em 0; left: -16px; }

h2+p, h3+p, h2+table, h3+table, h2+ul, h3+ul, h2+ol, h3+ol, h2+dl, h3+dl { margin-top: 0; }

table, th, td { border-collapse: collapse; border-spacing: 0; }

/*
p, ul, ol, dl, table { margin: 1.4em 0; margin-top: expression(this.previousSibling && this.previousSibling.nodeName.match( /^H\d$/ ) ? '0.6em' : '1em'); }
*/
input, select, textarea { font-family: Tahoma, sans-serif; color: #000; font-size: 0.8em; }
input { vertical-align: middle; }

.clear { clear: both; font-size: 0; display: block; height: 1px; }
.clear-more { clear: both; font-size: 0; display: block; width: 100%; }
.relative { position: relative; }
.corner-container { position: relative; z-index: 1; text-align: left; }
.corner-container, .corner-container div, .corner { font-size: 0; }
.corner { position: absolute; z-index: 2; }
.nobr { white-space: nowrap; }
.align-center { position: relative; width: 100%; }
.align-center:after { content: ''; display: block; clear: both; }
.align-center-to-left { position: relative; right: 50%; float: right; }
.align-center-to-right { position: relative; right: -50%; z-index: 1; }

/* Изображения в рамках */
.image.to-left, .image.to-right { margin: 22px 0 1em 0; }
.image.to-left { float: left; margin-right: 90px; }
.image.to-right { float: right; margin-left: 90px; }

.images { position: relative; left: -10px; padding-bottom: 10px; //padding-bottom: 20px; width: 100%; }
.images:after { content: ''; display: block; clear: both; height: 1px; }
.images div { float: left; margin: 30px 87px 0 0; display: inline; }

/* Контент */
#text p { margin-bottom: 0.5em; }
#text ul { list-style-type: disc; }
.typical #text ul { margin-left: 2em; }

#text ul, #text ol { position: relative; margin-top: 0.7em; margin-bottom: 0.7em; }
#text li { margin: 0 0 0.1em 0; }
ol { list-style-type: none; behavior: expression((this.counter) ? "" : (this.start) ?  this.counter = this.start - 1 : this.counter = 0); margin-left: 2em; counter-reset: item; }
ol li { behavior: expression( ( !this.before && parentNode && parentNode.tagName == 'OL' ) ? ( this.before = true ) & ( parentNode.counter++ ) & ( parentNode.style.listStyleType = 'none' ) & ( eNOBR = document.createElement( '<div class="marker" />' ) ) & ( eNOBR.innerHTML = parentNode.counter + "." ) & ( this.insertBefore( eNOBR, this.firstChild ) ) : ''); position: relative; padding: 0; //width: 100%; display: block; }
ol ol, #text ul ul { margin-top: 0; margin-bottom: 0; }
.marker { position: absolute; left: -109px; top: -0.1em; width: 100px; text-align: right; }
.marker, ol li:before { color: #3F3F40; font-size: 1.25em; }
ol > li:before { display: block; margin: 0 0 -1.1em -109px; width: 100px; text-align: right; content: counter(item) ". "; counter-increment: item; position: relative; top: -0.1em; }

/* Таблицы в тексте */
#text table { border-spacing: 0; margin: 0.85em 0; //margin: 1.8em 0; border-bottom: 1px solid #666668; }
#text caption { font-size: 1em; font-weight: bold; font-style: italic; color: #7D9033; text-align: left; padding: 1.4em 0 0 0; //padding: 0 0 0.9em 0; margin: 0 0 0.85em 0; //margin: 0; }
#text th, #text td { padding: 6px 16px 6px 16px; }
#text th { font-style: italic; font-weight: bold; color: #666668; text-align: left; border-bottom: 1px solid #666668; }
#text td { color: #000; border-bottom: 1px dashed #C4C4C8; }
#text .empty { border: none; }

/* Вакансии */
#text .description p { margin: 0 0 1em 0; }
#text .description h3 { margin: 0.5em 0 0.4em 0; }

/* Контакты */
.contact-info { margin-bottom: 1em; }
.contact-info p { font-style: italic; }
#text .description .contact-info p { margin-bottom: 0.3em; }

/* Партнеры */
.partner { width: 100%; margin-top: 2.3em; }
.partner h2 { margin-top: 0.6em; }
.partner p { margin-left: 14px; }

/* Пресса */
#text .archives, #text .date, #text .source { font-style: italic; }
#text .archives span, #text .press .date { color: #3F3F40; font-weight: bold; }
#text .archives { font-style: italic; margin: 2em 0; }
#text .archives .f { padding: 0; background: none; }
#text .archives a, #text .archives span { padding-left: 17px; background: url(/i/press_bullet.gif) no-repeat 0 0.4em; margin-right: 12px; }
#text h2 + .press { margin-top: 0.7em; }
#text .press { margin: 0 0 2em 0; }
#text .press h3 { margin-top: 0.4em; font-style: normal; font-weight: normal; }
#text .press .date { font-size: 1em; margin-bottom: 0; }
#text .date { font-size: 0.875em; margin-bottom: -0.6em; }


/* Форма в отдельном окне */
.popup-form #logo { margin-bottom: 40px; }
.popup-form label { font-style: italic; }
.popup-form dl { margin-top: 1.5em; }
.popup-form dd { margin: 0 0 0.5em 0; }
.popup-form .required { color: #9B802B; font-size: 1.75em; font-style: normal; }
.popup-form .comment { font-style: italic; margin-top: 1em; }
.popup-form .comment .required { position: relative; top: 0.34em; }
.popup-form p { margin-bottom: 0.5em; }
.popup-form #text ul { margin-left: 2em; }

/* Калькулятор */
.calc #popup-form .form { margin-bottom: 0; }
.calc #popup-form dl { float: left; width: 34%; margin: 0; }
.calc #popup-form dl.r { width: 30%; }
.calc #popup-form dt, .calc #popup-form dd { padding-right: 30px; }
.calc #popup-form dt { margin-bottom: 0.4em; }
.calc #popup-form dd { margin-bottom: 2.4em; }
.calc #popup-form dd.l { margin-bottom: 0; }
.calc #popup-form dd span { font-style: italic; color: #000; }
.calc #popup-form input { margin-right: 7px; }
.calc .date-container, .calc .submit-container { position: relative; width: 100%; }
.calc .submit-container div { position: absolute; top: -1.5em; left: 68%; }

.calc #result { background: #EDEDED; margin-top: 15px; float: left; }
.calc #result h2 { margin: 0; }
.calc #result td { padding: 0.5em 0 0 33px; }
.calc #result .v { padding-left: 75px; color: #000; }

.calc th { font-style: italic; text-align: left; }
.calc td { white-space: nowrap; }
.calc #graphic td, .calc #efficiency td { color: #000; border-bottom: 1px dashed #C4C4C8; }
.calc #graphic .t, .calc #efficiency .t { color: #666668; }

.calc #graphic { clear: left; }
.calc #graphic, .calc th { border-bottom: 1px solid #666668; }
.calc #graphic table { width: 100%; margin-bottom: 1.2em; }
.calc #graphic th, .calc #graphic td { padding: 0.2em 0 0.2em 30px; }

.calc #graphic p { font-style: italic; text-align: right; }
.calc #graphic span { color: #000; font-style: normal; }

.calc #attention h2 { color: #FF7206; }
.calc #attention ol { margin-left: 50px; }
.calc #attention .marker, .calc #attention ol li:before { color: #FF7206; }

.calc #efficiency { border-bottom: 1px solid #666668; margin-top: 2.5em; }
.calc #efficiency th, .calc #efficiency td { padding: 0.3em 60px 0.3em 30px; }

.calc #contact { margin-top: 3em; }
.calc #contact p { font-style: italic; color: #000; }

/* Результаты поиска */
.results #total { font-size: 0.875em; font-style: italic; margin-bottom: 2em; }
.results #total span { font-weight: bold; }
.results ol h3 { margin-top: 0; }
.results ol p { font-style: italic; font-size: 1.125em; }
.results ol p.path { font-size: 1em; }
.results #text ol li { margin-bottom: 1.8em; }
.results .path a { padding-left: 11px; background: url(/i/path_bullet.gif) no-repeat 0 0.4em; margin-right: 9px; }
.results .path .f { padding-left: 0; background: none; }
.results ol li { behavior: expression( ( !this.before && parentNode && parentNode.tagName == 'OL' ) ? ( this.before = true ) & ( parentNode.counter++ ) & ( parentNode.style.listStyleType = 'none' ) & ( eNOBR = document.createElement( '<div class="marker" />' ) ) & ( eNOBR.innerHTML = "[" + parentNode.counter + "]" ) & ( this.insertBefore( eNOBR, this.firstChild ) ) : ''); }
.results .marker, .results ol li:before { font-size: 1.125em; font-style: italic; font-weight: bold; }
.results ol > li:before { content: "[" counter(item) "]"; top: -0.1em; }
