* {
	margin: 0;
	padding: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
}
a, a:focus, [data-href] {
	color: #0054b9;
	text-decoration: underline;
	cursor: pointer;
}
a:hover, [data-href]:hover {
	color: #c00;
	text-decoration: none;
}
a, img {
	border: none;
}
a, input:focus, button:focus, textarea:focus, select:focus {
	outline: none;
}
button {
	cursor: pointer;
}
html {
	font-size: 14px;
}
body {
	color: #3d4957;
	font-family: 'Open Sans', Arial, sans-serif;
}
h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
	margin-top: 1rem;
}
h1, h2 {
	text-transform: uppercase;
	letter-spacing: 2px;
}
h1 span, h2 span {
	text-decoration: underline;
}
ul {
	list-style-position: inside;
}
p {
	margin-bottom: 0.5rem;
}
.cl {
	clear: both;
}
.cla:after {
	content: '';
	clear: both;
	display: table;
}
.text-center {
	text-align: center;
}
.clone {
	position: absolute;
	z-index: -1;
	-webkit-user-select: none;
	-moz-user-select: -moz-none;
	-o-user-select: none;
	user-select: none;
}
[data-item], [data-item-inline] {
	opacity: 0.01;
}
.lbel[data-item], .lbel[data-item-inline] {
	opacity: 1;
}
.over-hide {
	overflow: hidden;
}
.wrapper {
	background: #fafafa;
}
.modal-backdrop {
	display: none;
}


/* Header
-----------------------------------------------------------------------------*/
.header {
	background: #3d6889;
	padding: 0.75rem 0;
	box-shadow: 0.25rem 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}
.header .logo {
	text-align: center;
}

.search-box {
	padding-top: 0.75rem;
	text-align: center;
}
.search-box input[type=text] {
	width: 35rem;
	height: 2.75rem;
	max-width: 80%;
	border: 0.2rem solid #fff;
	border-radius: 0.2rem;
	box-shadow: 0 0 0.1rem rgba(0, 0, 0, 0.8);
	padding: 0 0.75rem;
	color: #999;
	font-size: 1.25rem;
	margin: 0.75rem;
}
.search-box button {
	width: 8.5rem;
	height: 2.75rem;
	border: 0.2rem solid #fff;
	border-radius: 0.2rem;
	background: none;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
}
.search-box button:hover {
	border-color: #fff;
	background: #fff;
	color: #3d6889;
}
.search-page .search-box input[type=text] {
	border-color: #3d6889;
	border-width: 0.2rem;
	box-shadow: none;
}
.search-page .search-box button {
	border-color: #3d6889;
	color: #3d6889;
}
.search-page .search-box button:hover {
	background: #3d6889;
	color: #fff;
}

/* sidebar
-----------------------------------------------------------------------------*/
.sidebar {
	overflow: hidden;
}
.nav {
	margin-bottom: 0.75rem;
}
.nav ul {
	margin-bottom: 0;
	padding-left: 1.5rem;
	border-left: 0.2rem solid #3d6889;
}
.nav li {
	list-style: none;
	margin: 0.2rem 0;
}
.nav li a {
	display: block;
	color: #3d6889;
	font-size: 1.25rem;
	line-height: 2.1rem;
	font-weight: 600;
	text-transform: uppercase;
	text-decoration: none;
}
.nav li a:hover {
	opacity: 0.8;
}


/* index
-----------------------------------------------------------------------------*/
.main-box {
	padding-top: 3.5rem;
}
.main-box h1 {
	margin-bottom: 0.75rem;
}

.page-desc {
	padding: 0.75rem;
	margin-bottom: 1.5rem;
	background: #eee;
}
.page-desc.p-box {
	margin-top: 0.75rem;
}
.map-box {
	height: 21rem;
	margin-bottom: 1.75rem;
}

.companies-list {
	padding-top: 1.75rem;
}
.companies-list .row {
	margin-bottom: 0.5rem;
}
.companies-list .name {
	font-size: 1.15rem;
}
.pagination {
	list-style: none;
	text-align: center;
	margin-top: 3rem;
}
.pagination > li {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0.5rem;
}
.pagination > li a {
	display: block;
	padding: 0 0.25rem;
	border-bottom: 0.15rem solid transparent;
	font-size: 1.25rem;
	line-height: 2rem;
	font-weight: 600;
	text-decoration: none;
}
.pagination > li a:hover, .pagination > li.active a {
	color: #c00;
	border-color: #c00;
}

.main-box.index h1 {
	text-align: center;
}
.desc-section {
	padding: 3rem 0;
}
.desc-section h2 {
	text-align: center;
}


/* plus-section
-----------------------------------------------------------------------------*/
.plus-section {
	padding: 2rem 0 2rem;
	text-align: center;
}
.plus-section h2 + p {
	margin: 1rem 0;
}
.plus-section .item {
	padding: 0 0.75rem 1.75rem;
}
.plus-section .item .icon {
	width: 8rem;
	height: 8rem;
	margin: 1rem auto;
}
.plus-section .item .icon.i-1 { background: url('../images/ico-1.png') center center no-repeat; }
.plus-section .item .icon.i-2 { background: url('../images/ico-2.png') center center no-repeat; }
.plus-section .item .icon.i-3 { background: url('../images/ico-3.png') center center no-repeat; }
.plus-section .item .icon.i-4 { background: url('../images/ico-4.png') center center no-repeat; }
.plus-section .item .icon.i-1, .plus-section .item .icon.i-2, .plus-section .item .icon.i-3, .plus-section .item .icon.i-4 {
	background-size: 100% auto;
}


/* partners-section
-----------------------------------------------------------------------------*/
.partners-section {
	text-align: center;
}
.partners-section img {
	display: inline-block;
	vertical-align: middle;
	margin: 0.75rem;
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	filter: url('../images/grayscale.svg#greyscale');
	filter: gray;
}
.partners-section img:hover {
	-webkit-filter: grayscale(0%);
	filter: grayscale(0%);
	filter: none;
}

/* Footer
-----------------------------------------------------------------------------*/
.footer {
	margin-top: 3.75rem;
	padding: 1.5rem 0;
	background: #f1f2f3;
	text-align: center;
}
.footer a {
	text-decoration: none;
}


.adv {
	padding: 0.75rem 0;
}

/* media
-----------------------------------------------------------------------------*/
@media (min-width:992px) and (max-width:1200px) {
}
@media (min-width:768px) and (max-width:991px) {
}
@media (max-width:767px) {
	.header, .nav, .footer {
		text-align: center;
	}
	.companies-list .city {
		font-size: 90%;
		font-style: italic;
	}
	.responds-box {
		overflow-x: hidden;
	}
	.sidebar .adv {
		text-align: center;
	}
}