/*
Theme Name: Theme
*/

@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@300;400&family=Roboto:wght@300;400;500&display=swap');

html {
	overflow-y:scroll;
}
body {
	font-size:14px;
	font-weight:normal;
	color:#000;
	background:#fff;
	margin:0;
	padding:0;
	font-family:'Roboto', sans-serif;
	font-weight:300;
}
* {
	outline:none;
	box-sizing:border-box;
	-webkit-tap-highlight-color:rgba(0, 0, 0, 0);
	-webkit-transition-duration:0.3s;
	-o-transition-duration:0.3s;
	-moz-transition-duration:0.3s;
	transition-duration:0.3s;
}
a {
	text-decoration:none;
	color:#375983;
}
h1 {
	margin:0 0 30px;
	font-size:30px;
	font-weight:300;
	text-align:center;
}
h2 {
	font-weight:300;
	font-size:25px;
	margin:10px 0;
}
h3 {
	font-weight:normal;
	font-weight:400;
	font-size:20px;
}
textarea,
select, 
input[type="email"],
input[type="text"] {
	font-family:'Neo Sans Pro Regular', sans-serif;
	font-size:15px;
	width:100%;
	margin:10px 0;
	padding:10px;
	border:solid 1px #004080;
	color:#000;
	border-radius:30px;
	box-shadow: 0px 0px 5px #ccc;
	-moz-box-shadow: 0px 0px 5px #ccc;
	-webkit-box-shadow: 0px 0px 5px #ccc;
}
p, li {
	line-height:150%;
}
img {
	max-width:100%;
	height:auto;
}
iframe {
	border:0;
	max-width:100%;
}
b, strong {
	font-weight:500;
}
.clear {
	clear:both;
}
.left {
	text-align:left;
}
.center {
	text-align:center;
}
.right {
	text-align:right;
}
.hidden {
	display:none !important;
}
.overflow {
	max-width:100%;
	overflow-x:auto;
}
.inline {
	display:inline-block;
	vertical-align:middle;
}

.alignleft {
	float:left;
	max-width:45%;
	margin:0 20px 20px 0;
}
.alignright {
	float:right;
	max-width:45%;
	margin:0 0 20px 20px;
}
.aligncenter {
	display:block;
	margin:auto;
}
@media (max-width:500px){
	.alignleft,
	.alignright,
	.aligncenter {
		float:none;
		max-width:100%;
		display:block;
		margin:20px auto;
	}
}

.flex {
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
}
.flex-top {
	align-items:flex-start;
}
.flex-4 > * {
	width:25%;
}
.flex-3 > * {
	width:33%;
}
.flex-2 > * {
	width:49%;
}
@media (min-width:950px){
	.mobile-only {
		display:none !important;
	}
}
@media (max-width:950px){
	.desktop-only {
		display:none !important;
	}
	.flex, 
	.flex- > div {
		margin:0;
	}
	.flex-2 > * {
		width:100%;
	}
	.flex-3 > *,
	.flex-4 > * {
		width:47%;
		padding:10px;
	}
}
@media (max-width:600px){
	.flex-2 > *,
	.flex-3 > *,
	.flex-4 > * {
		width:100%;
	}
}

.button {
	display:inline-block;
	padding:10px 30px;
	text-transform:uppercase;
	font-size:17px;
	font-weight:400;
	text-decoration:none !important;
	background:#fff;
	border-radius:15px;
	cursor:pointer;
}

.modal {
	position:fixed;
	top:0;
	left:0;
	z-index:700;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.8);
	text-align:center;
	display:none;
}
.modal > div {
	position:absolute;
	z-index:9999;
	left:0;
	right:0;
	top:50%;
	transform:translateY(-50%);
	margin:auto;
	width:100%;
	max-width:470px;
	box-sizing:border-box;
}
.modal > div .closebtn {
	position:absolute;
	right:30px;
	top:21px;
	font-size:32px;
	color:#ccc;
	cursor:pointer;
}
.modal > div .closebtn:hover {
	color:#aaa;
}
.modal .form {
	background-color:#fff;
	border-radius:30px;
	text-align:left;
	padding:25px 40px;
	box-shadow: 0px 0px 10px #000;
	-moz-box-shadow: 0px 0px 10px #000;
	-webkit-box-shadow: 0px 0px 10px #000;
}
.modal input {
	width:100%;
	padding:10px 20px;
	margin:10px 0;
	text-align:left;
	font-size:18px;
	border:solid #ccc 1px;
	border-radius:10px;
}
.modal input[type="submit"] {
	width:100%;
	margin-top:20px;
	background:#0f8aeb;
	color:#fff;
}
@media (max-width:400px){
	.modal input[type="submit"] {
		width:100%;
	}
}
.modal h2 {
	text-align:left;
	margin:0 0 10px;
	color:#004080;
}
.modal p {
	line-height:18px;
	margin:5px 0;
}
.modal form {
	margin:20px 0 0;
	text-align:center;
}
.modal .button {
	text-align:center;
}
.modal.zoom > div {
	max-width:90%;
	max-height:90vh;
	overflow:auto;
}
.modal br,
.agree {
	display:none;
}
.error-input {
	border:solid 1px red !important;
}
.modal-lightbox img {
	width:100%;
	height:auto;
}

.wpcf7-response-output {
	text-align:center;
	margin:20px 0;
	color:#375983;
	font-weight:bold;
	display:none;
}
.wpcf7-form .success {
	margin:0 0 20px;
}
.wpcf7-form .success p {
	margin:0 0 20px;
}
.wpcf7-not-valid {
	border-bottom:solid 2px red !important;
}
.wpcf7-not-valid {
	border:solid 2px red !important;
}
.wpcf7-mail-sent-ok {
	font-weight:700;
	margin-top:18px;
}
.wpcf7-not-valid-tip,
.wpcf7-validation-errors,
.screen-reader-response {
	display:none !important;
}

.gototop-btn {
	display:none;
	position:fixed;
	right:50px;
	bottom:50px;
	z-index:1000;
	width:45px;
	height:45px;
	background:#375983;
	color:#fff;
	text-align:center;
	padding:10px;
	font-size:16px;
	border-radius:50%;
	opacity:0.7;
	box-shadow: 0px 0px 10px #ccc;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	cursor:pointer;	
}
.gototop-btn:hover {
	opacity:1;
}
@media (max-width:950px){
	.gototop-btn {
		display:none;
		position:fixed;
		right:30px;
		bottom:80px;
		z-index:1000;
		width:40px;
		height:40px;
		padding:7px 10px 10px;
		font-size:20px;
	}
}

table {
	border-collapse:collapse;
	border:solid 1px #000;
}
table tr td {
	border:solid 1px #000;
	padding:10px;
	min-width:150px;
}
@media (max-width:950px){
	.overflow-wrap {
		overflow:auto;
		max-width:100vw;
	}
}

.gray-block {
	background:#3A495D;
	color:#fff;
}
.blue-block {
	background:#58AAEC;
	color:#fff;
}
.gray-block a,
.blue-block a {
	color:#fff;
}

.wrap {
	width:100%;
	max-width:1200px;
	margin:auto;
	box-shadow: 0px 0px 40px #999;
	-moz-box-shadow: 0px 0px 40px #999;
	-webkit-box-shadow: 0px 0px 40px #999;
}
.container {
	width:100%;
}

header .top-line {
	background:#0f8aeb;
	color:#fff;
	text-align:center;
	padding:10px;
}
header .header {
	background-image:url(images/home_slideshow_header_1.jpg);
	background-size:cover;
	background-position:center;
	height:250px;
	padding:10px;
	position:relative;
}
header .mobile-contacts {
	padding:10px 5px;
	font-size:14px;
	line-height:22px;
}
header .mobile-contacts img {
	-webkit-filter:invert(100%);
	filter:invert(100%);
	height:17px;
	margin-right:10px;
}
header .mobile-callback {
	padding:10px;
}
header .mobile-callback .button {
	background:#0f8aeb !important;
	color:#ffffff;
	border:1px solid #0f8aeb;
	box-shadow:inset 0 -1px 0 1px rgb(0 0 0 / 20%), inset 0 -10px 20px rgb(0 0 0 / 20%);
}
header .header .contacts {
	position:absolute;
	bottom:20px;
	left:30px;
	align-items:flex-end;
}
header .header .contacts,
header .header .contacts a {
	color:#FFFF00;
	font-weight:500;
	font-size:31px;
	text-shadow:black 1px 0px, black 1px 1px, black 0px 1px, black -1px 1px, black -1px 0px, black -1px -1px, black 0px -1px, black 1px -1px;
}
header .header .contacts div {
	position:relative;
	padding-left:40px;
}
header .header .contacts div img {
	position:absolute;
	left:0;
	-webkit-filter:invert(100%);
	filter:invert(100%);
	height:26px;
	margin-right:10px;
}

header .top-menu {
	background:#0f8aeb;
	color:#fff;
	position:relative;
}
header .top-menu a {
	text-decoration:none;
	padding:15px;
}
header .top-menu ul {
	margin:0;
	padding:0;
	background:#0f8aeb;
}
header .top-menu ul li {
	display:inline-block;
	margin:0;
	padding:0;
	line-height:40px;
	text-shadow:0px 1px 1px rgb(0 0 0 / 51%);
	cursor:pointer;
}
header .top-menu ul li.current-menu-item,
header .top-menu ul li:hover {
	background:#171E28;
	color:#0f8aeb;
}
header .top-menu ul li a {
	color:#fff;
}
header .top-menu ul li.current-menu-item a,
header .top-menu ul li:hover a {
	color:#0f8aeb;
}
header .sub-menu {
	position:absolute;
	left:0;
	right:0;
	top:40px;
	z-index:100;
	background:#3A495D;
	color:#fff;
	padding:13px;
	line-height:20px;
	display:none;
}
header .sub-menu a {
	color:#fff !important;
}
header .sub-menu a:hover,
header .sub-menu a.active {
	color:#0f8aeb !important;
}
header .sub-menu div {
	display:inline-block;
	vertical-align:top;
	padding:7px;
	width:300px;
}
header .top-menu ul li:hover .sub-menu {
	display:block;
}
@media (max-width:950px){
	header .mobile-menu-btn {
		position:absolute;
		z-index:10;
		left:25px;
		right:25px;
		font-size:16px;
		line-height:40px;
		text-transform:uppercase;
		font-weight:500px;
	}
	header .top-menu {
		height:40px;
		width:100%;
	}
	header .top-menu ul {
		position:absolute;
		z-index:12;
		left:0;
		right:0;
		top:40px;
		max-height: 90vh;
		overflow-y: auto;
		display:none;
	}
	header .top-menu ul li {
		display:block;
		width:100%;
		padding-left:10px;
		position:relative;
		font-size:19px;
	}
	header .sub-menu {
		position:static;
		font-size:19px;
	}
}
.fixed-menu {
	position:fixed !important;
	top:0;
	left:0;
	right:0;
	z-index:20;
}

main {
	padding:30px;
}
main h1 {
	text-align:center;
}

.home-slider {
	background:linear-gradient(45deg, rgb(236, 195, 31) 0%, rgb(226, 100, 175) 100%);
	padding:30px;
}
.home-slider h3 {
	margin:0;
	color:#fff;
}
.home-slider a {
	padding:6px 10px;
	background:#fff;
	color:#000;
	border-radius:5px;
}

.owl-item div {
	padding:1px 20px;
}
@media (max-width:950px){
	.owl-item div {
		padding:1px 1px;
	}
}
.owl-carousel .owl-nav button.owl-next, 
.owl-carousel .owl-nav button.owl-prev {
	position:absolute;
	top:30%;
	border-radius:50%;
	background:rgba(0,0,0,.3);
	padding:20px;
	color:#fff !important;
	font-size:40px !important;
	line-height:40px;
	font-weight:bold;
	height:80px;
	width:80px;
	text-align:center;
}
.owl-carousel .owl-dots.disabled,
.owl-carousel .owl-nav.disabled {
	display:block !important;
}
.owl-carousel .owl-nav button.owl-next {
	right:-10px;
}
.owl-carousel .owl-nav button.owl-prev {
	left:-10px;
}

.home-services {
	padding:10px;
}
.home-services .item {
	position:relative;
	background-size:cover;
	height:250px;
}
.home-services .item > div {
	background-color:rgba(255,255,255,.7);
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	text-align:center;
	display:none;
}
.home-services .item:hover > div {
	display:block;
}
.home-services .item > div a {
	background:#3A495D;
	padding:8px 16px;
	color:#fff;
	border-radius:15px;
	margin:20px 0;
}
.home-services .item > div div {
	position:absolute;
	left:20px;
	right:20px;
	top:50%;
	transform:translateY(-50%);
	font-family:'Raleway', sans-serif;
}
.home-services .item > div h3 {
	margin:3px 0;
	text-transform:uppercase;
	font-weight:400;
	font-size:24px;
	text-align:center;
}
.home-services .item > div h3:after {
	content:"";
	display:block;
	width:100px;
	height:2px;
	background:#333;
	margin:10px auto 40px;
}
.home-services .item > div h4 {
	margin:3px 0;
	text-transform:uppercase;
	font-weight:400;
	font-size:16px;
}
@media (max-width:500px){
	.home-services {
		padding:0;
	}
	.home-services .item {
		width:50%;
		height:210px;
	}
	.home-services .item > div div {
		left:10px;
		right:10px;
	}
	.home-services .item > div p {
		margin:0;
	}
	.home-services .item > div h3 {
		font-size:17px;
	}
	.home-services .item > div h4 {
		font-size:14px;
	}
}

.home-news {
	padding:20px 40px;
}
.home-news a {
	color:#fff;
}
.home-news h2 {
	font-size:27px;
	font-weight:300;
	color:#aaa;
	margin:0 0 20px;
}
.home-news .flex {
	align-items:flex-start;
	margin:10px 0;
}
.home-news .item img {
	width:25%;
}
.home-news .item > div {
	width:70%;
}
.home-news .item h3 {
	margin:0 0 20px;
}
.home-news .center {
	margin:10px 0;
}
.home-news .date {
	color:#aaa;
}
.home-news .button {
	color:#999;
	background:#fff;
}
@media (max-width:950px){
	.home-news {
		padding:30px;
	}
}

.home-about {
	padding:40px 70px;
}
.home-about h4 {
	font-size:27px;
	font-weight:300;
	text-align:center;
	margin:0 auto 40px;
}
.home-about a {
	color:#fff;
	text-decoration:underline;
}
.home-about .button {
	color:#58AAEC;
	background:#fff;
}
.home-about .center {
	margin-bottom:60px;
}
@media (max-width:950px){
	.home-about {
		padding:30px;
	}
}

.bread-crumbs ul {
	margin:0 0 30px;
	padding:0;
}
.bread-crumbs ul li {
	display:inline;
}
.bread-crumbs ul li:not(:last-child):after {
	content:"/";
	margin:0 7px;
}
.bread-crumbs ul li a {
	color:#0f8aeb;
}

.list-item {
	margin:10px 0;
}
.list-item div {
	display:inline-block;
	vertical-align:top;
}
.list-item div:first-child {
	max-width:20%;
}
.list-item div:last-child {
	max-width:80%;
}
.list-item img {
	object-fit:cover;
	width:60px;
	height:60px;
	margin-right:20px;
}
.list-item h3 {
	margin:0;
}

.archive-news .item {
	margin:20px 0;
}
.archive-news .item img {
	width:15%;
}
.archive-news .item .preview {
	width:80%;
}

.date {
	color:#aaa;
}

.contacts-page img.icon {
	height:16px;
	margin-right:10px;
}

footer {
	background:#3A495D;
	color:#fff;
	padding:30px;
}
footer p {
	margin:0;
}
footer a {
	color:#ccc;
}
footer ul {
	margin:0;
	padding:0;
	text-align:left;
}
footer ul li {
	list-style-type:none;
	line-height:25px;
	font-size:16px;
	font-weight:500;
}
footer .header p {
	font-weight:500;
	font-size:22px;
	line-height:25px;
	margin-bottom:20px;
}
footer .header .button {
	color:#333;
}
footer img {
	-webkit-filter:invert(100%);
	filter:invert(100%);
	height:16px;
	margin-right:10px;
}
@media (max-width:950px){
	footer {
		padding:30px 20px;
	}
	footer .inline {
		display:block;
	}
	footer ul {
		width:100%;
		margin-top:10px;
	}
	footer ul li {
		line-height:35px;
	}
}

.fly-panel {
	position:fixed;
	right:0;
	top:50%;
	transform:translateY(-50%);
	z-index:100;
	text-align:right;
}
.fly-panel .button {
	background:linear-gradient(180deg, rgb(14, 135, 231) 0%, rgb(12, 117, 200) 100%);
	padding:11px 40px;
	color:#fff;
	border:none;
	border-radius:1px;
	text-shadow:0px 1px 1px rgb(0 0 0 / 51%);
	-webkit-transform-origin: 100% 0;
	-moz-transform-origin: 100% 0;
	-o-transform-origin: 100% 0;
	-ms-transform-origin: 100% 0;
	transform-origin: 100% 0;
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}
.cookie--notice{position:fixed;right:0;bottom:0;left:0;z-index:5250;display:none;align-items:center;background-color:#fff;color:#828690;text-align:left;padding-top:.75rem;padding-bottom:.75rem;font-size:14px}
.cookie--notice .wrapper{display:flex;max-width:1024px;margin-right:auto;margin-left:auto}
.cookie--notice a{text-decoration:none}
.cookie--notice a:hover{text-decoration:underline}
.cookie--notice button{min-width:102px;cursor:pointer}
#wpcf7-f331-o1{max-width: 400px}