/* =========================================================
   SAHR V22.6.32 — identidad global premium
   Navbar/footer unificados + catálogo corporativo + contacto Santiago
   Cargado al final para que index.php, propiedades.php, servicios.php,
   nosotros.php y contacto.php compartan la misma identidad visual.
   ========================================================= */

:root{
  --sahr-navy:#062d59;
  --sahr-navy-deep:#06192f;
  --sahr-blue:#075f9f;
  --sahr-blue-2:#0b82bb;
  --sahr-cyan:#17badf;
  --sahr-orange:#f2a313;
  --sahr-gold:#d2a03a;
  --sahr-btn-dark:#101317;
  --sahr-btn-dark-2:#27313a;
  --sahr-ink:#25384d;
  --sahr-line:#dfe9f0;
}

/* ---------------------------------------------------------
   NAVBAR PREMIUM — igual en todas las páginas
   --------------------------------------------------------- */
body[data-page] #mainNavbar.premium-navbar{
  height:92px!important;
  min-height:92px!important;
  background:rgba(255,255,255,.985)!important;
  border-bottom:1px solid rgba(6,45,89,.08)!important;
  box-shadow:0 5px 20px rgba(4,31,61,.09)!important;
  backdrop-filter:saturate(150%) blur(12px)!important;
  -webkit-backdrop-filter:saturate(150%) blur(12px)!important;
}
body[data-page] #mainNavbar .nav-accent-line{
  display:block!important;
  position:absolute!important;
  top:0!important;left:0!important;right:0!important;
  height:4px!important;
  opacity:1!important;
  z-index:5!important;
  background:linear-gradient(90deg,
    #08090b 0%,
    #111418 18%,
    #1c2127 52%,
    #2a3138 78%,
    #12161b 100%)!important;
  box-shadow:0 1px 8px rgba(16,19,23,.18)!important;
}
body[data-page] #mainNavbar .nav-inner{
  width:100%!important;
  max-width:1460px!important;
  margin:0 auto!important;
  padding-left:14px!important;
  padding-right:14px!important;
}
body[data-page] #mainNavbar .navbar-brand{
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  margin-right:18px!important;
  padding:0!important;
}
body[data-page] #mainNavbar .brand-frame{
  width:118px!important;
  min-width:118px!important;
  height:76px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
body[data-page] #mainNavbar .brand-logo{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:112px!important;
  max-height:70px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  filter:none!important;
}

/* Caja que encierra todas las opciones, estilo referencia premium */
body[data-page] #mainNavbar .nav-menu-shell{
  margin-left:4px!important;
  margin-right:auto!important;
  padding:6px 7px!important;
  background:linear-gradient(180deg,#fff 0%,#f7fafc 100%)!important;
  border:1px solid var(--sahr-line)!important;
  border-radius:999px!important;
  box-shadow:0 8px 18px rgba(5,42,76,.08),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
body[data-page] #mainNavbar .navbar-nav{gap:2px!important}
body[data-page] #mainNavbar .nav-link{
  position:relative!important;
  padding:.70rem .82rem!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#304157!important;
  font-family:'Manrope',sans-serif!important;
  font-size:.82rem!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.015em!important;
  box-shadow:none!important;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
body[data-page] #mainNavbar .nav-link::before,
body[data-page] #mainNavbar .nav-link::after{display:none!important}
body[data-page] #mainNavbar .nav-link:hover{
  color:var(--sahr-navy)!important;
  background:#f2f5f8!important;
  transform:none!important;
  box-shadow:none!important;
}
body[data-page] #mainNavbar .nav-link.active,
body[data-page] #mainNavbar .nav-link.active:hover{
  color:#fff!important;
  background:linear-gradient(135deg,var(--sahr-btn-dark),var(--sahr-btn-dark-2))!important;
  box-shadow:0 8px 18px rgba(10,14,20,.20)!important;
}
body[data-page] #mainNavbar .nav-actions{
  margin-left:auto!important;
  margin-right:0!important;
  gap:9px!important;
  flex-wrap:nowrap!important;
}
body[data-page] #mainNavbar .nav-phone{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:0 3px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
body[data-page] #mainNavbar .nav-phone-icon{
  width:34px!important;height:34px!important;
  display:grid!important;place-items:center!important;
  border-radius:10px!important;
  color:var(--sahr-navy)!important;
  background:#f2f5f8!important;
}
body[data-page] #mainNavbar .nav-phone-copy small{display:none!important}
body[data-page] #mainNavbar .nav-phone-copy strong{
  color:#2c4055!important;
  font-size:.82rem!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
body[data-page] #mainNavbar .btn-nav-cta{
  height:41px!important;
  min-width:0!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:10px!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--sahr-btn-dark),var(--sahr-btn-dark-2))!important;
  box-shadow:0 8px 18px rgba(10,14,20,.18)!important;
  font-size:.72rem!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
body[data-page] #mainNavbar .nav-whatsapp{
  min-height:41px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,var(--sahr-btn-dark),var(--sahr-btn-dark-2))!important;
  color:#fff!important;
  font-size:.76rem!important;
  font-weight:850!important;
  box-shadow:0 8px 18px rgba(10,14,20,.18)!important;
  white-space:nowrap!important;
}
body[data-page] #mainNavbar .nav-whatsapp i{color:#42db80!important}
body[data-page] #mainNavbar .nav-whatsapp:hover{
  background:linear-gradient(135deg,var(--sahr-btn-dark),var(--sahr-btn-dark-2))!important;
  color:#fff!important;
}
body[data-page] #mainNavbar .btn-nav-cta:hover{
  color:#fff!important;
  background:linear-gradient(135deg,#1b2128,var(--sahr-navy))!important;
  box-shadow:0 10px 22px rgba(10,14,20,.22)!important;
  transform:translateY(-1px)!important;
}
body[data-page] #mainNavbar.is-scrolled,
body[data-page] #mainNavbar.scrolled{height:78px!important;min-height:78px!important}
body[data-page] #mainNavbar.is-scrolled .brand-frame,
body[data-page] #mainNavbar.scrolled .brand-frame{height:62px!important;min-width:102px!important;width:102px!important;padding:5px 8px!important}
body[data-page] #mainNavbar.is-scrolled .brand-logo,
body[data-page] #mainNavbar.scrolled .brand-logo{height:50px!important;max-width:100%!important}
body[data-page] #mainNavbar.is-scrolled .nav-menu-shell,
body[data-page] #mainNavbar.scrolled .nav-menu-shell{padding:5px!important}
body[data-page] #mainNavbar.is-scrolled .nav-link,
body[data-page] #mainNavbar.scrolled .nav-link{font-size:.79rem!important;padding:.60rem .73rem!important}

/* ---------------------------------------------------------
   PROPIEDADES — botones y controles con paleta SAHR
   --------------------------------------------------------- */
body[data-page="propiedades"] .btn-brand,
body[data-page="propiedades"] .property-card__footer .btn,
body[data-page="propiedades"] .property-detail-btn-v7,
body[data-page="propiedades"] .catalog-filter .btn-primary,
body[data-page="propiedades"] .map-property-popup .btn-brand{
  border-color:var(--sahr-btn-dark)!important;
  background:linear-gradient(135deg,var(--sahr-btn-dark),var(--sahr-btn-dark-2))!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(10,14,20,.18)!important;
}
body[data-page="propiedades"] .btn-brand:hover,
body[data-page="propiedades"] .property-card__footer .btn:hover,
body[data-page="propiedades"] .property-detail-btn-v7:hover,
body[data-page="propiedades"] .catalog-filter .btn-primary:hover,
body[data-page="propiedades"] .map-property-popup .btn-brand:hover{
  border-color:var(--sahr-navy)!important;
  background:linear-gradient(135deg,#1b2128,var(--sahr-navy))!important;
  color:#fff!important;
}
body[data-page="propiedades"] .btn-outline-brand,
body[data-page="propiedades"] .catalog-view-switch .btn:not(.btn-brand),
body[data-page="propiedades"] .currency-toggle{
  border-color:#9fd7e8!important;
  background:#fff!important;
  color:var(--sahr-btn-dark)!important;
}
body[data-page="propiedades"] .btn-outline-brand:hover,
body[data-page="propiedades"] .btn-outline-brand.active,
body[data-page="propiedades"] .catalog-view-switch .btn.active,
body[data-page="propiedades"] .currency-toggle.active{
  border-color:var(--sahr-btn-dark)!important;
  background:var(--sahr-btn-dark)!important;
  color:#fff!important;
}
body[data-page="propiedades"] .property-card__prices strong,
body[data-page="propiedades"] .property-price,
body[data-page="propiedades"] .property-card__location i,
body[data-page="propiedades"] .property-location i{
  color:var(--sahr-blue-2)!important;
}
/* La cinta roja se conserva sólo como estado de venta. */
body[data-page="propiedades"] .property-state-ribbon,
body[data-page="propiedades"] .sale-ribbon-v8{background:#ef1625!important;color:#fff!important}

/* ---------------------------------------------------------
   FOOTER — el mismo de la portada en TODAS las páginas
   --------------------------------------------------------- */
body[data-page] .site-footer.site-footer-v7{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:#080808!important;
  color:#fff!important;
}
body[data-page] .site-footer-v7 .footer-top-line{
  display:block!important;
  height:3px!important;
  background:#171717!important;
}
body[data-page] .site-footer-v7 .footer-main-v7{
  max-width:1460px!important;
  padding-top:42px!important;
  padding-bottom:18px!important;
}
body[data-page] .site-footer-v7 .footer-brand-v7{
  display:inline-flex!important;
  align-items:center!important;
  padding:2px 12px!important;
  margin-bottom:15px!important;
  background:#fff!important;
  border-radius:11px!important;
}
body[data-page] .site-footer-v7 .footer-brand-v7 img{
  height:84px!important;
  width:auto!important;
  max-width:210px!important;
  object-fit:contain!important;
}
body[data-page] .site-footer-v7 h3{
  margin-bottom:15px!important;
  color:#fff!important;
  font-family:'Manrope',sans-serif!important;
  font-size:1.05rem!important;
  line-height:1.2!important;
  font-weight:900!important;
}
body[data-page] .site-footer-v7 p,
body[data-page] .site-footer-v7 li,
body[data-page] .site-footer-v7 a{
  color:rgba(255,255,255,.78)!important;
  font-family:'Manrope',sans-serif!important;
  font-size:.88rem!important;
  line-height:1.65!important;
}
body[data-page] .site-footer-v7 p{max-width:330px!important}
body[data-page] .site-footer-v7 ul{margin:0!important;padding:0!important;list-style:none!important}
body[data-page] .site-footer-v7 li{margin-bottom:7px!important}
body[data-page] .site-footer-v7 a{margin-bottom:0!important}
body[data-page] .site-footer-v7 a:hover{color:#fff!important}
body[data-page] .site-footer-v7 .social-links-v7{display:flex!important;gap:8px!important}
body[data-page] .site-footer-v7 .social-links-v7 a{
  width:38px!important;height:38px!important;
  display:grid!important;place-items:center!important;
  border:1px solid rgba(255,255,255,.15)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.05)!important;
  color:#fff!important;
  font-size:.92rem!important;
}
body[data-page] .site-footer-v7 .contact-list-v20{
  display:grid!important;
  gap:12px!important;
}
body[data-page] .site-footer-v7 .contact-list-v20 li{
  display:flex!important;
  align-items:flex-start!important;
  gap:12px!important;
  margin:0!important;
}
body[data-page] .site-footer-v7 .contact-list-v20 li i{
  width:18px!important;
  margin-top:4px!important;
  color:#fff!important;
  text-align:center!important;
}
body[data-page] .site-footer-v7 .footer-bottom-v7{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin-top:28px!important;
  padding-top:16px!important;
  border-top:1px solid rgba(255,255,255,.13)!important;
  color:rgba(255,255,255,.58)!important;
  font-size:.72rem!important;
}
body[data-page] .site-footer-v7 .footer-bottom-v7>div{display:flex!important;gap:20px!important}
body[data-page] .site-footer-v7 .footer-bottom-v7 a{display:inline!important;margin:0!important;font-size:.72rem!important}

/* ---------------------------------------------------------
   CONTACTO — Santiago premium
   --------------------------------------------------------- */
body[data-page="contacto"] .contact-page{margin-top:96px!important}
body[data-page="contacto"] .contact-page__head{
  position:relative!important;
  overflow:hidden!important;
  min-height:350px!important;
  padding:72px 0 82px!important;
  color:#fff!important;
  background:
    linear-gradient(90deg,rgba(3,24,52,.94) 0%,rgba(5,53,96,.83) 37%,rgba(8,99,145,.50) 61%,rgba(8,91,132,.14) 100%),
    linear-gradient(0deg,rgba(3,25,50,.18),rgba(3,25,50,.03)),
    url('../img/hero-santiago/hero-santiago-3.webp') center 48%/cover no-repeat!important;
}
body[data-page="contacto"] .contact-page__head::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:radial-gradient(circle at 72% 42%,rgba(23,186,223,.12),transparent 34%)!important;
}
body[data-page="contacto"] .contact-page__head::after{
  height:5px!important;
  background:linear-gradient(90deg,var(--sahr-navy),var(--sahr-cyan) 76%,var(--sahr-orange))!important;
}
body[data-page="contacto"] .contact-page__head .container-xl{position:relative!important;z-index:2!important}
body[data-page="contacto"] .contact-page__head .section-kicker{color:#88e6f5!important}
body[data-page="contacto"] .contact-page__head h1{
  max-width:760px!important;
  text-shadow:0 10px 32px rgba(0,0,0,.25)!important;
}
body[data-page="contacto"] .contact-page__head p{
  max-width:730px!important;
  color:rgba(255,255,255,.92)!important;
  text-shadow:0 3px 14px rgba(0,0,0,.18)!important;
}

/* Servicios / Nosotros: el contenido comienza justo después del navbar común. */
body[data-page="servicios"] .services-public-page,
body[data-page="nosotros"] .about-public-page,
body[data-page="pagina"] .cms-public-page{margin-top:96px!important}

/* ---------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------- */
@media (max-width:1399.98px){
  body[data-page] #mainNavbar .brand-frame{width:112px!important;min-width:112px!important;height:70px!important}
  body[data-page] #mainNavbar .brand-logo{height:56px!important;max-width:100%!important}
  body[data-page] #mainNavbar .nav-link{font-size:.76rem!important;padding:.64rem .58rem!important}
  body[data-page] #mainNavbar .nav-phone-copy strong{font-size:.72rem!important}
  body[data-page] #mainNavbar .btn-nav-cta{font-size:.67rem!important;padding:0 10px!important}
}
@media (max-width:1199.98px){
  body[data-page] #mainNavbar.premium-navbar{height:92px!important;min-height:92px!important}
  body[data-page] #mainNavbar .brand-frame{width:108px!important;min-width:108px!important;height:68px!important}
  body[data-page] #mainNavbar .brand-logo{height:54px!important;max-width:100%!important}
  body[data-page] #mainNavbar .nav-menu-shell{margin-left:7px!important}
  body[data-page] #mainNavbar .nav-link{font-size:.72rem!important;padding:.61rem .48rem!important}
  body[data-page] #mainNavbar .nav-phone-copy{display:none!important}
  body[data-page="contacto"] .contact-page,
  body[data-page="servicios"] .services-public-page,
  body[data-page="nosotros"] .about-public-page,
  body[data-page="pagina"] .cms-public-page{margin-top:92px!important}
}
@media (max-width:991.98px){
  body[data-page] #mainNavbar.premium-navbar{height:86px!important;min-height:86px!important}
  body[data-page] #mainNavbar .nav-accent-line{height:3px!important}
  body[data-page] #mainNavbar .brand-frame{width:102px!important;min-width:102px!important;height:64px!important;padding:5px 8px!important;border-right:1px solid rgba(6,25,47,.10)!important}
  body[data-page] #mainNavbar .brand-logo{height:51px!important;max-width:100%!important}
  body[data-page="contacto"] .contact-page,
  body[data-page="servicios"] .services-public-page,
  body[data-page="nosotros"] .about-public-page,
  body[data-page="pagina"] .cms-public-page{margin-top:86px!important}
  body[data-page] .site-footer-v7 .footer-main-v7{padding-top:36px!important}
}
@media (max-width:767.98px){
  body[data-page] #mainNavbar.premium-navbar{height:80px!important;min-height:80px!important}
  body[data-page] #mainNavbar .brand-frame{width:96px!important;min-width:96px!important;height:60px!important;padding:4px 8px!important;border-radius:15px!important}
  body[data-page] #mainNavbar .brand-logo{height:48px!important;max-width:100%!important}
  body[data-page="contacto"] .contact-page,
  body[data-page="servicios"] .services-public-page,
  body[data-page="nosotros"] .about-public-page,
  body[data-page="pagina"] .cms-public-page{margin-top:80px!important}
  body[data-page="contacto"] .contact-page__head{
    min-height:390px!important;
    padding:68px 0 82px!important;
    background:
      linear-gradient(90deg,rgba(3,24,52,.93) 0%,rgba(5,53,96,.78) 58%,rgba(8,99,145,.28) 100%),
      url('../img/hero-santiago/hero-santiago-3-mobile.webp') center 42%/cover no-repeat!important;
  }
  body[data-page="contacto"] .contact-page__head h1{font-size:clamp(2.25rem,11vw,3.2rem)!important}
  body[data-page] .site-footer-v7 .footer-main-v7{padding-top:32px!important;padding-bottom:90px!important}
  body[data-page] .site-footer-v7 .footer-bottom-v7{flex-direction:column!important;align-items:flex-start!important}
  body[data-page] .site-footer-v7 .footer-bottom-v7>div{flex-wrap:wrap!important;gap:10px 18px!important}
}

/* Ajuste específico de la portada, que usa el navbar Bootstrap colapsable. */
body[data-page="inicio"]{padding-top:96px!important}
@media (max-width:1199.98px){body[data-page="inicio"]{padding-top:92px!important}}
@media (max-width:991.98px){
  body[data-page="inicio"]{padding-top:86px!important}
  body[data-page="inicio"] #mainNavbar .navbar-toggler{
    margin-left:auto!important;
    color:var(--sahr-navy)!important;
  }
  body[data-page="inicio"] #mainNavbar .navbar-collapse{
    position:absolute!important;
    top:100%!important;
    left:14px!important;
    right:14px!important;
    margin:0!important;
    padding:12px!important;
    border:1px solid #dfe9f0!important;
    border-radius:0 0 18px 18px!important;
    background:rgba(255,255,255,.99)!important;
    box-shadow:0 16px 30px rgba(4,31,61,.14)!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-menu-shell{
    width:100%!important;
    margin:0 0 10px!important;
    padding:5px!important;
    border-radius:16px!important;
  }
  body[data-page="inicio"] #mainNavbar .navbar-nav{gap:3px!important}
  body[data-page="inicio"] #mainNavbar .nav-link{
    padding:.78rem .88rem!important;
    border-radius:11px!important;
    font-size:.84rem!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-actions{width:100%!important;margin:0!important}
  body[data-page="inicio"] #mainNavbar .nav-whatsapp{width:100%!important}
}
@media (max-width:767.98px){body[data-page="inicio"]{padding-top:80px!important}}

/* Altura real reservada para el navbar fijo en páginas internas. */
body[data-page="propiedades"],
body[data-page="detalle"],
body[data-page="servicios"],
body[data-page="nosotros"],
body[data-page="contacto"],
body[data-page="pagina"]{padding-top:96px!important}
body[data-page="contacto"] .contact-page,
body[data-page="servicios"] .services-public-page,
body[data-page="nosotros"] .about-public-page,
body[data-page="pagina"] .cms-public-page{margin-top:0!important}
@media (max-width:1199.98px){
  body[data-page="propiedades"],body[data-page="detalle"],body[data-page="servicios"],body[data-page="nosotros"],body[data-page="contacto"],body[data-page="pagina"]{padding-top:92px!important}
}
@media (max-width:991.98px){
  body[data-page="propiedades"],body[data-page="detalle"],body[data-page="servicios"],body[data-page="nosotros"],body[data-page="contacto"],body[data-page="pagina"]{padding-top:86px!important}
}
@media (max-width:767.98px){
  body[data-page="propiedades"],body[data-page="detalle"],body[data-page="servicios"],body[data-page="nosotros"],body[data-page="contacto"],body[data-page="pagina"]{padding-top:80px!important}
}

/* V22.6.32 — logo integrado, sin tarjeta y sin sobresalir del navbar */
body[data-page] #mainNavbar .navbar-brand{
  align-self:stretch!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
}
body[data-page] #mainNavbar .brand-frame{
  max-height:calc(100% - 10px)!important;
}
body[data-page] #mainNavbar .brand-logo{
  max-height:70px!important;
}
@media (max-width:1399.98px){
  body[data-page] #mainNavbar .brand-frame{width:112px!important;min-width:112px!important;height:72px!important;max-height:72px!important}
  body[data-page] #mainNavbar .brand-logo{max-width:106px!important;max-height:66px!important;height:auto!important}
}
@media (max-width:1199.98px){
  body[data-page] #mainNavbar .brand-frame{width:108px!important;min-width:108px!important;height:68px!important;max-height:68px!important}
  body[data-page] #mainNavbar .brand-logo{max-width:102px!important;max-height:62px!important;height:auto!important}
}
@media (max-width:991.98px){
  body[data-page] #mainNavbar .brand-frame{width:100px!important;min-width:100px!important;height:62px!important;max-height:62px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
  body[data-page] #mainNavbar .brand-logo{max-width:94px!important;max-height:56px!important;height:auto!important}
}
@media (max-width:767.98px){
  body[data-page] #mainNavbar .brand-frame{width:92px!important;min-width:92px!important;height:56px!important;max-height:56px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  body[data-page] #mainNavbar .brand-logo{max-width:86px!important;max-height:50px!important;height:auto!important}
}


/* =========================================================
   V22.6.35 — ajuste fino exclusivo del navbar de INDEX
   Logo más grande sin salirse del navbar + CTA proporcionado.
   ========================================================= */
@media (min-width: 992px){
  body[data-page="inicio"] #mainNavbar.premium-navbar{
    height:96px!important;
    min-height:96px!important;
  }
  body[data-page="inicio"] #mainNavbar .navbar-brand{
    height:100%!important;
    margin-right:22px!important;
    overflow:visible!important;
  }
  body[data-page="inicio"] #mainNavbar .brand-frame{
    width:136px!important;
    min-width:136px!important;
    height:84px!important;
    max-height:84px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  body[data-page="inicio"] #mainNavbar .brand-logo{
    width:auto!important;
    height:auto!important;
    max-width:128px!important;
    max-height:80px!important;
    margin:0!important;
    object-fit:contain!important;
    filter:none!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-actions{
    width:auto!important;
    min-width:max-content!important;
    margin-left:18px!important;
    gap:14px!important;
    flex:0 0 auto!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone{
    min-height:50px!important;
    gap:10px!important;
    padding:0!important;
    flex:0 0 auto!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone-icon{
    width:44px!important;
    height:44px!important;
    border-radius:13px!important;
    font-size:1rem!important;
    color:#11161b!important;
    background:#f3f5f7!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone-copy{
    display:block!important;
    line-height:1!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone-copy strong{
    display:block!important;
    font-size:.91rem!important;
    font-weight:850!important;
    color:#26394e!important;
  }
  body[data-page="inicio"] #mainNavbar .btn-nav-cta{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    height:50px!important;
    min-width:166px!important;
    padding:0 20px!important;
    border-radius:14px!important;
    font-size:.84rem!important;
    line-height:1!important;
    font-weight:850!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    background:linear-gradient(135deg,#11161b 0%,#252d35 100%)!important;
    box-shadow:0 9px 22px rgba(16,19,23,.18)!important;
  }
  body[data-page="inicio"] #mainNavbar .btn-nav-cta i{
    font-size:1rem!important;
    line-height:1!important;
  }
  body[data-page="inicio"]{padding-top:96px!important}
}

@media (min-width: 992px) and (max-width: 1199.98px){
  body[data-page="inicio"] #mainNavbar .brand-frame{
    width:122px!important;
    min-width:122px!important;
    height:80px!important;
  }
  body[data-page="inicio"] #mainNavbar .brand-logo{
    max-width:116px!important;
    max-height:76px!important;
  }
  body[data-page="inicio"] #mainNavbar .navbar-brand{margin-right:12px!important}
  body[data-page="inicio"] #mainNavbar .nav-actions{margin-left:10px!important;gap:9px!important}
  body[data-page="inicio"] #mainNavbar .nav-phone-copy{display:none!important}
  body[data-page="inicio"] #mainNavbar .btn-nav-cta{
    min-width:145px!important;
    height:46px!important;
    padding:0 14px!important;
    font-size:.76rem!important;
  }
}

@media (max-width: 991.98px){
  body[data-page="inicio"] #mainNavbar .brand-frame{
    width:112px!important;
    min-width:112px!important;
    height:68px!important;
    max-height:68px!important;
  }
  body[data-page="inicio"] #mainNavbar .brand-logo{
    max-width:106px!important;
    max-height:64px!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-actions{
    width:100%!important;
    margin:8px 0 0!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone{
    flex:1 1 auto!important;
  }
  body[data-page="inicio"] #mainNavbar .btn-nav-cta{
    min-width:150px!important;
    height:46px!important;
    padding:0 14px!important;
    font-size:.78rem!important;
  }
}

@media (max-width: 767.98px){
  body[data-page="inicio"] #mainNavbar .brand-frame{
    width:104px!important;
    min-width:104px!important;
    height:62px!important;
    max-height:62px!important;
  }
  body[data-page="inicio"] #mainNavbar .brand-logo{
    max-width:98px!important;
    max-height:58px!important;
  }
}


/* =========================================================
   V22.6.35 — DETALLE SIN SEPARACIÓN + PALETA NEGRA
   ========================================================= */
/* El body ya reserva el alto del navbar. Evita el doble espacio que añadía
   v22-detail-premium.css al <main>. */
body[data-page="detalle"] main{
  padding-top:0!important;
  margin-top:0!important;
}
body[data-page="detalle"] .detail-page-head{
  margin-top:0!important;
}

/* Negro corporativo para controles, etiquetas e iconografía de la ficha. */
body[data-page="detalle"]{
  --detail-blue:#111317!important;
  --detail-cyan:#2a2f34!important;
  --detail-orange:#111317!important;
  --detail-navy:#0c0d0f!important;
  --detail-navy-2:#171a1e!important;
}
body[data-page="detalle"] .detail-breadcrumb a,
body[data-page="detalle"] .detail-location i,
body[data-page="detalle"] .metric-card i,
body[data-page="detalle"] .info-banner i,
body[data-page="detalle"] .features-card .text-danger,
body[data-page="detalle"] .location-card .text-danger,
body[data-page="detalle"] .feature-list i,
body[data-page="detalle"] .sticky-contact .section-kicker,
body[data-page="detalle"] .sticky-contact .contact-kicker,
body[data-page="detalle"] .similar-section .section-kicker,
body[data-page="detalle"] .similar-section .section-link,
body[data-page="detalle"] .similar-section .property-location i,
body[data-page="detalle"] .similar-section .property-meta i{
  color:#111317!important;
}
body[data-page="detalle"] .perimeter-legend i{background:#111317!important}
body[data-page="detalle"] .detail-title-card .badge-red,
body[data-page="detalle"] .similar-section .badge-property,
body[data-page="detalle"] .similar-section .badge-project{
  background:#111317!important;
  color:#fff!important;
}
body[data-page="detalle"] .detail-title-card .badge-gold{
  background:#f5f5f5!important;
  border-color:#d9d9d9!important;
  color:#111317!important;
}
body[data-page="detalle"] .detail-title-card .badge-gold i{color:#111317!important}

body[data-page="detalle"] .btn-brand,
body[data-page="detalle"] .btn-facebook-share,
body[data-page="detalle"] .contact-submit,
body[data-page="detalle"] .contact-quick-actions .btn-brand,
body[data-page="detalle"] .similar-section .property-detail-btn-v7{
  background:linear-gradient(135deg,#0c0d0f,#272c31)!important;
  border-color:#0c0d0f!important;
  color:#fff!important;
  box-shadow:0 7px 18px rgba(0,0,0,.16)!important;
}
body[data-page="detalle"] .btn-brand:hover,
body[data-page="detalle"] .btn-facebook-share:hover,
body[data-page="detalle"] .contact-submit:hover,
body[data-page="detalle"] .contact-quick-actions .btn-brand:hover,
body[data-page="detalle"] .similar-section .property-detail-btn-v7:hover{
  background:#000!important;
  border-color:#000!important;
  color:#fff!important;
}
body[data-page="detalle"] .btn-outline-brand,
body[data-page="detalle"] .contact-quick-actions .btn-outline-brand{
  border-color:#aeb4ba!important;
  background:#fff!important;
  color:#111317!important;
}
body[data-page="detalle"] .btn-outline-brand:hover,
body[data-page="detalle"] .contact-quick-actions .btn-outline-brand:hover{
  border-color:#111317!important;
  background:#111317!important;
  color:#fff!important;
}
body[data-page="detalle"] .btn-brand i,
body[data-page="detalle"] .btn-facebook-share i,
body[data-page="detalle"] .contact-submit i,
body[data-page="detalle"] .contact-quick-actions .btn-brand i,
body[data-page="detalle"] .similar-section .property-detail-btn-v7 i{
  color:#fff!important;
}
body[data-page="detalle"] .btn-outline-brand i,
body[data-page="detalle"] .contact-quick-actions .btn-outline-brand i{color:#111317!important}
body[data-page="detalle"] .btn-outline-brand:hover i,
body[data-page="detalle"] .contact-quick-actions .btn-outline-brand:hover i{color:#fff!important}
body[data-page="detalle"] .similar-section .property-price{color:#111317!important}
body[data-page="detalle"] .similar-section .swiper-pagination-bullet-active{background:#111317!important}

/* =========================================================
   FOOTER NEGRO — TODO EL SITIO
   ========================================================= */
body[data-page] .site-footer.site-footer-v7,
body[data-page] .site-footer-v7{
  background:#080808!important;
  background-image:none!important;
  color:#fff!important;
}
body[data-page] .site-footer-v7 .footer-top-line{
  background:#171717!important;
  background-image:none!important;
}
body[data-page] .site-footer-v7 h3{color:#fff!important}
body[data-page] .site-footer-v7 p,
body[data-page] .site-footer-v7 li,
body[data-page] .site-footer-v7 a{color:rgba(255,255,255,.78)!important}
body[data-page] .site-footer-v7 a:hover{color:#fff!important}
body[data-page] .site-footer-v7 .contact-list-v20 li i{color:#fff!important}
body[data-page] .site-footer-v7 .social-links-v7 a{
  background:#111!important;
  border-color:#2b2b2b!important;
  color:#fff!important;
}
body[data-page] .site-footer-v7 .footer-bottom-v7{border-top-color:#282828!important}


/* =========================================================
   V22.6.36 — NOSOTROS APILADO: título arriba, contenido abajo
   ========================================================= */
body[data-page="nosotros"] .about-editorial-card{
  display:block!important;
  grid-template-columns:1fr!important;
  gap:0!important;
}
body[data-page="nosotros"] .about-editorial-heading{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  padding-right:0!important;
  margin:0 0 24px!important;
}
body[data-page="nosotros"] .about-editorial-heading .section-kicker,
body[data-page="nosotros"] .about-editorial-heading h1,
body[data-page="nosotros"] .about-gold-line{
  display:block!important;
}
body[data-page="nosotros"] .about-editorial-content{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
}
body[data-page="nosotros"] .about-editorial-content > *:first-child{
  margin-top:0!important;
}
@media (max-width: 767.98px){
  body[data-page="nosotros"] .about-editorial-heading{
    margin-bottom:18px!important;
  }
}


/* =========================================================
   V22.6.37 — INDEX MÓVIL
   Teléfono visible + CTA proporcionado + flechas del hero fuera del texto.
   Sólo afecta <= 991.98px; escritorio conserva el diseño actual.
   ========================================================= */
@media (max-width: 991.98px){
  body[data-page="inicio"] #mainNavbar .navbar-collapse{
    padding:12px!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    margin:8px 0 0!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone{
    min-width:0!important;
    width:100%!important;
    min-height:44px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:0 6px!important;
    overflow:hidden!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone-icon{
    flex:0 0 34px!important;
    width:34px!important;
    height:34px!important;
    border-radius:10px!important;
    font-size:.86rem!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone-copy{
    display:block!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone-copy small{
    display:none!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone-copy strong{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#26394e!important;
    font-size:.76rem!important;
    line-height:1.15!important;
    font-weight:850!important;
  }
  body[data-page="inicio"] #mainNavbar .btn-nav-cta{
    width:auto!important;
    min-width:136px!important;
    max-width:none!important;
    height:44px!important;
    padding:0 12px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    border-radius:12px!important;
    font-size:.72rem!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  body[data-page="inicio"] #mainNavbar .btn-nav-cta i{
    flex:0 0 auto!important;
    font-size:.92rem!important;
  }
}

@media (max-width: 575.98px){
  body[data-page="inicio"] #mainNavbar .navbar-collapse{
    left:8px!important;
    right:8px!important;
    padding:10px!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-actions{
    grid-template-columns:minmax(0,1fr) 132px!important;
    gap:6px!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone{
    padding:0 2px!important;
    gap:6px!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone-icon{
    flex-basis:32px!important;
    width:32px!important;
    height:32px!important;
  }
  body[data-page="inicio"] #mainNavbar .nav-phone-copy strong{
    font-size:.70rem!important;
    letter-spacing:-.02em!important;
  }
  body[data-page="inicio"] #mainNavbar .btn-nav-cta{
    min-width:132px!important;
    width:132px!important;
    height:42px!important;
    padding:0 8px!important;
    gap:5px!important;
    font-size:.68rem!important;
  }
}

@media (max-width: 767.98px){
  /* El carrusel principal acepta gesto horizontal sin bloquear el scroll vertical. */
  body[data-page="inicio"] #heroCarousel,
  body[data-page="inicio"] #heroCarousel .carousel-inner,
  body[data-page="inicio"] #heroCarousel .carousel-item,
  body[data-page="inicio"] #heroCarousel .hero-slide{
    touch-action:pan-y pinch-zoom!important;
  }
  /* Controles juntos arriba a la derecha: quedan fuera del bloque de título. */
  body[data-page="inicio"] #heroCarousel .hero-carousel-arrow{
    top:18px!important;
    bottom:auto!important;
    width:40px!important;
    height:40px!important;
    opacity:1!important;
    transform:none!important;
    z-index:40!important;
  }
  body[data-page="inicio"] #heroCarousel .hero-carousel-arrow-prev{
    left:auto!important;
    right:54px!important;
  }
  body[data-page="inicio"] #heroCarousel .hero-carousel-arrow-next{
    left:auto!important;
    right:8px!important;
  }
  body[data-page="inicio"] #heroCarousel .hero-carousel-arrow-icon{
    width:34px!important;
    height:34px!important;
    font-size:.82rem!important;
    background:rgba(9,12,15,.70)!important;
    border-color:rgba(255,255,255,.75)!important;
  }
  body[data-page="inicio"] #heroCarousel .hero-content{
    padding-top:74px!important;
  }
}


/* =========================================================
   V22.6.38 — MENÚ MÓVIL UNIFICADO + PALETA NEGRA
   - El menú hamburguesa de páginas internas se despliega debajo del navbar,
     igual que en index.php; no usa offcanvas lateral.
   - Se eliminan acentos celestes/azules de interfaz y todos los ribetes
     decorativos quedan negros.
   - Flechas del hero abajo en celular.
   ========================================================= */
:root{
  --sahr-navy:#111317;
  --sahr-navy-deep:#08090b;
  --sahr-blue:#111317;
  --sahr-blue-2:#24282d;
  --sahr-cyan:#24282d;
  --sahr-orange:#111317;
  --pj-navy:#111317;
  --pj-navy-2:#1b1f23;
  --pj-blue:#111317;
  --pj-cyan:#22262a;
  --pj-orange:#111317;
  --pj-soft:#f5f6f7;
  --pj-soft-blue:#f3f4f5;
  --pj-line:#dedfe1;
  --blue:#111317;
  --cyan:#22262a;
  --cyan-2:#30353a;
  --orange:#111317;
  --navy:#111317;
  --navy-2:#1b1f23;
  --navy-3:#252a2f;
  --soft:#f5f6f7;
  --soft-blue:#f3f4f5;
  --line:#dedfe1;
  --sahr-hero-cyan:#fff;
  --sahr-hero-cyan-soft:#fff;
}

/* Ribetes: exclusivamente negro/gris negro. */
body[data-page] #mainNavbar .nav-accent-line,
body[data-page] .site-footer-v7 .footer-top-line,
body[data-page="contacto"] .contact-page__head::after,
body[data-page="servicios"] .services-public-card::before,
body[data-page="pagina"] .cms-public-card::before,
body[data-page="nosotros"] .about-editorial-card::before,
body[data-page="nosotros"] .about-gold-line{
  background:#111317!important;
  background-image:none!important;
  box-shadow:none!important;
}
body[data-page] #mainNavbar .nav-accent-line{height:4px!important}
body[data-page="contacto"] .contact-page__head::after{height:3px!important}

/* Interfaz neutra, sin celestes. */
body[data-page] #mainNavbar .nav-menu-shell{
  background:linear-gradient(180deg,#fff 0%,#f5f5f5 100%)!important;
  border-color:#e0e0e0!important;
}
body[data-page] #mainNavbar .nav-link:hover{
  color:#111317!important;
  background:#f1f1f1!important;
}
body[data-page] #mainNavbar .nav-phone-icon{
  color:#111317!important;
  background:#f1f2f3!important;
}
body[data-page="servicios"] .page-breadcrumb a,
body[data-page="nosotros"] .page-breadcrumb a,
body[data-page="pagina"] .page-breadcrumb a,
body[data-page="contacto"] .general-contact-card__heading .section-kicker,
body[data-page="contacto"] .contact-side-card>.section-kicker,
body[data-page="contacto"] .quick-message-title i,
body[data-page="nosotros"] .about-editorial-heading .section-kicker,
body[data-page="nosotros"] .about-editorial-content h3,
body[data-page="nosotros"] .about-benefits-card .benefit-item>i{
  color:#111317!important;
}
body[data-page="contacto"] .contact-page__head .section-kicker{
  color:#fff!important;
}
body[data-page="contacto"] .form-control:focus,
body[data-page="contacto"] .form-select:focus{
  border-color:#111317!important;
  box-shadow:0 0 0 .2rem rgba(17,19,23,.08)!important;
}
body[data-page="contacto"] .quick-message-panel{
  background:#f7f7f7!important;
  border-color:#dedfe1!important;
}
body[data-page="nosotros"] .about-editorial-content li{
  background:#fafafa!important;
  border-color:#e1e1e1!important;
}
body[data-page="nosotros"] .about-editorial-content li::before{
  background:#111317!important;
  box-shadow:0 0 0 3px rgba(17,19,23,.10)!important;
}

/* Hero de index: recuperar acentos corporativos como referencia visual. */
body[data-page="inicio"] .hero-kicker,
body[data-page="inicio"] .hero-btn-dark i{
  color:#fff!important;
}
body[data-page="inicio"] .hero-title .hero-accent{
  color:#1ec8f6!important;
  text-shadow:0 0 28px rgba(30,200,246,.12)!important;
}
body[data-page="inicio"] .hero-kicker::before,
body[data-page="inicio"] .hero-carousel .carousel-indicators .active{
  background:#1ec8f6!important;
  box-shadow:0 0 16px rgba(30,200,246,.28)!important;
}
body[data-page="inicio"] .hero-btn-light i{color:#111317!important}
body[data-page="inicio"] .hero-btn-light:hover{
  background:#f2f2f2!important;
  border-color:#f2f2f2!important;
  color:#111317!important;
}
body[data-page="inicio"] .hero-btn-dark:hover{border-color:#fff!important}

/* Un solo patrón de menú hamburguesa en todas las páginas. */
@media (max-width:991.98px){
  body[data-page] #mainNavbar .navbar-toggler{
    margin-left:auto!important;
    color:#111317!important;
  }
  body[data-page] #mainNavbar .menu-toggle-icon{
    background:#111317!important;
    color:#fff!important;
  }
  body[data-page] #mainNavbar .navbar-collapse{
    position:absolute!important;
    top:100%!important;
    left:14px!important;
    right:14px!important;
    margin:0!important;
    padding:12px!important;
    border:1px solid #dedfe1!important;
    border-radius:0 0 18px 18px!important;
    background:rgba(255,255,255,.995)!important;
    box-shadow:0 16px 30px rgba(0,0,0,.14)!important;
    max-height:calc(100vh - 96px)!important;
    overflow-y:auto!important;
    z-index:1060!important;
  }
  body[data-page] #mainNavbar .nav-menu-shell{
    width:100%!important;
    margin:0 0 10px!important;
    padding:5px!important;
    border-radius:16px!important;
  }
  body[data-page] #mainNavbar .navbar-nav{gap:3px!important}
  body[data-page] #mainNavbar .nav-link{
    padding:.78rem .88rem!important;
    border-radius:11px!important;
    font-size:.84rem!important;
  }
  body[data-page] #mainNavbar .nav-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    margin:8px 0 0!important;
  }
  body[data-page] #mainNavbar .nav-phone{
    min-width:0!important;
    width:100%!important;
    min-height:44px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:0 6px!important;
    overflow:hidden!important;
  }
  body[data-page] #mainNavbar .nav-phone-copy{
    display:block!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  body[data-page] #mainNavbar .nav-phone-copy small{display:none!important}
  body[data-page] #mainNavbar .nav-phone-copy strong{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#26313a!important;
    font-size:.76rem!important;
    line-height:1.15!important;
  }
  body[data-page] #mainNavbar .btn-nav-cta{
    width:auto!important;
    min-width:136px!important;
    height:44px!important;
    padding:0 12px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    border-radius:12px!important;
    font-size:.72rem!important;
    white-space:nowrap!important;
  }
}
@media (max-width:575.98px){
  body[data-page] #mainNavbar .navbar-collapse{
    left:8px!important;
    right:8px!important;
    padding:10px!important;
  }
  body[data-page] #mainNavbar .nav-actions{
    grid-template-columns:minmax(0,1fr) 132px!important;
    gap:6px!important;
  }
  body[data-page] #mainNavbar .nav-phone{padding:0 2px!important;gap:6px!important}
  body[data-page] #mainNavbar .nav-phone-copy strong{font-size:.70rem!important;letter-spacing:-.02em!important}
  body[data-page] #mainNavbar .btn-nav-cta{
    min-width:132px!important;
    width:132px!important;
    height:42px!important;
    padding:0 8px!important;
    gap:5px!important;
    font-size:.68rem!important;
  }
}

/* Hero móvil: flechas abajo, lejos del título. El swipe táctil se mantiene. */
@media (max-width:767.98px){
  body[data-page="inicio"] #heroCarousel,
  body[data-page="inicio"] #heroCarousel .carousel-inner,
  body[data-page="inicio"] #heroCarousel .carousel-item,
  body[data-page="inicio"] #heroCarousel .hero-slide{
    touch-action:pan-y pinch-zoom!important;
  }
  body[data-page="inicio"] #heroCarousel .hero-carousel-arrow{
    top:auto!important;
    bottom:14px!important;
    width:40px!important;
    height:40px!important;
    transform:none!important;
    opacity:1!important;
    z-index:40!important;
  }
  body[data-page="inicio"] #heroCarousel .hero-carousel-arrow-prev{
    left:auto!important;
    right:54px!important;
  }
  body[data-page="inicio"] #heroCarousel .hero-carousel-arrow-next{
    left:auto!important;
    right:8px!important;
  }
  body[data-page="inicio"] #heroCarousel .hero-carousel-arrow-icon{
    width:34px!important;
    height:34px!important;
    font-size:.82rem!important;
    background:rgba(9,12,15,.82)!important;
    border-color:rgba(255,255,255,.78)!important;
  }
  body[data-page="inicio"] #heroCarousel .hero-content{
    padding-top:72px!important;
    padding-bottom:110px!important;
  }
}


/* V22.6.39: hero con acentos celestes corporativos restaurados. */
