/* 1. Предварительные установки */

html
{
	height: 100%;
}

body
{
	position: relative;
	height: 100%;
	margin: 0;
	text-align: center;
	background-color: #FAFAFA;
	color: #034895;
	font: 12px Verdana, Arial, Helvetica, sans-serif;
}

table
{
	border-width: 0;
	border-collapse: collapse;
}

table td
{
	border-width: 0;
	padding: 0;
	font-size: 12px;
	text-align: left;
}

a
{
	color: #034895;
}

a:hover, h4 a:hover
{
	color: #538AC7;
}

p
{
	margin: 10px 0;
}

h1
{
	margin: 32px 0 12px;
	font-size: 22px;
}

h2
{
	margin: 28px 0 12px;
	font-size: 18px;
}

h3
{
	margin: 24px 0 12px;
	font-size: 15px;
}

h4
{
	margin: 20px 0 12px;
	font-size: 13px;
}

h1, h2, h3, h1 a, h2 a, h3 a, .red
{
	color: #D70000;
}

h1 a:hover, h2 a:hover, h3 a:hover, a.red:hover
{
	color: #EA7979;
}

img
{
	border-width: 0;
}

hr
{
	height: 0;
	border-width: 0;
	border-top: 1px dashed #CCC;
	margin: 30px 0 0;
}


/* 2. Дополнения */

h1.compact, h2.compact, h3.compact, h4.compact
{
	margin-bottom: 0;
}

.small
{
	font-size: 11px;
}

.nobr
{
	white-space: nowrap;
}

.line_space_plus
{
	line-height: 1.5;
}

.nodecor
{
	text-decoration: none;
}

.bold
{
	font-weight: bold;
}

h1 span, h2 span, h3 span, h1 div, h2 div, h3 div, td.label span, .nobold
{
	font-weight: normal;
}

h1 div
{
	font-size: 70%;
}

h2 div, h3 div
{
	font-size: 75%;
}

.odd, .lite_blue
{
	background-color: #F7FAFD;
}

.tall
{
	height: 100%;
}

.wide
{
	width: 100%;
}

.max
{
	width: 100%;
	height: 100%;
	min-height: 100%;
}

.last, .bottom_line
{
	border-bottom: 1px solid #CFDFED;
}

.last2
{
	border-bottom: 1px dashed #CCC;
}

.align_center
{
	text-align: center;
}

.top, td.main_parent
{
	vertical-align: top;
}

.bottom, td.top_parent
{
	vertical-align: bottom;
}

.flt_left, .float_left
{
	float: left;
}


.flt_right, .float_right
{
	float: right;
}

img.float_left
{
	float: left;
	margin: 0 5px 5px 0;
}

img.float_right
{
	float: right;
	margin: 0 0 5px 5px;
}

/* элементы вёрстки и общего дизайна */

table.overall
{
	width: 800px;
	/*height: 100%;*/
	margin: 0 auto;
	background: #D70000 url(../img/menu_bg.gif) repeat-x 0 401px;
	border: 1px solid #E8E8E8;
}

tr.top_parent
{
	height: 219px;
	background-color: #FFF;
}

table.top_1
{
	width: 100%;
	height: 60px;
}

td.top_1_left
{
	padding-left: 20px;
}

td.top_1_middle
{
	padding-right: 9px;
	text-align: right;
	font-size: 11px;
	line-height: 1.5;
}

td.top_1_right
{
	width: 37px;
	background: url(../img/info1_blue.gif) no-repeat left center;
}

td.top_2
{
	height: 159px;
}

td.top_2 table
{
	width: 100%;
	height: 159px;
	background: #004696 url(../img/top_bg.gif) repeat-x left top;
	vertical-align: middle;
}

td.top_2 table td
{
	text-align: center;
	vertical-align: middle;
	padding-left: 400px;
	background: url(../img/top_left.jpg) no-repeat left bottom;
	color: #FFF;
	font-size: 26px;
	font-weight: bold;
	text-transform: uppercase;
	line-height: 1.5;
	letter-spacing: 1px;
	cursor: default;
}

table.main
{
	width: 100%;
	height: 100%;
}

td.left
{
	width: 202px;
	height: 100%;
	vertical-align: top;
  background: url(../img/menu_left.gif) repeat-y left top;
}

td.left_top
{
	height: 38px;
	background: url(../img/menu_top.gif) no-repeat left top;
}

td.left_menu
{
	padding: 5px 20px;
	vertical-align: top;
/*	width: 165px;
	position: fixed; */
}

td.menu_dot
{
	width: 10px;
	padding: 6px 0;
	text-align: center;
	vertical-align: top;
	color: #FFD4D4;
	border-bottom: 1px solid #FFD4D4;
	font-size: 13px;
	font-weight: bold;
}

td.menu_item
{
	padding: 6px 2px 6px 4px;
	vertical-align: middle;
	color: white;
	border-bottom: 1px solid #FFD4D4;
	font-size: 13px;
	font-weight: bold;
}

td.td.menu_dot, td.menu_item
{
	cursor: default;
}

td.menu_item a
{
	color: #FFF;
	text-decoration: none;
}

td.menu_item a:hover
{
	color: #FFD4D4;
}

div.left_phones, form#search
{
	margin: 15px 20px 15px 15px;
	padding-top: 5px;
	text-align: right;
}

div.left_phones, form#search p
{
	color: #FFF;
	line-height: 1.8;
}

div.left_phones
{
	background: url(../img/info1_red.gif) no-repeat left top;
}

form#search
{
	padding-bottom: 10px;
	border-bottom: 1px solid #FFD4D4;
}

div.left_phones strong, form#search p
{
	text-transform: uppercase;
	cursor: default;
}

form#search p
{
	margin-top: 0;
	color: #FFF;
	font-weight: bold;
}

form#search input
{
	width: 130px;
}

form#search input.img
{
	width: auto;
	margin-left: 5px;
	vertical-align: bottom;
}

tr.bottom
{
	height: 44px;
}

td.bottom_left
{
	background: url(../img/menu_bottom.gif) no-repeat left top;
}

td.bottom_right
{
	background: #FFF url(../img/main_bottom.gif) no-repeat left top;
}

td.txt
{
	background-color: #FFF;
	padding: 17px 10px 0 17px;
	vertical-align: top;
	font-size: 12px;
}

td.right
{
	background-color: #FFF;
	vertical-align: top;
	width: 227px;
	padding: 14px 10px 0 0;
}

td.right_inner
{
	padding-left: 16px;
	vertical-align: top;
	border-left: 1px dashed #CCC;
}

/* 3. Особые элементы дизайна */


table.dir_button
{
	height: 55px;
	border-top: 1px solid #CFDFED;
}

td.dir_button_left
{
	padding: 2px 0 0 15px;
}

td.dir_button_right
{
	width: 270px;
	padding: 2px 10px 0;
	color: #00489D;
	font-size: 11px;
	font-weight: normal;
}

td.dir_button_right h2
{
	font-size: 14px;
	margin: 0;
}

table.red_line
{
	width: 100%;
}

.right_inner table.red_line
{
	width: 202px;
}

td.pad
{
	height: 20px;
}

td.outside_red
{
	height: 29px;
	background: url(../img/info2_blue.gif) no-repeat right center;
}

td.outside_red table
{
	width: 92%;
	height: 19px;
}

.right_inner td.outside_red table
{
	width: 175px;
}

td.outside_red table td
{
	padding: 0 10px 0 15px;
	background: #D90707 url(../img/red_line_cap.gif) no-repeat right center;
	color: white;
	font-size: 11px;
	font-weight: bold;
	text-transform: uppercase;
	cursor: default;
}

td.under_red
{
	padding: 3px 0 5px 10px;
	text-align: left;
	font-size: 11px;
	font-weight: normal;
}

td.under_red h2
{
	margin: 2px 0 1px;
	color: #034895;
	font-size: 12px;
	font-weight: bold;
}


td.under_red.highlighted
{
	padding: 10px;
	border: 1px solid #f37677;
	background-color: #fee;
	/*position: relative;*/
}

td.under_red.highlighted, td.under_red.highlighted h2, td.under_red.highlighted a
{
	color: #D90707;
}

td.under_red.highlighted a:hover
{
	color: #f37677;
}


td.dir_button_right a, td.under_red h2 a
{
	color: #034895;
	text-decoration: none;
}

td.dir_button_right a:hover, td.under_red h2 a:hover
{
	color: #538AC7;
}

td.under_red div.date
{
	text-transform: uppercase;
	white-space: nowrap;
}

td.about
{
	vertical-align: top;
}

td.about_map
{
	padding: 28px 0 0 10px;
	vertical-align: middle;
}

p.top_descr, p.dir_top_descr
{
	margin-bottom: 15px;
	font-weight: bold;
	color: #ED8787;
	letter-spacing: 1px;
}

p.dir_top_descr
{
	margin-top: 10px;
	margin-bottom: 5px;
}

p.spec_name_trn
{
	font-size: 12px;
}

p.spec_name_trn a
{
	font-weight: bold;
}

/* 4. Обычные элементы дизайна */

/* 4.2. Ссылки */

a.red_bold
{
	color: #D70000;
	font-weight: bold;
}

a.red_bold:hover
{
	color: #F37677;
}

/* 4.3. Заголовки */

h1.first
{
	margin-top: 5px;
}

h1.dir_name
{
	margin-top: 0;
}

h1.index
{
	font-size: 16px;
}

h1.compact
{
	margin: 10px 0;
}

/* 4.4. Списки */

ul, ol
{
	margin: 12px 0 12px 20px;
	padding-left: 0;
}

ul
{
	list-style-image: url(../img/blt_red.gif);
}

ul.blue_triangle
{
	list-style-image: url(../img/blt_blue.gif);
}

ul.rare, ul.blue_triangle_rare
{
	padding-bottom: 5px;
}

li
{
	margin: 0 0 10px 10px;
}

ul.compact li, li.compact
{
	margin: 0 0 2px 10px;
}

li ol, li ul
{
	margin-top: 5px;
}

/* sort us */

table.blue_block, table.blue_block2
{
	width: 100%;
	border-top: 1px dashed #CCC;
	border-bottom: 1px dashed #CCC;
	border-collapse: separate;
}

table.blue_block img, table.blue_block2 img
{
	float: left;
	border: 1px solid #86AACE;
	margin: 10px 12px 5px 0;
}

table.blue_block td, table.blue_block2 td
{
	vertical-align: top;
	border-top: 5px solid #FFF;
	border-bottom: 5px solid #FFF;
	background-color: #EBF6FF;
	padding: 5px 12px;
	font-size: 11px;
}

table.blue_block2 td
{
	font-size: 11px;
}

p.resp_txt, p.resp_under
{
	margin: 0;
	padding: 10px;
	border-top: 1px solid #CFDFED;
	font-size: 11px;
}

p.resp_under
{
	padding-top: 0;
	border-top-width: 0;
}

td.add
{
	padding: 32px 0 0 10px;
	color: #D70000;
	font-weight: bold;
	vertical-align: top;
}

td.add a
{
	color: #D70000;
}

td.add a:hover
{
	color: #EA7979;
}

td.add img
{
	float: left;
	margin-right: 4px;
}

table.page_sections
{
	width: 100%;
}

table.page_sections td
{
	vertical-align: top;
}

table.page_sections ul
{
 	color: #D70000;
	list-style-image: none;
	list-style-type: square;
}

table.page_sections a
{
 	font-weight: bold;
}

p.top_link
{
	padding-right: 15px;
	text-align: right;
	color: #D70000;
	font-size: 11px;
}

p.top_link a
{
	color: #D70000;
}

p.top_link a:hover
{
	color: #EA7979;
}

div.popup
{
	height: 100%;
	width: 100%;
	padding-top: 10px;
	text-align: center;
}

div.popup div
{
	width: 87%;
	margin: auto;
	text-align: left;
}

form td
{
	padding: 2px 0;
}

div.popup h1
{
	font-size: 16px;
	margin-top: 10px;
}

form
{
	margin: 0;
}

input, select, textarea
{
	width: 250px;
	font: 12px Verdana, Arial, Helvetica, sans-serif;
}

form td.label
{
	padding-top: 5px;
	font-weight: bold;
}

.buttons, .three_buttons
{
	padding-top: 5px;
	text-align: justify;
}

div.buttons, div.three_buttons
{
	width: 100% !important;
}

.buttons input, .three_buttons input
{
	width: 122px;
	margin-top: 2px;
	padding: 1px 0;
	background-color: #C1DEFE;
	color: #034895;
	border: 1px solid #A4ABB5;
	font-weight: bold;
}

.three_buttons input
{
	width: 80px;
}

div.wider input, div.wider select, div.wider textarea
{
	width: 300px;
}

div.wider .buttons input
{
	width: 145px;
}

div.wider .three_buttons input
{
	width: 96px;
}

span.note, span.note_demo
{
	color: #D70000;
	font-weight: bold !important;
}

span.note
{
	cursor: help;
}

div#img_view p.comment
{
	margin-top: 0;
	font-weight: bold;
}

div#img_view p.sub
{
	margin: 5px 0;
	font-size: 11px;
}

span.book_author
{
	font: bold 12px Arial, Helvetica, sans-serif;
	font-style: italic;
}

div.fs_parent fieldset
{
	margin-top: 15px;
	padding: 10px;
	background-color: #F7FAFD;
	border: 1px solid #CCC;
	font-size: 11px;
}

div.fs_parent fieldset legend
{
	padding: 3px 10px;
	font-weight: bold;
	background-color: #FFF;
	border: 1px solid #CCC;
	cursor: default;
}

div.fs_parent fieldset legend span
{
	font-weight: normal;
}

div.trn_photo fieldset div, div.trn_random_photo fieldset div
{
	text-align: center;
}

div.trn_photo img, div.trn_random_photo img
{
	border: 1px solid #86AACE;
	margin: 5px;
}

div.magic
{
	display: block;
}

div.line
{
	padding: 10px 20px;
	border-top: 1px solid #CFDFED;
}

div.line p, td.under_red p, p.compact
{
	margin: 7px 0;
}

div.line hr
{
	margin: 10px 0;
	border-top: 1px solid #CFDFED;
}

p.faq
{
	margin: 10px 0 0;
	font-size: 14px;
	font-weight: bold;
}

p.qa_author
{
	margin-bottom: 15px;
	font-weight: bold;
}

ul.trn_list a
{
	font-weight: bold;
	text-decoration: none;
}

ul ul li, ol ul li
{
	margin: 2px 0 2px;
	list-style-image: url(/img/blt_red_sml.gif);
}

ul.trn_list a span, ul.trn_list ul a
{
	font-weight: normal;
}

h3.timetbl_month
{
	margin: 35px 0 0;
	padding-bottom: 15px;
	text-transform: uppercase;
	border-bottom: 1px dashed #CCC;
}

table.event
{
	width: 100%;
	height: 90px;
	border-bottom: 1px dashed #CCC;
}

td.side
{
	width: 70px;
	padding: 10px 0 10px 10px;
	vertical-align: top;
}

td.timetbl_right
{
	width: 130px;
	padding: 10px 0 10px 10px;
	vertical-align: top;
}

td.center_top
{
	padding: 10px 10px 5px;
	vertical-align: top;
}

span.timetbl_event_name, span.timetbl_date
{
	font-weight: bold;
	font-size: 14px;
}

span.timetbl_date
{
	color: #D70000;
}

tr.line
{
	border-top: 1px dashed #CCC;
}

tr.line h3
{
	margin-top: 10px;
}

tr.line td.side
{
	padding-top: 20px;
}

tr.line td.center_top
{
	padding-bottom: 15px;
}

table.dir_trn_list
{
	margin-top: 20px;
	width: 100%;
}

table.spec
{
	width: 100%;
}

table.spec td
{
	vertical-align: top;
}

table.spec td.spec_left
{
	width: 130px;
	padding: 30px 10px 0 0;
}

table.spec td.spec_left img
{
	margin: 0 10px 10px;
}

table.spec td.spec_left td.spec_cit
{
	padding: 0 10px;
	font-size: 11px;
	background-color: #EBF6FF;
}

ol.search_results span
{
	color: #D70000;
	font-weight: bold;
}

table.lined, table.lined td, table.lined th
{
	border: 1px solid #ccc;
}

table.lined
{
	width: 100%;
	border-collapse: collapse;
}

table.lined td, table.lined th
{
	padding: 0.3em 0.5em;
}

table.lined th
{
	text-align: center;
  background-color: #eee;
	font-size: 100%;
	font-weight: bold;
}