@font-face {
	font-family: 'NulshockRg-Bold';
	src: url('fonts/nulshock bd.otf'); 
	color: #000;
}

body {
	font-family: 'Montserrat', sans-serif;
	color: #000;
	font-weight: 300;
	font-size: 18px;
}

h1 {
	font-family: 'NulshockRg-Bold';	
	font-size: 40px;
	color: #fff;
}

h2 {
	font-family: 'NulshockRg-Bold';
	font-size: 30px;
	margin-top: 0;
	line-height: 45px;
}

h3 {
	font-size: 14px;
	font-weight: 400;
}

h4 {
	font-size: 18px;
	font-weight: 700;
}

h5 {
	font-size: 18px;
	font-weight: 700;
}

h6 {
	font-size: 16px;
	font-weight: 600;
}

p {
	font-size: 18px;
}

small {
	font-size: 9px;
	color: #000;
}

small a {
	color: #94959A;
	text-decoration: none;
}

small a:hover {
	color: #000;
}

/* Commons */

.separator::after  {
	content: '';
	background-color: #2f4292;
	display: block;
	width: 55px;
	height: 6px;
	margin-top: 24px;
	margin-bottom: 33px;
	margin-left: auto;
	margin-right: auto;
}

.description {
	margin-bottom: 55px;
	line-height: 22px;
}

.subtitle {
	line-height: 21px;
	margin-top: 36px;
	margin-bottom: 0
}

.pre-title {
	text-transform: uppercase;
	line-height: 8px;
	color: #929398;
	margin-top: 60px;
	margin-bottom: 0;
}

.additional-services,
.location {
	background-color: #f7f7f7;
}

#nosotros,
#servicios,
#productos,
#contacto
 {
    padding-top: 147px;
    margin-top: -147px;
}

/* buttons */

.buttons {
	margin: 0 0 70px 0;
}

.button a {
	color: #fff;
	background-color: #2f4292;
	border: 1px solid #2f4292;
	border-radius: 25px;
	text-transform: uppercase;
	text-decoration: none;
	font-weight: 300;
	font-size: 16px;
	padding: 12px 43px;
}

.button a:hover {
	color: #2f4292;
	text-decoration: none;
	background-color: #fff;
}

/* Nav */
.header .navbar {
	box-shadow: 0px 2px 4px #0000001a;
}
.header .main-logo {
	margin-top: 8px;
	margin-bottom: 12px;
}

.header .navbar-brand  {
	margin: 0;
}

.header .mobile-logo .navbar-brand {
	width: 50px;
	height: auto;
	display: none;
}

.header .top-bar {
	background-color: #000;
	width: 100%;
	color: #929398;
	text-align: right;
}

.header .top-bar .top-bar-info {
	font-size: 10px;
	padding: 2px 0 3px 0;
	margin: 0;
}

.icon-clock::before {
	font-size: 9px;
	margin-right: 2px;
}

.header .info-bar {
background-color: #fff;
}

.header .navbar-expand-lg {
	padding: 0;
}

.header .navbar-expand-lg .offcanvas .offcanvas-body {
	display: inline-block;
}

.header .navbar .container-fluid {
	padding: 0;
}

.header .info-container {
text-align: right;
}

.header .content-info {
	margin-right: 26px;
}

.header .whatsapp-top-info .content-info {
  margin-right: 0;
}

.header .thumbs-info {
  display: inline-flex;
  text-align: left;
  margin: 19px 0px 5px 0;
}

.header .thumbs-info img {
  width: 49px;
  height: auto;
  margin-right: 4px;
}

.header .thumbs-info .info-title {
  font-size: 11px;
  font-weight: 700;
  margin: 5px 0 0 0;
}

.header .thumbs-info p {
  line-height: 12px;
  font-size: 10px;
  font-weight: 300;
  margin: 0;
}

.header .thumbs-info .form-icons {
	font-size: 8px;
	margin-right: 3px;
}

.header .thumbs-info .number-sale a {
  font-size: 22px;
  font-weight: 600;
  color: #25ce66;
  line-height: initial;
	text-decoration: none;
}

.header .main-nav ul {
	list-style: none;
	margin: 4px 0;
	padding: 0;
	text-align: right;
}

.header .main-nav .main-menu > li {
	display: inline-block;
	margin-left: 54px;
}

.header .main-nav li a {
	color: #929398;
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	text-transform: uppercase;
}

.header .main-nav li a:hover {
	color: #2f4292;
	border-bottom: 5px solid #2f4292;
	padding-bottom: 19px;
}

/* Slider */
.carousel-container {
	padding-top: 146px;
}

.cycle-slideshow {
  position: relative;
}
 
.slide {
  width: 100%;
  height: 550px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding-top: 50px;
}

.slide-content {
  text-align: center;
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
}

.slide-content .separator::after {
	background-color: #fff;
}

.slide-content .pre-title {
	margin-top: 26px;
	margin-bottom: 9px;
	color: #fff;
}

.slide-content h2 {
	margin-bottom: 8px;
}

.slide-content p {
  color: #fff;
  margin-top: 0;
  margin-bottom: 67px;
  max-width: 540px;
  margin-left: auto;
  margin-right: auto;
}

.slide-buttons .button-1 {
	display: inline-block;
	margin-right: 25px;
}

.slide-buttons .button-1 a {
	color: #2f4292;
	background-color: #fff;
	border: 1px solid #fff;
}

.slide-buttons .button-1 a:hover {
	color: #fff;
	background-color: #2f4292;
	border: 1px solid #2f4292;
}

.slide-buttons .button-2 {
	display: inline-block;
}

.slide-buttons .button-2 a {
	padding: 12px 58px;
	background-color: #25ce66;
	border: 1px solid #25ce66;
}

.slide-buttons .button-2 a:hover {
	color: #25ce66;
	background-color: #fff;
	border: 1px solid #25ce66;
}

.cycle-prev,
.cycle-next {
  display: block;
  background-image: url('img/icon-arrow.svg');
  background-repeat: no-repeat;
  cursor: pointer;
  width: 40px;
  height: 40px;
  z-index: 199;
  position: absolute;
  top: 45%;
  left: 2%;
  opacity: 0.2;
}

.cycle-prev:hover,
.cycle-next:hover {
	opacity: 1;
}

.cycle-next {
  left: auto;
  right: 2%;
  transform: rotate(180deg);
}

/* Advantages */	
.advantages .subtitle {
	margin-bottom: 60px;
}

.advantages .buttons {
	margin-top: 4px;
}

/* service */
.background-service::before {
	content:'';
	display: block;
	width: 100%;
	height: 428px;
	background-image: url('img/img-laser.png');
	background-repeat: no-repeat;
	background-position: center;
	background-color: #000;
	position: absolute;
	left: 0px;
	z-index: -1;
}

.service .pre-title,
.service .separator,
.service .description {
	color: #fff;
}

.service .separator::after {
	background-color: #fff;
}

.service .subtitle {
	margin-bottom: 12px;
}

.service .content-icons .icon-description {
	font-size: 14px;
	line-height: 17px;
	margin: 0 28px 65px 28px;
}

.service .content-icons .icon-circle {
	max-width: 240px;
}

/* additional services */
.additional-services {
	padding-bottom: 70px;
}

.additional-services .content-home-products .thumbs-products .info {
	background-color: #fff !important;
}

.additional-services .buttons {
	margin-bottom: 0;
}

/* Products */
.products .container-home-products .description {
	margin-bottom: 55px;
}

.products .content-home-products { 
	margin-bottom: 40px;
 }

.products .content-home-products .thumbs-products {
	margin-bottom: 30px;
	display: inline-block;
}

.products .content-home-products .thumbs-products .border-radius-img {
	border-radius: 20px 20px 0 0;
}

.products .content-home-products .thumbs-products .info {
	background-color: #f5f5f5;
	margin: 0;
	padding: 19px 0;
	max-width: 530px;
	border-radius: 0 0 20px 20px;
}

/* Map */
.container-map {
	height: 400px;
}

/* Contact Form */
.contact-form {

	background-image: url('img/img-contacto.png');
	background-repeat: no-repeat;
	background-position: center;
	background-color: #1a1a1a;
	background-size: cover;
	width: 100%;
	height: auto;
	color: #fff;
}

.contact-form .pre-title {
	color: #fff;
}

.contact-form .description {
	margin-bottom: 25px;
}

.contact-form .ubication .info p {
	font-size: 16px;
	display: inline-block;
	margin: 0 20px 34px 20px;
}

.contact-form .ubication .info p .form-icons {
	background: #2f4292;
	border-radius: 16px;
	padding: 6px;
	font-size: 18px;
	color: #fff;
}

.contact-form .form-control {
	color: #fff;
	font-size: 14px;
	font-weight: 300;
	background-color: transparent;
	box-shadow: none;
	border-style: none;
	border-bottom: 1px solid #fff;
	border-radius: 0;
	padding: 0;
	margin-bottom: 14px;
	height: 24px;
}

.contact-form .form-text-area .form-control {
	min-height: 24px;
}

.contact-form .form-control::-moz-placeholder {
	color: #fff;
	opacity: 1;
}

.contact-form .form-control::-webkit-input-placeholder {
	color: #fff;
	opacity: 1;
}

.contact-form .form-control::-ms-input-placeholder {
	color: #fff;
	opacity: 1;
}

.contact-form .form-text-area {
	margin-top: 34px;
}

.contact-form .form-button .send-button {
	border: 1px solid #2f4292;
	color: #fff;
	background: #2f4292;
	border-radius: 25px;
	text-transform: uppercase;
	font-weight: 300;
	font-size: 16px;
	padding: 10px 65px;
	margin-top: 57px;
	margin-bottom: 60px;
}

.contact-form .form-button .send-button:hover {
	color: #2f4292;
	text-decoration: none;
	background: #fff;
	border: 1px solid #2f4292;
}

/* footer */
.footer .logo-footer {
	margin-top: 43px;
}

.footer .logo-footer img {
  width: 160px;
  height: auto;
}

.footer .credits {
	line-height: 9px;
}

.footer .nav-footer {
	border-left: 1px solid #929398;
	border-right: 1px solid #929398;
	padding-left: 55px;
	margin-left: 26px;
	margin-right: 31px;
}

.footer .nav-footer ul {
	list-style: none;
	padding-left: 0px;
	margin-bottom: 0;
}

.footer .nav-footer li {
	line-height: 14px;
	margin-bottom: 20px;
}

.footer .nav-footer li a {
	text-decoration: none;
	color: #929398;
	font-size: 14px;
}

.footer .nav-footer li a:hover {
	color: #2f4292;
	font-weight: 400;
}

.footer .footer-info .footer-title {
	margin-top: 38px;
	margin-bottom: 13px;
}

.footer .footer-info .description {
	margin-bottom: 14px;
}

.footer .footer-info .description p {
	font-size: 12px;
	font-weight: 400;
	color: #929398;
}

.footer .footer-info .description .title {
	margin: 0px;
	line-height: 15px;
	color: #000;
}

.footer .footer-info .description .info {
	margin: 0px;
	line-height: 14px;
}

.footer .info-contact {
	border-right: 1px solid #929398;
	margin-right: 27px;
}

.footer .whatsapp-footer {
	margin-bottom: 83px;
}

.footer .whatsapp-footer .icon,
.footer .whatsapp-footer .number {
	display: inline-block;
}

.footer .whatsapp-footer .icon {
	margin-bottom: 4px;
}

.footer .whatsapp-footer .number a {
	font-size: 22px;
	font-weight: 600;
	color: #25ce66;
	text-decoration: none;
	margin: 0;
}

.footer .info-sales {
	margin-left: 8px;
}

/* Mini Mobile */
@media (min-width: 0px) and (max-width: 575px) {
	h1 {
		font-size: 30px;
	}

	h2 {
		line-height: initial;
	}

	.header .top-bar {
		text-align: center;
	}

	.header .top-bar .top-bar-info {
		margin: 0 15px;
	}

	.header .main-logo {
		text-align: center;
		margin-top: 40px;
		margin-bottom: 40px;
		margin-left: 40px;
	}

	.header .navbar-expand-lg {
		padding: 8px 0 8px 0;
	}

	.header .bg-body-tertiary {
		background-color: #fff !important;
	}

	.header .mobile-logo .navbar-brand {
		margin-left: 12px;
		display: initial;
	}

	.header .mobile-logo .navbar-brand img {
		width: 66px;
		height: auto;
	}

	.header .info-container {
		text-align: center;
		margin-bottom: 40px;
	}

	.header .content-info {
		margin-right: 0;
	}

	.header .thumbs-info {
		display: initial;
		text-align: center;
	}

	.header .thumbs-info img {
		width: 90px;
		height: auto;
		margin-right: 0;
	}

	.header .thumbs-info p {
		margin-bottom: 20px;
	}

	.header .main-nav ul {
		text-align: center;
		margin-bottom: 60px;
	}

	.header .main-nav .main-menu > li {
		display: block;
		margin-left: 0;
		margin-bottom: 20px;
	}

	.header .main-nav li a:hover {
		border-bottom: none;
	}

	.carousel-container {
		padding-top: 53px;
	}

	.slide {
		height: 700px;
	}

	.slide-content p {
		margin-bottom: 40px;
	}

	.slide-buttons .button-1 {
		display: block;
		margin-right: 0;
		margin-bottom: 40px;
	}

	.navbar-toggler:focus {
		box-shadow: none;
	}

	.subtitle {
		margin-top: 26px;
	}

	.advantages .subtitle {
		margin-bottom: 45px;
	}

	.advantages .content-icons .icon-circle {
		width: 220px;
		height: auto;
	}

	.service .content-icons .icon-description {
		margin-bottom: 45px;
	}

	.service .content-icons .icon-circle {
		max-width: 220px;
	}

	.contact-form .ubication .info p {
		font-size: 15px;
		margin: 0 0 34px 0;
	}

	.contact-form .ubication .info p .form-icons {
		font-size: 17px;
	}

	.footer {
		text-align: center;
	}

	.footer .logo-footer {
		margin-left: 35px;
		margin-bottom: 10px;
	}

	.footer .nav-footer {
		border: none;
		margin-left: 0;
		margin-right: 0;
		padding: 0;
	}

	.footer .nav-footer ul {
		display: initial;
	}

	.footer .nav-footer li {
		margin-left: 20px;
		margin-right: 20px;
		margin-bottom: 30px;
	}

	.footer .info-contact {
		border: 0;
		margin-right: 0;
	}

	.footer .credits {
		margin-bottom: 20px;
	}

	#nosotros,
	#servicios,
	#productos,
	#contacto {
    padding-top: 54px;
    margin-top: -54px;
	}

	.offcanvas {
		max-width: 85%;
	}

	.offcanvas-header {
		background-color: #2f4292;
	}

	.offcanvas-title {
		color: #fff;
	}
}

/* Mobile */
@media (min-width: 576px) and (max-width: 767px) {
	h1 {
		font-size: 30px;
	}

	.header .top-bar {
		text-align: center;
	}

	.header .main-logo {
		text-align: center;
		margin-top: 40px;
		margin-bottom: 40px;
		margin-left: 40px;
	}

	.header .navbar-expand-lg {
		padding: 8px 0 8px 0;
	}

	.header .bg-body-tertiary {
		background-color: #fff !important;
	}

	.header .mobile-logo .navbar-brand {
		margin-left: 12px;
		display: initial;
	}

	.header .mobile-logo .navbar-brand img {
		width: 66px;
		height: auto;
	}

	.header .info-container {
		text-align: center;
		margin-bottom: 40px;
	}

	.header .content-info {
		margin-right: 0;
	}

	.header .thumbs-info {
		display: initial;
		text-align: center;
	}

	.header .thumbs-info img {
		width: 90px;
		height: auto;
		margin-right: 0;
	}

	.header .thumbs-info p {
		margin-bottom: 20px;
	}

	.header .main-nav ul {
		text-align: center;
		margin-bottom: 60px;
	}

	.header .main-nav .main-menu > li {
		display: block;
		margin-left: 0;
		margin-bottom: 20px;
	}

	.header .main-nav li a:hover {
		border-bottom: none;
	}

	.carousel-container {
		padding-top: 53px;
	}

	.slide-content {
		max-width: 430px;
	}

	.slide {
		height: 560px;
	}

	.slide-buttons .button-1 {
		margin-right: 0;
	}

	.footer {
		text-align: center;
	}

	.footer .logo-footer {
		margin-left: 35px;
	}

	.footer .nav-footer {
		border: none;
		margin-left: 0;
		margin-right: 0;
		padding: 0;
	}

	.footer .nav-footer ul {
		display: inline-flex;
	}

	.footer .nav-footer li {
		margin-left: 20px;
		margin-right: 20px;
	}

	.footer .info-contact {
		border: 0;
		margin-right: 0;
	}

	.footer .credits {
		margin-bottom: 20px;
	}

	#nosotros,
	#servicios,
	#productos,
	#contacto {
    padding-top: 54px;
    margin-top: -54px;
	}

	.offcanvas-header {
		background-color: #2f4292;
	}

	.offcanvas-title {
		color: #fff;
	}
}

/* Ipad */
@media (min-width: 768px) and (max-width: 769px) {

}

/* Tablet */
@media (min-width: 768px) and (max-width: 991px) {
	
	.header .top-bar {
		text-align: center;
	}

	.header .main-logo {
		text-align: center;
		margin-top: 40px;
		margin-bottom: 40px;
		margin-left: 40px;
	}

	.header .navbar-expand-lg {
		padding: 8px 0 8px 0;
	}

	.header .bg-body-tertiary {
		background-color: #fff !important;
	}

	.header .mobile-logo .navbar-brand {
		margin-left: 12px;
		display: initial;
	}

	.header .mobile-logo .navbar-brand img {
		width: 66px;
		height: auto;
	}

	.header .info-container {
		text-align: center;
		margin-bottom: 40px;
	}

	.header .content-info {
		margin-right: 0;
	}

	.header .thumbs-info {
		display: initial;
		text-align: center;
	}

	.header .thumbs-info img {
		width: 90px;
		height: auto;
		margin-right: 0;
	}

	.header .thumbs-info p {
		margin-bottom: 20px;
	}

	.header .main-nav ul {
		text-align: center;
		margin-bottom: 60px;
	}

	.header .main-nav .main-menu > li {
		display: block;
		margin-left: 0;
		margin-bottom: 20px;
	}

	.header .main-nav li a:hover {
		border-bottom: none;
	}

	.carousel-container {
		padding-top: 53px;
	}

	.footer {
		text-align: center;
	}

	.footer .logo-footer {
		margin-left: 35px;
	}

	.footer .nav-footer {
		border: none;
		margin-left: 0;
		margin-right: 0;
		padding: 0;
	}

	.footer .nav-footer ul {
		display: inline-flex;
	}

	.footer .nav-footer li {
		margin-left: 20px;
		margin-right: 20px;
	}

	.footer .info-contact {
		border: 0;
		margin-right: 0;
	}

	.footer .credits {
		margin-bottom: 20px;
	}

	#nosotros,
	#servicios,
	#productos,
	#contacto {
    padding-top: 54px;
    margin-top: -54px;
	}

	.offcanvas-header {
		background-color: #2f4292;
	}

	.offcanvas-title {
		color: #fff;
	}
}

/* Desktop */
@media (min-width: 992px) and (max-width: 1199px) {
	.header .content-info {
		margin-right: 24px;
	}

	.header .main-nav .main-menu > li {
		margin-left: 57px;
	}

	.advantages .content-icons .icon-circle {
		width: 220px;
		height: auto;
	}

	.service .content-icons .icon-circle {
		max-width: 220px;
	}

	.footer .nav-footer {
		margin-right: 41px;
		padding-left: 24px;
	}

	.footer .info-contact {
		margin-left: -35px;
		margin-right: 35px;
	}

	.footer .info-sales {
		  margin-left: -30px;
	}
}

/* Large Desktop */
@media (min-width: 1200px) {

}