/*
verde #0f514d
beige: #c9a795
*/
body{
margin: 0;
font-family: Arial, sans-serif;
scroll-behavior: smooth; /* Deslizamiento suave al hacer click en los enlaces */
}
h1{
font-weight:normal;
}
h2{
font-weight:normal;
}
h3{
font-weight:normal;
}
h4{
font-weight:normal;
}

.contenedor{
width:100%;
margin: auto;
}
.caja-naranja{
background-image: url(images/portada5ok.jpg);
background-position: center top;
background-repeat: no-repeat;
background-size: contain;
box-sizing:border-box;
color:#0f514d;
text-align: center;
font-size:1.4em;
padding:3% 49% 0px 3%;
}
.caja-verde{
box-sizing:border-box;
font-size:1.4em;
padding: 20px;
text-align: left;
margin-top: 20px;
}
.caja-azul{
color:#0f514d;
font-size:1.2em;
padding:0px 3% 10px 45%;
text-align: right;
}
/* Selecciona todas las imágenes dentro de una celda de tabla */
td a img {
    /* Agrega una transición para que el efecto sea suave */
    transition: transform 0.3s ease;
}

/* Cuando el usuario pase el mouse por encima del enlace, la imagen dentro se transformará */
td a:hover img {
    /* Escala la imagen al 75% de su tamaño original */
    transform: scale(0.75);
}
#flecha_back{
bottom:20px;
right:20px;
position:fixed;
width:70px;
}
.button_mi_prop {
  background-color: #0f514d;
  color: #ffffff;
  padding: 10px 20px; /* Ajusta el relleno según necesites */
  text-decoration: none; /* Elimina el subrayado por defecto de los enlaces */
  border: none; /* Elimina cualquier borde por defecto */
  display: inline-block; /* Para que el padding y otras propiedades de bloque funcionen correctamente */
}

.button_mi_prop:hover {
  background-color: #c9a795;
  color: #0f514d;
}
@media (max-width: 600px){
.caja-naranja {
padding: 0px 8px 0px 8px;
font-size:.9em;
text-align: center;
}
.caja-verde{
font-size:.9em;
margin-top: 0px;
padding: 0px;
text-align: center;
margin-top: -20px;
}
.caja-azul{
font-size:.9em;
padding: 8px;
text-align: center;
}
#flecha_back{
bottom:10px;
right:10px;
width:20px;
}
.contenedor{
padding-top:70px;
}
}

.header{
background-color: #0f514d; /* Fondo verde oscuro */
color: white;
padding: 4px 20px;
display: flex;
justify-content: space-between;
align-items: center;
position: fixed;
width: calc(100% - 40px); /* Resta el padding para que ocupe todo el ancho */
top: 0;
left: 0;
z-index: 1000;
box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}
#inicio{
/*background-image:url(images/portadaok.jpg);*/
background-repeat:no-repeat;
background-position:center center;
background-size:cover;
display:flex;
text-align:left;
width:100%;
}
#inicio-inicio{
display:inline-block;
width:100%;
}
#inicio2{
text-align:left;
position:absolute;
float: left;
left: 0;
width:100%;
}
#inicio3{
display: inline-block;
width:100%;
}
.soluciones_inm{

box-sizing:border-box;
font-size:1.3em;
text-align:center;
width:100%;
}
.diseni{

font-size:.9em;
width:100%;
}
.header .logo img{
height: 70px; /* Ajusta la altura del logotipo */
width: auto;
}
.hamburger-menu{
width: 40px; /* Ancho total del icono */
height: 20px; /* Altura total del icono, reducida para juntar las líneas */
display: flex;
flex-direction: column;
justify-content: space-between; /* Mantener un pequeño espacio entre las líneas */
cursor: pointer;
padding: 5px; /* Pequeño padding alrededor del icono */
box-sizing: content-box;
}
.hamburger-menu .line{
width: 100%; /* Las líneas ocupan todo el ancho del contenedor */
height: 3px; /* Más delgadas */
background-color: white; /* Color blanco */
border-radius: 2px;
transition: all 0.3s ease;
}
/* Menú lateral (sidebar) */
.sidebar-menu{
position: fixed;
top: 0;
right: -300px; /* Oculto por defecto */
width: 300px;
height: 100%;
background-color: #333;
color: white;
padding-top: 40px; /* Espacio para el header interno o botón de cerrar */
transition: right 0.3s ease-in-out;
z-index: 999;
box-sizing: border-box;
}
.sidebar-menu.active{
right: 0; /* Visible cuando está activo */
}
.sidebar-header{
display: flex;
justify-content: flex-end;
padding: 5px 6px;
border-bottom: 1px solid #444;
}
.sidebar-header img#close-menu-btn{
width: 30px;
height: 30px;
cursor: pointer;
transition: transform 0.2s ease;
}
.sidebar-header img#close-menu-btn:hover{
transform: scale(1.1);
}
.sidebar-menu ul{
list-style: none;
padding: 0;
margin: 0;
}
.sidebar-menu ul li a{
display: block;
padding: 10px 15px;
color: white;
text-decoration: none;
border-bottom: 1px solid #444;
transition: background-color 0.2s ease;
}
.sidebar-menu ul li a:hover{
background-color: #555;
}
#ns{
background-color:white;
display:flex;
width:100%;
}
#ns_A{
background-color:white;
padding:0px 20px 20px 20px;
text-align:left;
width:50%;
}
#ns_B{
background-color:#c9a795;
padding:0px 50px;
text-align:left;
width:50%;
}
.h2ns{
text-align:left;
}
.nuestros{
color:#0f514d;
font-size:2em;
letter-spacing:5px;
}
.servicios{
color:#0f514d;
font-size:1.4em;
}
.justify{
display:block;
text-align:justify;
}
.pers1{
padding-right:10%;
}
.num_verde{
color:#0f514d;
display:block;
font-size:1.2em;
padding-left:22px;
}
.nuestrosv{
color:#c9a795;
font-size:2.7em;
}
.txt_sm_white{
color:white;
display:block;
padding-left:12px;
padding-bottom:10px;
}
.pverde{
color:#0f514d;
font-size:1.2em;
padding:40px;
}
#tablita{
display:inline-block;
padding:0;
margin-top:0px;
}
#tablita_mov{
display:none;
padding:0;
margin-top:0px;
}
.tm1-3{
font-size:1.3em; 
}
.beig2{
display:inline-block;
margin-bottom:20px;
}
#kali_sig{
background-color:#0d514d;
color:white;
display: inline-block;
float:right;
width:90%;
}
#tit_corretaje{
color:#0f514d;
font-size:1.9em;
}
#te_conectamos{
color:#0f514d;
padding:40px;
font-size:1em;	
}
#cabbeige{
color:#c9a795;
font-size:2.2em;
margin-top:20px;
}
#lista_verde{
font-size:.9em;
line-height:1.3em;
}

.verde{
color:#0f514d;
}
.beige{
color:#c9a795;
}
#tabla1{
display:inline-block;
}
#tabla2{
display:none;
}

/* ... (Tu CSS existente) ... */

/* Estilos para la sección de Contacto */
#contacto {
text-align: center; /* Centra el contenido principal */
}

.contacto-content {
    display: flex;
    flex-wrap: wrap; /* Permite que las columnas se envuelvan en pantallas pequeñas */
    justify-content: center;
    align-items: flex-start; /* Alinea las columnas arriba */
    gap: 40px; /* Espacio entre columnas */
    max-width: 1200px; /* Ancho máximo del contenedor de columnas */
    margin: 0 auto; /* Centra el contenedor de columnas */
    padding: 20px;
}

.contacto-columna {
    flex: 1 1 45%; /* Permite que las columnas crezcan y se encojan, ocupando ~45% del espacio */
    box-sizing: border-box;
    padding: 20px;


    min-width: 300px; /* Ancho mínimo para evitar que se aplasten demasiado */
}

.left-col {
    text-align: left; /* Alinea el texto del formulario a la izquierda */
}

.left-col h2 {
    color: #0f514d; /* Verde oscuro */
    margin-bottom: 20px;
}

.left-col p {
    color: #555;
    margin-bottom: 20px;
}

/* Estilos del formulario */
#contact-form .form-group {
    margin-bottom: 15px;
}

#contact-form label {
    display: block;
    margin-bottom: 5px;
    color: #0f514d;
    font-weight: bold;
}

#contact-form input[type="text"],
#contact-form input[type="email"],
#contact-form textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box; /* Incluye padding y border en el ancho total */
    font-family: Arial, sans-serif; /* Consistencia de fuente */
}

#contact-form textarea {
    resize: vertical; /* Permite redimensionar verticalmente */
}

#contact-form button[type="submit"] {
    background-color: #0f514d; /* Verde oscuro */
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1.1em;
    transition: background-color 0.3s ease;
}

#contact-form button[type="submit"]:hover {
    background-color: #0b3d39; /* Verde más oscuro al pasar el mouse */
}

/* Estilos para el mensaje de agradecimiento */
#thank-you-message {
    padding: 30px 20px;
    background-color: #e6ffe6; /* Fondo verde claro */
    color: #0f514d;
    border: 1px solid #0f514d;
    border-radius: 8px;
    font-size: 1.2em;
    font-weight: bold;
    text-align: center;
}

/* Estilos para la columna de mapas */
.right-col {
    text-align: left;
}

.map-container {
    margin-bottom: 30px; /* Espacio entre los dos mapas */
    border-radius: 8px;
    overflow: hidden; /* Asegura que el iframe se ajuste al radio */

}

.map-container h3 {
    color: #c9a795; /* Beige */
    margin-bottom: 10px;
    font-size: 1.5em;
    padding-left: 10px;
}

.map-container iframe {
    display: block; /* Elimina espacio extra debajo del iframe */
}

/* Estilos para la información de contacto debajo de las columnas */
.contact-info {
    width: 100%;
    text-align: center;
    margin-top: 40px; /* Espacio entre las columnas y los teléfonos */
    color: #0f514d; /* Verde oscuro */
    font-size: 1.1em;
    line-height: 1.6;
}

.contact-info p {
    margin: 5px 0;
}

/* Media Queries para responsividad */
@media only screen and (max-width: 768px) {
    .contacto-columna {
        flex: 1 1 90%; /* Las columnas ocupan casi todo el ancho en móviles */
        max-width: 90%;
    }
}


/* Secciones */
.section{
min-height:100vh; /* Para que cada sección ocupe al menos la altura de la ventana */
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
padding-top:80px; /* Espacio para el header fijo */
box-sizing: border-box;
position: relative; /* Para los bloques de color extendidos */
overflow: hidden; /* Para que los bloques extendidos no se salgan */
}
.section-inicio{
display: inline-block;
box-sizing: border-box;
overflow: hidden; /* Para que los bloques extendidos no se salgan */
}
.section-contacto{
min-height:100vh; /* Para que cada sección ocupe al menos la altura de la ventana */
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
padding-top:20px; /* Espacio para el header fijo */
box-sizing: border-box;
position: relative; /* Para los bloques de color extendidos */
overflow: hidden; /* Para que los bloques extendidos no se salgan */
}
.section-contacto h2{
font-size: 2em;
margin-bottom: 20px;
color: #333;
z-index: 1; /* Asegura que el texto esté sobre los bloques de color */
}
.section h2{
font-size: 3em;
margin-bottom: 20px;
color: #333;
z-index: 1; /* Asegura que el texto esté sobre los bloques de color */
}
.section p{
font-size: 1.2em;
max-width: 800px;
line-height: 1.6;
color: #555;
z-index: 1; /* Asegura que el texto esté sobre los bloques de color */
}
.section-nuestros-servicios{
min-height:80vh; /* Para que cada sección ocupe al menos la altura de la ventana */
display: flex;
flex-direction: column;
justify-content:top;
align-items: center;
text-align: center;
padding-top:0px; /* Espacio para el header fijo */
box-sizing: border-box;
position: relative; /* Para los bloques de color extendidos */
overflow: hidden; /* Para que los bloques extendidos no se salgan */
}
.section-asesoria{
min-height:100vh; /* Para que cada sección ocupe al menos la altura de la ventana */
display: flex;
flex-direction: column;
text-align:left;
padding-top:40px; /* Espacio para el header fijo */
box-sizing: border-box;
position: relative; /* Para los bloques de color extendidos */
overflow: hidden; /* Para que los bloques extendidos no se salgan */
}
.section-admon_cond{
min-height:100vh; /* Para que cada sección ocupe al menos la altura de la ventana */
display: flex;
flex-direction: column;
text-align:left;
padding:0px; /* Espacio para el header fijo */
box-sizing: border-box;
position: relative; /* Para los bloques de color extendidos */
overflow: hidden; /* Para que los bloques extendidos no se salgan */
}
#cab_admon_cond{
box-sizing: border-box;
color:#0f514d;
display:inline-block;
font-size:1.8em;
padding:90px 80px 0px 80px;
width:50%;
}
#neces_admin{
box-sizing: border-box;
color:#0f514d;
display:inline-block;
font-size:1.2em;
padding:20px 0px 0px 80px;
width:50%;
}
.neces_admin_chico{
font-size:.8em;
}
#no_sabes{
box-sizing: border-box;
color:#0f514d;
display:inline-block;
font-size:1.2em;
padding:20px 0px 0px 80px;
width:65%;
}
#te_garantizamos{
box-sizing: border-box;
color:#0f514d;
display:inline-block;
font-size:.9em;
padding:20px 0px 0px 80px;
width:50%;
}
#no_lo_dudes{
box-sizing: border-box;
color:#c9a795;
display:inline-block;
font-size:1em;
padding:10px 0px 20px 80px;
width:50%;
}
#rendicion{
background-color:#c9a795;
box-sizing: border-box;
color:#0f514d;
display:inline-block;
font-size:1.8em;
padding:8px 0px 20px 80px;
width:40%;
}
#cabi1{
color:white;
font-size:.6em;
}
#cabi2{
font-size:.5em;
margin-bottom:8px;
}
#cabini1{
color:white;
font-size:.6em;
}
#cabini2{
font-size:.5em;
margin-bottom:8px;
}
#iniciamos{
background-color:#c9a795;
box-sizing: border-box;
color:#0f514d;
display:inline-block;
font-size:1.8em;
padding:8px 0px 20px 80px;
width:65%;
}
.section-corretaje{
min-height:100vh; /* Para que cada sección ocupe al menos la altura de la ventana */
display: flex;
flex-direction: column;
text-align:left;
padding:100px 40px; /* Espacio para el header fijo */
box-sizing: border-box;
position: relative; /* Para los bloques de color extendidos */
overflow: hidden; /* Para que los bloques extendidos no se salgan */
}
#a-i{
color:#0f514d;
display:inline-block;
font-size:2em;
padding-top:60px;
padding-left:20px;
text-align: left;
}
#invertir{
color:#0f514d;
display:inline-block;
font-size:1em;
padding-left:80px;
padding-top:12px;
text-align:justify;
width:40%;
}
.white-background{
background-color: white;
color: #333;
}

.background-image{
background-size: cover;
background-position: center;
color: white; /* Texto blanco sobre las imágenes de fondo */
}
#si-tienes{
display: inline-block;
width:100%;
}
#si-tienes2{
background-color:#c9a795;
float:right;
margin-top:30px;
margin-right:10px;
padding:20px;
width:55%;
}
.lista-blanca{
display:inline-block;
margin-bottom:10px;
}

/* Servicios - Bloques de color extendidos */
.services-container{
background-color:purple;
display: flex;
flex-wrap: wrap;
width: 100%;
justify-content:top;
align-items: stretch;
margin-top:0px;
z-index: 1;
}
#kali_con{
color:#0f514d;
padding:0px 20px;
}
.services-block{
flex: 1 1 45%;
padding: 90px 30px 0px 30px;
text-align: left;
box-sizing: border-box;
min-width: 300px;
margin: 0px;
background-color: rgba(255, 255, 255, 0.9);
color: #333;
}

.services-block h3{
margin-top: 0;
color: #0f514d;
}
.mision-vision{
background-color:#c9a795;
color:white;
padding:20px;
width:90%;
}
.proyectar{
font-size: 1.8em;
padding:0px 30px;
text-align: center;
}
.cab1{
color:#0f514d;
display: inline;
font-size:2.5em;
}
#nuestros_valores{
padding:20px;
}
#inn{
padding:20px;
}
#kali_sig{
font-size:2.1em;
padding:20px;
text-align:center;
}
.aire20{
padding:20px;
}


#corretaje2{
background-color:white;
}

.nuestros-valores-container{
background-color:purple;
display: flex;
flex-wrap: wrap;
width: 100%;
justify-content: center;
align-items: stretch;
margin-top:0px;
z-index: 1;
}
.nuestros-valores-block{
flex: 1 1 45%;
padding:0px;
text-align: left;
box-sizing: border-box;
min-width: 300px;
margin: 0px;
}
.txt_una_imv{
color:#0f514d;
font-size:1.5em;
padding:30px;
width:80%;
}
/* style.css */

/* ... (tu CSS existente) ... */

.txt_im_carr1 {
    color: #0f514d;
    display: block; /* Asegura que ocupe su propia línea */
    font-size: 1em;
    line-height: 1.2em; /* Reducido para evitar el BR, ajusta si necesitas más espacio */
    white-space: normal; /* Permite que el texto se envuelva */
    overflow-wrap: break-word; /* Rompe palabras largas si es necesario */
    padding: 0 5px; /* Pequeño padding horizontal para que el texto no toque los bordes */
    box-sizing: border-box; /* Asegura que el padding se incluya en el ancho */
}

A.txt_im_carr1:link {
    color: #0f514d;
    text-decoration: none;
}
A.txt_im_carr1:visited {
    color: #0f514d;
    text-decoration: none;
}
A.txt_im_carr1:active {
    color: #0f514d;
    text-decoration: none;
}
A.txt_im_carr1:hover {
    color: #0f514d;
    text-decoration: underline;
}

.txt_im_carr2 {
    color: #c9a795;
    display: block; /* Asegura que ocupe su propia línea */
    font-size: 0.9em; /* Cambié a 0.9em para darle un poco más de espacio */
    line-height: 1.2em; /* Reducido para evitar el BR, ajusta si necesitas más espacio */
    white-space: normal; /* Permite que el texto se envuelva */
    overflow-wrap: break-word; /* Rompe palabras largas si es necesario */
    padding: 0 5px; /* Pequeño padding horizontal para que el texto no toque los bordes */
    box-sizing: border-box; /* Asegura que el padding se incluya en el ancho */
}

A.txt_im_carr2:link {
    color: #c9a795;
    text-decoration: none;
}
A.txt_im_carr2:visited {
    color: #c9a795;
    text-decoration: none;
}
A.txt_im_carr2:active {
    color: #c9a795;
    text-decoration: none;
}
A.txt_im_carr2:hover {
    color: #c9a795;
    text-decoration: underline;
}

/* Modificaciones en .horizontal-navigation .item */
.horizontal-navigation .item {
    display: inline-block;
    vertical-align: top; /* Asegura que los items se alineen correctamente en la parte superior */
    /* Elimina o comenta 'white-space: nowrap;' si lo tienes en .item */
    max-width: 251px;
    min-width: 250px; /* Asegura un ancho base */
    margin: 0px 40px 0px 0px;
    padding-bottom: 10px; /* Espacio debajo del contenido de la tarjeta */
    box-sizing: border-box; /* Fundamental para que padding y border no aumenten el ancho */
    text-align: center; /* Alinea el texto a la izquierda dentro de la tarjeta */
}


/* Media queries para móvil */
@media only screen and (min-width: 1px) and (max-width: 600px) {
    /* ... (tu CSS existente para móviles) ... */

    .horizontal-navigation .item {
        max-width: 150px; /* Ajusta este valor si es necesario para un mejor ajuste en móvil */
        min-width: 140px; /* Asegura un ancho mínimo en móvil */
        margin: 0px 10px 0px 0px; /* Reduce el margen entre ítems */
        padding-bottom: 5px; /* Menos padding en móvil */
    }

    .txt_im_carr1 {
        font-size: 0.8em; /* Ajusta el tamaño de fuente para móvil */
        line-height: 1.1em;
    }

    .txt_im_carr2 {
        font-size: 0.7em; /* Ajusta el tamaño de fuente para móvil */
        line-height: 1.1em;
    }
}

/* Estilos para los bloques de color que se extienden */
.left-block-extend, .right-block-extend{
position: absolute;
top: 0;
height:100%;
width:50vw;
z-index: 0;
}

.left-block-extend{

left: 0;
}

.right-block-extend{
right: 0;
}

.left-block{
color:#c9a795;
background-color:#0f514d;
}
.right-block{
text-align:center;
}
.left-block-nv{
color:#0f514d;

display:table-row;
}
.right-block-nv{
color:purple;
}


.left-block2{
background-color:white;
}
.right-block2{
background-color:white;
text-align:center;
}


/* Indicador de "scroll down" */
.scroll-down-indicator{
position: fixed;
bottom: 20px;
left: 50%;
transform: translateX(-50%);
cursor: pointer;
z-index: 900; /* Asegura que esté por encima de otros elementos */
transition: opacity 0.3s ease-in-out;
}

.scroll-down-indicator img{
width: 50px;
height: 50px;
animation: bounce 2s infinite;
}



/* ... (tu CSS existente) ... */

/* Estilos para los enlaces de filtro */
.filter-links a {
    color: #0f514d;
    text-decoration: none;
    margin: 0 5px;
    padding: 5px 10px;
    border: 1px solid transparent;
    transition: all 0.3s ease;
}

.filter-links a:hover {
    border-color: #0f514d;
    background-color: #f0f0f0;
}

.filter-links a.active {
    background-color: #0f514d;
    color: white;
    border-color: #0f514d;
    border-radius: 5px;
}

/* Oculta los ítems por defecto para que JavaScript los muestre según el filtro */
.horizontal-navigation .item {
    /* ... (tus estilos existentes para .item) ... */
    display: inline-block; /* O tu display original */
    /* Añade esta línea para ocultar los ítems por defecto */
    display: none; /* Esto será controlado por JavaScript */

max-width:251px;
min-width: 250px;
margin: 0px 40px 0px 0px;
}
.txt_verde{
color:#0f514d;
}
A.txt_verde:link { color:#0f514d; text-decoration:none; } 
A.txt_verde:visited { color:#0f514d; text-decoration:none; } 
A.txt_verde:active { color:#0f514d; text-decoration:none; } 
A.txt_verde:hover { color:#0f514d; text-decoration:underline; } 

.txt_white{
color:white;
}
A.txt_white:link { color:white; text-decoration:none; } 
A.txt_white:visited { color:white; text-decoration:none; } 
A.txt_white:active { color:white; text-decoration:none; } 
A.txt_white:hover { color:white; text-decoration:underline; } 


.grecaptcha-badge {
    visibility: hidden;
}




















/* Asegura que los ítems mostrados tengan el display correcto */
.horizontal-navigation .item.show {
    display: inline-block; /* Ajusta según el display original de tus ítems */
}

/* Media queries para móvil */
@media only screen and (min-width:1px) and (max-width:600px){
    /* ... (tu CSS existente para móviles) ... */
    .horizontal-navigation .item.show {
        display: inline-block; /* Asegura que se muestren correctamente en móvil */
    }
}






@keyframes bounce{
0%, 20%, 50%, 80%, 100%{
    transform: translateY(0);
}
40%{
    transform: translateY(-10px);
}
60%{
    transform: translateY(-5px);
}
}

/* Footer */
.footer{
background-color: #333;
color: white;
text-align:center;
padding: 20px;
margin-top: 50px;
}

/* Navegación horizontal para "Inversión Inmobiliaria" */
.horizontal-navigation-container{
display: flex;
align-items: center;
width: 80%;
margin-top: 30px;
overflow: hidden;
max-width: 1000px;
}

.horizontal-navigation{
display: flex;
overflow-x: auto;
scroll-behavior: smooth;
-webkit-overflow-scrolling: touch;
white-space: nowrap;
flex-grow: 1;
padding-bottom: 10px;
}

.horizontal-navigation::-webkit-scrollbar{
display: none;
}
/*
.horizontal-navigation .item{
flex: 0;
padding:0px;
margin: 0px 40px 0px 0px;
max-width:251px;
min-width: 250px;
display:inline-block;
justify-content: center;
align-items: center;
}
*/
.nav-arrow{
width: 50px;
height: 50px;
cursor: pointer;
margin: 0 10px;
flex-shrink: 0;
transition: transform 0.2s ease;
}

.nav-arrow:active{
transform: scale(0.95);
}




/* Media queries para móvil */


@media only screen and (min-width:1px) and (max-width:600px){
#ns{
display:inline-block;
}
.nuestros{
font-size:1.1em;
letter-spacing:5px;
}
.servicios{
font-size:1em;
}
.pers1{
padding-right:40px;
}
#ns_A{
padding:20px;
width:100%;
}
#ns_B{
padding:12px;
width:100%;
}
.num_verde{
font-size:1.2em;
padding-left:22px;
padding-right:30px;
}
.txt_sm_white{
padding-left:12px;
padding-right:30px;
padding-bottom:10px;
}
#tablita{
display:none;
}
#tablita_mov{
display:inline-block;
padding-top:30px;
}
#a-i{
font-size:1.2em;
}
#invertir{
font-size:.8em;
padding-left:10px;
padding-top:12px;
width:90%;
}
.horizontal-navigation-container{
display: flex;
align-items: center;
width:100%;
margin-top:20px;
}
.horizontal-navigation{
display: flex;
overflow-x: auto;
scroll-behavior: smooth;
-webkit-overflow-scrolling: touch;
white-space: nowrap;
flex-grow: 1;
padding-bottom:10px;
}
.horizontal-navigation .item{
flex: 0;
padding:0px;
margin: 0px 10px 0px 0px;
max-width:140px;
min-width:150px;
display:inline-block;
justify-content: center;
align-items: center;
}
.nav-arrow{
width:20px;
height:20px;
}
.txt_im_carr1{
font-size:.7em;
line-height:1.2em;
}
.txt_im_carr2{
font-size:.6em;
}
#cab_admon_cond{
font-size:1em;
padding:90px 10px 10px 10px;
width:100%;
}
#neces_admin{
font-size:.9em;
padding:10px 0px 0px 10px;
width:100%;
}
#no_lo_dudes{
font-size:1em;
padding:10px 0px 20px 10px;
width:100%;
}
#rendicion{
font-size:1.8em;
padding:8px 0px 20px 10px;
width:90%;
}
#te_garantizamos{
font-size:.9em;
padding:20px 0px 0px 10px;
width:100%;
}
#iniciamos{
font-size:1.5em;
padding:8px 20px 20px 20px;
width:100%;
}
#no_sabes{
font-size:1em;
padding:20px 20px 0px 20px;
width:100%;
}
}







@media only screen and (min-width:1px) and (max-width:400px){
#inicio2{
margin-top:-400px;
}
.soluciones_inm{
font-size:.9em;
padding:6px;
}
.diseni{
height:30vh;
font-size:.75em;
padding-right:30px;
text-align:center;
margin-top:-160px;
}
#tabla1{
display:none;
}
#tabla2{
background-color:white;
display:inline-block;
padding:20px;
}
.proyectar{
font-size:1.2em;
padding:0px 30px;
text-align: center;
}
#kali_sig{
font-size:1.5em;
}
.section-corretaje{
padding:40px 10px; /* Espacio para el header fijo */
}
#te_conectamos{
padding:10px;
}
}
@media only screen and (min-width:200px) and (max-width:768px){
.sidebar-menu{
margin-top:-30px;
width: 100%; /* 100% de ancho en móviles */
right: -100%;
}
.sidebar-menu.active{
right: 0;
}
}
@media (min-height: 468px){
.soluciones_inm{
margin-top:100px;
height:50vh;
}
.diseni{

}
}
/* --- Estilos Finales para Imágenes Verticales (Proporción 3:4) --- */

.imagen-marco-container-v2 {
    position: relative; 
    width: 100%; 
    /* ¡CLAVE! Ajuste para relación de aspecto 3:4 (Alto/Ancho * 100) -> (4/3) * 100 = 133.33% */
    padding-top: 133.33%; 
    overflow: hidden; 
    display: block;

    /* Estilos para la imagen de fondo (la que viene de la BBDD) */
    background-size: cover; /* Ajusta la imagen para que cubra todo el contenedor SIN DEFORMAR */
    background-position: center center; 
    background-repeat: no-repeat;
    transition: transform 0.3s ease; 
}

/* El marco (images/marco.png) que se superpone */
.marco-image-v2 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Asegura que el marco cubra el 100% y se ajuste al 3:4 */
    z-index: 2; 
}

/* Capa transparente de enlace para que toda la imagen sea clickeable */
.enlace-imagen-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
    display: block;
}

/* Opcional: Efecto al pasar el ratón sobre la imagen */
.imagen-marco-container-v2:hover {
    transform: scale(1.05);
}