/* Shared cream-and-green shell for the homepage and error pages. */
.sab-editorial {
    --home-paper: #f3f0e7;
    --home-ink: #233c30;
    --home-muted: #586158;
    --home-line: #cccec0;
    --home-orange: #b54120;
    font-family: Arial, Helvetica, sans-serif;
    color: var(--home-ink);
    background: var(--home-paper);
}
.sab-editorial .landing-shell { background: var(--home-paper); }
.sab-editorial .public-landing-header {
    padding: 1.1rem 3.5rem;
    background: var(--home-paper);
    border-bottom: 1px solid var(--home-line);
    box-shadow: none;
    backdrop-filter: none;
}
.sab-editorial .public-landing-header > div:first-child { max-width: 1328px; }
.sab-editorial .public-landing-header > div > a > span { font-size: 1.25rem; letter-spacing: -.06em; }
.sab-editorial .public-landing-header nav { gap: 1.5rem; }
.sab-editorial .public-landing-header nav a { border-radius: 0; }
.sab-editorial .lang-swap.lang-swap { background: transparent; border-color: var(--home-line); border-radius: 0; min-height: 2.75rem; }
.sab-editorial .public-nav-burger { border-radius: 0; border-color: var(--home-line); background: transparent; }
.sab-editorial .public-nav-dropdown-trigger { border-radius: 0; }
.sab-editorial .public-nav-dropdown-menu { background: var(--home-paper); border: 1px solid var(--home-line); border-radius: 0; box-shadow: 0 8px 20px #233c3010; }
.sab-editorial .public-nav-dropdown-menu strong { color: var(--home-ink); }
.sab-editorial .public-nav-dropdown-menu span { color: var(--home-muted); }
.sab-editorial .public-mobile-menu a { border-radius: 0; }
.sab-editorial :is(a, button, input):focus-visible { outline: 2px solid var(--home-orange); outline-offset: 5px; }
.sab-editorial .lang-swap:has(input:focus-visible) { outline: 2px solid var(--home-orange); outline-offset: 5px; }
.sab-editorial .public-landing-footer { background: var(--home-paper); border-top: 1px solid var(--home-line); padding: 3.5rem; }
.sab-editorial .public-landing-footer > div { max-width: 1328px; }
.sab-editorial .public-landing-footer > div > div:first-child { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; }
.sab-editorial .footer-brand-panel > p:nth-child(2) { font-family: Georgia, "Times New Roman", serif; font-size: 1.7rem; font-weight: 400; letter-spacing: -.03em; max-width: 24rem; }
.sab-editorial .footer-brand-panel > p:last-child { font-size: .88rem; max-width: 24rem; color: var(--home-muted); }
.sab-editorial .footer-link-group h3 { font-family: "Courier New", monospace; font-weight: 400; font-size: .75rem; color: var(--home-muted); }
.sab-editorial .footer-bottom-strip { border-color: var(--home-line); margin-top: 3.5rem; }
.sab-editorial .footer-bottom-strip p { font-family: "Courier New", monospace; font-size: .7rem; color: var(--home-muted); }
.sab-editorial .public-scroll-top-button { border-radius: 0; box-shadow: none; }
@media (max-width: 1050px) {
    .sab-editorial .public-landing-header, .sab-editorial .public-landing-footer { padding-inline: 2rem; }
}
@media (max-width: 767px) {
    .sab-editorial .public-landing-header { padding: .8rem 1.25rem; }
    .sab-editorial .public-landing-header nav { display: none; }
    .sab-editorial .public-landing-footer { padding: 2.5rem 1.25rem; }
    .sab-editorial .public-landing-footer > div > div:first-child { grid-template-columns: 1fr; gap: 2.5rem; }
}
@media (prefers-reduced-motion: reduce) {
    .sab-editorial *, .sab-editorial *::before, .sab-editorial *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
