/*!
Theme Name: denver
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: denver
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

*/

.redaktor ul {
	list-style: none;
	padding: 0;
}
.redaktor ul li {
	position: relative;
	padding: 0 0 0 30px;
}
.redaktor ul li:before {
	position: absolute;
	content: '';
	height: 4px;
	width: 4px;
	left: 10px;
	top: 10px;
	background: var(--dark_blue);
	border-radius: 50%;
}
.redaktor *:last-child {
	margin-bottom: 0;
}

ul.big_dots_blue {
	list-style: none;
	padding: 0;
}
ul.big_dots_blue li {
	position: relative;
	padding-left: 24px;
}
ul.big_dots_blue li + li {
	margin-top: 12px;
}
ul.big_dots_blue li:before {
	display: block;
	content: '';
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--blue);
	position: absolute;
	left: 0;
	top: 3px;
}



.small_scroll::-webkit-scrollbar {
	width: 6px;               /* ширина scrollbar */
}
.small_scroll::-webkit-scrollbar-track {
	background: var(--blue);        /* цвет дорожки */
	border-radius: 10px;
}
.small_scroll::-webkit-scrollbar-thumb {
	background: var(--dark_blue);    /* цвет плашки */
	border-radius: 10px;
	border: 0 none;  /* padding вокруг плашки */
}

.hover_scale105, .hover_scale110, .hover_scale115, .hover_scale120	{
	transition: 0.2s;
}
.hover_scale105:hover {
	transform: scale(1.05);
}
.hover_scale110:hover {
	transform: scale(1.1);
}
.hover_scale115:hover {
	transform: scale(1.15);
}
.hover_scale120:hover {
	transform: scale(1.2);
}


#overlay_send_form {
	position: fixed;
	z-index: 999999;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	transition: all 0.3s;
}
#overlay_send_form.visible {
	opacity: 1;
	backdrop-filter: blur(5px);
}
#overlay_send_form:before{
	display: block;
	content: '';
	width: 64px;
	height: 64px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background: url('assets/images/loading51.gif') no-repeat center/cover;
}
.grecaptcha-badge {
	display: none;
}

@-webkit-keyframes empty {

	0% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	10% {
		-webkit-transform: translateX(8px);
		transform: translateX(8px);
	}

	20% {
		-webkit-transform: translateX(-8px);
		transform: translateX(-8px);
	}

	30% {
		-webkit-transform: translateX(6px);
		transform: translateX(6px);
	}

	40% {
		-webkit-transform: translateX(-6px);
		transform: translateX(-6px);
	}

	50% {
		-webkit-transform: translateX(4px);
		transform: translateX(4px);
	}

	60% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	100% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}

@keyframes empty {

	0% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	10% {
		-webkit-transform: translateX(8px);
		transform: translateX(8px);
	}

	20% {
		-webkit-transform: translateX(-8px);
		transform: translateX(-8px);
	}

	30% {
		-webkit-transform: translateX(6px);
		transform: translateX(6px);
	}

	40% {
		-webkit-transform: translateX(-6px);
		transform: translateX(-6px);
	}

	50% {
		-webkit-transform: translateX(4px);
		transform: translateX(4px);
	}

	60% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	100% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}



@keyframes rotate360 {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}

#mobile_menu_container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 20;
	background: var(--dark_blue);
	padding: 16px;
	transform: translateY(-100%);
	transition: 0.3s all;
	max-height: 100%;
    overflow: auto;
	color: var(--white);
}
@media (min-width: 991.98px) {
	body:has( #wpadminbar) #mobile_menu_container {
		top: 32px;
	}
}
body.mobile_menu_opened #mobile_menu_container {
	transform: translateY(0);
}
#mobile_menu_container .logo img {
	height: 80px;
	display: block;
	margin: 0 auto;
}
#mobile_menu_container .social_block img {
	height: 24px;
	width: 24px;
	display: block;
}
#mobile_menu_container form {
	position: relative;
}
#mobile_menu_container a[href^="tel:"] {
	color: inherit;
	text-decoration: none;
}
#mobile_menu {
	border-bottom: 1px solid #2D2E2E;
}
#mobile_menu > li {
	display: flex;
	padding: 24px 0;
	border-top: 1px solid #DDDFE0;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0 10px;
	align-items: center;
}
#mobile_menu  li .toggler svg path {
	fill: var(--white);
}
#mobile_menu li a {
	color: inherit;
	font-weight: 500;
	text-decoration: none;
}
#mobile_menu li li li a {
	font-weight: 400;
}
#mobile_menu > li ul {
	width: 100%;
	display: none;
}
#mobile_menu > li ul ul {
	padding: 0 0 0 20px;
}
#mobile_menu li.opened > ul {
	display: block;
}
#mobile_menu > li.opened > ul li {
	position: relative;
	padding: 0;
}
#mobile_menu > li.opened > ul li.menu-item-has-children {
	padding-right:34px;
}
#mobile_menu .toggler svg {
	transition: 0.3s transform;
	transform: rotate(90deg);
}
#mobile_menu li.opened > .toggler svg {
	transform: rotate(90deg) scaleX(-1);
}
#mobile_menu > li.opened > ul li .toggler {
	position: absolute;
	top: 0;
	right: 0;
}


footer {
	background: var(--dark_blue);
	color: var(--white);
	padding: 30px 0;
}
footer .block_logo .contacts {
	margin: 30px 0 18px;
}
footer .footer_menu {
	text-align: right;
}
footer .footer_menu > ul > li > a {
	font-weight: 600;
}
footer .footer_menu .sub-menu {
	margin: 12px 0 0;
	list-style: none;
	padding: 0;
}
footer .footer_menu .sub-menu li + li {
	margin: 6px 0 0;
}

footer a {
	color: #fff;
	text-decoration: none;
}
footer a svg path {
	transition: 0.3s;
}
footer a:hover {
	color: var(--yellow);
}
footer a:hover svg path {
	fill: var(--yellow);
}
footer .grid.col6 {
	grid-template-columns: 1fr 1fr 2fr 1fr;
}
footer .label {
	color: var(--yellow);
}
footer .socials img {
	width: 24px;
	height: 24px;
}
footer .socials a:hover svg path {
	fill: var(--light2_blue);
}
footer .row2 {
	margin: 30px 0 0;
	padding: 30px 0 0;
	border-top: 1px solid var(--blue);
}

#totop {
	position: fixed;
	left: 40px;
	bottom: 40px;
	z-index: 10;
	background: var(--blue);
	color: #fff;
	font-size: 12px;
	padding: 10px;
	height: 60px;
	width: 60px;
	border-radius: 50%;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
	cursor: pointer;
}
#totop svg {
	width: 20px;
	height: 20px;
	display: block;
}
#totop svg path {
	fill: #fff;
}


@-webkit-keyframes pulse {
	0% {
		-webkit-box-shadow: 0 0 0 0 #4C82E080;
	}
	70% {
			-webkit-box-shadow: 0 0 0 40px #4C82E000;
	}
	100% {
			-webkit-box-shadow: 0 0 0 0 #4C82E000;
	}
}
@keyframes pulse {
	0% {
		-moz-box-shadow: 0 0 0 0 #4C82E080;
		box-shadow: 0 0 0 0 #4C82E080;
	}
	70% {
			-moz-box-shadow: 0 0 0 40px #4C82E000;
			box-shadow: 0 0 0 40px #4C82E000;
	}
	100% {
			-moz-box-shadow: 0 0 0 0 #4C82E000;
			box-shadow: 0 0 0 0 #4C82E000;
	}
}


@media (min-width: 991.98px) {
	#mobile_menu_container {
		display: none;
	}
}


@media (max-width: 991.98px) {
	
}

@media (max-width: 767px) {
	footer .block_logo {
		text-align: center;
		gap: 20px;
	}
	footer .block_logo .socials {
		justify-content: center;
	}
	
}



@media (max-width: 576px) {
	
	footer {
		font-size: 14px;
	}
	#totop {
		left: 20px;
		bottom: 20px;
	}
}


@media (max-width: 450px) {
	
	footer .ccenter > .row1 {
		display: grid;
	}
	footer .block_logo.flex {
		align-items: center;
	}
	footer .block_logo .contacts {
		margin: 0;
	}
	
	footer .row1_right.flex {
		gap: 16px;
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
	footer .footer_menu.footer_menu2 {
		text-align: left;
	}
}


