/* ============================================================
   CASATUYA.ES — ESTILOS PERSONALIZADOS by Grábalo en la Memoria SLU
   Organización: Desktop first (≥1200px) → Global → Mobile (≤960px)
   ============================================================ */


/* ============================================================
   1. ESTILOS GLOBALES (sin media query)
      Aplican a todos los tamaños de pantalla
   ============================================================ */
   
.destacados-ficha-bloque1 .precio1{
    padding: 5px 13px !important;
    font-size: 14px !important;
    width: auto !important;
    bottom: 0.5rem !important;
    top: unset !important;
    right: 0.5rem !important;
    left: unset !important;
    border-radius: 38px;
    background: #3c9dd5 !important;
}

.modulos-destacados-2{
    margin-top: 7rem !important;
    margin-bottom: 6rem !important;
}

/* --- Buscador: inputs y selects --- */
#slider-bloque-buscador input,
#slider-bloque-buscador .custom-select-html {
    border-radius: 32px !important;
}

/* --- Buscador: grupo de botones --- */
#slider-bloque-buscador .buttons {
    display: flex;
    gap: 10px;
    margin-left: 2rem;
}

#slider-bloque-buscador .buttons button {
    border-radius: 32px !important;
}

/* Botón "Buscar rápido" */
#slider-bloque-buscador .buttons .buscarRapido {
    background-color: #2b9ce4;
    color: #fff;
    border: none;
}

/* Botón "Búsqueda avanzada" */
#slider-bloque-buscador .buttons .avanzado {
    background: #ffffff;
    color: #2b9ce4;
    border: none;
}

/* --- Ocultar flechas de navegación del slider --- */
.slider-botonSiguiente,
.slider-botonAnterior {
    display: none !important;
}

/* --- Buscador: cajas de tipos/zonas --- */
.cajaGrupoTipos {
    border-radius: 12px;
    margin-top: 4px;
}

/* Elimina subrayado en checkboxes de zona */
.cajaGrupoTiposZonas .grupoTipoZona > input[type=checkbox],
.cajaGrupoTiposZonas .grupoTipoZona > span u {
    text-decoration: none;
}

/* Quita borde derecho en campos del buscador */
.buscadorTipos,
.bloque-input,
.custom-select {
    border-right: none;
}

/* Margen del desplegable de áreas al abrirse */
.buscador-areas__desplegable--abierto {
    margin-top: 4px;
}

/* --- Sección propiedades: menú de categorías (global) --- */
#paginacion-cabecera menu a {
    box-sizing: border-box;
    border-radius: 30px;
    width: 100%;
    background-color: #ffffff !important;
    color: #2583bf !important;
    border: 1px solid !important;
    text-align: center;
}

#paginacion-cabecera menu a:hover {
    background-color: #3fa1da0d !important;
    color: #2583bf !important;
}

/* --- Fichas de propiedades --- */

/* Borde y radio de la ficha */
.paginacion-ficha .paginacion-ficha-bloque1 {
    border-radius: 12px;
    border: 1px solid #efefef !important;
}

.paginacion-ficha .paginacion-ficha-bloque1:hover {
    border-radius: 8px 8px 0 0 !important;
}

/* Etiqueta de precio sobre la imagen */
.paginacion-ficha .paginacion-ficha-tituloprecio {
    padding: 5px 13px !important;
    font-size: 14px !important;
    width: auto !important;
    bottom: 0.5rem;
    top: unset !important;
    right: 0.5rem;
    left: unset !important;
    border-radius: 38px;
}

/* Datos de la ficha: ocultar separadores y ajustar alineación */
.paginacion-ficha .paginacion-ficha-datos hr {
    display: none !important;
}

.paginacion-ficha .paginacion-ficha-datos {
    justify-content: unset !important;
}

/* Pie de ficha */
.paginacion-ficha .paginacion-ficha-pie {
    margin-top: 15px;
    margin-bottom: unset !important;
}

/* Precio rebajado */
.paginacion-ficha .paginacion-ficha-preciorebajado {
    padding: unset !important;
}

/* Botón "Más info" */
.paginacion-ficha .paginacion-ficha-masinfo {
    color: #ffffff !important;
    background-color: #2483bf !important;
    padding: 2px 12px !important;
    border-radius: 12px !important;
}

/* Elimina borde inferior en lista de datos adicionales */
.paginacion-ficha .paginacion-ficha-masdatos li {
    border-bottom: none !important;
}

/* Fondo transparente en pie de paginación */
#paginacion-pie {
    background: transparent !important;
}

/* --- Paginador --- */
.paginador a.activa,
.paginador a:hover {
    background-color: #47ade791 !important;
    border-radius: 32px !important;
}

.paginador .paginador-controlesOpciones {
    display: flex !important;
    align-items: center !important;
}

.paginador-controlesOpciones select,
.paginador-irApagina {
    background-color: #ffffff !important;
}

/* --- Sección "Valoramos tu piso" --- */
#modulo-valoramostupiso-1 {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 4rem;
}

#modulo-valoramostupiso-1 .titulo {
    color: #000000 !important;
    text-shadow: none !important;
    font-style: normal !important;
}

#modulo-valoramostupiso-1 .parte-izq,
#modulo-valoramostupiso-1 .parte-der {
    width: auto !important;
}

#modulo-valoramostupiso-1 .parte-der {
    box-shadow: rgba(99, 99, 99, 0.2) 0 2px 8px 0;
    background-color: transparent !important;
    padding: 1rem !important;
    border-radius: 8px;
}

#modulo-valoramostupiso-1 .parte-der .cajas {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* Botón "Valorar" */
#modulo-valoramostupiso-1 button.botonValorar {
    width: unset !important;
    border: none !important;
    background-color: #48a6db !important;
    color: #ffffff !important;
    padding: 0.5rem 3rem !important;
    margin: 15px auto 0 !important;
    border-radius: 42px !important;
    text-align: center;
    filter: unset !important;
}

/* --- Sección "Newsletter / Suscríbete" --- */
#modulo-suscribete-1,
#modulo-suscribete-1 .cajas > div.opciones {
    text-shadow: none !important;
}

#modulo-suscribete-1 button.botonEnviar {
    border: none !important;
    background-color: #48a6db !important;
    color: #ffffff !important;
    filter: unset !important;
}

/* --- Footer --- */
#modulo-pie-1 {
    background-color: #1147a705 !important;
}

#modulo-pie-1 #pie-subfila1 {
    padding: 10rem 0 5rem !important;
}

#modulo-pie-1 #pie-filaSocial {
    background-color: #1148a6 !important;
}

/* Ocultar créditos "Diseñado por Inmovilla" */
#modulo-disenyadoinmovilla-1 {
    display: none !important;
}

/* Formulario de contacto en footer */
#modulo-pie-1 #pie-contacto input,
#modulo-pie-1 #pie-contacto textarea {
    border-radius: 8px !important;
}

#modulo-pie-1 #pie-contacto .enviaForm {
    background-color: #ffffff !important;
    border: none !important;
    color: #1148a6 !important;
    border-radius: 48px !important;
    width: 100% !important;
    margin: 0 5rem !important;
}


/* ============================================================
   2. ESCRITORIO GRANDE (min-width: 1200px)
   ============================================================ */

@media (min-width: 1200px) {

    /* --- Paginación --- */
    #modulo-paginacion {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

    /* --- Navbar / Header --- */
    #header-bloquemenu {
        padding-left: 0;
        flex-direction: row-reverse;
        align-items: center;
        justify-content: space-between;
        width: 100%;
    }

    #header-bloquetfno img {
        background-color: #009ce4 !important;
    }

    #header-bloquemenu nav {
        margin-left: auto;
        margin-right: auto;
    }

    #header-bloque2 {
        align-items: center;
        padding: 0 24px;
    }

    /* Radio en ítems del menú principal */
    #header-bloquemenu nav li {
        border-radius: 300px;
    }

    /* --- Slider / Hero y buscador --- */
    #slider-slogan {
        color: #000000;
        font-size: 38px;
        margin-bottom: 15px;
        /* Sombra blanca para legibilidad sobre imágenes */
        text-shadow:
            -1px -1px 0 #fff,
             1px -1px 0 #fff,
            -1px  1px 0 #fff,
             1px  1px 0 #fff,
             0    0    8px rgba(255, 255, 255, 0.8);
    }

    #slider-buscador {
        border-radius: 200px;
    }

    /* Menú de categorías en cabecera de resultados (desktop) */
    #paginacion-cabecera menu a {
        padding: 10px 100px !important;
    }
}


/* ============================================================
   3. MÓVIL / TABLET (max-width: 960px)
   ============================================================ */

@media (max-width: 960px) {

    /* --- Buscador --- */
    #slider-buscador {
        padding: 2rem 1.5rem !important;
    }

    /* --- Header: bloque de teléfono --- */
    #header-bloquetfno {
        margin-bottom: 3rem !important;
        border-bottom: none !important;
    }

    #header-bloquetfno img {
        background-color: #1146a4 !important;
    }

    #header-bloquetfno a {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: row !important;
    }

    #header-bloquetfno #border {
        background-color: #1146a4 !important;
        color: #fff !important;
    }

    /* --- Header: menú hamburguesa --- */
    #header-bloquemenu {
        padding: 1rem;
    }

    #header-bloquemenu nav {
        box-shadow: rgba(100, 100, 111, 0.2) 0 7px 29px 0;
        border-radius: 18px !important;
    }

    /* Icono y texto del botón hamburguesa */
    #header-bloquemenu nav::before {
        content: '☰ Menú';
        border-radius: 122px !important;
        padding: 7px 0 0 !important;
        color: #2c9ce4 !important;
        border: 2px solid #2c9ce4 !important;
        background: transparent !important;
    }

    /* Posición del desplegable del menú */
    #header-bloquemenu nav ul {
        top: 3em !important;
    }

    /* Separador entre ítems del menú */
    #header-bloquemenu nav li.menuPrincipalCabecera {
        border-bottom: 1px solid #d6d6d6d1 !important;
    }

    /* --- Listado de propiedades: cabecera y título --- */
    #paginacion-titulo > h1 {
        margin-right: unset !important;
        margin-top: 3rem;
    }

    #paginacion-titulo-sections {
        align-items: center;
    }

    /* Menú de categorías en columna */
    #paginacion-cabecera menu {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
    }

    #paginacion-cabecera menu li {
        width: 100%;
    }

    #paginacion-cabecera menu a {
        padding: 1rem !important;
    }

    /* Filtros en columna */
    #paginacion-botonesFiltros {
        flex-direction: column;
        flex-wrap: unset !important;
    }

    .paginacion-ordenar {
        margin-left: unset !important;
    }

    /* --- Sección "Valoramos tu piso" (ajuste mobile) --- */
    #modulo-valoramostupiso-1 {
        padding: 1.5rem !important;
        gap: 0 !important;
    }

    /* --- Sección Newsletter (ajuste mobile) --- */
    #modulo-suscribete-1 .titulo {
        text-align: center;
        font-style: normal !important;
    }

    /* --- Footer: formulario de contacto (ajuste mobile) --- */
    #modulo-pie-1 #pie-contacto form {
        margin: 1rem !important;
    }
}