/*
Theme Name: Valle Alto Inmobiliaria
Description: Tema hijo personalizado de ListingHive para Valle Alto Inmobiliaria.
Author: Novacorex
Version: 7.0.0
Template: listinghive
Text Domain: valle-alto-inmobiliaria
*/

/* Tema seguro: no reemplaza plantillas de ListingHive/HivePress. */

:root{
    --va-orange:#E84E1B;
    --va-black:#151515;
    --va-gray:#575756;
    --va-border:#e7e7e4;
}

/* ===== BASE ===== */
body{
    background:#fff;
    color:var(--va-black);
    font-family:Arial,Helvetica,sans-serif;
}
a{color:var(--va-black)}
a:hover{color:var(--va-orange)}

h1,h2,h3,h4,h5,h6{
    color:var(--va-black);
    font-weight:600;
    letter-spacing:-.02em;
}

/* ===== HEADER ===== */
/* Un poco más alto para que el logo pueda respirar. */
.site-header{
    background:#fff !important;
    border-bottom:1px solid var(--va-border) !important;
    box-shadow:0 2px 16px rgba(0,0,0,.035) !important;
}

.header-navbar{
    min-height:96px !important;
    height:96px !important;
    padding:0 42px !important;
    background:#fff !important;
    box-sizing:border-box !important;
}

.header-navbar__start{
    min-width:0 !important;
    height:96px !important;
    display:flex !important;
    align-items:center !important;
}

.header-navbar__end{
    height:96px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:18px !important;
}

/* Logo: ligeramente más grande y separado del borde izquierdo. */
.header-logo{
    width:225px !important;
    max-width:225px !important;
    height:82px !important;
    max-height:82px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    overflow:hidden !important;
}

.header-logo a.custom-logo-link{
    display:flex !important;
    align-items:center !important;
    width:225px !important;
    max-width:225px !important;
    height:82px !important;
    max-height:82px !important;
    margin:0 !important;
    padding:0 !important;
}

.header-logo a.custom-logo-link img.custom-logo,
.header-logo img.custom-logo{
    display:block !important;
    width:auto !important;
    max-width:215px !important;
    height:auto !important;
    max-height:78px !important;
    object-fit:contain !important;
    margin:0 !important;
}

/* Menú */
.header-navbar__menu{
    margin:0 !important;
    padding:0 !important;
}

.header-navbar__menu > ul{
    display:flex !important;
    align-items:center !important;
    gap:2px !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

.header-navbar__menu > ul > li{
    margin:0 !important;
    padding:0 !important;
}

.header-navbar__menu > ul > li > a{
    display:block !important;
    padding:11px 13px !important;
    color:var(--va-black) !important;
    font-size:13px !important;
    line-height:1.2 !important;
    font-weight:600 !important;
    letter-spacing:.035em !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
    border-radius:3px !important;
}

.header-navbar__menu > ul > li > a:hover,
.header-navbar__menu > ul > li.current-menu-item > a{
    color:var(--va-orange) !important;
    background:rgba(232,78,27,.055) !important;
}

.header-navbar__actions{
    display:flex !important;
    align-items:center !important;
}

.header-navbar__actions .hp-button{
    background:var(--va-orange) !important;
    border-color:var(--va-orange) !important;
    color:#fff !important;
    border-radius:3px !important;
}

/* ===== HIVEPRESS SEARCH ===== */
.hp-form--listing-search{
    background:#fff !important;
    border:1px solid var(--va-border) !important;
    border-radius:4px !important;
    box-shadow:0 10px 32px rgba(0,0,0,.07) !important;
    padding:16px !important;
}

.hp-form--listing-search input,
.hp-form--listing-search select{
    min-height:46px !important;
    border-color:#dcdcd8 !important;
    border-radius:3px !important;
}

button,
input[type="submit"],
.hp-button--primary{
    background:var(--va-orange) !important;
    border-color:var(--va-orange) !important;
    color:#fff !important;
    border-radius:3px !important;
    font-weight:600 !important;
}

button:hover,
input[type="submit"]:hover,
.hp-button--primary:hover{
    opacity:.90 !important;
}

/* ===== PROPERTY CARDS ===== */
.hp-listing{
    background:#fff !important;
    border:1px solid var(--va-border) !important;
    border-radius:4px !important;
    overflow:hidden !important;
    box-shadow:0 4px 22px rgba(0,0,0,.045) !important;
    transition:transform .2s ease,box-shadow .2s ease !important;
}

.hp-listing:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 12px 34px rgba(0,0,0,.09) !important;
}

.hp-listing__title a{
    color:var(--va-black) !important;
    font-weight:600 !important;
}

.hp-listing__title a:hover{color:var(--va-orange) !important}
.hp-listing__price{color:var(--va-orange) !important;font-weight:700 !important}
.hp-listing__attribute,
.hp-listing__attributes{color:var(--va-gray) !important}

.hp-category{
    background:#fff !important;
    border:1px solid var(--va-border) !important;
    border-radius:4px !important;
    box-shadow:0 4px 18px rgba(0,0,0,.04) !important;
}

/* ===== FORMS ===== */
input:focus,
select:focus,
textarea:focus{
    border-color:var(--va-orange) !important;
    box-shadow:0 0 0 2px rgba(232,78,27,.10) !important;
    outline:none !important;
}

/* ===== FOOTER ===== */
.site-footer{
    background:#F1F2F2 !important;
    color:#151515 !important;
}
.site-footer a{color:#fff !important}
.site-footer a:hover{color:var(--va-orange) !important}

/* ===== MOBILE ===== */
@media(max-width:768px){
    .header-navbar{
        min-height:72px !important;
        height:72px !important;
        padding:0 18px !important;
    }

    .header-navbar__start,
    .header-navbar__end{
        height:72px !important;
    }

    .header-logo{
        width:155px !important;
        max-width:155px !important;
        height:60px !important;
        max-height:60px !important;
    }

    .header-logo a.custom-logo-link{
        width:155px !important;
        max-width:155px !important;
        height:60px !important;
        max-height:60px !important;
    }

    .header-logo a.custom-logo-link img.custom-logo,
    .header-logo img.custom-logo{
        max-width:150px !important;
        max-height:55px !important;
    }

    .header-navbar__menu{display:none !important}
    .header-navbar__burger{display:block !important}
    .header-navbar__actions{display:none !important}
}


/* =========================================================
   PÁGINAS DE CONTENIDO — EXPERIENCIA A ANCHO COMPLETO
   Afecta páginas normales de WordPress (Inicio, Nosotros,
   Servicios, Contacto y Propiedades) sin tocar el archivo
   de anuncios individual de HivePress.
   ========================================================= */
.va-standard-page .site-content > .container {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.va-standard-page .content-area,
.va-standard-page .page__content,
.va-standard-page .page__text {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* El título automático de ListingHive no se usa: cada página
   diseñada con Gemini tendrá su propia jerarquía visual. */
.va-standard-page .page__header,
.va-standard-page .page__title {
  display: none !important;
}

.va-standard-page .page__text > :first-child,
.va-standard-page .page__content > :first-child {
  margin-top: 0 !important;
}

/* Evita que el contenido creado en el editor herede márgenes
   laterales inesperados del tema. */
.va-standard-page .site-content .container > .content-area {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

@media(max-width:768px){
  .va-standard-page .site-content > .container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}


/* =========================================================
   v7 — PROPIEDADES + FOOTER CORPORATIVO
   ========================================================= */

/* Propiedades: el contenido HivePress necesita aire lateral,
   mientras que las páginas diseñadas con Gemini siguen full-width. */
.va-propiedades-page .site-content > .container {
  width: 100% !important;
  max-width: 1440px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 42px !important;
  padding-right: 42px !important;
  box-sizing: border-box !important;
}

.va-propiedades-page .site-content,
.va-propiedades-page .content-area {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Fuerza la presencia del header/menu en Propiedades. */
body.va-propiedades-page .site-header,
body.va-propiedades-page .header-navbar {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.va-propiedades-page .header-navbar__menu {
  display: block !important;
  visibility: visible !important;
}

/* Oculta únicamente la navegación/footer básico de ListingHive,
   conservando el contenedor footer donde insertamos el corporativo. */
.site-footer .footer-widgets,
.site-footer .footer-navbar {
  display: none !important;
}

.site-footer > .container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.va-footer-custom {
  width: 100%;
  background: #F1F2F2;
  color: #151515;
}

.va-footer-custom__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 72px 42px 58px;
  display: grid;
  grid-template-columns: minmax(280px, 1.7fr) minmax(160px, .8fr) minmax(240px, 1fr);
  gap: 70px;
  box-sizing: border-box;
}

.va-footer-custom__brand img {
  display: block;
  width: 190px;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  margin-bottom: 24px;
}

.va-footer-custom__brand p {
  margin: 0;
  max-width: 330px;
  color: #575756;
  font-size: 15px;
  line-height: 1.7;
}

.va-footer-custom__column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 11px;
}

.va-footer-custom__column h3 {
  margin: 0 0 12px;
  color: #151515;
  font-size: 13px;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.va-footer-custom__column a,
.va-footer-custom__column span {
  color: #575756 !important;
  font-size: 14px;
  line-height: 1.6;
  text-decoration: none !important;
}

.va-footer-custom__column a:hover {
  color: #E84E1B !important;
}

.va-footer-custom__bottom {
  max-width: 1440px;
  margin: 0 auto;
  padding: 20px 42px 24px;
  border-top: 1px solid #D9DADA;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: #777 !important;
  font-size: 12px;
  box-sizing: border-box;
}

@media(max-width:768px){
  .va-propiedades-page .site-content > .container {
    max-width: none !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .va-footer-custom__inner {
    grid-template-columns: 1fr;
    gap: 42px;
    padding: 52px 24px 42px;
  }

  .va-footer-custom__bottom {
    padding: 18px 24px 22px;
    flex-direction: column;
    gap: 6px;
  }
}
