.icon {color: var(--dark-yellow);}
.icon-24 {font-size: 24px; color: var(--dark-yellow) !important;}
.icon-36 {font-size: 36px; color: var(--dark-yellow) !important;}
.icon-48 {font-size: 48px; color: var(--dark-yellow) !important;}
.icon-64 {font-size: 64px; color: var(--dark-yellow)!important;}
.icon-72 {font-size: 72px; color: var(--dark-yellow) !important;}
.icon-96 {font-size: 96px; color: color: var(--dark-yellow) !important;}

/* Блоки в тексте, картинки и пр. */

.float-left, .float-right {max-width: 49%; padding: 0; display: block}
.float-left {float: left; margin: 0 28px 20px 0;}
.float-right {float: right; margin: 0 0 20px 28px;}
@media screen and (max-width:767px) { /* Mobile Portrait View */
	.float-left, .float-right {max-width: none; width:100%; float: none; margin: 0}
}

/* MAINTENANCE MODE */

.maintenance {font-size: 18px; margin: 20px}
.maintenance .photo {margin: 10px; max-width: 670px !important}
.maintenance .icon {margin: 30px;}
.maintenance .button {margin: 20px;}
.maintenance .phone {padding: 20px; font-size: 32px; font-weight: 600;}
.maintenance .phone  > a, .maintenance .phone > a:hover, .maintenance .phone > a:visited { color: #282828 !important}
.maintenance .social-icons {font-size: 36px; margin-top: 10px; margin-bottom: 20px}
.maintenance .social-icons > a {margin-right: 20px; color: #1b2739 !important }
.maintenance .social-icons > a:hover {color: var(--dark-yellow) !important; background-color: white !important }
.maintenance .social-icons > a:visited {color: #1b2739 !important }
.maintenance .social-icons > a:last-child  {margin-right: 0px}
.maintenance .logo {width: 180px}

/* FAQ */
.faq-list article {margin-bottom: 15px}
.faq-list .faq-question {font-size: 20px; font-weight: bold; padding: margin: 0}
.faq-list .faq-question > i {color: var(--dark-yellow)}
.faq-list .faq-answer {font-size: 20px; line-height: 1.7;  text-align: justify}
.faq-list .faq-attention {padding: 15px 25px; background-color: var(--dark-yellow); font-weight: bold;  text-align: justify}

/* Правила для посетителей */

.rules-attention {background-color: var(--dark-yellow);	padding: 25px 35px; margin: auto 0px 50px 230px; font-weight: 500;}
.rules-title {font-weight: 500; font-size: 36px;}
.rules-title i:first-of-type {color: var(--dark-yellow); margin-right: 20px;}
.rules-text {margin: 25px 10px 25px 230px; font-size: 20px; text-align: justify}
.rules-text ul {padding-left: 20px;}
.rules-text ul > li {padding-left: 10px;}
@media screen and (max-width:767px) { /* Mobile Portrait View */
	.rules-attention {width: 90%; margin: 10px auto 25px auto;}
}
@media screen and (max-width:900px) { /* Mobile Portrait View */
	.rules-text {margin: 25px 10px; font-size: 18px;}
}

/* Новости preview */

/* Контейнер и карточка */
.posts-container { display: flex; flex-direction: column; gap: 30px; margin-bottom: 40px; }
.post-item { display: flex; gap: 30px; align-items: stretch; margin-bottom: 20px; }

/* Изображение */
.post-item-image { flex: 0 0 30%; max-width: 30%; }
.post-item-image a { display: block; overflow: hidden;}
.post-item-image img { width: 100%; height: 250px; object-fit: cover; display: block; transition: .3s; }
.post-item-image a:hover img { transform: scale(1.05); }

/* Контентная часть */
.post-item-content { flex: 1; display: flex; flex-direction: column; justify-content: space-between; }
.post-item-content .post-category {color: var(--gray)}
.post-item-content .post-category a {color: inherit}
.post-item-top { flex-grow: 1; }

/* Типографика */
.post-item-title { margin: -5px 0 12px 0; font-size: 26px; font-weight: 400; line-height: 1.3; color: var(--gray)}
.post-item-title a {color: inherit}
.post-item-meta { display: flex; gap: 10px; font-size: 18px; color: var(--gray); margin-bottom: 10px; }
.post-category {}
.post-item-category a { color: inherit}
.post-item-excerpt { font-size: 20px; line-height: 1.5; text-align: justify; margin-bottom: 15px;}
.post-item-bottom { display: flex; justify-content: flex-end; margin-top: 15px; }

/* Адаптив */
@media (max-width: 768px) {
	.post-item { flex-direction: column; }
	.post-item-image { max-width: 100%; }
	.post-item-image img { height: 200px; }
	.post-item-title { font-size: 18px;}
	.post-item-bottom { justify-content: flex-start; }
}

/* Новости, Проекты */

.post-flex-wrapper { display: flex; gap: 30px; margin-bottom: 40px; align-items: flex-start; }
.post-preview { flex: 0 0 47%; }
.post-preview img { width: 100%; height: auto; display: block; }
.post-info { flex: 0 0 50%; }
.post-side-excerpt {}
/* Если превью нет, блок данных занимает 100% */
.post-flex-wrapper.no-thumb .post-info { flex: 0 0 100%; }

.post-info-row {font-size: 20px; color: var(--gray)}
.post-info-row a {color: inherit}
.post-info-row a:hover {text-decoration: underline}
.post-info-row:not(:has(~ .post-info-row)) {margin-bottom: 20px}
.post-info-row strong {}
.post-side-excerpt {}
.post-main-text { font-size: 20px; line-height: 1.6; text-align: justify; }

@media (max-width: 768px) {
	.post-flex-wrapper { flex-direction: column; }
	.post-preview, .post-info { flex: 0 0 100%; }
}

/* О музее - о нас */

.about-content {font-size: 18px;}
.fourcol, .threecol2 {display: flex; justify-content: space-between; margin: 40px 0; flex-direction: row}
.fourcol .col {width: 24%; font-size: 15px; font-style: italic; text-align: left;}
.fourcol .col .year{font-size: 24px; color: #909090; font-style: normal; margin-bottom: 15px;}
.threecol2 .col {width:180px; font-weight: 400; font-size: 36px;  text-align: center; line-height: 90%;}
.threecol2 .col .comm {font-weight: normal; font-size: 15px; color: #909090; line-height: 90%;}
@media screen and (max-width:620px) { /* Mobile Portrait View */
	.threecol2 .col {font-size: 28px;}	
	.threecol2 .col .comm {font-size: 14px; line-height: 60%}	
}
@media screen and (max-width:767px) { /* Mobile Portrait View */
	.fourcol {flex-direction: column; margin-bottom: 10px;}
	.fourcol .col {width: 100%}	
}


/* Общий архив */
.archive-list { margin-top: 40px; }
.archive-row {display: flex;gap: 40px;margin-bottom: 40px;align-items: stretch;}
.archive-image, .archive-content { width: 50%; flex: 1; }
.archive-image img { width: 100%; height: auto; display: block; }
.archive-content {display: flex;flex-direction: column;justify-content: space-between;}
.archive-title { color: var(--gray) !important; font-size: 30px; font-weight: normal; margin-top: -15px; }
.archive-title a {color: inherit !important}
.archive-excerpt { font-size: 20px; line-height: 1.5; text-align: justify; }
.archive-action { text-align: right; margin-top: auto; }
@media (min-width: 769px) {
	.archive-row:nth-child(even) { flex-direction: row-reverse; }
	.archive-row:nth-child(even) .archive-action { text-align: left; }
}
@media (max-width: 768px) {
	.archive-title {margin-top: 0}
	.archive-row { flex-direction: column; gap: 20px; }
	.archive-image, .archive-content { width: 100%; }
	.archive-action { text-align: right; }
}

/* Видео архив: базовая структура */
.video-archive .archive-row { 
	display: flex; gap: 40px; margin-bottom: 50px; 
	flex-direction: row !important; 
}
.video-archive .archive-image, 
.video-archive .archive-content { width: 50%; flex-basis: 50%; }

/* Видео контейнер 16:9 */
.video-frame-container { 
	position: relative; padding-bottom: 56.25%; height: 0; 
	overflow: hidden; background: #000; border-radius: 4px; 
}
.video-frame-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }

.video-date { font-size: 18px; color: var(--gray); margin: 5px 0 15px; }
.video-archive .archive-action { text-align: right !important; margin-top: auto}

/* ИСПРАВЛЕНИЕ ДЛЯ МОБИЛЬНЫХ */
@media (max-width: 768px) {
	.video-archive .archive-row { 
		flex-direction: column !important; /* Строго в одну колонку */
		gap: 20px; 
	}
	.video-archive .archive-image, 
	.video-archive .archive-content { 
		width: 100% !important; /* На всю ширину экрана */
		flex-basis: 100% !important; 
	}
	.video-frame-container { 
		padding-bottom: 56.25%; /* Сохраняем пропорции видео */
	}
}
/* Партнеры */
.uzd-partners-grid {
	margin-top: 40px;
	display: flex;
	flex-direction: column;
	gap: 25px; /* Увеличил расстояние между строками */
}

.uzd-partner-row {
	display: flex;
	align-items: center; 
	gap: 40px; /* Расстояние между лого и текстом */
}

.partner-logo-box {
	width: 100px;  /* Размер увеличен в 2 раза */
	height: 100px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;

}

.partner-logo-box img {
	width: 100% !important;
	max-height: 100%;
	display: block;
	object-fit: contain;
}

.partner-title {
	margin: 0;
	font-size: 20px; /* Размер текста 20px */
	line-height: 1.3;
	font-weight: normal
}

.partner-title a {
	text-decoration: none;
	color: inherit; 
}

.partner-title a:hover {
	text-decoration: underline;
}

.partner-placeholder {
	width: 100%;
	height: 100%;
	background: #f0f0f0;
}

/* Адаптив для мобилок */
@media (max-width: 480px) {
	.partner-title { font-size: 18px; }
}

/* --- Стили шаблона Экспонатов --- */
.exhibit-container {margin: 0 auto;}
.exhibit-top-section { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; margin-bottom: 20px; }
.exhibit-thumbnail img { width: 100%; height: auto;}
.exhibit-thumbnail-description {margin-top: 2px; font-size: 15px; color: var(--gray); font-style: italic;}

/* Характеристики */
.exhibit-specs {}
.exhibit-specs table { width: 100%; border-collapse: collapse; margin-top: -15px }
.exhibit-specs tr { border-bottom: 1px solid var(--light-gray) }
.exhibit-specs tr:last-child { border-bottom: none; }
.spec-label, .spec-value { padding: 9px 0; font-size: 15px}
.spec-label { color: var(--black); }
.spec-value { color: var(--gray); }

/* Блок для администраторов */
.exhibit-admin-tech-info {font-size: 15px; font-weight: normal; background: var(--lighter-gray); border: 1px solid var(--gray); padding: 10px 15px; margin-bottom: 10px; }
.admin-badge { font-weight: bold; margin-bottom: 10px; display: none; }
.admin-grid { display: flex; justify-content: space-around; }
.status-tag { padding: 4px 10px; font-size: 15px; font-weight: bold; }

/* Контент и Галерея */
.exhibit-gallery .bwg_container .search_line {display: none !important}


/* Контакты */

.contacts-grid { display: flex; flex-direction: column; gap: 25px; margin: 20px 0; }
.contact-item { display: flex; align-items: flex-start; gap: 70px; }
.contact-photo { flex: 0 0 230px; }
.contact-photo img { width: 230px; height: 300px; object-fit: cover; display: block; }
.contact-info { flex: 1; }
.contact-name { margin: -10px 0 10px; font-size: 30px;}

.contact-excerpt { font-size: 20px; line-height: 1.6; text-align: left }
.contact-excerpt p { text-align: left !important}
.contact-excerpt p:first-child { margin-top: 0; }

@media (max-width: 767px) {
	.contact-item {
		flex-direction: column; /* Складываем элементы вертикально */
		gap: 20px; /* Уменьшаем отступ между фото и текстом */
	}

	.contact-photo {
		flex: 0 0 auto;
		width: 100%; /* Фото занимает всю ширину контейнера */
	}

	.contact-photo img {
		width: 100%; /* Картинка растягивается по ширине */
		height: auto; /* Высота подстраивается пропорционально */
		max-width: 300px; /* Опционально: ограничиваем макс. ширину, чтобы фото не было гигантским */
		margin: 0 auto; /* Центрируем фото, если оно меньше ширины экрана */
	}

	.contact-name {
		text-align: center; /* Опционально: центрируем имя на мобильных */
		font-size: 24px; /* Немного уменьшаем шрифт для мобильных */
		margin-top: 0;
	}

	.contact-excerpt {
		font-size: 18px; /* Уменьшаем размер текста для удобства чтения */
	}
}




/* СЕТКА EXHIBIT */
.exhibits-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-top: 30px; }

/* КАРТОЧКА EXHIBIT */
.exhibit-card { display: flex; flex-direction: column; overflow: hidden; height: 100%; }
.exhibit-card-image img { width: 100%; height: 250px; object-fit: cover; display: block; }
.exhibit-card-content { display: flex; flex-direction: column; padding: 20px 0; flex-grow: 1;}
.exhibit-card-title { font-size: 24px; margin: 0 0 10px 0; color: var(--gray); font-weight: normal }
.exhibit-card-title a {color: inherit}
.exhibit-card-excerpt { font-size: 20px; color: var(--black); margin-bottom: 20px; flex-grow: 1; }

/* 📱 АДАПТИВНОСТЬ */
@media (max-width: 1024px) {
	.exhibits-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}
@media (max-width: 600px) {
	.exhibits-grid { grid-template-columns: 1fr; }
}


/* Как добраться */

.htg-section1, .htg-section2 {width: 100%; display: flex; justify-content: space-between; flex-direction: row; margin-bottom: 30px;}
.htg-section1 .transport {width: 55%;}
.htg-section1 .transport .item {margin-bottom:20px; }
.htg-section1 .transport .item .caption {font-size: 24px; font-weight: bold}
.htg-section1 .transport .item .icon {font-size: 36px; margin-right: 64px;}
.htg-section1 .transport .item .text {font-size:20px; margin-left: 100px;}
.htg-section1 .map {width: 44%;}
.htg-section2 .caption {width:30%; font-weight: bold;font-size: 24px; padding-right: 20px}
.htg-section2 .text {width: 70%; font-size: 20px; }
.htg-text {	margin-left: 30%;font-size: 20px; margin-bottom: 35px;}
@media screen and (max-width:767px) { /* Mobile Portrait View */
	.htg-section1 .transport .item .text , .htg-section2 .text, .htg-text  {font-size: 18px; }
	.htg-section1 {flex-direction: column-reverse;}	
	.htg-section1 .transport .item .icon {font-size: 24px; margin-right: 36px;}
	.htg-section1 .transport .item .text {margin-left: 64px;}
	.htg-section2 {flex-direction: column;}	
	.htg-section1 .transport, .htg-section1 .map {width: 100%;}
	.htg-text {margin-left:0; }
}
@media screen and (max-width:900px) { 
	.htg-section2 .text, .htg-text  {font-size: 18px; }
	.htg-section2 {flex-direction: column;}	
	.htg-section2 .caption, .htg-section2 .text {width: 100%;}
}



/* ===========Photo Gallery plugin ======*/

#embedgallery .bwg_tags_container_0, #embedgallery .search_line {display: none;}
.bwg_image_title, .bwg_image_title * {font-family: Montserrat !important; font-size: 16px !important;}
.bwg_image_description, .bwg_image_description * {font-family: Inter !important; font-size: 14px !important; font-weight: normal !important;}
.bwg_image_info {margin: 40px !important;}
.bwg_image_info_spun {text-align: center !important; vertical-align: bottom !important;}
.bwg_prev_btn:hover, .bwg_next_btn:hover, .bwg_close_btn:hover {color: var(--dark-yellow) !important;}
.spider_popup_close_fullscreen {font-size: 20px !important;	margin: 20px !important;}
.bwg_tag_button_view_container button {font-family: Inter, sans-serif !important; font-size: 16px !important;}
.bwg_tag_button_view_container button.active {padding: 10px !important; background-color: var(--yellow) !important; color: var(--black) !important;}