@font-face { font-family: "Work Sans"; font-style: normal; font-weight: 100 900; font-display: swap; src: url("vendor/work-sans-variable.ttf") format("truetype"); }
/* National article layout: NC hero and reading layout, national typography.
 * Scoped to the single-post template; no national header/navigation changes. */
.alsu-single {
  --alsu-navy: #004b76;
  --alsu-orange: #e35f25;
  --alsu-pale: #f2f5f7;
  --alsu-title: #003f72;
  --alsu-font: "Work Sans", Arial, sans-serif;
  width: 100%;
  min-width: 0;
  color: #2d3349;
  overflow-wrap: anywhere;
}
.single-post .site-main:has(.alsu-single) { padding: 0; }
.single-post .site-main:has(.alsu-single) > .container-fluid { max-width: none; padding: 0; }
.single-post .site-main:has(.alsu-single) > .container-fluid > .row { margin-inline: 0; }
.single-post .site-main:has(.alsu-single) > .container-fluid > .row > .col-12 { padding-inline: 0; }
.alsu-single .alsu-shell { width: min(45rem, calc(100% - 2.25rem)); margin-inline: auto; }
.alsu-single .alsu-post-hero { display: grid; grid-template-columns: minmax(0, 1fr); }
.alsu-single .alsu-post-hero__copy { display: flex; align-items: center; min-width: 0; background: var(--alsu-pale); }
.alsu-single .alsu-post-hero__inner { width: 100%; min-width: 0; padding: 3.625rem 1.5rem; }
.alsu-single .alsu-eyebrow { margin: 0 0 1.375rem; color: var(--alsu-orange); font: 700 1.1875rem/1.1 var(--alsu-font); letter-spacing: .08em; text-transform: uppercase; }
.alsu-single .alsu-post-title { margin: 0; color: var(--alsu-title); font: 400 clamp(2.5rem, 11vw, 3.625rem)/1.2 var(--alsu-font); letter-spacing: 0; overflow-wrap: anywhere; }
.alsu-single .alsu-post-meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: .5rem; margin-top: 2.125rem; color: #4b5258; font: 400 .9375rem/1.5 var(--alsu-font); }
.alsu-single .alsu-post-meta a { color: inherit; text-decoration: underline; }
.alsu-single .alsu-post-hero__media { display: flex; align-items: center; min-width: 0; padding: 2.125rem 1.5rem 2.625rem; background: var(--alsu-navy); }
.alsu-single .alsu-post-hero__image { width: 100%; min-width: 0; box-shadow: 0 1.125rem 2.125rem rgb(0 0 0 / 27%); }
.alsu-single .alsu-hero-image { display: block; width: 100%; height: auto; max-height: 29.375rem; object-fit: cover; }
.alsu-single .alsu-post-hero--no-image { grid-template-columns: minmax(0, 1fr); }
.alsu-single .alsu-post-layout { padding-block: 3.5rem 4.5rem; }
.alsu-single .alsu-post-content { min-width: 0; font: 400 1.125rem/1.6 var(--alsu-font); }
.alsu-single .alsu-post-content > :first-child { margin-top: 0; }
.alsu-single .alsu-post-content :is(h2,h3,h4,h5,h6) { overflow-wrap: anywhere; }
.alsu-single .alsu-post-content :is(img,video,iframe,svg,figure) { max-width: 100%; }
.alsu-single .alsu-post-content :is(img,video) { height: auto; }
.alsu-single .alsu-post-content pre { max-width: 100%; overflow: auto; }
.alsu-single .alsu-post-content table { display: block; width: 100%; max-width: 100%; overflow-x: auto; }
.alsu-single .alsu-post-content :is(ul,ol) { padding-left: 1.5em; }
.alsu-single .alsu-post-content .blog-content :is(ul,ol) { padding-left: 1.5em !important; }
.alsu-single .alsu-post-content .blog-content ul { list-style: disc outside; }
.alsu-single .alsu-post-content .blog-content ol { list-style: decimal outside; }
.alsu-single .alsu-post-content .blog-content li { display: list-item; list-style: inherit; }
/* Imported articles carry their own style blocks after the theme stylesheet. */
.alsu-single .alsu-post-content .blog-wrapper {
  display: flex;
  flex-direction: column-reverse;
  align-items: stretch;
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}
.alsu-single .alsu-post-content .blog-wrapper > .blog-content { width: 100% !important; max-width: 100%; min-width: 0; }
.alsu-single .alsu-post-content .blog-wrapper > .flex-container { min-width: 0; max-width: 100%; }
.alsu-single .alsu-post-content .lead-section { width: 100%; max-width: 100%; }
.alsu-single .alsu-post-content .lead-section :is(.title-container,.lead-image-container) { width: auto; max-width: 100%; margin-inline: 0 !important; padding-inline: 1rem; }
.alsu-single .alsu-post-content .blog-content .callout { max-width: 100%; }
.alsu-single .alsu-post-content #toc { max-width: 100%; overflow-wrap: anywhere; }
.alsu-single .alsu-post-content #toc a { white-space: normal; }
.alsu-single .alsu-post-content .is-layout-flex { min-width: 0; flex-wrap: wrap; }
.alsu-single .alsu-post-content .is-layout-flex > * { min-width: 0; max-width: 100%; }
.alsu-single .alsu-post-content .wp-block-gallery.has-nested-images { display: flex; flex-wrap: wrap; gap: .5rem; }
.alsu-single .alsu-post-content .wp-block-gallery.has-nested-images > figure.wp-block-image { flex: 1 1 calc(50% - .25rem); width: calc(50% - .25rem); max-width: calc(50% - .25rem); margin: 0; }
@media (min-width: 901px) {
  .alsu-single .alsu-shell { width: min(1240px, calc(100% - 3rem)); }
  .alsu-single .alsu-post-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); min-height: 565px; }
  .alsu-single .alsu-post-hero__inner { width: min(38.75rem, calc(100% - 4rem)); margin-left: auto; padding: 4.5rem 4.5rem 4.5rem 0; }
  .alsu-single .alsu-post-title { font-size: 3.875rem; }
  .alsu-single .alsu-post-hero__media { padding: 4.0625rem 0 4.0625rem 3.4375rem; }
  .alsu-single .alsu-post-hero__image { width: min(42.5rem, calc(100% - 3.4375rem)); }
  .alsu-single .alsu-post-hero--no-image { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .alsu-single .alsu-post-hero--no-image .alsu-post-hero__inner { width: min(1240px, calc(100% - 3rem)); margin-inline: auto; padding: 4.5rem 0; }
  .alsu-single .alsu-post-layout { padding-block: 5.125rem 6.25rem; }
}
@media (min-width: 1024px) {
  .alsu-single .alsu-post-content .blog-wrapper { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); grid-template-areas: "content toc"; column-gap: 3rem; align-items: start; }
  .alsu-single .alsu-post-content .blog-wrapper > .blog-content { grid-area: content; width: auto !important; }
  .alsu-single .alsu-post-content .blog-wrapper > .flex-container { grid-area: toc; width: 100% !important; max-width: none; }
  .alsu-single .alsu-post-content .blog-wrapper:not(:has(> .flex-container)) { grid-template-columns: minmax(0, 1fr); grid-template-areas: "content"; }
}
/* One accessible contents control replaces the imported competing widgets. */
.alsu-single .alsu-post-content #toc { position: static; width: 100%; margin: 0; padding: 1rem; border: 1px solid #d9e1e5; background: #fff; border-radius: .5rem; z-index: 20; }
.alsu-single #toc::after { display: none !important; }
.alsu-single #toc > p:empty { display: none; }
.alsu-single #toc ul[hidden] { display: none !important; }
.alsu-single #toc > ul:not([hidden]) { display: block !important; max-height: none; }
.alsu-single .alsu-toc-toggle { display: block; width: 100%; min-height: 44px; padding: .5rem; border: 0; background: transparent; color: #003f72; text-align: left; font: 700 1.125rem/1.4 "Work Sans", Arial, sans-serif; }
.alsu-single #toc a { display: inline-block; padding-block: .4rem; }
.alsu-single .alsu-post-content :is(h2,h3,h4)[id] { scroll-margin-top: 2rem; }
.alsu-single .alsu-toc-toggle:focus-visible { outline: 3px solid #e35f25; outline-offset: 2px; }
@media (max-width: 1023px) {
  .alsu-single .alsu-post-content #toc { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; width: auto; max-width: none; box-shadow: 0 4px 24px #003f7233; }
  .alsu-single #toc > ul:not([hidden]) { overflow-y: auto; max-height: min(55vh, 28rem); }
  .alsu-single .alsu-post-content .blog-wrapper > .flex-container { width: 100% !important; }
  .alsu-single .alsu-post-layout { padding-bottom: 7rem; }
  .alsu-single .alsu-toc-toggle::after { content: '+'; float: right; }
  .alsu-single .alsu-toc-toggle[aria-expanded="true"]::after { content: '−'; }
}
.alsu-single .alsu-post-content:not(:has(.blog-wrapper)) { max-width: 48rem; margin-inline: auto; }
@media (min-width: 901px) and (max-width: 1023px) {
  .alsu-single .alsu-post-content .blog-wrapper { max-width: 48rem !important; margin-inline: auto !important; }
}
