/* Shared site components. No tracking, external libraries or theme-file edits. */
:root{--sa-forest:#173b32;--sa-ivory:#f5f2ea;--sa-coral:#bd593f}
body:not(.home) #masthead,#colophon,.sa-site .site-footer{display:none!important}
.sa-unified-header,.sa-unified-footer{box-sizing:border-box;font-family:Arial,sans-serif;font-size:15px;line-height:1.6}
.sa-unified-wrap{width:min(calc(100% - 64px),1280px);margin:auto}
.sa-unified-header{position:sticky;top:0;z-index:100;background:var(--sa-ivory);border-bottom:1px solid #d9ddd7;color:var(--sa-forest)}
.admin-bar .sa-unified-header{top:32px}.sa-unified-nav{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:24px}
.sa-unified-brand{display:inline-flex;align-items:center;gap:13px;font-weight:800;text-decoration:none!important;color:inherit!important;white-space:nowrap}
.sa-unified-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;font-family:Georgia,serif;background:var(--sa-forest);color:#fff;font-size:15px}
#sa-unified-links{display:flex;align-items:center;gap:30px}#sa-unified-links>a{color:var(--sa-forest);font-weight:700;font-size:13px;text-decoration:none}#sa-unified-links .sa-unified-button{background:var(--sa-forest);color:#fff;border-radius:30px;padding:13px 22px}
.sa-unified-toggle{display:none}.sa-unified-header a:hover{text-decoration:underline!important;text-underline-offset:6px}.sa-unified-header :focus-visible,.sa-unified-footer :focus-visible,.sa-case-grid :focus-visible{outline:3px solid var(--sa-coral);outline-offset:5px}
.sa-unified-footer{background:#0b201b;color:#e7f1eb;padding:64px 0 26px;margin-top:64px}.home .sa-unified-footer{margin-top:0}.sa-unified-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.7fr;gap:42px}.sa-unified-footer .sa-unified-mark{background:#acd9ce;color:#102e25}.sa-unified-footer-grid>div>p{font-family:Georgia,serif;font-size:20px;color:#b5c8c0;margin-top:22px}.sa-unified-footer h2{font-family:Arial,sans-serif!important;font-size:11px!important;letter-spacing:.15em;text-transform:uppercase;color:#afc4ba!important;margin:0 0 22px!important}.sa-unified-footer nav>a{display:block;color:#d4e4dc;text-decoration:none;margin:10px 0;font-size:13px}.sa-unified-footer a:hover{color:#fff;text-decoration:underline}.sa-unified-footer-cta{border:1px solid #40544b;border-radius:18px;display:flex;flex-direction:column;padding:27px;color:#fff!important;text-decoration:none;align-self:start}.sa-unified-footer-cta span{font-size:13px;color:#b5c8c0}.sa-unified-footer-cta strong{font-family:Georgia,serif;font-size:27px;font-weight:400}.sa-unified-footer-bottom{border-top:1px solid #31483c;padding-top:24px;margin-top:50px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;color:#abc2b5}.sa-unified-footer-bottom p{margin:0}.sa-unified-footer-bottom nav{display:flex;gap:25px}.sa-unified-footer-bottom nav>a{margin:0;font-size:12px}.sa-sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
.sa-case-grid,#work .sa-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0 40px}.sa-case-card{border:1px solid #d5dfd8;border-radius:18px;overflow:hidden;background:#fff;display:flex;flex-direction:column;min-width:0;color:#173b32}.sa-case-grid .sa-case-visual,#work .sa-case-grid .sa-case-visual{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;height:auto;min-height:0;padding:0;background:#e8f0eb}.sa-case-visual img,#work .sa-case-visual img{display:block;width:100%;height:100%;object-fit:contain}.sa-case-content{padding:26px;display:flex;flex-direction:column;flex:1}.sa-case-grid .sa-case-context{font-size:11px!important;letter-spacing:.07em;text-transform:uppercase;font-weight:700;color:#9a4935;margin:0 0 16px!important}.sa-case-grid h3,.career-shell .sa-case-grid h3{font-family:Georgia,serif;font-size:27px;line-height:1.22;margin:0 0 16px!important;color:#173b32}.sa-case-grid h3 a{color:inherit;text-decoration:none}.sa-case-content>p:not(.sa-case-context){font-size:15px;line-height:1.7;margin:0 0 24px}.sa-case-grid .sa-case-link{font-family:Arial,sans-serif;font-size:14px;font-weight:700;color:#173b32;margin-top:auto}.sa-nov strong{font-weight:750}.sa-nov figure{margin:30px 0}.sa-nov figure img{display:block;width:100%;height:auto;border-radius:16px}.sa-nov figcaption{font-size:14px;line-height:1.6;color:#526b61;margin-top:12px}.sa-nov th{background:#edf3ef}.sa-nov table{font-size:16px}.sa-nov .audit-flow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:24px;background:#edf4ef;border-radius:16px}.audit-flow span{flex:1;text-align:center;padding:14px;border:1px solid #b7cec0;border-radius:10px;background:white;font-weight:700}
#work .case-grid.sa-case-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1000px){.sa-unified-footer-grid{grid-template-columns:2fr 1fr 1fr}.sa-unified-footer-cta{grid-column:1/-1}.sa-case-grid,#work .case-grid.sa-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.sa-unified-wrap{width:calc(100% - 40px)}.sa-unified-nav{min-height:76px;flex-wrap:wrap;gap:10px;padding:14px 0}.sa-unified-toggle{display:block;background:transparent!important;border:1px solid #aebcb4;border-radius:8px;color:#173b32!important;font:700 14px Arial;padding:10px 13px}.sa-unified-toggle span{margin-left:8px}#sa-unified-links{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding:10px 0}#sa-unified-links.is-open{display:flex}#sa-unified-links>a{padding:14px 6px;font-size:16px}#sa-unified-links .sa-unified-button{margin-top:12px;text-align:center}.admin-bar .sa-unified-header{top:46px}}
@media(max-width:600px){.sa-unified-wrap{width:calc(100% - 32px)}.sa-unified-footer-grid{grid-template-columns:1fr 1fr;gap:30px}.sa-unified-footer-grid>div{grid-column:1/-1}.sa-unified-footer-bottom{align-items:flex-start;flex-direction:column}.sa-case-grid,#work .case-grid.sa-case-grid{grid-template-columns:1fr}.sa-case-content{padding:24px}.sa-case-grid h3{font-size:28px}.sa-unified-brand{font-size:14px}.admin-bar .sa-unified-header{top:0}}
@media(prefers-reduced-motion:reduce){.sa-unified-header *,.sa-case-grid *{scroll-behavior:auto!important;transition:none!important}}
