.montserrat-light {
 font-family: "Montserrat", sans-serif;
 font-optical-sizing: auto;
 font-weight: 400;
 font-style: normal;
}

.montserrat-medium {
 font-family: "Montserrat", sans-serif;
 font-optical-sizing: auto;
 font-weight: 500;
 font-style: normal;
}

.montserrat-semi {
 font-family: "Montserrat", sans-serif;
 font-optical-sizing: auto;
 font-weight: 600;
 font-style: normal;
}

.montserrat-bold {
 font-family: "Montserrat", sans-serif;
 font-optical-sizing: auto;
 font-weight: 700;
 font-style: normal;
}

.montserrat-extra {
 font-family: "Montserrat", sans-serif;
 font-optical-sizing: auto;
 font-weight: 800;
 font-style: normal;
}

/* ROOT VARS */
:root {
 --color-white: #ffffff;
 --color-light: #f3f5fa;
 --color-dark: #000000;

 /* --regular-shaodw: 0 .5rem 1rem rgba(0,0,0,.15)!important;


--regular-shaodw: 0 .5rem 1rem rgba(0,0,0,.15)!important; */

 scroll-behavior: smooth;
}

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
body {
 font-weight: 600;
}

a {
 text-decoration: none;
}

a:hover {
 text-decoration: none;
}

p {
 font-size: 17px;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
 -webkit-appearance: none;
 margin: 0;
}

/* Firefox */
input[type="number"] {
 -moz-appearance: textfield;
}

/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/
#preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    overflow: hidden;
    background: #000000;
  }
  #preloader img {
   width: 100px;
  }
  #preloader:before {
    content: "";
    position: fixed;
    top: calc(68% - 30px);
    left: calc(50% - 30px);
    border: 6px solid #f6be32;
    border-top-color: #e2eefd;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    animation: animate-preloader 1s linear infinite;
  }
  
  @keyframes animate-preloader {
    0% {
      transform: rotate(0deg);
    }
  
    100% {
      transform: rotate(360deg);
    }
  }

/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
 position: fixed;
 visibility: hidden;
 opacity: 0;
 right: 15px;
 bottom: 15px;
 z-index: 996;
 background: #25d366;
 width: 60px;
 height: 60px;
 border-radius: 50px;
 transition: all 0.4s;
}

.back-to-top i {
 font-size: 24px;
 color: #fff;
 line-height: 0;
}

.back-to-top:hover {
 background: #075e54;
 color: #fff;
}

.back-to-top.active {
 visibility: visible;
 opacity: 1;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/

#activator {
 display: block;
 position: absolute;
 width: 35px;
 height: 20px;
 top: 40px;
 right: 40px;
 cursor: pointer;
 z-index: 100;
 -webkit-transition: all 0.2s linear;
 transition: all 0.2s linear;
 .menu-icon,
 .menu-icon::before,
 .menu-icon::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: #ffffff;
  border-radius: 1px;
  cursor: pointer;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
 }
 .menu-icon {
  top: 8px;
 }
 .menu-icon::before {
  top: -11px;
 }
 .menu-icon::after {
  bottom: -11px;
 }
}
#activator.active {
 .menu-icon {
  background: none;
 }
 .menu-icon::before {
  top: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
 }
 .menu-icon::after {
  bottom: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
 }
}

#activate-menu {
 z-index: 90;
 padding: 20px 40px;
 position: fixed;
 top: 0;
 bottom: 0;
 right: -40%;
 width: 17%;
 height: 70%;
 border-left: 4px solid white;
 border-bottom: 4px solid white;
 border-bottom-left-radius: 5px;
 list-style-type: none;
 backface-visibility: hidden;
 -webkit-backface-visibility: hidden;
 -webkit-overflow-scrolling: touch;
 background: #000;
 opacity: 0.5;
 overflow: hidden;
 overflow-y: auto;
 -webkit-transition: all 0.2s ease;
 transition: all 0.2s ease;
}
#activate-menu.visible {
 right: 0;
}

#fade-bg {
 display: none;
 width: 100%;
 height: 100%;
 position: fixed;
 -webkit-overflow-scrolling: touch;
 overflow: hidden;
 top: 0;
 left: 0;
 z-index: 80;
 background: rgba(0, 0, 0, 0.5);
}

#activate-menu ul li a {
 color: #ffffff;
 opacity: 0.7;
 transition: 0.3s ease;
}

#activate-menu ul li a:hover {
 opacity: 1;
}

#activate-menu ul hr {
 color: #ffffff !important;
 opacity: 0.7 !important;
}

@media (max-width: 500px) {
 #activate-menu {
  width: 40%;
  height: 78%;
 }
}

.btn-main {
 --bs-btn-color: #fff;
 --bs-btn-hover-color: #fff;
 --bs-btn-focus-shadow-rgb: 217, 164, 6;
 --bs-btn-active-color: #fff;
 --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
 --bs-btn-disabled-color: #fff;
 font-size: 12px;
 font-weight: bold;
 text-transform: uppercase;
 letter-spacing: 1pt;
}

/*--------------------------------------------------------------
# Sections General
--------------------------------------------------------------*/
section {
 padding: 40px 0;
 overflow: hidden;
}
.bg-cover {
 background-position: center;
 background-size: cover;
 width: 100%;
}

.bg-cover-cuadrado {
 background-position: center;
 background-size: cover;
 width: 100%;
 content: "";
 padding-bottom: 100%;
 border-radius: 0 3rem 3rem 3rem;
 height: 100px;
}

/*--------------------------------------------------------------
# Home
--------------------------------------------------------------*/
#home {
 height: 100vh;
 width: auto;
 overflow: hidden;
 background-position: top;
 background-repeat: no-repeat;
 background-size: cover;
}
#home h1 {
 font-size: 60px;
}

.link-home {
 position: relative;
 color: white;
 text-decoration: none;
}

.link-home::after {
 content: "";
 position: absolute;
 bottom: -2px; /* Controla la separación entre el texto y el subrayado */
 left: 50%;
 transform: translateX(-50%);
 width: 115%;
 height: 2px; /* Controla la altura del subrayado */
 background-color: white;
 transition: width 0.5s ease; /* Controla la velocidad de la transición */
}

.link-home:hover::after {
 width: 0; /* Hace que el subrayado desaparezca progresivamente */
}

@media (max-width: 500px) {
 .logoHome {
  width: 50%;
 }
 .inversionImgHome {
  width: 50%;
 }
 #home h1 {
  font-size: 40px;
 }
 .mas-rojo-inverti{
  width: 20%;
 }
}

/*--------------------------------------------------------------
# Estamos Con Vos
--------------------------------------------------------------*/
#estmos_con_vos {
 background-color: #000000;
 /* height: 100vh; */
}

.estamosImg {
 background-position: center;
 background-repeat: no-repeat;
 background-size: cover;
 padding-bottom: 60%;
}

@media (max-width: 500px) {
 .estamosImg {
  padding-bottom: 65%;
 }
}

/*--------------------------------------------------------------
# Proyectos
--------------------------------------------------------------*/
.img-container {
 width: 400px; /* Define el ancho fijo para el contenedor de la imagen */
 height: 300px; /* Define el alto fijo para el contenedor de la imagen */
 overflow: hidden; /* Oculta cualquier parte de la imagen que exceda el tamaño del contenedor */
}

.img-container img {
 width: 100%; /* Asegura que la imagen llene completamente el contenedor */
 height: 100%; /* Asegura que la imagen llene completamente el contenedor */
 object-fit: contain; /* Escala la imagen para que quepa completamente dentro del contenedor, manteniendo su relación de aspecto */
}
@media (max-width: 500px) {
 .img-container {
  width: 300px; /* Define el ancho fijo para el contenedor de la imagen */
  height: 200px; /* Define el alto fijo para el contenedor de la imagen */
  overflow: hidden; /* Oculta cualquier parte de la imagen que exceda el tamaño del contenedor */
 }
 .masImg {
  width: 11% !important;
  height: 8% !important;
 }
 .link-home-proyectos {
  font-size: 12px !important;
 }
 .img-proyecto {
  width: 60%;
 }
}

/*--------------------------------------------------------------
# Novedades
--------------------------------------------------------------*/
.title-novedades {
 font-size: 35px;
}
#novedades .card {
 border-top-right-radius: 30px;
 border-top-left-radius: 0px;
 border-bottom-left-radius: 30px;
 border-bottom-right-radius: 0px;
 min-height: 470px;
 max-height: 470px;
}
#novedades .card h5 {
 transition: 0.3s ease;
}
#novedades .card h5:hover {
 opacity: 0.5;
}
#novedades .card .card-body {
 background-color: #000000;
 color: #ffffff;
}
#novedades .card .card-body .card-title {
 background-image: url("../img/bg-novedades.png");
 background-position: center;
 background-repeat: no-repeat;
 background-size: cover;
}

.ver-mas-nov {
 width: 35% !important;
}

@media (max-width: 500px) {
 #novedades img {
  width: 10%;
 }
 .ver-mas-nov {
  width: 80% !important;
 }
 .title-novedades {
  font-size: 25px;
 }
}

.novedades-det {
 padding-bottom: 30%;
 background-position: center;
 background-repeat: no-repeat;
 background-size: cover;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
#footer {
 font-size: 12px;
 background-color: var(--color-dark);
 border-top: 2px solid;
 border-image: linear-gradient(
  90deg,
  rgba(0, 0, 0, 1) 0%,
  rgba(255, 255, 255, 1) 50%,
  rgba(0, 0, 0, 1) 100%
 );
 border-image-slice: 1;
 padding-top: 20px; /* Ajusta el espacio superior del footer */
}

#footer .footer-top {
 padding: 60px 0 0px 0;
 background: var(--color-dark);
}

#footer .footer-bottom {
 padding-top: 30px;
 padding-bottom: 30px;
}

#footer .copyright {
 /* float: left; */
 color: #fff;
}

#footer .credits {
 /* float: right; */
 font-size: 13px;
 color: #fff;
}

#footer .credits a {
 transition: 0.3s;
 color: #fff;
}

.bordered-div {
 border-right: 2px solid;
 border-image: linear-gradient(
  180deg,
  rgba(0, 0, 0, 1) 0%,
  rgba(255, 255, 255, 1) 50%,
  rgba(0, 0, 0, 1) 100%
 );
 border-image-slice: 1;
 padding-right: 10px; /* Ajusta el espacio entre el contenido y el borde derecho */
}

@media (max-width: 500px) {
 .bordered-div {
  border-right: none;
 }
 .ndi {
  width: 40%;
 }
 .finex {
  width: 30%;
 }
 .sydiex {
  width: 30%;
 }
 .invlac {
  width: 40%;
 }
}

/*--------------------------------------------------------------
# CONTACTO
--------------------------------------------------------------*/
.card-contacto {
 border: 2px solid;
 border-top-right-radius: 30px;
 border-top-left-radius: 0px;
 border-bottom-left-radius: 30px;
 border-bottom-right-radius: 0px;
 background-color: transparent;
 color: #ffffff;
}
.input-contacto {
 border-top: 1px solid #ffffff;
 border-right: 1px solid #ffffff;
 border-bottom: none;
 border-left: none;
 border-top-right-radius: 0px;
 border-top-left-radius: 30px;
 border-bottom-left-radius: 0px;
 border-bottom-right-radius: 30px;
 background-color: #ffffff63;
 color: #ffffff;
}
.input-contacto::placeholder {
 color: #ffffff;
}
.input-contacto:focus {
 background-color: #ffffff63;
 color: #ffffff;
}
.btn-form {
 background-color: #ffffff63;
 color: #ffffff;
 border: 1px solid #ffffff;
 transition: 0.3s ease;
}
.btn-form:hover {
 background-color: #ffffff;
 color: #000000;
}
@media (max-width: 500px) {
 .mapa-contacto {
  margin-top: 20px;
  width: 100%;
 }
 .img-contacto {
  width: 10%;
 }
}

/*--------------------------------------------------------------
# SOCIAL MEDIA MENU
--------------------------------------------------------------*/
.social-media-menu {
 display: flex;
 justify-content: space-between;
 align-items: center;
 margin-bottom: 0;
}
.social-media-menu li {
 width: 30px;
 height: 30px;
 border-radius: 30px;
 /* background-color: var(--color-light); */
 display: flex;
 justify-content: center;
 align-items: center;
}
.social-media-menu li a {
 opacity: 0.5;
 transition: 0.3s;
}
.social-media-menu li a:hover {
 opacity: 1;
 transition: 0.3s;
}

@media (max-width: 768px) {
}

/*--------------------------------------------------------------
# PROYECTOS PAGE
--------------------------------------------------------------*/
.proyectos-card {
 background-position: center;
 background-repeat: no-repeat;
 background-size: cover;
 height: 350px;
}
.img-container-page {
 width: 400px; /* Define el ancho fijo para el contenedor de la imagen */
 height: 350px; /* Define el alto fijo para el contenedor de la imagen */
 overflow: hidden; /* Oculta cualquier parte de la imagen que exceda el tamaño del contenedor */
}

.img-container-page img {
 width: 70%; /* Asegura que la imagen llene completamente el contenedor */
 height: 70%; /* Asegura que la imagen llene completamente el contenedor */
 object-fit: contain; /* Escala la imagen para que quepa completamente dentro del contenedor, manteniendo su relación de aspecto */
}
.proyectos-card {
 position: relative;
 width: 100%;
 height: 100%; /* Ajusta la altura según tu necesidad */
 background-size: cover;
 background-position: center;
 transition: transform 0.5s;
}

.proyectos-card::after {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 opacity: 0;
 transition: opacity 0.5s, transform 0.3s;
 transform: translateY(-100%);
}

.proyectos-card:hover::after {
 opacity: 1;
 transform: translateY(0);
}

.img-container-page {
 position: relative;
 z-index: 1;
}

.img-proyecto-page {
 max-width: 100%;
 max-height: 100%;
 display: block;
}
@media (max-width: 500px) {
 .img-container-page {
  width: 300px; /* Define el ancho fijo para el contenedor de la imagen */
  height: 200px; /* Define el alto fijo para el contenedor de la imagen */
  overflow: hidden; /* Oculta cualquier parte de la imagen que exceda el tamaño del contenedor */
 }
 .img-proyecto-page {
  width: 60%;
 }
}

/*--------------------------------------------------------------
# PROYECTOS DETALLE PAGE
--------------------------------------------------------------*/
.proyecto-det {
 background-position: center;
 background-repeat: no-repeat;
 background-size: cover;
 /* padding-bottom: 25%; */
}
.caracteristicas-proyecto {
 line-height: 1px;
 text-align: center;
 color: #ffffff;
 border-bottom: 2px solid;
 border-image: linear-gradient(
  90deg,
  rgba(0, 0, 0, 1) 0%,
  rgba(255, 255, 255, 1) 50%,
  rgba(0, 0, 0, 1) 100%
 );
 border-image-slice: 1;
 padding-bottom: 15px; /* Ajusta el espacio superior del footer */
}

.form-contacto {
 border: 3px solid #ffffff;
 padding: 35px;
 border-top-left-radius: 0px;
 border-top-right-radius: 30px;
 border-bottom-left-radius: 30px;
 border-bottom-right-radius: 0px;
}
.form-contacto-text-area {
 border: 3px solid #ffffff;
 padding: 12px;
 border-top-left-radius: 30px;
 border-top-right-radius: 0px;
 border-bottom-left-radius: 0px;
 border-bottom-right-radius: 30px;
 padding-left: 25px;
 padding-right: 25px;
}
.input-contacto-proyecto {
 border: none;
 background-color: #ffffff42;
 color: #ffffff;
 border-top: 1px solid #ffffff;
 border-right: 1px solid #ffffff;
 border-top-left-radius: 15px;
 border-top-right-radius: 0px;
 border-bottom-left-radius: 0px;
 border-bottom-right-radius: 15px;
}
.input-contacto-proyecto::placeholder {
 color: #ffffff;
}
.input-contacto-proyecto:focus {
 background-color: #ffffff63;
 color: #ffffff;
}
.textarea-contacto-proyecto {
 border: none;
 background-color: #ffffff42;
 color: #ffffff;
 border-top: 1px solid #ffffff;
 border-right: 1px solid #ffffff;
 border-top-left-radius: 15px;
 border-top-right-radius: 0px;
 border-bottom-left-radius: 0px;
 border-bottom-right-radius: 15px;
}
.textarea-contacto-proyecto::placeholder {
 color: #ffffff;
}
.textarea-contacto-proyecto:focus {
 background-color: #ffffff63;
 color: #ffffff;
}
@media (max-width: 500px) {
 .img-comunicate-con-nosotros {
  width: 100%;
 }
}

/*--------------------------------------------------------------
# NOSOTROS PAGE
--------------------------------------------------------------*/
.staff-card {
border: 4px solid #ffffff;
 border-top-left-radius: 30px;
 border-top-right-radius: 0px;
 border-bottom-left-radius: 0px;
 border-bottom-right-radius: 30px;
}
@media (max-width: 500px) {
 .nosotros-valores {
  width: 100% !important;
 }
 .quotes-nosotros {
  width: 100%;
 }
}

/*--------------------------------------------------------------
# INVERTI PAGE
--------------------------------------------------------------*/
.porque-invertir {
 border-top-left-radius: 20px;
 border-top-right-radius: 0px;
 border-bottom-left-radius: 0px;
 border-bottom-right-radius: 20px;
}
@media (max-width: 500px) {
 .inversiones-pozo {
  font-size: 25px !important;
 }
 .chart-inverti {
  width: 100%;
  height: 250px;
 }
 .video-inverti {
  height: 250px;
 }
 .conoce_inversion {
  width: 100%;
 }
 .mas-inverti {
  width: 12%;
 }
}

.input-contacto-sumate {
 border: none;
 background-color: #ffffff42;
 color: #ffffff;
 border-top: 1px solid #ffffff;
 border-right: 1px solid #ffffff;
 border-radius: 0px;
}
.input-contacto-sumate::placeholder {
 color: #ffffff;
}
.input-contacto-sumate:focus {
 background-color: #ffffff63;
 color: #ffffff;
}
.form-check {
 display: flex; /* Usamos flexbox para alinear los elementos */
 align-items: center; /* Centrar verticalmente los elementos */
}

.form-check-input {
 width: 30px; /* Tamaño deseado del checkbox */
 height: 30px; /* Tamaño deseado del checkbox */
 background-color: black; /* Fondo negro */
 border: 2px solid white; /* Bordes blancos */
 -webkit-appearance: none; /* Eliminar la apariencia predeterminada */
 -moz-appearance: none; /* Eliminar la apariencia predeterminada */
 appearance: none; /* Eliminar la apariencia predeterminada */
 outline: none; /* Eliminar el contorno al hacer clic */
 cursor: pointer; /* Cambiar el cursor al pasar el ratón */
 margin-right: 10px; /* Espacio entre el checkbox y el texto */
}

/* Estilo para cuando el checkbox está marcado */
.form-check-input:checked {
 background-color: black; /* Fondo negro */
 border: 2px solid white; /* Bordes blancos */
}

.form-check-label {
 color: white; /* Color del texto */
 opacity: 0.7;
 margin: 0; /* Eliminar el margen predeterminado */
}
