@font-face {
  font-family: "inac-font-regular";
  src:url("fonts/INACFieldwork-GeoRegular.otf"),
  	url("fonts/INACFieldwork-GeoLight.otf"),
  	url("fonts/INACFieldworkIdiomas-GeoBold-1.otf"),
  	url("fonts/INACFieldwork-GeoBlack.otf"),
  	url("fonts/INACFieldwork-GeoDemiBold.otf"), 
  	url("fonts/INACFieldwork-GeoFat.otf"),
  	url("fonts/INACFieldwork-GeoHair.otf"), 
  	url("fonts/INACFieldwork-HumBlack.otf"),
  	url("fonts/INACFieldwork-HumBold.otf"),
  	url("fonts/INACFieldwork-HumDemiBold.otf"),
  	url("fonts/INACFieldwork-HumFat.otf"),
  	url("fonts/INACFieldwork-HumHair.otf"),
  	url("fonts/INACFieldwork-HumLight.otf"),
  	url("fonts/INACFieldwork-HumRegular.otf"),
  	url("fonts/INACFieldwork-HumThin.otf");
}
@font-face {
  font-family: "inac-font-bold";
  src: url("fonts/INACFieldwork-GeoBold.otf");
}

:root {
	--color-1:#ffffff;
	--color-2:#243844;
	--color-3:#58c7e5;
	--color-4:#73bb45;
	--color-5:#be9f38;
	--color-6:#cd5227;
	--font-family: inac-font-regular, var(--bs-body-font-family);
}

/******************************** COLORS *********************************/
.content-group-1 {
	color: var(--color-1) !important;
	background: var(--color-4) !important;
}
.content-group-2 {
	color: var(--color-1) !important;
	background: var(--color-2) !important;
}
.content-group-3 {
	color: var(--color-1) !important;
	background: var(--color-5) !important;
}
.content-group-4 {
	color: var(--color-1) !important;
	background: var(--color-3) !important;
}
.content-group-5 {
	color: var(--color-1) !important;
	background: var(--color-6) !important;
}

/******************************** GENERAL *********************************/

.container-fluid{
	width: 90% !important;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	font-family:inac-font-bold;
}
body{
	font-family: var(--font-family) !important;
}
a {
	text-decoration:none;
}
.bi-chevron-compact-right::before{
	font-weight: 900 !important;
}
.bi-chevron-compact-left::before{
	font-weight: 900 !important;
}
.bi-chevron-compact-down::before{
	font-weight: 900 !important;
}
:is(.card, .slick-custom-prev, .text-cta):hover .bi-chevron-compact-right {
  transform : translateX(0%) translateX(30%);
  transition : transform 0.5s;
}
:is(.card, .slick-custom-next):hover .bi-chevron-compact-left {
  transform : translateX(0%) translateX(-30%);
  transition : transform 0.5s;
}
:is(.card):hover .bi-chevron-compact-down {
  transform : translateY(0%) translateY(15%);
  transition : transform 0.5s;
}
.border-highlighted {
	border: solid 1px var(--color-3);
}
.gap-margin {
	margin-top: 20px;
}
@media (max-width: 576px) {
	.gap-margin {
		margin-top: 12px;
	}
}
.error-message-page {
	color: var(--color-3);
}
.link {
    color: var(--color-2) !important;
    font-size: 14px;
}
.link:hover {
    color: var(--color-4) !important;
}
/******************************** Bootstrap buttons *********************************/
.btn-primary{
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--color-2);
    --bs-btn-border-color: var(--color-2);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--color-3);
    --bs-btn-hover-border-color: var(--color-2);
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg:var(--color-3);
    --bs-btn-active-border-color: var(--color-3);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--color-1);
    --bs-btn-disabled-border-color: var(--color-2);
    --bs-gradient: none;
}
.btn-outline-primary {
    --bs-btn-color: var(--color-2);
    --bs-btn-border-color: var(--color-2);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--color-2);
    --bs-btn-hover-border-color: var(--color-2);
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--color-2);
    --bs-btn-active-border-color: var(--color-2);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--color-2);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--color-2);
    --bs-gradient: none;
}
/******************************** TOP MENU *********************************/
.top-flags > a > img {
	width: 30px !important;
    height: 15px !important;
}

/******************************** NAV BAR *********************************/
.nav-link span,
.nav-item,
.nav-link {
	color: var(--color-2) !important;
	font-size: 14px;
	text-transform: uppercase;
}
.nav-item .bi-search:before{
	font-size: 20px;
	font-weight: 900 !important;
}
.nav-link:hover span,
.nav-item:hover .bi-search:before,
.nav-link:hover{
	color: var(--color-4) !important;
}
.navbar-brand img{
	height: 70px;
	width: auto;
	max-width: 100%;
	object-fit: contain;
}
.nav-link:hover .text-decoration-underline-animated::after {
    width: 100%
}
.text-decoration-underline-animated {
    position: relative
}

.text-decoration-underline-animated::after {
    background-color: var(--color-2);
    bottom: -1px;
    content: '';
    height: 1px;
    left: 0;
    position: absolute;
    transition: width .33s linear;
    width: 0%
}
.dropdown-item {
	text-transform: math-auto !important;
}
@media (max-width: 768px) {
	.navbar-brand img{
		height: 65px;
	}
}
/******************************** MENU *********************************/
.navbar-toggler {
	border: none;
}

@media (max-width: 768px) {
	.top-social {
		display: none;
	}
}

/******************************** MEGA-MENU *********************************/
.mega-menu {
  position: static !important;
}
.mega-menu .mega-item-top {
	font-size: 13px;
	padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
	color: var(--color-1);
	background: var(--color-2);
}
.mega-menu .dropdown-item {
	color: var(--color-2);
	font-size: 13px;
	font-weight:100;
}
.mega-menu .dropdown-menu .col-md-3 {
  display: inline-block;
  vertical-align: top;
}
.mega-menu .list-unstyled{
   padding: 10px 0;
}
.mega-menu .mega-item-card-side .card-caption .card-title,
.mega-menu .mega-item-card-side .card-caption .card-icon {
	color: var(--color-1);
	font-size: 15px !important;
    line-height: 15px !important;
}
.mega-menu .mega-item-card-side .card-caption .card-icon .bi-chevron-compact-right::before{
	font-size: 15px !important;
}
.card .bi-chevron-compact-right::before{
	font-weight: 900 !important;
	font-size:2rem;
}

.dropdown-menu {
	border: none;
	padding: 20px 10px;
	animation: 0.5s slideup;
}
.dropdown-item {
	text-transform: capitalize;
}
.dropdown-menu .dropdown-item:active {
	color: var(--color-1);
	background: var(--color-2);
}

.mega-menu .dropdown-menu {
	padding: 0px 20px 20px 20px;
}

@keyframes slideup {
  from {
    transform: translateY(10%);
  }

  to {
    transform: translateY(0);
  }
}

@keyframes slideright {
  from {
    transform: translateX(0%);
  }

  to {
    transform: translateX(5%);
  }
}

@media (min-width: 1200px) {
	.dropdown-menu {
		box-shadow: 0px 0px 40px rgba(29, 58, 83, 0.15);
	}
	.mega-menu .dropdown-menu {
	  width: 100%;
	  max-width: 1320px;
	  margin: auto;
	  top: 95%;
	  left: 0;
	  right: 0;
	  padding: 20px 20px 40px 20px;
	}
	.navbar-expand-xxl .navbar-nav .nav-link {
		white-space: nowrap;
	}
}
.mega-menu h5 {
	font-size: 1rem;
}
.mega-menu .description {
	font-size: 0.7rem;
	line-height: 1rem;
}
@media (max-width:768px) {
	.card .bi-chevron-compact-right::before{
		font-size:16px;
	}
}
/******************************** Cards de imagenes *********************************/
.card {
	border-radius: 0 !important;
}
.card img{
	border-radius: 0 !important;
}
.card-tag {
	border-radius: 0 !important;
	font-size:13px;
	text-transform: uppercase;
	position: absolute;
	padding: 0.3rem 0.3rem !important; 
    z-index: 1;
    width: 200px;
    left: -9px;
    top: 9px;
    text-align: center;
}
.card-icon {
	display:flex;
	color: var(--color-1);
}
.card .card-caption .card-title{	
	display: flex;
	align-items: flex-end !important;
    font-size: 23px;
    line-height: 24px;
	color: var(--color-1);
}
.card:hover{
	cursor:pointer;
}
.card:hover .card-title:not(.card-button > .card-title),
.card:hover .card-icon:not(.card-button > .card-icon),
.card:hover .card-description:not(.card-button > .card-description) {
	color: var(--color-3);
}
.card-img-overlay {
	background: linear-gradient(0deg, rgba(0,0,0,0.5), rgba(255,255,255,0));
}

@media (max-width:768px) {
	.card-tag{	
	    font-size: 7px;
    	width: 115px;
    	padding: 0.1rem 0.2rem !important
	}
	.card .card-caption .card-title{	
	    font-size: 13px;
	    line-height: 14px;
	}	
}


/******************************** Multibanner *********************************/

.multi-banners-4 .aspect-container-3x1 {
  width: 100%; /* Ajusta el ancho según tus necesidades */
  aspect-ratio: 3/1; /* Establece la relación de aspecto */
  /* overflow: hidden; */ /* Oculta cualquier contenido que desborde el contenedor */
  display: flex;
}

.multi-banners-4 .aspect-container-2x1 {
  width: 100%; /* Ajusta el ancho según tus necesidades */
  aspect-ratio: 2/1; /* Establece la relación de aspecto */
  /* overflow: hidden; */ /* Oculta cualquier contenido que desborde el contenedor */
  display: flex;
}	

.multi-banners-4 .aspect-container-half-1x1 {
  	width: 50%; /* Ajusta el ancho según tus necesidades */
  	aspect-ratio: 1/1; /* Establece la relación de aspecto */
  	/* overflow: hidden; */ /* Oculta cualquier contenido que desborde el contenedor */
}

.multi-banners-4 .aspect-container-flex-cols {
	display: flex;
	flex-direction: row;
}

.multi-banners-4 .height-50p {
	height: 50%;
	/* overflow: hidden; */
}	

.multi-banners-4 .card {
	height: 100%;
}

.multi-banners-4 .card-img {
	height: 100%;
	object-fit: cover;
}
.multi-banners-4 .card-img-overlay {
	/* top: auto; */
	color: white;
}
.multi-banners-4 .card-img-overlay a {
	float: right;
}
@media (max-width: 992px) {
	.multi-banners-4 div {
		padding: 0px !important;			
	}	
	.multi-banners-4 div.card-tag {
		padding: 0.2rem 0.2rem !important; 		
	}		
	.multi-banners-4 div {
		aspect-ratio: auto!important;
	}
	
	.multi-banners-4 .aspect-container-half-1x1 img {
		aspect-ratio: 1/1;
	}
	.multi-banners-4  .aspect-container-half-1x1 .height-50p img {
		aspect-ratio: 2/1;			
	}
	.multi-banners-4 .aspect-container-half-1x1 .aspect-container-flex-cols {
		display:flex;
	}
	.multi-banners-4 .aspect-container-half-1x1 .aspect-container-half-1x1 {
    	width: 50%;
	}
	.multi-banners-4 .aspect-container-half-1x1 .aspect-container-half-1x1:first-child {
		margin-right: 0.5rem;
	}
	.multi-banners-4 .aspect-container-half-1x1 .aspect-container-half-1x1 img {
		aspect-ratio: 1/1;
	}
	.multi-banners-4 .height-50p,		
	.multi-banners-4 .aspect-container-2x1,
	.multi-banners-4 .aspect-container-half-1x1 {
		width: 100%;
		display: block;
	}
	
	.multi-banners-4 .card {
		margin-bottom: 1rem !important;
	}
	
	.multi-banners-4 .card-img-overlay {
		padding-left: 1rem!important;
	}
	
}
/******************************** Card buttons *********************************/
.card.card-button {
	border: none;
	display:flex;
	justify-content: center;
    cursor: pointer;
}
.card.card-button .card-title {
	text-align:center;
	margin: 0 0 !important;
	font-size: 20px;
	line-height:20px;
	text-transform: uppercase;
}
@media (max-width: 768px) {
	.card.card-button .card-title{
		font-size:11px;
		line-height:11px;
	}
}
/******************************** Card Banner *********************************/
.card.card-banner{
    height: 10rem;
    object-fit: contain;
    overflow: hidden;
}
.card.card-banner .card-body{
	position:absolute;
	display:flex;
	align-items:center;
    height: 100%;
    width: 100%;
    color: var(--color-1);
    flex-direction: column;
    flex-wrap: nowrap;
}

.card.card-banner .card-body .card-title{
	font-size: 42px;
}
.card.card-banner .card-body .card-icon{
	font-size: 25px;   
	margin: -1.5rem 0;
}
.card.card-banner .card-body .card-description{
	font-size: 20px;
	margin-top: 18px;
}

@media(max-width: 768px) {
	.card.card-banner{
    	height: 7rem;
	}
	.card.card-banner .card-body .card-title{
		font-size: 17.5px;
	}
	.card.card-banner .card-body .card-description{
		font-size: 13px;
	}
	.card.card-banner img {
	    object-fit: cover;
	    object-position: center;
	    flex: auto;
    }
}
/******************************** Mosaic cards *********************************/
.mosaic .card img {
	object-fit: cover;
    aspect-ratio: 13 / 12;
}

.carousel .carousel-inner .carousel-item .carousel-caption {
	left: 0;
	right: 0;
}

/******************************** Slider banner *********************************/

.slick-custom-prev, .slick-custom-next {
    background: none;
    border: none;
    font-size: 2rem;
    color: var(--color-1);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    z-index: 1;
}

.slick-custom-prev {
    right: 1rem;
}

.slick-custom-next {
    left: 1rem;
}
.slick-custom-prev:before,
.slick-custom-next:before
{
    font-size: 40px;
}
.carousel-brand {
	margin-left: 0;
	margin-right: 0;
}
.carousel-brand-item {
	margin:10px;
	cursor:pointer;
}
.carousel-brand-item img{
	aspect-ratio:3/2;
}
.carousel-wrapper-buttons{
	position:relative;
}

@media (max-width: 768px) {
	.slick-custom-prev, .slick-custom-next {
		font-size: 1.5rem;
	}
	.carousel-brand-item img{
		aspect-ratio:5/6;
	}
}
/******************************** Bigtext *********************************/

.big-text {
	font-size: 3.5rem; 
	line-height: 4.3rem; 
	font-weight: 500; 
	text-align: center
}

@media (max-width: 768px) {
	.big-text {
		font-size: 2.5rem;
	    line-height: 3rem;
	}
}
/******************************** Footer *********************************/
.footer{
	background: var(--color-2);
}
.footer-redes .btn{
	color: var(--color-1);
	background: var(--color-3);
}
.logos img {    
	aspect-ratio: inherit;
	margin: 1rem 0;
	height: 50px;
}
.text-cta a {
	color: var(--color-1);
	font-size: 32px;
}
.text-cta .bi{
	margin-left: -15px
}
.text-cta:hover a {
	color: var(--color-3);
	cursor:pointer;
}
.footer .listados,
.footer .listados a {
	color: var(--color-1);
	font-size: 21px;
}
.footer .listados.menu,
.footer .listados.menu a {
	font-size: 18px;
}
.footer .listados .bi:not(.btn > .bi) {
	color: var(--color-3);
}
.footer .listados a:hover {
	color: var(--color-3);
	cursor:pointer;
}
.footer .listados .border-highlighted {
	font-size: 14px;
}

@media (max-width: 768px) {
	.logos img {    
		height: 45px;
	}
	.text-cta a {
		font-size: 14px;
	}
	.text-cta .bi {
		margin-left: -10px
	}
	.footer .listados .border-highlighted {
		font-size: 13px;
	}
	.footer .listados,
	.footer .listados a {
		font-size: 10px;
    	justify-content: center !important;
	}
	.footer .listados.menu,
	.footer .listados.menu a {
		font-size: 13px;
	}
}
/******************************** Modos *********************************/
.list-body {
	min-height:2rem;
}
.modo .list .card .card-body .card-title {
	font-size: 35px;
	color: var(--color-2);
}
.modo .list .card .card-body .card-description {
	font-size: 17px;
	color: var(--color-2);
}
.modo .list .card:hover {
	box-shadow: var(--bs-box-shadow-sm);
}
.modo .list .card:hover .card-title { 
	color: var(--color-3);
}
.modo .list .card .card-tag-bottom { 
	font-size: 0.75rem !important;
	opacity: 0.1;
}
.modo .list .card:hover .card-tag-bottom { 
	font-size: 0.75rem !important;
	opacity: 1;
}
.modo .accordion .accordion-button {
	font-size: 1.7rem;
}
.modo .accordion .accordion-item {
	width: 100% !important;
}
/******************************** Templates *********************************/
.search-result .list .card .card-body .card-title {
	font-size: 35px;
	color: var(--color-2);
}
.search-result .list .card .card-body .card-description {
	font-size: 17px;
	color: var(--color-2);
}
.search-result .list .card:hover {
	box-shadow: var(--bs-box-shadow-sm);
}
.search-result .list .card:hover .card-title { 
	color: var(--color-3);
}
.search-result .list .card .card-tag-bottom { 
	font-size: 0.75rem !important;
	opacity: 0.1;
}
.search-result .list .card:hover .card-tag-bottom { 
	font-size: 0.75rem !important;
	opacity: 1;
}
/******************************** Paginador *********************************/
.pagination .page-link {
	color: var(--color-2);
}
.pagination .active>.page-link, .page-link.active {
	color: var(--color-1);
	background: var(--color-2);
	border-color: var(--color-2);
	
}
/******************************** Miscelaneas *********************************/
.list-unstyled {
	padding-left: 0;
    list-style: none;
}
.notif-badge {
    width: 10px;
    height: 10px;
    background: var(--bs-danger);
    border-radius: 50%;
    position: absolute;
    top: -1px;
    right: -1px;
    z-index: 1;
}
@keyframes blink {
  0% { opacity: 0; }
  50% { opacity: 1; }
  100% { opacity: 0; }
}
.animation-blink {
  animation: blink 2s infinite;
}