body.ss-ui { background:#f6f8fb; color:#172b3a; padding-bottom:0; }
body.ss-ui #content-in, body.ss-ui #main { width:100%; max-width:1120px; margin:auto; min-width:0; }
body.ss-ui #main { padding:0; border:0; background:transparent; }
body.ss-ui #sidebar, body.ss-ui .mobile-menu-buttons, body.ss-ui .mobile-footer-menu-buttons, body.ss-ui #go-to-top, body.ss-ui #breadcrumb, body.ss-ui .breadcrumb, body.ss-ui .admin-panel { display:none; }
body.ss-ui #content { margin:0; } body.ss-ui #footer { background:#fff; margin:0; padding:0; }
body.ss-ui .ss-header, body.ss-ui .ss-footer { max-width:1120px; margin:auto; padding:20px 24px; }
body.ss-ui #header-container { background:#fff; border-bottom:1px solid #d7e1e5; }
body.ss-ui .ss-header { display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
body.ss-ui .ss-site-title { font-size:20px; font-weight:700; color:#172b3a; text-decoration:none; }
body.ss-ui .ss-nav-list, body.ss-ui .ss-footer ul { display:flex; flex-wrap:wrap; gap:8px 20px; list-style:none; margin:0; padding:0; }
body.ss-ui .ss-nav a, body.ss-ui .ss-footer a { color:#135d66; display:inline-flex; align-items:center; min-height:48px; text-decoration:underline; text-underline-offset:4px; }
body.ss-ui .ss-menu-toggle { min-height:48px; min-width:80px; background:#fff; border:1px solid #135d66; border-radius:6px; color:#135d66; font:inherit; }
body.ss-ui [hidden] { display:none!important; }
body.ss-ui .ss-skip { position:absolute; top:0; left:16px; transform:translateY(-200%); z-index:100000; padding:12px; background:#fff; color:#135d66; }
body.ss-ui .ss-skip:focus { transform:translateY(40px); }
body.ss-ui :is(a,button,input,select,summary):focus-visible { outline:3px solid #946000; outline-offset:3px; }
.ss-site { font-size:16px; line-height:1.75; padding:24px; overflow-wrap:anywhere; }
.ss-site * { box-sizing:border-box; min-width:0; }
.ss-site h1 { font-size:36px; line-height:1.45; margin:0 0 20px; padding:0; background:none; border:0; }
.ss-site h2 { font-size:26px; margin:0 0 20px; padding:0; border:0; background:none; }
.ss-site h3 { font-size:20px; margin:0 0 12px; padding:0; border:0; background:none; }
.ss-site section { margin:0 0 48px; }
.ss-site p { margin:0 0 16px; }
.ss-site a { color:#135d66; text-decoration:underline; text-underline-offset:4px; }
.ss-site .ss-eyebrow { color:#526273; font-size:14px; font-weight:700; margin-bottom:8px; }
.ss-site .ss-hero { padding:28px 0 0; }
.ss-site .ss-search { background:#fff; border:1px solid #ccd9df; border-radius:12px; padding:24px; margin:24px 0; }
.ss-site .ss-search-line { display:grid; grid-template-columns:1fr auto; align-items:end; gap:12px; }
.ss-site label { display:block; font-weight:700; margin-bottom:6px; }
.ss-site input, .ss-site select { font:inherit; color:#172b3a; min-height:48px; width:100%; background:#fff; border:1px solid #718590; border-radius:6px; padding:8px 12px; }
.ss-site .ss-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:10px 20px; font:inherit; font-weight:700; color:#fff; background:#135d66; border:1px solid #135d66; border-radius:6px; text-decoration:none; cursor:pointer; }
.ss-site .ss-button-secondary { background:#fff; color:#135d66; }
.ss-site .ss-filter-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:16px 0; }
.ss-site summary { min-height:48px; padding:10px 0; cursor:pointer; color:#135d66; }
.ss-site .ss-subject-grid, .ss-site .ss-download-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.ss-site .ss-material-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ss-site .ss-subject, .ss-site .ss-material-card, .ss-site .ss-empty, .ss-site .ss-callout { padding:24px; border:1px solid #d7e1e5; border-radius:12px; background:#fff; }
.ss-site .ss-placeholder { width:100%; max-width:768px; height:auto; display:block; border-radius:12px; }
.ss-site .ss-callout a { display:inline-block; margin:0 20px 8px 0; min-height:48px; }
.ss-site .ss-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ss-site .ss-meta div { background:#fff; padding:12px; border-bottom:1px solid #ccd9df; }
.ss-site .ss-meta dt { color:#526273; font-size:14px; }.ss-site .ss-meta dd { margin:0; }
.ss-site .ss-pagination ul { display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:0; }
.ss-site .ss-pagination :is(a,span) { display:flex; min-width:48px; min-height:48px; align-items:center; justify-content:center; border:1px solid #718590; }
.ss-site.ss-prose { max-width:760px; margin:auto; }.ss-site .ss-prose { max-width:760px; }
@media(max-width:1023px){.ss-site .ss-material-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:767px){
 body.ss-ui .ss-header, body.ss-ui .ss-footer {padding:16px;} body.ss-ui .ss-header {gap:12px;}
 body.ss-ui .ss-site-title {font-size:17px;max-width:calc(100% - 104px);} body.ss-ui .ss-nav {width:100%;}body.ss-ui .ss-nav-list {display:block;}body.ss-ui .ss-nav a {width:100%;}
 .ss-site {padding:24px 16px;}.ss-site h1 {font-size:28px;}.ss-site h2 {font-size:23px;}.ss-site .ss-hero {padding:0;}
 .ss-site .ss-search {padding:16px;}.ss-site .ss-search-line,.ss-site .ss-filter-grid,.ss-site .ss-subject-grid,.ss-site .ss-material-grid,.ss-site .ss-download-grid,.ss-site .ss-meta {grid-template-columns:1fr;}
 .ss-site .ss-wide-break {display:none;}.ss-site section {margin-bottom:32px;}
}
@media(prefers-reduced-motion:reduce){body.ss-ui * {scroll-behavior:auto!important;transition:none!important;animation:none!important;}}

.ss-site .ss-preparation-image {margin:24px auto;max-width:640px;}.ss-site .ss-preparation-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;}.ss-site .ss-preparation-image figcaption{margin-top:12px;font-size:16px;}.ss-site .ss-breadcrumb{font-size:14px;margin:0 0 24px;}.ss-site .ss-breadcrumb a{display:inline-flex;align-items:center;min-height:44px;}.ss-site .ss-subject-grid section{margin-bottom:0;}
@media(max-width:360px){body.ss-ui .ss-site-title{font-size:14px;}}

/* Approved A1 branding; dimensions preserve the original aspect ratio. */
body.ss-ui .ss-site-title { display:inline-flex; align-items:center; min-height:48px; }
body.ss-ui .ss-site-title picture { display:block; }
body.ss-ui .ss-brand-logo { display:block; width:240px; max-width:100%; height:auto; }
body.ss-ui .ss-footer-brand { margin:16px 0 0; }
@media(max-width:767px){body.ss-ui .ss-site-title .ss-brand-logo {width:180px;}}
