@charset "utf-8";
/*======================================
 [ -Main Stylesheet-
  Theme: TheRoof

]
*/
/*-------------Import fonts ---------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700;800;900&display=swap');

/*-------------General Style---------------------------------------*/
html {
	overflow-x: hidden !important;
	height: 100%;
	overflow-y: scroll;
}

body {
	margin: 0;
	padding: 0;
	font-family: 'Poppins', sans-serif;
	font-weight: 400;
	font-size: 12px;
	color: #292929;
	background: #292929;
	height: 100%;
	text-align: center;
}

@-o-viewport {
	width: device-width;
}

@-ms-viewport {
	width: device-width;
}

@viewport {
	width: device-width;
}

/*--------------Typography--------------------------------------*/
p {
	text-align: left;
	font-size: 11px;
	line-height: 24px;
	padding-bottom: 10px;
	font-weight: 500;
	color: #5e646a;
}

blockquote {
	float: left;
	padding: 10px 20px;
	margin: 0 0 20px;
	font-size: 17.5px;
	border-left: 15px solid #eeeeee;
}

blockquote p {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-style: italic;
	color: #494949;
}

/* ---------Page preload--------------------------------------*/
.loader-holder {
	position: fixed;
	width: 60px;
	height: 60px;
	top: 50%;
	left: 50%;
	margin: -30px 0 0 -30px;
	z-index: 150;
}

@keyframes loadbars {
	0% {
		height: 20px;
		margin-top: 20px;
	}

	50% {
		height: 50px;
		margin-top: 0px;
	}

	100% {
		height: 20px;
		margin-top: 20px;
	}
}

.loader-holder span {
	width: 10px;
	height: 10px;
	float: right;
	margin-right: 5px;
	box-shadow: 0px 80px 20px rgba(0, 0, 0, 0.5);
}

.loader-holder span:first-child {
	animation: loadbars 0.6s cubic-bezier(0.645, 0.045, 0.355, 1) infinite 0s;
}

.loader-holder span:nth-child(2) {
	animation: loadbars 0.6s ease-in-out infinite -0.2s;
}

.loader-holder span:nth-child(3) {
	animation: loadbars 0.6s ease-in-out infinite -0.4s;
}

/* ---------Content Styles--------------------------------------*/
#main {
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	opacity: 0;
	background: #ffffff;
}

#wrapper {
	float: left;
	width: 100%;
	position: relative;
	padding-top: 140px;
}

.fl-wrap {
	float: left;
	width: 100%;
	position: relative;
}

.container {
	max-width: 100%;
	width: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.text-justify {
  max-width: 1024px; /* le faltaban los px */
  width: 90%;
  text-align: center;
  margin: 0 auto; /* centra horizontalmente el párrafo */
  display: flex;
  justify-content: center;
  align-items: center;
}


.content {
	width: 100%;
	position: relative;
	z-index: 13;
	background: #ffffff;
	float: left;
}

.full-height {
	height: 100%;
}

.bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-attachment: scroll;
	background-position: center;
	background-repeat: repeat;
	background-origin: content-box;
}

.respimg, .single-slider img, .single-slider-wrap img {
	width: 100%;
	height: auto;
}

.overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000000;
	opacity: 0.3;
	z-index: 2;
}

.content-table table {
	width: 100%;
	margin-top: 20px;
	float: left;
}

.content-table table td, .content-table table th {
	padding: 18px 30px;
	font-size: 12px;
	line-height: 24px;
	font-weight: 500;
}

.content-table table td, .content-table table th {
	border-left: 1px solid #E2E6E7;
}

.content-table table td:first-child, .content-table table th:first-child {
	text-align: left;
	border-left: none;
}

.content-table table.align-left td:first-child, .content-table table.align-left th:first-child {
	text-align: left;
}

.content-table table tr:nth-child(odd) {
	background: #F5F5F5;
}

.mar-top {
	margin-top: 30px;
}

/* ---------Button--------------------------------------*/
.btn {
	float: left;
	margin-top: 10px;
	font-size: 10px;
	color: #ffffff;
	position: relative;
	max-width: 100%;
	overflow: hidden;
	outline: none;
	padding: 0 46px;
	display: inline-block;
	height: 50px;
	line-height: 50px;
	background: #292929;
	font-weight: 600;
	text-transform: uppercase;
}

.btn.small-btn {
	height: 37px;
	line-height: 37px;
	padding: 0 36px;
}

.btn.small-btn.color-bg {
	color: #292929;
}

.mar_btn {
	margin-top: 30px;
}

.btn.small-btn.color-bg:hover {
	color: #ffffff;
}

.btn i {
	left: -50px;
	width: 50px;
	height: 50px;
	line-height: 50px;
	background: #444;
	transition: all .2s ease-in-out;
	position: absolute;
	top: 0;
}

.btn span {
	position: relative;
	transition: all .2s ease-in-out;
	float: left;
	left: 0;
}

.btn:hover {
	background-color: #0089b3;
}


.btn:hover i {
	color: #ffffff;
	left: 0;
}

.btn:hover span {
	color: #ffffff;
	left: 20px;
}

/*------ Header  ------------------------------------------------*/
.main-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	-webkit-transform: translate3d(0, 0, 0);
}

.top-bar {
	background: #292929;
	height: 70px;
	line-height: 70px;
	overflow: hidden;
	transition: all .2s ease-in-out;
}

.top-bar.scroll-sticky {
	height: 0;
}

.header-inner {
	background: #ffffff;
	height: 70px;
	border-bottom: 1px solid #eeeeee;
}

.topbar-social {
	float: right;
	position: relative;
	height: 32px;
	top: 18px;
}

.topbar-social li {
	float: left;
	margin-left: 6px;
}

.topbar-social li a {
	font-size: 12px;
	width: 32px;
	height: 32px;
	line-height: 32px;
	float: left;
	background: #333333;
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.topbar-social a, .top-bar-header-contact li a, .top-bar-header-contact li i, .footer-contacts li a, .footer-serv-holder li a, .footer-social li a {
	transition: all 100ms linear;
}

.topbar-social a:hover, .top-bar-header-contact li:hover i {
	color: #0089b3;
}

.top-bar-header-contact {
	float: left;
	position: relative;
	padding: 0 30px;
}

.top-bar-header-contact:before, .top-bar-header-contact:after {
	content: '';
	position: absolute;
	width: 1px;
	height: 22px;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	background: rgba(255, 255, 255, 0.21)
}

.top-bar-header-contact:after {
	right: auto;
	left: 0;
}

.top-bar-header-contact li {
	float: left;
	position: relative;
	margin-right: 15px;
	text-align: left;
}

.top-bar-header-contact li:last-child {
	margin: 0;
}

.top-bar-header-contact li i {
	margin-right: 15px;
	font-weight: bold
}

.top-bar-header-contact li a {
	color: #ffffff;
	font-weight: 500;
	font-size: 10px;
	text-transform: uppercase;
	text-decoration: none;
}

.logo-holder {
	float: left;
	position: relative;
	z-index: 21;
	height: 65px;
	top: 2px;
}

.logo-holder img {
	width: auto;
	height: 100%;
}

.show-cart, .show-share-btn, .search_btn {
	float: right;
	font-size: 16px;
	color: #000000;
	cursor: pointer;
	position: relative;
	width: 70px;
	height: 70px;
	line-height: 70px;
	margin-left: 24px;
	border-left: 1px solid #eeeeee;
	text-align: center;
	box-sizing: border-box;
	font-weight: 600;
}

.show-cart i, .show-share-btn i, .search_btn i {
	position: relative;
	z-index: 2;
}

.htact:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 100%;
	background: #f7f7f7;
	z-index: 1;
	transition: all .3s ease-in-out;
}

.htact:hover:after {
	top: 0;
}

.show-share-btn, .search_btn {
	margin-left: 0;
	font-size: 14px;
}

.header-tooltip {
	position: absolute;
	top: 100%;
	right: 0;
	width: 140px;
	height: 50px;
	line-height: 50px;
	background: #292929;
	font-weight: 600;
	color: #ffffff;
	transition: all .3s ease-in-out;
	font-size: 10px;
	text-transform: uppercase;
	opacity: 0;
	visibility: hidden;
	border-top: none;
}

.htact:hover .header-tooltip {
	opacity: 1;
	visibility: visible;
}

.show-cart_count {
	position: absolute;
	bottom: 16px;
	width: 16px;
	height: 16px;
	line-height: 16px;
	border-radius: 100%;
	color: #ffffff;
	right: 16px;
	z-index: 10;
	font-size: 9px;
}

.show-cart i, .show-cart_count, .header-cart_wrap, .box-widget-content .widget-posts-img {
	transition: all .3s ease-in-out;
}

.show-cart:before {
	content: "";
	display: block;
	width: 1px;
	height: 16.8px;
	position: absolute;
	top: 50%;
	left: -20px;
	background: rgba(255, 255, 255, 0.51);
	margin-top: -8.4px;
	transform: rotate(45deg);
}

.sc_btn.scwllink i:before, .show-share-btn.uncl-share i:before, .search_btn.scwllink2 i:before {
	content: "\f00d";
}

.sc_btn.scwllink .show-cart_count {
	transform: scale(0);
}

.header-btn {
	float: right;
	position: relative;
	color: #292929;
	font-size: 11px;
	font-weight: 700;
	width: 180px;
	height: 70px;
	line-height: 70px;
	cursor: pointer;
	transition: all .2s ease-in-out;
}

.header-btn i {
	margin-left: 15px;
	font-size: 16px;
	color: #ffffff;
}

.header-cart_wrap {
	position: absolute;
	top: 70px;
	right: -20px;
	padding: 25px 20px 15px;
	width: 391px;
	background: #ffffff;
	opacity: 0;
	visibility: visible;
	display: none;
	border: 1px solid #eeeeee;
	border-top: none;
}

.vis-cart {
	opacity: 1;
	visibility: visible;
	right: -1px;
}

.header-cart_title {
	font-size: 14px;
	font-weight: 600;
	color: #292929;
	padding: 0 0 20px 0;
	text-align: left;
	margin-bottom: 10px;
	border-bottom: 1px solid #eeeeee;
}

.header-cart_wrap_container {
	max-height: 220px;
	float: left;
	width: 100%;
	overflow: auto;
	padding-right: 10px;
}

.header-cart_wrap_total {
	padding: 18px 20px 12px;
	text-align: left;
	margin-top: 10px;
	background: #f7f7f7;
}

.header-cart_wrap_total_item {
	color: #292929;
	font-size: 14px;
	font-weight: 700;
}

.header-cart_wrap_total_item span, .header-cart_title span {
	float: right;
}

.header-cart_wrap_total_item span {
	font-size: 16px;
	position: relative;
	top: -2px;
}

.header-cart_title span {
	font-size: 12px;
	font-weight: 600;
	position: relative;
	top: 2px;
	color: #222222;
}

.box-widget-content .widget-posts ol {
	counter-reset: my-awesome-counter;
	padding: 0 10px 0 20px;
}

.box-widget-content .widget-posts li {
	position: relative;
	counter-increment: my-awesome-counter;
	border-bottom: 1px solid #eeeeee;
	padding: 10px 0;
}

.box-widget-content .widget-posts li:before {
	content: counter(my-awesome-counter);
	font-size: 10px;
	font-weight: 600;
	position: absolute;
	left: -20px;
	top: 36px;
}

.box-widget-content .widget-posts li:last-child {
	margin-bottom: 0;
	border-bottom: none;
}

.box-widget-content .widget-posts-img, .cart-details_header .widget-posts-img {
	float: left;
	width: 30%;
}

.box-widget-content .widget-posts-img img, .cart-details_header .widget-posts-img img {
	border-radius: 2px;
}

.box-widget-content .widget-posts-img:hover {
	opacity: 0.6;
}

.box-widget-content .widget-posts-descr {
	float: left;
	width: 70%;
	padding: 0 30px 0 20px;
	text-align: left;
	position: relative;
}

.box-widget-content .widget-posts-descr a {
	color: #444;
	font-weight: 700;
	font-size: 13px;
}

.widget-posts-descr_calc {
	width: 100%;
	font-weight: 700;
	color: #000000;
	padding-top: 3px;
	font-size: 11px;
}

.widget-posts-descr_calc span {
	padding: 0 4px;
}

.clear-cart_button {
	cursor: pointer;
	border-radius: 100%;
	text-align: center;
	position: absolute;
	right: 6px;
	top: 10px;
	font-weight: bold;
}

.header-cart_wrap_footer {
	padding-top: 15px;
}

.header-cart_wrap_footer:before {
	content: "";
	display: block;
	width: 1px;
	height: 14px;
	position: absolute;
	top: 34px;
	left: 50%;
	background: #cccccc;
	margin-top: -7px;
}

.header-cart_wrap_footer a {
	width: 45%;
	float: left;
	padding: 12px 0;
	color: #ffffff;
	background: #292929;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 10px;
	transition: all .2s ease-in-out;
}

.header-cart_wrap_footer a:last-child {
	float: right;
}

.header-cart_wrap_footer a:hover {
	color: #ffffff;
}

.progress-bar-wrap {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: 2px;
	z-index: 123;
}

.progress-bar {
	position: relative;
	height: 100%;
	width: 0%;
	z-index: 2;
	top: 0;
	transition: all .2s ease-in-out;
}

.show-reg-form {
	float: right;
	color: rgba(255, 255, 255, 0.8);
	font-weight: 500;
	font-size: 10px;
	text-transform: uppercase;
	margin-right: 20px;
	letter-spacing: 1px;
	cursor: pointer;
}

.show-reg-form i {
	margin-right: 10px;
}

.show-reg-form:hover i {
	color: #ffffff;
}

.header-search-wrap {
	position: absolute;
	top: 100%;
	right: 180px;
	width: 350px;
	padding: 15px;
	background: #ffffff;
	border: 1px solid #eeeeee;
	border-top: none;
	box-shadow: 0 13px 20px rgb(58 87 135 / 5%);
	transition: all .3s ease-in-out;
	opacity: 0;
	visibility: hidden;
	margin-top: 10px;
}

.vis-search {
	opacity: 1;
	visibility: visible;
	margin-top: 0;
}

.header-search-wrap .widget-inner {
	margin: 0;
}

/* ------share------------------------------------------------------------ */
.share-wrapper {
	position: absolute;
	top: 100%;
	right: 180px;
	width: 140px;
	background: #222222;
	z-index: 2;
	overflow: hidden;
	transition: all .2s ease-in-out;
	opacity: 0;
	visibility: hidden;
	margin-top: 20px;
}

.share-wrapper_vis {
	margin-top: 0;
	opacity: 1;
	visibility: visible;
}

.share-container {
	overflow: hidden;
}

.share-icon, .share-icon:after, .close-share-btn i {
	transition: all 100ms linear;
}

.share-icon:hover {
	background: #3C3C3C;
	color: #ffffff;
}

.share-icon {
	width: 70px;
	height: 70px;
	line-height: 70px;
	float: left;
	position: relative;
	font-size: 10px;
	color: #ffffff;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	border-right: 1px solid rgba(255, 255, 255, 0.1);
	box-sizing: border-box;
}

.share-icon:before {
	font-family: Font Awesome\ 5 Brands;
}

.share-icon-digg:before {
	content: "\f1a6";
}

.share-icon-foursquare:before {
	content: "\f180";
}

.share-icon-rss:before {
	content: "\f09e";
}

.share-icon-facebook:before {
	content: "\f39e";
}

.share-icon-twitter:before {
	content: "\f099";
}

.share-icon-tumblr:before {
	content: "\f173";
}

.share-icon-linkedin:before {
	content: "\f0e1";
}

.share-icon-pinterest:before {
	content: "\f231";
}

.share-icon-stumbleupon:before {
	content: "\f1a4";
}

.close-share-btn {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 70px;
	height: 70px;
	line-height: 70px;
	font-size: 10px;
	background: #3C3C3C;
	z-index: 10;
	cursor: pointer;
}

/*------ navigation  ------------------------------------------------*/
.nav-holder {
	float: right;
	position: relative;
	opacity: 1;
	top: 17px;
	visibility: visible;
	z-index: 20;
}

.nav-holder nav {
	position: relative;
	float: right;
}

.nav-holder nav li {
	float: left;
	position: relative;
	margin-right: 6px;
	height: 50px;
}

.nav-holder nav li ul {
	margin: 30px 0 0 0;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	min-width: 150px;
	top: 53px;
	left: 0;
	z-index: 1;
	padding: 10px 0;
	background: #292929;
	transition: all .2s ease-in-out;
}

.nav-holder nav li:hover>ul {
	opacity: 1;
	visibility: visible;
	margin: 0;
}

.nav-holder nav li ul li ul {
	top: -10px;
	left: 100%;
	margin-left: 25px;
	margin-top: 0;
	max-width: 150px;
}

.nav-holder nav li ul li:hover>ul {
	opacity: 1;
	visibility: visible;
	margin-right: 0px;
}

.nav-holder nav li ul li {
	width: 100%;
	float: left;
	height: auto;
	position: relative;
}

.nav-holder nav li a {
	float: left;
	padding: 5px 11px;
	color: #292929;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	line-height: 25px;
	transition: all 100ms linear;
	position: relative;
}

.nav-holder nav li a:hover {
	color: #0089b3
}

.nav-holder nav li a.act-link {
	color: #0089b3
}

.nav-holder nav li a.act-link i {
	color: #292929
}

.nav-holder nav li a i {
	padding-left: 10px;
	transition: all 200ms linear;
}

.nav-holder nav li a:hover i {
	transform: rotateX(180deg);
}

.nav-holder nav li ul a {
	float: left;
	width: 100%;
	text-align: left;
	padding: 2px 15px;
	font-size: 11px;
	color: #ffffff;
}

.nav-holder nav li ul a.act-link {
	color: #0089b3
}

.dark-header .nav-holder nav li ul a {
	color: #000000;
}


nav li ul a:before, nav li ul a:after {
	display: none;
}

/*------  Section ------------------------------------------------------*/
section, .sect_div {
	float: left;
	width: 100%;
	position: relative;
	padding: 90px 0;
	z-index: 10;
	overflow: hidden;
}

section.small-top_padding, .sect_div.small-top_padding {
	padding-top: 50px;
}

section.small-padding .card-item {
	margin-bottom: 0;
}

section.small-padding, .sect_div.small-padding {
	padding: 60px 0;
}

section.paralax-section {
	padding: 200px 0;
}

section.paralax-section.small-padding {
	padding: 40px 0;
}

section.paralax-section .overlay {
	opacity: 0.4;
}

section.paralax-section .bg {
	height: 130%;
	top: -5%;
}

.no-padding, .sect_div.no-padding {
	padding: 0 !important;
}

.hidden-section {
	overflow: hidden;
}

.gray-bg {
	background: #F5F5F5;
}

.align-text {
	text-align: left;
}

.section-title {
	float: left;
	width: 100%;
	position: relative;
	padding: 30px 0;
}

.ll-t {
	text-align: left;
	float: left;
}

.par-dec {
	position: absolute;
	top: 0;
	left: -2px;
	width: 5px;
	height: 100px;
}

.par-wrap {
	position: relative;
	opacity: 0.8;
	box-shadow: 0 11px 52px -4px #000000;
}

.section-title h2 {
	font-size: 24px;
	padding: 10px 0;
	font-weight: 700;
	letter-spacing: 2px;
	color: #292929;
	text-transform: uppercase;
	width: 100%;
	float: left;
	position: relative;
}

.lt-t h2 {
	font-size: 24px;
	letter-spacing: 1px;
}

.section-title h3 {
	float: left;
	margin-top: 10px;
	letter-spacing: 1px;
	font-weight: 600;
	color: #999999;
	line-height: 22px;
	font-size: 12px;
}

.section-title.align-text h2:before, .section-title h2:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 30px;
	height: 3px;
}

.section-title h4 {
	font-size: 16px;
	font-weight: 600;
	color: #0089b3;
}

.section-title.align-text h2:before {
	margin-left: 0;
}

.section-title h2:before {
	left: 50%;
	margin-left: -15px;
}

.darkbg_2 .section-title h2 {
	color: #ffffff;
}

.parallax-inner {
	float: left;
	width: 100%;
	padding: 110px 0;
	overflow: hidden;
	position: relative;
}

.parallax-inner.page-title-wrap {
	padding: 120px 0 50px;
}

.page-title-wrap:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 1;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 80%);
}

.page-title {
	float: left;
	width: 100%;
	position: relative;
}

.page-title h3 {
	float: left;
	width: 100%;
	font-weight: 800;
	color: #ffffff;
	text-transform: uppercase;
	text-align: left;
	font-size: 34px;
	padding: 0 0 200px;
	position: relative;
}

.page-title h3:before {
	content: '';
	position: absolute;
	left: 0;
	height: 4px;
	width: 40px;
	top: -20px;
	z-index: 2;
}

.page-title h3:after {
	content: '';
	position: absolute;
	left: 40px;
	height: 1px;
	width: 80px;
	top: -17px;
	z-index: 1;
	background: rgba(255, 255, 255, 0.5);
}

.page-title p {
	color: rgba(255, 255, 255, 0.9);
	max-width: 450px;
	font-size: 11px;
}

.st-text {
	margin-top: 50px;
	padding-bottom: 46px;
	border-bottom: 1px solid #dddddd;
}

.st-text:before {
	content: '';
	position: absolute;
	right: 0;
	bottom: -1px;
	width: 50px;
	height: 1px;
}

.parallax-inner.smpar-pad {
	padding: 50px 0;
}

.parallax-inner .section-title h2 {
	color: #ffffff;
}

.parallax-inner .bg, .hero-wrap_custom .bg {
	height: 120%;
	top: -10%;
}

.parallax-wrap {
	float: left;
	width: 100%;
	position: relative;
	z-index: 10;
}

.pw_dec {
	position: absolute;
	right: 60px;
	width: 220px;
	height: 1px;
	bottom: 24px;
	background: rgba(255, 255, 255, 0.2);
	z-index: 5;
}

.hero-scroll-down-notifer {
	position: absolute;
	z-index: 10;
	right: 0;
	bottom: 10px;
}

.hero-scroll-down-notifer i {
	position: absolute;
	bottom: -40px;
	left: 0;
	width: 100%;
	color: #ffffff;
	font-weight: 100;
}

.scroll-down-wrap {
	float: left;
	position: relative;
}

.scroll-down-wrap span {
	float: left;
	margin-left: 20px;
	position: relative;
	top: 6px;
	font-weight: 500;
	font-size: 10px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #ffffff;
	z-index: 10;
}

.mousey {
	float: left;
	width: 20px;
	height: 30px;
	border-radius: 6px;
	padding: 0 6px;
	border: 1px solid rgba(255, 255, 255, 0.4);
	box-sizing: border-box;
	position: relative;
	z-index: 10;
}

.mousey:after {
	content: '';
	position: absolute;
	bottom: 0;
	width: 1px;
	height: 8px;
	left: 50%;
	background: rgba(255, 255, 255, 0.4);
}

.scroller {
	position: relative;
	left: 50%;
	top: 6px;
	margin-left: -2px;
	width: 5px;
	height: 5px;
	background: #ffffff;
	border-radius: 4px;
	animation-name: scroll;
	animation-duration: 2.2s;
	animation-timing-function: cubic-bezier(.15, .41, .69, .94);
	animation-iteration-count: infinite;
}

@keyframes scroll {
	0% {
		opacity: 0;
	}

	10% {
		transform: translateY(0);
		opacity: 1;
	}

	100% {
		transform: translateY(50px);
		opacity: 0;
	}
}

.hero-dec-line {
	position: absolute;
	bottom: 40px;
	left: 820px;
	height: 1px;
	right: 400px;
	background: rgba(255, 255, 255, 0.2);
	z-index: 20;
}

.fondoderecha {
	position: absolute;
	left: 50px;
	top: 0;
	width: 600px;
	height: 600px;
	background: url(../images/fondos/construccion.png) no-repeat bottom right;
	opacity: 0.1;
}

.fondoderecha2 {
	position: absolute;
	left: 50px;
	top: 0;
	width: 600px;
	height: 600px;
	background: url(../images/fondos/construccion9.png) no-repeat bottom right;
	opacity: 0.4
}

.fondoderecha3 {
	position: absolute;
	left: 50px;
	top: 0;
	width: 600px;
	height: 600px;
	background: url(../images/fondos/construccion19.png) no-repeat bottom right;
	opacity: 0.4
}

.fondoderecha4 {
	position: absolute;
	left: 50px;
	top: 0;
	width: 600px;
	height: 600px;
	background: url(../images/fondos/construccion14.png) no-repeat bottom right;
	opacity: 0.2
}

.fondoderecha5 {
	position: absolute;
	left: 50px;
	top: 0;
	width: 600px;
	height: 600px;
	background: url(../images/fondos/construccion10.png) no-repeat bottom right;
	opacity: 0.2
}

.fondoderecha.hex-bg2,
.fondoderecha2.hex-bg2,
.fondoderecha3.hex-bg2,
.fondoderecha4.hex-bg2,
.fondoderecha5.hex-bg2 {
	left: auto;
	top: auto;
	right: 0;
	bottom: -10px;
}

.fondoizquierda {
	position: absolute;
	right: 50px;
	top: 0;
	width: 600px;
	height: 600px;
	background: url(../images/fondos/construccion4.png) no-repeat bottom right;
	opacity: 0.3;
	z-index: 500;
}

.fondoizquierda2 {
	position: absolute;
	right: 50px;
	top: 0;
	width: 600px;
	height: 600px;
	background: url(../images/fondos/construccion8.png) no-repeat bottom right;
	opacity: 0.3;
}

.fondoizquierda3 {
	position: absolute;
	right: 50px;
	top: 0;
	width: 600px;
	height: 600px;
	background: url(../images/fondos/construccion22.png) no-repeat bottom right;
	opacity: 0.3;
}

.fondoizquierda4 {
	position: absolute;
	right: 0;
	top: 0;
	width: 400px;
	height: 100px;
	background: url(../images/fondos/contruccion24.png) no-repeat bottom right;
	opacity: 0.1;
}

.fondoizquierda.hex-bg3,
.fondoizquierda2.hex-bg3,
.fondoizquierda3.hex-bg3,
.fondoizquierda4.hex-bg3 {
	right: auto;
	top: auto;
	left: -10px;
	bottom: 10px;
}

@media only screen and (max-width: 630px) {

	.fondoderecha,
	.fondoderecha2,
	.fondoderecha3,
	.fondoderecha4 {
		display: none;
	}

	.fondoizquierda,
	.fondoizquierda2,
	.fondoizquierda3,
	.fondoizquierda4 {
		display: none;
	}
}

.boxed-container {
	background: #ffffff;
	box-shadow: 5px 13px 20px rgb(58 87 135 / 5%);
}

.boxed-container:before {
	content: '';
	position: absolute;
	right: -20px;
	top: -20px;
	left: 30%;
	bottom: 150px;
	background: #333333;
}

.boxed-container-title {
	float: left;
	width: 40%;
	padding: 80px 45px;
	position: relative;
	overflow: hidden;
}

.boxed-container-title h2 {
	text-align: left;
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;
	padding-bottom: 20px;
	position: relative;
}

.boxed-container-title p {
	color: #ffffff;
	text-align: justify;
}

.boxed-container-title h4 {
	text-align: left;
	font-weight: 600;
	font-size: 10px;
	text-transform: uppercase;
	padding-bottom: 10px;
}

.bic_dec {
	position: absolute;
	right: 30px;
	bottom: -10px;
	color: rgba(255, 255, 255, 0.4);
	font-size: 90px;
}

.boxed-container-wrap {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	overflow: hidden;
	width: 60%;
}

section.paralax-section .boxed-container-wrap .bg {
	height: 100%;
	top: 0;
	transform: scale(1.0);
	transition: all 4000ms cubic-bezier(.19, 1, .22, 1) 0ms;
}

section.paralax-section .boxed-container-wrap:hover .bg {
	transform: scale(1.2);
}

.bg_wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	bottom: 0;
	overflow: hidden;
}

.sm-bg-par .bg_wrap {
	bottom: 10%;
}

.promo-video {
	position: absolute;
	left: 0;
	width: 100%;
	z-index: 5;
	top: 50%;
	transform: translateY(-50%);
}

.promo-video h4 {
	color: #ffffff;
	font-weight: 600;
	margin-top: 20px;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.big_prom {
	display: inline-block;
	position: relative;
	width: 50px;
	height: 50px;
	line-height: 50px;
}

.big_prom span {
	position: relative;
	z-index: 2;
	float: left;
	width: 50px;
	height: 50px;
	line-height: 50px;
	border-radius: 50%;
	transition: all 0.2s ease-in-out;
	transform: scale(1.0);
}

.big_prom:after {
	content: '';
	position: absolute;
	left: -11px;
	top: -11px;
	right: -11px;
	bottom: -11px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 50%;
	box-sizing: border-box;
	transition: all 0.2s ease-in-out;
	background: rgba(255, 255, 255, 0.2);
	z-index: -1;
	transform: scale(1.0);
}

.big_prom:hover:after {
	transform: scale(0);
}

.big_prom:hover span {
	transform: scale(1.3);
}

.wide_section-title {
	margin: 40px 0 90px;
}

.wide_section-title h3 {
	text-transform: uppercase;
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;
}

.wide_section-title h5 {
	font-size: 16px;
	text-align: left;
	font-weight: 600;
}

.wide_section-title p {
	color: #ffffff;
	text-align: justify;
	margin-top: 30px;
}

.wst_dec {
	margin-top: 10px;
	height: 1px;
	background: rgba(255, 255, 255, 0.5)
}

.wst_dec:before {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	width: 50px;
	height: 1px;
	z-index: 2;
}

/*------ zoom imagen - ------------------------------------------------*/
.img-magnifier-container {
	position: relative;
}

.img-magnifier-glass {
	position: absolute;
	border: 1px solid #0089b3;
	cursor: none;
	width: 500px;
	height: 300px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
	z-index: 10;
}

@media only screen and (max-width: 630px) {
	.img-magnifier-glass {
		display: none;
	}
}

/*------ subcribe - ------------------------------------------------*/
.subcribe-form {
	margin-top: 46px;
}

.subcribe-form input.enteremail {
	background: #ffffff;
	padding: 0 20px;
	height: 50px;
	line-height: 50px;
	border: none;
	position: relative;
	z-index: 1;
	color: #000000;
	width: 100%;
	outline: none;
	float: left;
	box-sizing: border-box;
	border-radius: 4px;
	box-shadow: 0px 0px 0px 6px rgba(255, 255, 255, 0.4);
}

.subcribe-form .subscribe-button {
	position: absolute;
	right: 0;
	top: 0;
	width: 30%;
	z-index: 2;
	height: 50px;
	line-height: 50px;
	font-size: 11px;
	color: #ffffff;
	font-weight: 600;
	background: #333333;
	outline: none;
	border: none;
	cursor: pointer;
	border-radius: 0 4px 4px 0;
	text-transform: uppercase;
	-webkit-appearance: none;
	font-family: 'Poppins', sans-serif;
}

.subcribe-form .subscribe-button:hover {
	background: #0089b3;
	color: #ffffff;
}

.subscribe-message {
	position: absolute;
	bottom: -30px;
	left: 0;
	width: 100%;
	text-align: left;
	color: #ffffff;
	font-size: 11px;
	font-weight: 400;
}

/*------ Footer ------------------------------------------------------*/
.height-emulator {
	z-index: 1;
}

footer.main-footer {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 2;
	background: #292929;
}

.footer-bottom {
	margin: 0 0 20px;
	padding-top: 40px;
	border-top: 1px dotted rgba(255, 255, 255, 0.1);
}

.footer-social li, .footer-social, .footer-social ul {
	float: left;
}

.footer-social li {
	margin-right: 5px;
}

.footer-social li a {
	width: 36px;
	height: 36px;
	line-height: 36px;
	float: left;
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: #333333;
	transition: all 200ms linear;
}

.footer-social li a:hover {
	background: #0089b3;
	color: #ffffff;
}

.footer-social-title {
	float: left;
	color: #ffffff;
	position: relative;
	margin-right: 30px;
	top: 10px;
	font-weight: 500;
}

.footer-inner {
	padding: 90px 0 20px;
	overflow: hidden;
	z-index: 2;
}

.footer-bg {
	position: absolute;
	left: 0;
	width: 500px;
	height: 400px;
	bottom: 20px;
	z-index: 1;
	opacity: 0.6;
	background: url(../images/map-mexico.png) center no-repeat;
}

@media only screen and (max-width: 630px) {
	.footer-bg {
		display: none;
	}
}

.footer-bg-pin {
	position: absolute;
	width: 6px;
	height: 6px;
	border-radius: 100%;
}

.footer-bg-pin:first-child {
	left: 300px;
	top: 280px
}

.footer-bg-pin:nth-child(2) {
	left: 480px;
	top: 260px
}

.footer-bg-pin:nth-child(3) {
	left: 290px;
	top: 320px
}

.footer-bg-pin:nth-child(4) {
	left: 490px;
	top: 300px
}

.footer-bg-pin:nth-child(5) {
	left: 270px;
	top: 300px
}

.footer-bg-pin:nth-child(6) {
	left: 210px;
	top: 280px
}

.footer-bg-pin:nth-child(7) {
	left: 325px;
	top: 220px
}

.footer-bg-pin:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: #ffffff;
	border-radius: 100%;
	z-index: -1;
	opacity: 0.4;
}

@keyframes pulse {
	100% {
		transform: scale(22.1);
		opacity: 0;
	}
}

.footer-bg-pin-vis:before {
	animation: pulse 2.0s infinite ease-in-out;
}

.fw_hours {
	float: left;
	margin-top: 12px;
}

.fw_hours span {
	float: left;
	width: 100%;
	margin: 0 0 10px 0;
	text-align: left;
	font-weight: 500;
	font-size: 12px;
	color: #ffffff;
}

.fw_hours span strong {
	color: #ffffff;
	min-width: 140px;
	float: left;
}

.footer-info {
	float: left;
	width: 100%;
	padding-bottom: 20px;
}

.footer-info h4 {
	float: left;
	width: 100%;
	position: relative;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-align: left;
	color: #ffffff;
	font-weight: 600;
	margin-bottom: 45px;
	padding-bottom: 10px;
}

.footer-info h4:before {
	content: '';
	position: absolute;
	bottom: -9px;
	left: 0;
	width: 30px;
	height: 4px;
}

.footer-info h4:after {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 0;
	width: 100%;
	height: 1px;
	background: rgba(255, 255, 255, 0.1)
}

.footer-info p {
	color: #ffffff;
	font-weight: 400;
	font-size: 11px;
}

.footer_link {
	float: left;
	margin-top: 10px;
	font-weight: 600;
	border-bottom: 1px dotted rgba(255, 255, 255, 0.3);
	padding-bottom: 4px;
}

.footer_link i {
	margin-left: 12px;
	font-size: 10px;
}

.footer_link:hover, .footer_link i {
	color: #ffffff;
}

.footer-contacts li {
	float: left;
	width: 100%;
	padding: 8px 0;

	font-size: 12px;
	font-weight: 400;
}

.footer-contacts li a {
	float: left;
	text-align: left;
	color: #ffffff;
}

.footer-contacts li span {
	float: left;
	text-align: left;
	color: #999;
	width: 80px;
}

.footer-contacts li:hover span {
	color: #ffffff;
}

.footer-contacts li i {
	float: left;
	padding-right: 12px;
	position: relative;
	top: 2px;
}

.dl-footer_btn {
	float: right;
	position: relative;
	background: #454545;
	color: #ffffff;
	padding: 18px 50px 18px 50px;
	font-weight: 500;
	top: -2px;
	font-size: 10px;
	text-transform: uppercase;
	margin-left: 24px;
}

.dl-footer_btn:before {
	font-family: Font Awesome\ 5 Pro;
	content: "\f0dd";
	position: absolute;
	color: #ffffff;
	font-weight: 600;
	top: 50%;
	height: 10px;
	line-height: 10px;
	margin-top: -6px;
	right: 20px;
	transition: all 200ms linear;
	transform: rotate(0deg);
}


.dl-footer_btn i {
	width: 30px;
	height: 30px;
	line-height: 30px;
	background: #292929;
	color: #ffffff;
	position: absolute;
	top: 12px;
	left: 10px;
}

.dl-footer_btn:hover {
	background: #292929;
	color: #0089b3;
	text-decoration: none;
}

.dl-footer_btn:hover:before {
	color: #0089b3;
	transform: rotate(-90deg)
}


.sub-footer {
	background: #222222;
	height: 80px;
	line-height: 80px;
	margin-top: 20px;
	z-index: 3;
}

.copy-right {
	float: left;
	font-size: 10px;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.61);
	font-weight: 500;
}

.subfooter-nav {
	float: right;
	margin-right: 50px;
	position: relative;
}

.subfooter-nav:before {
	content: '';
	position: absolute;
	right: -22px;
	top: 50%;
	height: 10px;
	margin-top: -5px;
	width: 1px;
	background: rgba(255, 255, 255, 0.3);
}

.subfooter-nav li {
	margin-left: 15px;
}

.subfooter-nav li a {
	font-weight: 500;
	font-size: 12px;
}

.subfooter-nav li a:hover {
	color: #ffffff;
	text-decoration: none;
}

.subfooter-nav li {
	float: left;
}

.footer-serv-holder {
	float: left;
	width: 100%;
}

.footer-serv-holder ul li {
	float: left;
	text-align: justify;
	width: 100%;
	padding: 0 0 15px 20px;
	position: relative;
}

.footer-serv-holder ul li:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -7px;
	width: 5px;
	height: 1px;
}

.footer-serv-holder li a {
	text-align: left;
	float: left;
	color: #ffffff;
	font-size: 12px;
	font-weight: 500;
}

.to-top {
	float: right;
	cursor: pointer;
	overflow: hidden;
	position: relative;
	width: 40px;
	height: 40px;
	line-height: 40px;
	top: 20px;
	background: #292929;
	border: 1px solid rgba(255, 255, 255, 0.1);
	transition: all 200ms linear;
}

.to-top:hover {
	color: #ffffff;
}

/*------Home ------------------------------------------------*/
.hero-wrap {
	height: 300px;
}

.hero-wrap_custom {
	height: auto;
	padding: 100px 0;
}

.hero-wrap_custom.hero-wrap_custom2 {
	padding: 200px 0 200px;
}

.hero-wrap-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.hero-wrap_custom .hero-wrap-container {
	position: relative;
	float: left;
	height: auto;
}

.hero-wrap-container .overlay, .hero-wrap_custom .overlay {
	opacity: 0.5;
}

.hero-wrap-container .hero-scroll-down-notifer, .hero-wrap_custom .hero-scroll-down-notifer {
	right: auto;
	bottom: -100px;
	left: 0;
}

.hero-wrap_custom .hero-scroll-down-notifer {
	bottom: -20px
}

.hero-wrap_custom.hero-wrap_custom2 .hero-scroll-down-notifer {
	bottom: -70px
}

.lg-actions .lg-next, .lg-actions .lg-prev {
	color: #292929;
	margin-top: -20px;
	width: 40px;
	height: 40px;
	line-height: 40px;
}

.hero_promo-wrap {
	position: absolute;
	top: 90%;
	right: 10px;
	width: 200px;
	z-index: 20;
	height: 50px;
	margin-top: -15px;
}

.hero_promo-title p {
	float: left;
	font-size: 10px;
	text-transform: uppercase;
	color: #ffffff;
	position: relative;
	margin-left: 20px;
	top: 15px;
	text-align: left;
	font-weight: 600;
}

.hp_popup {
	float: left;
	width: 50px;
	height: 50px;
	line-height: 50px;
	box-shadow: 0px 0px 0px 7px rgba(255, 255, 255, 0.1);
	border-radius: 100%;
	background: rgba(255, 255, 255, 0.5);
	color: #000000;
	z-index: 20;
	font-size: 11px;
	cursor: pointer;
	transition: all 0.2s ease-in-out;
}

.hp_popup:hover {
	box-shadow: 0px 0px 0px 17px rgba(255, 255, 255, 0.2);
}

.hero-dec_top, .hero-dec_bottom {
	position: absolute;
	right: 40px;
	width: 80px;
	height: 80px;
	border-right: 1px solid rgba(255, 255, 255, 0.4);
	z-index: 10;
}

.hero-dec_bottom {
	bottom: 50px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}

.hero-dec_top {
	top: 50px;
	border-top: 1px solid rgba(255, 255, 255, 0.4);
}

.slideshow-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.slideshow-container .bg {
	transform: scale(1);
	transition: all 8.5s linear;
}

.slideshow-container_wrap .swiper-slide-active .bg, .slideshow-container_wrap .swiper-slide-duplicate-active .bg {
	transform: scale(1.1);
}

.slideshow-item {
	position: relative;
	float: left;
	width: 100%;
	height: 100%;
}

.hero-wrap-title {
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
}

.hero-wrap-title_item h2 {
	font-size: 45px;
	text-align: left;
	text-transform: uppercase;
	color: #ffffff;
	font-weight: bold;
	line-height: 60px;
	padding-top: 10px;
}

.hero-wrap-title_item h4 {
	font-size: 11px;
	text-align: left;
	float: left;
	max-width: 550px;
	padding-top: 10px;
	color: #ffffff;
	font-weight: 500;
}

.hero-wrap-title_item h3 {
	text-transform: uppercase;
	font-size: 14px;
	text-align: left;
	font-weight: 700;
	position: relative;
}

.hero-wrap-title_item h3:before {
	content: '';
	position: absolute;
	left: 0;
	top: -30px;
	width: 40px;
	height: 4px;
	z-index: 2;
}

.hero-wrap-title_item h3:after {
	content: '';
	position: absolute;
	left: 40px;
	height: 1px;
	width: 80px;
	top: -27px;
	z-index: 1;
	background: rgba(255, 255, 255, 0.5);
}

.fs-slider-item {
	overflow: hidden;
}

.slider-progress-bar {
	position: absolute;
	top: 40px;
	right: 60px;
	z-index: 20;
}

.play-pause_slider {
	position: absolute;
	right: 60px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	background: rgba(0, 0, 0, 0.7);
	bottom: 28px;
	cursor: pointer;
	z-index: 10;
	color: #ffffff;
	font-size: 10px;
	border-radius: 2px;
}

.hsc_pp.auto_actslider i:before {
	content: "\f04c";
}

.progress-indicator svg {
	position: relative;
	top: -5px;
	height: 50px;
	transform: rotate(-90deg);
	width: 50px;
	z-index: 20;
}

.progress-bar__background {
	fill: none;
	stroke: rgba(255, 255, 255, 0.4);
	stroke-width: 1.0;
}

.progress-bar__progress {
	fill: none;
	stroke: #ffffff;
	stroke-dasharray: 100 100;
	stroke-dashoffset: 100;
	stroke-linecap: round;
	stroke-width: 1.8;
}

.circ {
	transform: scale(1.0) rotate(-90deg);
	transition: transform .3s ease;
	z-index: 3;
	position: relative;
}

.circ circle {
	stroke-dasharray: 440px;
}

.circ1 {
	stroke-dashoffset: 440px;
}

.slider-progress-bar.act-slider .circ1 {
	stroke-dashoffset: 220px;
	transition: linear 6s stroke-dashoffset;
}

.hero-slider-pagination {
	position: absolute;
	bottom: 40px;
	right: 120px;
	z-index: 20;
}

.hero-slider-pagination.hsp2 {
	right: 40px;
}

.hwt_dec {
	position: absolute;
	left: -30px;
	width: 370px;
	top: 60px;
	bottom: -30px;
	background: rgba(0, 0, 0, 0.4);
	z-index: -1
}

.hwt_dec:before {
	content: '';
	position: absolute;
	bottom: -2px;
	right: -2px;
	width: 80px;
	height: 80px;
	border-right: 1px solid rgba(255, 255, 255, 0.4);
	border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}

/*------about------------------------------------------------*/
.det-list {
	background: #292929;
	margin-top: 22px;
	margin-bottom: 12px;
	padding: 45px 20px 40px;
}

.det-list:before {
	font-family: Font Awesome\ 5 Pro;
	content: '\f5ae';
	position: absolute;
	right: 20px;
	bottom: 0;
	font-size: 74px;
	color: rgba(255, 255, 255, 0.1);
	z-index: 1;
}

.det-list:after {
	content: '';
	position: absolute;
	right: 30px;
	top: -3px;
	width: 60px;
	height: 6px;
	z-index: 2;
}

.det-list ul {
	float: left;
	width: 50%;
	padding: 0 20px;
	position: relative;
	z-index: 2;
}

.det-list li {
	padding-left: 30px;
	position: relative;
	margin-bottom: 12px;
	text-align: left;
	font-size: 11px;
	color: #ffffff;
	font-weight: 500;
}

.det-list li span, .det-list li a {
	font-weight: 700;
}

.det-list li:before {
	font-family: Font Awesome\ 5 Pro;
	content: '\f0da';
	position: absolute;
	top: 3px;
	left: 0;
	font-weight: bold;
}

.det-list li:last-child {
	margin-bottom: 0;
}

.con-heading {
	float: left;
	width: 100%;
	text-align: justify;
	font-size: 14px;
	font-weight: 600;
	color: #292929;
	padding-bottom: 20px;
	position: relative;
}

.con-heading:before {
	content: '';
	position: absolute;
	bottom: 10px;
	left: 0;
	width: 30px;
	height: 3px;
}

.det-box {
	float: left;
	width: 100%;
	margin-bottom: 30px;
	position: relative;
	overflow: hidden;
}

.det-box-media {
	position: relative;
	display: block;
	z-index: 8;
}

.det-box-media:hover {
	color: #ffffff;
}

.promo-link {
	position: absolute;
	bottom: 40px;
	left: 50px;
	padding: 16px 45px 16px 70px;
	color: #666666;
	font-size: 11px;
	font-weight: 700;
	box-shadow: 0px 0px 0px 6px rgba(255, 255, 255, 0.3);
	z-index: 10;
	background: #ffffff;
}

.promo-link i {
	position: absolute;
	left: 10px;
	top: 50%;
	height: 34px;
	width: 34px;
	line-height: 34px;
	margin-top: -17px;
	color: #ffffff;
	box-shadow: 0 9px 26px rgba(58, 87, 135, 0.25);
}

.promo-link:hover i {
	background: #292929;
	color: #ffffff;
}

.det-box-media:after {
	content: '';
	position: absolute;
	left: 30px;
	bottom: -3px;
	width: 60px;
	height: 6px;
	z-index: 2;
	transition: all .3s ease-in-out;
}

.det-box-media:hover:after {
	width: 110px;
}

.det-box-media:before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	background: #292929;
	opacity: 0;
	z-index: 2;
	transition: all .3s ease-in-out;
}

.det-box-media span {
	z-index: 5;
	position: absolute;
	left: 50%;
	top: 40%;
	opacity: 0;
	height: 46px;
	line-height: 46px;
	font-weight: 600;
	text-transform: uppercase;
	font-size: 10px;
	width: 150px;
	background: #292929;
	margin: -23px 0 0 -75px;
	transition: all .3s ease-in-out;
}

.det-box-media:hover:before {
	opacity: .4;
}

.det-box-media:hover span {
	top: 50%;
	opacity: 1;
}

.det-box-ietm {
	background: #ffffff;
	padding: 25px 30px;
}

.det-box-ietm.det-box-ietm_single {
	padding: 35px 50px;
}

.det-box-ietm.det-box-ietm_single2 {
	padding: 55px 50px;
	overflow: inherit;
	z-index: 20;
}

.det-box .box-item {
	margin-bottom: 20px;
}

.det-box .box-item img {
	margin-bottom: 0;
}

.det-box h3 {
	float: left;
	color: #0089b3;
	text-align: left;
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	padding-bottom: 8px;
	width: 100%;
}

.serv-list {
	margin-bottom: 13px;
}

.serv-list li {
	float: left;
	margin-right: 10px;
	text-transform: uppercase;
	font-size: 10px;
	color: #999;
	font-weight: 600;
	position: relative;
}

.det-box-link {
	float: left;
	margin-top: 12px;
	padding: 10px 30px;
	font-size: 10px;
	background: #454545;
	position: relative;
	z-index: 2;
	text-transform: uppercase;
	font-weight: 600;
}

.det-box-link:hover {
	background: #0089b3;
	color: #ffffff;
	text-decoration: none;
}

.serv_number {
	position: absolute;
	text-align: right;
	left: 40%;
	right: 30px;
	z-index: 1;
	bottom: 34px;
	font-size: 14px;
	font-weight: 600;
}

.serv_number:before {
	content: '';
	position: absolute;
	left: 0;
	right: 50px;
	height: 1px;
	top: 50%;
	background: #eee;
	z-index: 1;
}

.serv_number:after {
	content: '';
	position: absolute;
	width: 40px;
	right: 50px;
	height: 1px;
	top: 50%;
	z-index: 2;
}

.det-box-link:hover {
	color: #ffffff;
}

/*-------------accordion---------------------------------------*/
.accordion-lite_content {
	display: none;
	margin-top: 10px;
	padding: 20px 0 15px;
}

.accordion-lite-header {
	cursor: pointer;
	text-align: left;
	font-size: 13px;
	font-weight: 600;
}

.accordion-lite-container {
	margin-bottom: 12px;
	padding: 15px 30px;
	background: #f5f5f5;
	border-radius: 4px;
}

.accordion-lite-container p {
	color: #3b4249;
}

.accordion-lite-header i {
	float: right;
	position: relative;
	top: 6px;
	font-size: 10px;
}

.accordion-lite-header.acc_open i:before {
	content: "\f068";
	color: #292929;
}

.scr_dec {
	border-bottom: 1px solid #eeeeee;
	margin-bottom: 30px;
	padding-bottom: 30px;
}

/*------ order ------------------------------------------------*/
.order-wrap {
	padding: 25px 25px 25px 40px;
	margin-top: 20px;
	overflow: hidden;
	position: relative;
	background: #454545;
}

.order-wrap:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 30%;
	bottom: 0;
	background: #333333;
}

.order-wrap:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 30%;
	width: 6px;
	height: 40px;
	margin: -20px -3px 0 0;
}

.order-wrap h4 {
	font-size: 16px;
	font-weight: 500;
	text-align: left;
	color: #ffffff;
	position: relative;
	top: 6px;
	padding-left: 50px;
}

.order-wrap h4:before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 30px;
	height: 1px;
	background: rgba(255, 255, 255, 0.4)
}

.order-wrap a.ord-link {
	float: right;
	margin-right: 40px;
	color: #ffffff;
	font-size: 10px;
	font-weight: 500;
	padding: 0 30px;
	height: 40px;
	line-height: 40px;
	position: relative;
	text-transform: uppercase
}

.order-wrap a.ord-link:hover {
	color: #ffffff;
	background-color: #333333;
	text-decoration: none;
}

/* ---------breadcrumbs--------------------------------------*/
.breadcrumbs {
	background: #ffffff;
	border-bottom: 1px solid #eeeeee;
	padding: 30px 0;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.07);
	z-index: 11;
}

.breadcrumbs-list, .breadcrumbs-list a, .breadcrumbs-list span {
	float: left;
	position: relative;
}

.breadcrumbs-list a, .breadcrumbs-list span {
	margin-right: 15px;
	padding-right: 20px;
	font-size: 10px;
	font-weight: 600;
	color: #666666;
	text-transform: uppercase;
}

.breadcrumbs-list span {
	color: #000000;
}

.breadcrumbs-list a:before {
	content: '';
	position: absolute;
	width: 6px;
	height: 2px;
	background: #ffffff;
	right: 0;
	top: 50%;
	margin-top: -1px;
}

.breadcrumbs .container:before {
	font-family: Font Awesome\ 5 Pro;
	content: "\f14c";
	position: absolute;
	right: 0;
	top: -4px;
	font-size: 22px;
	font-weight: 100;
}

/* ---------facts--------------------------------------*/
.dots {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.hero-canvas-wrap {
	position: absolute;
	left: 0;
	top: -50px;
	width: 60%;
	bottom: -90px;
	z-index: 1;
}

.about-img:before {
	content: '';
	position: absolute;
	top: -20px;
	left: -20px;
	right: 50%;
	bottom: 50px;
	z-index: 1;
}

.about-img-title {
	position: absolute;
	top: 80px;
	left: -120px;
	font-size: 11px;
	text-transform: uppercase;
	z-index: 23;
	color: rgba(255, 255, 255, 0.71);
	font-weight: 600;
	background: #2D2D32;
	padding: 15px 85px;
	letter-spacing: 15px;
}

.about-img-title.ait_2 {
	left: auto;
	right: -60px;
	color: #ffffff;
}

.about-img img {
	position: relative;
	z-index: 10;
}

.about-title h4 {
	color: #0089b3;
	font-size: 16px;
	text-align: left;
	font-weight: 600;
	text-transform: uppercase;
}

.about-img-hotifer {
	position: absolute;
	right: -60px;
	bottom: 20px;
	width: 280px;
	padding: 25px 30px;
	z-index: 11;
	border-radius: 4px;
	color: #000000;
	text-align: left;
	box-shadow: 0 5px 25px rgba(0, 0, 0, 0.2);
}

.about-img-hotifer:before {
	font-family: Font Awesome\ 5 Pro;
	content: "\f10e";
	bottom: 30px;
	right: 20px;
	position: absolute;
	color: #ffffff;
	font-size: 19px;
	font-weight: bold
}

.about-wrap p {
	text-align: justify;
}

.about-img-hotifer p {
	color: #292929;
	font-size: 13px;
	margin-bottom: 10px;
	text-align: left;
	font-weight: 600;
}

.about-title {
	margin-bottom: 50px;
}

.inline-facts {
	float: left;
	width: 25%;
	text-align: center;
	position: relative;
}

.inline-facts h6 {
	position: relative;
	margin-top: 6px;
	color: #ffffff !important;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 2px;
	text-transform: uppercase;
	padding: 10px 20px;
	display: inline-block;
	background: rgba(0, 0, 0, 0.6);
}

.bold-facts .inline-facts h6 {
	background: none;
	padding: 0;
	margin-top: 4px;
}

.inline-facts:before {
	content: '';
	position: absolute;
	left: 0;
	width: 1px;
	height: 20px;
	bottom: 10px;
	background: rgba(255, 255, 255, 0.5);
}

.inline-facts-holder .inline-facts:first-child:before, .bold-facts .inline-facts:before {
	display: none;
}

.bold-facts .inline-facts {
	background: #292929;
	border-left: 1px solid rgba(255, 255, 255, 0.1);
	box-sizing: border-box;
	padding: 30px 0 30px 80px;
	text-align: left;
}

.bold-facts .inline-facts:after {
	font-family: Font Awesome\ 5 Pro;
	content: '\f067';
	position: absolute;
	left: 44px;
	top: 42px;
	font-size: 12px;
	font-weight: 100;
	color: #ffffff;
	display: block;
}

.num {
	font-size: 38px;
	text-transform: uppercase;
	font-weight: 700;
	color: #ffffff;
}

.bold-facts .inline-facts .num {
	font-size: 26px;
}

.notifer-block {
	padding: 45px 0;
}

.notifer-block:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 30%;
	bottom: 0;
	background: #333333;
}

.notifer-block:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 30%;
	width: 6px;
	height: 40px;
	margin: -20px -3px 0 0;
}

.notifer-block h4 {
	text-align: left;
	color: #ffffff;
	font-weight: 600;
	font-size: 16px;
	position: relative;
	top: 11px;
	padding-left: 60px;
}

.notifer-block h4 span {
	position: relative;
	z-index: 3;
}

.notifer-block h4:after {
	content: '';
	position: absolute;
	top: -10px;
	bottom: -10px;
	left: -20px;
	right: 50%;
	background: #333333;
	z-index: 1;
}

.notifer-block h4:before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 30px;
	height: 1px;
	z-index: 2;
}

.nb_btn {
	float: right;
	padding: 15px 35px;
	font-size: 11px;
	font-weight: 600;
	transition: all 300ms linear;
}

.nb_btn:hover {
	background: #000000;
}

.sec-dec {
	position: absolute;
	left: 0;
	bottom: -120px;
	width: 600px;
	height: 600px;
	background: url("../images/fondos/construccion8.png") no-repeat center;
	opacity: 0.3;
}

/* --------- Skills --------------------------------------*/
.piechart-holder, .custom-skillbar-holder {
	padding-top: 20px;
}

.chart {
	position: relative;
	display: inline-block;
	width: 120px;
	height: 120px;
	border-radius: 100%;
	margin-bottom: 26px;
	text-align: center;
}

.chart canvas {
	position: absolute;
	top: 0;
	left: 0;
}

.piechart {
	position: relative;
	padding-bottom: 20px;
	width: 25%;
	float: left;
}

.percent {
	display: inline-block;
	font-size: 12px;
	line-height: 120px;
	z-index: 2;
	color: #292929;
}

.percent:after {
	content: '%';
	margin-left: 0.1em;
	font-size: .8em;
}

.angular {
	margin-top: 100px;
}

.angular .chart {
	margin-top: 0;
}

.skills-description {
	width: 200px;
	display: inline-block;
	color: #292929;
	font-size: 11px;
	font-weight: 600;
}

.skillbar-box {
	float: left;
	width: 100%;
	position: relative;
	margin: 10px 0 30px 0;
}

.skillbar-bg {
	position: relative;
	display: block;
	float: left;
	width: 100%;
	height: 10px;
	overflow: hidden;
	background: #eeeeee;
}

.custom-skillbar-title span {
	float: left;
	font-size: 12px;
	margin-top: 16px;
	padding-bottom: 6px;
	font-weight: 600;
}

.custom-skillbar {
	height: 10px;
	width: 0px;
}

.skill-bar-percent {
	float: right;
	font-size: 12px;
	margin-top: 13px;
	padding-bottom: 16px;
	font-weight: 600;
	color: #292929
}

.hex-decor {
	position: absolute;
	bottom: -10%;
	right: 0;
	width: 40%;
	height: 100%;
	background: url(../images/hex.png) no-repeat top left;
	overflow: hidden;
	z-index: -1;
	opacity: 0.1;
}

.project-progress {
	padding-right: 210px;
}

.project-progress .piechart {
	width: 100%;
}

.project-progress_total {
	position: absolute;
	top: 0;
	right: 0;
	width: 200px;
}

.gradinet-overlay {
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	background: linear-gradient(to right, rgba(34, 34, 34, 0.8) 20%, rgba(34, 34, 34, 0.5) 70%, rgba(34, 34, 34, 0) 95%);
	z-index: 2;
}

/*------announcement------------------------------------------------*/
.announcement {
	float: left;
	width: 100%;
	padding: 50px 0;
	position: relative;
}

.announcement:before {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	width: 40%;
	height: 100%;
	background: url(../images/hex.png) no-repeat bottom right;
	opacity: 0.2;
}

.announcement .btn {
	top: 10px;
	float: right;
}

.announcement h3 {
	text-align: left;
	font-size: 2.1em;
	color: #ffffff;
	font-weight: 600;
	padding-bottom: 20px;
	position: relative;
}

.announcement h3:before, .announcement h3:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 50%;
	height: 1px;
	background: rgba(255, 255, 255, 0.3);
	z-index: 1;
	margin-bottom: 8px;
}

.announcement h3:after {
	z-index: 2;
	left: auto;
	width: 50px;
	background: #ffffff;
}

.announcement h3 span {
	position: relative;
	z-index: 3;
	padding-right: 50px;
}

.announcement p {
	font-weight: 600;
	text-align: justify;
	color: #000000;
}

.dark-bg, .btn.dark-bg {
	background: #454545;
}

.btn.dark-bg i {
	background: #ffffff;
}

/*------ team ------------------------------------------------------*/
.team-slider {
	margin-top: 20px;
}

.team-slider .swiper-slide {
	padding-bottom: 15px;
}

.ts_btn_wrap {
	position: absolute;
	right: 0;
	top: 60px;
}

.ts_btn {
	float: left;
	margin-left: 4px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 4px;
	background: #292929;
	cursor: pointer;
}

.team-item {
	border: 1px solid #eeeeee;
	box-shadow: 0 13px 20px rgba(58, 87, 135, 0.05);
}

.team-item:hover {
	box-shadow: 0 13px 20px rgba(58, 87, 135, 0.0);
}

.team-content {
	padding: 25px 30px 15px;
}

.team-content h4 {
	text-align: left;
	font-size: 16px;
	color: #000000;
	font-weight: 700;
	padding-bottom: 4px;
}

.team-content h5 {
	text-transform: uppercase;
	font-size: 10px;
	color: #999;
	font-weight: 600;
	text-align: left;
	padding-bottom: 10px;
}

.team-footer {
	border-top: 1px solid #eeeeee;
	padding-left: 30px;
}

.team-social {
	float: right;
}

.team-social li {
	float: left;
}

.team-social li a {
	float: left;
	width: 45px;
	height: 45px;
	line-height: 45px;
	border-left: 1px solid #eeeeee;
	font-size: 12px;
	background: #f9f9f9;
}

.team-social li a:hover {
	color: #333333;
}

.tc_number {
	position: absolute;
	right: 0;
	top: 0;
	border-left: 1px solid #eeeeee;
	border-bottom: 1px solid #eeeeee;
	font-size: 11px;
	background: #f9f9f9;
	width: 40px;
	height: 40px;
	line-height: 40px;
	font-weight: 600;
}

.tf-btn {
	float: left;
	font-size: 12px;
	color: #000000;
	top: 13px;
	font-weight: 600;
}

.tf-btn i {
	margin-left: 12px;
	position: relative;
	left: 0;
}

.tf-btn:hover i {
	left: 6px;
}

.tf-btn:hover {
	color: #999;
}

.team-item, .team-social li a, .team-content h4 a, .tf-btn i, .tf-btn {
	transition: all 300ms linear;
}

.team-single_header {
	background: #ffffff;
}

.team-single_header_img {
	float: left;
	width: 50%;
	position: relative;
	padding: 165px 0;
}

.team-single_header_img:before {
	content: '';
	position: absolute;
	left: -15px;
	top: -15px;
	bottom: 40%;
	right: 50%;
	z-index: -1;
}

.team-single_header_content {
	float: left;
	width: 50%;
	position: relative;
	padding: 35px 50px 0 50px;
}

.team-single_header_content h2 {
	text-align: left;
	font-size: 18px;
	font-weight: 600;
	padding-bottom: 4px;
	position: relative;
}

.team-single_header_content h4 {
	text-transform: uppercase;
	font-size: 11px;
	color: #999;
	font-weight: 600;
	text-align: left;
	padding-bottom: 10px;
}

.team-single_header_content h2:before {
	content: '';
	position: absolute;
	right: 0;
	top: 12px;
	height: 2px;
	width: 30px;
}

.team-single_header_content ul {
	float: left;
	width: 100%;
	margin-top: 4px;
	border: 1px solid #eeeeee;
	box-shadow: 0 13px 20px rgb(58 87 135 / 5%)
}

.team-single_header_content li {
	float: left;
	width: 100%;
	padding: 18px 25px;
	text-align: left;
	font-weight: 500;
	background: #f9f9f9;
	border-bottom: 1px solid #eeeeee;
}

.team-single_header_content li span {
	padding-right: 10px;
	color: #666666;
	min-width: 110px;
	float: left;
}

.team-single_header_content li:last-child {
	border: none;
}

.team-single-social {
	position: absolute;
	left: 0;
	bottom: 0;
	background: #292929;
	padding: 0 20px 0 30px;
}

.team-single-social li, .team-single-social ul, .tsc_title {
	float: left;
}

.team-single-social li a {
	float: left;
	height: 50px;
	margin-left: 20px;
	line-height: 50px;
}

.team-single-social li a:hover {
	color: #ffffff;
}

.tsc_title {
	margin-right: 10px;
	font-size: 10px;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 50px;
	color: #ffffff;
}

.team-contact_btn {
	position: absolute;
	right: 0;
	top: 0;
	width: 50px;
	height: 50px;
	line-height: 50px;
	color: #ffffff;
	z-index: 3;
}

.team-contact_btn:hover {
	background: #333333;
}

.contats-list_widget {
	margin-bottom: 30px;
}

.contats-list_widget li {
	float: left;
	width: 100%;
	padding: 0 25px 0 80px;
	background: #ffffff;
	margin-bottom: 10px;
	text-align: left;
	height: 60px;
	line-height: 60px;
	position: relative;
	font-size: 11px;
	font-weight: 500;
}

.contats-list_widget li:hover i {
	background: #333333;
}

.contats-list_widget li i {
	position: absolute;
	left: 0;
	top: 0;
	width: 60px;
	height: 60px;
	line-height: 60px;
	text-align: center;
	color: #292929;
	font-size: 12px;
	font-weight: 400;
}

/*------ Services ------------------------------------------------*/
.serv-nav, .btn-nav, .column-filters {
	float: left;
	width: 100%;
	margin-bottom: 30px;
}

.column-filters {
	margin-top: 20px;
}

.serv-nav li, .btn-nav li {
	float: left;
	width: 100%;
	margin-bottom: 6px;
}

.serv-nav li a, .column-filters a {
	float: left;
	text-align: left;
	width: 100%;
	padding: 20px 30px;
	background: #ffffff;
	font-size: 12px;
	font-weight: 500;
	color: #666666;
	position: relative;
}

.column-filters a {
	margin-bottom: 6px;
}

.serv-nav li a.act-ser, .column-filters a.gallery-filter-active {
	color: #ffffff;
}

.serv-nav li a:before, .column-filters a:before, .hidden-filter a:before, .contats-list_widget li:before {
	font-family: Font Awesome\ 5 Pro;
	content: '\f0da';
	position: absolute;
	top: 50%;
	margin-top: -6px;
	right: 30px;
	font-weight: bold;
}

.contats-list_widget li:before {
	top: 0px;
	margin-top: 0;
}

.serv-nav li a:hover, .column-filters a:hover, .serv-nav li a.act-ser:before, .column-filters a.gallery-filter-active:before, .hidden-filter a.gallery-filter-active:before, .contats-list_widget li:hover:before {
	color: #ffffff;
	text-decoration: none;
}

.serv-nav li a.act-scrlink {
	color: #292929;
}

.btn-nav {
	margin-top: 20px;
}

.btn-nav li a {
	float: left;
	width: 100%;
	position: relative;
	background: #333333;
	padding: 18px 20px 18px 60px;
}

.btn-nav li a:before {
	font-family: Font Awesome\ 5 Pro;
	content: '\f0da';
	position: absolute;
	color: #ffffff;
	top: 50%;
	margin-top: -6px;
	right: 20px;
	font-weight: bold;
}

.btn-nav li a span, .btn-nav li a:before, .serv-nav li a, .contats-list_widget li, .contats-list_widget li i {
	transition: all 200ms linear;
	color: #0089b3;
}

.btn-nav li a:hover {
	background-color: #0089b3;
}

.btn-nav li a:hover span {
	color: #cccccc;
}

.btn-nav li a:hover:before {
	transform: rotate(-90deg);
	color: #ffffff;
}

.btn-nav li a span {
	color: #0089b3;
	text-align: left;
	float: left;
	font-weight: 500;
	font-size: 12px;
}

.btn-nav li a i {
	width: 30px;
	height: 30px;
	line-height: 30px;
	color: #eeeeee;
	position: absolute;
	top: 50%;
	margin-top: -15px;
	left: 10px;
}

.ui-widget-content {
	background: #6b6b6b;
	border-color: #6b6b6b;
}

.ui-slider-handle {
	background: #c1c2c4;
	border-radius: 0.6em;
}

.ui-slider-range {
	background: #34a3db;
}

/*------half-carousel------------------------------------------------*/
.half-carousel-title {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 30%;
	z-index: 1;
}

.half-carousel-title-item {
	padding: 0 60px;
	top: 150px;
	z-index: 20;
}

.hc_btn {
	float: left;
	padding: 15px 35px;
	color: #292929;
	font-size: 11px;
	font-weight: 600;
	margin-top: 30px;
}

.hc_btn:hover {
	background: #292929;
}

.half-carousel-title .pwh_bg {
	top: 350px;
	bottom: -40px;
	left: -140px;
}

.half-carousel-title-item h2 {
	color: #ffffff;
	text-align: left;
	font-weight: 600;
	font-size: 16px;
	padding-bottom: 20px;
}

.half-carousel-content h3 {
	color: #ffffff;
	text-align: center;
	font-weight: 600;
	font-size: 16px;
	padding-bottom: 6px;
}

.half-carousel-title-item h2 {
	position: relative;
}

.half-carousel-title-item h2:before {
	content: '';
	position: absolute;
	left: 0;
	top: -12px;
	height: 3px;
	width: 30px;
}

.half-carousel-title-item h5, .half-carousel-content p {
	color: #ffffff;
	text-align: left;
}

.half-carousel-title-item h5 {
	font-size: 11px;
	font-weight: 500;
}

.half-carousel-conatiner {
	float: right;
	width: 70%;
	height: 550px;
	position: relative;
}

.half-carousel-item {
	height: 550px;
}

.half-carousel-content {
	position: absolute;
	left: 0;
	right: 0;
	padding: 0 40px;
	bottom: 40px;
	z-index: 10;
}

.half-carousel-content:before {
	content: '';
	position: absolute;
	left: 40px;
	width: 0;
	bottom: -10px;
	height: 2px;
	transition: all 0.5s ease-in-out;
	transition-delay: 0.3s;
}

.swiper-slide-active .half-carousel-content:before {
	width: 60px;
}

.half-carousel-item .bg-parallax-wrap-gradien:before {
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.99) 100%);
	transition: all 0.5s ease-in-out;
	top: -50px;
}

.swiper-slide-active .half-carousel-item .bg-parallax-wrap-gradien:before {
	top: 40%;
}

.hc-counter {
	position: absolute;
	right: 20px;
	top: 20px;
	width: 36px;
	height: 36px;
	line-height: 36px;
	font-weight: 600;
	font-size: 10px;
	z-index: 20;
}

.half-carousel .bg {
	width: 130%;
	left: -15%;
}

.hcw_btn {
	position: absolute;
	top: 50%;
	font-size: 12px;
	cursor: pointer;
	width: 46px;
	height: 46px;
	line-height: 46px;
	margin-top: -23px;
	z-index: 20;
	background: rgba(0, 0, 0, 0.7);
}

.hcw-cont-prev {
	left: 0;
	border-radius: 0 4px 4px 0;
}

.hcw-cont-next {
	right: 0;
	border-radius: 4px 0 0 4px;
}

.hcw_btn:hover {
	color: #ffffff;
}

.cards-wrap {
	margin-bottom: 30px;
	z-index: 2;
}

.content-inner {
	width: 100%;
	position: relative;
	transform-style: preserve-3d;
	perspective: 1000px;
	backface-visibility: hidden;
	transition: .9s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.content-inner>* {
	backface-visibility: hidden;
	transition: .9s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.content-inner:hover .content-front {
	transform: rotateY(-180deg);
}

.content-inner:hover .content-back {
	transform: rotateY(0deg);
}

.content-inner .content-front,
.content-inner .content-back {
	position: relative;
	transform-style: preserve-3d;
	perspective: 1000px;
	backface-visibility: hidden;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	box-shadow: 0 13px 20px rgb(58 87 135 / 5%);
	border: 1px solid #eeeeee;
}

.content-front {
	background: #ffffff;
	position: relative;
	cursor: pointer;
}

.content-inner .content-back {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	transform: rotateY(180deg);
}

.content-inner .cf-inner {
	transform-style: preserve-3d;
	backface-visibility: hidden;
	width: 100%;
	padding: 100px 50px 50px;
}

.content-inner .cf-inner .inner {
	align-items: stretch;
	transform-style: preserve-3d;
	perspective: 1000px;
	backface-visibility: hidden;
	transform: translateZ(95px) scale(0.81);
	text-align: center;
	position: relative;
	z-index: 2;
}

.content-inner .cf-inner .inner:before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -20px;
	height: 1px;
	background: #dddddd;
	z-index: 1;
}

.content-inner .cf-inner .inner:after {
	content: '';
	position: absolute;
	right: 0;
	width: 50px;
	bottom: -20px;
	height: 1px;
	z-index: 2;
}

.dec-icon {
	position: absolute;
	top: -80px;
	left: 0;
	font-size: 30px;
	font-weight: 600;
	transition: all .3s ease-in-out;
	z-index: 2;
}

.cf-inner_title {
	position: absolute;
	left: 70px;
	right: 70px;
	color: #292929;
	font-size: 11px;
	font-weight: 600;
	height: 50px;
	line-height: 50px;
	top: 50%;
	margin-top: -25px;
	z-index: 10;
}

.serv-num {
	position: absolute;
	top: 0;
	right: 0;
	color: #292929;
	z-index: 3;
	font-size: 10px;
	font-weight: 600;
	background: #f9f9f9;
	border: 1px solid #eeeeee;
	width: 56px;
	height: 56px;
	line-height: 56px;
}

.content-inner .cf-inner .inner h2 {
	position: relative;
	color: #0089b3;
	font-size: 18px;
	font-weight: 600;
	padding-bottom: 6px;
	text-align: left;
}

.content-inner .cf-inner .inner h2:after {
	content: '';
	position: absolute;
	top: -20px;
	left: 0;
	width: 30px;
	height: 3px;
}

.half-bg_dec:before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 60%;
	background: #ffffff;
}

.main-section_text-block {
	margin-bottom: 40px;
}

.main-section_text-block h2 {
	text-align: left;
	font-weight: 600;
	font-size: 20px;
}

.main-section_text-block h4 {
	text-align: left;
	margin-bottom: 10px;
	font-weight: 600;
	color: #666666;
}

.hero-counter_wrap {
	position: absolute;
	right: 50px;
	left: -100px;
	bottom: -40px;
	z-index: 50;
	padding-right: 120px;
}

.hc_item {
	height: 90px;
	padding-top: 20px;
}

.hc_item:before {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	width: 1px;
	height: 20px;
	margin-top: -10px;
	background: rgba(255, 255, 255, 0.3)
}

.hc-item_num {
	font-size: 22px;
	font-weight: 600;
	color: #ffffff;
}

.hc-item_title {
	font-size: 10px;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 2px;
}

.hero-counter-cont_wrap {
	position: absolute;
	right: 0;
	top: 0;
	height: 90px;
	line-height: 90px;
	background: #333333;
	z-index: 20;
	width: 120px;
}

.hcc_btn {
	display: inline-block;
	margin: 0 10px;
	cursor: pointer;
	text-align: center;
}

.hcc_btn:hover {
	color: #ffffff;
}

.hero-counter-cont_wrap:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 2px;
	height: 30px;
	margin: -15px -1px 0 0;
}

.sq-secdec {
	position: absolute;
	left: 0;
	width: 20%;
	height: 65%;
	bottom: 0;
	background: #f5f5f5;
}

/*------ Video ------------------------------------------------*/
.media-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: 1;
}

.video-mask {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.media-container .overlay {
	opacity: 0.6;
}

.video-holder {
	position: absolute;
	width: 100%;
	height: 100% !important;
	display: block;
	overflow: hidden !important;
	top: 0;
	left: 0;
	padding: 0 !important;
}

.video-holder iframe {
	position: absolute;
	top: -75px;
	left: 50%;
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
}

.background-youtube {
	position: absolute;
	top: -25% !important;
}

.video-container {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	line-height: 0;
	z-index: -1;
}

.video-container video {
	width: 100%;
}

.resp-video {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin-bottom: 20px;
}

.resp-video iframe,
.resp-video object,
.resp-video embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.mob-bg, .nav-button-wrap {
	display: none;
}

/*------ Contact  ------------------------------------------------*/
.map-container {
	float: left;
	width: 100%;
	position: relative;
	overflow: hidden;
}

#singleMap {
	width: 100%;
	height: 370px;
	float: left;
}

.mapzoom-in, .mapzoom-out, .scrollContorl {
	position: absolute;
	z-index: 100;
	cursor: pointer;
	width: 40px;
	height: 40px;
	line-height: 40px;
	right: 22px;
	bottom: 70px;
	-webkit-transform: translate3d(0, 0, 0);
	color: #292929;
}

.mapzoom-out {
	bottom: 28px;
}

.scrollContorl {
	bottom: 140px;
}

.mapzoom-in:before, .mapzoom-out:before, .scrollContorl:before {
	font-family: Font Awesome\ 5 Pro;
	content: "\f068";
	font-size: 10px;
	font-weight: 600;
}

.mapzoom-in:before {
	content: "\f067";
}

.scrollContorl:before {
	content: "\f09c";
}

.scrollContorl.enabledsroll:before {
	content: '\f3c1';
}

.scrollContorl:hover,
.mapzoom-in:hover,
.mapzoom-out:hover {
	background: #333333;
	color: #0089b3;
}

.map-links_tabs {
	margin: 0 0 20px 0;
	float: right;
}

.map-links_tabs a, .shop-tabs-menu li a {
	float: left;
	position: relative;
	padding: 18px 60px 18px 30px;
	text-decoration: none;
	color: #ffffff;
	background: #ffffff;
	margin-left: 10px;
	font-weight: 600;
	font-size: 11px;
	border: 1px solid #eeeeee;
	transition: all .3s ease-in-out;
}

.shop-tabs-menu li a {
	margin: 0;
}

.map-links_tabs a.ml_act, .shop-tabs-menu li.current a {
	border-color: transparent;
}

.map-links_tabs a:before, .shop-tabs-menu li a:before {
	font-family: Font Awesome\ 5 Pro;
	content: "\f0da";
	font-size: 12px;
	font-weight: 600;
	position: absolute;
	right: 25px;
	top: 50%;
	height: 10px;
	line-height: 10px;
	margin-top: -5px;
	transition: all .3s ease-in-out;
}

.map-links_tabs a span {
	padding: 0 5px 0 0;
	font-weight: 600;
}

.map-links_tabs a.ml_act:before, .shop-tabs-menu li.current a:before {
	transform: rotate(90deg);
	color: #ffffff;
}

.map-links_title {
	float: left;
	font-size: 18px;
	font-weight: 500;
	position: relative;
	top: 12px;
}

.card-item {
	background: #ffffff;
	padding: 25px 30px 25px 90px;
	border: none;
	overflow: hidden;
	margin-bottom: 20px;
	transition: all .3s ease-in-out;
}

.card-item:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 45px;
	height: 40px;
	width: 1px;
	background: #eeeeee;
	transition: all .3s ease-in-out;
	z-index: 1;
}

.card-item:hover {
	box-shadow: 0 19px 20px rgba(58, 87, 135, 0.08);
}

.card-item:hover:before {
	height: 90px;
}

.card-item_num {
	position: absolute;
	right: 0;
	top: 0;
	width: 40px;
	height: 40px;
	line-height: 40px;
	font-size: 10px;
	font-weight: 600;
	background: #f9f9f9;
	border-left: 1px solid #eeeeee;
	border-bottom: 1px solid #eeeeee;
}

.card-item h4 {
	text-align: left;
	font-weight: 600;
	font-size: 15px;
	margin-bottom: 6px;
}

.card-link {
	float: left;
	font-weight: 600;
	font-size: 11px;
	margin-right: 6px;
	text-transform: uppercase;
}

.card-item i {
	position: absolute;
	color: #ffffff;
	left: 0px;
	top: 25px;
	width: 50px;
	height: 50px;
	line-height: 50px;
	border-radius: 2px;
	font-size: 16px;
	font-weight: 600;
	transition: all .3s ease-in-out;
	z-index: 2;
}

.contact-notifer {
	float: left;
	margin-left: 30px;
	position: relative;
	font-weight: 500;
	top: 24px;
}

.contact-social {
	float: right;
}

.cs-title {
	margin-right: 20px;
	text-transform: uppercase;
	font-weight: 600;
	position: relative;
	top: 14px;
	font-size: 11px;
	color: #000000;
}

.contacts-opt {
	margin: 10px 0 40px 0;
}

.contact-social {
	float: right;
	margin-top: 10px;
}

.contact-social li, .contact-social .cs-title, .contact-social ul {
	float: left;
}

.contact-social li ul {
	border: 1px solid #eeeeee;
}

.contact-social li a {
	width: 40px;
	height: 40px;
	line-height: 40px;
	margin-left: 2px;
	float: left;
	background: #333333;
}

.contact-social li a:hover {
	color: #ffffff
}

.contact-form-wrap {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: auto;
	z-index: 100;
	-webkit-transform: translate3d(0, 0, 0);
	display: none;
}

.contact-form-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	background: rgba(0, 0, 0, 0.7);
	-webkit-transform: translate3d(0, 0, 0);
}

.contact-form-container {
	max-width: 600px;
	margin: 0 auto;
	position: relative;
	top: 20%;
	z-index: 10;
}

.contact-form-header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 60px;
	line-height: 60px;
	border-bottom: 1px solid #eeeeee;
	padding: 0 70px 0 60px;
	background: #f9f9f9;
}

.contact-form-header h4 {
	text-align: left;
	font-weight: 600;
	font-size: 15px;
}

.close-contact-form {
	position: absolute;
	right: 0;
	top: 0;
	height: 60px;
	line-height: 60px;
	width: 60px;
	cursor: pointer;
	border-left: 1px solid #eeeeee;
	border-bottom: 1px solid #eeeeee;
	color: #000000;
	background: #ffffff;
	transition: all 200ms linear;
}

.close-contact-form:hover {
	color: #ffffff;
}

.contact-form-main {
	padding: 100px 60px 30px;
	background: #ffffff;
	overflow: hidden;
	transition: all 200ms linear;
}

#message div {
	text-align: left;
	padding: 10px 30px;
	font-size: 13px;
	font-weight: 500;
	background: #f9f9f9;
	border: 1px solid #eeeeee;
	margin-bottom: 10px;
	color: #144273;
}

.hid-body {
	overflow: hidden;
}


/*------testimononials ------------------------------------------------*/
.testimonilas-carousel-wrap:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	height: 1px;
	border-top: 1px solid #cccccc;
}

.testi-item {
	transition: all .3s ease-in-out;
	transform: scale(0.95);
}

.testimonilas-text {
	padding: 30px 35px 30px;
	overflow: hidden;
	background: #ffffff;
	border: 1px solid #eeeeee;
	transition: all .3s ease-in-out;
}

.testimonilas-text:after {
	font-family: Font Awesome\ 5 Pro;
	content: "\f10e";
	bottom: 35px;
	right: 35px;
	position: absolute;
	opacity: .3;
	font-size: 18px;
	transition: all 400ms linear;
	color: #cccccc;
}

.testimonilas-text h3 {
	font-weight: 600;
	text-align: left;
	margin-left: 80px;
	font-size: 14px;
	padding-bottom: 8px;
}

.testimonilas-text h3 span {
	color: #999;
	display: block;
	font-weight: 500;
	font-size: 10px;
	text-transform: uppercase;
}

.testimonilas-carousel .swiper-slide {
	padding: 10px 0 20px;
}

.testi-avatar {
	position: absolute;
	left: 35px;
	top: 32px;
	width: 60px;
	height: 60px;
	z-index: 20;
}

.testi-avatar img {
	width: 60px;
	height: 60px;
	float: left;
	border-radius: 4px;
	position: relative;
	z-index: 2;
}

.swiper-slide-active .testimonilas-text {
	background: #f9f9f9;
}

.testimonilas-text p {
	color: #878C9F;
	font-size: 11px;
	text-align: justify;
	font-style: italic;
	line-height: 24px;
	font-weight: 500;
}

.swiper-slide-active .testi-item {
	opacity: 1;
	transform: scale(1.0);
	background: #ffffff;
}

.swiper-slide-active .testi-item .testimonilas-text:before, .swiper-slide-active .testi-item .testimonilas-text:after {
	opacity: 1;
}

.testi-number {
	position: absolute;
	top: 0;
	right: 0;
	width: 60px;
	height: 60px;
	line-height: 60px;
	border-left: 1px solid #eeeeee;
	border-bottom: 1px solid #eeeeee;
	background: #f9f9f9;
	font-weight: 900;
	font-size: 11px;
	color: #cccccc;
	transition: all 0.3s ease-out;
}

.swiper-slide-active .testi-item .testi-number {
	background: #ffffff;
}

.star-rating i {
	margin: 0 2px;
}

.testimonilas-text .star-rating {
	float: left;
	width: 100%;
	padding-left: 76px;
	margin-bottom: 20px;
	text-align: left;
}

.testimonilas-text .star-rating:before, .testimonilas-text .star-rating:after {
	content: '';
	position: absolute;
	right: -190px;
	top: 50%;
	width: 140px;
	height: 1px;
	background: #e9e9e9;
	z-index: 1;
}

.testimonilas-text .star-rating:after {
	width: 30px;
	z-index: 2;
}

.testim-link {
	float: left;
	margin-top: 20px;
	border-radius: 2px;
	color: #292929;
	padding: 10px 20px;
	font-size: 11px;
	font-weight: 600;
}

.tc-button, .ss-slider-cont, .hero-slider-cont {
	position: absolute;
	top: 50%;
	width: 40px;
	height: 40px;
	line-height: 40px;
	margin-top: -20px;
	border-radius: 4px;
	background: rgba(0, 0, 0, 0.7);
	z-index: 50;
	cursor: pointer;
}

.tc-button:hover, .ss-slider-cont:hover, .hero-slider-cont:hover {
	background: #292929;
}

.tc-button-next, .ss-slider-cont-next,
.tc-button-next, .ss-slider-cont-nextpa {
	right: 20px;
}

.tc-button-prev, .ss-slider-cont-prev,
.tc-button-prev, .ss-slider-cont-prevpa {
	left: 20px;
}

.hero-slider-cont-next {
	right: 60px;
}

.hero-slider-cont-prev {
	left: 60px;
}

.tc-pagination {
	float: left;
	margin-top: 10px;
	width: 100% !important;
}

.tc-pagination_wrap, .ss-slider-pagination, .hero-slider-wrap_pagination {
	position: absolute;
	bottom: -40px;
	left: 0;
	width: 100%;
}

.ss-slider-pagination {
	z-index: 20;
}

.ss-slider-controls2 {
	padding: 12px 30px;
	background: rgba(0, 0, 0, 0.6);
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	z-index: 10;
	border-radius: 4px 4px 0 0;
}

.ss-slider-controls2.fwc_pag {
	bottom: 10px;
}

.ss-slider-controls2 .ss-slider-pagination,
.ss-slider-controls2 .ss-slider-paginationpa {
	bottom: 0;
	position: relative;
}

.hero-slider-wrap_pagination {
	bottom: 60px !important;
	z-index: 20;
}

.tc-pagination .swiper-pagination-bullet, .ss-slider-pagination .swiper-pagination-bullet, .ss-slider-paginationpa .swiper-pagination-bullet, .hero-slider-wrap_pagination .swiper-pagination-bullet, .hero-slider-pagination .swiper-pagination-bullet {
	opacity: 1;
	background: #999;
	margin: 0 10px;
	display: inline-block;
	width: 6px;
	height: 6px;
	position: relative;
	border-radius: 100%;
	transition: all 300ms ease-out;
}

.ss-slider-pagination .swiper-pagination-bullet,
.ss-slider-paginationpa .swiper-pagination-bullet {
	background: #ffffff;
	margin: 0 8px !important;
}

.ss-slider-pagination .swiper-pagination-bullet, .ss-slider-paginationpa .swiper-pagination-bullet, .hero-slider-wrap_pagination .swiper-pagination-bullet, .hero-slider-pagination .swiper-pagination-bullet {
	background: #ffffff;
	margin: 0 12px !important;
}

.ss-slider-pagination .swiper-pagination-bullet:hover {
	background: rgba(255, 255, 255, 0.5);
}

.tc-pagination .swiper-pagination-bullet:before, .ss-slider-pagination .swiper-pagination-bullet:before, .ss-slider-paginationpa .swiper-pagination-bullet:before, .hero-slider-wrap_pagination .swiper-pagination-bullet:before, .hero-slider-pagination .swiper-pagination-bullet:before {
	content: '';
	position: absolute;
	left: -5px;
	top: -5px;
	right: -5px;
	bottom: -5px;
	border-radius: 100%;
	box-sizing: border-box;
	border: 1px solid #cccccc;
	transition: all 300ms ease-out;
	transform: scale(0);
}

.tc-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:before, .ss-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:before, .ss-slider-paginationpa .swiper-pagination-bullet.swiper-pagination-bullet-active:before, .hero-slider-wrap_pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:before, .hero-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
	transform: scale(1.0);
}

.ss-slider-controls2 .ss-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active, .ss-slider-controls2 .ss-slider-paginationpa .swiper-pagination-bullet.swiper-pagination-bullet-active, .hero-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #ffffff;
}

.client-item {
	padding: 20px;
	display: block;
}

.client-item:hover {
	background: #eeeeee;
}

.client-item img {
	width: 100%;
	height: auto;
	transition: all 300ms linear;
}

.cc-btn {
	position: absolute;
	top: 50%;
	width: 36px;
	height: 36px;
	line-height: 36px;
	margin-top: -18px;
	color: #000000;
	font-size: 14px;
	z-index: 20;
	cursor: pointer;
}

.clients-carousel-wrap {
	padding: 0 20px;
}

.cc-btn.cc-next {
	right: 0;
}

.cc-btn.cc-prev {
	left: 0;
}

/*------ calculator ------------------------------------------------------*/
.cal-form {
	float: left;
	width: 100%;
	margin-top: 30px;
}

.cal-row {
	float: left;
	width: 100%;
	background: #F5F5F5;
	padding: 20px 50px;
	margin-bottom: 2px;
	position: relative;
}

.cal-row:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 2px;
	height: 100%;
}

.cal-row.rg-area {
	padding: 30px 50px;
}

.cal-head {
	float: left;
	width: 40%;
	box-sizing: border-box;
	padding-left: 50px;
	position: relative;
	margin-top: 16px;
}

.cal-head span {
	position: absolute;
	left: 0;
	top: 50%;
	width: 36px;
	height: 36px;
	line-height: 36px;
	margin-top: -18px;
	background: #ffffff;
	border: 1px solid #eeeeee;
	font-size: 10px;
	font-weight: 600;
}

.cal-head h4 {
	float: left;
	font-size: 13px;
	font-weight: 500;
	text-align: left;
}

.cal-item {
	float: left;
	width: 60%;
}

.cal-item input, .cal-item select {
	width: 100%;
	float: left;
}

.cal-item select {
	padding: 10px 20px;
	border: 1px solid #E2E6E7;
	margin: 0;
	background: #ffffff;
	position: relative;
}

.cost-dropdown {
	float: left;
	width: 100%;
}

.hid-input {
	display: none;
}

.irs-single {
	top: -20px;
	padding: 10px 20px;
}

.nice-select .nice-select-search-box {
	display: none;
}

.nice-select {
	z-index: 100;
}

.nice-select .list {
	padding: 0 0 0;
}

.slider {
	width: 100%;
}

.chose-input {
	float: left;
	width: 100%;
}

.total-sum {
	float: left;
	position: relative;
	padding: 10px 0;
}

.tts {
	float: left;
	margin-right: 10px;

	font-size: 14px;
	font-weight: 700;
}

.total-sum input {
	float: left;
	width: auto;
	max-width: 100px;
	text-align: left;
	border: none;
	background: none;
	border-radius: 0;
	font-size: 17px;
	font-weight: 700;
	position: relative;
	top: 1px;
}

.currency {
	float: left;
	position: relative;
	top: -4px;
	margin-right: 2px;
}

.mid-pad {
	padding: 110px 0;
}

.rage-slider {
	float: left;
	width: 100%;
	margin-bottom: 90px;
}

/*------ portfolio ------------------------------------------------------*/
.gallery-items {
	float: left;
	width: 100%;
	position: relative;
}

.grid-item-holder, .folio-img {
	float: left;
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
}

.gallery-item {
	overflow: hidden;
}

.spad .gallery-item {
	padding: 0;
}

.darkbg_2 {
	background: #222222;
}

.grid-big-pad .grid-item-holder {
	padding: 40px;
}

.grid-small-pad .gallery-item {
	padding: 10px 10px 0 0;
}

.gallery-item, .grid-sizer {
	width: 33.3%;
	position: relative;
}

.gallery-item-second,
.grid-sizer-second {
	width: 66.6%;
}

.dark-por {
	background: #292929;
}

.two-column .gallery-item {
	width: 50%;
}

.two-column .gallery-item.gallery-item-second {
	width: 100%;
}

.four-column .gallery-item {
	width: 25%;
}

.four-column .gallery-item.gallery-item-second {
	width: 50%;
}

.gallery-item img, .pmimh img {
	width: 100%;
	height: auto;
	position: relative;
	z-index: 1;
	transform: translateZ(0);
	transition: all 4000ms cubic-bezier(.19, 1, .22, 1) 0ms;
}

.post-media_img:before {
	content: '';
	position: absolute;
	left: 45px;
	bottom: -3px;
	width: 90px;
	height: 6px;
	z-index: 12;
}

.post-media_img a {
	position: relative;
	display: block;
	overflow: hidden;
}

.post-tooltip {
	position: absolute;
	height: 50px;
	line-height: 50px;
	color: #292929;
	width: 130px;
	font-size: 10px;
	font-weight: 600;
	text-transform: uppercase;
	top: 40%;
	left: 50%;
	margin: -25px 0 0 -65px;
	z-index: 5;
}

.post-media_img .overlay, .post-tooltip, .gallery-item .overlay {
	opacity: 0;
}

.post-media_img:hover img, .gallery-item:hover img {
	transform: scale(1.2);
}

.gallery-item:hover .dbm-hid img {
	transform: scale(1.0);
}

.post-media_img:hover .overlay, .gallery-item:hover .overlay, .vis-det .overlay {
	opacity: 0.2;
}

.vis-det .gallery-item:hover .overlay, .dbm-hid.det-box-media:hover:before {
	opacity: 0.4;
}

.post-media_img:hover .post-tooltip {
	opacity: 1;
	top: 50%;
}

.post-tooltip, .post-media_img .overlay, .gallery-item .overlay, .grid-item, .grid-det_category, .grid-item h3 a, .grid-item h3 a:after, .grid-item h3 a:before, .grid-item, .inline-filter .gallery-filters a:before {
	transition: all 0.2s ease-in-out;
}

.grid-det_category {
	position: absolute;
	left: 30px;
	top: 26px;
	z-index: 10;
	opacity: 0;
	visibility: hidden;
	margin-top: -10px;
}

.gallery-item:hover .grid-det_category, .vis-det .grid-det_category, .swiper-slide-active .half-carousel-item .grid-det_category {
	opacity: 1;
	margin-top: 0;
	visibility: visible;
}

.half-carousel-item .grid-det_category {
	top: 26px;
	left: 40px;
	padding: 6px 4px 6px 10px;
	background: rgba(0, 0, 0, 0.4);
}

.grid-det_category a {
	float: left;
	font-size: 9px;
	text-transform: uppercase;
	text-decoration: none;
	margin-right: 6px;
	font-weight: 600;
	color: #ffffff;
}

.grid-item {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -60px;
	z-index: 5;
	padding: 0 0 0 30px;
	background: #292929;
	height: 60px;
	line-height: 60px;
}

.vis-det .grid-item {
	position: relative;
	float: left;
	width: 100%;
	bottom: 0;
	background: #ffffff;
	border: 1px solid #eeeeee;
	border-top: none;
	box-sizing: border-box;
}

.gallery-item:hover .grid-item {
	bottom: 0;
}

.grid-item h3 a:before {
	font-family: Font Awesome\ 5 Pro;
	content: '\f0da';
	position: absolute;
	right: 0;
	top: 0;
	width: 60px;
	height: 60px;
	font-size: 12px;
	font-weight: 600;
	text-align: center;
	z-index: 1;
}

.vis-det .grid-item h3 a:before {
	background: #ffffff;
	border: 1px solid #eeeeee;
	box-sizing: border-box;
	border-top: none;
}

.grid-item h3 {
	float: left;
	width: 100%;
	color: #000000;
	text-overflow: ellipsis;
	overflow: hidden;
	font-weight: 600;
	text-align: left;
	font-size: 10px;
	text-transform: uppercase;
	position: relative;
	margin-top: 20px;
}

.grid-item h3 a:after {
	content: '';
	position: absolute;
	left: 0;
	width: 0;
	height: 1px;
	top: 50%;
	margin-top: -1px;
	background: rgba(255, 255, 255, 0.8);
}

.vis-det .grid-item h3 a:after {
	background: #cccccc;
}

.grid-item h3 a {
	display: block;
	position: relative;
	text-decoration: none;
	z-index: 10;
}

.vis-det .grid-item h3 a {
	color: #000000;
	font-size: 11px;
}

.grid-item h3 a:hover {
	padding-left: 30px;
}

.grid-item h3 a:hover:after {
	width: 14px;
}

.grid-item h3 a:hover:before {
	border-color: transparent;
}

.filter-holder {
	background: #ffffff;
	height: 60px;
	line-height: 60px;
	padding: 0 150px 0 0;
	margin-bottom: 20px;
	box-shadow: 0 19px 20px rgb(58 87 135 / 8%);
}

.filter-holder:before {
	content: '';
	position: absolute;
	right: 180px;
	width: 150px;
	height: 1px;
	background: #eeeeee;
	top: 50%;
	z-index: 1;
}

.inline-filter.shop-filter {
	float: right;
	position: relative;
	margin-top: 10px;
}

.inline-filter.shop-filter:before {
	display: none;
}

.inline-filter .gallery-filters {
	float: left;
	position: relative;
	z-index: 2;
}

.inline-filter .gallery-filters a {
	float: left;
	padding: 0 50px;
	border-right: 1px solid #eeeeee;
	font-weight: 600;
	font-size: 11px;
	color: #666666;
	position: relative;
}

.inline-filter .gallery-filters a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 0;
}

.inline-filter .gallery-filters a.gallery-filter-active {
	color: #fff;
}

.inline-filter .gallery-filters a.gallery-filter-active:before {
	height: 4px;
}

.inline-filter .gallery-filters a.gallery-filter-active, .inline-filter .gallery-filters a:hover {
	color: #000000;
}

.inline-filter .count-folio {
	position: absolute;
	top: 0;
	right: 0;
	width: 150px;
	height: 60px;
	line-height: 60px;
}

.cf-counter, .hidden-filter .count-folio {
	background: #292929;
	height: 50px;
	line-height: 50px;
}

.hidden-filter .count-folio {
	margin-top: 10px;
}

.inline-filter .count-folio:before, .cf-counter:before, .hidden-filter .count-folio:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 1px;
	margin: 0 0 0 -5px;
	background: #000000;
	opacity: .4;
	z-index: 2;
}

.cf-counter:before, .hidden-filter .count-folio:before {
	background: rgba(255, 255, 255, 0.3);
	opacity: 1;
}

.inline-filter .count-folio div, .cf-counter div, .hidden-filter .count-folio div {
	display: inline-block;
	margin: 0 15px;
	font-weight: 600;
	font-size: 11px;
	position: relative;
	z-index: 3;
	text-align: center;
}

.shf_btn {
	position: absolute;
	z-index: 100;
	right: 0;
	height: 46px;
	line-height: 46px;
	top: 50%;
	margin-top: -23px;
	background: #333333;
	cursor: pointer;
	padding: 0 80px 0 40px;
	font-size: 10px;
	font-weight: 600;
	text-transform: uppercase;
}

.shf_btn:before {
	font-family: Font Awesome\ 5 Pro;
	content: '\f0d7';
	position: absolute;
	top: 0;
	right: 0;
	width: 56px;
	height: 46px;
	font-size: 12px;
	line-height: 46px;
	font-weight: bold;
	color: #0089b3;
}

.shf_btn_active:before {
	content: '\f00d';
}

.hidden-filter {
	position: absolute;
	top: 100%;
	z-index: 100;
	width: 280px;
	background: #ffffff;
	padding: 20px;
	right: 0;
	margin-top: 31px;
	box-shadow: 0 19px 20px rgb(58 87 135 / 8%);
	visibility: hidden;
	opacity: 0;
	margin-right: -20px;
	transition: all .3s ease-in-out;
}

.vis_hiddenfilter {
	visibility: visible;
	opacity: 1;
	margin-right: 0;
}

.hidden-filter a {
	float: left;
	width: 100%;
	padding: 15px 25px;
	text-align: left;
	position: relative;
	margin-bottom: 6px;
	background: #f5f5f5;
	font-size: 11px;
	font-weight: 600;
	transition: all 200ms linear;
}

.hidden-filter a.gallery-filter-active:before {
	transform: rotate(90deg);
	transition: all 200ms linear;
}

.single-slider-holder, .single-slider {
	float: left;
	width: 100%;
	position: relative;
}

.mar-top-50 {
	margin-top: 30px;
}

.single-slider-wrap {
	overflow: hidden;
}

.grid-media-zoom, .box-media-zoom {
	position: absolute;
	right: 0;
	top: -60px;
	width: 60px;
	height: 60px;
	line-height: 60px;
	font-size: 10px;
	background: #202020;
	color: #ffffff;
	cursor: pointer;
	z-index: 10;
	transition: all 0.3s ease-in-out;
}

.grid-media-zoom {
	transition-delay: 0.4s;
}

.grid-item-holder:hover .grid-media-zoom, .hov_zoom:hover .box-media-zoom {
	top: 0;
	opacity: 1;
}

.single-zoom {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 10;
	cursor: pointer;
	background: rgba(0, 0, 0, 0.2);
	opacity: 0;
	transition: all 200ms linear;
}

.single-zoom span{
	position: absolute;
	width: 200px;
	height: auto;
	color: #ffffff;
	background-color: #000000;
	font-size: 10px;
	left: 22%;
	top: 49%;
	margin: -20px 0 0 -20px;
	padding: 5px;
}

.howzoom_2 .gallery-item:hover .single-zoom {
	opacity: 1;
}

.show-case-slider-wrap {
	height: 500px;
	background: #383838;
	padding: 10px
}

.show-case-slider-wrap .swiper-container {
	width: 100%;
	height: 100%;
	margin: 0 auto;
}

.fw-carousel_pagination-wrap {
	position: absolute;
	bottom: -36px;
	left: 0;
	width: 100%;
	z-index: 100
}

.fw-carousel .swiper-slide {
	width: auto !important;
	height: 100% !important;
	display: inherit !important;
}

.fw-carousel .swiper-slide img {
	width: auto !important;
	height: 100% !important;
	position: relative;
	z-index: 1;
}

.slide-numb {
	position: absolute;
	top: 30px;
	left: 30px;
	padding: 5px 15px;
	background: rgba(0, 0, 0, 0.4);
	color: #ffffff;
	font-size: 11px;
	z-index: 10;
	font-weight: 600;
}

.fw-carousel-button-prev {
	left: 50px;
}

.fw-carousel-button-next {
	right: 50px;
}

/* ------blog------------------------------------------------------------ */
.fw-separator {
	height: 1px;
	background: #eeeeee;
	margin: 10px 0 15px;
}

article {
	float: left;
	width: 100%;
	position: relative;
}

article p {
	padding-bottom: 15px;
	text-align: justify;
	font-size: 11px;
}

article {
	margin-bottom: 30px;
}

.post-content, .content-box {
	background: #ffffff;
	padding: 30px 45px 20px;
}

article:before {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 0;
	width: 50px;
	height: 4px;
}

.post .btn {
	margin-top: 0;
}

.display-posts p {
	line-height: 25px;
}

.post {
	float: left;
	width: 100%;
	margin-bottom: 30px;
}

.post h4.post-title {
	float: left;
	width: 100%;
	font-size: 19px;
	font-weight: 700;
	color: #000000;
	text-align: left;
	padding-bottom: 25px;
}

.post .single-post h4.post-title {
	padding-bottom: 14px;
}

.post h4.post-title a:hover {
	color: #666666;
}

.post .column-post h4.post-title {
	font-size: 16px;
	text-align: left;
	padding-bottom: 15px;
}

.post-media, .post-contentsection-title {
	float: left;
	width: 100%;
	position: relative;
}

.post-opt {
	padding-top: 16px;
	float: right;
}

.post-opt.single_post-opt {
	float: left;
	padding-top: 0;
	margin-bottom: 20px;
}

.post-opt li, .cat-item li {
	float: left;
}

.post-opt li {
	margin-right: 20px;
}

.post-opt li span, .post-opt li a {
	color: #666666;
	font-weight: 400;
	font-size: 12px;
}

.post-opt li i {
	padding-right: 6px;
	font-weight: bold;
}

.widget-sidebar {
	float: left;
	position: relative;
	width: 100%;
}

.ws_column {
	padding: 35px 30px 15px;
	background: #ffffff;
}

.widget-sidebar h3 {
	float: left;
	width: 100%;
	font-weight: 600;
	font-size: 16px;
	text-align: left;
	padding-bottom: 14px;
	border-bottom: 1px solid #dddddd;
	position: relative !important;
	margin-bottom: 10px;
}

.widget-sidebar.ws_column h3 {
	border-color: #eeeeee;
}

.widget-sidebar h3:before {
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 30px;
	height: 3px;
}

.post-link {
	float: left;
	text-transform: uppercase;
	font-size: 12px;
	transition: all 300ms linear;
}

.post-tags {
	float: left;
	width: 100%;
	margin: 15px 0;
}

.post-tags li, .tagcloud li {
	margin-right: 4px;
	float: left;
}

.post-tags li a, .tagcloud li a {
	float: left;
	font-size: 10px;
	text-transform: uppercase;
	padding: 12px 30px;
	background: #292929;
	margin-bottom: 3px;
	font-weight: 600;
	transition: all 300ms linear;
}

.post-tags li a:hover, .tagcloud li a:hover {
	color: #ffffff;
}

.pagination {
	margin: 20px 0 0 0;
	text-align: center;
	float: left;
	z-index: 10;
	position: relative;
	background: #292929;
}

.pagination a {
	float: left;
	width: 60px;
	height: 60px;
	line-height: 60px;
	box-sizing: border-box;
	position: relative;
	font-size: 10px;
	font-weight: 500;
	color: #888DA0;
	border-right: 1px solid rgba(255, 255, 255, 0.15);
}

.pagination a.current-page, .pagination a:hover {
	color: #ffffff;
}

.pagination a i {
	font-size: 12px;
}

.pagination a, .cat-item a {
	transition: all 150ms linear;
}

.bg-wrap {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	z-index: 1;
	overflow: hidden;
}

.bg-parallax-wrap-gradien:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 20;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 90%);
}

.banner-widget {
	padding: 150px 30px 20px;
	margin-top: 20px;
	overflow: hidden;
	margin-bottom: 30px;
}

.banner-widget_content {
	z-index: 2;
	position: relative;
}

.banner-widget_content h5 {
	text-align: left;
	color: #ffffff;
	font-size: 15px;
	font-weight: 600;
}

.widget-inner {
	float: left;
	width: 100%;
	position: relative;
	margin: 8px 0 25px;
}

.search {
	border: none;
	float: left;
	background: #eeeeee;
	border-radius: none;
	position: relative;
	outline: none;
	padding: 0px 0px 0px 20px;
	width: 100%;
	height: 50px;
	color: #000000;
	-webkit-appearance: none;
}

.search::-webkit-input-placeholder,
.search::-webkit-input-placeholder {
	color: #999;
	font-weight: 500;
	font-size: 12px;
	position: relative;
	font-family: 'Poppins', sans-serif;
}

.search-submit {
	border: none;
	outline: none;
	cursor: pointer;
	background: none;
	position: absolute;
	top: 0;
	right: 0;
	width: 70px;
	height: 50px;
	font-size: 11px;
}

.search-submit:hover i {
	opacity: 0.5;
}

.widget-posts li {
	padding: 12px 0;
	text-align: left;
}

.widget-posts-img {
	float: left;
	width: 30%;
}

.widget-comments-img img {
	border-radius: 100%;
}

.widget-posts-descr {
	float: left;
	width: 70%;
	position: relative;
	padding: 10px 0 0 15px;
}

.widget-posts-descr:before, .widget-posts-descr:after {
	content: '';
	position: absolute;
	bottom: -14px;
	left: 15px;
	right: 0;
	height: 1px;
	background: #eeeeee;
	z-index: 1;
}

.widget-posts-descr:after {
	left: auto;
	width: 30px;
	z-index: 2;
}

.widget-posts-descr a {
	font-size: 12px;
	font-weight: 600;
	color: #000000;
}

.widget-posts-descr a:hover {
	color: #666666;
}

.widget-posts-date {
	float: left;
	width: 100%;
	margin-top: 7px;
	color: #444;
	font-size: 10px;
	text-transform: uppercase;
	font-weight: 600;
}

.widget-posts-date i {
	margin-right: 6px;
}

.cat-wid, .fix-bar {
	float: left;
	width: 100%;
	position: relative;
}

.cat-wid li {
	float: left;
	width: 100%;
	text-align: left;
	margin-bottom: 6px;
	color: #292929;
}

.cat-wid li a {
	color: #999;
	font-size: 12px;
	padding: 4px 20px 0 0;
	font-weight: 500;
	float: left;
	background: #ffffff;
	position: relative;
	z-index: 2;
}

.cat-item {
	padding-bottom: 8px;
	margin-bottom: 15px;
	position: relative;
}

.cat-item a:hover {
	color: #000000;
}

.cat-item:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	right: 50px;
	z-index: 1;
	border-top: 1px dotted #cccccc;
}

.cat-item a {
	font-weight: 400;
	font-size: 12px;
}

.cat-item span {
	float: right;
	width: 26px;
	height: 26px;
	line-height: 26px;
	background: #333333;
	border-radius: 2px;
	text-align: center;
	font-size: 10px;
}

.widget-inner .btn-nav {
	margin-bottom: 0;
}

.content-nav_holder {
	margin-top: 80px;
	z-index: 5;
}

.content-nav_holder.cnh_sin-post {
	margin-top: 0;
}

.content-nav {
	margin-bottom: 30px;
	z-index: 2;
	background: #222222;
}

.content-nav li {
	width: 50%;
	float: left;
	position: relative;
	padding: 0 50px;
}

.content-nav li:first-child {
	border: none;
}

.content-nav li a.ln, .content-nav li a.rn {
	color: #ffffff;
	font-size: 12px;
	text-decoration: none;
	position: relative;
	width: 100%;
	padding: 30px 0;
}

.content-nav li a.ln {
	text-align: left;
	float: left;
}

.content-nav li a.rn {
	text-align: right;
	float: right;
}

.content-nav li a.ln i, .content-nav li a.rn i {
	transition: all 300ms linear;
}

.content-nav li a.ln:hover i, .content-nav li a.rn:hover {
	text-decoration: none;
}

.content-nav li a.ln:hover i, .content-nav li a.rn:hover i {
	transform: rotateX(360deg);
}

.content-nav li a span {
	font-size: 10px;
	text-transform: uppercase;
	font-weight: 600;
}

.content-nav li a.ln span {
	padding-left: 15px;
}

.content-nav li a.rn span {
	padding-right: 15px;
}

.content-nav:before {
	content: '';
	position: absolute;
	width: 4px;
	height: 30px;
	top: 50%;
	left: 50%;
	margin: -15px 0 0 -2px;
	z-index: 2;
}

.content-nav:after {
	content: '';
	position: absolute;
	width: 1px;
	left: 50%;
	margin-left: -1px;
	top: 0;
	bottom: 0;
	z-index: 1;
	background: rgba(255, 255, 255, 0.1);
}

.content-nav_mediatooltip {
	position: absolute;
	bottom: 100%;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	transition: all 100ms linear;
	z-index: -1;
}

.content-nav li:hover .content-nav_mediatooltip {
	opacity: 1;
	visibility: visible;
}

.content-nav_mediatooltip.cnmd_leftside {
	left: 0;
	right: 40%;
}

.content-nav_mediatooltip.cnmd_rightside {
	left: 40%;
	right: 0;
}

.content-nav_mediatooltip img {
	width: 100%;
	height: auto;
}

.post-single-tags span, .post-single-tags a {
	float: left;
}

.post-single-tags span {
	margin-right: 20px;
	position: relative;
	font-weight: 500;
	top: 10px;
}

.post-single-tags a {
	padding: 10px 25px;
	background: #333333;
	margin: 0 6px 6px 0;
	font-size: 10px;
	text-transform: uppercase;
	font-weight: 600;
}

.add_comm {
	float: right;
	position: relative;
	margin-top: 12px;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 10px;
}

.add_comm i {
	padding-left: 10px;
}

.comment {
	padding: 0 0 30px 110px;
	position: relative;
	float: left;
	margin-bottom: 40px;
	width: 100%;
	border-bottom: 1px solid #eeeeee;
}

.comment-author {
	position: absolute;
	top: 0;
	left: 10px;
	width: 80px;
	height: 80px;
}

.comment-author:before {
	content: '';
	position: absolute;
	right: -24px;
	top: 20px;
	width: 8px;
	height: 8px;
	border-left: 1px solid #eeeeee;
	border-bottom: 1px solid #eeeeee;
	transform: rotate(45deg);
	background: #f9f9f9;
	z-index: 10;
}

.comment-author img {
	width: 60px;
	height: 60px;
	float: left;
	border-radius: 50%;
}

.comment-body {
	float: left;
	width: 100%;
	position: relative;
	padding: 25px 30px;
	background: #f9f9f9;
	border-radius: 2px;
	border: 1px solid #eeeeee;
}

.comment-num {
	position: absolute;
	right: 30px;
	top: 20px;
	width: 30px;
	height: 30px;
	font-size: 10px;
	line-height: 30px;
	font-weight: 600;
	background: #ffffff;
	border: 1px solid #eeeeee;
}

.comment-body h4 {
	text-align: left;
	float: left;
	font-size: 15px;
	font-weight: 600;
	color: #666666;
	margin-bottom: 15px;
}

.comment-body .star-rating {
	float: left;
	margin: 5px 0 0 20px;
	font-size: 10px
}

.comment-body p {
	text-align: justify;
}

.comment-meta {
	float: left;
	top: 20px;
	position: relative;
	text-transform: uppercase;
	font-size: 10px;
	color: #000000;
	font-weight: 500;
}

.comment-reply-link {
	float: right;
	padding: 8px 20px;
	background: #292929;
	font-weight: 500;
	font-size: 11px;
	margin-top: 10px;
}

.comment-reply-link i {
	padding-right: 10px;
	color: #ffffff;
	font-size: 10px;
}

.comment-body_dec {
	position: absolute;
	bottom: 40px;
	right: 150px;
	left: 180px;
	height: 1px;
	background: #d9d9d9;
}

.pr-subtitle {
	float: left;
	font-size: 14px;
	font-weight: 600;
	color: #000000;
	margin-bottom: 30px;
}

.pr-subtitle span {
	padding-left: 6px;
}

/*------ forms -------------------------------------------------*/
.custom-form textarea,
.custom-form input[type="text"],
.custom-form input[type=email],
.custom-form input[type=tel],
.custom-form input[type=password],
select {
	float: left;
	border: none;
	border: 1px solid #e1e1e1;
	background: #f9f9f9;
	width: 100%;
	padding: 15px 30px;
	color: #000000;
	font-size: 12px;
	-webkit-appearance: none;
	font-family: 'Poppins', sans-serif;
}

.custom-form input::-webkit-input-placeholder,
.custom-form textarea::-webkit-input-placeholder, .subcribe-form input.enteremail::-webkit-input-placeholder {
	color: #666666;
	font-weight: 500;
	font-size: 12px;
	position: relative;
	font-family: 'Poppins', sans-serif;
}

.custom-form input:-moz-placeholder,
.custom-form textarea:-moz-placeholder {
	color: #666666;
	font-weight: 500;
	font-size: 12px;
	font-family: 'Poppins', sans-serif;
}

.custom-form textarea {
	min-height: 180px;
	resize: vertical;
	padding: 25px 30px;
	-webkit-appearance: none;
	border: 1px solid #e1e1e1;
}

.custom-form input {
	margin-bottom: 20px;
}

.custom-form .btn {
	border: none;
	-webkit-appearance: none;
	cursor: pointer;
	margin-top: 20px;
}

.custom-form textarea:focus, .custom-form input[type="text"]:focus, .custom-form input[type=email]:focus, .custom-form input[type=password]:focus {
	background: #ffffff;
	box-shadow: 0px 10px 14px 0px rgba(12, 0, 46, 0.06);
}

.nice-select {
	font-size: 12px;
	font-weight: 500;
	height: 48px;
	line-height: 48px;
	border-radius: 0;
	border: 1px solid #e1e1e1;
	background: #ffffff;
}

.nice-select .option.focus, .nice-select .option.selected.focus {
	color: #000000;
}

.irs-line-left, .irs-line-mid, .irs-line-right, .irs-bar-edge {
	background: #cccccc;
}

.irs-single {
	color: #292929;
	font-weight: 600;
}

/*------ shop-------------------------------------------------*/

.shop-item-grid {
	padding: 130px 30px;
	margin-bottom: 20px;
	position: relative;
	overflow: hidden;
	border-radius: 2px;
}

.listing-item-grid .d-gr-sec:before {
	opacity: 0.7;
}

.shop-item-grid_title {
	position: absolute;
	left: 30px;
	bottom: 14px;
	right: 30px;
	z-index: 10;
	text-align: left;
}

.shop-item-grid_title h3, .shop-item-grid_title h3 a, .shop-item-grid:hover p {
	color: #ffffff;
}

.shop-item-grid_title p {
	color: rgba(255, 255, 255, 0.7);
	transition: all .3s ease-in-out 0s;
}

.shop-item-grid_title h3 {
	font-weight: 700;
	padding-bottom: 5px;
	margin-bottom: 10px;
	font-size: 16px;
	position: relative;
}

.shop-item-grid_title h3:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 20px;
	height: 2px;
}

.shop-item-grid .shop-counter {
	position: absolute;
	left: 20px;
	top: 30px;
	z-index: 10;
	padding: 8px 16px;
	color: #292929;
	border-radius: 2px;
	font-size: 11px;
	font-weight: 600;
}

.shop-item-grid .shop-counter span {
	padding-right: 6px;
}

.d-gr-sec {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 2;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.95) 100%);
}

.shop-header {
	background: #ffffff;
	padding: 15px 30px;
	box-shadow: 0 19px 20px rgba(58, 87, 135, 0.08);
	margin-bottom: 20px;
}

.hero-wrap_custom_title {
	margin-top: -40px;
}

.hero-search {
	background: #ffffff;
	border-radius: 2px;
	padding: 80px 30px 30px;
	box-shadow: 0px 0px 0px 6px rgb(255 255 255 / 30%);
}

.hero_prwarp {
	padding: 0 0 0 60px;
}

.hero_prwarp-title {
	position: absolute;
	left: 0;
	top: 20px;
	font-size: 11px;
	color: #666666;
	font-weight: 600;
}

.hero-search-title {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	padding: 0 30px;
	height: 60px;
	line-height: 60px;
	border-bottom: 1px solid #eeeeee;
	text-align: left;
	color: #292929;
	font-weight: 600;
	font-size: 11px;
	text-transform: uppercase;
}

.hero-search-title i {
	margin-right: 15px;
	font-size: 14px;
	position: relative;
	top: 1px;
}

.hero-search-submit {
	height: 50px;
	line-height: 50px;
	border: none;
	border-radius: 2px;
	text-transform: uppercase;
	-webkit-appearance: none;
	font-family: 'Poppins', sans-serif;
	font-size: 10px;
	font-weight: 600;
	cursor: pointer;
	background: #292929;
}

.hero-search-submit:hover {
	color: #292929;
}

.hero-search-submit i {
	margin-right: 10px;
}

.shop-header .nice-select {
	border: 1px solid #eeeeee;
	background: #f5f5f5;
}

.shop-header_opt {
	float: right;
	width: 200px;
}

.shop-header h4 {
	float: left;
	font-size: 14px;
	font-weight: 600;
	position: relative;
	top: 15px;
}

.price-rage-wrap.shop-rage-wrap {
	padding-left: 0;
	padding-right: 70px;
	margin-top: 20px;
}

.shop-rage-wrap .srw_btn {
	position: absolute;
	right: 0;
	width: 60px;
	height: 28px;
	line-height: 28px;
	color: #292929;
	top: 8px;
	font-size: 10px;
	font-weight: 600;
}

.shop-rage-wrap .srw_btn:hover {
	background: #292929;
}

.radio-group input[type=radio] {
	position: absolute;
	visibility: hidden;
	display: none;
}

.radio-group label {
	color: #666666;
	float: left;
	padding: 12px 0;
	cursor: pointer;
	width: 33.3333333%;
	font-weight: 500;
	font-size: 11px;
}

.radio-group input[type=radio]:checked+label {
	color: #292929;
}

.radio-group label+input[type=radio]+label {
	border-left: 1px solid #e1e1e1;
}

.radio-group {
	border: 1px solid #e1e1e1;
	background: #f2f2f2;
	border-radius: 2px;
	overflow: hidden;
}

.reviews_counter_wrap {
	float: left;
	margin-bottom: 15px;
}

.reviews_counter_wrap_text, .reviews_counter_wrap .star-rating {
	float: left;
}

.reviews_counter_wrap_text {
	font-size: 11px;
	color: #999;
	font-weight: 500;
	margin-top: 1px;
}

.reviews_counter_wrap .star-rating i {
	margin: 0 1px;
	font-size: 10px;
}

.reviews_counter_wrap .star-rating {
	margin-right: 10px;
}

.grid-item_price_item {
	font-size: 11px;
	position: relative;
	float: left;
	font-weight: 600;
	text-transform: uppercase;
	color: #777;
	top: 0px;
}

.grid-item_price_item strong {
	font-size: 17px;
	color: #333333;
	position: relative;
	top: 1px;
	margin-left: 7px;
	font-weight: 700;
}

.grid-item_price {
	border-top: 1px solid #eeeeee;
	padding-top: 15px;
}

.grid-item_price .add_cart {
	float: right;
	padding: 8px 10px;
	font-size: 10px;
	font-weight: 600;
	cursor: pointer;
	background: #444;
	text-transform: uppercase;
}

.grid-item_price .add_cart i {
	margin-right: 6px;
}

.grid-item_price .add_cart:hover {
	color: #292929;
}

.detbox_notifer {
	position: absolute;
	top: 0;
	right: 0;
	padding: 12px 15px;
	font-size: 11px;
	font-weight: 600;
	z-index: 50;
	color: #292929;
	box-shadow: 0px 0px 0px 6px rgb(255 255 255 / 40%);
}

.load-more_btn {
	float: right;
	height: 50px;
	line-height: 50px;
	padding: 0 40px;
	background: #333333;
	font-weight: 600;
	cursor: pointer;
	font-size: 11px;
	margin-top: 30px;
}

.load-more_btn i {
	margin-right: 13px;
	color: #ffffff;
	position: relative;
}

.load-more_btn:hover i {
	animation: spin3 .5s linear infinite;
}

@keyframes spin3 {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(-360deg);
	}
}

.det-box-ietm.dbi_shop {
	padding-bottom: 15px;
}

.shop-header-title {
	background: #ffffff;
	padding: 30px 45px 20px;
}

.shop-header-title h2 {
	text-align: left;
	font-size: 22px;
	font-weight: 700;
	border-bottom: 1px solid #eeeeee;
	padding-bottom: 15px;
}

.shop-header-title h2 span {
	font-size: 12px;
	color: #999;
	font-weight: 500;
	margin-left: 10px;
	position: relative;
	top: -12px;
}

.shop-header-title_opt, .shop-header-title_opt li {
	float: left;
}

.shop-header-title_opt {
	margin-top: 10px;
}

.shop-header-title_opt li {
	margin-right: 20px;
}

.shop-header-title .single_post-opt {
	margin-top: 16px;
}

.shop-header-title_opt li .reviews_counter_wrap {
	margin-top: 5px;
}

.qty_btn {
	float: right;
	margin-top: 20px;
}

.qty_btn .btn {
	border: none;
	margin-top: 0;
}

.qty_btn input {
	float: left;
	border: 1px solid #eeeeee;
	margin-right: 10px;
	background: #f9f9f9;
	position: relative;
	height: 50px;
}

.leave-rating-wrap {
	top: -6px;
	margin: 0 0 20px 0;
}

.leave-rating, .leave-rating-title {
	float: left;
}

.leave-rating-title {
	margin-right: 10px;
	font-size: 12px;
	color: #000000;
	position: relative;
	font-weight: 600;
}

.leave-rating input[type="radio"] {
	display: none;
}

.custom-form .leave-rating label {
	font-size: 14px;
	float: right;
	letter-spacing: 4px;
	cursor: pointer;
	transition: 0.3s;
	font-weight: 500;
	width: auto;
}

.leave-rating label:hover:before, .leave-rating label.selected:before {
	font-weight: 900;
}

.leave-rating:hover input[type="radio"]:checked~label:before, .leave-rating input[type="radio"]:checked~label:before, .leave-rating label:hover~label:before {
	font-weight: 900 !important;
}

.checkout-table {
	border: 1px solid #eeeeee;
	float: left;
	width: 100%;
	font-size: 12px;
	background: #ffffff;
	font-weight: 600;
}

.checkout-table>tbody>tr>td,
.checkout-table>tbody>tr>th,
.checkout-table>tfoot>tr>td,
.checkout-table>tfoot>tr>th,
.checkout-table>thead>tr>td,
.checkout-table>thead>tr>th {
	border-top: 1px solid #eeeeee;
	padding: 12px;
	border-right: 1px solid #eeeeee;
}

.checkout-table tr td:nth-child(odd) {
	background: #f9f9f9;
}

.checkout-table tbody tr td:first-child,
.checkout-table tbody tr th:first-child {
	max-width: 56px;
	background: #ffffff;
	border-right: 1px solid #eeeeee;
}

.pr-remove {
	vertical-align: middle !important;
	text-align: center;
}

.order-money {
	font-size: 12px;
}

.order-count {
	border: none;
	width: 60px;
	height: 50px;
	text-align: center;
	font-weight: bold;
}

.pr-remove {
	font-size: 10px;
}

.pr-remove:hover i {
	color: #292929;
}

.product-name {
	font-weight: 500;
}

.coupon-holder {
	margin-top: 30px;
	padding: 12px 0 0 0;
}

.coupon-holder input {
	float: left;
	margin-bottom: 20px;
	font-size: 14px;
	height: 50px;
	border-radius: none;
	position: relative;
	z-index: 20;
	padding-left: 18px;
	color: #000000;
	border: 0;
	border: 1px solid #eeeeee;
	background: #ffffff;
}

.coupon-holder button {
	float: left;
	height: 50px;
	border: none;
	color: #ffffff;
	cursor: pointer;
	padding: 0 40px;
	font-size: 10px;
	font-weight: 600;
	background: #292929;
	-webkit-appearance: none;
	font-family: 'Poppins', sans-serif;
	transition: all 0.3s ease-in-out;
}

.coupon-holder button.btn-uc {
	float: right;
}

.coupon-holder button:hover {
	color: #292929;
}

h4.cart-title {
	font-size: 15px;
	font-weight: 600;
	margin-bottom: 20px;
	text-align: left;
	color: #000000;
}

h4.cart-title span {
	padding: 0 2px;
	color: #555;
}

.cart-totals button {
	float: right;
	margin-top: 40px;
	height: 48px;
	border: none;
	color: #292929;
	width: 100%;
	cursor: pointer;
	padding: 0 20px;
	font-size: 11px;
	font-weight: 600;
	-webkit-appearance: none;
	position: relative;
	z-index: 2;
	font-family: 'Poppins', sans-serif;
	transition: all 0.3s ease-in-out;
}

.cart-totals button:hover {
	background: #333333;
}

.cart-totals:before {
	content: '';
	position: absolute;
	top: 15px;
	left: 15px;
	right: 15px;
	bottom: 15px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	z-index: 2;
	box-shadow: 0px 0px 0px 20px rgba(255, 255, 255, 0.03);
}

.cart-totals {
	padding: 66px 50px;
	background: #292929;
}

.cart-totals:after {
	font-family: Font Awesome\ 5 Pro;
	content: '\f83e';
	position: absolute;
	right: 50px;
	top: 30px;
	font-size: 44px;
	color: rgba(255, 255, 255, 0.1);
	z-index: 1;
}

.cart-totals h3 {
	font-size: 20px;
	font-weight: 500;
	text-align: left;
	padding-bottom: 20px;
	color: #ffffff;
}

.total-table {
	width: 100%;
	float: left;
	position: relative;
	z-index: 2;
}

.total-table tr {
	font-size: 14px;
	text-align: right;
}

.total-table th, .total-table tr {
	padding: 15px 0;
	color: #ffffff;
}

.total-table th {
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	text-align: left;
	font-size: 12px;
}

.tab-content {
	width: 100%;
	display: none;
	float: left;
}

.tab {
	width: 100%;
	float: left;
}

.first-tab {
	display: block;
}

.shop-tabs-menu {
	margin-bottom: 20px;
}

.shop-tabs-menu, .shop-tabs-menu li {
	float: left;
}

.shop-tabs-menu li {
	margin-right: 10px;
	position: relative;
	z-index: 3;
}

.shop-tabs-menu li a {
	padding-top: 12px;
	padding-bottom: 12px;
	background: #f5f5f5;
}

.shop-tabs .content-table table {
	margin: 0 0 20px;
}

.shop-tabs-menu:before, .shop-tabs-menu:after {
	content: '';
	position: absolute;
	left: 20%;
	height: 1px;
	right: 0;
	background: #eeeeee;
	top: 50%;
	z-index: 1;
}

.shop-tabs-menu:after {
	left: auto;
	width: 40px;
	z-index: 2;
}

.item-related {
	text-align: left;
}

.item-related_content {
	padding: 15px 20px;
	background: #ffffff;
}

.post-related h6 {
	margin-bottom: 20px;
}

.item-related img {
	width: 100%;
	height: auto;
}

.item-related h3 {
	float: left;
	width: 100%;
	font-weight: 700;
	font-size: 13px;
}

.item-related h3 a {
	color: #444;
}

.item-related {
	padding-top: 15px;
	padding-bottom: 15px;
}

.item-related_title {
	float: left;
	width: 100%;
	text-align: left;
	font-size: 16px;
	font-weight: 600;
	color: #292929;
	margin: 30px 0 20px;

	position: relative;
}

.item-related_title:before {
	content: '';
	position: absolute;
	bottom: -10px;
	left: 0;
	width: 30px;
	height: 3px;
}

/*------404------------------------------------------------*/
.error-wrap {
	padding: 0 0 40px 0;
}

.error-wrap h2 {
	font-size: 154px;
	color: #ffffff;
	font-weight: 600;
	letter-spacing: 10px;
	position: relative;
}

.error-wrap h2:before {
	content: '';
	position: absolute;
	left: 50%;
	width: 50px;
	height: 2px;
	bottom: 30px;
	margin-left: -30px;
}

.error-wrap p {
	color: #ffffff;
	font-size: 12px;
	text-align: center;
}

.error-wrap form {
	margin: 30px auto 20px;
	max-width: 550px;
	overflow: hidden;
	border-radius: 2px;
	position: relative;
	box-shadow: 0px 0px 0px 7px rgba(255, 255, 255, 0.2);
}

.error-wrap form.custom-form input {
	float: left;
	width: 100%;
	border: none;
	background: #ffffff;
	height: 50px;
	padding: 0 100px 0 20px;
	z-index: 1;
	margin: 0;
}

.error-wrap form .search-submit {
	position: absolute;
	top: 0;
	right: 0;
	width: 100px;
	height: 50px;
	line-height: 50px;
	z-index: 2;
	color: #000000;
	border: none;
	cursor: pointer;
}

.error-wrap form .search-submit:hover {
	background: #292929;
}

.error-wrap a.btn {
	display: inline-table;
	margin-top: 10px;
	float: none;
}

/*------mapa------------------------------------------------*/
.objects {
	position: relative;
}

.objects .object-label {
	position: absolute;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background-color: #0089b3;
	padding: 0;
	box-shadow: none;
	cursor: pointer;
}

.objects .object-label::after {
	position: absolute;
	content: "";
	bottom: -3px;
	top: -3px;
	left: -3px;
	right: -3px;
	background-color: transparent;
	border-radius: 50%;
	border: 2px solid #ffffff;
	margin: 0px;
	opacity: 1;
	transform-origin: center;
	animation: anim 1000ms linear infinite;
}

@keyframes anim {
	from {
		margin: 0px;
		opacity: 1;
	}

	to {
		margin: -5px;
		opacity: 0;
	}
}

.objects [tooltip] {
	position: absolute;
	/*Labels America*/
}

.objects [tooltip]:hover::before, .objects [tooltip]:hover::after {
	display: block;
}

.objects [tooltip]:not([flow])::after, .objects [tooltip][flow^=up]::after {
	bottom: calc(100% + 5px);
}

.objects [tooltip]:not([flow])::before, .objects [tooltip]:not([flow])::after, .objects [tooltip][flow^=up]::before, .objects [tooltip][flow^=up]::after {
	left: 50%;
	transform: translate(-50%, -0.5em);
}

.objects [tooltip]:not([flow]):hover::before, .objects [tooltip]:not([flow]):hover::after, .objects [tooltip][flow^=up]:hover::before, .objects [tooltip][flow^=up]:hover::after {
	animation: tooltips-vert 300ms ease-out forwards;
}

@keyframes tooltips-vert {
	to {
		opacity: 0.9;
		transform: translate(-50%, 0);
	}
}

@keyframes tooltips-horz {
	to {
		opacity: 0.9;
		transform: translate(0, -50%);
	}
}

.objects [tooltip=""]::before, .objects [tooltip=""]::after {
	display: none !important;
}

.modal-body .objects {
	position: relative;
}

.modal-body .objects .map {
	width: 90%;
	height: auto;
}

.modal-body .objects .object-label {
	/*Label Miami*/
	/*Label Peru*/
	/*Label CDMX*/
}

.modal-body .objects .object-label img {
	width: 130px;
	height: 100px;
}

.modal-body .objects .object-label.label-loscabos {
	left: 25%;
	top: 50%;
}

.modal-body .objects .object-label.label-campeche {
	left: 83.7%;
	top: 71%;
}



.modal-body .objects .object-label.label-chiapas {
	left: 77.8%;
	top: 91.5%;
}

.modal-body .objects .object-label.label-cdmx {
	left: 57.5%;
	top: 75.5%;
}

.modal-body .objects .object-label.label-colima {
	left: 42.8%;
	top: 75.7%;
}

.modal-body .objects .object-label.label-edomex {
	left: 55.5%;
	top: 75.5%;
}

.modal-body .objects .object-label.label-guerrero {
	left: 56.5%;
	top: 84.5%;
}

.modal-body .objects .object-label.label-michoacan {
	left: 45.8%;
	top: 80%;
}

.modal-body .objects .object-label.label-morelos {
	left: 57.5%;
	top: 78.5%;
}

.modal-body .objects .object-label.label-nayarit {
	left: 39.7%;
	top: 64%;
}

.modal-body .objects .object-label.label-oaxaca {
	left: 65%;
	top: 92.5%;
}

.modal-body .objects .object-label.label-quintanaroo {
	left: 91%;
	top: 71%;
}

.modal-body .objects .object-label.label-sanluis {
	left: 52%;
	top: 60%;
}

.modal-body .objects .object-label.label-tamaulipas {
	left: 61%;
	top: 41%;
}

.modal-body .objects .object-label.label-veracruz {
	left: 65%;
	top: 76%;
}

.modal-body .objects .object-label.label-yucatan {
	left: 93%;
	top: 63.5%;
}

.modal-body .objects .mytooltip {
	position: absolute;
	right: 0;
	left: -22%;
	bottom: 0;
	top: -53%;
	z-index: 999;
}

.modal-body .objects .mytooltip .tooltip-item {
	display: inline-block;
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	background: transparent;
	cursor: pointer;
}

.modal-body .objects .mytooltip .tooltip-content {
	position: absolute;
	z-index: 9999;
	left: 50%;
	bottom: 100%;
	-webkit-box-shadow: -5px -5px 15px rgba(48, 54, 61, 0.2);
	box-shadow: -5px -5px 15px rgba(48, 54, 61, 0.2);
	background: #000000cc;
	opacity: 0;
	cursor: default;
	pointer-events: none;
	/*Tooltip Miami*/
	/*Tooltip Peru*/
	/*Tooltip Cdmx*/
}

.modal-body .objects .mytooltip .tooltip-content.riverside {
	width: 130px;
	height: 100px;
	margin: 0 0 20px -63px;
}

.modal-body .objects .mytooltip .tooltip-content img {
	position: relative;
	display: block;
}

.modal-body .objects .mytooltip .tooltip-content .tooltip-text {
	color: #000000;
	font-size: 10.5px;
}

.modal-body .objects .mytooltip .tooltip-item::after {
	content: "";
	position: absolute;
	width: 360px;
	height: 20px;
	bottom: 100%;
	left: 50%;
	pointer-events: none;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.modal-body .objects .mytooltip:hover .tooltip-item::after {
	pointer-events: auto;
}

.modal-body .objects .mytooltip:hover .tooltip-content {
	pointer-events: auto;
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0) rotate3d(0, 0, 0, 0deg);
	transform: translate3d(0, 0, 0) rotate3d(0, 0, 0, 0deg);
}

@media only screen and (max-width: 630px) {
	.modal-body .objects .mytooltip {
		display: none;
	}
}

/*------login------------------------------------------------*/ 
.main-register-container {
	position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    overflow: auto;
	display: none;
    -webkit-transform: translate3d(0,0,0);
    background: rgba(0,0,0,.6);
}
.reg-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    -webkit-transform: translate3d(0,0,0);
}
.main-register-holder {
	max-width: 580px;
	margin: 150px auto;
	position: relative;
	z-index: 2;
}
.main-register {
	float:left;
	width:100%;
	position:relative;
	padding:50px 50px 20px;
	transition: all .4s ease-in-out;
    transform :scale(0.6);
	opacity:0; 
	background:#fff;
	border-radius:2px;
	overflow:hidden;
	box-shadow: 0 15px 5px rgba(0,0,0,0.08);
}
.vis_mr {
	opacity:1;
    transform :scale(1.0);
}
.main-register .tabs-menu {
	position: absolute;
	left: 0;
	top: 0;
	right: 50px;
}
.close-modal {
	position: absolute;
	right: 0;
	top: 0;
	width: 50px;
	height: 50px;
	line-height: 50px;
	cursor: pointer;
	font-size: 15px;
	transition: all .4s ease-in-out;
}
.close-modal:hover {
	background: #f1f1f1;
}
.main-register .tabs-menu li {
	float: left;
	width: 50%;
}
.main-register .tabs-menu li a {
	height: 50px;
	line-height: 50px;
	float: left;
	width: 100%;
	background: #292929;
	text-transform: uppercase;
	font-size: 10px;
	font-weight: 500;
}
.main-register .tabs-menu li.current a  {
	color: #ffffff;
}

.main-register .tabs-menu li a i {
	margin-right: 10px;
	font-weight: 800;
}
.custom-form .log-submit-btn {
	float:left;
	padding:18px 0;
	width: 100%;
	border:none;
	border-radius:2px;
	color:#ffffff;
	font-weight: 600;
	font-size: 11px;
	text-transform: uppercase;
	cursor:pointer;
	-webkit-appearance: none;
	margin-bottom:16px;
	font-family: 'Poppins', sans-serif;
}
.custom-form .log-submit-btn:hover {
	background-color: #292929;
	color:#0089b3;
}

/*------  Responsive ------------------------------------------------------*/
@media only screen and (max-width: 1470px) {
	.hero-wrap .hero-slider-cont-prev, .hero-wrap .hero-slider-cont-next {
		left: auto;
		right: 40px;
		top: 100%;
		margin-top: -60px;
	}

	.play-pause_slider {
		right: 82px;
		bottom: 20px
	}

	.hero-wrap .hero-slider-cont-prev {
		right: 124px;
	}

	.hsp_mob {
		right: 184px;
		bottom: 32px;
	}
}

@media only screen and (max-width: 1064px) {
	.height-emulator, .top-bar-header-contact, .notifer-block h4:before, .notifer-block h4:after, .mob-hid, .about-img:before, .cs-title, .filter-holder:before, .inline-filter .gallery-filters a.gallery-filter-active:before, .mob-hid_filters {
		display: none;
	}

	.tbhc_btn, .mob-hid_btn {
		display: block;
		float: left;
		font-size: 10px;
		font-weight: 500;
		text-transform: uppercase;
		color: rgba(255, 255, 255, 0.8)
	}

	.mob-hid_btn {
		padding: 18px 0;
		cursor: pointer;
		font-size: 11px;
		font-weight: 600;
		margin-bottom: 15px;
	}

	.mob-hid_btn i {
		margin-right: 10px;
		color: #ffffff;
	}

	.tbhc_btn i {
		margin-right: 10px;
		font-size: 12px;
		position: relative;
		top: 1px;
	}

	.nav-button-wrap {
		float: right;
		height: 70px;
		width: 70px;
		cursor: pointer;
		position: relative;
		display: block;
		border-left: 1px solid #eeeeee;
		left: 24px;
	}

	.nav-button {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 22px;
		height: 20px;
		margin-left: -11px;
		margin-top: -6px;
	}

	.nav-button span {
		float: left;
		width: 100%;
		height: 2px;
		background: #000000;
		margin-bottom: 4px;
		border-radius: 4px;
		transition: all 200ms linear;
	}

	.nav-button span:first-child {
		width: 50%;
	}

	.main-menu nav ul {
		display: none;
	}

	.main-menu {
		position: absolute;
		top: 70px;
		right: -20px;
		width: 300px;
		z-index: 50;
		padding: 15px 10px;
		background: #292929;
		visibility: hidden;
		opacity: 0;
		transition: all 0.4s ease-in-out;
	}

	.vismobmenu {
		opacity: 1;
		right: 0;
		visibility: visible;
	}

	.menusb {
		display: block;
		float: left;
		position: relative;
		width: 100%;
		overflow: hidden;
	}

	.main-menu .menusb ul {
		display: block;
		float: left;
		position: relative;
		width: 100%;
	}

	.menusb li {
		margin: 0;
		float: left;
		width: 100%;
		position: relative;
		overflow: hidden;
		padding: 0 20px;
	}

	.menusb li i {
		position: absolute;
		right: 18px;
		top: 12px;
	}

	.menusb li i:before {
		content: "\f0da"
	}

	.menusb a {
		float: left;
		width: 100%;
		padding: 8px 5px;
		position: relative;
		font-weight: 600;
		text-transform: uppercase;
		font-size: 11px;
		color: #ffffff;
		line-height: 20px;
		text-align: left;
	}

	.menusb a.back {
		padding-left: 24px;
	}

	.menusb a.back:before {
		font-family: Font Awesome\ 5 Pro;
		content: "\f0d9";
		font-size: 14px;
	}

	.main-footer {
		position: relative !important;
	}

	.main-footer, .footer-social, .hero-counter_wrap, .half-carousel-title, .half-carousel-conatiner, .boxed-container-title, .boxed-container-wrap, .inline-filter.shop-filter, .about-img-hotifer, .load-more_btn, .map-links_tabs, .map-links_tabs a, .shop-tabs-menu li a, .contact-social, .det-list ul, .inline-filter .count-folio, .inline-filter .gallery-filters, .inline-filter .gallery-filters a, .mob-hid_btn, .qty_btn, .shop-header_opt, .team-single_header_img, .team-single_header_content {
		width: 100%;
	}

	.dl-footer_btn, .main-footer, .nb_btn, .hero-counter_wrap, .half-carousel-title, .boxed-container-wrap, .about-img-hotifer, .add_comm, .contact-social, .qty_btn {
		float: left;
	}

	.team-single_header_content {
		padding: 25px 30px 0 20px;
	}

	.shop-header h4 {
		margin: 10px 0 14px;
		top: 0;
	}

	.dl-footer_btn {
		top: 0;
		margin: 10px 10px 20px 0;
	}

	.load-more_btn {
		height: 60px;
		line-height: 60px;
		margin: 0 0 20px 0;
	}

	.footer-inner {
		padding: 60px 0 20px;
	}

	.footer-bottom {
		margin: 0 0 10px;
		padding-top: 20px;
	}

	.main-section_text-block h2, .content-inner {
		margin-bottom: 10px;
	}

	.nb_btn, .about-img, .hero-search, .order-wrap.ord-wrp_mar {
		margin-top: 30px;
	}

	.notifer-block h4 {
		top: 0;
		padding-left: 0;
	}

	.hero-counter_wrap {
		position: relative;
		right: 0;
		left: 0;
		bottom: 0;
	}

	.half-carousel-title {
		position: relative;
		padding: 90px 0;
		overflow: hidden;
	}

	.half-carousel-title-item {
		padding: 0 30px;
		top: 0;
	}

	.hcw-cont-prev {
		left: 0;
	}

	.bold-facts .inline-facts, .gallery-item, .inline-facts {
		width: 50%;
	}

	.boxed-container-wrap {
		position: relative;
		padding: 150px 0;
	}

	.about-img-title {
		top: 80px;
		left: auto;
		right: 20px;
	}

	.about-img-hotifer {
		position: relative;
		right: 0;
		bottom: 0;
		margin-top: 10px;
	}

	.hero_promo-wrap {
		top: auto;
		bottom: 50px;
	}

	.post-content, .content-box {
		padding: 30px 20px 20px;
	}

	.det-box-ietm.det-box-ietm_single {
		padding: 35px 30px;
	}

	.main-sidebar {
		margin-top: 20px;
	}

	.pagination {
		margin: 0;
	}

	.mob-conf {
		margin: 0 0 20px 0;
	}

	.map-links_tabs {
		margin: 20px 0;
	}

	.map-links_tabs a, .shop-tabs-menu li a, .qty_btn {
		margin: 10px 0 0 0;
	}

	.contact-social {
		margin: 0 0 10px 0;
	}

	.order-wrap {
		margin: 0 0 30px 0;
	}

	.order-wrap a.ord-link {
		float: left;
		margin: 20px 0 0 0;
	}

	.order-wrap h4 {
		top: 0;
		padding-left: 0;
	}

	.filter-holder {
		height: auto;
		line-height: inherit;
		padding: 0 0 60px 0;
		margin-bottom: 20px;
	}

	.inline-filter .count-folio {
		top: auto;
		bottom: 0;
	}

	.inline-filter .gallery-filters a {
		padding: 20px 10px;
		border-bottom: 1px solid #eeeeee;
	}

	.inline-filter .gallery-filters a.gallery-filter-active {
		background: #292929;
		border-color: transparent;
		color: #F7B90F
	}

	.four-column .gallery-item {
		width: 33.3%;
	}

	.stp-bot {
		padding-bottom: 30px;
	}
}

@media only screen and (max-width: 756px) {
	.header-btn, .subfooter-nav:before, .order-wrap h4:before, .ss-slider-controls2, .shop-tabs-menu:before, .shop-tabs-menu:after {
		display: none;
	}

	.header-inner .container, .cal-head, .cal-item, .two-column .gallery-item, .hidden-filter, .shop-tabs-menu li {
		width: 100%
	}

	.header-search-wrap {
		right: 0;
	}

	.share-wrapper {
		right: 69px;
	}

	.logo-holder {
		height: 56px;
		top: 3px;
		margin-left: 10px;
	}

	.sub-footer {
		height: auto;
		line-height: inherit;
		padding: 22px 0;
	}

	.subfooter-nav {
		float: left;
		margin: 14px 0 0;
		width: 100%;
	}

	.subfooter-nav li {
		margin: 0 15px 0 0;
	}

	.to-top {
		position: absolute;
		top: 50%;
		right: 20px;
		margin-top: -20px;
	}

	.boxed-container-title {
		padding: 50px 25px;
	}

	.about-img-title {
		top: 20px;
	}

	.hero-wrap-title_item h2 {
		font-size: 35px;
		line-height: 45px;
	}

	.parallax-inner .hero-scroll-down-notifer {
		position: relative;
		bottom: 0;
		float: left;
		margin-top: 10px;
	}

	.content-nav li {
		padding: 0 20px;
	}

	.comment {
		padding: 0 0 30px 0;
	}

	.comment-author {
		top: -20px;
		left: 20px;
		z-index: 20;
	}

	.comment-author, .comment-author img {
		width: 40px;
		height: 40px;
	}

	.comment-body, .det-box-ietm.det-box-ietm_single2, .det-box-ietm {
		padding: 25px 20px;
	}

	.coupon-holder input, .coupon-holder button.btn-uc {
		width: 100%;
	}

	.coupon-holder button.btn-a {
		position: absolute;
		right: 0;
		top: 12px;
		z-index: 30;
	}

	.coupon-holder button.btn-uc {
		margin: 0 0 20px 0;
	}

	.cal-head {
		margin: 0 0 30px 0;
	}

	.cal-row.rg-area, .shop-header-title {
		padding: 30px 20px;
	}

	.project-progress {
		padding-right: 0;
	}

	.project-progress_total, .shf_btn {
		position: relative;
		float: left;
	}

	.show-case-slider-wrap {
		height: 300px;
	}

	.two-column .gallery-item {
		padding: 10px 0 0 0;
	}

	.four-column .gallery-item {
		width: 50%;
	}

	.shop-tabs-menu li {
		margin: 0;
	}

	.shf_btn {
		margin-top: 20px;
	}
}

@media only screen and (max-width: 630px) {
	.topbar-social, .hero_promo-title, .ss-slider-controls2.fwc_pag, .prevposts-link, .nextposts-link {
		display: none;
	}

	.grid-small-pad .gallery-item {
		padding: 0;
	}

	.footer-serv-holder ul li, .dl-footer_btn, .bold-facts .inline-facts, .header-search-wrap, .header-cart_wrap, .gallery-item, .inline-facts, .add_comm, .four-column .gallery-item, .shop-header-title .single_post-opt {
		width: 100%;
	}

	.add_comm {
		text-align: left;
	}

	.bold-facts .inline-facts {
		border-bottom: 1px solid rgba(255, 255, 255, 0.1)
	}

	.dl-footer_btn {
		margin-top: 0;
	}

	.show-reg-form {
		margin-right: 0;
	}

	.header-inner, .top-bar {
		height: 60px;
	}

	.top-bar {
		line-height: 60px;
	}

	.nav-button-wrap {
		width: 60px;
		height: 60px;
		line-height: 60px;
	}

	.show-share-btn {
		width: 15px;
		height: 60px;
		line-height: 60px;
		border-left: 1px solid transparent;
	}

	#wrapper {
		padding-top: 120px;
	}

	.main-menu, .header-cart_wrap {
		top: 60px;
	}

	.share-wrapper {
		right: 59px;
	}

	.logo-holder {
		height: 56px;
		top: 3px;
		margin-left: 5px;
	}

	.tc-button {
		top: 100%;
		margin-top: -30px;
	}

	.hero_promo-wrap {
		width: 50px;
		right: 30px;
	}

	.error-wrap h2 {
		font-size: 104px;
	}

	.ts_btn_wrap {
		position: relative;
		float: left;
		margin: 0 0 10px 0;
		top: 0;
	}

	.ts_btn {
		margin: 0 4px 0 0;
	}

	.show-case-slider-wrap {
		height: 220px;
	}

	.fw-carousel-button-next {
		right: 0;
	}

	.fw-carousel-button-prev, .slide-numb {
		left: 0;
	}

	.slide-numb {
		top: 0;
	}

	.det-list {
		padding: 45px 10px 40px;
	}

	.det-list ul {
		padding: 0 10px;
	}

	.page-title h3 {
		font-size: 28px;
	}

	.shop-header-title .single_post-opt {
		margin-top: 0;
	}

	.shop-header-title h2 {
		font-size: 17px;
	}

	.det-list li {
		padding-left: 15px;
	}

	.promo-link {
		background: #292929;
		color: #ffffff;
		bottom: 0;
		left: 0;
	}
}

@media only screen and (-webkit-min-device-pixel-ratio: 2) {
	.bg {
		background-attachment: scroll !important;
		-webkit-background-size: cover;
		background-position: center;
	}
}

.timeline {
	display: flex;
	margin: 0 auto;
	flex-wrap: wrap;
	flex-direction: column;
	max-width: 700px;
	position: relative;
}

.timeline:before {
	position: absolute;
	left: 50%;
	width: 2px;
	height: 100%;
	margin-left: -1px;
	content: "";
	background: rgba(255, 255, 255, 0.6);
}

.timeline-header {
	width: 100%;
	text-align: center;
	margin-bottom: 80px;
	position: relative;
}

.timeline-header__title {
	color: #ffffff;
	font-weight: 600;
	font-size: 16px;
	margin-bottom: 10px;
}

.timeline__content-title {
	color: #ffffff;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
	text-transform: uppercase;
	margin-top: 20px;
	margin-bottom: 0;
}

.timeline__content-desc {
	color: #ffffff;
	line-height: 25px;
	text-align: justify;
	margin: 0;
}

.timeline__img {
	max-width: 100%;
	box-shadow: 0 10px 15px rgba(0, 0, 0, 0.6);
}

.timeline-container {
	width: 100%;
	position: relative;
	padding: 80px 0;
	transition: 0.3s ease 0s;
	background-attachment: fixed;
	background-size: cover;
}

.timeline-container:before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.70);
	content: "";
}

.timeline-item {
	padding: 40px 0;
	opacity: 0.3;
	box-sizing: border-box;
	width: calc(50% - 40px);
	display: flex;
	position: relative;
	transform: translateY(-80px);
}

.timeline-item:before {
	position: absolute;
	color: #ffffff;
	font-size: 66px;
	text-transform: uppercase;
	content: attr(data-text);
	right: calc(-100% - 20px);
	padding-right: 80px;
	margin-top: -110px;
	width: 100%;
	opacity: 0;
}

.timeline-item:nth-child(even) {
	align-self: flex-end;
}

.timeline-item:nth-child(even):before {
	right: auto;
	text-align: right;
	left: calc(-100% - 20px);
	border-left: none;
	padding-right: 60px;
}

.timeline-item--active {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0px);
}

.timeline-item--active:before {
	top: 50%;
	transition: 0.3s all 0.2s;
	opacity: 1;
}

@media only screen and (max-width: 767px) {
	.timeline:before {
		left: 40px;
	}
}


@media only screen and (max-width: 767px) {
	.timeline-item {
		align-self: baseline !important;
		width: 100%;
		padding: 0 30px 150px 80px;
	}

	.timeline-item:before {
		left: 10px !important;
		padding: 0 !important;
		top: 50px;
		text-align: center !important;
		width: 60px;
		border: none !important;
	}

	.timeline-item:last-child {
		padding-bottom: 40px;
	}
}

#ts-map-hero {
	width: 100%;
	height: 1000px;
}

.leaflet-control-locate a:before {
    content: "\f3c5";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: #000000;
}

#ts-map-hero.leaflet-container:after {
	z-index: 401;
}

#ts-map-hero:after {
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	-webkit-animation-duration: .5s;
	animation-duration: .5s;
	-webkit-animation-name: ts-dimOut;
	animation-name: ts-dimOut;
	background-color: black;
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	transition: opacity .4s ease;
	opacity: 0;
}

#ts-map-hero.ts-dim-map:after {
	-webkit-animation-name: ts-dimIn;
	animation-name: ts-dimIn;
}

.ts-black-gradient {
	position: relative;
}

.ts-black-gradient:before {
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
	bottom: 0;
	content: "";
	height: 50%;
	left: 0;
	position: absolute;
	width: 100%;
}

/* =====================================================================================================================
	MARKER
   */

.ts-marker-wrapper {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transform-origin: 0 2.75rem;
	transform-origin: 0 2.75rem;
	transition: .3s ease;
}

.ts-marker-wrapper.ts-hide-marker {
	-webkit-transform: scale(0);
	transform: scale(0);
}

.leaflet-div-icon {
	background-color: transparent;
	border: none !important;
}

.leaflet-marker-icon.ts-hide-marker .ts-marker {
	-webkit-transform: scale(0);
	transform: scale(0);
}

.ts-marker {
	display: inline-block;
	position: relative;
	padding-bottom: .5rem;
	transition: .6s cubic-bezier(.16, .64, .31, 1.68);
	-webkit-transform: translateY(0) rotate(.002deg);
	transform: translateY(0) rotate(.002deg);
}

.ts-marker:hover, .ts-marker.ts-hover {
	color: inherit;
	-webkit-transform: translateY(-0.25rem);
	transform: translateY(-0.25rem);
	z-index: 1;
}

.ts-marker:hover .ts-marker__title, .ts-marker:hover .ts-marker__info,
.ts-marker.ts-hover .ts-marker__title, .ts-marker.ts-hover .ts-marker__info {
	opacity: 1;
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

.ts-marker:hover .ts-marker__info, .ts-marker.ts-hover .ts-marker__info {
	transition-delay: .05s;
}

.ts-marker:hover:before, .ts-marker.ts-hover:before {
	-webkit-transform: translateY(.25rem) scaleX(.8);
	transform: translateY(.25rem) scaleX(.8);
	opacity: .2;
}

.ts-marker:after {
	border-color: #191919 transparent transparent transparent;
	border-width: .375rem .375rem 0 0;
	border-style: solid;
	bottom: .1875rem;
	content: "";
	left: 0;
	width: 0;
	height: 0;
	position: absolute;
}

.ts-marker:before {
	content: url("../images/mapa/marker-shadow.png");
	bottom: -0.375rem;
	left: -0.0625rem;
	position: absolute;
	opacity: .8;
	transition: .6s cubic-bezier(.16, .64, .31, 1.68);
	-webkit-transform: translateY(0) scaleX(1);
	transform: translateY(0) scaleX(1);
	-webkit-transform-origin: left;
	transform-origin: left;
}

.ts-marker .ts-marker__title, .ts-marker .ts-marker__info {
	box-shadow: 0 .125rem .3125rem rgba(0, 0, 0, .1);
	position: absolute;
	font-size: .6875rem;
	font-weight: 500;
	left: .25rem;
	white-space: nowrap;
	border-radius: .0625rem;
	pointer-events: none;
	padding: .0625rem .25rem;
	transition: .5s cubic-bezier(.03, .18, .05, 1.01);
	-webkit-transform: translateX(.25rem);
	transform: translateX(.25rem);
	opacity: 0;
}

.ts-marker .ts-marker__title {
	color: #000000;
	background-color: #ffffff;
	top: .25rem;
	z-index: 2;
}

.ts-marker .ts-marker__info {
	background-color: #0089b3;
	color: #000000;
	top: 1.25rem;
	z-index: 1;
}

.ts-marker .ts-marker__feature {
	top: -0.625rem;
	left: -0.625rem;
	position: absolute;
	z-index: 3;
}

.ts-marker .ts-marker__feature>* {
	background-color: #0089b3;
	box-shadow: 0 .125rem .3125rem rgba(0, 0, 0, .1);
	border-radius: 50%;
	color: #ffffff;
	font-size: .5rem;
	width: 1.375rem;
	text-align: center;
	height: 1.375rem;
	line-height: 1.375rem;
}

.ts-marker .ts-marker__image {
	background-size: cover;
	background-position: center;
	height: 2.625rem;
	width: 2.625rem;
	position: relative;
}

.ts-marker .ts-marker__image:before {
	border-bottom-right-radius: .125rem;
}

.ts-marker .ts-marker__image img {
	width: 100%;
	height: auto;
	display: block;
	margin: auto;
}

.ts-marker-hide {
	opacity: 0.5;
	filter: blur(2px);
}

/* =====================================================================================================================
  INFOBOX
  */

.infobox-wrapper {
	transition: .3s transform cubic-bezier(.51, .31, .28, 1.16);
	-webkit-transform: scale(0);
	transform: scale(0);
	-webkit-transform-origin: bottom left;
	transform-origin: bottom left;
}

.infobox-wrapper>img {
	display: none;
}

.infobox-wrapper.ts-show {
	-webkit-transform: scale(1);
	transform: scale(1);
}

.infobox-wrapper.ts-show .ts-infobox .ts-close {
	-webkit-transform: scale(1) rotate(0deg);
	transform: scale(1) rotate(0deg);
	transition-delay: .15s;
}

.infobox-wrapper.ts-show .ts-infobox .ts-close:hover {
	transition-delay: 0s;
	opacity: 1;
}

.leaflet-popup {
	margin-bottom: 0;
}

.leaflet-popup .leaflet-popup-content-wrapper {
	padding: 0;
	background-color: transparent;
	box-shadow: none;
}

.leaflet-popup .leaflet-popup-content-wrapper .leaflet-popup-content {
	margin: 0;
}

.leaflet-popup .leaflet-popup-tip-container {
	display: none;
}

.ts-infobox {
	display: inline-block;
	position: relative;
}

.ts-infobox:after {
	border-color: #191919 transparent transparent transparent;
	border-width: .5rem .5rem 0 0;
	border-style: solid;
	bottom: -0.375rem;
	content: "";
	left: 0;
	width: 0;
	height: 0;
	position: absolute;
}

.ts-infobox .ts-ribbon {
	right: 1.5rem;
}

.ts-infobox .ts-ribbon-corner:before {
	left: 1.5625rem;
}

.ts-infobox .ts-ribbon-corner:after {
	bottom: 1.5625rem;
}

.ts-infobox .badge {
	position: absolute;
	top: .75rem;
	left: .75rem;
	z-index: 1;
}

.ts-infobox .ts-infobox__wrapper {
	align-items: flex-end;
	color: #ffffff;
	display: flex;
	border-radius: .25rem;
	box-shadow: 0 .5rem 4rem rgba(0, 0, 0, .5);
	height: 14rem;
	overflow: hidden;
	width: 15rem;
	padding: .75rem;
	position: relative;
	z-index: 1;

	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}


.ts-infobox .ts-infobox__wrapper:before {
	height: 70%;
	z-index: 1;
}

.ts-infobox .ts-close {
	position: absolute;
	right: -1rem;
	top: -1rem;
	z-index: 3;
	-webkit-filter: drop-shadow(0 .1875rem .125rem rgba(0, 0, 0, .2));
	filter: drop-shadow(0 .1875rem .125rem rgba(0, 0, 0, .2));
	cursor: pointer;
	transition: .3s ease;
	-webkit-transform: scale(0) rotate(180deg);
	transform: scale(0) rotate(180deg);
	opacity: .7;
}

.ts-infobox .ts-infobox_image {
	background-size: cover;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 0;
}

.ts-infobox .ts-infobox__content {
	z-index: 1;
	width: 100%;
}

.ts-infobox .ts-item__info {
	margin-bottom: 0rem;
}

.ts-infobox .ts-item__info h4 {
	color: #ffffff;
	text-shadow: 0 .125rem .1875rem rgba(25, 25, 25, .8);
	font-size: 0.8rem;
	font-weight: 500;
	margin-bottom: .15rem;
}

.ts-infobox .ts-item__info aside {
	color: #0089b3;
	font-weight: 500;
	font-size: .6878rem;
	margin-bottom: .15rem;
}

.ts-infobox .ts-item__info-badge {
	display: inline-block;
	color: #000000;
	background-color: #0089b3;
	box-shadow: 0 .125rem .3125rem rgba(0, 0, 0, .1);
	border-radius: .1875rem;
	font-weight: 500;
	font-size: .6875rem;
	margin-bottom: .25rem;
	padding: .25rem .375rem;
}

.ts-infobox .info-table tr th {
	font-weight: 400;
	font-size: .6875rem;
}

.ts-infobox .info-table tr td {
	font-size: .6875rem;
	margin-bottom: 0;
}

.H_ui * {
	box-sizing: border-box;
}

.H_ib_tail {
	display: none;
}

.H_ib_body {
	background-color: transparent;
	padding: 0;
}

.H_ib_body .H_ib_close {
	display: none;
}

.H_ib_body .H_ib_content {
	margin: 0;
}

.H_ib_body .infobox-wrapper {
	bottom: 0;
	left: 6.25rem;
	position: absolute;
}

.here-map-marker .ts-marker-wrapper {
	margin-top: -3rem;
	position: relative;
}

@-webkit-keyframes ts-dimIn {
	0% {
		width: 0;
	}

	1% {
		width: 100%;
	}

	5% {
		opacity: 0;
	}

	100% {
		opacity: .6;
	}
}

@keyframes ts-dimIn {
	0% {
		width: 0;
	}

	1% {
		width: 100%;
	}

	5% {
		opacity: 0;
	}

	100% {
		opacity: .6;
	}
}

@-webkit-keyframes ts-dimOut {
	0% {
		opacity: .6;
	}

	95% {
		opacity: 0;
	}

	99% {
		width: 100%;
	}

	100% {
		width: 0;
	}
}

@keyframes ts-dimOut {
	0% {
		opacity: .6;
	}

	95% {
		opacity: 0;
	}

	99% {
		width: 100%;
	}

	100% {
		width: 0;
	}
}

#ts-map-hero {
	transition: .3s ease;
	z-index: 400;
}

#ts-map-hero.leaflet-container:after {
	z-index: 401;
}

#ts-map-hero:after {
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	-webkit-animation-duration: .5s;
	animation-duration: .5s;
	-webkit-animation-name: ts-dimOut;
	animation-name: ts-dimOut;
	background-color: black;
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	transition: opacity .4s ease;
	opacity: 0;
}

#ts-map-hero.ts-dim-map:after {
	-webkit-animation-name: ts-dimIn;
	animation-name: ts-dimIn;
}

.spinner-box {
    display: inline-block;
    background: #fff;
    border-radius: 10px;
    padding: 15px 25px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    text-align: center;
}

.spinner {
    margin: 0 auto 10px;
    width: 30px;
    height: 30px;
    border: 4px solid #ccc;
    border-top: 4px solid #f1880d;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

.loading-text {
    font-size: 16px;
    color: #333;
    margin-top: 5px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}