/* Responsive and accessibility refinements; preserve BUFETE SALAS branding. */
html{scroll-padding-top:110px}
/* Explicit logo dimensions prevent intrinsic 760px assets expanding. */
.site-header .brand{flex:0 0 auto;width:68px;max-width:68px;line-height:0}
.site-header .brand img{display:block;width:68px;max-width:100%;height:44px;object-fit:contain}
.site-footer .footer-brand img{display:block;width:140px;max-width:100%;height:auto;object-fit:contain;margin-bottom:1rem}
@media(max-width:640px){
 .site-header .brand{width:61px;max-width:61px}
 .site-header .brand img{width:61px;height:40px}
 .site-footer .footer-brand img{width:120px}
}
html:not(.js) .case-form button[type=submit]{display:none}
body{overflow-wrap:break-word}
.container{max-width:1200px;width:min(100% - 40px,1200px)}
.hero-grid>*,.page-hero-grid>*,.contact-layout>*,.footer-main>*,.split-heading>*,.form-grid>*{min-width:0}
.hero h1,.page-hero h1,.article-hero h1{overflow-wrap:normal;hyphens:auto;text-wrap:balance}
.journey-topline{gap:12px;flex-wrap:wrap}
.journey-topline>span{min-width:0}
.button{min-height:48px;text-align:center;white-space:normal}
.primary-nav a,.footer-column a{min-height:44px;display:inline-flex;align-items:center}
.primary-nav .language-switch{min-height:44px;min-width:44px;justify-content:center;font-size:.875rem}
.field input,.field select,.field textarea{font-size:1rem;min-height:48px}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.field span,.check-field,.form-required-note,.contact-note,.data-warning{font-size:.9375rem;line-height:1.6}
.check-field{padding-block:12px;align-items:flex-start}
.check-field input{flex:none;width:22px;height:22px}
.form-extra{margin:24px 0;border:1px solid var(--line);border-radius:14px;padding:16px}
.form-extra summary{cursor:pointer;min-height:44px;font-weight:700;color:var(--navy);display:list-item;list-style:disclosure-closed inside}
.form-extra[open] summary{list-style-type:disclosure-open;margin-bottom:16px}
.form-extra .form-grid{margin:0}
.footer-contact a,.contact-cards strong,.legal-content a{overflow-wrap:anywhere}
.editorial-note{font-size:.875rem;line-height:1.7}
.legal-content a,.legal-layout>aside a{color:#795820}
.faq-list summary{min-height:48px;gap:16px}
.faq-list summary span{flex-shrink:0}
@media(max-width:1120px){
 .primary-nav{overscroll-behavior:contain;padding-bottom:max(24px,env(safe-area-inset-bottom));max-height:calc(100dvh - var(--header-h));background:#fff}
 .primary-nav .nav-cta{margin-block:12px}
 html:not(.js) .site-header{position:relative;height:auto}
 html:not(.js) .nav-shell{flex-wrap:wrap;padding-block:12px}
 html:not(.js) .primary-nav{display:flex;position:static;max-height:none;width:100%}
 html:not(.js) .menu-toggle{display:none}
}
@media(max-width:900px){
 .contact-layout{gap:32px}
 .contact-aside{order:2}
 .case-form{order:1}
 .split-heading{gap:20px}
}
@media(max-width:640px){
 .container{width:calc(100% - 32px)}
 .hero h1,.page-hero h1,.article-hero h1,.partners-page .page-hero h1{font-size:clamp(2rem,9vw,3.2rem);line-height:1.12;letter-spacing:-.025em}
 .hero-grid,.page-hero-grid{padding-block:44px;gap:28px}
 .hero-lede,.page-lede{font-size:1.0625rem;line-height:1.65}
 .button-row,.final-actions{flex-direction:column;align-items:stretch;width:100%}
 .button-row .button,.final-actions .button{width:100%;justify-content:center}
 .case-form{padding:20px 16px;border-radius:18px}
 .form-grid{gap:18px}
 .section{padding-block:48px}
 .journey-card{padding:22px 18px}
 .journey-topline{align-items:flex-start}
 .journey-topline>span:first-child{flex-basis:100%}
 .footer-main{gap:28px}
 .footer-bottom{align-items:flex-start;gap:20px}
 .footer-bottom nav{display:flex;flex-wrap:wrap;gap:12px 20px}
 .footer-bottom nav a{min-height:44px;display:inline-flex;align-items:center}
 .site-footer{padding-bottom:96px}
 .whatsapp{right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:52px;height:52px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
