@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
/* ==========================================================================
   GIRO INMOBILIARIA · PASO 1 (v2) · BASE + CABECERA blanca y responsive
   La línea @import debe ser la PRIMERA del CSS.
   ========================================================================== */
:root{
  --gold:#CC9A00; --gold-hi:#e0ad12; --gold-dk:#a67c00; --gold-ink:#241A00;
  --white:#fff; --paper:#f5f5f4; --ink:#1f1d1c; --muted:#6b6663; --line:#e6e3e0;
  --font:"Manrope","Segoe UI",Arial,sans-serif; --ease:cubic-bezier(.2,.7,.2,1); --nav-px:13px;
  padding-top:0!important; padding-bottom:0!important;
}
html{scroll-behavior:smooth}
body{background:var(--white)!important;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}
#supercontenedor{background:var(--white);overflow-x:clip}

/* ---------- CABECERA · escritorio (≥1400px) ---------- */
#supercontenedor #modulo-cabecera-2{background:var(--white)!important;position:sticky!important;top:0!important;z-index:900;height:auto!important;min-height:0!important;
  padding:0!important;margin:0!important;box-shadow:0 3px 0 var(--gold),0 12px 28px rgba(15,14,14,.10)}
#supercontenedor #modulo-cabecera-2 #header-bloque2{background:var(--white)!important;height:auto!important;min-height:0!important;opacity:1!important;
  position:static!important;padding:0!important;margin:0!important}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu{width:100%!important;max-width:1480px;margin:0 auto!important;padding:0 28px!important;height:84px!important;min-height:0!important;
  display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:nowrap!important;
  gap:22px;position:relative!important;box-sizing:border-box!important}
/* Logo: Inmovilla lo esconde al hacer scroll; lo forzamos visible */
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-logo{order:1;flex:0 0 auto;position:relative!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important;
  display:flex!important;margin:0!important;padding:0!important;width:auto!important;height:auto!important;opacity:1!important}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-logo a{display:block!important;line-height:0}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-logo img{height:64px!important;width:auto!important;max-width:none!important;max-height:none!important;display:block!important}
/* Menú */
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu{order:2;flex:1 1 auto;min-width:0;display:flex!important;justify-content:center;width:auto!important;height:auto!important;position:static!important;
  margin:0!important;padding:0!important;background:none!important;border:0!important;opacity:1!important;visibility:visible!important}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu ul{display:flex!important;flex-wrap:nowrap!important;align-items:center;gap:2px;margin:0!important;padding:0!important;list-style:none;
  width:auto!important;height:auto!important;background:none!important}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li{display:block!important;margin:0!important;padding:0!important;width:auto!important;height:auto!important;line-height:1!important;
  background:none!important;border:0!important;box-shadow:none!important;float:none!important;flex:0 0 auto}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li::before,#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li::after{display:none!important}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li a{display:block!important;padding:12px var(--nav-px)!important;background:none!important;color:var(--ink)!important;opacity:1!important;visibility:visible!important;
  font:700 13px/1 var(--font)!important;letter-spacing:.05em;text-transform:uppercase;text-decoration:none!important;white-space:nowrap!important;position:relative;
  border-radius:8px;transition:color .2s;-webkit-tap-highlight-color:transparent}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li a::after{content:"";position:absolute;left:var(--nav-px);right:var(--nav-px);bottom:4px;height:2px;background:var(--gold);
  transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li:hover a,#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li.activa a{color:var(--gold-dk)!important;background:none!important}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li:hover a::after,#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li.activa a::after{transform:scaleX(1)}
/* Teléfono */
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno{order:3;display:block!important;position:static!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important;
  width:auto!important;height:auto!important;margin:0!important;padding:0!important;background:none!important;flex:0 0 auto}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno a#prueba{display:inline-flex!important;align-items:center;gap:8px;position:static!important;margin:0!important;padding:11px 20px!important;
  border-radius:999px;background:var(--gold)!important;color:var(--gold-ink)!important;font:800 14px/1 var(--font)!important;text-decoration:none!important;
  white-space:nowrap!important;transition:background .2s,transform .2s}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno a#prueba:hover{background:var(--gold-hi)!important;transform:translateY(-1px)}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno img{height:15px!important;width:auto!important;max-width:none!important;filter:brightness(0)}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno span,#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno #border{border:0!important;color:inherit!important;padding:0!important;margin:0!important;background:none!important;font:inherit!important}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #texto-telefono,#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #idioSeleccionado{display:none!important}
/* Idiomas */
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloqueidiomas{order:4;display:flex!important;align-items:center;position:static!important;top:auto!important;left:auto!important;right:auto!important;
  transform:none!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;background:none!important;flex:0 0 auto}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .languagepicker{display:flex!important;gap:8px;margin:0!important;padding:0!important;list-style:none;background:none!important;box-shadow:none!important;position:static!important}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .languagepicker li{display:flex!important;margin:0!important;padding:0!important;background:none!important;border:0!important}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .languagepicker img{width:24px!important;height:auto!important;max-width:none!important;border-radius:3px;opacity:.9;transition:opacity .2s}
#supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .languagepicker li:hover img{opacity:1}
#supercontenedor #cabecera-bloque-buscador{display:none!important}   /* mini-buscador duplicado del scroll */

/* ---------- PORTÁTIL (1241–1399px): compacto para que quepa en una línea ---------- */
@media (max-width:1399px){
  :root{--nav-px:8px}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu{gap:14px;padding:0 20px!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li a{font-size:12px!important;letter-spacing:.03em}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-logo img{height:58px!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno a#prueba{padding:10px 16px!important;font-size:13px!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .languagepicker{gap:6px}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .languagepicker img{width:22px!important}
}

/* ---------- TABLET Y MÓVIL (≤1240px): rejilla de 2 filas ----------
   fila 1: logo | teléfono | idiomas      fila 2: menú deslizable                */
@media (max-width:1240px){
  :root{--nav-px:14px}
  #supercontenedor #modulo-cabecera-2{position:relative!important;box-shadow:0 3px 0 var(--gold)}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"logo tel idio" "menu menu menu";
    align-items:center!important;gap:4px 12px;height:auto!important;padding:10px 16px 0!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-logo{grid-area:logo;justify-self:start}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno{grid-area:tel}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloqueidiomas{grid-area:idio}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-logo img{height:52px!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu{grid-area:menu;display:flex!important;justify-content:flex-start;min-width:0;margin:6px -16px 0!important;padding:0 16px!important;
    overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-top:1px solid var(--line)!important;
    -webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 26px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 26px),transparent)}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu::-webkit-scrollbar{display:none}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu ul{margin:0 auto!important;padding:0 26px 0 0!important;width:max-content!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li a{font-size:12.5px!important;letter-spacing:.04em;padding:15px var(--nav-px)!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu li a::after{bottom:6px}
}

/* ---------- MÓVIL (≤560px) ---------- */
@media (max-width:560px){
  :root{--nav-px:12px}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu{padding:8px 12px 0!important;gap:2px 10px}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-logo img{height:46px!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno a#prueba{padding:9px 13px!important;font-size:13px!important;gap:6px}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno img{height:13px!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .languagepicker{gap:5px}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .languagepicker img{width:20px!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .header-menu{margin:6px -12px 0!important;padding:0 12px!important}
}
@media (max-width:360px){
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-logo img{height:40px!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu #header-bloquetfno a#prueba{padding:8px 11px!important;font-size:12.5px!important}
  #supercontenedor #modulo-cabecera-2 #header-bloque2 #header-bloquemenu .languagepicker img{width:18px!important}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ==========================================================================
   CABECERA MÓVIL PROPIA (≤820px) · la crea el JavaScript "giro-cabecera-movil"
   Si el JS no estuviera pegado, la cabecera de Inmovilla sigue visible.
   ========================================================================== */
#giro-mh{display:none}
@media (max-width:820px){
  html.giro-mh-on #supercontenedor #modulo-cabecera-2{display:none!important}
  html.gm-lock{overflow:hidden}
  #giro-mh{display:block;position:sticky;top:0;z-index:960;background:var(--white);font-family:var(--font);
    box-shadow:0 2px 0 var(--gold),0 8px 22px rgba(15,14,14,.10)}
  #giro-mh *{box-sizing:border-box}
  #giro-mh .gm-bar{display:flex;align-items:center;gap:10px;height:64px;padding:0 14px;background:var(--white);position:relative;z-index:2}
  #giro-mh .gm-logo{margin-right:auto;display:flex;align-items:center;height:100%}
  #giro-mh .gm-logo img{height:40px;width:auto;max-width:none;display:block}
  #giro-mh .gm-call{width:44px;height:44px;border-radius:50%;background:var(--gold);color:var(--gold-ink);display:grid;place-items:center;
    box-shadow:0 4px 12px rgba(204,154,0,.35);-webkit-tap-highlight-color:transparent}
  #giro-mh .gm-call svg,#giro-mh .gm-tel svg{width:20px;height:20px;fill:currentColor}
  #giro-mh .gm-burger{width:44px;height:44px;border:1.5px solid var(--line);border-radius:12px;background:var(--white);position:relative;cursor:pointer;
    padding:0;-webkit-tap-highlight-color:transparent}
  #giro-mh .gm-burger i{position:absolute;left:12px;right:12px;height:2px;border-radius:2px;background:var(--ink);transition:transform .25s,opacity .2s,top .25s}
  #giro-mh .gm-burger i:nth-child(1){top:14px}
  #giro-mh .gm-burger i:nth-child(2){top:20px}
  #giro-mh .gm-burger i:nth-child(3){top:26px}
  #giro-mh.open .gm-burger i:nth-child(1){top:20px;transform:rotate(45deg)}
  #giro-mh.open .gm-burger i:nth-child(2){opacity:0}
  #giro-mh.open .gm-burger i:nth-child(3){top:20px;transform:rotate(-45deg)}
  #giro-mh #gm-drawer{position:absolute;left:0;right:0;top:100%;background:var(--white);max-height:0;overflow:hidden;visibility:hidden;
    transition:max-height .3s var(--ease),visibility 0s .3s;box-shadow:0 18px 30px rgba(15,14,14,.18);z-index:1}
  #giro-mh.open #gm-drawer{max-height:calc(100vh - 64px);max-height:calc(100dvh - 64px);overflow-y:auto;visibility:visible;transition:max-height .3s var(--ease)}
  #giro-mh #gm-drawer ul{list-style:none;margin:0;padding:6px 0}
  #giro-mh #gm-drawer li{margin:0;padding:0}
  #giro-mh a.gm-l{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;font:700 15px/1.2 var(--font);text-transform:uppercase;
    letter-spacing:.04em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
  #giro-mh a.gm-l::after{content:"\203A";font-size:22px;line-height:1;color:var(--gold)}
  #giro-mh a.gm-l.on{color:var(--gold-dk);box-shadow:inset 4px 0 0 var(--gold);background:var(--paper)}
  #giro-mh .gm-foot{padding:18px 20px calc(22px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:16px;align-items:center}
  #giro-mh .gm-tel{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:52px;border-radius:999px;background:var(--gold);
    color:var(--gold-ink);font:800 16px var(--font);text-decoration:none}
  #giro-mh .gm-flags #header-bloqueidiomas{position:static!important;display:flex!important;width:auto!important;height:auto!important;margin:0!important;
    padding:0!important;background:none!important;transform:none!important}
  #giro-mh .gm-flags .languagepicker{display:flex!important;gap:14px;margin:0!important;padding:0!important;list-style:none;position:static!important;background:none!important}
  #giro-mh .gm-flags li{display:flex;margin:0!important;padding:0!important}
  #giro-mh .gm-flags img{width:32px!important;height:auto!important;border-radius:4px;max-width:none!important}
  #giro-mh .gm-flags #idioSeleccionado{display:none!important}
  #giro-mh .gm-veil{position:fixed;left:0;right:0;top:64px;bottom:0;background:rgba(15,14,14,.45);opacity:0;pointer-events:none;transition:opacity .25s;z-index:0}
  #giro-mh.open .gm-veil{opacity:1;pointer-events:auto}
}