/**
 * Общая ширина контентной колонки: 1520px.
 * Мобильные боковые отступы — --sahalin-gutter (0.6rem).
 */

/* Страница не листается по горизонтали; внутренние карусели с overflow-x: auto — можно */
html {
	overflow-x: hidden;
	overflow-x: clip;
	max-width: 100%;
}

body {
	overflow-x: hidden;
	overflow-x: clip;
	width: 100%;
	max-width: 100%;
	position: relative;
}

@media (max-width: 767px) {
	html,
	body {
		overscroll-behavior-x: none;
	}

	body {
		touch-action: pan-y pinch-zoom;
	}

	/* Карусели с отрицательным margin не раздувают ширину документа */
	#primary,
	main,
	.sm-hero-wrap,
	.sm-hero-trust-wrap,
	.sm-hits,
	.sm-hits__main,
	.sm-cat-rows,
	.sm-cat-row,
	.sm-cat-row__main,
	.sm-popcat,
	.sm-popcat__inner,
	.sahalin-header-main,
	.sahalin-header-inner {
		max-width: 100%;
		overflow-x: clip;
	}

	.sm-hits__track,
	.sm-cat-row__track.sm-hits__track,
	.sm-hero-trust,
	.sahalin-header-quickcats-wrap {
		overscroll-behavior-x: contain;
	}
}

:root {
	--sahalin-gutter: 0;
}

@media (max-width: 767px) {
	:root {
		--sahalin-gutter: 0.6rem;
	}
}

.sahalin-content {
	width: 100%;
	max-width: 1520px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
	box-sizing: border-box;
}

@media (max-width: 767px) {
	.sahalin-content {
		padding-left: max(var(--sahalin-gutter), env(safe-area-inset-left, 0px));
		padding-right: max(var(--sahalin-gutter), env(safe-area-inset-right, 0px));
	}
}
