@import url("asociacion.css");

.contact-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap:20px;
}

.contact-card,
.form-card{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.contact-list{
  display:grid;
  gap:14px;
}
.contact-item{
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(0,0,0,0.08);
  background:rgba(0,64,159,0.04);
}
.contact-item h2,
.form-card h2{
  margin:0;
}
.contact-item p,
.contact-item a,
.form-card p{
  margin:0;
}
.contact-item a{
  color:var(--primary);
  text-decoration:none;
  font-weight:600;
}
.contact-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.contact-btn{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:48px;
  padding:0.85rem 1.15rem;
  border-radius:14px;
  border:1px solid rgba(0,0,0,0.10);
  background:rgba(0,64,159,0.08);
  color:var(--primary);
  text-decoration:none;
  font-weight:600;
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.contact-btn:hover{
  transform:translateY(-2px);
  background:rgba(0,64,159,0.13);
  box-shadow:0 10px 26px rgba(0,0,0,0.10);
}
.contact-social{
  justify-content:flex-start;
}
.contact-form{
  display:grid;
  gap:14px;
}
.contact-form .row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.contact-form label{
  display:grid;
  gap:7px;
  font-weight:600;
  color:var(--primary);
}
.contact-form input,
.contact-form select,
.contact-form textarea{
  width:100%;
  border:1px solid rgba(0,0,0,0.12);
  border-radius:14px;
  background:#fff;
  color:#17212b;
  font:inherit;
  padding:0.9rem 1rem;
}
.contact-form textarea{
  min-height:170px;
  resize:vertical;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
  outline:2px solid rgba(98,156,242,0.28);
  border-color:rgba(0,64,159,0.35);
}
.privacy{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:#2a3440;
  font-weight:400;
  line-height:1.5;
}
.privacy input{
  width:18px;
  height:18px;
  margin-top:2px;
}
.form-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.form-note,
.form-status{
  color:#44515f;
  font-size:0.95rem;
}
.form-status{
  min-height:1.2rem;
  font-weight:600;
}
@media (max-width: 920px){
  .contact-grid,
  .contact-form .row{
    grid-template-columns:1fr;
  }
}


.map-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;}
.map-card{display:flex;flex-direction:column;gap:14px;}
.map-card h2{margin:0;}
.map-frame{border-radius:18px;overflow:hidden;border:1px solid rgba(0,0,0,0.08);min-height:320px;background:#fff;}
.map-frame iframe{display:block;width:100%;height:320px;border:0;}
@media (max-width:920px){.map-grid{grid-template-columns:1fr;}}
