/* Адаптив: мобильные и узкие окна (подключается последним) */
@media screen and (max-width: 900px) {

	html {
		overflow-x: clip;
	}

	body {
		overflow-x: clip;
	}

	/* Каркас страницы — на всю ширину экрана */
	#imPage {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	#imHeaderBg,
	#imFooterBg {
		width: 100% !important;
	}

	#imHeader {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 120px;
		margin-bottom: 0 !important;
		background-size: 100% auto !important;
		background-position: top center !important;
		background-repeat: no-repeat !important;
	}

	/* Декоративная полоса контента — отключаем на узком экране */
	#imContentGraphics {
		display: none !important;
	}

	/* Меню в потоке под шапкой, текстовые пункты */
	#imMnMn {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		box-sizing: border-box !important;
		padding: 0 !important;
		margin: 0 !important;
		background-image: none !important;
		background-color: #dce4ef !important;
		border-bottom: 2px solid #0f2d5c;
		text-align: left !important;
		z-index: 10000;
	}

	#imMnMn > ul {
		display: flex !important;
		flex-direction: column !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	#imMnMn > ul > li {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		border-bottom: 1px solid rgba(15, 45, 92, 0.15);
	}

	#imMnMn > ul > li:last-child {
		border-bottom: none;
	}

	#imMnMnNode0,
	#imMnMnNode3,
	#imMnMnNode4,
	#imMnMnNode6,
	#imMnMnNode7,
	#imMnMnNode8 {
		background-image: none !important;
		background: transparent !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
	}

	#imMnMn .imMnMnFirstBg {
		background-image: none !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
	}

	#imMnMn a {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		box-sizing: border-box !important;
		padding: 14px 18px !important;
		font: bold 15px/1.3 Tahoma, Arial, sans-serif !important;
		color: #0f2d5c !important;
		text-decoration: none !important;
	}

	#imMnMn a:active {
		background-color: rgba(15, 45, 92, 0.08);
	}

	#imMnMn .imMnMnTxt {
		display: block !important;
		white-space: normal !important;
	}

	#imMnMn .imMnMnImg {
		display: none !important;
	}

	#imMnMn > ul > li.imMnMnCurrent a,
	#imMnMn > ul > li.imMnMnCurrent .imMnMnFirstBg {
		background-color: rgba(15, 45, 92, 0.12) !important;
	}

	#imMnMn > ul > li.imMnMnCurrent a {
		font-weight: bold !important;
	}

	#imMnMnNode0:hover,
	#imMnMnNode3:hover,
	#imMnMnNode4:hover,
	#imMnMnNode6:hover,
	#imMnMnNode7:hover,
	#imMnMnNode8:hover {
		background: transparent !important;
	}

	#imMnMnNode0:hover .imMnMnFirstBg,
	#imMnMnNode3:hover .imMnMnFirstBg,
	#imMnMnNode4:hover .imMnMnFirstBg,
	#imMnMnNode6:hover .imMnMnFirstBg,
	#imMnMnNode7:hover .imMnMnFirstBg,
	#imMnMnNode8:hover .imMnMnFirstBg {
		background-image: none !important;
	}

	/* Контент */
	#imContent {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		padding-left: 10px !important;
		padding-right: 10px !important;
		min-height: 0 !important;
	}

	/* Колонки с inline float/width */
	#imContent div[style*="float: left"] {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	#imContent div[style*="float: right"] {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		text-align: left !important;
		box-sizing: border-box !important;
	}

	#imFooPad {
		display: none !important;
		height: 0 !important;
		min-height: 0 !important;
		float: none !important;
		width: 0 !important;
		overflow: hidden !important;
	}

	/* Заголовок страницы */
	#imContent h2#imPgTitle,
	#imPgTitle {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		box-sizing: border-box !important;
		clear: both !important;
	}

	/* Карта сайта: сначала заголовок, потом панель ссылок */
	#imContent #imPgTitle.imTitleMargin {
		width: 100% !important;
		margin-bottom: 12px !important;
	}

	/* Ячейки и внутренние блоки X5 (перебиваем фиксированные ширины из pcss/*.css) */
	#imContent [id^="imCell_"] {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	#imContent [id^="imCellStyle_"] {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	/* Декоративный слой X5 (прозрачный фон) — не должен участвовать в потоке и резервировать место */
	#imContent [id^="imCellStyleGraphics_"] {
		display: none !important;
		width: 0 !important;
		height: 0 !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		position: absolute !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	/* Карта сайта: панель под заголовком */
	.imSiteMapToolbar {
		box-sizing: border-box !important;
	}

	/* Галерея главной */
	#imObjectGallery_1 {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 200px !important;
		box-sizing: border-box !important;
	}

	#imContent #imObjectGallery_1 img,
	#imContent #imObjectGallery_1 canvas {
		max-width: 100% !important;
		height: auto !important;
	}

	/* PayPal / Яндекс iframe */
	#imContent .imHTMLObject {
		max-width: 100% !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch;
		box-sizing: border-box !important;
	}

	#imContent .imHTMLObject iframe {
		max-width: 100% !important;
	}

	/* Подвал */
	#imFooter {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 52px;
		padding: 8px 10px 10px !important;
		background-size: 100% auto !important;
		background-position: bottom center !important;
		box-sizing: border-box !important;
	}

	.imFooterCopyright {
		font-size: 11px !important;
		line-height: 1.35 !important;
		padding-left: 8px !important;
		padding-right: 8px !important;
	}

	/* Типографика контента чуть компактнее на телефоне */
	#imContent,
	#imContent [id^="imTextObject_"],
	#imContent [id^="imTextObject_"] p,
	#imContent [id^="imTextObject_"] li {
		font-size: 15px !important;
		line-height: 23px !important;
	}

	#imContent [id^="imTextObject_"] [class*="fs"],
	#imContent [id^="imTextObject_"] [class*="cf"] {
		font-size: 15px !important;
		line-height: 23px !important;
	}

	#imContent h2#imPgTitle {
		font-size: 17px !important;
		line-height: 1.35 !important;
	}

	/* Об авторе — портрет */
	.about-author-photo {
		width: 168px !important;
		height: 168px !important;
	}

	.about-author-photo-wrap {
		padding: 8px !important;
	}

	/*
	 * Donate (только donate-page — id ячеек совпадают с другими HTML):
	 * убрать «воздух» от padding-bottom 349px / min-height в pcss/donate.css,
	 * скрыть пустые колонки imCell_4 / imCell_5.
	 */
	body[data-testid="donate-page"] #imContent #imCell_1 {
		min-height: 0 !important;
		height: auto !important;
	}

	body[data-testid="donate-page"] #imContent #imCellStyle_1 {
		min-height: 0 !important;
		height: auto !important;
		padding: 8px 4px 12px !important;
	}

	body[data-testid="donate-page"] #imContent #imCell_4,
	body[data-testid="donate-page"] #imContent #imCell_5 {
		display: none !important;
		height: 0 !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
	}

	/* PayPal-колонки: без лишней min-height ячейки сетки */
	body[data-testid="donate-page"] #imContent #imCell_3,
	body[data-testid="donate-page"] #imContent #imCell_6 {
		min-height: 0 !important;
	}

	body[data-testid="donate-page"] #imContent #imCellStyle_3,
	body[data-testid="donate-page"] #imContent #imCellStyle_6 {
		min-height: 0 !important;
		padding: 8px 4px !important;
	}

	/*
	 * Главная (pcss/index.css): у ячейки с галереей min-height 781px и padding-bottom 553px
	 * у imCellStyle_1 — на мобиле это огромный «воздух» под галереей.
	 */
	body[data-testid="home-page"] #imContent #imCell_1,
	body[data-testid="home-page"] #imContent #imCell_2 {
		min-height: 0 !important;
		height: auto !important;
	}

	body[data-testid="home-page"] #imContent #imCellStyle_1 {
		min-height: 0 !important;
		height: auto !important;
		padding: 8px 4px 12px !important;
	}

	body[data-testid="home-page"] #imContent #imCellStyle_2 {
		min-height: 0 !important;
		height: auto !important;
	}

	body[data-testid="home-page"] #imContent #imCell_3,
	body[data-testid="home-page"] #imContent #imCellStyle_3 {
		min-height: 0 !important;
	}

	/* Десктопный спейсер под второй колонкой */
	body[data-testid="home-page"] #imContent div[style*="height: 114px"] {
		display: none !important;
		height: 0 !important;
		min-height: 0 !important;
		overflow: hidden !important;
	}

	body[data-testid="home-page"] #imContent #imObjectGallery_1 {
		min-height: 0 !important;
	}
}

/* Планшеты: чуть шире брейкпоинт при желании дублировать — основной блок выше */
