/*********************************************************************************************************************************** Reset */
html,body,div,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,fieldset,input,textarea,iframe,label { margin: 0; padding: 0; }
html, body {
	font-family: 'Source Sans Pro', sans-serif;
	font-style: normal;
	font-size: 14px;
	line-height: 1;
	color: #282828;
	position: relative;
	min-height: 100%;
	word-wrap: break-word;
}
html { background: #3a526a; }
body { background: #ffffff; }
img, a img, fieldset, iframe { border: none; }
input, button, select, optgroup, textarea { font-family: inherit; }
input, textarea, select, button { outline: none; }
textarea { resize: vertical; }
label { cursor: pointer; }
p { margin: 0px 0px 15px 0px; }
a, a:link, a:visited {
	color: #2e363a;
	text-decoration: none;
	outline: none;
	cursor: pointer;
	-webkit-transition: color 0.2s ease, background 0.2s ease;
	   -moz-transition: color 0.2s ease, background 0.2s ease;
			transition: color 0.2s ease, background 0.2s ease;
}
a:hover, a:focus {
	color: #18ba60;
	text-decoration: none;
	outline: none;
}

::-moz-selection {
	color: #ffffff;
	background: #18ba60;
}
::selection {
	color: #ffffff;
	background: #18ba60;
}


/*********************************************************************************************************************************** Content boxes */
.box_content {
	padding: 50px 0px;
}
.box_bg {
	background: #f7f7f7;
}

.box_title {
	padding: 30px 0px;
	background: #2a3c4e;
}
.page_title {
	padding: 0px;
	margin: -5px 0px 0px 0px;
	font-size: 24px;
	line-height: 28px;
	color: #ffffff;
	font-weight: 600;
	text-align: center;
}

.breadcrumbs {
	padding-top: 10px;
	font-size: 13px;
	line-height: 18px;
	color: #8d98a3;
	text-align: center;
}
.breadcrumbs a:link, .breadcrumbs a:visited {
	color: #8d98a3;
}
.breadcrumbs a:hover {
	color: #18ba60;
}

.main_title {
	position: relative;
	padding: 0px;
	margin: -5px 0px 40px 0px;
	font-size: 26px;
	line-height: 30px;
	color: #222222;
	font-weight: 600;
	text-align: left;
}
.main_title:after {
	content: "";
	display: block;
	width: 50px;
	height: 4px;
	position: absolute;
	bottom: -20px;
	left: 0;
	border-radius: 2px;
	background-color: #18ba60;
}

@media (min-width: 768px) {
	.box_content {
		padding: 80px 0px;
	}
	
	.box_title {
		padding: 40px 0px;
	}
	.page_title {
		font-size: 32px;
		line-height: 36px;
	}
	.breadcrumbs {
		font-size: 14px;
	}
	
	.main_title {
		margin: -5px 0px 60px 0px;
		font-size: 32px;
		line-height: 36px;
	}
	.main_title:after {
		bottom: -15px;
	}
}
	

/*********************************************************************************************************************************** Typography */
.page_content {
	font-size: 14px;
	line-height: 22px;
	color: #282828;
}

.page_content p {
	margin-bottom: 15px;
}
.page_content p:last-child {
	margin-bottom: 0px;
}
.page_content b, .page_content strong {
    font-weight: 600;
}

.page_content h1, .page_content h2, .page_content h3, .page_content h4, .page_content h5, .page_content h6 {
	padding: 12px 0px 12px 0px;
	color: #1a1a1a;
	font-weight: 600;
	text-align: left;
}
.page_content h1:first-child, .page_content h2:first-child, .page_content h3:first-child, .page_content h4:first-child, .page_content h5:first-child, .page_content h6:first-child {
	padding-top: 0px;
}
.page_content h1 {
	font-size: 17px;
	line-height: 23px;
}
.page_content h2 {
	font-size: 17px;
	line-height: 23px;
}
.page_content h3 {
	font-size: 16px;
	line-height: 22px;
}
.page_content h4 {
	font-size: 16px;
	line-height: 22px;
}
.page_content h5 {
	font-size: 15px;
	line-height: 21px;
}
.page_content h6 {
	font-size: 15px;
	line-height: 21px;
}

.page_content img {
	max-width: 100%;
	height: auto;
}
.page_content .alignleft, .page_content .alignright, .page_content .aligncenter, .page_content .alignnone {
	display: block;
	margin: 0px auto 15px auto;
	clear: both;
}

.page_content .gallery {
	margin: -5px -10px 10px -10px !important;
}
.page_content .gallery-item {
	padding: 10px !important;
	margin: 0px !important;
}
.page_content .gallery-item img {
	width: 100% !important;
	height: auto !important;
	border: none !important;
}

.wp-caption-text {
	padding: 7px;
	font-size: 14px;
	line-height: 18px;
	color: #777777;
	text-align: center;
	background: #f1f3f5;
}

.page_content ul {
	list-style-type: none;
	position: relative;
	margin: -7px 0px 15px 0px;
}
.page_content ul li {
	list-style-type: none;
	position: relative;
	padding: 0px 0px 5px 15px;
}
.page_content ul li:before {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	position: absolute;
	top: 8px;
	left: 0px;
	background: #18ba60;
	border-radius: 50%;
}
.page_content ul li ul li:before {
	background: #bbbbbb;
}

.page_content ol {
	list-style-position: inside;
	position: relative;
	margin: -7px 0px 15px 0px;
}
.page_content ol li {
	padding: 0px 0px 5px 0px;
	position: relative;
}
.page_content ol li ul li {
	padding: 0px 0px 5px 15px;
}

.page_content ul:last-child, .page_content ol:last-child {
	margin-bottom: 0px;
}
.page_content ul li:last-child, .page_content ol li:last-child {
	padding-bottom: 0px;
}

.page_content ul li ul, .page_content ul li ol, .page_content ol li ul, .page_content ol li ol {
	margin: 0px;
	padding-left: 10px;
}

@media (max-width: 575.98px) {
	.page_content .gallery {
		margin: -5px -5px 10px -5px !important;
	}
	.page_content .gallery:before, .page_content .gallery:after {
		content: " ";
		display: table;
	}
	.page_content .gallery:after {
		clear: both;
	}
	.page_content .gallery br {
		display: none;
	}
	.page_content .gallery .gallery-item {
		width: 100% !important;
		padding: 5px !important;
	}
}
@media (min-width: 768px) {
	.page_content h1 {
		font-size: 24px;
		line-height: 28px;
	}
	.page_content h2 {
		font-size: 23px;
		line-height: 27px;
	}
	.page_content h3 {
		font-size: 22px;
		line-height: 26px;
	}
	.page_content h4 {
		font-size: 21px;
		line-height: 25px;
	}
	.page_content h5 {
		font-size: 20px;
		line-height: 24px;
	}
	.page_content h6 {
		font-size: 19px;
		line-height: 23px;
	}
	
	.page_content .alignleft, .page_content .alignright, .page_content .aligncenter, .page_content .alignnone {
		display: inline-block;
	}
	.page_content .alignleft {
		margin: 5px 30px 15px 0px;
		float: left;
		clear: none;
	}
	.page_content .alignright {
		margin: 5px 0px 15px 30px;
		float: right;
		clear: none;
	}
	
}


/*********************************************************************************************************************************** Gallery */
.lg-backdrop {
	background-color: rgba(0,0,0,0.75);
}
.lg-sub-html, .lg-toolbar {
	background-color: rgba(0,0,0,.45);
}


/*********************************************************************************************************************************** Forms */
.form-group {
	margin-bottom: 25px;
}
.form-control, .form-select {
	height: auto;
	padding: 12px 15px;
	font-size: 14px;
	line-height: 18px;
	background: #ffffff;
	border: 1px solid #dee5ea;
	border-radius: 6px;
	-webkit-box-shadow: none;
			box-shadow: none;
}
.form-control:focus, .form-select:focus {
	border-color: #18ba60;
	outline: none;
	-webkit-box-shadow: none;
			box-shadow: none;
}
.form-select {
	appearance: auto;
}

.form-group-submit {
	position: relative;
	text-align: center;
}
.btn {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	padding: 13px 30px;
	font-size: 14px;
	line-height: 18px;
	font-weight: 600;
	text-transform: uppercase;
	border: none;
	border-radius: 6px;
	-webkit-transition: all 0.2s ease;
	   -moz-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
.btn-sm {
	padding: 10px 30px;
}
.btn-xs {
	padding: 10px 30px;
}
.btn:focus, .btn-close:focus {
	outline: 0;
	box-shadow: none;
}

.btn-default, .btn-default:link, .btn-default:visited {
	color: #ffffff;
	background: #18ba60;
}
.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default:active:hover {
	color: #ffffff;
	background: #2e363a;
}

.btn-primary, .btn-primary:link, .btn-primary:visited {
	color: #ffffff;
	background: #18ba60;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary:active:hover {
	color: #ffffff;
	background: #3a526a;
}

.btn:focus, .btn:active:focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn.active.focus, .btn:active, .btn.active {
	outline: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

@media (min-width: 768px) {
	.btn-xs {
		padding: 15px 30px;
	}
}


/*********************************************************************************************************************************** Contact Form 7 */
.wpcf7-spinner {
	position: absolute;
    left: 50%;
    top: 100%;
    margin: 3px 0px 0px -12px;
}
span.wpcf7-not-valid-tip {
	padding-top: 3px;
	font-size: 12px;
	line-height: 16px;
	color: #dc3232;
}
.form-control.wpcf7-not-valid {
	border-color: #ff0000;
}
.form-control.wpcf7-not-valid:focus {
	border-color: #18ba60;
}
.wpcf7 form .wpcf7-response-output {
	margin: 25px 0px 0px 0px;
	padding: 12px;
	font-size: 13px;
	line-height: 18px;
}
.wpcf7 form.sent .wpcf7-response-output {
	color: #3c763d;
	background-color: #dff0d8;
	border: 1px solid #d6e9c6;
    border-radius: 3px;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output, .wpcf7 form.spam .wpcf7-response-output {
	color: #a94442;
	text-align: center;
	background-color: #f2dede;
	border: 1px solid #ebccd1;
    border-radius: 3px;
}


/*********************************************************************************************************************************** Modal */
.modal-content {
	overflow: hidden;
}
.modal-header {
	padding: 15px 20px;
	background: #bfbfbf;
}
.modal-title {
	font-size: 17px;
	line-height: 20px;
}
.modal-header .btn-close {
	opacity: 0.25;
}
.modal-header .btn-close:hover {
	opacity: 1;
}
.modal-body {
	padding: 30px 20px;
}

@media (min-width: 992px) {
	.modal-header {
		padding: 20px 30px;
	}
	.modal-body {
		padding: 30px;
	}
}


/*********************************************************************************************************************************** Pagination */
.pagination_wrapper {
	margin-top: 40px;
}

.pagination .page-link {
	padding: 10px;
	font-size: 13px;
	color: #777777;
	background-color: #ffffff;
	border-color: #dddddd;
	-webkit-transition: all 0.2s ease;
	   -moz-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
.pagination .page-link:hover, .pagination .page-link:focus {
	color: #18ba60;
	background-color: #f1f3f5;
	box-shadow: none;
}
.pagination .active>.page-link, .pagination .active>.page-link:hover, .pagination .active>.page-link:focus {
	color: #ffffff;
	background-color: #18ba60;
	border-color: #18ba60;
}
.pagination .disabled>.page-link, .pagination .disabled>.page-link:hover, .pagination .disabled>.page-link:focus {
	padding: 10px 5px;
	color: #aaaaaa;
	background-color: #ffffff;
	border-top: none;
	border-bottom: none;
}


/*********************************************************************************************************************************** Header */
.header_top {
	padding: 5px 0px 10px 0px;
	text-align: center;
	background: #465269;
}

.header_top_item {
	position: relative;
	padding: 5px 0px;
	font-size: 12px;
	line-height: 15px;
	color: #ffffff;
}
.header_top_item i {
	margin-right: 8px;
}
.header_top_item a:link, .header_top_item a:visited {
	color: #ffffff;
}
.header_top_item a:hover {
	color: #18ba60;
}
.header_top_item a+a {
	margin-left: 10px;
}

.header_top_modal {
	padding-top: 7px;
}
a.header_top_btn:link, a.header_top_btn:visited {
	display: inline-block;
	position: relative;
	padding: 8px 15px;
	margin: 0px;
	font-size: 14px;
	line-height: 15px;
	color: #ffffff;
	text-transform: uppercase;
	font-weight: 600;
	background: #18ba60;
}
a.header_top_btn:hover {
	color: #ffffff;
	background: #2e363a;
}

.header {
	padding: 10px 0px;
	background: #ffffff;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.header .container {
	position: relative;
}

.header_logo a {
	display: inline-block;
	vertical-align: middle;
}
.header_logo img {
	width: auto;
	max-width: 100%;
	height: 32px;
}

.navbar {
	padding: 0px;
	position: static;
}

.navbar-toggler {
	padding: 5px 7px;
	background: none;
	border: none;
}
.navbar-toggler:focus {
	box-shadow: none;
}
.navbar-toggler-icon {
	width: 30px;
	height: 30px;
}
.navbar-toggler:hover .navbar-toggler-icon {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2824, 186, 96, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.header_menu {
	position: absolute;
	top: 100%;
	left: 0px;
	margin-top: 10px;
	width: 100%;
}
.header_menu ul {
	display: block;
	list-style-type: none;
}
.header_menu ul li {
	display: block;
	vertical-align: middle;
	list-style-type: none;
	padding: 0px;
	position: relative;
}
.header_menu ul li+li {
	border-top: 1px solid #617588;
}
.header_menu ul li a:link, .header_menu ul li a:visited {
	display: block;
	padding: 8px;
	font-size: 14px;
	line-height: 20px;
	text-align: center;
	color: #ffffff;
	font-weight: 600;
	text-transform: uppercase;
	background: #465269;
}
.header_menu ul li a:hover {
	color: #ffffff;
	background: #18ba60;
}
.header_menu ul li ul {
	display: none !important;
}

.header_search_btn {
	padding-left: 5px;
}
.header_search_btn a:link, .header_search_btn a:visited {
	display: block;
	width: 34px;
	height: 34px;
	font-size: 14px;
	line-height: 32px;
	color: #ffffff;
	text-align: center;
	background: #bfbfbf;
	border-radius: 50%;
}
.header_search_btn a:hover {
	color: #ffffff;
	background: #18ba60;
}

.header_search_form {
	display: none;
	position: absolute;
	top: 100%;
	right: 15px;
	width: 250px;
	margin-top: 10px;
	background: #ffffff;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.header_search_form form {
	display: block;
	position: relative;
}
.header_search_form input {
	display: block;
	width: 100%;
	padding: 12px 50px 12px 15px;
	font-size: 14px;
	line-height: 20px;
	color: #656565;
	background: none;
	border: 1px solid #e6e6e6;
	-webkit-transition: all 0.2s ease;
	   -moz-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
.header_search_form input:focus {
	border-color: #18ba60;
}
.header_search_form button {
	display: block;
	padding: 8px 15px;
	position: absolute;
	top: 7px;
	right: 0px;
	font-size: 16px;
	line-height: 1;
	color: #bfbfbf;
	background: none;
	border: none;
	border-left: 1px solid #e0e0e0;
	-webkit-transition: all 0.2s ease;
	   -moz-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
.header_search_form button:hover, .header_search_form button:focus {
	color: #18ba60;
	background: none;
}

@media (min-width: 576px) {
	.header_top_item+.header_top_item {
		padding-left: 15px;
		margin-left: 15px;
		border-left: 1px solid #617588;
	}
	a.header_top_btn:link, a.header_top_btn:visited {
		margin-left: 10px;
	}
	
	.header {
		padding: 15px 0px;
	}
	.header_logo img {
		height: 50px;
	}
	.header_menu {
		margin-top: 15px;
	}
	.header_search_form {
		margin-top: 15px;
	}
}
@media (min-width: 992px) {
	.header_top {
		padding: 10px 0px;
	}
	.header_top_modal {
		padding-top: 0px;
	}
	a.header_top_btn:link, a.header_top_btn:visited {
		height: 45px;
		padding: 15px 30px;
		margin: -10px 0px -10px 10px;
	}
	
	.header_menu {
		position: static;
		margin-top: 0px;
	}
	.header_menu ul li {
		display: inline-block;
	}
	.header_menu ul li+li {
		border: none;
	}
	.header_menu ul li a:link, .header_menu ul li a:visited {
		padding: 15px 10px;
		color: #424242;
		background: none;
	}
	.header_menu ul li a:hover {
		color: #18ba60;
		background: none;
	}
	
	.header_search_btn {
		padding-left: 15px;
	}
}
@media (min-width: 1200px) {
	.header_menu ul li a:link, .header_menu ul li a:visited {
		padding: 15px 20px;
	}
	
}


/*********************************************************************************************************************************** Home Hero */
.box_hero {
	padding: 70px 0px;
	background: url("../images/box_hero.jpg") no-repeat 50% 50%;
	background-size: cover;
	background-attachment: fixed;
}

.hero_title {
	display: block;
	margin: -5px 0px 15px 0px;
	font-size: 22px;
	line-height: 26px;
	color: #ffffff;
	font-weight: 700;
	text-align: center;
}

.hero_text {
	font-size: 15px;
	line-height: 20px;
	color: #ffffff;
	text-align: center;
}

.hero_btn {
	padding-top: 20px;
	text-align: center;
}
.hero_btn .btn {
	margin: 7px;
}

@media (min-width: 768px) {
	.box_hero {
		padding: 200px 0px;
	}
	.hero_title {
		margin: -10px 0px 20px 0px;
		font-size: 46px;
		line-height: 50px;
	}
	.hero_text {
		font-size: 20px;
		line-height: 24px;
	}
	.hero_btn {
		padding-top: 40px;
	}
	
}
@media (min-width: 992px) {
	.hero_title {
		font-size: 56px;
		line-height: 60px;
	}
}


/*********************************************************************************************************************************** Home Features */
.features_list {
	margin-top: calc(var(--bs-gutter-x) * -1);
}
.features_item {
	padding-top: var(--bs-gutter-x);
}
.features_item_inner {
	position: relative;
	overflow: hidden;
}
.features_item_img img {
	width: 100%;
}
.features_item_title {
	position: absolute;
	left: 10px;
	bottom: 10px;
	right: 10px;
	min-height: 60px;
	padding: 10px 70px 10px 15px;
	font-size: 15px;
	line-height: 1.4;
	color: #ffffff;
	font-weight: 600;
	text-transform: uppercase;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	background: #3a526a;
	background: rgba(58,82,106,0.85);
	border-left: 4px solid #18ba60;
	z-index: 1;
	-webkit-transition: all 0.3s ease;
	   -moz-transition: all 0.3s ease;
			transition: all 0.3s ease;
}
.features_item_title:after {
	content: "\f054";
	position: absolute;
	font-family: "fontAwesome";
	text-align: center;
	line-height: 55px;
	right: 5px;
	top: 5px;
	bottom: 5px;
	width: 55px;
	height: 55px;
	color: #ffffff;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
	font-weight: normal;
	font-size: 18px;
}
.features_item_inner:hover .features_item_title {
	bottom: -100px;
	opacity: 0;
	visibility: hidden;
}
.features_item_text {
	position: absolute;
	bottom: 100%;
	left: 0px;
	right: 0px;
	width: 100%;
	height: 100%;
	padding: 15px;
	font-size: 15px;
	line-height: 1.4;
	color: #ffffff;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	background: #3a526a;
	background: rgba(58,82,106,0.85);
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all 0.3s ease;
	   -moz-transition: all 0.3s ease;
			transition: all 0.3s ease;
}
.features_item_inner:hover .features_item_text {
	bottom: 0px;
	opacity: 1;
	visibility: visible;
}

@media (min-width: 768px) {
	.features_item_title {
		left: 20px;
		bottom: 20px;
		right: 20px;
		min-height: 65px;
		font-size: 16px;
	}
	.features_item_text {
		padding: 20px;
	}
}


/*********************************************************************************************************************************** Home Services */
.services_list {
	margin-top: -30px;
}
.services_item {
	margin-top: 30px;
}
.services_item_inner {
	position: relative;
	padding-left: 70px;
	min-height: 60px;
	line-height: 60px;
}
.services_item_icon {
	position: absolute;
	left: 10px;
	top: 50%;
	margin-top: -20px;
	width: 40px;
	height: 40px;
	font-size: 20px;
	line-height: 40px;
	color: #ffffff;
	text-align: center;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
	background-color: #18ba60;
	border-radius: 4px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.services_item_icon i {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.services_item_title {
	display: inline-block;
	vertical-align: middle;
	font-size: 15px;
	line-height: 21px;
	color: #222222;
	font-weight: 600;
}

@media (min-width: 768px) {
	.services_item_inner {
		padding-left: 85px;
		min-height: 75px;
		line-height: 75px;
	}
	.services_item_icon {
		margin-top: -27px;
		width: 54px;
		height: 54px;
		font-size: 28px;
		line-height: 54px;
	}
	.services_item_title {
		font-size: 17px;
		line-height: 23px;
	}
	
}


/*********************************************************************************************************************************** Home CTA */
.box_cta {
	background: #2e363a;
}

.cta_title {
	font-size: 24px;
	line-height: 28px;
	color: #ffffff;
	font-weight: 600;
	text-align: center;
	text-transform: uppercase;
}
.cta_text {
	padding-top: 10px;
	font-size: 15px;
	line-height: 21px;
	color: #cbcbcb;
	text-align: center;
}
.cta_form {
	margin-top: 30px;
}
.cta_form_label {
	margin-bottom: 10px;
	font-size: 15px;
	color: #cbcbcb;
	text-align: center;
}

@media (min-width: 768px) {
	.cta_title {
		font-size: 28px;
		line-height: 30px;
	}
}
@media (min-width: 992px) {
	.cta_title {
		text-align: right;
	}
	.cta_text {
		padding-top: 25px;
		font-size: 16px;
		line-height: 22px;
		text-align: right;
	}
	.cta_form {
		margin-top: 0px;
	}
	
}



/*********************************************************************************************************************************** Home About */



/*********************************************************************************************************************************** Articles */
.articles_list {
	margin-top: calc(var(--bs-gutter-x) * -1);
}
.articles_item {
	padding-top: var(--bs-gutter-x);
}

.articles_item a {
	display: block;
	background: #f7f7f7;
}
.articles_item a:hover {
	background: #ffffff;
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.12);
}

.articles_item_img {
	display: block;
	position: relative;
	background: #2e363a;
}
.articles_item_img:before, .articles_item_img:after {
	content: "";
	display: block;
	top: 50%;
	position: absolute;
	left: 50%;
	z-index: 10;
	visibility: hidden;
	opacity: 0;
	background: #ffffff;
}
.articles_item_img:before {
	height: 1px;
	width: 30px;
	margin-top: -1px;
	margin-left: -15px;
}
.articles_item_img:after {
	width: 1px;
	height: 30px;
	margin-top: -15px;
	margin-left: -1px;
}
.articles_item a:hover .articles_item_img:before, .articles_item a:hover .articles_item_img:after {
	visibility: visible;
	opacity: 1;
}
.articles_item_img img {
	width: 100%;
	-webkit-transition: all 0.2s ease;
	   -moz-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
.articles_item a:hover .articles_item_img img {
	opacity: 0.4;
}

.articles_item_title {
	display: block;
	position: relative;
	padding: 15px;
	font-size: 15px;
	line-height: 20px;
	color: #2e363a;
	font-weight: 600;
	border-left: 4px solid #18ba60;
	-webkit-transition: all 0.2s ease;
	   -moz-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
.articles_item a:hover .articles_item_title {
	color: #18ba60;
}

@media (min-width: 992px) {
	.articles_item_title {
		padding: 20px;
		font-size: 16px;
	}
}


/*********************************************************************************************************************************** Files */
.files_item {
	padding: 20px;
	background: #f7f7f7;
	border-left: 4px solid #18ba60;
}
.files_item+.files_item {
	margin-top: 15px;
}

.files_item_title {
	padding-bottom: 15px;
	margin-bottom: 15px;
	font-size: 15px;
	line-height: 20px;
	color: #2e363a;
	font-weight: 600;
	border-bottom: 1px solid #d2d9df;
}

@media (min-width: 992px) {
	.files_item+.files_item {
		margin-top: 20px;
	}
	.files_item_title {
		font-size: 16px;
	}
}


/*********************************************************************************************************************************** Search */
.search_result {
	padding: 20px;
	background: #f7f7f7;
	border-left: 4px solid #18ba60;
}
.search_result+.search_result {
	margin-top: 15px;
}
.search_result a {
	display: block;
	font-size: 15px;
	line-height: 20px;
	font-weight: 600;
}

@media (min-width: 992px) {
	.search_result+.search_result {
		margin-top: 20px;
	}
	.search_result a {
		font-size: 16px;
	}
}


/*********************************************************************************************************************************** Contacts */
.contacts_form {
	margin-top: 40px;
	padding: 20px 20px 30px 20px;
}

.contacts_item {
	padding-left: 55px;
	min-height: 40px;
	line-height: 40px;
	position: relative;
}
.contacts_item+.contacts_item {
	margin-top: 25px;
}
.contacts_item_icon {
	position: absolute;
	top: 50%;
	left: 0px;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	font-size: 18px;
	line-height: 42px;
	color: #ffffff;
	text-align: center;
	background: #18ba60;
	border-radius: 50%;
}
.contacts_item_body {
	display: inline-block;
	vertical-align: middle;
	line-height: 20px;
}
a.contacts_item_route:link, a.contacts_item_route:visited {
	font-style: italic;
	font-size: 13px;
	color: #999999;
	border-bottom: 1px dashed #999999;
	-webkit-transition: all 0.2s ease;
	   -moz-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
a.contacts_item_route:hover {
	color: #18ba60;
	border-color: #18ba60;
}

.contacts_map {
	margin-top: 40px;
}
.contacts_map, .contacts_map iframe {
	width: 100%;
	height: 400px;
	z-index: 10;
}
.contacts_map iframe {
	border: none !important;
}

@media (min-width: 992px) {
	.contacts_form {
		margin-top: 0px;
		padding: 30px;
	}
	
	.contacts_map, .contacts_map iframe {
		height: 500px;
	}
}


/*********************************************************************************************************************************** Footer */
.footer {
	background: #3a526a;
}

.footer_menu {
	padding: 20px 0px;
	text-align: center;
}
.footer_menu ul {
	display: block;
	list-style-type: none;
}
.footer_menu ul li {
	display: block;
	list-style-type: none;
	padding: 5px 0px;
}
.footer_menu ul li a:link, .footer_menu ul li a:visited {
	font-size: 14px;
	line-height: 18px;
	color: #e9eaeb;
	font-weight: 300;
}
.footer_menu ul li a:hover {
	color: #18ba60;
}

.footer_copyright {
	padding: 10px 0px;
	font-size: 13px;
	line-height: 18px;
	color: #909dab;
	text-align: center;
	border-top: 1px solid #617588;
}
.footer_copyright a:link, .footer_copyright a:visited {
	color: #909dab;
}
.footer_copyright a:hover {
	color: #18ba60;
}

@media (min-width: 768px) {
	.footer_menu ul li {
		display: inline-block;
		vertical-align: middle;
		padding: 0px 15px;
	}
}


/*********************************************************************************************************************************** Up */
.scroll_up:link, .scroll_up:visited {
	display: none;
	width: 44px;
	height: 44px;
	position: fixed;
	bottom: 10px;
	left: 10px;
	font-size: 30px;
	line-height: 40px;
	text-align: center;
	color: #ffffff;
	background: #333333;
	background: rgba(0,0,0,0.2);
	border-radius: 50%;
	z-index: 100;
	box-shadow: none;
	-webkit-transition: all 0.2s ease;
	   -moz-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
.scroll_up:hover {
	background: #18ba60;
	background: rgba(24,186,96,0.9);
}

@media (min-width: 992px) {
	.scroll_up:link, .scroll_up:visited {
		width: 50px;
		height: 50px;
		font-size: 30px;
		line-height: 46px;
	}
}


/*********************************************************************************************************************************** Floating Btns */
.floating_whatsapp:link, .floating_whatsapp:visited {
	display: block;
	width: 44px;
	height: 44px;
	position: fixed;
	right: 10px;
	bottom: 10px;
	font-size: 22px;
	line-height: 44px;
	color: #ffffff;
	text-align: center;
	border-radius: 50%;
	opacity: 0.9;
	background: #00e676;
	animation: pulse_whatsapp 2s infinite;
	box-shadow: 0px 0px 15px rgba(0,0,0,0.15);
	z-index: 100;
	-webkit-transition: all 0.2s ease;
	   -moz-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
.floating_whatsapp:hover {
	color: #ffffff;
	background: #07bd64;
}
@keyframes pulse_whatsapp {
	0% {
		box-shadow: 0 0 0 0px rgba(7,189,100,0.5);
	}
	100% {
		box-shadow: 0 0 0 20px rgba(7,189,100,0);
	}
}

@media (min-width: 992px) {
	.floating_whatsapp:link, .floating_whatsapp:visited {
		width: 60px;
		height: 60px;
		font-size: 30px;
		line-height: 60px;
	}
}


/*********************************************************************************************************************************** Viewport Bugfixes */
@-webkit-viewport   { width: device-width; }
@-moz-viewport      { width: device-width; }
@-ms-viewport       { width: device-width; }
@-o-viewport        { width: device-width; }
@viewport           { width: device-width; }

