/* Contactos v21 — compact, professional, accessible. */
.contactos-v21{padding-block:60px 80px;scroll-margin-top:110px}
.contactos-v21__intro{max-width:640px;margin-bottom:36px}
.contactos-v21__intro .eyebrow{margin:0 0 12px}
.contactos-v21__intro h2{font-size:clamp(36px,3vw,40px);font-weight:400;line-height:1.12;margin:0 0 16px;letter-spacing:-.025em}
.contactos-v21__intro>p:last-child{color:var(--muted,#adb5a6);font-size:16px;line-height:1.7;margin:0}
.contactos-v21__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(24px,4vw,60px);border-top:1px solid var(--line,#ffffff24);padding-top:32px}
.contactos-v21__direct{min-width:0}
.contactos-v21__channel{padding:0 0 24px}
.contactos-v21__channel+.contactos-v21__channel{border-top:1px solid var(--line,#ffffff24);padding-top:22px}
.contactos-v21__channel h3{font-family:Inter,Arial,sans-serif;font-size:11px;font-weight:600;margin:0 0 10px;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;color:var(--muted,#adb5a6)}
.contactos-v21__contact{display:flex;align-items:center;justify-content:space-between;gap:16px;width:fit-content;max-width:100%;color:var(--text,#f2f0e9);font-size:clamp(24px,2.2vw,26px);line-height:1.3;letter-spacing:-.02em;text-decoration:none;overflow-wrap:anywhere}
.contactos-v21__contact span{font-size:.65em;color:var(--accent,#cfb18b);flex:none;transition:transform .2s}
.contactos-v21__contact:hover span{transform:translate(3px,-3px)}
.contactos-v21__contact:hover{color:var(--accent,#cfb18b)}
.contactos-v21 .contactos-v21__note{font:12px/1.6 Inter,Arial,sans-serif;color:var(--muted,#adb5a6);margin:8px 0 0}
.contactos-v21__location{padding:28px;background:#F3F7F4;border:1px solid #DCE5DE;border-radius:6px;align-self:start;min-width:0;box-shadow:none}
.contactos-v21__location>.eyebrow{margin:0 0 12px;font-size:11px;font-weight:600;letter-spacing:.14em;color:#1b7a3d}
.contactos-v21__location h3{font-size:24px;font-weight:600;line-height:1.2;margin:0 0 10px;letter-spacing:-.02em;color:#142018}
.contactos-v21__company{font-size:13px;line-height:1.6;margin:0 0 10px;color:#3a4a3e}
.contactos-v21__location address{font:normal 14px/1.6 Inter,Arial,sans-serif;color:#3a4a3e;margin:0 0 18px;font-style:normal}
.contactos-v21__map{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0 0;border-top:1px solid #DCE5DE;color:#1b7a3d;text-decoration:none;font-size:14px;line-height:1.5}
.contactos-v21__map:hover{text-decoration:underline;text-underline-offset:4px}
.contactos-v21__map span.contactos-v21__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.contactos-v21 a:focus-visible{outline:2px solid #1b7a3d;outline-offset:4px}
@media(max-width:800px){.contactos-v21{padding-block:40px 56px}.contactos-v21__intro{margin-bottom:24px}.contactos-v21__grid{grid-template-columns:1fr;gap:24px;padding-top:24px}.contactos-v21__contact{font-size:clamp(22px,5vw,26px)}.contactos-v21__location{padding:22px}.contactos-v21__channel{padding-bottom:20px}.contactos-v21__channel+.contactos-v21__channel{padding-top:18px}}
@media(prefers-reduced-motion:reduce){.contactos-v21__contact span{transition:none}}