
.hospital-card { display: grid; grid-template-columns: 140px minmax(0, 1fr); margin-top: 30px; max-width: 480px; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; background: white; }
.hospital-building { width: 100%; height: 100%; min-height: 155px; object-fit: cover; object-position: 48% center; }
.hospital-card-copy { padding: 16px 18px; align-self: center; }
.hospital-logo { display: block; width: 138px; max-width: 100%; height: auto; }
.hospital-card-copy p { margin: 10px 0 3px; font-size: 14px; font-weight: 600; line-height: 1.5; }
.hospital-card-copy small { font-size: 12px; line-height: 1.5; color: #526a82; }
.contact-location { display: grid; gap: 18px; }
.contact-hospital-photo { width: 100%; margin: 0; overflow: hidden; border-radius: 20px; background: #fff; box-shadow: 0 20px 55px rgba(18,68,116,.1); }
.contact-hospital-photo img { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; object-fit: cover; object-position: center; }
.health-app-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; max-width: 520px; margin: 24px 0 32px; }
.health-app-link { display: flex; align-items: center; gap: 12px; min-width: 0; min-height: 88px; box-sizing: border-box; padding: 14px; border: 1px solid #c6d8ea; border-radius: 14px; background: #fff; color: #102a43; text-align: left; text-decoration: none; transition: border-color .15s ease, box-shadow .15s ease; }
.health-app-link:hover { transform: translateY(-2px); border-color: #1261a6; box-shadow: 0 18px 38px rgba(18, 97, 166, .18); }
.health-app-link:focus-visible { outline: 3px solid #1261a6; outline-offset: 3px; }
.health-app-link img { display: block; flex: 0 0 56px; width: 56px; height: 56px; border-radius: 12px; object-fit: contain; }
.health-app-link span { display: block; font-size: 14px; font-weight: 700; line-height: 1.4; }
@media (max-width: 850px) {
 .contact-hospital-photo { width: 100%; margin-left: 0; }
}
@media (max-width: 520px) {
 .hospital-card { grid-template-columns: 105px minmax(0, 1fr); }
 .hospital-card-copy { padding: 14px; }
 .contact-hospital-photo { width: 100%; border-radius: 16px; }
 .health-app-links { grid-template-columns: 1fr; max-width: 360px; }
}

.social-icons { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 20px; }
.social-icons a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid #c6d8ea; border-radius: 50%; background: #fff; transition: background .15s ease, border-color .15s ease; }
.social-icons img { display: block; width: 20px; height: 20px; }
.social-icons a:hover { background: #dcecff; border-color: #1261a6; }
.social-icons a:focus-visible { outline: 3px solid #1261a6; outline-offset: 3px; }

.social-icons a.whatsapp-channel { width: auto; min-height: 44px; padding: 0 12px; gap: 7px; border-radius: 22px; color: #167d3f; text-decoration: none; font-size: 14px; font-weight: 600; }
