@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* Shared company header and footer. Keep these rules independent of page themes. */
.sat-chrome,.sat-chrome * { box-sizing:border-box; }
.sat-chrome { color:#f7f7f2; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:16px; line-height:1.5; letter-spacing:normal; text-align:left; }
.sat-chrome a { color:inherit; text-decoration:none; box-shadow:none; }
.sat-chrome a:hover { color:#ffd34b; }
.sat-chrome a:focus-visible,.sat-chrome button:focus-visible { outline:3px solid #ffd34b; outline-offset:5px; }
.sat-header { position:relative; z-index:200; display:block; width:100%; margin:0; padding:0; border:0; border-bottom:1px solid rgba(255,255,255,.1); background:rgba(2,5,6,.96); }
.sat-nav { width:min(1400px,calc(100% - 56px)); min-height:76px; margin:auto; padding:0; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:32px; }
.sat-brand { display:inline-flex; align-items:center; gap:12px; min-width:180px; width:auto; margin:0; padding:0; border:0; background:none; }
.sat-brand-mark { display:block; width:37px; height:42px; flex:none; color:#f5bb16; filter:drop-shadow(0 0 12px rgba(245,187,22,.26)); background:none; border:0; border-radius:0; box-shadow:none; }
.sat-brand-copy { display:grid; line-height:1; }
.sat-brand-copy strong { color:#f7f7f2; font-size:1.17rem; font-weight:800; letter-spacing:-.03em; }
.sat-brand-copy small { display:block; margin-top:5px; color:#f5bb16; font-size:.58rem; font-weight:800; letter-spacing:.26em; text-transform:uppercase; }
.sat-nav-links { justify-self:center; display:flex; align-items:stretch; gap:clamp(14px,1.7vw,28px); min-height:76px; }
.sat-nav-links a { position:relative; display:inline-flex; align-items:center; min-height:44px; margin:0; padding:0; border:0; border-radius:0; background:none; font-size:.89rem; line-height:1.5; font-weight:600; white-space:nowrap; color:#d7d8d8; }
.sat-nav-links a[aria-current],.sat-nav-links a:hover { color:#ffd34b; }
.sat-nav-links a[aria-current]::after { content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:#f5bb16; }
.sat-nav-cta { min-height:44px; padding:0 24px; display:inline-flex; align-items:center; justify-content:center; border:1px solid rgba(245,187,22,.64); border-radius:7px; background:none; color:#ffd34b !important; font-size:.9rem; font-weight:700; white-space:nowrap; }
.sat-nav-cta:hover { background:rgba(245,187,22,.14); }
.sat-menu-button { display:none; width:44px; height:44px; padding:0; border:1px solid rgba(255,255,255,.13); border-radius:8px; background:transparent; color:#fff; cursor:pointer; }
.sat-menu-button span:not(.sat-sr-only),.sat-menu-button::before,.sat-menu-button::after { content:""; display:block; width:20px; height:2px; margin:4px auto; background:currentColor; }
.sat-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.sat-footer { display:block; margin:0; padding:64px 0 25px; width:100%; border:0; border-top:1px solid rgba(255,255,255,.1); background:#030607; color:#a9b0b5; }
.sat-container { width:min(1400px,calc(100% - 56px)); margin:auto; }
.sat-footer-grid { display:grid; grid-template-columns:1.4fr repeat(4,1fr); gap:40px; }
.sat-footer-brand .sat-brand { margin-bottom:16px; }
.sat-footer-brand p { max-width:290px; margin:0; color:#a9b0b5; font-size:.77rem; line-height:1.6; font-weight:400; text-align:left; }
.sat-footer-contact { display:grid; gap:9px; margin-top:18px; font-size:.72rem; }
.sat-footer-socials { display:flex; flex-wrap:wrap; gap:12px; margin-top:13px; }
.sat-footer-socials a { color:#f4c83b; font-size:.72rem; font-weight:700; }
.sat-footer-column strong { display:block; margin:0 0 14px; color:#f0f0ed; font-size:.77rem; font-weight:700; }
.sat-footer-column a { display:block; margin:9px 0; color:#a9b0b5; font-size:.7rem; line-height:1.5; font-weight:400; }
.sat-footer-legal { margin-top:26px; padding-top:18px; border-top:1px solid rgba(255,255,255,.1); color:#9ba7b2; font-size:.72rem; line-height:1.6; }
.sat-footer-legal a { color:#f4c83b; font-weight:700; }
.sat-footer-bottom { margin-top:35px; padding-top:22px; border-top:1px solid rgba(255,255,255,.08); display:flex; justify-content:space-between; flex-wrap:wrap; gap:24px; font-size:.68rem; }
.sat-deck-tools { position:relative; z-index:20; width:min(1420px,calc(100% - 32px)); margin:16px auto 0; padding:10px 14px; display:flex; align-items:center; justify-content:space-between; gap:20px; border:1px solid rgba(255,255,255,.13); border-radius:8px; color:#cbd0d3; }
.sat-deck-title { font-size:.8rem; font-weight:700; }
body[data-deck] .deck-rail { z-index:30; }
.sat-resource-page { background:#030607; color:#f7f7f2; }
.sat-resource-page #main .breadcrumbs { margin-top:0; background:#071018; color:#f7f7f2; }
.sat-resource-page .blog,.sat-resource-page .blog .entry { color:#cbd0d3; background:#071018; }
.sat-resource-page .entry h2,.sat-resource-page .entry h3,.sat-resource-page .entry h4,.sat-resource-page .entry a { color:#ffd34b; }
@media (max-width:1200px) {
  .sat-nav { grid-template-columns:1fr auto; gap:20px; }
  .sat-nav-links { position:absolute; top:76px; left:16px; right:16px; display:none; flex-direction:column; align-items:flex-start; gap:6px; min-height:0; padding:18px; border:1px solid rgba(255,255,255,.13); border-radius:10px; background:#071015; box-shadow:0 20px 50px rgba(0,0,0,.4); }
  .sat-nav-links.open { display:flex; }
  .sat-nav-links a { width:100%; min-height:40px; white-space:normal; }
  .sat-nav-cta { display:none; }
  .sat-menu-button { display:block; justify-self:end; }
  .sat-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
  .sat-footer-brand { grid-column:1/-1; }
}
@media (max-width:680px) { .sat-nav,.sat-container { width:calc(100% - 24px); } .sat-footer { padding-top:44px; } .sat-footer-bottom { gap:12px; } .sat-deck-tools { align-items:flex-start; flex-direction:column; gap:10px; } }
@media print { .sat-header,.sat-footer,.sat-deck-tools { display:none !important; } }

.sat-editorial-hero { display:block; min-height:auto; padding:100px 0 80px; }
@media(max-width:760px) { .sat-editorial-hero { padding:60px 0 54px; } }
