@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
:root {
	--color-gray: #C4C4C4;
	--color-gray-hard: #636363;
	--color-gray-hard-2: #A2A4A6;
	--color-blue-hard: #1065A2;
	--color-blue-hard-2: #122831;
	--color-gray-light: #f5f5f5;
	--color-gray-light-2: #C4C4C4;
	--control-negative-offset: -40px;
	--color-gray-black: #242E35;
}
/*=============================================================================
GENERAL
=============================================================================*/
body { color: var(--color-gray-black); font-family: "Poppins"; }
*::-moz-selection { background: lightblue; color: initial; text-shadow: none; }
*::selection { background: lightblue; color: initial; text-shadow: none; }
.bg-default { background-color: #eee; border: 1px solid #ddd; }
.bg-default-02 { background-color: #ddd; border: 1px solid #ccc; }
.bg-gray-light { background-color: var(--color-gray-light); }
.bg-gray-light-tra { background-color: rgba(241, 241, 241, .2); }
.bg-blue-hard { background-color: var(--color-blue-hard); }
.text-black { color: #000; }
.text-gray { color: var(--color-gray); }
.text-gray-light { color: var(--color-gray-light-2); }
.text-gray-hard { color: var(--color-gray-hard); }
.text-blue-hard { color: var(--color-blue-hard); }
.text-blue-hard-2 { color: var(--color-blue-hard-2); }
.bg-cover-index {
	background-image: url(";http://placehold.it/1920x1080");
}
.ox-hidden { overflow-x: hidden !important; }
.btn-blue {
	color: #FFF;
	background-color: var(--color-blue-hard);
	border: 1px solid var(--color-blue-hard);
}
.btn-blue:hover,
.btn-blue:active,
.btn-blue:focus {
	color: var(--color-blue-hard);
	background-color: #FFF;
}
.btn-gray {
	color: var(--color-gray-hard);
	background-color: var(--color-gray-light);
	border: 1px solid var(--color-gray-light);
}
.btn-gray:hover,
.btn-gray:active,
.btn-gray:focus {
	color: #FFF;
	background-color: var(--color-blue-hard);
}
.btn-white {
	color: #000;
	background-color: #FFF;
	border: 1px solid #FFF;
}
.btn-white:hover,
.btn-white:active,
.btn-white:focus {
	color: #FFF;
	background-color: #000;
}
.btn-gray-2 {
	color: #FFF;
	background-color: var(--color-gray-hard-2);
	border: 1px solid var(--color-gray-hard-2);
}
.btn-gray-2:hover,
.btn-gray-2:active,
.btn-gray-2:focus {
	color: var(--color-gray-hard-2);
	background-color: #FFF;
}
.btn-text-bigger { font-size: 25px; }
.help-block { display: block; }
.has-error [data-fv-for="sectors[]"] { display: block !important; }
.has-error .form-control { border-color: #dc3545; }
.has-error .help-block { color: #dc3545; }
.has-success .form-control, .has-success button.dropdown-toggle { border-color: #28a745; }
/*=============================================================================
THANKS PAGE
=============================================================================*/
.thanks-page { height: var(--thanks-page-height); }
.thanks-page img { width: 400px; max-width: 100%; }
/*=============================================================================
NAVBAR
=============================================================================*/
.navbar {
	margin-bottom: 0;
	border: none;
	border-radius: 0;
}
.main-navbar { position: relative; z-index: 200; }
/* colores items menu */
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .nav-link {
	color: #333;
}
.navbar-light .navbar-nav .active .nav-link,
.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover {
	color: #333;
	border-color: #333;
}
/* colores items menu */
/* separación items menu */
.navbar-nav > .nav-item {
	padding-left: 15px;
	padding-right: 15px;
}
.navbar-brand { margin-right: 0; }
/* separación items menu */
.nav-custom > .nav-item { position: relative; }
.nav-custom > .nav-item > .active-bar {
	width: calc( 100% - 30px );
	height: 2px;
	background-color: transparent;
	position: absolute;
	left: 50%;
	bottom: 3px;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: background .2s;
	-o-transition: background .2s;
	transition: background .2s;
}
.nav-custom > .nav-item:hover > .active-bar,
.nav-custom > .nav-item.active > .active-bar {
	background-color: #FFF;
}
#submit-search {
	position: absolute;
	right: 1rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.fc-search {
	background-color: #F9F9F9;
	border-color: #F9F9F9;
	padding-right: 50px;
	-webkit-box-shadow: 0 5px 5px rgba(0,0,0,0.2) !important;
	box-shadow: 0 5px 5px rgba(0,0,0,0.2) !important;
}
.lang-container > .dropdown > .btn.dropdown-toggle {
	color: #000;
	background-color: transparent;
	border-color: transparent;
}
.lang-container > .dropdown.show > .btn.dropdown-toggle {
	color: #FFF;
	background-color: var(--color-blue-hard);
	border-color: var(--color-blue-hard);
}
.menu {
	width: 100%;
	height: var(--menu-height);
	position: absolute;
	background-color: #FFF;
	left: 0;
	opacity: 0;
	visibility: hidden;
	top: var(--menu-top-negative);
	z-index: -50;
	-webkit-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
	overflow-y: scroll;
}
.menu.open  {
	top: var(--menu-top);
	z-index: 50;
	opacity: 1;
	visibility: visible;
}
.menu-item, .menu-item > a {
  color: #000;
  font-size: 38px;
}
.menu-item { position: relative; }
.menu-item > a { position: relative; }
.menu-item > a:hover { color: var(--color-blue-hard); text-decoration: unset; }
.menu-item.active > a { color: var(--color-gray); }
.menu-item.active > a > .tachado {
	width: 100%;
	height: 5px;
	background-color: #000;
	position: absolute;
	top: 50%;
	left: -5px;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.black-social { font-size: 20px; }
.hide-on-menu-open {
	opacity: 1;
	visibility: visible;
	-webkit-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
}
.hide-on-menu-open.open {
	opacity: 0;
	visibility: hidden;
}
.menu-open { overflow: hidden; }
.navbar-to-top {
	background-color: #FFF !important;
	padding-top: 0;
	padding-bottom: 0;
	box-shadow: 0 0 25px 0 rgba(0,0,0,0.1);
	top: 0;
	width: 100%;
	transition: .2s;
	z-index: 990;
}
.navbar-brand > img {
	transition: .2s;
}
.navbar-to-top .navbar-brand > img {
	width: 100px;
}
.navbar-to-top .main-navbar.py-3 {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}
.navbar-to-top > .secondary-navbar,
.navbar-to-top > .secondary-navbar > .hide-on-menu-open,
.navbar-to-top > .secondary-navbar > .hide-on-menu-open * {
	height: 0;
	opacity: 0;
	visibility: hidden;
	z-index: -1000;
	transition: .2s;
}
.opened-menu { width: 100%; position: fixed; }
.menu.open {
	position: fixed;
}
/*=============================================================================
HOME
=============================================================================*/
.bg-cover-home { height: var(--bg-hbanner-height); }
.banner-social {
	position: absolute;
	left: -80px;
	bottom: 80px;
}
.banner-social p a { width: 100%; display: block; padding: 0 !important; }
.banner-social p a:nth-child(2) { margin-top: 15px; margin-bottom: 15px; }
.rounded-xl { border-radius: 18px; }
.font-sm { font-size: 13px; }
.bg-cover-home .carousel {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
.bg-cover-home #home-banner-carousel.carousel .carousel-item {
	height: var(--bg-hbanner-height);
	background: no-repeat center center scroll;
	background-size: cover;
}
.next-section {
	position: absolute;
	left: 50%;
	bottom: 15px;
	z-index: 3;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}
.next-section > img { width: 40px; }
/*=============================================================================
ABOUT US
=============================================================================*/
.bg-cover-about {
	background-image: url("../images/nosotros/1920X400nosotros.jpg");
	height: 400px;
	min-height: 400px;
}
/*=============================================================================
SERVICIOS
=============================================================================*/
.btn-service-more {
	opacity: 0;
	visibility: hidden;
	z-index: -10;
	-webkit-transition: .2s;
	-o-transition: .2s;
	transition: .2s;
}
.service-item:hover { cursor: pointer; }
.service-item.active .btn-service-more,
.service-item:hover .btn-service-more {
	opacity: 1;
	visibility: visible;
	z-index: 1;
}
.image-title {
	background-color: #FFF;
	padding:  10px 30px;
	position: absolute;
	left: 0;
	bottom: 0;
}
.underline-blue {
	width: 100%;
	height: 2px;
	background-color: var(--color-blue-hard);
	display: block;
	margin-top: 3px;
}
/*=============================================================================
Newsletter
=============================================================================*/
.title-small-separator {
	width: 50px;
	border-top: 3px solid var(--color-blue-hard);
}
.title-full-separator { border-top: 3px solid var(--color-blue-hard); }
.fc-custom-2 {
	border-color: #FFF;
	-webkit-box-shadow: 0 5px 5px rgba(0,0,0,0.2);
	        box-shadow: 0 5px 5px rgba(0,0,0,0.2);
}
.fc-newsletter { height: 50px; }
/*=============================================================================
Slider Clientes
=============================================================================*/
.owl-clients .tns-controls button {
	background-color: #FFF;
	border: 1px solid var(--color-blue-hard);
	border-radius: 100%;
}
.owl-clients .tns-outer { position: relative; }
.owl-clients .tns-ovh { position: relative; z-index: 2; }
.owl-clients .tns-controls {
	width: 100%;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	z-index: 1;
}
.owl-clients .tns-controls [data-controls="prev"] {
	left: var(--control-negative-offset);
	position: relative;
	float: left;
}
.owl-clients .tns-controls [data-controls="next"] {
	right: var(--control-negative-offset);
	position: relative;
	float: right;
}
.tns-outer [data-action="stop"],
.tns-outer [data-action="start"] { display: none; }
.owl-clients-slider > .tns-item { height: 200px; position: relative; }
.owl-clients-slider > .tns-item.tns-slide-active {
	border-right: 1px dashed var(--color-gray);
}
.owl-clients .tns-inner { position: relative; right: -1px; }
.tns-item img {
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}
/*=============================================================================
CONTACT
=============================================================================*/
.bg-contact {
	height: var(--bg-contact-height);
	min-height: 610px;
	background-image: url("../images/contacto/gnogcontacto.png");
}
.bg-thanks, .bg-login {
	background-image: url("../images/contacto/gnogcontacto.png");
}
.bg-login { height: var(--login-page-height); }
.contact-content {
}
.title-bigger { font-size: 80px !important; }
.title-with-outline > .title-outline {
	color: transparent;
	-webkit-text-fill-color: trtansparent; /* Will override color (regardless of order) */
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #FFF;
}
.title-with-outline > .title-normal {
	padding-left: 50px;
	margin-top: -55px;
}
.title-separator {
	width: 45px;
	height: 3px;
	background-color: #FFF;
}
.fc-custom:not(.fc-search)::-webkit-input-placeholder { color: #FFF; opacity: 1; font-weight: bold; }
.fc-custom:not(.fc-search)::-moz-placeholder { color: #FFF; opacity: 1; font-weight: bold; }
.fc-custom:not(.fc-search):-ms-input-placeholder { color: #FFF; opacity: 1; font-weight: bold; }
.fc-custom:not(.fc-search)::-ms-input-placeholder { color: #FFF; opacity: 1; font-weight: bold; }
.fc-custom:not(.fc-search)::placeholder { color: #FFF; opacity: 1; font-weight: bold; }

.fc-custom:not(.fc-search), .fc-custom:not(.fc-search):focus {
	--contact-input-height: 45px;
	height: var(--contact-input-height);
	color: #FFF;
	padding: 8px 15px;
	border: unset;
	background-color: rgba(255,255,255,0.5) !important;
	-webkit-box-shadow: 0 5px 5px rgba(255,255,255,0.5) !important;
	        box-shadow: 0 5px 5px rgba(255,255,255,0.5) !important;
}
textarea.fc-custom {
	height: var(--contact-input-height);
	min-height: var(--contact-input-height);
	max-height: 180px;
	resize: none !important;
}
textarea.fc-custom.open, textarea.fc-custom:focus { height: 100px; }
textarea.fc-custom:focus { height: 100px !important; }
.fc-custom:not(.fc-search):focus { border: 1px solid #FFF; }
/*=============================================================================
BLOG
=============================================================================*/
.blog-pagination > nav {
	display: inline-block;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}
.blog-detail-cover { height: 400px; min-height: 400px; }
.blog-detail-cover .cover-title-container {
	width: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}
.blog-detail-cover .title-with-outline > .title-normal { margin-top: -80px; }
.blog-cover-filter {
	width: 100%;
	height: 100%;
	left: 0;
	top:0;
	background-color: rgba(0,0,0,0.5);
	z-index: 0;
	position: absolute;
}
.hr-blog-title { width: 50px; border-top: 2px solid var(--color-blue-hard); }
.blog-body p:not(:last-child) { margin-bottom: 15px; }
/*=============================================================================
POPUP CONTACTO - HOME
=============================================================================*/
.modal-custom .modal-dialog { max-width: 600px; }
.modal-custom .modal-header {
	height: 60px;
	padding: 0;
	border-bottom: unset;
}
.modal-custom .modal-header .close {
	background-color: var(--color-gray);
	border-radius: 100%;
	width: 20px;
	height: 20px;
	position: absolute;
	right: 30px;
	top: 30px;
}
.modal-custom .modal-header .close span {
	color: #FFF;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}
.fc-modal {
	background-color: rgba(196, 196, 196, 0.5);
	border-color: rgba(196, 196, 196, 0.5);
	box-shadow: 0px 4px 4px #D5D6D7;
}
.fc-modal.fcm-blue {
	color: #FFF;
	background-color: rgba(16, 101, 162, 0.5);
	border-color: rgba(16, 101, 162, 0.5);
}
/*=============================================================================
MEDIA
=============================================================================*/

/* 1920 x 1080 */
@media( max-width: 1920px ) {
	#home-banner-carousel.carousel .carousel-item, .bg-cover-home { min-height: 400px; }
}

/* 1600 x 900*/
@media( max-width: 1600px ) {}

/* 1440 x 900 */
@media( max-width: 1440px ) {}

/* 1280 x 800 */
@media( max-width: 1280px ) {
	.title-bigger { font-size: 70px !important; }
	.title-with-outline > .title-normal { margin-top: -50px; }
	.menu-item, .menu-item > a  { font-size: 28px; }
	.menu-item.active > a > .tachado { height: 3px; }
	.owl-clients .tns-controls { height: 0; z-index: 2; }
	.owl-clients .tns-controls [data-controls="prev"] { left: -15px; }
	.owl-clients .tns-controls [data-controls="next"] { right: -15px; }
}

/* 990 x 1000 */
@media( max-width: 990px ) {
	.btn-text-bigger { font-size: 20px; }
	.title-bigger { font-size: 50px !important; }
	.title-with-outline > .title-normal { margin-top: -35px; }
	.title-container {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	  -webkit-box-pack: center;
	  -ms-flex-pack: center;
	  justify-content: center;
	  -webkit-box-align: center;
	  -ms-flex-align: center;
		align-items: center;
	}
	.next-section { bottom: 8px; }
	.next-section > img { width: 30px; }
	.blog-detail-cover { height: 300px; min-height: 300px; }
	.blog-detail-cover .title-with-outline > .title-normal { margin-top: -45px; }
	.blog-detail-cover .title-bigger { font-size: 6vw !important; }
	.image-title {
		width: 400px;
		max-width: 100%;
		left: 50%;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}
}

/* 767 x 414 */
@media( max-width: 767px ) {
	.navbar-brand img { width: 100px; }
	.btn-text-bigger { font-size: 1em; }
	.fc-custom:not(.fc-search), .fc-custom:not(.fc-search):focus { --contact-input-height: 34px; }
	.fc-custom:not(.fc-search) { height: 34px; }
	.custom-navbar.bg-blue-hard { display: none; }
	.menu-item, .menu-item > a  { font-size: 20px; }
	.menu { min-height: var(--menu-min-height); text-align: center; }
	.bg-cover-about { height: 300px; min-height: 300px; }
	.blog-detail-cover { height: 250px; min-height: 250px; }
	.blog-detail-cover .title-with-outline > .title-normal { margin-top: -35px; }
	/*.blog-detail-cover .title-bigger { font-size: 2vw !important; }*/
	.service-title { font-size: 12px; }
}

/* 576 x 320 */
@media( max-width: 576px ) {
	#home-banner-carousel.carousel .carousel-item, .bg-cover-home { min-height: 400px; }
	.mobile-small { font-size: 12px; }
	img.mobile-small-1 { width: 15px; }
	img.mobile-small-2, img.mobile-small-3 { width: 20px; }
	.title-bigger { font-size: 40px !important; }
	.title-with-outline > .title-normal { margin-top: -30px; }
	.tns-item { border-right: unset; }
	.tc-home .title-bigger { font-size: 35px !important; }
	.tc-home .title-with-outline > .title-normal { padding-left: 30px; }
	.blog-detail-cover .title-with-outline > .title-outline { display: none; }
	.blog-detail-cover .title-with-outline > .title-normal {
		margin-top: 15px;
		padding: 0;
	}
	.blog-detail-cover .title-bigger { font-size: 30px !important; }
	.btn-service-more { opacity: 1; visibility: visible; z-index: 1; }
}
@media( max-width: 350px ) {
	.tc-home .title-bigger { font-size: 31px !important; }
	.tc-home .title-with-outline > .title-normal { padding-left: 25px; margin-top: -25px; }
}
/*
	@media( max-width: 1920px ) {}
	@media( max-width: 1600px ) {}
	@media( max-width: 1440px ) {}
	@media( max-width: 1366px ) {}
	@media( max-width: 1280px ) {}
	@media( max-width: 1024px ) {}
	@media( max-width: 736px ) {}
	@media( max-width: 667px ) {}
	@media( max-width: 640px ) {}
	@media( max-width: 568px ) {}
*/
