/* Portadas con fundido; interiores rectos y contiguos. */
:root{
  --section-air:56px;
}
.site-header{border-bottom:0}
.site-footer{border-top:0}
.site-footer-bottom{border-top:0}
.site-footer-main{grid-template-columns:1fr auto}
.site-footer-nav{max-width:none;justify-content:flex-end}
.contact-section{padding-top:40px;background:#fff}
.contact-panel{background:transparent;border-radius:0;padding:0;gap:48px}
.contact-form-card{box-shadow:none;border-color:#dce3ef}
.contact-submit{transition:background-color 240ms ease,box-shadow 240ms ease}
.contact-submit:hover{box-shadow:0 7px 22px rgba(24,48,92,.2),0 2px 6px rgba(24,48,92,.09)}
.contact-section .contact-submit:focus-visible{border-radius:999px}
[data-soft-layer]{pointer-events:none}
@media(max-width:1100px){.site-footer-nav{grid-column:auto;grid-row:auto;max-width:420px}.site-footer-main{grid-template-columns:1fr auto}}
@media(max-width:900px){.contact-panel{gap:24px}}
@media(max-width:720px){.contact-section{padding-top:24px}.contact-panel{gap:32px}}
@media(max-width:480px){.site-footer-main{grid-template-columns:1fr}.site-footer-nav{grid-column:1;grid-row:2;justify-content:flex-start}}
@media(max-width:600px){:root{--section-air:48px}}
/* El pie comparte alineación y áreas táctiles también en las páginas legales. */
@media(max-width:1100px){.site-footer-nav a{display:flex;align-items:center;min-height:44px}}
@media(max-width:800px){
  .site-footer{padding:28px 20px 16px}
  .site-footer-main{grid-template-columns:1fr;justify-items:center;gap:16px;padding-bottom:12px}
  .site-footer-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column:1;grid-row:2;gap:0 16px;width:min(100%,400px);max-width:none}
  .site-footer-nav a{justify-content:center;text-align:center}
  .site-footer-bottom{align-items:center;justify-content:center;gap:0;padding-top:0;text-align:center}
  .site-legal-nav{justify-content:center}
  .page-contact .site-footer{margin-top:24px}
}
@media(prefers-reduced-motion:reduce){.contact-submit{transition:none}}
