/* Современный фон (подключается после остальных стилей шаблона) */
body {
	background-color: #0b0d12;
	background-image:
		radial-gradient(70rem 50rem at 0% 0%, rgba(121,193,66,0.10), transparent 60%),
		radial-gradient(70rem 50rem at 100% 15%, rgba(72,107,237,0.12), transparent 60%),
		radial-gradient(60rem 50rem at 50% 100%, rgba(140,70,220,0.10), transparent 65%);
	background-attachment: fixed;
}
/* лёгкое «зерно» */
body::before {
	content: ''; position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: 0.04;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* шапка-картинка: плавно растворяется во все стороны, без резких краёв */
.wrapper::before {
	height: 560px; filter: saturate(0.9) brightness(0.55) contrast(1.05);
	background-size: 1400px auto; background-position: center top;
	-webkit-mask-image: radial-gradient(ellipse 700px 420px at 50% 0%, #000 30%, rgba(0,0,0,0.5) 65%, transparent 100%);
	        mask-image: radial-gradient(ellipse 700px 420px at 50% 0%, #000 30%, rgba(0,0,0,0.5) 65%, transparent 100%);
}
.wrapper::after { display: none; }

/* основной контейнер */
.wrapper__container--main {
	margin-top: 20px; margin-bottom: 40px;
	border-radius: 16px; overflow: clip;
	box-shadow: 0 40px 100px -30px rgba(0,0,0,0.9), 0 0 0 1px rgba(255,255,255,0.05);
}
@media screen and (max-width: 1220px) {
	.wrapper__container--main { border-radius: 0; margin-top: 0; margin-bottom: 0; }
	.wrapper::before { -webkit-mask-image: linear-gradient(#000 50%, transparent); mask-image: linear-gradient(#000 50%, transparent); }
}
::selection { background: var(--accent); color: #fff; }
