
/* Contact page redesign */
.contact-hero{
  position:relative;
  min-height: min(820px, 90vh);
  display:flex; flex-direction:column; justify-content:flex-start; align-items:center;
  padding: clamp(24px, 6vw, 64px) 16px 40px;
  color: #fff;
}
.contact-hero::before{
  content:"";
  position:absolute; inset:0;
  background: url('assets/contact_bg.jpg') center/cover no-repeat fixed;
  filter: brightness(.45) saturate(1.1);
}
.contact-hero .inner{ position:relative; z-index:1; width:min(1100px, 92vw); }

.form-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:14px;
}
.form-grid input, .form-grid select, .form-grid textarea{
  width:100%; padding:14px 16px; border-radius:14px; border:1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.28); color:#fff; outline:none;
}
.form-grid textarea{ min-height:140px; resize:vertical; }

.btn-primary{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  border-radius:999px; padding:14px 22px; font-weight:700;
  background:#ffd86b; color:#000; border:none; box-shadow:0 10px 30px rgba(0,0,0,.3); cursor:pointer;
}
.btn-primary:hover{ transform: translateY(-1px); }

/* Visit section */
.visit{
  position:relative; z-index:2; margin: 28px auto 0; width:min(1100px, 92vw);
  background: rgba(0,0,0,.34); backdrop-filter: blur(6px);
  border:1px solid rgba(255,255,255,.14); border-radius:20px; overflow:hidden;
  color:#fff; padding: 16px 16px 24px;
}
.visit .map-wrap{
  position:relative; border-radius:14px; overflow:hidden;
}
.visit .map-wrap img{ width:100%; height:auto; display:block; }
.visit .map-cta{
  position:absolute; right:14px; bottom:14px;
  background:#111315; color:#fff; border:1px solid rgba(255,255,255,.18);
  border-radius:999px; padding:10px 16px; font-weight:700; text-decoration:none;
}
.visit .addr{ margin: 14px 4px 0; color:#d6dae0; }

@media (max-width: 820px){
  .form-grid{ grid-template-columns:1fr; }
}


/* Glow map border */
.purebred-map {
  border-radius:14px;
  border:0;
  filter: grayscale(100%) contrast(1.35) brightness(85%);
  box-shadow: 0 0 18px rgba(255,216,107,0.55), 0 0 36px rgba(255,216,107,0.35);
}
