@media screen and (max-width:1200px) {

	.main,
	.container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.site-content .wp-block-columns.bonus-row {
		gap: 30px;
	}
}

@media screen and (max-width:1024px) {
	.wp-block-bonus {
		flex-direction: column;
	}

	.wp-block-bonus .text-bonus {
		align-items: center;
		padding-top: 10px;
	}

	.footer-top {
		gap: 50px;
	}
}

@media screen and (max-width:767px) {
	.main {
		position: relative;
	}

	.main.menu-active:before {
		content: '';
		position: absolute;
		background: rgba(0, 0, 0, .7);
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		z-index: 900;
	}

	header {
		transition: .3s;
	}

	body.fixed-header header {
		z-index: 2000;
	}

	body.fixed-header header .header-bottom {
		display: none;
	}
	
	header .primary_menu {
		display: block;
	}

	header .primary_menu .login-button-row {
		display: none;
	}

	.main .login-button-row {
		display: flex;
	}

	.toggle-menu {
		position: relative;
		display: block;
		width: 40px;
		height: 30px;
	}

	.toggle-menu span {
		position: absolute;
		display: block;
		width: 100%;
		height: 3px;
		border-radius: 3px;
		background: var(--basic-site-color);
		left: 0;
		transition: .3s;
	}

	.toggle-menu span:first-child {
		top: 0;
	}

	.toggle-menu span:nth-child(2) {
		top: 50%;
		margin-top: -1.5px;
	}

	.toggle-menu span:last-child {
		bottom: 0;
	}

	.toggle-menu.active span:first-child {
		transform: translateY(13.5px) rotate(45deg);
	}

	.toggle-menu.active span:nth-child(2) {
		opacity: 0
	}

	.toggle-menu.active span:last-child {
		transform: translateY(-13.5px) rotate(-45deg);
	}

	header .primary_menu {
		position: absolute;
		background: var(--site-fone);
		color: var(--basic-color);
		border-right: 2px solid var(--basic-site-color);
		max-width: 300px;
		width: calc(100vw - 80px);
		height: 100vh;
		overflow-x: hidden;
		overflow-y: auto;
		padding: 60px 30px 30px;
		top: 0;
		left: -301px;
		transition: .3s;
		z-index: 100;
	}

	header .primary_menu.active {
		left: 0;
	}

	header .primary_menu .menu {
		display: block;
	}

	header .primary_menu .menu li {
		margin-bottom: 15px;
	}

	header .primary_menu .menu a {
		font-size: 1.1rem;
	}

	header .primary_menu .menu>li.menu-item-has-children {
		flex-wrap: wrap;
	}

	header .primary_menu .menu>li.menu-item-has-children .sub-menu {
		position: relative;
		width: calc(100% + 60px);
		font-size: 1rem;
		padding: 15px 15px 0 40px;
		background: rgba(255, 255, 255, .3);
		border: 0;
		border-radius: 0;
		top: 0;
		order: 2;
		margin: 10px -30px;
	}

	header .primary_menu .menu>li.menu-item-has-children:hover>.sub-menu {
		visibility: hidden;
		opacity: 0;
	}

	header .primary_menu .menu>li.menu-item-has-children .sub-menu.active {
		visibility: visible;
		opacity: 1;
	}

	header .logo {
		width: var(--header-logo-size);
		max-width: 50%;
	}

	header .header-bottom .container {
		padding-left: 0;
		padding-right: 0;
	}

	.page-navigation {
		padding-left: 20px;
	}

	body.fixed-header .main.top-max {
		padding-top: 90px;
	}
	
	.page-navigation {
		padding-left: 20px;
	}

	body.fixed-header .main.top-max {
		padding-top: 90px;
	}

	#breadcrumbs {
		margin-top: 20px;
	}

	.site-content .wp-block-columns,
	h2 {
		margin-top: 40px;
	}

	.icon-columns {
		margin-top: 30px;
	}

	.icon-column {
		min-width: calc((100% - 30px) / 2);
	}

	.grand-menu-row {
		margin-top: 30px;
		flex-wrap: wrap;
	}

	.grand-menu-item {
		min-width: calc((100% - 15px) / 2);
	}

	.footer-top {
		gap: 30px;
		flex-wrap: wrap;
	}

	.footer-col {
		width: calc((100% - 30px) / 2);
	}

	.mobile-bonus {
		display: flex;
		align-items: center;
		gap: 10px;
	}
}

@media screen and (max-width:480px) {
	h1 {
		font-size: calc(1.375rem + 1.5vw);
	}

	h2 {
		font-size: calc(1.325rem + 0.9vw);
	}

	h3 {
		font-size: calc(1.3rem + 0.6vw)
	}

	h4 {
		font-size: calc(1.275rem + 0.3vw)
	}

	h5 {
		font-size: 1.25rem
	}

	.icon-column,
	.grand-menu-item {
		min-width: 100%;
	}

	.btn-redirect {
		width: 100%;
		margin-top: 30px;
	}

	.wp-block-table {
		overflow-x: auto;
	}

	.accordion .title_block {
		padding: 13px 40px 13px 15px;
	}

	.accordion .info {
		padding: 15px;
	}

	.accordion .title_block:before {
		right: 15px;
	}

	.footer-col {
		width: 100%;
	}

	.footer-logos-police {
		gap: 15px;
	}

	.text-404 h2 {
		font-size: 150px;
	}

	.text-404 a {
		font-size: 20px;
	}
}