/* nav dropdowns (Services / Our Work) */
.nav-dd{position:relative;display:inline-flex;align-items:center;gap:2px}
.nav-dd-btn{background:none;border:0;color:#fff;cursor:pointer;padding:4px 6px;font:inherit;font-size:.8rem;line-height:1;opacity:.9;border-radius:4px}
.nav-dd-btn:hover{opacity:1}
.nav-dd-btn .caret{display:inline-block;transition:transform .15s}
.nav-dd-btn[aria-expanded="true"] .caret{transform:rotate(180deg)}
.nav-dd-btn:focus-visible{outline:3px solid var(--accent,#e8892b)!important;outline-offset:2px}
.nav-dd-list{position:absolute;top:100%;left:0;z-index:40;min-width:250px;max-width:calc(100vw - 24px);margin:0;padding:6px 0;list-style:none;background-color:#132f49;background-image:linear-gradient(180deg,#1a3c5e 0%,#122c46 100%);border:1px solid rgba(255,255,255,.14);border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,.28)}
.nav-dd-list[hidden]{display:none}
.nav-dd:hover>.nav-dd-list,.nav-dd.is-open>.nav-dd-list{display:block}
.no-js-dd .nav-dd:focus-within>.nav-dd-list{display:block}
.nav-dd.dd-suppress>.nav-dd-list{display:none!important}
.nav-dd::after{content:"";position:absolute;left:0;right:0;top:100%;height:8px}
nav .nav-dd-list a{display:block;color:#fff;opacity:1;padding:9px 16px;font-size:.95rem;white-space:normal;text-decoration:none}
nav .nav-dd-list a:hover,nav .nav-dd-list a:focus-visible{background:#2a5480;color:#fff;text-decoration:underline}
nav .nav-dd-list a:focus-visible{outline:3px solid #f5b26b!important;outline-offset:-3px}
.nav-dd-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (hover:none){.nav-dd:hover>.nav-dd-list{display:none}.nav-dd.is-open>.nav-dd-list{display:block}}
@media (max-width:768px){.nav-dd-btn{padding:8px 10px;font-size:.9rem}.nav-dd{flex-wrap:wrap}.nav-dd::after{display:none}.nav-dd-list{position:static;flex-basis:100%;min-width:0;margin-top:6px}}
.nav-dd-list a:hover,nav .nav-dd-list a:focus-visible{background:#b8520a!important;color:#fff!important}
/* ES header fit (Oct 22 2026) */
@media (min-width:1001px) and (max-width:1399px){
html[lang="es"] nav{gap:7px}
html[lang="es"] nav a{font-size:.78rem}
html[lang="es"] .nav-cta{padding:7px 10px;margin-left:4px}
html[lang="es"] .nav-menu-btn{padding:6px 10px}
html[lang="es"] .social-header{padding-left:6px}
}
@media (min-width:1400px){html[lang="es"] nav{gap:12px}}

/* Narrow-desktop wrap (Oct 22 2026) */
@media (min-width:1001px) and (max-width:1180px){html .site-header .header-inner{flex-wrap:wrap}html .site-header nav{flex:1 1 100%;flex-wrap:wrap;row-gap:8px}}
