/*	 специальные стили, используемые цмс */
/*	глобальные ссылки	*/
a {
	color: blue;
	outline: none;
	text-decoration: underline;
}
a:hover {
	text-decoration: none;
	color: red;
}
/*	списки в обычном тексте (не в меню -- там свои точные правила выше по силе)	*/
ol {
	list-style-type: decimal;
	padding-left: 30px;
	margin: 8px 0;
}
ul {
	list-style-type: disc;
	padding-left: 30px;
	margin: 8px 0;
}
ol ol, ul ol {
	list-style-type: lower-alpha;
}
ul ul, ol ul {
	list-style-type: circle;
}
/*	текст-примечания	 */
.notes {
	font-size: 12px;
}
.fd-field {
	margin:0;
	padding: 0;
	clear: both;
}
.fd-name {
	float: left;
	overflow: hidden;
	width: 100px;
	margin:  0;
	padding: 0;
}
.fd-note {
	font-size: 12px;
	margin: 0 0 0 12px;
	padding: 0;
}
/*	картинки-иконки		*/
IMG.imAcn {
	border: none;
	height: 16px;
	width: 16px;
	vertical-align: middle;
}
/*	ссылки кнопки		*/
A.x-button,
A.x-button:hover {
	font-family: Times, Arial, Tahoma, Verdana, sans-serif;
	font-size: 14px;
	padding: 0 4px 0 4px;
	text-decoration: none;
	border: none;
}
A.x-button {
	color: #333333;
	background: #FF9999;
}
A.x-button:hover {
	background: #EE6666;
	color: #FFFFFF;
}
A.x-button2,
A.x-button2:hover {
	font-family: Times, Arial, Tahoma, Verdana, sans-serif;
	font-size: 14px;
	padding: 0 1px 0 2px;
	text-decoration: none;
	background: transparent;
	border: none;
}
A.x-button2 {
	color: #333333;
}
A.x-button2:hover {
	color: #EE3333;
}
/*	ссылки на страницы	*/
.enumpages {
	margin: 12px 0 12px 0;
	text-align: center;
}
.enumpages A,
.enumpages A:hover,
.enumpages A.active {
	margin:	0 2px 0 2px;
	padding: 0 4px 2px 4px;
	text-decoration: none;
	border: none;
}
.enumpages A {
	background: transparent;
	color: #333333;
}
.enumpages A:hover {
	background: #FFEEEE;
	color: #AA3333;
}
.enumpages A.active {
	background: #EEEEEE;
	color: #666666;
}
/*	элементы форм		*/
INPUT, TEXTAREA, SELECT {
	font-family: verdana, arial, sans-serif;
	font-size: 14px;
	color: #222;
	background: #fafafa;
	border: 1px solid #bbb;
	border-radius: 4px;
	box-sizing: border-box;
	transition: border-color 0.2s, background 0.2s;
}
INPUT:focus, TEXTAREA:focus, SELECT:focus {
	border-color: #0B4388;
	background: #fff;
	outline: none;
}
#ticketinput INPUT {
	width: 85%;
	height: 24px;
	font-size: 14px;
}
#poisk INPUT {
	width: 80%;
	height: 26px;
	font-size: 18px;
}
#poisk .button {
	width: 24px;
	height: 26px;
	font-size: 18px;
	cursor: pointer;
}
.button {
	font-size: 16px;
}
.radio,
.checkbox {
	background: transparent;
	border: none;
}
/* Форма обратной связи */
.form-wrap {
	max-width: 560px;
	margin: 0 auto;
	background: #fff;
	border-radius: 8px;
	padding: 28px 32px 32px;
	box-shadow: 0 2px 12px rgba(0,0,0,0.10);
}
.form-wrap h2 {
	margin: 0 0 22px;
	font-size: 20px;
	color: #0B4388;
	text-align: center;
}
.form-wrap label {
	display: block;
	margin-bottom: 4px;
	font-weight: bold;
	color: #333;
}
.form-wrap .req {
	color: #d00;
	margin-left: 2px;
}
.form-wrap INPUT[type="text"],
.form-wrap INPUT[type="email"],
.form-wrap TEXTAREA,
.form-wrap SELECT {
	width: 100%;
	padding: 8px 10px;
	margin-bottom: 16px;
	font-size: 14px;
}
.form-wrap TEXTAREA {
	height: 100px;
	resize: vertical;
}
.form-wrap TEXTAREA.large {
	height: 130px;
}
.form-wrap .contact-extra {
	display: none;
	margin-top: -10px;
}
.error-msg {
	color: #d00;
	font-size: 13px;
	margin-top: 2px;
	margin-bottom: 8px;
	display: none;
}
.form-wrap .error-msg {
	color: #d00;
	font-size: 13px;
	margin-top: -12px;
	margin-bottom: 10px;
	display: none;
}
.form-agree {
	margin: 15px 0;
	font-size: 13px;
	color: #444;
}
.form-agree label {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	cursor: pointer;
	font-weight: normal;
	margin-bottom: 0;
}
.form-agree input[type="checkbox"] {
	width: auto;
	margin: 3px 0 0;
	cursor: pointer;
}
.form-agree a {
	color: #0B4388;
	text-decoration: underline;
}
.form-wrap .form-agree {
	margin: 15px 0;
	font-size: 13px;
	color: #444;
}
.form-wrap .form-agree label {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	cursor: pointer;
	font-weight: normal;
	margin-bottom: 0;
}
.form-wrap .form-agree input[type="checkbox"] {
	width: auto;
	margin: 3px 0 0;
	cursor: pointer;
}
.form-wrap .form-agree a {
	color: #0B4388;
	text-decoration: underline;
}
.legal-agree {
	margin: 12px 0;
	font-size: 14px;
	line-height: 1.4;
}
.legal-agree label {
	cursor: pointer;
}
.legal-agree a {
	color: #0B4388;
	text-decoration: underline;
}
.btn-submit {
	display: block;
	width: 100%;
	padding: 11px;
	background: #0B4388;
	color: #fff;
	border: none;
	border-radius: 5px;
	font-size: 16px;
	font-family: verdana, arial, sans-serif;
	cursor: pointer;
	margin-top: 6px;
	transition: background 0.2s;
}
.btn-submit:hover {
	background: #0d56b0;
}
/* Попап подтверждения */
#popup-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,0.45);
	z-index: 1000;
	align-items: center;
	justify-content: center;
}
#popup-overlay.active {
	display: flex;
}
#comm-popup-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,0.45);
	z-index: 1000;
	align-items: center;
	justify-content: center;
}
#comm-popup-overlay.active {
	display: flex;
}
#popup-box {
	background: #fff;
	border-radius: 8px;
	padding: 32px 36px;
	max-width: 420px;
	width: 90%;
	text-align: center;
	position: relative;
	box-shadow: 0 4px 24px rgba(0,0,0,0.18);
	font-size: 16px;
	line-height: 1.5;
	color: #222;
}
#popup-box h3 {
	color: #0B4388;
	margin-top: 0;
	font-size: 20px;
}
#popup-box p {
	font-size: 16px;
	line-height: 1.5;
}
#popup-close {
	position: absolute;
	top: 10px;
	right: 14px;
	font-size: 22px;
	cursor: pointer;
	color: #888;
	line-height: 1;
	background: none;
	border: none;
}
.editor {
	display: block;
	margin: 2px 0;
	width: 100%;
	font-size: 14px;
	overflow: auto;
}
/*	 сообщ. ошибки		*/
.messages {
	margin: 0;
	padding: 4px 12px 4px 20px;
}
/*	подписи редактирования	*/
.toolbar{
	text-align: right;
	margin: 0;
}
/*	подсветка слов, найденных поиском */
.found {
	border: 1px #333333 dotted;
	padding: 1px 2px 1px 2px;
}
/*	блоки .navigate,	*/
.search,
.keywords,
.anons,
.opros,
.lastcomm {
	margin: 0 4px 0 12px;
}
/* главное меню	 */
.primary {
	margin: 0 0 2px 0;
}
.primary A,
.primary A:hover,
.primary A.active {
	float: left;
	text-decoration: none;
	border: none;
}
.primary A {
	margin: 0 4px 0 4px;
}
.primary UL {
	margin-left: 0;
	list-style-type: none;
}
.primary LI {
	float: left; 
}
/*	навигационное меню	*/
.navigate A,
.navigate A:hover,
.navigate A.active {
	display: block;
	border: none;
}
.navigate UL A,
.navigate UL A:hover,
.navigate UL A.active {
	display: inline;
}
.navigate SPAN {
	color: #AA3333;
	font-weight: 600;
}
.navigate UL {
	margin-left: 12px;
	list-style-position: inside;
}
.navigate > UL {
	margin-left: 0;
}
.navigate LI {
	list-style-type: circle; 
}
.navigate LI.active {
	list-style-type: disc; 
}
/*	цепочка меню		*/
.linkchain {
font-size: 14px;
}
.linkchain A {
font-size: 14px;
text-decoration: none;
}
/*	строка  Метка:...	*/
.keystring {
	font-size: 12px;
	margin: 0 0 0 12px;
}
.keystring A,
.keystring A:hover {
	font-size: 12px;
}
/*	строка  Предыдущая / Следующая страницы 	*/
.pagestring {
	font-size: 16px;
	margin: 20px 0 0;
	overflow: hidden;
}
.pagestring A,
.pagestring A:hover {
	font-size: 16px;
}
/*	листинг разделов	*/
.listing {
	margin: 0;
	font-size: 18px;
	line-height: 1.2;
}
.maplink {
	margin: 0;
}
.maplink A.active {
	font-weight: 700;
}
/*	поле поиска	*/
.search {
position:absolute;
top: -1px;
right:0;
}
.search INPUT.text {
font-family: Tahoma;
font-size: 18px;
color: #333333;
background: #EAEAEA;
border: 1px #000 solid;
width: 0;
padding: 0;
opacity: 0;
 -moz-transition: width .2s ease-in-out, padding .2s ease-in-out;
 -o-transition: width .2s ease-in-out, padding .2s ease-in-out;
 -webkit-transition: width .2s ease-in-out, padding .2s ease-in-out;
 transition: width .2s ease-in-out, padding .2s ease-in-out;
height: 24px;
}
.search.open INPUT.text {
width: 250px;
padding: 0 4px;
opacity: 1;
}
.search .button {
margin-left: 2px;
width: 24px;
height: 26px;
font-size: 18px;
background: transparent;
border: none;
cursor: pointer;
}
/*	анонсы и последние комменты	*/
.anons, .lastcomm {
	font-size: 12px;
}
.anons HR, .lastcomm HR {
	color: #000;
	height: 1px;
}
/*	опросник	*/
.opros INPUT,
.opros A,
.opros P {
	font-size: 12px;
}
.opros p {
	margin: 0;
}
.opros .radio {
	height: 10px;
}
.opros-resbox {
	margin: 0;
	border: 1px #333333 dotted;
	font-size: 1px;
	width: 500px;
}
.opros-resfon {
	font-size: 1px;
	height: 4px; 
}
/* комментарии */
.comments {
 margin: 0;
}
.comments .enumpages {
 margin: 0;
}
.comments #comm-list {
 margin:  0;
 padding: 0;
}
.comments .item {
 background: #F0F0FE;
 margin:  0 0 8px 0;
 padding: 10px 12px;
 display: flex;
 align-items: flex-start;
 gap: 10px;
 border-radius: 6px;
}
.comments .item span {
 color: #333333;
}
.comments .item p {
 padding: 2px 0;
 font-size: 12px;
 color: #333333;
}
.comments FORM {
 margin: 0;
 padding: 0;
}
.comments #comm-body {
 margin: 6px 0;
}
.comm-heading {
 font-size: 18px;
 margin: 10px 0;
}
.comm-empty {
 color: #666666;
 font-style: italic;
}
.comm-avatar {
 flex: 0 0 auto;
 width: 36px;
 height: 36px;
 border-radius: 50%;
 background: #7373C9;
 color: #FFFFFF;
 font-weight: bold;
 font-size: 16px;
 display: flex;
 align-items: center;
 justify-content: center;
}
img.comm-avatar {
 object-fit: cover;
 background: #eeeeee;
}
.comm-body {
 flex: 1 1 auto;
 min-width: 0;
}
.comm-meta {
 display: flex;
 align-items: baseline;
 gap: 8px;
 flex-wrap: wrap;
}
.comm-author {
 font-weight: bold;
 font-size: 15px;
 color: #222222;
}
.comm-date {
 font-size: 12px;
 color: #999999;
}
.comm-text {
 margin-top: 4px;
}
.comm-submit {
 background-color: #d32f2f;
 color: #ffffff;
 border: none;
 padding: 12px 32px;
 font-size: 15px;
 font-weight: bold;
 border-radius: 8px;
 cursor: pointer;
 box-shadow: 0 4px #990000;
 transition: all 0.2s ease;
}
.comm-submit:hover {
 background-color: #b71c1c;
 transform: translateY(-2px);
 box-shadow: 0 6px #990000;
}
.comm-submit:focus,
.comm-submit:active {
 background-color: #b71c1c;
 border-color: transparent;
 outline: none;
}
/* Тикетница */
#ticket-list {
  margin: 0;
}
#ticket-body {
  margin: 0;
}
#ticket-list .item-in,
#ticket-list .item-out {
 margin:  0 0 8px 0;
 padding: 8px 6px 8px 12px;
 border-radius: 6px;
}
#ticket-list .item-in {
 background: #FEF0F0;
}
#ticket-list .item-out {
 background: #F0F0FE;
}
#ticket-list span {
 padding-left: 12px;
 color: #333333;
}
#ticket-list p {
 padding: 2px 0;
 font-size: 16px;
 color: #333333;
}
/* ===== Современное горизонтальное меню ===== */
#cssmenu,
#cssmenu ul {
	list-style: none;
	margin: -9px 0 0 0;
	padding: 0;
}

#cssmenu {
	display: flex;
	align-items: center;
	
	font: 17px Verdana, Arial, sans-serif;
	height: 45px;
}

	/* ===== Верхний уровень ===== */

	#cssmenu > li {
		position: relative;
	}

		#cssmenu > li > a {
			display: block;
			padding: 0 14px;
			line-height: 45px;
			color: #ffffff;
			font-family: Georgia, "Times New Roman", Times, serif;
			text-shadow:
				-1px -1px 0 #000,
				1px -1px 0 #000,
				-1px 1px 0 #000,
				1px 1px 0 #000;
			text-decoration: none;
			transition: background 0.2s ease;
		}

		/* Hover верхнего меню */

		#cssmenu > li:hover > a {
			background: #1e5fa8;
		}

	/* ===== Подменю ===== */

	#cssmenu li ul {
		position: absolute;
		top: 100%;
		left: 0;
		min-width: 260px;
		background: #0b3f75;
		border-radius: 0 0 6px 6px;
		box-shadow: 0 10px 25px rgba(0,0,0,0.25);
		display: none;
		padding: 6px 0;
		z-index: 9999;
	}

	/* Показ подменю */

	#cssmenu li:hover > ul {
		display: block;
	}

	/* Пункты подменю */

	#cssmenu li ul li {
		position: relative;
	}

		#cssmenu li ul li a {
			display: block;
			padding: 10px 18px;
			color: #ffffff;
			font-family: Georgia, "Times New Roman", Times, serif;
			text-shadow:
				-1px -1px 0 #000,
				1px -1px 0 #000,
				-1px 1px 0 #000,
				1px 1px 0 #000;
			text-decoration: none;
			white-space: nowrap;
			transition: background 0.2s ease;
		}

			/* Hover подменю */

			#cssmenu li ul li a:hover {
				background: #1e5fa8;
			}

		/* ===== Второй уровень (вправо) ===== */

		#cssmenu li ul li ul {
			top: 0;
			left: 100%;
			border-radius: 6px;
		}

.krs {
    text-indent: 1.5em;
}
.krv {
    margin-bottom: 1em;
}
.krvbh {
    margin: 1em 0;
}
.krvb {
    margin-top: 1em;
}
/*	портфолио галерея	*/
.disblok{
display:inline-block;
width:185px;
height:245px;
text-align:center;
}
.disblok-su{
display:inline-block;
width:185px;
text-align:center;
margin:20px;
}
.disblok-su img {
display: block;
margin: 5px auto;
}
/*	калькулятор	*/
.formik {
	width: 80%;
}
/*	копиригхт 	*/
#futcent {
    position: absolute;
    bottom: 3px;
    right: 7px;
    padding-left: 10px;
    color: #ffffff; /* Белый цвет для обычного текста, если он там есть */
    font-size: 14px; /* Можно немного уменьшить размер для аккуратности */
    text-shadow:
        -1px -1px 0 #000,
        1px -1px 0 #000,
        -1px 1px 0 #000,
        1px 1px 0 #000;
}

/* Цвет для самих ссылок (arives.ru и Правовая информация) */
#futcent a {
    color: #ffffff; /* Белый цвет на голубом фоне читается идеально */
    text-decoration: underline; /* Оставляем подчеркивание, чтобы было понятно, что это ссылка */
    transition: color 0.2s ease; /* Плавная смена цвета при наведении */
}

/* Эффект при наведении мышки на ссылку */
#futcent a:hover {
    color: #e0f2fe; /* Чуть-чуть притемняем или осветляем при наведении (нежно-голубой) */
    text-decoration: none; /* По желанию: убираем подчеркивание при наведении */
}
/* nav вокруг ссылок в футере — строчный, чтобы не переносился на новую строку */
#futcent nav {
    display: inline;
}
/*	мультиблок реклgoogl	*/
#reklamblok {
margin:80px 8px 0 2px;
}
#lybovblagost {
display: none;
}
#parent_popup {
background: #000;
height:100vh;
opacity: 0.9;
position: fixed;
display:flex;
align-items:center;
justify-content:center;
width:100vw;
z-index: 100;
top: 0px;
left: 0px;
}
#popup {
background-color: #fff;
height: 60%;
position: fixed;
top: 100px;
bottom: 100px;
color: #f00;
width: 62%;
text-align: center
}
#krestik {
position: fixed;
top: 80px;
left: 82%;
font-size: 55px;
color: #fff;
}
#krestik a {
text-decoration: none;
color: #fff;
}
.gthjq {
  height: 500px;
  width: 81%;
  /* еще больше контроля с max-width  max-width: 720px; */
max-width: 700px;
}
@media (max-width: 768px) {
  img {
    max-width: 270px;
    height: auto;
  }
}
/* Контейнер аннотации */
.story-annotation {
    margin: 0 30px 20px 30px;
    padding: 15px;
    border: 1px solid #e0c9a6;
    border-radius: 8px;
    background-color: #fdfaf3;
    font-family: "Book Antiqua", Palatino, serif;
}

/* Заголовок аннотации */
.story-annotation summary {
    font-weight: bold;
    color: #8b4513;
    cursor: pointer;
    outline: none;
    list-style: none; /* Убираем стандартную стрелку */
    
    /* Новое: выравниваем иконки по краям */
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Убираем стрелку в Safari/Chrome */
.story-annotation summary::-webkit-details-marker {
    display: none;
}

/* Иконка книги ПЕРЕД текстом */
.story-annotation summary::before {
    content: "📖 ";
    font-size: 0.9em;
    margin-right: 8px; /* Отступ от текста */
}

/* Интерактивная стрелочка ПОСЛЕ текста */
.story-annotation summary::after {
    content: "▼";
    font-size: 0.7em;
    color: #a68b60;
    transition: transform 0.3s ease; /* Плавный поворот */
}

/* Поворот стрелочки при открытии */
.story-annotation[open] summary::after {
    transform: rotate(180deg);
}

/* Текст внутри аннотации */
.annotation-content {
    margin-top: 12px;
    padding-left: 5px;
    border-top: 1px solid rgba(139, 69, 19, 0.1);
    padding-top: 10px;
}

.annotation-content p {
    font-style: italic;
    color: #4a4a4a;
    line-height: 1.6;
    margin: 0;
}

        /* Стили для кнопки */
        .red-button {
            background-color: #d32f2f; /* Насыщенный красный цвет */
            color: white; /* Белый цвет текста */
            border: none; /* Убираем рамку */
            padding: 15px 30px; /* Отступы внутри кнопки */
            text-decoration: none; /* Убираем подчеркивание у ссылки */
            display: inline-block; /* Чтобы размер применился */
            font-size: 16px; /* Размер шрифта */
            font-weight: bold; /* Жирный шрифт */
            border-radius: 8px; /* Скругленные углы */
            cursor: pointer; /* Курсор при наведении */
            transition: all 0.3s ease; /* Плавная анимация */
            box-shadow: 0 4px #990000; /* Небольшая тень для объема */
        }

        /* Стили при наведении курсора */
        .red-button:hover {
            background-color: #b71c1c; /* Еще более темный красный */
            transform: translateY(-2px); /* Поднять кнопку немного вверх */
            box-shadow: 0 6px #990000; /* Увеличить тень */
        }
.dalli a {
  font-size: 0.85em; /* размер изменится именно у текста ссылки */
}
.dalli {
  padding-bottom: 18px; /* а отступ останется у всего блока */
}
.flat-line {
  border: none;
  height: 1px;
  background-color: #ccc;
  margin: 0.6em 0 1em;
}

main::after {
    content: "";
    display: table;
    clear: both;
}
.cente {
text-align: center;
margin: 0 auto;
}
/*	блок музыкального плеера (аудио + кнопка скачать)	*/
.player-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
}
.player-row audio {
	flex: 1 1 auto;
	min-width: 250px;
	display: block;
}
/*	карточки в окне поддержки при скачивании	*/
.modal-disblok {
	flex: 1 1 220px;
	min-width: 200px;
	max-width: 260px;
	background: #f9f9f9;
	border-radius: 10px;
	padding: 15px;
	box-sizing: border-box;
	line-height: 1.6;
}
.modal-disblok img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}
/*	счётчик просмотров страницы	*/
.pageviews {
	font-size: 13px;
	color: #888;
	margin: 10px 0 6px 0;
}
.sbp {font-size: 0.9em; margin-top: 16px;}