/* Estilos generales del cuerpo */
body {
    background-size: cover;
    background: whitesmoke;
    height: 100vh;
    margin: 0;
    color: #0e0000; /* Color de texto claro para contraste con el fondo */
    max-width: 100%;
    overflow-x: hidden;
}

/* Estilos para botones */
.boton {
    padding: 10px 15px;
    font-size: 16px;
    transition: transform 0.3s, font-size 0.3s; /* Transiciones suaves al interactuar */
}

.boton:hover {
    transform: scale(1.05); /* Aumenta ligeramente el tamaño al pasar el mouse */
}

.boton:active {
    transform: scale(0.9); /* Disminuye ligeramente el tamaño al hacer clic */
}

/* Estilos para el banner principal */
.banner {
    background-image: url("images/casa_fondo2.0728796cbf5c.jpg");
    height: 201px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
}

.banner-overlay {
    background-color: rgba(0, 0, 0, 0.5); /* Overlay semitransparente */
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Sombra sutil */
}

/* Estilos para las tarjetas de propiedades */
.property-grid {
    display: flex;
    flex-wrap: wrap; /* Permite que las tarjetas se ajusten en varias filas */
}

.propiedad-card {
    border: none;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Sombra sutil */
    transition: transform 0.3s;
}

.propiedad-card:hover {
    transform: translateY(-5px); /* Efecto de elevación al pasar el mouse */
}

.propiedad-card .card-body {
    padding: 0.1rem 0.5rem; /* Padding reducido para dar más espacio a la imagen */
    margin-bottom: 0.25rem;
}

.propiedad-card .card-img-top {
    height: 100px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.card-img-top img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.card-img-top:hover img {
    transform: scale(1.1);
}

.login-card{
    background: rgba(0, 0, 0, 0.12);
}
/* Overlay de las tarjetas */
.card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(72, 33, 150, 0.09); /* Color de fondo del overlay */
    opacity: 0; /* Oculto por defecto */
    transition: opacity 0.3s ease; /* Transición suave de opacidad */
    display: flex;
    align-items: center;
    justify-content: center;
}

.card-img-top:hover .card-overlay {
    opacity: 1; /* Visible al pasar el mouse */
}

/* Estilos para la sección "Sobre Nosotros" */
.about-us p {
    line-height: 1.6; /* Espacio entre líneas para mejor legibilidad */
}

.about-us .btn {
    margin-top: 20px;
}

/* Estilos para la sección "Hero" */
.hero {
    background-image: url("images/casa_fondo2.0728796cbf5c.jpg");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    min-height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}

.hero-content {
    background-color: rgba(0, 0, 0, 0.3);
    padding: 30px;
    border-radius: 10px;
}

/* Estilos para los feature boxes */
.why-us .feature-box {
    background-color: #65e8e8; /* Color de fondo de los feature boxes */
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(43, 183, 190, 0.49);
    transition: transform 0.3s ease;
}

.why-us .feature-box:hover {
    transform: translateY(-5px);
}
.btn-filtros {
    background-color: rgba(2, 6, 253, 0.89); /* Color de fondo morado */
    color: white;             /* Color de texto blanco */
    border: none;             /* Sin borde */
    padding: 10px 20px;      /* Espaciado interno */
    border-radius: 5px;       /* Bordes redondeados */
    cursor: pointer;         /* Cursor de mano al pasar el mouse */
    transition: background-color 0.3s ease; /* Transición suave del color de fondo */
}

.btn-filtros:hover {
    background-color: #0024b3; /* Color de fondo más oscuro al pasar el mouse */
}

/* Estilos para el contenedor de filtros */
#filtrosBusqueda .card-body {
    background-color: rgba(101, 232, 232, 0.46); /* Color de fondo claro */
    border: 1px solid #00b2d2; /* Borde gris claro */
    padding: 20px;
}

#filtrosBusqueda .form-group {
    margin-bottom: 15px; /* Espacio entre los campos del formulario */
}

#filtrosBusqueda label {
    font-weight: bold; /* Etiquetas en negrita */
}

#filtrosBusqueda .btn-primary {
    background-color: rgba(17, 0, 255, 0.44); /* Color de fondo azul para el botón "Filtrar" */
    border-color: rgba(0, 255, 247, 0.62);
}
#filtrosBusqueda .form-control {
    height: auto; /* Ajusta la altura de los campos de entrada según sea necesario */
}
.container.mt-5 {  /* Contenedor general del formulario */
    background-color: rgba(0, 246, 255, 0.09);  /* Fondo blanco para el formulario */
    padding: 30px;         /* Espacio interno */
    border-radius: 10px;     /* Bordes redondeados */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Sombra suave */
}

.container h2 {  /* Título del formulario */
    color: rgba(0, 44, 150, 0.96); /* Color de texto oscuro */
}

.form-check-label { /* Etiquetas de los checkboxes */
    margin-left: 5px;
}

.form-group { /* Grupos de campos */
    margin-bottom: 1.5rem; /* Más espacio entre grupos */
}

.btn-outline-primary {
    --bs-btn-color: #010dfa;
    --bs-btn-border-color: #010dfa;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #010dfa;
    --bs-btn-hover-border-color: #010dfa;
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #010dfa;
    --bs-btn-active-border-color: #010dfa;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #010dfa;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #010dfa;
    --bs-gradient: none;
}


body {
    overflow-x: hidden; /* Evita el desplazamiento horizontal del body */
}
.dropdown-menu {
    max-height: 300px; /* Limitar la altura máxima si es necesario */
    overflow-y: auto;  /* Agregar barra de desplazamiento vertical si es necesario */
    margin-left: 00px; /* Ajusta este valor según tus necesidades */
}





.container {
    max-width: 1200px; /* Ancho máximo del contenedor principal */
    margin: 0 auto;   /* Centra horizontalmente */
}
.offcanvas {
    width: 100px; /* Ancho fijo para el menú lateral */
}

.offcanvas-body {
    padding: 20px; /* Espaciado interno */
}

.offcanvas-title { /* Título del menú */
    font-weight: bold;
}

.navbar-nav .nav-link { /* Enlaces del menú */
    color: #1ef1ff;      /* Color de texto blanco */
    padding: 10px 15px;
}


/* Estilos generales para el formulario de registro */
.card.shadow-sm {
    border: none; /* Elimina el borde por defecto de la tarjeta */
    border-radius: 10px; /* Redondea las esquinas de la tarjeta */
}

.card-title {
    font-weight: bold;
    color: #007bff; /* Color de texto azul para el título */
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2); /* Sombra sutil al texto */
}


/* Estilos específicos para el botón en pantallas pequeñas */
@media (max-width: 600px) {  /* Ajusta el breakpoint según tu diseño */
    .btn-primary {
        font-size: 0.7rem;  /* Reduce el tamaño de la fuente */
        padding: 0.55rem 0.55rem; /* Reduce el padding */
    }
    .btn {
    white-space: nowrap; /* Evita que el texto se divida en varias líneas */
        font-size: 0.7rem;  /* Reduce el tamaño de la fuente */
        padding: 0.55rem 0.55rem; /* Reduce el padding */
    }
    .button-85 {
        white-space: nowrap; /* Evita que el texto se divida en varias líneas */
        font-size: 0.65rem; /* Reduce el tamaño de la fuente */
        padding: 0.55rem 0.55rem; /* Reduce el padding */
    }
}
/* CSS */
.button-85 {
  padding: 0.6em 2em;
  border: none;
  outline: none;
  color: rgb(255, 255, 255);
  background: #111;
  cursor: pointer;
  position: relative;
  z-index: 0;
  border-radius: 10px;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
}

.button-85:before {
  content: "";
  background: linear-gradient(
    45deg,
    #00ffd0,
    #5e00ff,
    #00ff15,
    #48ff00,
    #00ffd5,
    #002bff,
    #7a00ff,
    #ff00c8,
    #00ffbb
  );
  position: absolute;
  top: -2px;
  left: -2px;
  background-size: 400%;
  z-index: -1;
  filter: blur(5px);
  -webkit-filter: blur(5px);
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  animation: glowing-button-85 20s linear infinite;
  transition: opacity 0.3s ease-in-out;
  border-radius: 10px;
}

@keyframes glowing-button-85 {
  0% {
    background-position: 0 0;
  }
  50% {
    background-position: 400% 0;
  }
  100% {
    background-position: 0 0;
  }
}

.button-85:after {
  z-index: -1;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #222;
  left: 0;
  top: 0;
  border-radius: 10px;
}
.btn-primary {
    background-color: #007bff; /* Azul */
    border-color: #007bff;
    transition: background-color 0.3s ease, box-shadow 0.3s ease; /* Transición suave */
}

.btn-primary:hover {
    background-color: #0069d9; /* Azul más oscuro al pasar el mouse */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Sombra ligera al pasar el mouse */
}

.btn-link {
    text-decoration: none;
    ;
}

.btn-link-1:hover {
    text-decoration: underline;
    color: #11edf5
}
.cta-paragraph {
    font-size: 1.2rem; /* Ajusta el tamaño de fuente según tus preferencias */
    line-height: 1.6;  /* Ajusta el interlineado para mejorar la legibilidad */
}

/* Estilos para el botón dentro del párrafo */
.cta-button {
    padding: 0;         /* Elimina el padding del botón */
    border: none;       /* Elimina el borde del botón */
    background: none;   /* Elimina el fondo del botón */
    text-decoration: underline; /* Subraya el texto del botón */
    color: #007bff;     /* Color azul para el botón */
    font-weight: bold; /* Texto en negrita */
    cursor: pointer;   /* Cursor de mano al pasar el mouse */
    transition: color 0.3s ease; /* Transición suave del color */
}

.cta-button:hover {
    color: #0056b3; /* Cambia el color al pasar el mouse */
}

/* Estilos para la sección de trámites */
.tramites-section {
    background-color: #f8f9fa; /* Fondo gris claro */
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.tramites-section h2 {
    font-size: 2rem;
    font-weight: bold;
    color: #0e0000;
    margin-bottom: 20px;
}

.tramites-section p {
    line-height: 1.6;
}

.tramites-section .accordion-item {
    border: none;
}

.tramites-section .accordion-button {
    font-weight: bold;
}

.tramites-section .accordion-body {
    background-color: #fff;
    padding: 20px;
}
.share-buttons-container {
    width: 250px; /* Ajusta el ancho según tus necesidades */
    height: auto;  /* Permite que el contenedor se ajuste al contenido */
}

.container h2 {
    font-size: 2rem;
    font-weight: bold;
    color: #0e0000;
    margin-bottom: 20px;
}
.inicio-imagen {
    width: 100%;
    aspect-ratio: 1.85 / 1; /* O usa 2.39 / 1 según prefieras */
    object-fit: cover;
    border-radius: 8px; /* Opcional para esquinas redondeadas */
}

/* Para imágenes en la vista de propiedades */
.propiedades-imagen {
    width: 100%;
    aspect-ratio: 16 / 9; /* O usa 4 / 3 */
    object-fit: cover;
    border-radius: 8px;
}
footer {
    max-width: 100vw;
    overflow-x: hidden;
}
