/* The homepage's approved navigation, isolated from individual page themes. */
body .site-header[data-sas-header] {
  box-sizing:border-box; position:relative; z-index:100; display:flex; align-items:center;
  justify-content:space-between; width:100%; height:78px; min-height:0; margin:0;
  padding:0 42px; gap:26px; background:#06152a; color:#f7f8fc;
  border:0; border-radius:0; box-shadow:none;
  font:400 16px/normal -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:normal; letter-spacing:normal;
}
.site-header[data-sas-header] *, .site-header[data-sas-header] *::before, .site-header[data-sas-header] *::after {box-sizing:border-box}
.site-header[data-sas-header] a {color:#f7f8fc; text-decoration:none; text-transform:none; letter-spacing:normal; box-shadow:none}
.site-header[data-sas-header] .brand {display:flex; align-items:center; flex:0 0 auto; gap:12px; padding:0; margin:0; border:0; background:none; white-space:nowrap; width:auto; min-width:0; height:auto; transform:none}
.site-header[data-sas-header] .approved-brand-symbol {display:block; flex:none; width:49px; height:41px; max-width:none; margin:0}
.site-header[data-sas-header] .approved-brand-name {display:block; flex:none; width:181px; height:37px; max-width:none; margin:0}
.site-header[data-sas-header] .primary-navigation {position:static; display:flex; align-items:center; gap:clamp(16px,1.7vw,26px); padding:0; margin:0; background:none; border:0; white-space:nowrap; width:auto}
.site-header[data-sas-header] .primary-navigation a {display:inline-flex; align-items:center; min-height:44px; padding:0; margin:0; border:0; border-radius:0; font:400 13px/normal -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.site-header[data-sas-header] a[aria-current], .site-header[data-sas-header] nav a:hover {color:#a9caff}
.site-header[data-sas-header] .header-actions {display:flex; align-items:center; flex:none; gap:16px; margin:0; padding:0}
.site-header[data-sas-header] .language {position:relative; display:block; margin:0; padding:0; font:400 12px/normal ui-monospace,SFMono-Regular,Consolas,monospace}
.site-header[data-sas-header] .language::before {content:""; position:absolute; inset:-15px -7px}
.site-header[data-sas-header] .header-cta {display:flex; align-items:center; justify-content:center; gap:18px; margin:0; padding:13px 17px; min-height:44px; width:auto; border:1px solid #1b5fc9; border-radius:7px; background:#1b5fc9; color:#fff; white-space:nowrap; font:400 12px/normal -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.site-header[data-sas-header] .header-cta span {font-size:19px; line-height:1}
.site-header[data-sas-header] .header-cta:hover {background:#2470e4; border-color:#2470e4}
.site-header[data-sas-header] .mobile-navigation {display:none; margin:0; padding:0; border:0; background:none}
.site-header[data-sas-header] .mobile-navigation summary {display:flex; align-items:center; gap:10px; min-height:44px; padding:0 4px; margin:0; border:0; color:#f7f8fc; list-style:none; cursor:pointer; font:400 13px/normal -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.site-header[data-sas-header] .mobile-navigation summary::-webkit-details-marker {display:none}
.site-header[data-sas-header] .mobile-navigation summary::after {content:none}
.site-header[data-sas-header] .mobile-navigation summary span {font-size:22px; font-weight:400; line-height:1}
.site-header[data-sas-header] .mobile-navigation[open] summary span {transform:rotate(45deg)}
.site-header[data-sas-header] .mobile-navigation nav {position:absolute; top:100%; left:0; right:0; display:flex; flex-direction:column; gap:0; padding:12px 30px 20px; margin:0; max-height:calc(100dvh - 54px); overflow-y:auto; background:#06152a; border-block:1px solid #ffffff20; border-radius:0; box-shadow:0 20px 30px #06152a26; white-space:normal; width:auto}
.site-header[data-sas-header] .mobile-navigation:not([open]) > nav {display:none}
.site-header[data-sas-header] .mobile-navigation nav a {display:flex; align-items:center; min-height:48px; padding:8px 0; margin:0; border:0; border-radius:0; color:#f7f8fc; font:400 16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.site-header[data-sas-header] .mobile-navigation nav a + a {border-top:1px solid #ffffff12}
.site-header[data-sas-header] a:focus-visible, .site-header[data-sas-header] summary:focus-visible {outline:2px solid #a9caff; outline-offset:5px; border-radius:4px}
/* Footer content and layout stay in place. Its company artwork uses the same vector. */
footer[data-sas-footer] {background:#06152a}
.sas-footer-brand {display:inline-flex; align-items:center; gap:12px; max-width:100%; padding:0; margin:0; border:0; background:none; color:#f7f8fc; text-decoration:none}
.sas-footer-brand .approved-brand-symbol {display:block; flex:0 0 49px; width:49px; height:41px}
.sas-footer-brand .approved-brand-name {display:block; flex:0 1 181px; width:181px; max-width:calc(100% - 61px); height:37px}
img[data-sas-artwork] {background:#06152a; object-fit:contain}
@media(max-width:1300px) {
  .site-header[data-sas-header][data-language="es"] .primary-navigation {display:none}
  .site-header[data-sas-header][data-language="es"] .header-actions {margin-left:auto}
  .site-header[data-sas-header][data-language="es"] .mobile-navigation {display:block; order:3}
}
@media(max-width:1200px) {
  body .site-header[data-sas-header] {gap:16px}
  .site-header[data-sas-header] .primary-navigation {display:none}
  .site-header[data-sas-header] .header-actions {margin-left:auto}
  .site-header[data-sas-header] .mobile-navigation {display:block; order:3}
}
@media(max-width:1120px) {
  body .site-header[data-sas-header] {padding-inline:28px}
  .site-header[data-sas-header] .approved-brand-symbol {width:41px; height:34px}
  .site-header[data-sas-header] .approved-brand-name {width:157px; height:32px}
  .site-header[data-sas-header] .header-actions {gap:10px}
  .site-header[data-sas-header] .header-cta {font-size:11px; padding:12px}
}
@media(max-width:700px) {
  body .site-header[data-sas-header] {height:70px; padding-inline:20px; gap:12px}
  .site-header[data-sas-header] .brand {gap:9px}
  .site-header[data-sas-header] .approved-brand-symbol {width:35px; height:29px}
  .site-header[data-sas-header] .approved-brand-name {width:139px; height:29px}
  .site-header[data-sas-header] .header-actions {gap:12px}
  .site-header[data-sas-header] .header-cta {display:none}
  .site-header[data-sas-header] .mobile-navigation nav {padding-inline:20px}
}
@media(max-width:360px) {body .site-header[data-sas-header] {gap:8px}}
@media(max-height:760px) and (min-width:701px), (max-width:700px) and (max-height:800px) {
  body .site-header[data-sas-header] {height:54px}
}
@media(prefers-reduced-motion:reduce) {.site-header[data-sas-header] * {scroll-behavior:auto; transition:none}}
