.contact-section{padding-block:52px 76px}
body[data-route="contacto"] .whatsapp-float{display:none}
.contact-heading{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:48px;margin-bottom:34px}
.contact-heading h1{max-width:650px;margin:16px 0 0;font-size:clamp(2.75rem,4.6vw,4.6rem);font-weight:400;line-height:1.06}
.contact-heading>p{max-width:410px;margin:0 0 5px;font-size:.96rem;line-height:1.8}
.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;align-items:stretch}
.contact-details{padding:30px;background:var(--white);border:1px solid var(--line);border-radius:14px;min-width:0}
.contact-details h2{margin:0 0 22px;font-size:1.65rem;font-weight:400}
.contact-whatsapp{display:grid;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;gap:14px;padding:20px;background:var(--cream);border-radius:8px}
.contact-whatsapp>.social-icon{width:36px;height:36px}
.contact-whatsapp strong,.contact-whatsapp small{display:block}
.contact-whatsapp strong{font-size:.95rem;font-weight:600;line-height:1.5}
.contact-whatsapp small{margin-top:4px;font-size:.74rem;line-height:1.6;color:var(--ink-soft)}
.contact-whatsapp:hover{background:var(--cream-2)}
.contact-data{display:grid;gap:22px;margin:26px 0}
.contact-data dt,.contact-socials>span{font-size:.63rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}
.contact-data dd{margin:4px 0 0}
.contact-data a{display:inline-block;min-height:36px;padding-block:4px}
.contact-phone{font-family:var(--font-display);font-size:1.85rem;line-height:1.2;letter-spacing:-.03em}
.contact-phone>span{color:var(--accent-dark)}
.contact-email{font-size:.96rem;overflow-wrap:anywhere}
.contact-data a:hover{text-decoration:underline;text-underline-offset:5px}
.contact-socials{border-top:1px solid var(--line);padding-top:20px}
.contact-socials>div{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:10px}
.contact-socials .social-link{gap:9px;min-height:44px;font-size:.76rem}
.contact-socials .social-icon{width:20px;height:20px}
.contact-locations{display:flex;flex-direction:column;align-items:flex-start;padding:38px;border-radius:14px;background:var(--brown-deep);color:var(--white);min-width:0}
.contact-locations .eyebrow{font-size:.63rem;letter-spacing:.08em}
.contact-locations h2{max-width:330px;margin:26px 0 18px;font-size:clamp(2.4rem,3.5vw,3.6rem);font-weight:400;line-height:1.07}
.contact-locations>p{margin:0 0 26px;color:#d3cbc4;font-size:.9rem;line-height:1.85}
.contact-locations .button{margin-bottom:24px}
.contact-locations .contact-locations__note{margin:auto 0 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:.73rem}
@media(max-width:900px){
  .contact-heading{grid-template-columns:1fr;gap:18px}
  .contact-heading>p{max-width:550px}
  .contact-grid{grid-template-columns:1fr;gap:20px}
  .contact-locations h2{max-width:none;margin-top:18px}
}
@media(max-width:760px){
  .contact-section{padding-block:28px 48px}
  .contact-heading{gap:14px;margin-bottom:24px}
  .contact-heading h1{font-size:clamp(2.3rem,9vw,3rem);margin-top:12px}
  .contact-heading>p{font-size:.85rem;line-height:1.7}
  .contact-details,.contact-locations{padding:24px 20px}
  .contact-details h2{font-size:1.45rem;margin-bottom:18px}
  .contact-whatsapp{grid-template-columns:28px minmax(0,1fr) 12px;gap:10px;padding:16px 12px}
  .contact-whatsapp>.social-icon{width:28px;height:28px}
  .contact-whatsapp strong{font-size:.83rem}.contact-whatsapp small{font-size:.7rem}
  .contact-data{gap:18px;margin-block:22px}
  .contact-phone{font-size:1.65rem}.contact-email{font-size:.83rem}
  .contact-locations h2{font-size:2.35rem}.contact-locations .button{width:100%}
}
