/**
 * Внутренние страницы (body.page-y, не главная): legacy section.pages.type1.
 * Не затрагивает .home, .site-header, .site-footer.
 *
 * Широкий экран (≥1500): левое меню | контент | форма справа.
 * Планшет (1200–1499): левое меню + форма внизу слева | контент, правый сайдбар скрыт.
 * Узкий (<1200): только контент, оба сайдбара скрыты.
 */

body.page-y:not(.home) .post-header-band + section.pages .left-cols,
body.page-y:not(.home) header.black + section.pages .left-cols {
	margin: 0 0 0 auto;
}

body.page-y:not(.home) .post-header-band + section.pages .right-cols,
body.page-y:not(.home) header.black + section.pages .right-cols {
	margin: 0 auto 0 0;
}

body.page-y:not(.home) section.pages .page-wrapper > .right-cols {
	display: none;
}

body.page-y:not(.home) section.pages {
	box-sizing: border-box;
	max-width: 100%;
	overflow: visible;
}

body.page-y:not(.home) section.pages .left-cols,
body.page-y:not(.home) section.pages .right-cols {
	padding-top: 50px;
}

/* ——— Широкий десктоп: три колонки ——— */
@media (min-width: 1500px) {
	body.page-y:not(.home) section.pages.internal-layout--wide,
	body.page-y:not(.home) section.pages:not(.internal-layout--tablet):not(.internal-layout--narrow) {
		display: flex;
		align-items: stretch;
		justify-content: space-between;
		gap: 0;
		padding: 0 40px 48px;
	}

	body.page-y:not(.home) section.pages.internal-layout--wide .left-cols,
	body.page-y:not(.home) section.pages.internal-layout--wide .right-cols {
		display: flex;
		flex: 0 0 auto;
		flex-direction: column;
		width: 100%;
		max-width: 300px;
		margin-top: 0;
		margin-bottom: 0;
		align-self: stretch;
	}

	body.page-y:not(.home) section.pages.internal-layout--wide .right-cols {
		min-width: 251px;
	}

	body.page-y:not(.home) section.pages.internal-layout--wide .wrapper {
		flex: 1 1 auto;
		min-width: 0;
		width: auto;
		max-width: 1138px;
		margin: 0 40px;
	}

	body.page-y:not(.home) section.pages.internal-layout--wide .left-cols .menu-left,
	body.page-y:not(.home) section.pages.internal-layout--wide .right-cols > .helps-form {
		position: sticky;
		top: 20px;
		z-index: 2;
		transform: none !important;
	}

	body.page-y:not(.home) section.pages.internal-layout--wide .page-wrapper {
		margin-top: 40px;
	}
}

/* ——— Планшет: форма в левой колонке, правая скрыта ——— */
@media (min-width: 1200px) and (max-width: 1499px) {
	body.page-y:not(.home) section.pages.internal-layout--tablet {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 0;
		padding: 0 20px 40px;
	}

	body.page-y:not(.home) section.pages.internal-layout--tablet > .right-cols {
		display: none !important;
	}

	body.page-y:not(.home) section.pages.internal-layout--tablet .left-cols {
		display: flex;
		flex: 0 0 280px;
		flex-direction: column;
		width: 280px;
		max-width: 280px;
		margin: 0 20px 0 0;
		position: sticky;
		top: 20px;
		align-self: flex-start;
		z-index: 3;
		max-height: calc(100vh - 40px);
		overflow-x: hidden;
		overflow-y: hidden;
	}

	body.page-y:not(.home) section.pages.internal-layout--tablet .left-cols > .helps-form {
		position: relative;
		z-index: 1;
		margin-top: 32px;
		flex-shrink: 0;
		transform: none !important;
	}

	body.page-y:not(.home) section.pages.internal-layout--tablet .left-cols .menu-left {
		position: relative;
		z-index: 2;
		flex-shrink: 0;
		transform: none !important;
	}

	body.page-y:not(.home) section.pages.internal-layout--tablet .wrapper {
		flex: 1 1 auto;
		min-width: 0;
		width: auto;
		max-width: none;
		margin: 0;
	}

	body.page-y:not(.home) section.pages.internal-layout--tablet .page-wrapper {
		margin-top: 40px;
		padding: 48px 32px;
	}
}

/* Fallback до срабатывания JS-классов на первом кадре */
@media (min-width: 1200px) {
	body.page-y:not(.home) section.pages:not(.internal-layout--narrow) {
		display: flex;
		align-items: stretch;
		justify-content: space-between;
		padding: 0 40px 48px;
	}

	body.page-y:not(.home) section.pages:not(.internal-layout--narrow) .wrapper {
		flex: 1 1 auto;
		min-width: 0;
		margin: 0 40px;
	}
}

/* ——— Узкий экран: только контент ——— */
@media (max-width: 1199px) {
	body.page-y:not(.home) section.pages.internal-layout--narrow > .left-cols,
	body.page-y:not(.home) section.pages.internal-layout--narrow > .right-cols {
		display: none !important;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow {
		display: block;
		padding: 0 24px 40px;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .wrapper {
		width: 100%;
		max-width: none;
		margin: 0;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .page-wrapper {
		margin-top: 0;
		padding: 40px 28px;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .left-cols .menu-left,
	body.page-y:not(.home) section.pages.internal-layout--narrow .helps-form {
		position: static;
		transform: none !important;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .page .page-wrapper section.need-help .wrapper {
		flex-direction: column;
		gap: 20px;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .page .page-wrapper section.need-help .right-col {
		width: 100%;
	}
}

@media (max-width: 767px) {
	body.page-y:not(.home) section.pages.internal-layout--narrow {
		padding: 0 12px 32px;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .page-wrapper {
		padding: 28px 16px;
	}

	body.page-y:not(.home) nav.menu-left > ul > li > a {
		min-height: 44px;
		padding: 12px 16px;
		font-size: 15px;
	}

	body.page-y:not(.home) .helps-form {
		padding: 20px 16px;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .page .page-wrapper section.need-help {
		padding: 0;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .page .page-wrapper section.need-help .wrapper {
		padding: 24px 20px;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .page .page-wrapper section.need-help .title {
		font-size: 22px;
		line-height: 1.2;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .page .page-wrapper .blocks-icons,
	body.page-y:not(.home) section.pages.internal-layout--narrow .page .page-wrapper .columns {
		margin-left: 0;
		margin-right: 0;
	}

	body.page-y:not(.home) section.pages.internal-layout--narrow .page .page-wrapper table {
		display: block;
		width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

body.page-y:not(.home) section.pages .page .page-wrapper section.need-help {
	margin-bottom: 0;
}

body.page-y:not(.home) .site-footer {
	position: relative;
	z-index: 5;
}
