/* Solo la página Contacto. La fotografía original se muestra completa. */
body.contact-focus{background:#211c16;color:#f3eadd;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;isolation:isolate}
.contact-backdrop{position:fixed;inset:0;z-index:-1;pointer-events:none;background:#211c16;overflow:hidden}
.contact-backdrop img{position:absolute;width:min(1100px,100%);height:auto;max-height:100%;object-fit:contain;right:0;top:50%;transform:translateY(-50%);mask-image:linear-gradient(180deg,transparent,#000 16%,#000 84%,transparent)}
.contact-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,23,18,.94),rgba(28,23,18,.72) 55%,rgba(28,23,18,.70)),linear-gradient(0deg,#211c16 0%,transparent 25%,transparent 75%,#211c16 100%)}
.contact-focus .header{border-color:#eadac32b;background:#211c1640}
.contact-focus .menu-toggle{color:#f3eadd}.contact-focus #navigation a[aria-current]:after{background:#e7ceb0}
.contact-focus #contenido{display:flex;align-items:center;flex:1;padding-block:36px}
.contact-stage{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;max-width:1100px}
.contact-heading h1{font-size:clamp(46px,5vw,68px)}.contact-heading em{color:#d9bfa0}
.contact-heading .eyebrow{color:#e5cfb3;margin-bottom:16px}.contact-heading .lead{font-size:15px;max-width:27ch;color:#e8dacc;margin-top:20px}
.contact-focus .person{border-color:#e9d7bd55;padding:23px 0;gap:16px;min-height:114px}
.contact-focus .person:first-child{border-top:0}.contact-focus .person:last-child{border-bottom:1px solid #e9d7bd55}
.contact-focus .person strong{font-size:35px;color:#fff5e8;margin:5px 0 8px}
.contact-focus .person small{font-size:10px;color:#decab0;letter-spacing:.09em}
.contact-focus .phone{color:#eee1d1;font-size:13px}.contact-focus .person-action{color:#f3eadd;font-size:11px}
.contact-focus .person:hover strong{color:#e6c39c}.contact-focus .person:hover{background:#f5e8d409}
.contact-focus .footer{color:#ddcdb8;border-color:#eadac32b;padding-block:18px}
.contact-focus a:focus-visible,.contact-focus button:focus-visible{outline-color:#f3eadd}.contact-focus .skip{color:#29251f}
@media(max-width:1000px){.contact-stage{gap:40px}.contact-focus .person strong{font-size:30px}.contact-focus .person-action{font-size:0}.contact-focus .person-action span{font-size:23px}}
@media(max-width:700px){
 .contact-backdrop img{width:100%;max-height:none}
 .contact-backdrop:after{background:linear-gradient(180deg,rgba(28,23,18,.90) 0%,rgba(28,23,18,.75) 35%,rgba(28,23,18,.72) 65%,rgba(28,23,18,.94) 100%)}
 .contact-focus .header-line{min-height:68px}.contact-focus .header{background:#211c1680}
 .contact-focus #contenido{padding-block:26px}.contact-stage{grid-template-columns:1fr;gap:22px;max-width:480px}
 .contact-heading h1{font-size:40px;line-height:1.03}.contact-heading .eyebrow{margin-bottom:12px;font-size:10px}
 .contact-heading .lead{font-size:13px;line-height:1.6;margin-top:13px;max-width:none}
 .contact-focus .person{min-height:94px;padding:16px 0}.contact-focus .person strong{font-size:29px;line-height:1.08;margin:5px 0 7px}
 .contact-focus .person small{font-size:9px}.contact-focus .phone{font-size:12px}
 .contact-focus .footer{padding-block:15px;gap:6px}.contact-focus .footer>span{font-size:9px}.contact-focus .footer>a{font-size:18px}
}
@media(max-width:360px){.contact-heading h1{font-size:37px}.contact-focus .person strong{font-size:27px}}

/* Ajuste de claridad v5.4: en celulares de pantalla corta (con la barra del navegador) Contacto debe caber sin desplazarse.
   Solo reduce espacios verticales; no cambia el diseño. */
@media(max-width:700px) and (max-height:760px){
 .contact-focus .header-line{min-height:54px}
 .contact-focus #contenido{padding-block:10px}
 .contact-stage{gap:14px}
 .contact-heading .eyebrow{margin-bottom:7px}
 .contact-heading h1{font-size:35px;line-height:1.0}
 .contact-heading .lead{margin-top:7px;font-size:13px;line-height:1.45}
 .contact-focus .person{min-height:0;padding:11px 0;gap:10px}
 .contact-focus .person strong{font-size:27px;margin:3px 0 4px}
 .contact-focus .footer{padding-block:9px}
}

/* Ajuste v5.5: contenido pegado arriba en celular (sin hueco bajo el encabezado) y una sola línea de cierre. */
.contact-focus .footer{border-top:0}
@media(max-width:700px){
 .contact-focus #contenido{align-items:flex-start;padding-block:18px 8px}
 .contact-focus .header-line{min-height:56px}
}
@media(max-width:700px) and (max-height:760px){
 .contact-focus #contenido{padding-block:12px 6px}
 .contact-stage{gap:16px}
}
