:root{
      --vp-red:#b40000;
      --vp-red-dark:#b40000;
      --vp-ink:#1d2630;
      --vp-muted:#6d7782;
      --vp-bg:#f6f8fa;
      --vp-line:#e8ebee;
      --vp-shadow:0 3px 10px rgba(18,26,35,.10);
      --vp-shadow-lg:0 12px 30px rgba(19,28,38,.14);
      --header-strip-h:31px;
      --navbar-h:140px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:"Roboto",system-ui,-apple-system,Segoe UI,sans-serif;
      color:var(--vp-ink);
      background:#fff;
      overflow-x:hidden;
    }
    a{text-decoration:none}
    img{max-width:100%;display:block}

    .container-xl{
      max-width:1480px;
      width:100%;
      padding-left:24px;
      padding-right:24px;
    }

    /* ===== TOP STRIP ===== */
    .top-strip{
      position:fixed;
      inset:0 0 auto 0;
      height:var(--header-strip-h);
      z-index:1040;
      background:#fff !important;
      border:0 !important;
      box-shadow:none !important;
      -webkit-box-shadow:none !important;
      outline:0 !important;
      filter:none !important;

      /* Transición simple y sincronizada */
      transform:translateY(0);
      transition:transform .22s ease-in-out;
      will-change:transform;
    }
    .top-strip.is-hidden{
      transform:translateY(-100%);
      pointer-events:none;
    }
    .top-strip .container-xl{
      height:100%;
      display:flex;
      align-items:center;
      justify-content:flex-end;
      gap:19px;
      font-size:.72rem;
      font-weight:500;
      color:#5d6670;
      white-space:nowrap;
    }
    .top-strip .info{
      display:flex;
      align-items:center;
      gap:6px;
    }
    .top-strip i{color:var(--vp-red);font-size:.78rem}
    .top-socials{display:flex;gap:7px;margin-left:4px}
    .top-socials a{
      width:25px;height:25px;border:1px solid #dcdfe3;border-radius:5px;
      display:grid;place-items:center;color:#26313a;background:#fff;
      box-shadow:0 1px 3px rgba(0,0,0,.04);
    }
    .top-socials a:hover{color:var(--vp-red);border-color:#ffc7c9}

    /* ===== NAVBAR ===== */
    .main-nav{
      position:fixed;
      top:var(--header-strip-h);
      left:0;
      right:0;
      z-index:1045;
      height:var(--navbar-h);
      background:#fff;
      border-top:0 !important;
      border-bottom:1px solid #eceff2;

      transform:translateY(0);
      transition:
        transform .22s ease-in-out,
        height .22s ease-in-out;
      will-change:transform,height;
    }
    .main-nav.compact{
      top:var(--header-strip-h);
      transform:translateY(calc(-1 * var(--header-strip-h)));
      height:100px;
    }
    .main-nav .container-xl{height:100%}
    .brand-wrap{
      position:relative;
      display:flex;
      align-items:center;
      min-width:380px;
      height:100%;
      overflow:visible;
      z-index:1050;
      padding:24px 18px 24px 0;
    }
    .brand-logo{
      position:absolute;
      left:0;
      top:50%;
      height:146px;
      width:auto;
      max-width:none;
      object-fit:contain;
      transform:translateY(calc(-50% - 12px));
      transition:height .28s ease,transform .28s ease;
      filter:drop-shadow(0 2px 3px rgba(0,0,0,.04));
    }
    .main-nav.compact .brand-logo{
      height:64px;
      transform:translateY(-50%);
    }
    .navbar-nav{gap:6px}
    .nav-link{
      color:#44505b!important;
      font-weight:600;
      font-size:.76rem;
      text-transform:uppercase;
      letter-spacing:.03em;
      padding:60px 12px 54px!important;
      position:relative;
      transition:color .2s ease,padding .28s ease;
    }
    .main-nav.compact .nav-link{padding:22px 10px!important}
    .nav-link:hover,.nav-link.active{color:var(--vp-red)!important}
    .nav-link.active:after{
      content:"";position:absolute;left:10px;right:10px;bottom:32px;height:2px;
      background:var(--vp-red);border-radius:3px;
    }
    .main-nav.compact .nav-link.active:after{bottom:11px}
    .btn-contact-nav{
      border:0;border-radius:6px;
      background:linear-gradient(180deg,#b40000,#b40000);
      color:#fff;font-weight:700;font-size:.82rem;
      padding:10px 17px;
      box-shadow:0 3px 7px rgba(180,0,0,.24);
      display:inline-flex;align-items:center;gap:8px;
    }
    .btn-contact-nav:hover{color:#fff;transform:translateY(-1px)}
    .navbar-toggler{border:0;box-shadow:none!important}

    /* Offset fixed header */
    .page-wrap{padding-top:calc(var(--header-strip-h) + var(--navbar-h))}

    /* ===== HERO ===== */
    .hero{
      position:relative;
      min-height:560px;
      display:flex;
      align-items:center;
      background:
        linear-gradient(90deg,rgba(255,255,255,.90) 0%,rgba(255,255,255,.76) 22%,rgba(255,255,255,.14) 51%,rgba(255,255,255,0) 73%),
        url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=2200&q=88") center 52%/cover no-repeat;
      overflow:visible;
    }
    .hero:after{
      content:"";position:absolute;inset:0;
      box-shadow:inset 0 -1px 0 rgba(0,0,0,.06);
      pointer-events:none;
    }
    .hero-content{
      position:relative;
      z-index:2;
      padding:72px 0 125px;
    }
    .eyebrow{
      font-size:.69rem;
      letter-spacing:.20em;
      text-transform:uppercase;
      font-weight:800;
      color:#626c75;
      margin-bottom:12px;
    }
    .hero h1{
      font-size:clamp(2.35rem,4.35vw,4.35rem);
      line-height:1.06;
      letter-spacing:-.032em;
      font-weight:900;
      max-width:680px;
      margin:0;
    }
    .hero h1 .red{color:var(--vp-red)}
    .hero p{
      max-width:590px;
      margin:22px 0 0;
      color:#59636d;
      line-height:1.6;
      font-size:1.05rem;
      font-weight:400;
    }
    .location-chip{
      position:absolute;
      right:7%;
      top:53px;
      z-index:3;
      background:rgba(255,255,255,.84);
      backdrop-filter:blur(10px);
      border:1px solid rgba(255,255,255,.65);
      border-radius:10px;
      padding:12px 18px;
      color:#5f6871;
      box-shadow:0 5px 18px rgba(0,0,0,.12);
      display:flex;align-items:center;gap:11px;
      min-width:195px;
    }
    .location-chip i{font-size:1.2rem;color:#90979e}
    .location-chip strong{display:block;color:#4d555d;font-size:.78rem}
    .location-chip span{font-size:.7rem}

    /* ===== SEARCH BAR ===== */
    .search-shell{
      position:relative;
      z-index:10;
      margin-top:-62px;
      margin-bottom:31px;
    }
    .search-card{
      background:#fff;
      border-radius:12px;
      border:1px solid rgba(0,0,0,.05);
      box-shadow:var(--vp-shadow-lg);
      padding:13px 14px;
      display:grid;
      grid-template-columns:1.2fr .96fr 1fr 1fr .82fr 1.15fr;
      align-items:stretch;
    }
    .search-field{
      padding:11px 18px;
      min-height:66px;
      border-right:1px solid #e8ecef;
      display:flex;
      flex-direction:column;
      justify-content:center;
    }
    .search-field label{
      font-size:.72rem;
      font-weight:800;
      color:#2f3942;
      margin-bottom:5px;
    }
    .search-field select{
      width:100%;
      border:0!important;
      padding:0 22px 0 0!important;
      box-shadow:none!important;
      background-color:transparent!important;
      font-size:.78rem;
      color:#737c85;
      font-weight:400;
      min-height:auto;
    }
    .search-submit-wrap{padding:5px 0 5px 14px;display:flex}
    .search-submit{
      width:100%;border:0;border-radius:8px;
      background:linear-gradient(180deg,#b40000,#b40000);
      color:#fff;font-weight:800;font-size:.82rem;
      box-shadow:0 4px 9px rgba(180,0,0,.24);
      display:flex;align-items:center;justify-content:center;gap:10px;
    }
    .search-submit i{font-size:1.18rem}
    .search-submit:hover{filter:brightness(.97)}

    /* ===== SECTION COMMON ===== */
    .section-pad{padding:11px 0 24px}
    .section-kicker{
      color:var(--vp-red);
      font-size:.64rem;
      font-weight:900;
      letter-spacing:.18em;
      text-transform:uppercase;
      margin-bottom:5px;
    }
    .section-title{
      font-size:2rem;
      line-height:1;
      font-weight:900;
      letter-spacing:-.035em;
      margin:0;
    }
    .section-title .red{color:var(--vp-red)}
    .section-head{
      display:flex;align-items:flex-end;justify-content:space-between;
      gap:20px;margin-bottom:18px;
    }
    .section-actions{display:flex;align-items:center;gap:10px}
    .outline-red{
      border:1px solid var(--vp-red);
      color:var(--vp-red);
      background:#fff;
      border-radius:8px;
      font-weight:700;font-size:.72rem;
      padding:9px 15px;
    }
    .circle-nav{
      width:33px;height:33px;border-radius:50%;
      border:1px solid #dfe4e8;background:#fff;color:#77828d;
      display:grid;place-items:center;
      box-shadow:0 1px 4px rgba(0,0,0,.05);
    }
    .circle-nav.red{color:var(--vp-red)}

    /* ===== PROPERTY CARDS ===== */
    .properties-area{background:#fff}
    .property-card{
      height:100%;
      border:1px solid #e9edf0;
      border-radius:10px;
      overflow:hidden;
      background:#fff;
      box-shadow:0 5px 15px rgba(18,28,38,.08);
      transition:transform .22s ease,box-shadow .22s ease;
    }
    .property-card:hover{
      transform:translateY(-4px);
      box-shadow:0 10px 26px rgba(18,28,38,.14);
    }
    .property-media{
      position:relative;height:190px;overflow:hidden;background:#edf0f2;
    }
    .property-media img{width:100%;height:100%;object-fit:cover}
    .heart{
      position:absolute;bottom:10px;left:11px;
      width:27px;height:27px;border-radius:50%;
      display:grid;place-items:center;
      background:rgba(29,38,48,.35);
      border:1px solid rgba(255,255,255,.5);
      color:#fff;backdrop-filter:blur(5px);
    }
    .ribbon{
      position:absolute;right:-39px;top:22px;
      width:140px;text-align:center;transform:rotate(45deg);
      font-size:.58rem;font-weight:900;letter-spacing:.05em;
      padding:6px 0;color:#fff;text-transform:uppercase;
      box-shadow:0 2px 5px rgba(0,0,0,.18);
    }
    .ribbon.red{background:#b40000}
    .ribbon.yellow{background:#ffd41e;color:#1e252c}
    .property-body{padding:12px 13px 10px}
    .property-title{
      font-weight:900;
      font-size:.84rem;
      line-height:1.18;
      text-transform:uppercase;
      min-height:40px;
      margin-bottom:7px;
      color:#172029;
    }
    .property-location{
      display:flex;align-items:center;gap:5px;
      color:#9aa2aa;font-size:.66rem;
      margin-bottom:5px;
    }
    .property-price{
      color:var(--vp-red);
      font-weight:900;
      font-size:1.03rem;
      margin-bottom:10px;
    }
    .features{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:5px;
      margin-bottom:10px;
    }
    .feature{
      min-height:38px;
      border:1px solid #e9edf0;
      border-radius:7px;
      background:#fafbfc;
      display:flex;align-items:center;justify-content:center;
      gap:4px;color:#5d6872;
      padding:4px;
      font-size:.64rem;
      font-weight:700;
    }
    .feature i{font-size:.82rem;color:#697782}
    .property-footer{
      border-top:1px solid #eef1f3;
      padding-top:9px;
      display:flex;align-items:center;justify-content:space-between;gap:8px;
    }
    .compare-check{
      display:flex;align-items:center;gap:7px;
      font-size:.68rem;color:#66717b;font-weight:500;
      white-space:nowrap;
    }
    .compare-check input{width:15px;height:15px}
    .btn-detail{
      border:0;border-radius:7px;
      background:linear-gradient(180deg,#b40000,#b40000);
      color:#fff;padding:8px 12px;
      font-size:.68rem;font-weight:800;
      box-shadow:0 3px 7px rgba(180,0,0,.18);
    }

    /* ===== WHY US ===== */
    .why-section{
      background:linear-gradient(90deg,#f8fafb 0%,#f8fafb 68%,#fff 68%);
      padding:0;
      border-top:1px solid #f0f2f4;
      border-bottom:1px solid #edf0f2;
    }
    .why-grid{display:grid;grid-template-columns:2.05fr 1fr;min-height:238px}
    .why-left{padding:25px 30px 25px 0}
    .why-left h2{
      font-size:1.67rem;font-weight:900;letter-spacing:-.03em;margin-bottom:15px;
    }
    .why-left h2 span{color:var(--vp-red)}
    .why-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}
    .why-card{
      background:#fff;border-radius:8px;border:1px solid #eef1f3;
      padding:14px 14px 13px;min-height:130px;
      box-shadow:0 3px 10px rgba(26,35,45,.05);
    }
    .why-card i{color:var(--vp-red);font-size:1.7rem;display:block;margin-bottom:8px}
    .why-card h3{font-size:.82rem;font-weight:900;margin:0 0 6px}
    .why-card p{font-size:.66rem;line-height:1.35;color:#7a838c;margin:0}
    .why-photo{
      position:relative;
      background:url("https://images.unsplash.com/photo-1600607687920-4e2a09cf159d?auto=format&fit=crop&w=1000&q=85") center/cover no-repeat;
      min-height:238px;
    }
    .trust-card{
      position:absolute;
      right:28px;bottom:28px;
      width:178px;background:#fff;border-radius:9px;
      padding:14px;
      box-shadow:0 8px 24px rgba(0,0,0,.15);
    }
    .trust-card strong{display:block;font-size:.82rem;line-height:1.1}
    .trust-card span{font-size:.63rem;color:#7b858f;display:block;margin:6px 0 8px}
    .trust-card .arrow{
      margin-left:auto;width:30px;height:30px;border-radius:6px;background:var(--vp-red);
      color:#fff;display:grid;place-items:center;
    }

    /* ===== ABOUT / TESTIMONIAL ===== */
    .about-testimonial{
      display:grid;
      grid-template-columns:1.15fr .95fr 1.12fr;
      min-height:260px;background:#fff;
    }
    .about-image{
      background:url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=1400&q=88") center/cover no-repeat;
    }
    .about-copy{
      padding:26px 28px 24px;
      display:flex;flex-direction:column;justify-content:center;
      position:relative;
    }
    .about-copy .section-kicker{margin-bottom:7px}
    .about-copy h2{
      font-size:1.55rem;font-weight:900;line-height:1.05;
      letter-spacing:-.03em;margin-bottom:10px;
    }
    .about-copy h2 span{color:var(--vp-red)}
    .about-copy p{font-size:.72rem;color:#707a83;line-height:1.45;margin-bottom:14px}
    .about-copy .btn-about{
      width:max-content;border:0;border-radius:6px;background:var(--vp-red);
      color:#fff;font-weight:800;font-size:.7rem;padding:10px 16px;
      box-shadow:0 3px 8px rgba(180,0,0,.2);
    }
    .side-arrow{
      position:absolute;right:12px;top:50%;transform:translateY(-50%);
      width:31px;height:31px;border-radius:50%;border:1px solid #e4e8eb;background:#fff;
      display:grid;place-items:center;color:#8a949d;
    }
    .testimonial{
      padding:26px 26px 22px;
      background:#fbfcfd;
      display:flex;align-items:center;
    }
    .testimonial-card{
      width:100%;background:#fff;border:1px solid #edf0f2;border-radius:9px;
      box-shadow:0 4px 13px rgba(18,28,38,.07);
      padding:18px 20px;position:relative;
    }
    .testimonial-label{
      display:flex;align-items:center;gap:11px;font-size:.69rem;font-weight:700;color:#59636d;
    }
    .quote-icon{color:var(--vp-red);font-size:1.55rem}
    .testimonial-text{font-size:.69rem;color:#68737d;line-height:1.45;margin:9px 0 12px}
    .client{display:flex;align-items:center;gap:10px}
    .client img{width:38px;height:38px;border-radius:50%;object-fit:cover}
    .client strong{font-size:.72rem;display:block}
    .client span{font-size:.6rem;color:#8c969e}
    .stars{color:#ffb800;font-size:.68rem;letter-spacing:1px}
    .dots{text-align:center;margin-top:10px}
    .dots span{
      width:6px;height:6px;border-radius:50%;background:#d9dde1;display:inline-block;margin:0 3px
    }
    .dots span.active{background:var(--vp-red)}

    /* ===== CTA ===== */
    .cta-band{
      min-height:120px;
      background:
        linear-gradient(90deg,rgba(8,20,31,.84),rgba(8,20,31,.52)),
        url("https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&w=2200&q=88") center 60%/cover no-repeat;
      display:flex;align-items:center;color:#fff;
    }
    .cta-band .container-xl{display:flex;align-items:center;justify-content:space-between;gap:25px}
    .cta-band h2{font-size:1.35rem;font-weight:900;line-height:1.05;margin:0 0 6px}
    .cta-band p{font-size:.75rem;margin:0;color:rgba(255,255,255,.82)}
    .cta-btn{
      border:0;border-radius:7px;background:var(--vp-red);color:#fff;
      font-weight:800;font-size:.79rem;padding:13px 20px;
      display:flex;align-items:center;gap:9px;
      box-shadow:0 5px 15px rgba(180,0,0,.27);
      white-space:nowrap;
    }

    /* ===== FOOTER ===== */
    footer{
      background:#192129;
      color:#c9d0d6;
      padding:22px 0 0;
    }
    .footer-grid{
      display:grid;grid-template-columns:1.35fr .72fr .88fr 1.17fr .62fr;
      gap:30px;
      padding-bottom:18px;
    }
    .footer-brand img{height:48px;width:auto;filter:brightness(1.06)}
    .footer-brand p{font-size:.67rem;line-height:1.45;color:#9fa8b0;margin:10px 0 0;max-width:240px}
    footer h3{font-size:.72rem;color:#fff;font-weight:800;margin-bottom:11px}
    footer ul{padding:0;margin:0;list-style:none}
    footer li, footer a{font-size:.64rem;color:#b7c0c8;line-height:1.7}
    footer a:hover{color:#fff}
    .contact-line{display:flex;gap:7px;align-items:flex-start}
    .contact-line i{color:#fff;font-size:.7rem;margin-top:2px}
    .footer-social{display:flex;gap:8px}
    .footer-social a{
      width:30px;height:30px;border-radius:5px;border:1px solid #54606a;
      display:grid;place-items:center;color:#fff;font-size:.8rem;
    }
    .footer-bottom{
      border-top:1px solid rgba(255,255,255,.09);
      padding:10px 0;
      display:flex;justify-content:space-between;gap:20px;
      color:#8f99a2;font-size:.58rem;
    }

    /* ===== FLOATING BUTTONS ===== */
    .float-stack{
      position:fixed;right:20px;bottom:20px;z-index:1060;
      display:flex;flex-direction:column;gap:10px;align-items:center;
    }
    .floating-btn{
      width:48px;height:48px;border-radius:50%;border:0;
      display:grid;place-items:center;color:#fff;
      box-shadow:0 6px 18px rgba(0,0,0,.22);
      transition:transform .2s ease,opacity .2s ease;
    }
    .floating-btn:hover{transform:translateY(-2px);color:#fff}
    .whatsapp{background:#25D366;font-size:1.5rem}
    .scrolltop{background:#202a33;font-size:1rem;opacity:0;pointer-events:none}
    .scrolltop.show{opacity:1;pointer-events:auto}

    /* ===== RESPONSIVE ===== */
    @media (max-width:1199.98px){
      .search-card{grid-template-columns:repeat(3,1fr)}
      .search-field{border-bottom:1px solid #e8ecef}
      .search-field:nth-child(3){border-right:0}
      .search-field:nth-child(4),.search-field:nth-child(5){border-bottom:0}
      .search-submit-wrap{padding:5px 0 5px 14px}
      .why-grid{grid-template-columns:1fr}
      .why-left{padding-right:0}
      .why-photo{min-height:280px}
      .about-testimonial{grid-template-columns:1fr 1fr}
      .testimonial{grid-column:1/-1}
      .footer-grid{grid-template-columns:1.3fr repeat(2,1fr)}
    }
    @media (max-width:991.98px){
      :root{--header-strip-h:0px;--navbar-h:66px}
      .top-strip{display:none}
      .main-nav{top:0}
      .brand-wrap{
        min-width:215px;
        padding:10px 6px 10px 0;
      }
      .brand-logo{
        position:relative;
        top:auto;
        left:auto;
        height:84px;
        transform:none;
      }
      .main-nav.compact .brand-logo{
        height:62px;
        transform:none;
      }
      .navbar-collapse{
        position:absolute;top:100%;left:0;right:0;background:#fff;
        border-top:1px solid #eef1f3;box-shadow:0 8px 18px rgba(0,0,0,.10);
        padding:10px 16px 16px;
      }
      .nav-link,.main-nav.compact .nav-link{padding:11px 3px!important}
      .nav-link.active:after{display:none}
      .btn-contact-nav{margin-top:8px;width:100%;justify-content:center}
      .hero{min-height:520px}
      .hero-content{padding:62px 0 135px}
      .location-chip{display:none}
      .search-shell{margin-top:-85px}
      .section-title{font-size:1.7rem}
      .why-cards{grid-template-columns:repeat(2,1fr)}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:767.98px){
      .hero{
        min-height:520px;
        background:
          linear-gradient(90deg,rgba(255,255,255,.93),rgba(255,255,255,.67)),
          url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1400&q=88") center/cover no-repeat;
      }
      .hero h1{
        font-size:2.7rem;
        line-height:1.08;
        letter-spacing:-.025em;
      }
      .hero p{font-size:.92rem}
      .search-shell{margin-top:-72px}
      .search-card{grid-template-columns:1fr 1fr;padding:10px}
      .search-field{border-right:1px solid #e8ecef!important;border-bottom:1px solid #e8ecef!important}
      .search-field:nth-child(even){border-right:0!important}
      .search-submit-wrap{grid-column:1/-1;padding:10px 0 0;min-height:62px}
      .section-head{align-items:flex-start;flex-direction:column}
      .section-actions{width:100%;justify-content:flex-end}
      .property-media{height:220px}
      .why-cards{grid-template-columns:1fr}
      .about-testimonial{grid-template-columns:1fr}
      .about-image{min-height:260px}
      .testimonial{grid-column:auto}
      .cta-band{padding:24px 0}
      .cta-band .container-xl{flex-direction:column;align-items:flex-start}
      .footer-grid{grid-template-columns:1fr}
      .footer-bottom{flex-direction:column}
    }
    @media (max-width:575.98px){
      .container-xl{padding-left:16px;padding-right:16px}
      .brand-wrap{min-width:185px;padding:8px 5px 8px 0}
      .brand-logo{height:76px}
      .main-nav.compact .brand-logo{height:66px}
      .hero h1{
        font-size:2.25rem;
        line-height:1.1;
      }
      .hero-content{padding-top:52px}
      .search-card{grid-template-columns:1fr}
      .search-field{border-right:0!important}
      .search-submit-wrap{grid-column:auto}
      .property-media{height:205px}
      .section-title{font-size:1.55rem}
      .why-left h2{font-size:1.45rem}
      .float-stack{right:14px;bottom:14px}
      .floating-btn{width:46px;height:46px}
    }
  
    /* ===== CORRECCIÓN FINAL: PRIMERA BARRA SIN SOMBRA ===== */
    .top-strip,
    .top-strip::before,
    .top-strip::after{
      box-shadow:none !important;
      -webkit-box-shadow:none !important;
      filter:none !important;
      border:none !important;
      border-top:0 !important;
      border-bottom:0 !important;
      outline:none !important;
      background-image:none !important;
    }

    .top-strip{
      background:#fff !important;
    }

  
    /* ===== SIN SOMBRA NI LÍNEA BAJO LA BARRA DE TELÉFONOS ===== */
    #topStrip,
    .top-strip,
    #topStrip::before,
    #topStrip::after,
    .top-strip::before,
    .top-strip::after{
      border:0 !important;
      border-top:0 !important;
      border-bottom:0 !important;
      box-shadow:none !important;
      -webkit-box-shadow:none !important;
      outline:0 !important;
      filter:none !important;
      background-image:none !important;
    }

    #topStrip,
    .top-strip{
      background:#fff !important;
    }

    /* El navbar principal tampoco dibuja ninguna línea hacia arriba */
    #mainNav,
    .main-nav{
      border-top:0 !important;
    }

  
    /* ===== SOMBRA SOLO DEBAJO DEL NAVBAR, NUNCA BAJO LOS TELÉFONOS ===== */
    #mainNav,
    .main-nav,
    #mainNav.compact,
    .main-nav.compact{
      box-shadow:none !important;
      -webkit-box-shadow:none !important;
      border-top:0 !important;
    }

    #mainNav::before,
    .main-nav::before{
      content:none !important;
      display:none !important;
    }

    #mainNav::after,
    .main-nav::after{
      content:"";
      position:absolute;
      left:0;
      right:0;
      bottom:-7px;
      height:7px;
      pointer-events:none;
      background:linear-gradient(
        to bottom,
        rgba(18,28,38,.09) 0%,
        rgba(18,28,38,.035) 45%,
        rgba(18,28,38,0) 100%
      );
    }

    /* Barra superior totalmente plana */
    #topStrip,
    .top-strip,
    #topStrip::before,
    #topStrip::after,
    .top-strip::before,
    .top-strip::after{
      box-shadow:none !important;
      -webkit-box-shadow:none !important;
      border:0 !important;
      outline:0 !important;
      filter:none !important;
    }

  
    /* ===== HEADER SIN SEPARACIÓN DURANTE EL SCROLL ===== */
    #topStrip,
    .top-strip{
      box-shadow:none !important;
      -webkit-box-shadow:none !important;
      border:none !important;
      opacity:1 !important;
    }

    #mainNav,
    .main-nav,
    #mainNav.compact,
    .main-nav.compact{
      border-top:0 !important;
      box-shadow:none !important;
      -webkit-box-shadow:none !important;
    }

    /* sombra únicamente hacia abajo del navbar */
    #mainNav::after,
    .main-nav::after{
      content:"";
      position:absolute;
      left:0;
      right:0;
      bottom:-6px;
      height:6px;
      pointer-events:none;
      background:linear-gradient(
        to bottom,
        rgba(18,28,38,.08) 0%,
        rgba(18,28,38,.025) 45%,
        rgba(18,28,38,0) 100%
      );
    }

  
    /* ===== FONDO BLANCO CONTINUO DETRÁS DEL HEADER ===== */
    .header-underlay{
      position:fixed;
      top:0;
      left:0;
      right:0;
      height:calc(var(--header-strip-h) + var(--navbar-h));
      background:#fff;
      z-index:1030;
      pointer-events:none;
      transition:height .22s ease-in-out;
      will-change:height;
    }

    body.header-compact .header-underlay{
      height:100px;
    }

    /* Evita cualquier rendija por subpíxeles entre ambas barras */
    #topStrip{
      margin-bottom:-1px;
    }

    #mainNav{
      margin-top:-1px;
    }

  
    /* ===== SOMBRA GOOGLE MATERIAL: DELGADA Y PEGADA AL NAVBAR ===== */
    #mainNav,
    .main-nav,
    #mainNav.compact,
    .main-nav.compact{
      box-shadow:
        0 1px 2px rgba(60,64,67,.14),
        0 2px 4px rgba(60,64,67,.08) !important;
      -webkit-box-shadow:
        0 1px 2px rgba(60,64,67,.14),
        0 2px 4px rgba(60,64,67,.08) !important;
      border-bottom:1px solid rgba(60,64,67,.08) !important;
    }

    /* Elimina la sombra artificial larga anterior */
    #mainNav::after,
    .main-nav::after{
      content:none !important;
      display:none !important;
      background:none !important;
    }

    /* La barra superior sigue totalmente plana */
    #topStrip,
    .top-strip{
      box-shadow:none !important;
      -webkit-box-shadow:none !important;
      border:none !important;
    }

  
    /* ===== MÁS PADDING DEL LOGO SOLO EN SCROLL ===== */
    .main-nav.compact .brand-wrap{
      padding-top:12px !important;
      padding-bottom:12px !important;
      padding-left:0 !important;
      padding-right:14px !important;
      align-items:center;
    }

    .main-nav.compact .brand-logo{
      height:90px !important;
      transform:translateY(-50%) !important;
    }

    /* Mantiene el logo grande y con padding aun con el navbar reducido */
    body.header-compact .main-nav .brand-wrap{
      padding-top:12px !important;
      padding-bottom:12px !important;
    }

  
    /* ===== COLORES DE TEXTO COMO EN LA REFERENCIA ===== */

    /* Barra superior: texto negro */
    .top-strip,
    .top-strip .container-xl,
    .top-strip .info,
    .top-strip .info span{
      color:#111111 !important;
    }

    .top-strip .info strong{
      color:#111111 !important;
      font-weight:700;
    }

    /* Íconos superiores discretos, oscuros */
    .top-strip .info i{
      color:#111111 !important;
    }

    /* Menú principal: gris oscuro/antracita cálido */
    .main-nav .nav-link{
      color:#4a4a46 !important;
      font-weight:700;
    }

    .main-nav .nav-link:hover,
    .main-nav .nav-link.active{
      color:var(--vp-red) !important;
    }

    /* Dropdown mantiene la misma línea visual */
    .main-nav .dropdown-menu .dropdown-item{
      color:#4a4a46 !important;
    }

    .main-nav .dropdown-menu .dropdown-item:hover{
      color:var(--vp-red) !important;
    }

  
    /* ===== TIPOGRAFÍA MÁS GRANDE EN HEADER ===== */

    /* Barra superior: teléfonos, correo y "Síguenos en" */
    .top-strip .container-xl{
      font-size:.86rem !important;
    }

    .top-strip .info,
    .top-strip .info span,
    .top-strip .info strong{
      font-size:.86rem !important;
      line-height:1.2;
    }

    .top-strip .info i{
      font-size:.9rem !important;
    }

    /* Menú principal */
    .main-nav .nav-link{
      font-size:.88rem !important;
      letter-spacing:.015em !important;
      font-weight:700 !important;
    }

    /* Botón Contáctanos */
    .btn-contact-nav{
      font-size:.88rem !important;
    }

    /* En modo compacto conserva buen tamaño */
    .main-nav.compact .nav-link{
      font-size:.84rem !important;
    }

    @media (max-width:991.98px){
      .main-nav .nav-link,
      .main-nav.compact .nav-link{
        font-size:.9rem !important;
      }
    }

  
    /* ===== BARRA SUPERIOR SIN NEGRITA ===== */
    .top-strip,
    .top-strip .container-xl,
    .top-strip .info,
    .top-strip .info span,
    .top-strip .info strong{
      font-weight:400 !important;
    }

  
    /* ===== HERO: PALETA MODERNA, ELEGANTE Y CORPORATIVA ===== */

    /* Texto principal: antracita profundo, más premium que negro puro */
    .hero h1{
      color:#20262d !important;
      text-shadow:none !important;
    }

    /* Rojo corporativo más sobrio y elegante */
    .hero h1 .red{
      color:#b40000 !important;
    }

    /* Eyebrow: gris azulado sofisticado */
    .hero .eyebrow{
      color:#58636f !important;
      font-weight:800;
      letter-spacing:.19em;
    }

    /* Descripción: gris grafito, legible pero menos protagonista */
    .hero p{
      color:#505a64 !important;
      font-weight:400;
    }

    /* Mantener jerarquía limpia y moderna */
    .hero h1,
    .hero p,
    .hero .eyebrow{
      -webkit-font-smoothing:antialiased;
      text-rendering:optimizeLegibility;
    }

  
    /* ===== PALETA DE INTERFAZ MÁS ELEGANTE Y DISTINGUIDA ===== */
    :root{
      --vp-red:#b40000;
      --vp-red-dark:#b40000;
      --vp-ink:#20262d;
      --vp-charcoal:#252b31;
      --vp-charcoal-2:#30373e;
      --vp-muted:#69737d;
      --vp-soft:#f5f6f7;
    }

    /* El rojo queda como acento, no como color dominante */
    .nav-link.active,
    .nav-link:hover{
      color:var(--vp-red) !important;
    }

    .nav-link.active:after{
      background:var(--vp-red) !important;
    }

    /* Botón principal del navbar: grafito elegante */
    .btn-contact-nav{
      background:var(--vp-charcoal) !important;
      color:#fff !important;
      border:1px solid rgba(255,255,255,.04) !important;
      box-shadow:0 2px 7px rgba(20,25,30,.16) !important;
    }

    .btn-contact-nav:hover{
      background:#161b20 !important;
      color:#fff !important;
    }

    .btn-contact-nav i{
      color:#fff !important;
    }

    /* Buscador: botón principal oscuro, rojo solo en icono/acento */
    .search-submit{
      background:var(--vp-charcoal) !important;
      color:#fff !important;
      box-shadow:0 4px 10px rgba(20,25,30,.14) !important;
    }

    .search-submit:hover{
      background:#171c21 !important;
      filter:none !important;
    }

    .search-submit i{
      color:#fff !important;
    }

    /* Botones de acción en cards: neutros oscuros */
    .btn-detail{
      background:var(--vp-charcoal) !important;
      color:#fff !important;
      box-shadow:0 2px 6px rgba(20,25,30,.12) !important;
    }

    .btn-detail:hover{
      background:#171c21 !important;
    }

    /* Botón "ver todas": limpio, elegante y menos llamativo */
    .outline-red{
      border:1px solid #cfd4d8 !important;
      color:var(--vp-charcoal) !important;
      background:#fff !important;
      box-shadow:0 1px 3px rgba(20,25,30,.05);
    }

    .outline-red:hover{
      border-color:var(--vp-red) !important;
      color:var(--vp-red) !important;
    }

    /* Flechas de carrusel: neutras */
    .circle-nav,
    .circle-nav.red{
      color:#5f6973 !important;
      border-color:#dfe3e6 !important;
      background:#fff !important;
    }

    .circle-nav:hover,
    .circle-nav.red:hover{
      color:var(--vp-red) !important;
      border-color:#e8b9bc !important;
    }

    /* CTA principal: oscuro premium */
    .cta-btn,
    .btn-about{
      background:var(--vp-charcoal) !important;
      color:#fff !important;
      box-shadow:0 3px 10px rgba(20,25,30,.15) !important;
    }

    .cta-btn:hover,
    .btn-about:hover{
      background:#171c21 !important;
      color:#fff !important;
    }

    /* Mantener rojo en lugares de marca y señalización */
    .section-kicker,
    .section-title .red,
    .why-left h2 span,
    .about-copy h2 span,
    .property-price,
    .ribbon.red{
      color:var(--vp-red) !important;
    }

    .ribbon.red{
      background:var(--vp-red) !important;
      color:#fff !important;
    }

    /* Iconografía de beneficios en rojo, pero sin saturar botones */
    .why-card i{
      color:var(--vp-red) !important;
    }

    /* Cards más sobrias */
    .property-card,
    .why-card,
    .testimonial-card,
    .search-card{
      box-shadow:0 4px 14px rgba(32,38,45,.07) !important;
    }

    /* Evitar exceso de rojo en pequeños controles */
    .trust-card .arrow{
      background:var(--vp-charcoal) !important;
    }

    .dots span.active{
      background:var(--vp-red) !important;
    }

    /* Footer y CTA mantienen sensación de prestigio */
    footer{
      background:#1b2228 !important;
    }

  
    .property-category-section{
      padding-top:28px;
      padding-bottom:34px;
      border-top:1px solid #f0f2f4;
    }

    .property-category-section + .property-category-section{
      padding-top:34px;
    }

  
    /* ===== FOOTER PREMIUM CORREGIDO ===== */
    footer{
      background:#1b2228 !important;
      color:#d7dde2 !important;
      padding:36px 0 0 !important;
    }

    .footer-grid{
      display:grid !important;
      grid-template-columns:1.35fr .75fr .9fr 1.35fr .7fr !important;
      gap:42px !important;
      align-items:start !important;
      padding-bottom:32px !important;
    }

    .footer-brand img{
      height:86px !important;
      width:auto !important;
      max-width:190px !important;
      object-fit:contain !important;
      filter:none !important;
      margin-bottom:16px !important;
    }

    .footer-brand p{
      font-size:.84rem !important;
      line-height:1.6 !important;
      color:#b8c1c9 !important;
      margin:0 !important;
      max-width:285px !important;
    }

    footer h3{
      font-size:.92rem !important;
      line-height:1.2 !important;
      color:#fff !important;
      font-weight:700 !important;
      margin:0 0 14px !important;
    }

    footer ul{
      padding:0 !important;
      margin:0 !important;
      list-style:none !important;
    }

    footer li{
      margin:0 0 7px !important;
      line-height:1.35 !important;
    }

    footer li a,
    footer a{
      font-size:.81rem !important;
      line-height:1.5 !important;
      color:#c7cfd6 !important;
      font-weight:400 !important;
    }

    footer a:hover{
      color:#fff !important;
    }

    .contact-line{
      display:flex !important;
      align-items:flex-start !important;
      gap:9px !important;
      margin-bottom:9px !important;
      color:#d1d7dc !important;
      font-size:.82rem !important;
      line-height:1.45 !important;
    }

    .contact-line i{
      color:#fff !important;
      font-size:.86rem !important;
      margin-top:2px !important;
      flex:0 0 auto !important;
    }

    .contact-line span{
      font-size:.82rem !important;
      line-height:1.45 !important;
      color:#d1d7dc !important;
    }

    .footer-social{
      display:flex !important;
      gap:10px !important;
      flex-wrap:wrap !important;
    }

    .footer-social a{
      width:36px !important;
      height:36px !important;
      border-radius:7px !important;
      border:1px solid #58636d !important;
      display:grid !important;
      place-items:center !important;
      color:#fff !important;
      font-size:1rem !important;
      background:rgba(255,255,255,.025) !important;
      transition:.2s ease !important;
    }

    .footer-social a:hover{
      border-color:#fff !important;
      background:rgba(255,255,255,.06) !important;
    }

    .footer-bottom{
      border-top:1px solid rgba(255,255,255,.11) !important;
      padding:14px 0 16px !important;
      display:flex !important;
      justify-content:space-between !important;
      align-items:center !important;
      gap:20px !important;
      color:#9fa8b0 !important;
      font-size:.72rem !important;
      line-height:1.4 !important;
    }

    .footer-bottom span{
      font-size:.72rem !important;
    }

    @media (max-width:1199.98px){
      .footer-grid{
        grid-template-columns:1.25fr 1fr 1fr !important;
        gap:34px !important;
      }

      .footer-grid > div:nth-child(4){
        grid-column:span 2;
      }
    }

    @media (max-width:767.98px){
      footer{
        padding-top:30px !important;
      }

      .footer-grid{
        grid-template-columns:1fr 1fr !important;
        gap:28px 24px !important;
      }

      .footer-grid > div:nth-child(4){
        grid-column:auto;
      }

      .footer-brand{
        grid-column:1/-1;
      }

      .footer-brand img{
        height:78px !important;
      }

      .footer-bottom{
        flex-direction:column !important;
        align-items:flex-start !important;
      }
    }

    @media (max-width:575.98px){
      .footer-grid{
        grid-template-columns:1fr !important;
      }

      .footer-brand{
        grid-column:auto;
      }

      .footer-brand img{
        height:72px !important;
      }

      footer h3{
        font-size:.95rem !important;
      }

      footer li a,
      .contact-line,
      .contact-line span{
        font-size:.84rem !important;
      }
    }

  
    /* ===== AJUSTE DE PROPIEDADES SEGÚN REFERENCIA ===== */

    /* Más separación entre título de sección y cards */
    .properties-area .section-head{
      margin-bottom:34px !important;
    }

    /* Cards más altas, limpias y con proporción similar a la referencia */
    .property-card{
      border:1px solid #e5e9ed !important;
      border-radius:0 0 14px 14px !important;
      overflow:hidden !important;
      background:#fff !important;
      box-shadow:0 10px 24px rgba(29,38,48,.10) !important;
      height:100% !important;
      display:flex !important;
      flex-direction:column !important;
    }

    .property-card:hover{
      transform:none !important;
      box-shadow:0 12px 28px rgba(29,38,48,.12) !important;
    }

    /* Imagen más alta y protagonista */
    .property-media{
      height:220px !important;
      border-radius:12px 12px 0 0 !important;
      overflow:hidden !important;
      background:#edf0f2 !important;
    }

    .property-media img{
      width:100% !important;
      height:100% !important;
      object-fit:cover !important;
    }

    /* Cuerpo con más aire */
    .property-body{
      padding:16px 16px 12px !important;
      display:flex !important;
      flex-direction:column !important;
      flex:1 1 auto !important;
    }

    .property-title{
      font-size:1rem !important;
      line-height:1.38 !important;
      font-weight:800 !important;
      min-height:66px !important;
      margin:0 0 11px !important;
      color:#151c23 !important;
      text-transform:uppercase !important;
    }

    .property-location{
      font-size:.82rem !important;
      margin-bottom:8px !important;
      color:#8d98a3 !important;
      gap:6px !important;
    }

    .property-location i{
      font-size:.95rem !important;
    }

    .property-price{
      font-size:1.2rem !important;
      line-height:1.1 !important;
      margin-bottom:14px !important;
      font-weight:900 !important;
      color:#b40000 !important;
    }

    /* Bloques de características como la imagen */
    .features{
      grid-template-columns:repeat(4,1fr) !important;
      gap:7px !important;
      margin-bottom:14px !important;
    }

    .feature{
      min-height:48px !important;
      border:1px solid #e2e7eb !important;
      border-radius:9px !important;
      background:#f8fafb !important;
      padding:7px 5px !important;
      display:flex !important;
      align-items:center !important;
      justify-content:center !important;
      gap:5px !important;
      font-size:.72rem !important;
      font-weight:700 !important;
      color:#3f4a55 !important;
    }

    .feature i{
      font-size:1rem !important;
      color:#596875 !important;
    }

    /* Pie del card como referencia */
    .property-footer{
      margin-top:auto !important;
      padding-top:12px !important;
      border-top:1px solid #e7ebee !important;
      display:flex !important;
      align-items:center !important;
      justify-content:space-between !important;
      gap:12px !important;
    }

    .compare-check{
      font-size:.78rem !important;
      color:#37424d !important;
      font-weight:500 !important;
      gap:8px !important;
    }

    .compare-check input{
      width:18px !important;
      height:18px !important;
      border-radius:4px !important;
    }

    /* Botón exactamente más cercano al de la referencia:
       rojo, compacto, esquinas redondeadas */
    .btn-detail{
      min-width:92px !important;
      min-height:40px !important;
      padding:10px 18px !important;
      border-radius:8px !important;
      background:var(--vp-red) !important;
      color:#fff !important;
      border:0 !important;
      font-size:.76rem !important;
      font-weight:800 !important;
      box-shadow:0 4px 10px rgba(180,0,0,.14) !important;
      display:inline-flex !important;
      align-items:center !important;
      justify-content:center !important;
      gap:6px !important;
    }

    .btn-detail:hover{
      background:var(--vp-red-dark) !important;
      color:#fff !important;
      transform:translateY(-1px) !important;
    }

    /* Eliminar flecha del botón para que se vea como la referencia */
    .btn-detail i{
      display:none !important;
    }

    /* Cards con separación horizontal similar */
    .properties-area .row.g-3{
      --bs-gutter-x:1.25rem !important;
      --bs-gutter-y:1.5rem !important;
    }

    /* Mejor separación entre categorías */
    .property-category-section{
      padding-top:42px !important;
      padding-bottom:42px !important;
    }

    @media (max-width:1199.98px){
      .property-media{height:210px !important;}
      .property-title{min-height:58px !important;}
    }

    @media (max-width:767.98px){
      .properties-area .section-head{
        margin-bottom:24px !important;
      }

      .property-media{
        height:235px !important;
      }

      .property-title{
        font-size:.96rem !important;
        min-height:auto !important;
      }

      .features{
        grid-template-columns:repeat(2,1fr) !important;
      }

      .btn-detail{
        min-width:105px !important;
      }
    }

  
    /* ===== BOTÓN BUSCADOR EN ROJO CORPORATIVO ===== */
    .search-submit{
      background:#b40000 !important;
      color:#fff !important;
      border:0 !important;
      box-shadow:0 4px 10px rgba(180,0,0,.16) !important;
    }

    .search-submit:hover,
    .search-submit:focus{
      background:#b40000 !important;
      color:#fff !important;
      filter:none !important;
    }

    .search-submit i{
      color:#fff !important;
    }

  
    /* =====================================================================
       VALENZUELA PROPIEDADES — REFINAMIENTO PREMIUM / ELEGANTE / CORPORATIVO
       Capa final de estilos: mantiene Roboto, estructura y funcionalidad.
       ===================================================================== */

    :root{
      --vp-red:#b40000;
      --vp-red-dark:#b40000;
      --vp-ink:#1d2329;
      --vp-charcoal:#242b31;
      --vp-charcoal-deep:#171d22;
      --vp-muted:#66717a;
      --vp-soft:#f7f8f8;
      --vp-soft-2:#f2f4f5;
      --vp-line:#e4e8eb;
      --vp-shadow:0 5px 18px rgba(22,30,38,.055);
      --vp-shadow-lg:0 16px 38px rgba(22,30,38,.085);
    }

    body{
      color:var(--vp-ink);
      background:#fff;
      -webkit-font-smoothing:antialiased;
      text-rendering:optimizeLegibility;
    }

    .container-xl{
      max-width:1540px !important;
      padding-left:30px !important;
      padding-right:30px !important;
    }

    /* HEADER */
    .top-strip .container-xl{
      gap:22px !important;
      color:#23272b !important;
    }

    .top-socials a{
      box-shadow:none !important;
      border-color:#e2e5e7 !important;
      transition:all .2s ease !important;
    }

    .top-socials a:hover{
      color:var(--vp-red) !important;
      border-color:#d8a3a6 !important;
      transform:translateY(-1px);
    }

    .main-nav{
      border-bottom:1px solid rgba(31,39,46,.07) !important;
      box-shadow:0 3px 16px rgba(25,32,38,.055) !important;
    }

    .main-nav .nav-link{
      color:#444a4f !important;
      font-weight:700 !important;
      letter-spacing:.012em !important;
    }

    .main-nav .nav-link:hover,
    .main-nav .nav-link.active{
      color:var(--vp-red) !important;
    }

    .main-nav .nav-link.active:after{
      height:2px !important;
      background:var(--vp-red) !important;
    }

    .btn-contact-nav{
      background:var(--vp-charcoal) !important;
      border-radius:7px !important;
      padding:11px 18px !important;
      box-shadow:0 4px 12px rgba(20,26,32,.13) !important;
      transition:all .22s ease !important;
    }

    .btn-contact-nav:hover{
      background:var(--vp-charcoal-deep) !important;
      transform:translateY(-1px);
      box-shadow:0 7px 16px rgba(20,26,32,.16) !important;
    }

    /* HERO */
    .hero{
      min-height:590px !important;
      background:
        linear-gradient(90deg,
          rgba(255,255,255,.95) 0%,
          rgba(255,255,255,.84) 22%,
          rgba(255,255,255,.42) 40%,
          rgba(255,255,255,.08) 60%,
          rgba(255,255,255,0) 76%),
        url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=2200&q=90")
        center 51%/cover no-repeat !important;
    }

    .hero-content{
      padding:82px 0 150px !important;
    }

    .hero .eyebrow{
      color:#56616b !important;
      font-size:.70rem !important;
      letter-spacing:.22em !important;
      margin-bottom:16px !important;
    }

    .hero h1{
      max-width:700px !important;
      color:#20262c !important;
      font-size:clamp(2.7rem,4.45vw,4.75rem) !important;
      line-height:1.035 !important;
      letter-spacing:-.045em !important;
      font-weight:900 !important;
    }

    .hero h1 .red{
      color:var(--vp-red) !important;
    }

    .hero p{
      max-width:600px !important;
      margin-top:24px !important;
      color:#515c65 !important;
      font-size:1.03rem !important;
      line-height:1.68 !important;
    }

    /* BUSCADOR */
    .search-shell{
      margin-top:-70px !important;
      margin-bottom:50px !important;
    }

    .search-card{
      border-radius:16px !important;
      border:1px solid #eceff1 !important;
      padding:14px !important;
      box-shadow:0 18px 42px rgba(26,34,41,.10) !important;
      background:#fff !important;
    }

    .search-field{
      min-height:72px !important;
      padding:11px 20px !important;
      border-right:1px solid #e7eaed !important;
    }

    .search-field label{
      color:#293139 !important;
      font-size:.73rem !important;
      margin-bottom:6px !important;
    }

    .search-field select{
      color:#727b84 !important;
      font-size:.80rem !important;
    }

    .search-submit-wrap{
      padding:5px 0 5px 15px !important;
    }

    .search-submit{
      border-radius:9px !important;
      background:var(--vp-red) !important;
      color:#fff !important;
      box-shadow:0 6px 16px rgba(180,0,0,.18) !important;
      transition:all .22s ease !important;
    }

    .search-submit:hover{
      background:var(--vp-red-dark) !important;
      transform:translateY(-1px);
      box-shadow:0 8px 18px rgba(180,0,0,.22) !important;
    }

    /* RITMO GENERAL */
    .section-pad{
      padding:36px 0 62px !important;
    }

    .property-category-section{
      padding-top:56px !important;
      padding-bottom:64px !important;
      border-top:1px solid #eef1f3 !important;
    }

    .property-category-section + .property-category-section{
      padding-top:58px !important;
    }

    .section-head{
      margin-bottom:30px !important;
      gap:28px !important;
    }

    .section-kicker{
      color:var(--vp-red) !important;
      font-size:.64rem !important;
      letter-spacing:.20em !important;
      margin-bottom:8px !important;
    }

    .section-title{
      color:#182027 !important;
      font-size:clamp(1.75rem,2.25vw,2.35rem) !important;
      line-height:1.08 !important;
      letter-spacing:-.038em !important;
    }

    .outline-red{
      border:1px solid #d5dade !important;
      color:#293139 !important;
      background:#fff !important;
      border-radius:8px !important;
      padding:10px 16px !important;
      box-shadow:none !important;
      transition:all .2s ease !important;
    }

    .outline-red:hover{
      color:var(--vp-red) !important;
      border-color:#d7a4a7 !important;
      background:#fff !important;
      transform:translateY(-1px);
    }

    .circle-nav,
    .circle-nav.red{
      width:38px !important;
      height:38px !important;
      color:#67717a !important;
      border:1px solid #dfe3e6 !important;
      background:#fff !important;
      box-shadow:0 2px 7px rgba(23,31,38,.045) !important;
      transition:all .2s ease !important;
    }

    .circle-nav:hover,
    .circle-nav.red:hover{
      color:#fff !important;
      background:var(--vp-charcoal) !important;
      border-color:var(--vp-charcoal) !important;
      transform:translateY(-1px);
    }

    /* CARDS DE PROPIEDADES */
    .properties-area .row.g-3{
      --bs-gutter-x:1.35rem !important;
      --bs-gutter-y:1.35rem !important;
    }

    .property-card{
      border:1px solid #e3e7ea !important;
      border-radius:12px !important;
      overflow:hidden !important;
      background:#fff !important;
      box-shadow:0 7px 22px rgba(24,33,41,.065) !important;
      transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease !important;
    }

    .property-card:hover{
      transform:translateY(-3px) !important;
      border-color:#d9dee2 !important;
      box-shadow:0 14px 34px rgba(24,33,41,.095) !important;
    }

    .property-media{
      height:226px !important;
      border-radius:0 !important;
      overflow:hidden !important;
    }

    .property-media img{
      transition:transform .35s ease !important;
    }

    .property-card:hover .property-media img{
      transform:scale(1.025);
    }

    .heart{
      display:none !important;
    }

    .ribbon{
      left:-58px !important;
      right:auto !important;
      top:28px !important;
      width:210px !important;
      font-size:.80rem !important;
      font-weight:900 !important;
      letter-spacing:.02em !important;
      padding:11px 0 !important;
      transform:rotate(-45deg) !important;
      transform-origin:center !important;
      z-index:3 !important;
      box-shadow:0 4px 12px rgba(0,0,0,.18) !important;
    }

    .ribbon.red{
      background:var(--vp-red) !important;
      color:#fff !important;
    }

    .ribbon.yellow{
      background:#f0c62e !important;
      color:#252525 !important;
    }

    .property-body{
      padding:17px 17px 14px !important;
    }

    .property-title{
      color:#182027 !important;
      font-size:.94rem !important;
      line-height:1.34 !important;
      font-weight:800 !important;
      min-height:62px !important;
      margin-bottom:12px !important;
    }

    .property-location{
      color:#89939c !important;
      font-size:.79rem !important;
      margin-bottom:8px !important;
    }

    .property-location i{
      color:#8b969f !important;
    }

    .property-price{
      color:var(--vp-red) !important;
      font-size:1.18rem !important;
      margin-bottom:14px !important;
    }

    .features{
      gap:7px !important;
      margin-bottom:15px !important;
    }

    .feature{
      min-height:46px !important;
      border:1px solid #e3e7ea !important;
      border-radius:8px !important;
      background:#fafbfb !important;
      color:#45515c !important;
      font-size:.71rem !important;
    }

    .feature i{
      color:#5d6a75 !important;
      font-size:.95rem !important;
    }

    .property-footer{
      padding-top:13px !important;
      border-top:1px solid #e9ecef !important;
    }

    .compare-check{
      color:#4d5862 !important;
      font-size:.76rem !important;
    }

    .btn-detail{
      min-width:96px !important;
      min-height:40px !important;
      padding:10px 16px !important;
      border-radius:8px !important;
      background:var(--vp-charcoal) !important;
      color:#fff !important;
      box-shadow:none !important;
      transition:all .2s ease !important;
    }

    .btn-detail:hover{
      background:var(--vp-red) !important;
      color:#fff !important;
      transform:translateY(-1px) !important;
      box-shadow:0 5px 12px rgba(180,0,0,.15) !important;
    }

    /* POR QUÉ ELEGIRNOS */
    .why-section{
      background:#f7f8f8 !important;
      border-top:1px solid #eef1f3 !important;
      border-bottom:1px solid #eef1f3 !important;
      padding:54px 0 !important;
    }

    .why-grid{
      grid-template-columns:1.75fr .95fr !important;
      gap:28px !important;
      min-height:320px !important;
      align-items:stretch !important;
    }

    .why-left{
      padding:4px 0 !important;
    }

    .why-left h2{
      color:#1d252c !important;
      font-size:1.85rem !important;
      line-height:1.12 !important;
      margin-bottom:24px !important;
    }

    .why-cards{
      gap:14px !important;
    }

    .why-card{
      min-height:158px !important;
      padding:20px 18px !important;
      border:1px solid #e6e9eb !important;
      border-radius:11px !important;
      box-shadow:0 5px 16px rgba(22,30,38,.045) !important;
      transition:transform .22s ease, box-shadow .22s ease !important;
    }

    .why-card:hover{
      transform:translateY(-2px);
      box-shadow:0 10px 24px rgba(22,30,38,.07) !important;
    }

    .why-card i{
      font-size:1.55rem !important;
      margin-bottom:13px !important;
    }

    .why-card h3{
      color:#20282f !important;
      font-size:.86rem !important;
      margin-bottom:8px !important;
    }

    .why-card p{
      color:#707a83 !important;
      font-size:.71rem !important;
      line-height:1.5 !important;
    }

    .why-photo{
      min-height:320px !important;
      border-radius:12px !important;
      overflow:hidden !important;
      box-shadow:0 8px 24px rgba(22,30,38,.07) !important;
    }

    .trust-card{
      right:22px !important;
      bottom:22px !important;
      width:190px !important;
      border-radius:11px !important;
      padding:17px !important;
      box-shadow:0 12px 28px rgba(17,24,30,.14) !important;
    }

    .trust-card .arrow{
      background:var(--vp-charcoal) !important;
    }

    /* SOBRE NOSOTROS + TESTIMONIOS */
    .about-testimonial{
      grid-template-columns:1.05fr 1.10fr 1.18fr !important;
      min-height:340px !important;
      border-bottom:1px solid #eef1f3;
    }

    .about-image{
      min-height:340px !important;
      background-position:center !important;
    }

    .about-copy{
      padding:42px 46px !important;
    }

    .about-copy h2{
      color:#1d252c !important;
      font-size:1.95rem !important;
      line-height:1.08 !important;
      margin-bottom:14px !important;
    }

    .about-copy p{
      color:#66717a !important;
      font-size:.82rem !important;
      line-height:1.62 !important;
      margin-bottom:20px !important;
    }

    .about-copy .btn-about{
      background:var(--vp-charcoal) !important;
      border-radius:7px !important;
      padding:11px 18px !important;
      box-shadow:0 4px 11px rgba(20,26,32,.12) !important;
      transition:all .2s ease !important;
    }

    .about-copy .btn-about:hover{
      background:var(--vp-red) !important;
      transform:translateY(-1px);
    }

    .side-arrow{
      right:16px !important;
      width:36px !important;
      height:36px !important;
      box-shadow:0 2px 8px rgba(22,30,38,.05) !important;
    }

    .testimonial{
      padding:32px 34px !important;
      background:#f8f9f9 !important;
    }

    .testimonial-card{
      border-radius:13px !important;
      border:1px solid #e6eaed !important;
      padding:26px 28px !important;
      box-shadow:0 6px 20px rgba(22,30,38,.055) !important;
    }

    .testimonial-label{
      font-size:.76rem !important;
    }

    .quote-icon{
      font-size:1.65rem !important;
    }

    .testimonial-text{
      color:#626e78 !important;
      font-size:.79rem !important;
      line-height:1.62 !important;
      margin:14px 0 17px !important;
    }

    .client img{
      width:44px !important;
      height:44px !important;
    }

    .client strong{
      font-size:.78rem !important;
    }

    .client span{
      font-size:.66rem !important;
    }

    /* CTA */
    .cta-band{
      min-height:150px !important;
      background:
        linear-gradient(90deg,rgba(18,27,34,.92),rgba(18,27,34,.72)),
        url("https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&w=2200&q=88")
        center 58%/cover no-repeat !important;
    }

    .cta-band h2{
      font-size:1.55rem !important;
      line-height:1.12 !important;
    }

    .cta-band p{
      font-size:.82rem !important;
    }

    .cta-btn{
      background:#fff !important;
      color:#20282f !important;
      border:1px solid rgba(255,255,255,.55) !important;
      border-radius:8px !important;
      box-shadow:0 5px 16px rgba(0,0,0,.10) !important;
      transition:all .2s ease !important;
    }

    .cta-btn:hover{
      background:var(--vp-red) !important;
      color:#fff !important;
      border-color:var(--vp-red) !important;
      transform:translateY(-1px);
    }

    /* FOOTER */
    footer{
      background:#192128 !important;
      padding-top:42px !important;
    }

    .footer-grid{
      gap:46px !important;
      padding-bottom:36px !important;
    }

    .footer-brand img{
      height:92px !important;
      margin-bottom:18px !important;
    }

    .footer-brand p{
      color:#b9c2ca !important;
      font-size:.84rem !important;
      line-height:1.65 !important;
      max-width:290px !important;
    }

    footer h3{
      font-size:.94rem !important;
      margin-bottom:16px !important;
    }

    footer li{
      margin-bottom:8px !important;
    }

    footer li a,
    footer a{
      color:#c8d0d7 !important;
      font-size:.82rem !important;
      transition:color .18s ease !important;
    }

    footer a:hover{
      color:var(--vp-red) !important;
    }

    .contact-line,
    .contact-line span{
      color:#d1d7dc !important;
      font-size:.82rem !important;
      line-height:1.5 !important;
    }

    .footer-social a{
      width:38px !important;
      height:38px !important;
      border-radius:7px !important;
      background:transparent !important;
      transition:all .2s ease !important;
    }

    .footer-social a:hover{
      color:#fff !important;
      background:var(--vp-red) !important;
      border-color:var(--vp-red) !important;
      transform:translateY(-1px);
    }

    .footer-bottom{
      padding:16px 0 18px !important;
      font-size:.74rem !important;
    }

    .footer-bottom span{
      font-size:.74rem !important;
    }

    /* FLOTANTES */
    .floating-btn{
      box-shadow:0 8px 22px rgba(0,0,0,.18) !important;
    }

    .scrolltop{
      background:#232c33 !important;
    }

    /* RESPONSIVE */
    @media (max-width:1199.98px){
      .container-xl{
        padding-left:24px !important;
        padding-right:24px !important;
      }

      .why-grid{
        grid-template-columns:1fr !important;
      }

      .why-photo{
        min-height:300px !important;
      }

      .about-testimonial{
        grid-template-columns:1fr 1fr !important;
      }

      .testimonial{
        grid-column:1/-1 !important;
      }
    }

    @media (max-width:991.98px){
      .hero{
        min-height:540px !important;
      }

      .hero-content{
        padding:68px 0 140px !important;
      }

      .why-cards{
        grid-template-columns:repeat(2,1fr) !important;
      }

      .about-copy{
        padding:34px 30px !important;
      }
    }

    @media (max-width:767.98px){
      .container-xl{
        padding-left:20px !important;
        padding-right:20px !important;
      }

      .hero{
        min-height:530px !important;
        background:
          linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.76)),
          url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1400&q=88")
          center/cover no-repeat !important;
      }

      .hero h1{
        font-size:2.55rem !important;
      }

      .search-shell{
        margin-top:-78px !important;
      }

      .section-pad,
      .property-category-section{
        padding-top:38px !important;
        padding-bottom:48px !important;
      }

      .property-media{
        height:230px !important;
      }

      .why-section{
        padding:42px 0 !important;
      }

      .why-cards{
        grid-template-columns:1fr !important;
      }

      .about-testimonial{
        grid-template-columns:1fr !important;
      }

      .about-image{
        min-height:300px !important;
      }

      .testimonial{
        grid-column:auto !important;
      }
    }

    @media (max-width:575.98px){
      .container-xl{
        padding-left:17px !important;
        padding-right:17px !important;
      }

      .hero h1{
        font-size:2.22rem !important;
      }

      .search-card{
        padding:10px !important;
      }

      .search-field{
        min-height:64px !important;
        padding:10px 12px !important;
      }

      .property-media{
        height:215px !important;
      }

      .about-copy{
        padding:30px 22px !important;
      }

      .testimonial{
        padding:24px 18px !important;
      }

      .testimonial-card{
        padding:22px 20px !important;
      }
    }



    /* ===== AJUSTE FINAL: HUINCHA DERECHA + NAVBAR 14\" EN ADELANTE ===== */
    .ribbon{
      left:auto !important;
      right:-58px !important;
      top:28px !important;
      width:210px !important;
      padding:11px 0 !important;
      transform:rotate(45deg) !important;
      transform-origin:center !important;
      font-size:.88rem !important;
      line-height:1 !important;
      font-weight:900 !important;
      letter-spacing:.015em !important;
      white-space:nowrap !important;
      z-index:4 !important;
      box-shadow:0 4px 12px rgba(0,0,0,.18) !important;
    }

    /* Evita que el menú se parta en notebooks de 14 pulgadas (1366px típicos) */
    @media (min-width:992px){
      .main-nav .container-xl{
        display:flex !important;
        align-items:center !important;
        flex-wrap:nowrap !important;
      }

      .main-nav .brand-wrap{
        flex:0 0 auto !important;
      }

      #mainMenu{
        flex:1 1 auto !important;
        min-width:0 !important;
        flex-wrap:nowrap !important;
        align-items:center !important;
      }

      #mainMenu .navbar-nav{
        flex-wrap:nowrap !important;
        align-items:center !important;
        white-space:nowrap !important;
      }

      #mainMenu .nav-item,
      #mainMenu .nav-link,
      .btn-contact-nav{
        white-space:nowrap !important;
      }
    }

    /* 14\" / 1366px aprox.: conservar menú completo en una sola línea */
    @media (min-width:1200px) and (max-width:1499.98px){
      .container-xl{
        max-width:1320px !important;
        padding-left:20px !important;
        padding-right:20px !important;
      }

      .main-nav .brand-wrap{
        min-width:220px !important;
        padding-right:8px !important;
      }

      .main-nav .brand-logo{
        height:126px !important;
        transform:translateY(calc(-50% - 8px)) !important;
      }

      .main-nav .navbar-nav{
        gap:0 !important;
      }

      .main-nav .nav-link{
        font-size:.80rem !important;
        padding-left:9px !important;
        padding-right:9px !important;
        letter-spacing:0 !important;
      }

      .btn-contact-nav{
        margin-left:10px !important;
        padding:10px 14px !important;
        font-size:.80rem !important;
      }
    }

    /* Entre 992 y 1199px: usar menú hamburguesa para impedir que se desarme */
    @media (min-width:992px) and (max-width:1199.98px){
      .navbar-expand-lg .navbar-toggler{
        display:block !important;
        margin-left:auto !important;
      }

      .navbar-expand-lg .navbar-collapse{
        display:none !important;
        position:absolute !important;
        top:100% !important;
        left:0 !important;
        right:0 !important;
        background:#fff !important;
        border-top:1px solid #eef1f3 !important;
        box-shadow:0 10px 24px rgba(0,0,0,.10) !important;
        padding:14px 24px 20px !important;
      }

      .navbar-expand-lg .navbar-collapse.show{
        display:block !important;
      }

      .navbar-expand-lg .navbar-nav{
        flex-direction:column !important;
        align-items:stretch !important;
      }

      .main-nav .nav-link,
      .main-nav.compact .nav-link{
        padding:12px 4px !important;
        font-size:.90rem !important;
      }

      .main-nav .nav-link.active:after{
        display:none !important;
      }

      .btn-contact-nav{
        width:100% !important;
        justify-content:center !important;
        margin:10px 0 0 !important;
      }

      .main-nav .brand-wrap{
        min-width:230px !important;
      }
    }



    /* ===== NAVBAR MÁS COMPACTO: MENOS ESPACIO ARRIBA Y ABAJO ===== */
    @media (min-width:1200px){
      :root{
        --navbar-h:112px !important;
      }

      .main-nav{
        height:112px !important;
      }

      .main-nav .container-xl{
        height:112px !important;
        align-items:center !important;
      }

      .main-nav .brand-wrap{
        height:112px !important;
        padding-top:10px !important;
        padding-bottom:10px !important;
        align-items:center !important;
      }

      .main-nav .brand-logo{
        height:118px !important;
        transform:translateY(-50%) !important;
      }

      #mainMenu{
        height:112px !important;
        align-items:center !important;
      }

      #mainMenu .navbar-nav{
        height:112px !important;
        align-items:center !important;
      }

      .main-nav .nav-link{
        padding:0 12px !important;
        height:112px !important;
        display:flex !important;
        align-items:center !important;
        line-height:1.15 !important;
      }

      .main-nav .nav-link.active:after{
        bottom:20px !important;
      }

      .btn-contact-nav{
        align-self:center !important;
      }

      .page-wrap{
        padding-top:calc(var(--header-strip-h) + 112px) !important;
      }

      .header-underlay{
        height:calc(var(--header-strip-h) + 112px) !important;
      }

      .main-nav.compact{
        height:84px !important;
      }

      .main-nav.compact .container-xl,
      .main-nav.compact #mainMenu,
      .main-nav.compact #mainMenu .navbar-nav{
        height:84px !important;
      }

      .main-nav.compact .brand-wrap{
        height:84px !important;
        padding-top:8px !important;
        padding-bottom:8px !important;
      }

      .main-nav.compact .brand-logo{
        height:76px !important;
        transform:translateY(-50%) !important;
      }

      .main-nav.compact .nav-link{
        height:84px !important;
        padding:0 11px !important;
      }

      .main-nav.compact .nav-link.active:after{
        bottom:14px !important;
      }

      body.header-compact .header-underlay{
        height:84px !important;
      }
    }

    /* Notebook 14 pulgadas / 1366px: menú compacto y siempre en una línea */
    @media (min-width:1200px) and (max-width:1499.98px){
      .main-nav .brand-wrap{
        min-width:205px !important;
      }

      .main-nav .brand-logo{
        height:112px !important;
      }

      .main-nav .nav-link{
        height:112px !important;
        padding-left:8px !important;
        padding-right:8px !important;
        font-size:.80rem !important;
      }

      .btn-contact-nav{
        padding:10px 13px !important;
        margin-left:8px !important;
      }
    }



    /* ===== CORRECCIÓN V5: LOGO CENTRADO + MENÚ MÁS LEGIBLE ===== */
    @media (min-width:1200px){
      .main-nav .container-xl{
        position:relative !important;
      }

      .main-nav .brand-wrap{
        min-width:245px !important;
        width:245px !important;
        height:112px !important;
        padding:0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        overflow:visible !important;
      }

      .main-nav .brand-logo{
        position:relative !important;
        left:auto !important;
        top:auto !important;
        transform:none !important;
        height:104px !important;
        width:auto !important;
        margin:0 !important;
        object-fit:contain !important;
        display:block !important;
      }

      .main-nav .nav-link{
        font-size:.96rem !important;
        font-weight:700 !important;
        letter-spacing:.005em !important;
        white-space:nowrap !important;
      }

      .btn-contact-nav{
        font-size:.94rem !important;
        white-space:nowrap !important;
      }

      .main-nav.compact .brand-wrap{
        height:84px !important;
      }

      .main-nav.compact .brand-logo{
        position:relative !important;
        left:auto !important;
        top:auto !important;
        transform:none !important;
        height:76px !important;
      }

      .main-nav.compact .nav-link{
        font-size:.90rem !important;
      }
    }

    /* Notebook 14 pulgadas / 1366px: mantiene el logo centrado y el menú en una línea */
    @media (min-width:1200px) and (max-width:1499.98px){
      .main-nav .brand-wrap{
        min-width:205px !important;
        width:205px !important;
      }

      .main-nav .brand-logo{
        height:98px !important;
      }

      .main-nav .nav-link{
        font-size:.88rem !important;
        padding-left:7px !important;
        padding-right:7px !important;
      }

      .btn-contact-nav{
        font-size:.86rem !important;
        padding:10px 12px !important;
        margin-left:7px !important;
      }
    }



    /* ===== CORRECCIÓN V6: LOGO OCUPA LAS DOS BARRAS DEL HEADER ===== */
    @media (min-width:1200px){
      .main-nav .brand-wrap{
        min-width:245px !important;
        width:245px !important;
        height:calc(112px + var(--header-strip-h)) !important;
        margin-top:calc(-1 * var(--header-strip-h)) !important;
        padding:0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        overflow:visible !important;
        position:relative !important;
        z-index:1055 !important;
      }

      .main-nav .brand-logo{
        position:relative !important;
        left:auto !important;
        top:auto !important;
        transform:none !important;
        height:132px !important;
        width:auto !important;
        margin:0 !important;
        object-fit:contain !important;
        display:block !important;
      }

      .main-nav.compact .brand-wrap{
        height:calc(84px + var(--header-strip-h)) !important;
        margin-top:calc(-1 * var(--header-strip-h)) !important;
      }

      .main-nav.compact .brand-logo{
        height:96px !important;
      }
    }

    /* 14 pulgadas / 1366px: mismo centrado entre ambas barras sin desarmar menú */
    @media (min-width:1200px) and (max-width:1499.98px){
      .main-nav .brand-wrap{
        min-width:215px !important;
        width:215px !important;
      }

      .main-nav .brand-logo{
        height:126px !important;
      }

      .main-nav.compact .brand-logo{
        height:92px !important;
      }
    }



    /* ===== CORRECCIÓN V7: MENÚ MÁS CERCA DEL LOGO Y MEJOR DISTRIBUIDO ===== */
    @media (min-width:1200px){
      #mainMenu{
        display:flex !important;
        align-items:center !important;
        flex:1 1 auto !important;
        min-width:0 !important;
      }

      #mainMenu .navbar-nav{
        margin-left:18px !important;
        margin-right:0 !important;
        flex:1 1 auto !important;
        width:auto !important;
        justify-content:space-between !important;
        align-items:center !important;
        gap:18px !important;
      }

      #mainMenu .nav-item{
        flex:0 0 auto !important;
      }

      .main-nav .nav-link{
        padding-left:2px !important;
        padding-right:2px !important;
      }

      .btn-contact-nav{
        margin-left:24px !important;
        flex:0 0 auto !important;
      }
    }

    /* Notebook 14 pulgadas / 1366 px: reparto equilibrado sin dejar hueco al logo */
    @media (min-width:1200px) and (max-width:1499.98px){
      #mainMenu .navbar-nav{
        margin-left:10px !important;
        gap:10px !important;
      }

      .main-nav .nav-link{
        font-size:.90rem !important;
        padding-left:1px !important;
        padding-right:1px !important;
      }

      .btn-contact-nav{
        margin-left:14px !important;
        font-size:.86rem !important;
        padding:10px 12px !important;
      }
    }



    /* ===== CORRECCIÓN V8: EQUILIBRIO LOGO / MENÚ =====
       Más aire después del logo, pero sin empujar el menú al extremo derecho. */
    @media (min-width:1200px){
      .main-nav .brand-wrap{
        min-width:310px !important;
        width:310px !important;
        flex:0 0 310px !important;
      }

      #mainMenu{
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        flex:1 1 auto !important;
        min-width:0 !important;
      }

      #mainMenu .navbar-nav{
        flex:0 0 auto !important;
        width:auto !important;
        margin-left:34px !important;
        margin-right:0 !important;
        justify-content:flex-start !important;
        gap:28px !important;
      }

      .main-nav .nav-link{
        padding-left:0 !important;
        padding-right:0 !important;
      }

      .btn-contact-nav{
        margin-left:auto !important;
      }
    }

    /* Notebook 14 pulgadas / 1366 px */
    @media (min-width:1200px) and (max-width:1499.98px){
      .main-nav .brand-wrap{
        min-width:255px !important;
        width:255px !important;
        flex-basis:255px !important;
      }

      #mainMenu .navbar-nav{
        margin-left:28px !important;
        gap:20px !important;
      }

      .main-nav .nav-link{
        font-size:.90rem !important;
        white-space:nowrap !important;
      }

      .btn-contact-nav{
        margin-left:auto !important;
        font-size:.84rem !important;
        padding:10px 12px !important;
      }
    }


    /* ===== CORRECCIÓN V9: MENÚ ALINEADO MÁS A LA DERECHA ===== */
    @media (min-width:1500px){
      #mainMenu .navbar-nav{
        margin-left:72px !important;
      }
    }

    @media (min-width:1200px) and (max-width:1499.98px){
      #mainMenu .navbar-nav{
        margin-left:48px !important;
      }
    }



    /* ===== CORRECCIÓN V10: MENÚ ALINEADO A LA DERECHA Y OPCIONES MÁS SEPARADAS ===== */
    @media (min-width:1200px){
      #mainMenu{
        display:flex !important;
        align-items:center !important;
        justify-content:flex-end !important;
        flex:1 1 auto !important;
        min-width:0 !important;
      }

      #mainMenu .navbar-nav{
        margin-left:auto !important;
        margin-right:18px !important;
        width:auto !important;
        flex:0 0 auto !important;
        justify-content:flex-end !important;
        gap:38px !important;
      }

      #mainMenu .nav-item{
        flex:0 0 auto !important;
      }

      .main-nav .nav-link{
        padding-left:0 !important;
        padding-right:0 !important;
        white-space:nowrap !important;
      }

      .btn-contact-nav{
        margin-left:20px !important;
        flex:0 0 auto !important;
      }
    }

    /* Ajuste específico notebook 14 pulgadas / 1366 px */
    @media (min-width:1200px) and (max-width:1499.98px){
      #mainMenu .navbar-nav{
        margin-left:auto !important;
        margin-right:12px !important;
        gap:28px !important;
      }

      .main-nav .nav-link{
        font-size:.91rem !important;
      }

      .btn-contact-nav{
        margin-left:16px !important;
      }
    }

    @media (min-width:1500px){
      #mainMenu .navbar-nav{
        margin-left:auto !important;
        margin-right:20px !important;
        gap:42px !important;
      }
    }


    /* ===== CTA PARALLAX PREMIUM ===== */
    .cta-band{
      position:relative !important;
      min-height:180px !important;
      background-image:
        linear-gradient(90deg,rgba(18,27,34,.90),rgba(18,27,34,.66)),
        url("https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&w=2200&q=88") !important;
      background-size:cover !important;
      background-position:center center !important;
      background-repeat:no-repeat !important;
      background-attachment:fixed !important;
      overflow:hidden !important;
      isolation:isolate;
    }

    .cta-band::before{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(90deg,rgba(11,22,31,.34),rgba(11,22,31,.10));
      z-index:-1;
      pointer-events:none;
    }

    .cta-band .container-xl{
      position:relative;
      z-index:2;
      min-height:180px;
    }

    /* En móviles se desactiva background-attachment:fixed por compatibilidad */
    @media (max-width:991.98px){
      .cta-band{
        background-attachment:scroll !important;
        background-position:center 55% !important;
      }
      .cta-band .container-xl{
        min-height:auto;
      }
    }


    /* ===== CORRECCIÓN V12: LOGO PERFECTAMENTE CENTRADO AL HACER SCROLL ===== */
    @media (min-width:1200px){
      /* Cuando el header entra en modo compacto, la barra superior ya se oculta.
         El logo debe centrarse únicamente dentro del navbar visible de 84px. */
      .main-nav.compact .brand-wrap,
      body.header-compact .main-nav .brand-wrap{
        height:84px !important;
        min-height:84px !important;
        margin-top:0 !important;
        padding:4px 0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        overflow:visible !important;
      }

      .main-nav.compact .brand-logo,
      body.header-compact .main-nav .brand-logo{
        position:relative !important;
        top:auto !important;
        left:auto !important;
        bottom:auto !important;
        transform:none !important;
        height:78px !important;
        width:auto !important;
        margin:0 !important;
        display:block !important;
        object-fit:contain !important;
        align-self:center !important;
      }
    }

    @media (min-width:1200px) and (max-width:1499.98px){
      .main-nav.compact .brand-logo,
      body.header-compact .main-nav .brand-logo{
        height:76px !important;
      }
    }



    /* ===== HERO CAROUSEL PREMIUM ===== */
    .hero{
      position:relative !important;
      min-height:620px !important;
      background:none !important;
      overflow:hidden !important;
      border-bottom:1px solid rgba(0,0,0,.04);
    }

    .hero-carousel,
    .hero-carousel .carousel-inner,
    .hero-carousel .carousel-item,
    .hero-slide{
      min-height:620px;
      height:620px;
    }

    .hero-carousel .carousel-item{
      position:relative;
    }

    .hero-slide{
      position:relative;
      display:flex;
      align-items:center;
      background-size:cover !important;
      background-position:center center !important;
      background-repeat:no-repeat !important;
    }

    .hero-slide::before{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(90deg, rgba(255,255,255,.93) 0%, rgba(255,255,255,.84) 20%, rgba(255,255,255,.48) 40%, rgba(255,255,255,.12) 60%, rgba(255,255,255,0) 76%);
      z-index:1;
    }

    .hero-slide .container-xl{
      position:relative;
      z-index:2;
      width:100%;
    }

    .hero-slide .hero-content{
      padding:92px 0 148px !important;
      max-width:760px;
    }

    .hero-slide .eyebrow{
      margin-bottom:14px !important;
    }

    .hero-slide h1{
      max-width:760px !important;
      margin:0 !important;
    }

    .hero-slide p{
      max-width:620px !important;
      margin-top:24px !important;
      font-size:1.02rem !important;
      line-height:1.66 !important;
    }

    .hero-carousel .carousel-indicators{
      left:0;
      right:0;
      bottom:108px;
      justify-content:flex-start;
      margin:0;
      padding-left:calc((100vw - min(1540px, 100vw) + 60px) / 2);
      gap:10px;
      z-index:4;
    }

    .hero-carousel .carousel-indicators button{
      width:36px;
      height:4px;
      border:0;
      border-radius:999px;
      margin:0;
      opacity:.35;
      background:#a0a7ad;
    }

    .hero-carousel .carousel-indicators button.active{
      opacity:1;
      background:var(--vp-red);
    }

    .hero-carousel .carousel-control-prev,
    .hero-carousel .carousel-control-next{
      width:52px;
      height:52px;
      top:auto;
      bottom:92px;
      opacity:1;
      border-radius:50%;
      background:rgba(255,255,255,.9);
      border:1px solid rgba(31,39,46,.08);
      box-shadow:0 6px 18px rgba(24,33,41,.10);
      z-index:4;
    }

    .hero-carousel .carousel-control-prev{
      left:auto;
      right:108px;
    }

    .hero-carousel .carousel-control-next{
      right:42px;
    }

    .hero-carousel .carousel-control-prev-icon,
    .hero-carousel .carousel-control-next-icon{
      width:16px;
      height:16px;
      filter:invert(16%) sepia(10%) saturate(483%) hue-rotate(167deg) brightness(95%) contrast(89%);
    }

    .hero-carousel .carousel-control-prev:hover,
    .hero-carousel .carousel-control-next:hover{
      background:#fff;
    }

    @media (max-width: 1399.98px){
      .hero,
      .hero-carousel,
      .hero-carousel .carousel-inner,
      .hero-carousel .carousel-item,
      .hero-slide{
        min-height:590px;
        height:590px;
      }
      .hero-slide .hero-content{padding:84px 0 146px !important;}
      .hero-carousel .carousel-indicators{padding-left:24px;bottom:104px;}
      .hero-carousel .carousel-control-prev{right:96px;bottom:88px;}
      .hero-carousel .carousel-control-next{right:30px;bottom:88px;}
    }

    @media (max-width: 991.98px){
      .hero,
      .hero-carousel,
      .hero-carousel .carousel-inner,
      .hero-carousel .carousel-item,
      .hero-slide{
        min-height:540px;
        height:540px;
      }
      .hero-slide::before{
        background:linear-gradient(90deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.82) 34%, rgba(255,255,255,.48) 58%, rgba(255,255,255,.10) 76%, rgba(255,255,255,0) 100%);
      }
      .hero-slide .hero-content{padding:74px 0 142px !important;}
      .hero-carousel .carousel-indicators{bottom:98px;padding-left:20px;}
      .hero-carousel .carousel-control-prev,
      .hero-carousel .carousel-control-next{bottom:84px;width:46px;height:46px;}
      .hero-carousel .carousel-control-prev{right:86px;}
      .hero-carousel .carousel-control-next{right:26px;}
    }

    @media (max-width: 767.98px){
      .hero,
      .hero-carousel,
      .hero-carousel .carousel-inner,
      .hero-carousel .carousel-item,
      .hero-slide{
        min-height:520px;
        height:520px;
      }
      .hero-slide::before{
        background:linear-gradient(90deg, rgba(255,255,255,.95) 0%, rgba(255,255,255,.85) 48%, rgba(255,255,255,.36) 76%, rgba(255,255,255,.08) 100%);
      }
      .hero-slide .hero-content{padding:64px 0 134px !important;}
      .hero-slide h1{font-size:2.55rem !important;}
      .hero-slide p{font-size:.92rem !important;}
      .hero-carousel .carousel-indicators{bottom:90px;gap:8px;padding-left:18px;}
      .hero-carousel .carousel-indicators button{width:28px;}
      .hero-carousel .carousel-control-prev,
      .hero-carousel .carousel-control-next{display:none;}
    }

    @media (max-width: 575.98px){
      .hero,
      .hero-carousel,
      .hero-carousel .carousel-inner,
      .hero-carousel .carousel-item,
      .hero-slide{
        min-height:500px;
        height:500px;
      }
      .hero-slide .hero-content{padding:58px 0 126px !important;max-width:100%;}
      .hero-slide h1{font-size:2.18rem !important;}
      .hero-slide p{max-width:95% !important;}
      .hero-carousel .carousel-indicators{bottom:82px;padding-left:17px;}
    }


    /* ===== FIX HERO CAROUSEL: OCUPA TODO EL ANCHO ===== */
    .hero{
      display:block !important;
      align-items:initial !important;
      width:100% !important;
    }
    .hero-carousel,
    .hero-carousel .carousel-inner,
    .hero-carousel .carousel-item,
    .hero-slide{
      width:100% !important;
      max-width:none !important;
    }
    .hero-carousel{
      display:block !important;
      flex:0 0 100% !important;
    }
    .hero-carousel .carousel-item{
      float:left !important;
    }



    /* ===== FLECHAS HERO TRANSPARENTES / PREMIUM ===== */
    .hero-carousel .carousel-control-prev,
    .hero-carousel .carousel-control-next{
      width:48px !important;
      height:48px !important;
      background:rgba(255,255,255,.22) !important;
      border:1px solid rgba(255,255,255,.42) !important;
      box-shadow:0 4px 16px rgba(18,25,31,.08) !important;
      backdrop-filter:blur(8px) saturate(120%) !important;
      -webkit-backdrop-filter:blur(8px) saturate(120%) !important;
      opacity:1 !important;
      transition:background .22s ease,border-color .22s ease,transform .22s ease,box-shadow .22s ease !important;
    }

    .hero-carousel .carousel-control-prev:hover,
    .hero-carousel .carousel-control-next:hover{
      background:rgba(255,255,255,.38) !important;
      border-color:rgba(255,255,255,.60) !important;
      box-shadow:0 6px 18px rgba(18,25,31,.12) !important;
      transform:translateY(-1px);
    }

    .hero-carousel .carousel-control-prev-icon,
    .hero-carousel .carousel-control-next-icon{
      width:18px !important;
      height:18px !important;
      opacity:.72 !important;
      filter:invert(20%) sepia(7%) saturate(540%) hue-rotate(164deg) brightness(90%) contrast(88%) !important;
    }

/* ===== INTEGRACIÓN CON PLATAFORMA AUTODMINISTRABLE ===== */
.property-title a{color:inherit;text-decoration:none}.property-title a:hover{color:var(--vp-red)}
.empty-card{min-height:410px;display:grid;place-items:center;text-align:center;border:1px dashed #dfe4e8;border-radius:12px;color:#7a858e;background:#fbfcfd;padding:30px}
.empty-card i{font-size:2rem;color:var(--vp-red);display:block;margin-bottom:10px}
.compare-check input.compare-input{accent-color:var(--vp-red)}
.vp-compare-tray{position:fixed;left:50%;bottom:22px;transform:translate(-50%,140%);z-index:1070;display:flex;align-items:center;gap:12px;min-width:min(650px,calc(100% - 32px));padding:10px 12px;background:#20262d;color:#fff;border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.23);transition:.25s ease}.vp-compare-tray.is-visible{transform:translate(-50%,0)}
.vp-compare-count{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--vp-red);font-weight:800}.vp-compare-copy{display:flex;flex-direction:column;flex:1;line-height:1.2}.vp-compare-copy strong{font-size:.78rem}.vp-compare-copy span{font-size:.66rem;color:#c8d0d6;margin-top:3px}.vp-compare-actions{display:flex;gap:8px}.vp-compare-clear,.vp-compare-go{border:1px solid #4e5962;border-radius:7px;padding:8px 12px;font-size:.68rem;font-weight:800;color:#fff;background:#2b333a}.vp-compare-go{background:var(--vp-red);border-color:var(--vp-red)}.vp-compare-go.is-disabled{opacity:.45;pointer-events:none}
.property-row-dynamic>.col-12{display:flex}.property-row-dynamic .property-card{width:100%}
@media(max-width:767.98px){.vp-compare-tray{bottom:12px;flex-wrap:wrap}.vp-compare-actions{width:100%}.vp-compare-actions>*{flex:1;text-align:center}}


/* =========================================================
   V16 — NAVBAR TOTALMENTE PLANO / SIN SOMBRA
   ========================================================= */
#mainNav,
.main-nav,
#mainNav.compact,
.main-nav.compact{
  box-shadow:none !important;
  -webkit-box-shadow:none !important;
  filter:none !important;
  border-bottom:0 !important;
}

/* Elimina cualquier sombra/gradiente creado con pseudo-elementos */
#mainNav::before,
.main-nav::before,
#mainNav::after,
.main-nav::after{
  content:none !important;
  display:none !important;
  box-shadow:none !important;
  background:none !important;
  border:0 !important;
}

/* La base blanca del header también queda completamente limpia */
.header-underlay{
  box-shadow:none !important;
  -webkit-box-shadow:none !important;
  border:0 !important;
  filter:none !important;
}
