* { box-sizing: border-box; }
body { margin: 0; background: #0b0b0b; color: #ececec; font: 17px/1.6 -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif; }
a { color: #fff; }
.cabeza { padding: 56px 16px 24px; text-align: center; }
.logo { width: min(420px, 80vw); height: auto; }
main { max-width: 980px; margin: 0 auto; padding: 0 16px; }
.intro p { max-width: 560px; margin: 0 auto 40px; text-align: center; color: #bdbdbd; }
.fotos { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.fotos figure { margin: 0; background: #fff; border-radius: 6px; overflow: hidden; }
.fotos img { width: 100%; height: auto; display: block; }
.fotos figcaption { color: #333; font-size: 14px; padding: 8px 12px; }
.contacto { text-align: center; margin: 56px 0; }
.contacto h2 { font-weight: 600; font-size: 20px; }
.pie { border-top: 1px solid #222; padding: 24px 16px 40px; display: flex; flex-wrap: wrap; gap: 20px; justify-content: center; font-size: 14px; color: #888; }
.pie a { color: #aaa; }
.legal { max-width: 720px; margin: 0 auto; padding: 0 16px 40px; }
.legal h1 { font-size: 26px; }
.legal h2 { font-size: 18px; margin-top: 28px; }
.volver { display: block; text-align: center; padding: 24px; }
@media (max-width: 640px) { .fotos { grid-template-columns: 1fr; } }
