/**
 * Кнопка «Наверх».
 */

.sm-scroll-top {
	position: fixed;
	right: 1.25rem;
	bottom: 1.25rem;
	z-index: 45;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: #fff;
	color: #374151;
	box-shadow: 0 4px 16px rgba(15, 23, 42, 0.12);
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	transform: translateY(0.5rem);
	transition:
		opacity 0.22s ease,
		visibility 0.22s ease,
		transform 0.22s ease,
		box-shadow 0.15s ease,
		color 0.15s ease;
}

@media (min-width: 768px) {
	.sm-scroll-top {
		right: 1.5rem;
		bottom: 1.5rem;
		width: 3.25rem;
		height: 3.25rem;
	}
}

.sm-scroll-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.sm-scroll-top:hover,
.sm-scroll-top:focus-visible {
	color: #003459;
	box-shadow: 0 6px 20px rgba(15, 23, 42, 0.16);
	outline: none;
}

.sm-scroll-top:active {
	transform: translateY(1px);
}

.sm-scroll-top.is-visible:active {
	transform: translateY(1px);
}

.sm-scroll-top__icon {
	display: block;
	width: 1.35rem;
	height: 1.35rem;
}

@media (prefers-reduced-motion: reduce) {
	.sm-scroll-top {
		transition: opacity 0.15s ease, visibility 0.15s ease;
	}
}
