/* ==========================================================================
   MINMUEBLES ARCO — Estilos Página de Contacto (contacto.php)
   ========================================================================== */

/* ==========================================================================
   PÁGINA DEDICADA DE CONTACTO (CONTÁCTANOS)
   ========================================================================== */
.contacto-pagina{
  padding-top:clamp(160px,22vw,250px);
  padding-bottom:clamp(80px,12vw,160px);
  background:var(--negro);
  min-height:85vh;
}
.contacto-pagina__titulo{
  font-size:clamp(2.4rem,4.6vw,3.8rem);
  font-weight:300;
  letter-spacing:.04em;
  text-transform:uppercase;
  line-height:1.1;
  color:#fff;
  margin-bottom:clamp(40px,6vw,70px);
}
.contacto-pagina__grid{
  display:grid;
  grid-template-columns:1fr 1.08fr;
  gap:clamp(34px,6vw,90px);
  align-items:flex-start;
}
.contacto-pagina__info{
  display:flex;
  flex-direction:column;
  gap:clamp(26px,4vw,44px);
  max-width:540px;
}
.contacto-pagina__desc{
  font-size:clamp(.92rem,1.35vw,1.15rem);
  line-height:1.75;
  font-weight:300;
  color:rgba(255,255,255,.9);
}
.contacto-pagina__datos{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.contacto-pagina__seccion-titulo{
  font-size:clamp(1rem,1.4vw,1.25rem);
  font-weight:400;
  color:#fff;
  margin-bottom:6px;
}
.contacto-pagina__item{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.contacto-pagina__item--email{
  margin-top:14px;
}
.contacto-pagina__tel,
.contacto-pagina__email{
  font-size:clamp(1.05rem,1.45vw,1.3rem);
  font-weight:700;
  color:#fff;
  text-decoration:none;
  letter-spacing:.02em;
  transition:color .25s ease, transform .25s ease;
  display:inline-block;
  width:fit-content;
}
.contacto-pagina__tel:hover,
.contacto-pagina__email:hover{
  color:rgba(255,255,255,.75);
  transform:translateX(3px);
}
@media(max-width:860px){
  .contacto-pagina__grid{
    grid-template-columns:1fr;
    gap:50px;
  }
}

/* ==========================================================================
   CATÁLOGO DE PREDIOS (predios.php)
   ========================================================================== */
.predios-catalogo{
  padding-top:clamp(150px,20vw,240px);
  padding-bottom:clamp(80px,12vw,160px);
  background:var(--negro);
  min-height:85vh;
}
.predios-catalogo__header{
  text-align:center;
  max-width:860px;
  margin-inline:auto;
  margin-bottom:clamp(45px,7vw,85px);
}
.predios-catalogo__titulo{
  font-size:clamp(2.4rem,4.8vw,4rem);
  font-weight:300;
  letter-spacing:.04em;
  text-transform:uppercase;
  line-height:1.1;
  color:#fff;
  margin-bottom:clamp(14px,2vw,24px);
}
.predios-catalogo__subtitulo{
  font-size:clamp(.95rem,1.4vw,1.18rem);
  line-height:1.75;
  font-weight:300;
  color:rgba(255,255,255,.8);
}
.predios-catalogo__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:clamp(30px,4.5vw,55px);
  max-width:1200px;
  margin-inline:auto;
}
.predio-card-cat{
  background:#17181a;
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.predio-card-cat:hover{
  transform:translateY(-6px);
  border-color:rgba(255,255,255,.45);
  box-shadow:0 18px 40px rgba(0,0,0,.6);
}
.predio-card-cat__img-wrap{
  width:100%;
  aspect-ratio:16/10;
  overflow:hidden;
  display:block;
}
.predio-card-cat__img-wrap img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .5s ease;
}
.predio-card-cat:hover .predio-card-cat__img-wrap img{
  transform:scale(1.05);
}
.predio-card-cat__body{
  padding:clamp(22px,3vw,32px);
  display:flex;
  flex-direction:column;
  flex-grow:1;
}
.predio-card-cat__titulo{
  font-size:clamp(1.4rem,2.2vw,1.85rem);
  font-weight:300;
  letter-spacing:.03em;
  text-transform:uppercase;
  margin-bottom:12px;
  color:#fff;
}
.predio-card-cat__titulo a{
  color:inherit;
  text-decoration:none;
}
.predio-card-cat__desc{
  font-size:clamp(.86rem,1.15vw,.98rem);
  line-height:1.65;
  font-weight:300;
  color:rgba(255,255,255,.75);
  margin-bottom:24px;
  flex-grow:1;
}
.predio-card-cat__btn-wrap{
  display:flex;
  justify-content:flex-start;
}
.boton--card{
  padding:10px 28px;
  font-size:.9rem;
  border-radius:999px;
  background:#fff;
  color:#000;
  font-weight:600;
  transition:background var(--trans), color var(--trans), transform var(--trans);
}
.boton--card:hover{
  background:#e2e2e2;
  transform:translateY(-2px);
}


/* Tarjeta de Formulario */
.predio-card-form{
  background:#232528;
  border-radius:24px;
  padding:clamp(32px,4.5vw,46px) clamp(24px,3.8vw,40px);
  max-width:460px;
  width:100%;
  box-shadow:0 20px 50px rgba(0,0,0,.5);
}
.predio-form{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.predio-form__row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.predio-form__row--single{
  grid-template-columns:1fr 1fr;
}
.predio-form__campo{
  position:relative;
}
.predio-form input[type="text"],
.predio-form input[type="email"],
.predio-form input[type="tel"],
.predio-form select{
  width:100%;
  height:40px;
  background:#ffffff;
  border:none;
  border-radius:999px;
  padding:0 18px;
  font-size:.88rem;
  font-weight:500;
  color:#222;
  font-family:inherit;
}
.predio-form input::placeholder{
  color:#777;
  font-weight:400;
}
.predio-form__select-wrap{
  position:relative;
}
.predio-form select{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  padding-right:36px;
  color:#666;
  cursor:pointer;
}
.predio-form__select-wrap::after{
  content:'▾';
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  font-size:.85rem;
  color:#666;
  pointer-events:none;
}
.predio-form__campo--mensaje{
  margin-top:10px;
}
.predio-form textarea{
  width:100%;
  min-height:75px;
  background:transparent;
  border:none;
  border-bottom:1.5px solid rgba(255,255,255,.75);
  border-radius:0;
  padding:6px 0;
  font-size:.95rem;
  color:#fff;
  font-family:inherit;
  resize:none;
}
.predio-form textarea::placeholder{
  color:rgba(255,255,255,.85);
  font-size:.95rem;
}
.predio-form textarea:focus{
  outline:none;
  border-bottom-color:#fff;
}
.predio-form__aviso{
  margin-top:6px;
}
.predio-form__checkbox-label{
  display:flex;
  align-items:flex-start;
  gap:8px;
  cursor:pointer;
}
.predio-form__checkbox-label input[type="checkbox"]{
  width:14px;
  height:14px;
  margin-top:3px;
  flex-shrink:0;
  accent-color:#fff;
  cursor:pointer;
}
.predio-form__checkbox-label span{
  font-size:clamp(.62rem,.85vw,.7rem);
  line-height:1.45;
  color:rgba(255,255,255,.8);
}
.predio-form__checkbox-label span a{
  color:rgba(255,255,255,.9);
  text-decoration:underline;
  text-underline-offset:2px;
}
.predio-form__btn-wrap{
  display:flex;
  justify-content:flex-start;
  margin-top:10px;
}
.predio-form__boton{
  padding:9px 44px;
  border-radius:999px;
  background:#1c1d1f;
  border:1.2px solid rgba(255,255,255,.85);
  color:#ffffff;
  font-size:.9rem;
  font-weight:600;
  cursor:pointer;
  transition:background var(--trans),border-color var(--trans),transform var(--trans);
}
.predio-form__boton:hover{
  background:#333539;
  border-color:#fff;
  transform:translateY(-1px);
}

/* Responsive Predios */
@media (max-width:900px){
  .predio-intro__grid{
    grid-template-columns:1fr;
    gap:40px;
  }
  .predio-verdes__grid{
    grid-template-columns:1fr;
    gap:40px;
  }
  .predio-contacto__grid{
    grid-template-columns:1fr;
    gap:50px;
  }
  .predio-form__row{
    grid-template-columns:1fr;
  }
}

/* ==========================================================================
   Ajustes de móvil (revisión técnica) — bloque nuevo, escritorio intacto
   ========================================================================== */
@media (max-width:760px){
  /* Evita el zoom automático de iOS al enfocar un campo (<16px lo dispara). */
  .predio-form input[type="text"],
  .predio-form input[type="email"],
  .predio-form input[type="tel"],
  .predio-form select,
  .predio-form textarea{font-size:16px;}
  /* Los campos crecen un poco para que el texto de 16px respire. */
  .predio-form input[type="text"],
  .predio-form input[type="email"],
  .predio-form input[type="tel"],
  .predio-form select{height:46px;}

  /* Casilla de consentimiento y su texto legal, ambos por debajo del mínimo
     legible/tocable en un teléfono. */
  .predio-form__checkbox-label input[type="checkbox"]{width:18px;height:18px;margin-top:1px;}
  .predio-form__checkbox-label span{font-size:.78rem;line-height:1.5;}
}
@media (max-width:760px){
  .contacto-pagina__tel,
  .contacto-pagina__email{padding-block:8px;}
}
