/* BUILD 2026-redesign-1105_3*/
/* ===================================================================== SLCC 2026 Redesign - Cascade glue (redesign-cascade.css) Loads after style.css and before bs3-bridge.css. Jobs: 1. Adapt LEGACY region output (Formats not yet rebuilt) to the new slots. 2. Undo legacy global.css / overide.css rules that land on the new shell. 3. Give legacy author body content (.page-content) the new typography. 4. Style the 2026 Formats that have no consultant design (Accordion, Directory, Full Width) and the landing bands built on the consultant home design. BS3-class shims live in bs3-bridge.css, not here. House rules: colours are tokens only (variables.css);
 every link and button defines :hover, :focus and :active;
 contrast ratios are recorded beside the pairings. Where specificity ties, order decides - so the sections run chrome -> legacy overrides -> body content -> focus -> page-type components. Keep new rules inside the right section. 1022_1: --body-ink is now #4D5056 (darkened Granite: 8.09 on white, 7.41 on the soft tint) and style.css p uses it, so paragraphs and lists match. Granite (#707379, 4.75) is kept for blockquotes and separators. Copyright bar contrast, hidden search label contrast, testimonial card backdrop. CONTENTS 1. Chrome: skip link, header, emergency slot, title banner, breadcrumbs 2. Chrome: sidebar (section title, left nav, quick links, mobile) 3. Chrome: quick-actions bar (SIDE CALLOUTS) 4. Chrome: footer 5. Legacy CSS collisions (global.css / overide.css) 6. Body content (.page-content) 7. Focus visibility 8. Accordion Page (accordion-2026) 9. Directory Page (directory-2026) 10. Full Width Page (full-width-2026) 11. Landing pages (home-2026, landing-page-2026;
 reusable by later landing Formats) 12. Legacy author components and sanctioned components (photo tiles, Then and Now, student boxes, galleries) 13. Concurrent Enrollment 14. Placement 15. Tab Page 16. Newsroom (posts, listings, sidebar, home features) ===================================================================== */
/* ===================================================================== 1. CHROME: SKIP LINK, HEADER, EMERGENCY SLOT, TITLE BANNER, BREADCRUMBS ===================================================================== */
/* ---------- Skip link ---------- */
 .redesign-2026 .skip-link:focus {
	 position: fixed;
	 top: 12px;
	 left: 12px;
	 z-index: 2000;
	 padding: 10px 18px;
	 border-radius: 999px;
	 background: var(--yellow);
	 color: var(--navy-blue);
	 font-weight: 700;
	 text-decoration: none;
}
/* ---------- Header blocks (search) ---------- */
 #top-nav .site-search .input-group {
	 max-width: 250px;
}
 #top-nav .site-search button.input-group-text {
	 cursor: pointer;
}
 .mobile-search-container {
	 margin: 0;
}
/* Collapsed pill (2026-10-29): the input is invisible but filled the pill beneath the 20px icon, so taps beside the icon focused it and opened the keyboard. Hide it from pointer and tab until the pill is open, and let the whole pill act as the search button. */
 .mobile-search-container:not(.active) .mobile-search-input {
	 pointer-events: none;
	 visibility: hidden;
}
 .mobile-search-container:not(.active) .mobile-search-icon::before {
	 content: "";
	 position: absolute;
	 inset: -8px -10px;
}
/* Visually-hidden "Search SLCC" label: nobody sees it, but checkers measure it against the blue eyebrow (it inherited --body-ink, 1.05:1). White on --primary-color 5.01. (1022_1) */
 #top-nav .site-search label {
	 color: var(--white);
}
/* ---------- Eyebrow search: box and button share one border-box height ---------- Legacy BS3 normalize makes input[type=search] content-box, so the input rendered taller than the border-box button. */
 #top-nav .site-search .input-group {
	 --eyebrow-search-h: 28px;
	 display: flex;
	 flex-wrap: nowrap;
	 align-items: stretch;
	 height: var(--eyebrow-search-h);
}
 #top-nav .site-search .input-group .form-control, #top-nav .site-search .input-group .input-group-text {
	 box-sizing: border-box;
	 height: var(--eyebrow-search-h);
	 margin: 0;
	 padding-top: 0;
	 padding-bottom: 0;
	 line-height: 1;
}
 #top-nav .site-search .input-group .input-group-text {
	 display: flex;
	 align-items: center;
	 justify-content: center;
}
 #top-nav .site-search .input-group .input-group-text svg {
	 display: block;
}
/* ---------- Header logo (logo-2026): plain SLCC everywhere, globe logo on the home only ---------- .home-2026 is the home Format's wrapper. Both images sit in the one link;
 the hidden one is display:none, so assistive tech announces a single logo. Same height keeps the header stable. */
 .redesign-2026 .navbar-brand .site-logo {
	 height: 56px;
	 width: auto;
	 max-width: 100%;
}
 .redesign-2026 .navbar-brand .site-logo--home {
	 display: none;
}
 body:has(.home-2026) .navbar-brand .site-logo--default {
	 display: none;
}
 body:has(.home-2026) .navbar-brand .site-logo--home {
	 display: inline;
}
/* ---------- Emergency alert slot (bottom-scripts appends /emergency-alert.html) ---------- */
 .emergency-alert-slot:empty {
	 display: none;
}
/* ---------- PAGE TITLE (legacy page-title Format) ---------- Whatever wrapper the legacy Format emits, the heading takes the banner style. (Section 5 sets the final letter-spacing and case.) */
 .pageTitleBanner h1, .pageTitleBanner .page-title, .pageTitleBanner h2 {
	 color: var(--white);
	 font-size: 56px;
	 font-weight: 700;
	 letter-spacing: var(--tracking-display);
	 text-align: center;
	 margin: 0;
	 line-height: 1.05;
}
 @media (max-width: 991px) {
	 .pageTitleBanner h1, .pageTitleBanner .page-title {
		 font-size: 40px;
	}
}
 @media (max-width: 600px) {
	 .pageTitleBanner h1, .pageTitleBanner .page-title {
		 font-size: 32px;
	}
}
/* ---------- BREADCRUMBS (legacy BS3 <ol class="breadcrumb">) ---------- */
 .breadcrumbBar .breadcrumb {
	 display: flex;
	 flex-wrap: wrap;
	 list-style: none;
	 margin: 0;
	 padding: 0;
	 background: none;
	 border-radius: 0;
}
 .breadcrumbBar .breadcrumb > li {
	 color: var(--heading-ink);
	 font-size: 18px;
}
 .breadcrumbBar .breadcrumb > li + li::before {
	 content: "/";
	 padding: 0 .5rem;
	 color: var(--granite-gray);
}
 .breadcrumbBar .breadcrumb > .active, .breadcrumbBar .breadcrumb > li:last-child {
	 text-decoration: underline;
}
/* Site root has no crumbs: hide the empty bar instead of leaving a padded white strip */
 .breadcrumbBar:not(:has(li)) {
	 display: none;
}
/* ===================================================================== 2. CHROME: SIDEBAR (SECTION TITLE, LEFT NAV, QUICK LINKS, MOBILE) ===================================================================== */
/* ---------- Section title + left nav (legacy and -2026 Formats) ---------- */
 .sidebar-nav h2, .sidebar-nav h3, .sidebar-nav .section-title {
	 color: var(--heading-ink);
	 font-size: 21px;
	 font-weight: 700;
	 margin: 0 0 16px;
	 padding-left: 24px;
}
/* Section title: block, no indent. Legacy CSS indents the inline span's first line only. */
 .sidebar-nav .section-title {
	 display: block;
	 font-size: 21px;
	 line-height: 1.2;
	 margin: 0 0 16px;
	 padding-left: 0;
	 text-indent: 0;
}
 .sidebar-nav h2 a, .sidebar-nav h3 a, .sidebar-nav .section-title a {
	 color: inherit;
	 text-decoration: none;
}
 .sidebar-nav ul ul {
	 border-left: 0;
	 margin-top: 6px;
}
 .sidebar-nav ul ul li {
	 padding: 6px 0 6px 16px;
}
 .sidebar-nav ul ul li a {
	 font-size: 16px;
}
/* Legacy active-state class names vary - cover the common ones */
 .sidebar-nav ul li.current, .sidebar-nav ul li.selected, .sidebar-nav ul li:has(> a[aria-current="page"]) {
	 border-left: 4px solid var(--primary-color);
	 margin-left: -1px;
	 padding-left: 21px;
}
 .sidebar-nav ul li.current > a, .sidebar-nav ul li.selected > a, .sidebar-nav ul li > a[aria-current="page"] {
	 color: var(--heading-ink);
	 font-weight: 700;
}
/* Legacy nav wrappers that carry their own BS3 chrome */
 .sidebar-nav .nav, .sidebar-nav .list-group {
	 display: block;
	 margin: 0;
	 padding: 0;
}
 .sidebar-nav .list-group-item {
	 border: 0;
	 background: none;
	 padding: 0;
}
 .page-sidebar.is-empty {
	 display: none;
}
/* Quick-link groups: separate from the section nav (space + hairline, not a colour band) */
 .sidebar-nav .left-quick-title {
	 margin-top: 2rem;
	 padding-top: 1.5rem;
	 border-top: 1px solid var(--light-blue);
}
/* ---------- Mobile sidebar (2026-10-13, finished 10-15) ---------- Below the MENU breakpoint: no breadcrumb bar (production hides it on mobile too;
 the display:flex in section 1 undid that), MENU snug under the title banner, catalog box hidden (matches production). */
 @media (max-width: 991.98px) {
	 .breadcrumbBar {
		 display: none;
	}
	 .page-sidebar {
		 margin-top: 0;
	}
	 .redesign-2026 .page-sidebar .catalog-box {
		 display: none;
	}
}
/* ===================================================================== 3. CHROME: QUICK-ACTIONS BAR (SIDE CALLOUTS region) ===================================================================== Decision 2026-09-17. The consultant's fixed right-edge callout tabs floated over page content at every width below 1700px - 130px of overlap at 1400px, sitting on footer links. SLCC production already solved this by collapsing the callouts into a full-bleed bar under the nav, so the bar is the treatment below 1700px. It costs no content width, where reserving a right gutter cost up to 214px at 992px. Single colour throughout, per Mark - not production's per-tile colours. Placement is directly under the nav, below the emergency-alert slot, which matches production (the legacy alert script appends into the header, above the callouts). Own class names, so neither the consultant's .callouts positioning nor global.css's .callouts rules apply. Both are left intact upstream. */
 .callout-bar {
	 background-color: var(--yellow);
}
 .callout-bar-list {
	 display: flex;
	 list-style: none;
	 margin: 0;
	 padding: 0;
}
 .callout-bar-item {
	 display: flex;
	 flex: 1 1 0;
	 min-width: 0;
}
 .callout-bar-item + .callout-bar-item {
	 border-left: 1px solid var(--rule-on-gold);
}
 .callout-bar-link {
	 display: flex;
	 flex: 1;
	 align-items: center;
	 justify-content: center;
	 min-height: 56px;
	 padding: 14px 12px;
	 color: var(--on-gold);
	/* 8.10:1 on gold */
	 font-family: var(--font-sans);
	 font-size: 19px;
	 font-weight: 700;
	 line-height: 1.2;
	 letter-spacing: var(--tracking-label);
	 text-align: center;
	 text-transform: uppercase;
	 text-decoration: none;
	 border-bottom: 0;
	/* global.css underlines every link */
	 transition: background-color .2s ease, color .2s ease;
}
/* Hover and focus both go deep blue - white on deep is 12.16:1 */
 .callout-bar-link:hover, .callout-bar-link:focus, .callout-bar-link:focus-visible {
	 background-color: var(--primary-deep);
	 color: var(--on-deep);
}
/* Gold ring, because the focused tile's own background is now deep blue. Inset so the ring never overlaps the neighbouring tile. */
 .callout-bar-link:focus-visible {
	 outline: 3px solid var(--focus-ring-on-dark);
	 outline-offset: -3px;
}
 .callout-bar-link:focus:not(:focus-visible) {
	 outline: none;
}
 @media (prefers-reduced-motion: reduce) {
	 .callout-bar-link {
		 transition: none;
	}
}
/* Mobile: three tiles. Give Now drops out, per Mark, matching production. */
 @media (max-width: 767.98px) {
	 .callout-bar-item--wide {
		 display: none;
	}
	 .callout-bar-link {
		 min-height: 48px;
		 padding: 10px 6px;
		 font-size: 13px;
		 letter-spacing: 0;
	}
}
/* The bar covers every width below 1700px, so the mobile menu no longer duplicates these actions - redesign.js stopped building them. Hide the empty holder. */
 .mobile-menu-buttons:empty {
	 display: none;
}
/* ---------- Fixed tabs at 1700px and up ---------- Dual mode, per Mark: the consultant's fixed right-edge tabs are kept on wide screens, and the bar takes over below. 1700px is not arbitrary - it is where the tabs stop costing anything. Natural container centring gives a right gutter of (viewport - 1320px)/2, which reaches 190px at 1700px, clearing the 170px rail with 20px to spare. So no reserved gutter is needed: above this breakpoint the tabs sit in space the layout was already leaving empty. Same markup, same single colour, same AA pairings as the bar - only the arrangement changes. Position: fixed takes the bar out of flow, so the page content slides up by the bar's height at this breakpoint. */
 @media (min-width: 1700px) {
	 .callout-bar {
		 position: fixed;
		 top: 65%;
		 right: 0;
		 z-index: 5;
		 width: var(--callout-rail-width);
		 background-color: transparent;
		/* the pills carry the gold here */
	}
	 .callout-bar-list {
		 flex-direction: column;
		 gap: 8px;
	}
	 .callout-bar-item {
		 flex: 0 0 auto;
	}
	 .callout-bar-item + .callout-bar-item {
		 border-left: 0;
		/* dividers are a bar-mode device */
	}
	 .callout-bar-link {
		 min-height: 0;
		 padding: 10px 10px 10px 20px;
		 font-size: 17px;
		 background-color: var(--yellow);
		 border-top-left-radius: 30px;
		 border-bottom-left-radius: 30px;
	}
}
/* ===================================================================== 4. CHROME: FOOTER ===================================================================== */
/* ---------- Mobile accordion built by redesign.js ---------- */
 @media (max-width: 767.98px) {
	 .footerLinksSection.has-accordion .footer-columns {
		 display: none;
	}
}
 @media (min-width: 768px) {
	 .footerLinksSection .accordion {
		 display: none;
	}
}
/* ---------- Footer heading levels ---------- The six link columns and the two contact blocks are peers, so they are all h2 (2026-09-17 - the columns were h3, which put them below their own siblings in the outline). The contact blocks carry Bootstrap's .h3 for sizing;
 the columns get the same size here so the semantic level and the visual level stay decoupled. */
 footer .footerLinksSection .footer-col-heading {
	 font-size: 24px;
}
/* ---------- Copyright bar (footer-sole-2026, gold) - 1022_1 ---------- The Block marks the copyright line and the Web Requests link .text-primary, which variables.css sets !important: --primary-color on gold is 3.34 and fails AA at 14px. Overridden here (also !important, higher specificity) so every published page is fixed without a republish;
 swap the class to .text-on-gold in the Block when it is next edited. --on-gold 8.10 in every state. The dark-footer focus ring (section 7) is gold, which vanishes on the gold bar, so the ring goes deep here: 8.10. */
 .redesign-2026 footer .copyright-section .text-primary, .redesign-2026 footer .copyright-section a, .redesign-2026 footer .copyright-section a:hover, .redesign-2026 footer .copyright-section a:focus, .redesign-2026 footer .copyright-section a:active {
	 color: var(--on-gold) !important;
}
 .redesign-2026 footer .copyright-section a:hover, .redesign-2026 footer .copyright-section a:focus {
	 text-decoration-thickness: 2px;
}
 .redesign-2026 footer .copyright-section a:focus-visible {
	 outline-color: var(--focus-ring);
}
/* BrightEdge IXF related links (footer-links-2026, 2026-10-29, BUILD 1029_7).
   The BE script fills .be-ix-link-block with .be-related-link-container > .be-label + ul.be-list > li.be-list-item > a.be-related-link.
   Replaces the legacy inline <style>. Centred, as on production. On the footer links band (--primary-color):
   white text 5.01; gold focus ring from the footer focus rules (section 7). Collapses when BE sends nothing. */
 .redesign-2026 .be-ix-link-block:empty {
	 display: none;
}
 .redesign-2026 .be-ix-link-block .be-related-link-container {
	 margin-top: 32px;
	 padding-top: 24px;
	 border-top: 1px solid var(--rule-on-dark);
	 color: var(--white);
	 text-align: center;
    justify-content: center;
}
 .redesign-2026 .be-ix-link-block .be-label {
	 margin: 0 0 12px;
	 color: var(--white);
	 font-size: 19px;
	 font-weight: 700;
	 line-height: 1.3;
}
 .redesign-2026 .be-ix-link-block .be-list {
	 display: flex;
	 flex-wrap: wrap;
	 justify-content: center;
	 gap: 8px 24px;
	 list-style: none;
	 margin: 0;
	 padding: 0;
}
 .redesign-2026 .be-ix-link-block .be-list-item {
	 margin: 0;
}
 .redesign-2026 .be-ix-link-block .be-related-link, .redesign-2026 .be-ix-link-block .be-related-link:hover, .redesign-2026 .be-ix-link-block .be-related-link:focus, .redesign-2026 .be-ix-link-block .be-related-link:active {
	 color: var(--white);
	 font-weight: 400;
	 text-decoration: underline;
	 text-underline-offset: 3px;
	 border-bottom: 0;
}
 .redesign-2026 .be-ix-link-block .be-related-link:hover, .redesign-2026 .be-ix-link-block .be-related-link:active {
	 text-decoration-thickness: 2px;
}
 @media (min-width: 768px) {
	 .redesign-2026 .be-ix-link-block .be-related-link-container {
		 display: flex;
		 justify-content: center;
		 align-items: baseline;
		 gap: 20px;
	}
	 .redesign-2026 .be-ix-link-block .be-label {
		 margin: 0;
		 flex-shrink: 0;
	}
}
 @media (max-width: 767.98px) {
	 .redesign-2026 .be-ix-link-block .be-list {
		 flex-direction: column;
		 align-items: center;
		 gap: 0;
	}
	 .redesign-2026 .be-ix-link-block .be-list-item {
		 padding: 6px 0;
	}
}
/* ===================================================================== 5. LEGACY CSS COLLISIONS (global.css / overide.css) ===================================================================== Legacy CSS still loads (merge strategy). These rules undo the parts of it that were written for the OLD chrome and now land on the new shell. */
/* Old fixed header offset (global.css: body padding-top 130px) and inherited absolute line-height (1.8em computes to a fixed px value for every child) */
 body.redesign-2026 {
	 padding-top: 0 !important;
	 font-size: 1rem;
	 line-height: 1.5;
	 color: var(--body-ink);
	 font-family: var(--font-sans);
}
/* global.css sets body to Roboto and h1-h6 to Roboto Condensed. The guide specifies Inter, so reassert it across the new shell and page content. */
 .redesign-2026 h1, .redesign-2026 h2, .redesign-2026 h3, .redesign-2026 h4, .redesign-2026 h5, .redesign-2026 h6, .redesign-2026 .h1, .redesign-2026 .h2, .redesign-2026 .h3, .redesign-2026 button, .redesign-2026 input, .redesign-2026 select, .redesign-2026 textarea {
	 font-family: var(--font-sans);
}
 .redesign-2026 blockquote, .redesign-2026 .editorial-quote {
	 font-family: var(--font-editorial);
}
/* global.css underlines every link with border-bottom and turns hovers brown (#833921) */
 :where(.redesign-2026) a:not(.btn), :where(.redesign-2026) a:not(.btn):hover, :where(.redesign-2026) a:not(.btn):focus, :where(.redesign-2026) a:not(.btn):active {
	 border-bottom: 0;
}
 .breadcrumbBar a:hover, .breadcrumbBar a:focus {
	 color: var(--primary-color);
	 text-decoration: underline;
}
 .sidebar-nav ul li a:hover, .sidebar-nav ul li a:focus {
	 color: var(--primary-hover);
}
 .program-rich a:hover, .program-rich a:focus {
	 color: var(--primary-hover);
}
 footer #main-footer a:hover, footer .footerLinksSection a:hover {
	 color: var(--white);
}
/* global.css: a:focus turns every link #833921 with a brown bottom border and outline:auto. Bootstrap 5 styles .btn:hover / :focus-visible / :active but not plain :focus, and a:focus (0,1,1) outranks .btn (0,1,0) - so any <a class="btn"> that holds focus after a mouse click went brown. Most visible on new-window links: the browser restores focus when you come back to the tab. #833921 is 1.5:1 on --primary-deep and fails AA (found 2026-10-08, Catalog Requirements). Restores each button's own rest colours from its --bs-btn-* variables. :not(:hover) keeps hover working on a focused button;
 keyboard focus still gets the :focus-visible ring. */
 :where(.redesign-2026) a.btn:focus:not(:focus-visible):not(:hover) {
	 color: var(--bs-btn-color);
	 background-color: var(--bs-btn-bg);
	 border-color: var(--bs-btn-border-color);
	 outline: 0;
}
/* global.css positions .navbar absolute bottom-right (and static/100% under 992px) */
 .site-header .navbar {
	 position: relative;
	 bottom: auto;
	 right: auto;
	 float: none;
	 width: auto;
	 margin-top: 0;
	 min-height: 0;
}
/* global.css drops .callouts to static full-width under 1400px. The 2026 quick-actions bar uses its own .callout-bar names (section 3), so neither this rule nor the consultant's fixed positioning reaches it. Kept in case the fixed treatment is ever restored. */
 .callouts {
	 width: auto;
	 transform: none;
}
/* global.css adds 25px under every .row > div on mobile - keep it for legacy content, remove it from the new shell and Program Page (gutters handle spacing) */
 .site-header .row > div, footer .row > div, .program .row > div {
	 margin-bottom: 0;
}
/* global.css sizes headings in em with em line-heights;
 reset where the new shell uses them */
 footer h2, footer h3, .program-glance h2, .program-next h2, .program-card-heading {
	 line-height: 1.2;
	 margin-top: 0;
}
/* global.css uppercases h1/h2/.breadcrumb/.section-title and sizes them in em */
 .pageTitleBanner h1, .pageTitleBanner .page-title, .breadcrumbBar .breadcrumb, .sidebar-nav h2, .sidebar-nav h3, .sidebar-nav .section-title, footer h2, footer #main-footer .h3, .program-glance h2, .program-next h2, .program-card-heading {
	 text-transform: none;
	 letter-spacing: var(--tracking-heading);
}
 .breadcrumbBar .breadcrumb {
	 font-family: var(--font-sans);
	 font-weight: 400;
	 text-transform: none;
	 color: var(--heading-ink);
}
 .breadcrumbBar .breadcrumb a, .breadcrumbBar .breadcrumb > .active {
	 color: var(--heading-ink);
}
/* global.css: li.dropdown min-height 44px and ul.dropdown-menu 3px border/250px width - throws off the eyebrow bar */
 #top-nav li.dropdown {
	 min-height: 0;
}
 #top-nav ul.dropdown-menu > li > a {
	 border-bottom: 0;
}
/* ===================================================================== 6. BODY CONTENT (.page-content) ===================================================================== */
 .page-content {
	 color: var(--body-ink);
}
/* BS3 columns were position: relative;
 BS5 columns are not. Author markup that positions itself absolutely inside body content (the "en Espanol" button on /enroll: top: 0;
 right: 0) anchored to the column in production and now to <body>, landing on the header. .page-content stands in for the column. (2026-10-29) */
 .redesign-2026 .page-content {
	 position: relative;
}
/* Tinted bands use the deep ink. Since 1022_1 --body-ink (#4D5056) also passes on the tint (7.41), so this is now a style choice, not an AA fix: --band-ink is 11.14 on #F4F5F6. */
 .program-outcomes, .program-outcomes p, .program-outcomes li, .bg-soft-band, .bg-soft-band p, .bg-soft-band li {
	 color: var(--band-ink);
}
 .page-content h2 {
	/* matches .content-heading: guide H2 is sentence case with negative tracking */
	 color: var(--heading-ink);
	 font-weight: 600;
	 font-size: 32px;
	 text-transform: none;
	 letter-spacing: var(--tracking-heading);
	 margin: 50px 0 12px;
	 line-height: 1.15;
}
 @media (max-width: 991px) {
	 .page-content h2 {
		 font-size: 26px;
	}
}
 .page-content h3 {
	 color: var(--primary-color);
	 font-weight: 600;
	 font-size: 25px;
	 letter-spacing: var(--tracking-heading);
	 margin: 36px 0 10px;
}
 .page-content h4 {
	 color: var(--heading-ink);
	 font-weight: 600;
	 font-size: 21px;
	 margin: 28px 0 8px;
}
 .page-content > :first-child, .page-content > div:first-child > :first-child {
	 margin-top: 0;
}
/* Legacy buttons (global.css: square, #0076BC, 1.5em) -> consultant pill buttons */
 .page-content .btn {
	 border-radius: 999px;
	 font-family: inherit;
	 font-weight: 700;
	 font-size: 17px;
	 line-height: 1.4;
	 padding: .5rem 1.4rem;
	 text-transform: uppercase;
	 letter-spacing: .5px;
	 margin-top: 10px;
	 margin-bottom: 20px;
}
 .page-content .btn-primary, .page-content .btn-secondary {
	/* 5.01:1 white on primary */
	 background: var(--primary-color);
	 color: var(--white);
	 border: 2px solid var(--primary-color);
}
 .page-content .btn-primary:hover, .page-content .btn-primary:focus, .page-content .btn-secondary:hover, .page-content .btn-secondary:focus {
	 background: var(--primary-hover);
	 border: 2px solid var(--primary-hover);
	 color: var(--white);
}
/* Lists take --body-ink, same as style.css p (8.09 on white) */
 .page-content ul, .page-content ol {
	 font-size: 1.15625rem;
	 color: var(--body-ink);
	 padding-left: 1.25em;
}
 .page-content li {
	 margin-bottom: .35em;
}
 .page-content a:not(.btn) {
	 color: var(--primary-color);
	 text-underline-offset: 3px;
}
 .page-content a:not(.btn):hover {
	 color: var(--primary-hover);
}
 .page-content img {
	 max-width: 100%;
	 height: auto;
}
 .page-content iframe {
	 max-width: 100%;
}
 .page-content table {
	 width: 100%;
	 margin-bottom: 1.5rem;
}
 .page-content table:not(.table) th, .page-content table:not(.table) td {
	 padding: .6rem .75rem;
	 border-bottom: 1px solid var(--light-blue);
	 vertical-align: top;
}
 .page-content table:not(.table) th {
	 color: var(--heading-ink);
	 font-weight: 700;
}
 .page-content hr {
	 border-color: var(--light-blue);
	 opacity: 1;
}
 .page-content blockquote {
	 border-left: 4px solid var(--yellow);
	 padding-left: 1.25rem;
}
/* Blockquotes keep the lighter Granite (4.75 on white). The p is listed because style.css p would otherwise override the inherited colour. Landing quotes set their own colour at higher specificity (section 11 testimonials stay white). */
 .page-content blockquote, .page-content blockquote p {
	 color: var(--granite-gray);
}
/* Legacy inline styles that fight the new palette: fix at render, not in content (section 3 Case A) */
 .page-content [style*="font-family"] {
	 font-family: inherit !important;
}
/* ===================================================================== 7. FOCUS VISIBILITY (AA: 3:1 against its backdrop) ===================================================================== Deep blue on light surfaces (12.16:1);
 gold on dark surfaces where the deep ring would disappear (8.10:1 on deep, 3.34:1 on primary blue). 1020_2: the footer selectors now carry .redesign-2026 - as plain "footer a:focus-visible" (0,1,2) they lost to the base rule (0,2,1), so footer links got the deep ring on the dark footer. The gold copyright bar is the exception - section 4 puts the deep ring back. */
 .redesign-2026 a:focus-visible, .redesign-2026 button:focus-visible, .redesign-2026 input:focus-visible, .redesign-2026 select:focus-visible {
	 outline: 3px solid var(--focus-ring);
	 outline-offset: 2px;
}
 #top-nav a:focus-visible, #top-nav button:focus-visible, .pageTitleBanner a:focus-visible, .redesign-2026 footer a:focus-visible, .redesign-2026 footer button:focus-visible, .program-glance a:focus-visible, .program-next-card a:focus-visible, .callouts a:focus-visible {
	 outline: 3px solid var(--focus-ring-on-dark);
	 outline-offset: 2px;
}
/* ===================================================================== 8. ACCORDION PAGE (accordion-2026 Format) - 2026-10-15_1 ===================================================================== Not in the consultant handoff (style.css styles only the footer accordion). Separate tinted tiles, legacy rhythm. On the tint (#F4F5F6): --band-ink 11.14, --primary-active hover 7.62. Body text on white: --body-ink 8.09. */
 .redesign-2026 .accordion-block {
	 margin: 2.5rem 0;
}
 .redesign-2026 .accordion {
	 --bs-accordion-color: var(--body-ink);
	 --bs-accordion-bg: var(--white);
	 --bs-accordion-border-width: 0;
	 --bs-accordion-btn-color: var(--band-ink);
	 --bs-accordion-btn-bg: var(--fast-facts-bg-color);
	 --bs-accordion-active-color: var(--band-ink);
	 --bs-accordion-active-bg: var(--fast-facts-bg-color);
	 --bs-accordion-btn-focus-box-shadow: none;
	 --bs-accordion-btn-padding-y: .85rem;
	 display: flex;
	 flex-direction: column;
	 gap: .5rem;
	 margin-bottom: 1.5rem;
}
 .redesign-2026 .accordion .accordion-item {
	 border-radius: 6px;
	 overflow: hidden;
}
 .redesign-2026 .accordion .accordion-header {
	 margin: 0;
	 font-size: inherit;
}
 .redesign-2026 .accordion .accordion-button {
	 font-family: var(--font-sans);
	 font-size: 1.125rem;
	 font-weight: 600;
	 line-height: 1.35;
	 letter-spacing: var(--tracking-heading);
	 text-transform: none;
	 border-radius: 0;
}
 .redesign-2026 .accordion .accordion-body {
	 border: 1px solid var(--fast-facts-bg-color);
	 border-top: 0;
}
 .redesign-2026 .accordion .accordion-button:focus, .redesign-2026 .accordion .accordion-button:active {
	 color: var(--band-ink);
}
 .redesign-2026 .accordion .accordion-button:hover {
	 color: var(--primary-active);
}
/* Focus ring: .accordion-item's overflow: hidden (for the rounded corners) clips the site's 3px ring, which sits 2px outside the button. Inset it so it draws inside the tile. Ring is --focus-ring (deep blue) on the tint: 11.14:1. WCAG 2.4.7. */
 .redesign-2026 .accordion .accordion-button:focus-visible {
	 outline-offset: -3px;
}
/* ===================================================================== 9. DIRECTORY PAGE (directory-2026 Format) - 2026-10-15_2 ===================================================================== Not in the consultant handoff. Hairline rows (--light-blue is decorative only). Own grid, so legacy .row > div mobile margins and the BS3 col shim never apply. On white: name --heading-ink 12.16, text/labels --body-ink 8.09. */
 .redesign-2026 .directory-group + .directory-group {
	 margin-top: 2.5rem;
}
 .redesign-2026 .directory-member {
	 display: grid;
	 grid-template-columns: 1fr;
	 gap: 1rem 2rem;
	 padding: 1.5rem 0;
	 border-top: 1px solid var(--light-blue);
}
 .redesign-2026 .directory-member:last-child {
	 border-bottom: 1px solid var(--light-blue);
}
 @media (min-width: 768px) {
	 .redesign-2026 .directory-member {
		 grid-template-columns: 9rem minmax(0, 1fr) minmax(0, 15rem);
	}
	 .redesign-2026 .directory-info--wide {
		 grid-column: 2 / -1;
	}
}
 .redesign-2026 .directory-photo img {
	 display: block;
	 width: 100%;
	 max-width: 9rem;
	 height: auto;
	 border-radius: 6px;
}
 .redesign-2026 .page-content .directory-name {
	 margin: 0 0 .25rem;
	 color: var(--heading-ink);
	 font-size: 1.375rem;
	 font-weight: 700;
	 line-height: 1.2;
	 letter-spacing: var(--tracking-heading);
}
 .redesign-2026 .directory-title {
	 margin: 0 0 .75rem;
	 color: var(--body-ink);
	 font-size: 1.0625rem;
	 font-weight: 600;
}
 .redesign-2026 .directory-label {
	 margin: 0 0 .25rem;
	 color: var(--body-ink);
	 font-size: 1rem;
	 font-weight: 700;
}
 .redesign-2026 .directory-cred, .redesign-2026 .directory-cred p, .redesign-2026 .directory-cred li {
	 color: var(--body-ink);
	 font-size: 1rem;
}
 .redesign-2026 .directory-details {
	 margin: 0;
}
 .redesign-2026 .directory-details dt {
	 margin: 0;
	 color: var(--body-ink);
	 font-size: .8125rem;
	 font-weight: 700;
	 letter-spacing: var(--tracking-label);
	 text-transform: uppercase;
}
 .redesign-2026 .directory-details dd {
	 margin: 0 0 .6rem;
	 color: var(--body-ink);
	 font-size: 1rem;
	 overflow-wrap: anywhere;
}
/* ===================================================================== 10. FULL WIDTH PAGE (full-width-2026 Format, Full-Bleed-Page Template) - 2026-10-19_1 ===================================================================== Parity with legacy full-width-default + global.css (.full-width-container, .full-width-bg, .tier2-banner). Bands bleed because the Template puts DEFAULT outside any container;
 each band brings its own. Author bgColor and background photos are inline content - contrast is checked per page, not here. */
 .redesign-2026 .fw-section {
	 position: relative;
}
 .redesign-2026 .fw-section--image {
	 background-position: center;
	 background-repeat: no-repeat;
	 background-size: cover;
}
 .redesign-2026 .fw-section--image > .fw-inner {
	 position: relative;
	 height: 600px;
}
 .redesign-2026 .fw-section--image > .fw-inner.fw-auto {
	 height: auto;
}
 .redesign-2026 .fw-section--image > .fw-inner.fw-auto-link {
	 height: auto;
	 min-height: 400px;
}
 .redesign-2026 .fw-pad-image {
	 padding: 30px 15px;
}
 .redesign-2026 .fw-pad-color {
	 padding: 40px 15px;
}
 .redesign-2026 .fw-gap {
	 margin: 30px auto;
}
 .redesign-2026 .fw-inner.fw-flush {
	 padding-left: 0;
	 padding-right: 0;
}
/* BS3 .container carried :before/:after (display: table), which kept a child's top margin inside its band. BS5 dropped it, so the first heading's margin escaped as a white gap above the band. flow-root restores the containment (legacy spacing kept). */
 .redesign-2026 .fw-inner {
	 display: flow-root;
}
/* Whole-banner link: invisible overlay with visually-hidden text. Focus ring is gold with a deep inner edge so it holds against any photo (gold on deep 8.10:1). */
 .redesign-2026 .fw-banner-link {
	 position: absolute;
	 inset: 0;
	 z-index: 1;
}
 .redesign-2026 .fw-banner-link:focus-visible {
	 outline: 3px solid var(--focus-ring-on-dark);
	 outline-offset: -3px;
	 box-shadow: inset 0 0 0 6px var(--primary-deep);
}
/* Legacy mobile behaviour: image bands lose the fixed height;
 "Hide the BG on mobiles" hides the whole band (global.css .tier2-banner), not just the background. */
 @media (max-width: 767.98px) {
	 .redesign-2026 .fw-section--image > .fw-inner {
		 height: auto;
	}
	 .redesign-2026 .fw-hide-mobile {
		 display: none;
	}
}
/* ===================================================================== 11. LANDING PAGES (landing-2026) - 2026-10-20, BUILD 1020_2 ===================================================================== First user: home-2026. The consultant's home bands (headerHome, path-card, newsSection, fastFactsSection...) are styled by style.css;
 this section fixes AA contrast, collisions with our typography and section 6, and the no-slick layouts, and adds our own lp-* components. Everything is scoped to .landing-2026 so any landing Format can reuse it. The hero image is set inline by the Format (style.css points at ../img/, which doesn't exist in Cascade). Selectors on the path-card heading match style.css specificity (0,4,x). */
/* A landing hero carries the page h1, so no title banner */
 body:has(.landing-2026) .pageTitleBanner {
	 display: none;
}
/* ---------- Typography ---------- Legacy global.css still reaches bare h1-h3 here (caps, 20px top margin), and section 6 gives .page-content h2/h3 interior-page margins. */
 .redesign-2026 .landing-2026, .redesign-2026 .landing-2026 h1, .redesign-2026 .landing-2026 h2, .redesign-2026 .landing-2026 h3 {
	 font-family: var(--font-sans);
}
 .redesign-2026 .landing-2026 h1, .redesign-2026 .landing-2026 h2, .redesign-2026 .landing-2026 h3 {
	 text-transform: none;
	 margin-top: 0;
}
/* Brand sentence case, not the consultant's caps */
 .redesign-2026 .landing-2026 .section-h2 {
	 font-size: 36px;
	 font-weight: 600;
	 line-height: 1.2;
	 letter-spacing: var(--tracking-heading);
	 color: var(--primary-color);
	 margin-bottom: 1rem;
}
 .redesign-2026 .landing-2026 .newsSection .section-h2, .redesign-2026 .landing-2026 .testimonialsSection .section-h2 {
	 color: var(--white);
}
 .redesign-2026 .landing-2026 .lp-lede {
	 color: var(--primary-color);
	 font-size: 20px;
}
/* ---------- Buttons: yellow pills, --on-gold text in every state (8.10) ---------- Undo section 6's interior-page margins and 17px size. */
 .redesign-2026 .landing-2026 .btn {
	 margin: 0;
	 font-size: 20px;
}
 .redesign-2026 .landing-2026 .btn-yellow {
	 --bs-btn-color: var(--on-gold);
	 --bs-btn-hover-color: var(--on-gold);
	 --bs-btn-active-color: var(--on-gold);
	 color: var(--on-gold);
}
 .redesign-2026 .landing-2026 .btn-yellow:focus-visible {
	 outline: 3px solid var(--primary-deep);
	 outline-offset: 3px;
	 box-shadow: none;
}
/* ---------- Announcement bar (home only): text on gold uses --on-gold (8.10) ---------- */
 .redesign-2026 .landing-2026 .announcementBar a, .redesign-2026 .landing-2026 .announcementBar a:hover, .redesign-2026 .landing-2026 .announcementBar a:focus, .redesign-2026 .landing-2026 .announcementBar a:active {
	 color: var(--on-gold);
	 text-decoration: none;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .announcementBar a:hover span, .redesign-2026 .landing-2026 .announcementBar a:focus span {
	 text-decoration: underline;
}
 .redesign-2026 .landing-2026 .announcementBar a:focus-visible {
	 outline: 3px solid var(--on-gold);
	 outline-offset: 4px;
}
/* ---------- Hero ---------- */
 .redesign-2026 .landing-2026 .headerHome > .container-fluid {
	 width: 100%;
}
 .redesign-2026 .landing-2026 .headerHome-banner h1 {
	 color: var(--white);
	 font-size: 66px;
	 font-weight: 600;
	 line-height: 1.1;
	 letter-spacing: var(--tracking-display);
	 margin: 0;
}
 .redesign-2026 .landing-2026 .headerHome-banner h1 span {
	 color: var(--yellow);
}
/* ---------- Statement strip ---------- */
 .redesign-2026 .landing-2026 .enrollNowSection h2 {
	 color: var(--white);
	 font-size: 36px;
	 font-weight: 600;
	 letter-spacing: var(--tracking-heading);
	 margin: 0;
}
/* ---------- Hero banner + statement strip as whole-band links (.stretched-link) ---------- White on the hero overlay / navy strip;
 gold focus ring on dark. The hero banner's clip-path limits the clickable area to the blue overlay. */
 .redesign-2026 .landing-2026 .lp-banner-link, .redesign-2026 .landing-2026 .lp-banner-link:hover, .redesign-2026 .landing-2026 .lp-banner-link:focus, .redesign-2026 .landing-2026 .lp-banner-link:active {
	 color: var(--white);
	 text-decoration: none;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-banner-link:hover, .redesign-2026 .landing-2026 .lp-banner-link:focus {
	 text-decoration: underline;
	 text-decoration-thickness: 2px;
	 text-underline-offset: .15em;
}
 .redesign-2026 .landing-2026 .lp-banner-link:focus-visible {
	 outline: 3px solid var(--focus-ring-on-dark);
	 outline-offset: 4px;
}
/* ---------- Path cards (whole card is the link via .stretched-link) ---------- CSS grid, not BS row/col: li margin rules ate the row gutters. */
 .redesign-2026 .landing-2026 .lp-path-list {
	 display: grid;
	 grid-template-columns: repeat(4, minmax(0, 1fr));
	 gap: 1.5rem;
	 list-style: none;
	 margin: 0;
	 padding: 0;
}
 .redesign-2026 .landing-2026 .path-card-col {
	 margin: 0;
	 padding: 0;
}
 .redesign-2026 .landing-2026 .path-card-col .path-card {
	 padding: 30px;
}
 .redesign-2026 .landing-2026 .path-card {
	 transition: background-color .2s ease;
}
 .redesign-2026 .landing-2026 .path-card:hover, .redesign-2026 .landing-2026 .path-card:focus-within {
	 background-color: var(--primary-hover);
}
 .redesign-2026 .landing-2026 .path-card:focus-within {
	 outline: 3px solid var(--primary-deep);
	 outline-offset: 3px;
}
 .redesign-2026 .landing-2026 .path-card .card-icon {
	 color: var(--white);
	 font-size: 5rem;
	 line-height: 1;
}
 .redesign-2026 .landing-2026 .path-card-col .path-card h3 {
	 color: var(--white);
	 font-size: clamp(1.25rem, 1.6vw, 1.5rem);
	 font-weight: 700;
	 line-height: 1.2;
	 overflow-wrap: break-word;
	 hyphens: auto;
	 margin: 0;
}
 .redesign-2026 .landing-2026 .path-card h3 a, .redesign-2026 .landing-2026 .path-card h3 a:hover, .redesign-2026 .landing-2026 .path-card h3 a:focus, .redesign-2026 .landing-2026 .path-card h3 a:active {
	 color: var(--white);
	 text-decoration: none;
	 border-bottom: 0;
	 outline: none;
}
/* Count on its own line. Gold on --primary-color 3.34, on --primary-hover 4.37: large bold text only (every size here is >= 20px bold). */
 .redesign-2026 .landing-2026 .path-card-col .path-card h3 span {
	 display: block;
	 font-size: 3rem;
	 line-height: 1.1;
	 color: var(--yellow);
}
/* ---------- Link list (Quick Links): one list, CSS columns ---------- */
 .redesign-2026 .landing-2026 .lp-quick-list {
	 columns: 3;
	 column-gap: 2.5rem;
	 list-style: none;
	 margin: 2.5rem 0 0;
	 padding: 0;
}
 .redesign-2026 .landing-2026 .lp-quick-list li {
	 break-inside: avoid;
	 border-top: 0;
	 border-bottom: 1px solid var(--primary-color);
	 padding: 10px 0;
	 margin: 0;
}
 .redesign-2026 .landing-2026 .lp-quick-list a, .redesign-2026 .landing-2026 .lp-quick-list .lp-nolink {
	 display: block;
	 font-size: 24px;
	 font-weight: 600;
	 line-height: 1.3;
	 color: var(--primary-color);
	 text-decoration: none;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-quick-list a:hover, .redesign-2026 .landing-2026 .lp-quick-list a:focus, .redesign-2026 .landing-2026 .lp-quick-list a:active {
	 color: var(--primary-active);
	 text-decoration: underline;
}
 .redesign-2026 .landing-2026 .lp-quick-list .lp-nolink {
	 color: var(--body-ink);
}
/* ---------- Feature band (HSI): soft tint, so text uses --band-ink (11.14) ---------- */
 .redesign-2026 .landing-2026 .lp-feature {
	 background-color: var(--fast-facts-bg-color);
	 padding: 75px 0;
}
 .redesign-2026 .landing-2026 .lp-feature-card {
	 display: grid;
	 grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	 align-items: center;
	 gap: 3rem;
}
 .redesign-2026 .landing-2026 .lp-feature-image img {
	 display: block;
	 width: 100%;
	 height: 100%;
	 max-height: 420px;
	 object-fit: cover;
	 border-radius: 30px;
}
 .redesign-2026 .landing-2026 .lp-feature-kicker {
	 color: var(--band-ink);
	 font-size: 14px;
	 font-weight: 700;
	 letter-spacing: 3px;
	 text-transform: uppercase;
	 margin-bottom: .5rem;
}
 .redesign-2026 .landing-2026 .lp-feature .section-h2 {
	 color: var(--band-ink);
}
 .redesign-2026 .landing-2026 .lp-feature-text > p:not(.lp-feature-kicker) {
	 color: var(--band-ink);
	 font-size: 20px;
	 line-height: 1.5;
	 margin-bottom: 1.75rem;
}
/* ---------- News and events band (white on --primary-color 5.01) ---------- */
 .redesign-2026 .landing-2026 .lp-band-head {
	 display: flex;
	 align-items: center;
	 gap: 1rem;
}
 .redesign-2026 .landing-2026 .lp-circle-link, .redesign-2026 .landing-2026 .lp-circle-link:focus {
	 color: var(--white);
	 font-size: 2rem;
	 line-height: 1;
	 text-decoration: none;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-circle-link:hover, .redesign-2026 .landing-2026 .lp-circle-link:active {
	 color: var(--yellow);
}
 .redesign-2026 .landing-2026 .lp-circle-link:focus-visible {
	 outline: 3px solid var(--focus-ring-on-dark);
	 outline-offset: 3px;
	 border-radius: 50%;
}
 .redesign-2026 .landing-2026 .latest-news-card h3 {
	 font-size: 24px;
	 font-weight: 600;
	 line-height: 32px;
	 margin-bottom: .75rem;
}
 .redesign-2026 .landing-2026 .latest-news-card h3 a {
	 color: var(--primary-color);
	 text-decoration: none;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .latest-news-card h3 a:hover, .redesign-2026 .landing-2026 .latest-news-card h3 a:focus, .redesign-2026 .landing-2026 .latest-news-card h3 a:active {
	 color: var(--primary-active);
	 text-decoration: underline;
}
 .redesign-2026 .landing-2026 .latest-news-card p {
	 color: var(--body-ink);
	 font-size: 1rem;
	 line-height: 1.4;
}
 .redesign-2026 .landing-2026 .lp-read-more, .redesign-2026 .landing-2026 .lp-read-more:focus {
	 color: var(--primary-color);
	 font-size: 14px;
	 font-weight: 700;
	 text-transform: uppercase;
	 text-decoration: underline;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-read-more:hover, .redesign-2026 .landing-2026 .lp-read-more:active {
	 color: var(--primary-active);
}
 .redesign-2026 .landing-2026 .latest-news-card a:focus-visible {
	 outline: 3px solid var(--primary-deep);
	 outline-offset: 2px;
}
 .redesign-2026 .landing-2026 .upcoming-events, .redesign-2026 .landing-2026 .upcoming-events p, .redesign-2026 .landing-2026 .lp-news-empty {
	 color: var(--white);
}
 .redesign-2026 .landing-2026 .upcoming-events ul {
	 list-style: none;
	 margin: 0;
	 padding: 0;
}
 .redesign-2026 .landing-2026 .upcoming-events a, .redesign-2026 .landing-2026 .upcoming-events a:hover, .redesign-2026 .landing-2026 .upcoming-events a:focus, .redesign-2026 .landing-2026 .upcoming-events a:active, .redesign-2026 .landing-2026 .lp-news-empty a, .redesign-2026 .landing-2026 .lp-news-empty a:hover, .redesign-2026 .landing-2026 .lp-news-empty a:focus, .redesign-2026 .landing-2026 .lp-news-empty a:active {
	 color: var(--white);
	 text-decoration: underline;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .upcoming-events a:hover, .redesign-2026 .landing-2026 .lp-news-empty a:hover {
	 text-decoration-thickness: 2px;
}
 .redesign-2026 .landing-2026 .upcoming-events a:focus-visible, .redesign-2026 .landing-2026 .lp-news-empty a:focus-visible {
	 outline: 3px solid var(--focus-ring-on-dark);
	 outline-offset: 2px;
}
 .redesign-2026 .landing-2026 .upcoming-events .event {
	 padding: 1rem 0;
	 margin: 0;
}
 .redesign-2026 .landing-2026 .upcoming-events .event-date span {
	 color: var(--on-gold);
}
 .redesign-2026 .landing-2026 .upcoming-events .event-contents .title {
	 color: var(--white);
	 font-size: 16px;
	 font-weight: 800;
	 line-height: 24px;
	 margin: 0 0 .25rem;
}
/* ---------- Testimonials: static grid (no slick), home-2026 1030_3 ----------
   Card = full 2:1 photo (it carries baked-in name and details) + white panel below.
   Quotes take the editorial face from section 5 (blockquote).
   On white: name --heading-ink 12.16, credential --body-ink 8.09, quote --band-ink 11.14,
   link --primary-color 5.01 (hover --primary-active 8.32). Whole card is the link (stretched-link);
   gold ring on the dark section. Deep box behind the photo if it fails to load. */
 .redesign-2026 .landing-2026 .lp-testimonials {
	 display: grid;
	 grid-template-columns: repeat(3, 1fr);
	 gap: 2rem;
	 list-style: none;
	 margin: 0;
	 padding: 0;
}
 .redesign-2026 .landing-2026 .lp-testimonials .lp-test {
	 display: flex;
	 margin: 0;
}
 .redesign-2026 .landing-2026 .lp-test-card {
	 position: relative;
	 display: flex;
	 flex-direction: column;
	 width: 100%;
	 overflow: hidden;
	 border-radius: 20px;
	 background-color: var(--white);
}
 .redesign-2026 .landing-2026 .lp-test-img {
	 display: block;
	 width: 100%;
	 height: auto;
	 aspect-ratio: 2 / 1;
	 object-fit: cover;
	 background-color: var(--primary-deep);
}
 .redesign-2026 .landing-2026 .lp-test-body {
	 display: flex;
	 flex-direction: column;
	 flex-grow: 1;
	 padding: 1.5rem;
}
 .redesign-2026 .landing-2026 .lp-testimonials .lp-test-body h3 {
	 margin: 0 0 .25rem;
	 color: var(--heading-ink);
	 font-size: 1.375rem;
	 font-weight: 700;
	 line-height: 1.25;
}
 .redesign-2026 .landing-2026 .lp-testimonials .lp-test-body p.lp-test-cred {
	 margin: 0 0 1rem;
	 color: var(--body-ink);
	 font-size: .8125rem;
	 font-weight: 700;
	 line-height: 1.3;
	 letter-spacing: var(--tracking-label);
	 text-transform: uppercase;
}
 .redesign-2026 .landing-2026 .lp-testimonials .lp-test-body blockquote {
	 margin: 0;
	 padding: 0;
	 border: 0;
}
 .redesign-2026 .landing-2026 .lp-testimonials .lp-test-body blockquote p {
	 margin: 0;
	 color: var(--band-ink);
	 font-size: 1.0625rem;
	 line-height: 1.5;
}
 .redesign-2026 .landing-2026 .lp-testimonials .lp-test-body p.lp-test-more {
	 margin: auto 0 0;
	 padding-top: 1rem;
}
 .redesign-2026 .landing-2026 .lp-testimonials a.lp-test-link,
 .redesign-2026 .landing-2026 .lp-testimonials a.lp-test-link:focus {
	 color: var(--primary-color);
	 font-weight: 700;
	 text-decoration: underline;
	 text-underline-offset: 3px;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-testimonials a.lp-test-link:hover,
 .redesign-2026 .landing-2026 .lp-testimonials a.lp-test-link:active,
 .redesign-2026 .landing-2026 .lp-test-card:hover a.lp-test-link {
	 color: var(--primary-active);
	 text-decoration-thickness: 2px;
}
 .redesign-2026 .landing-2026 .lp-testimonials a.lp-test-link:focus-visible {
	 outline: 0;
}
 .redesign-2026 .landing-2026 .lp-test-card:has(a:focus-visible) {
	 outline: 3px solid var(--focus-ring-on-dark);
	 outline-offset: 3px;
}
/* ---------- Fast Facts ---------- */
 .redesign-2026 .landing-2026 .facts-grid {
	 list-style: none;
	 margin: 0;
	 padding: 0;
}
 .redesign-2026 .landing-2026 .facts-grid > li {
	 margin: 0;
}
 .redesign-2026 .landing-2026 .fact-card h3 {
	 font-size: 24px;
	 font-weight: 700;
	 line-height: 1.2;
	 letter-spacing: var(--tracking-heading);
	 margin: 0 0 15px;
}
 .redesign-2026 .landing-2026 .fact-card p {
	 font-size: 16px;
	 line-height: 1.4;
	 margin: 0;
}
/* White on --brown: ratio not yet recorded - check the "19" card */
 .redesign-2026 .landing-2026 .fact-card-blue h3, .redesign-2026 .landing-2026 .fact-card-blue p, .redesign-2026 .landing-2026 .fact-card-brown h3, .redesign-2026 .landing-2026 .fact-card-brown p {
	 color: var(--white);
}
 /* 1029_3: the card is SLCC Blue (style.css), so white text: 5.01. Was baby blue + band ink. */
 .redesign-2026 .landing-2026 .fact-card-light-blue h3, .redesign-2026 .landing-2026 .fact-card-light-blue p {
	 color: var(--white);
}
 .redesign-2026 .landing-2026 .fact-card-yellow h3, .redesign-2026 .landing-2026 .fact-card-yellow p {
	 color: var(--on-gold);
}
 .redesign-2026 .landing-2026 .fact-card img {
	 display: block;
	 width: 100%;
	 height: 100%;
	 object-fit: cover;
}
/* ---------- Instagram band ---------- */
 .redesign-2026 .landing-2026 .lp-follow, .redesign-2026 .landing-2026 .lp-follow:hover, .redesign-2026 .landing-2026 .lp-follow:focus, .redesign-2026 .landing-2026 .lp-follow:active {
	 color: var(--primary-color);
	 text-decoration: none;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-follow:hover .follow-us, .redesign-2026 .landing-2026 .lp-follow:focus .follow-us {
	 text-decoration: underline;
}
 .redesign-2026 .landing-2026 .lp-follow i {
	 font-size: 2rem;
}
 .redesign-2026 .landing-2026 .lp-follow:focus-visible {
	 outline: 3px solid var(--primary-deep);
	 outline-offset: 3px;
}
/* ---------- Generic landing page (landing-page-2026) ---------- Intro follows the Program Index's .pix-intro (52px top, container-xl, 18px/1.6 body). Sections alternate white / soft tint (#F4F5F6). White: heading --primary-color 5.01, body --body-ink 8.09, link hover --primary-active 8.32. Tint: heading and body --band-ink 11.14, links --primary-active 7.62, hover --band-ink 11.14. */
 .redesign-2026 .landing-2026 .lp-intro {
	 padding: 52px 0 28px;
}
 .redesign-2026 .landing-2026 .lp-intro h1 {
	 color: var(--primary-color);
	 font-size: 44px;
	 font-weight: 600;
	 line-height: 1.15;
	 letter-spacing: var(--tracking-heading);
	 margin: 0;
}
 .redesign-2026 .landing-2026 .lp-intro-body {
	 max-width: none;
	 margin-top: 16px;
	 color: var(--body-ink);
	 font-size: 18px;
	 line-height: 1.6;
}

 .redesign-2026 .landing-2026 .lp-intro-body p + p {
	 margin-top: 12px;
}
 .redesign-2026 .landing-2026 .lp-intro-body > :last-child {
	 margin-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-band {
	 padding: 56px 0;
}
 .redesign-2026 .landing-2026 .lp-band--tint {
	 background-color: var(--fast-facts-bg-color);
}
 .redesign-2026 .landing-2026 .lp-body {
	 color: var(--body-ink);
	 font-size: 18px;
	 line-height: 1.6;
}
 .redesign-2026 .landing-2026 .lp-band--tint .lp-body, .redesign-2026 .landing-2026 .lp-band--tint .lp-body p, .redesign-2026 .landing-2026 .lp-band--tint .lp-body li {
	 color: var(--band-ink);
}
 .redesign-2026 .landing-2026 .lp-body > :first-child {
	 margin-top: 0;
}
 .redesign-2026 .landing-2026 .lp-body > :last-child {
	 margin-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-body h2 {
	 color: var(--heading-ink);
	 font-size: 36px;
	 font-weight: 600;
	 line-height: 1.2;
	 letter-spacing: var(--tracking-heading);
	 margin: 0 0 1rem;
}
 .redesign-2026 .landing-2026 .lp-band--tint .lp-body h2 {
	 color: var(--band-ink);
}
 .redesign-2026 .landing-2026 .lp-body h2 ~ h2 {
	 margin-top: 2.5rem;
}
 .redesign-2026 .landing-2026 .lp-body h3 {
	 color: var(--heading-ink);
	 font-size: 24px;
	 font-weight: 700;
	 line-height: 1.25;
	 margin: 2rem 0 .75rem;
}
/* Links in body text: every state defined (standing rule 3) */
 .redesign-2026 .landing-2026 .lp-intro-body a:not(.btn), .redesign-2026 .landing-2026 .lp-body a:not(.btn) {
	 color: var(--primary-color);
	 text-decoration: underline;
	 text-underline-offset: 3px;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-intro-body a:not(.btn):hover, .redesign-2026 .landing-2026 .lp-intro-body a:not(.btn):focus, .redesign-2026 .landing-2026 .lp-intro-body a:not(.btn):active, .redesign-2026 .landing-2026 .lp-body a:not(.btn):hover, .redesign-2026 .landing-2026 .lp-body a:not(.btn):focus, .redesign-2026 .landing-2026 .lp-body a:not(.btn):active {
	 color: var(--primary-active);
}
 .redesign-2026 .landing-2026 .lp-band--tint .lp-body a:not(.btn) {
	 color: var(--primary-active);
}
 .redesign-2026 .landing-2026 .lp-band--tint .lp-body a:not(.btn):hover, .redesign-2026 .landing-2026 .lp-band--tint .lp-body a:not(.btn):focus, .redesign-2026 .landing-2026 .lp-band--tint .lp-body a:not(.btn):active {
	 color: var(--band-ink);
}
/* A list whose items are all links (or any ul.lp-links) = the Quick Links column list */
 .redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) {
	 columns: 3;
	 column-gap: 2.5rem;
	 list-style: none;
	 margin: 1.5rem 0 0;
	 padding: 0;
}
 .redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) > li {
	 break-inside: avoid;
	 margin: 0;
	 padding: 10px 0;
	 border-bottom: 1px solid var(--primary-color);
}
 .redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) > li > a:not(.btn) {
	 display: block;
	 font-size: 22px;
	 font-weight: 600;
	 line-height: 1.3;
	 text-decoration: none;
}
 .redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) > li > a:not(.btn):hover, .redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) > li > a:not(.btn):focus, .redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) > li > a:not(.btn):active {
	 text-decoration: underline;
}
 @media (max-width: 991.98px) {
	 .redesign-2026 .landing-2026 .lp-intro h1 {
		 font-size: 36px;
	}
	 .redesign-2026 .landing-2026 .lp-band {
		 padding: 44px 0;
	}
	 .redesign-2026 .landing-2026 .lp-body h2 {
		 font-size: 30px;
	}
	    	.redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) {
   		columns: 2;
   	}
   
}
 @media (max-width: 767.98px) {
	 .redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) > li > a:not(.btn) {
		 font-size: 20px;
	}
}
 @media (max-width: 600px) {
	 .redesign-2026 .landing-2026 .lp-intro h1 {
		 font-size: 30px;
	}
	 .redesign-2026 .landing-2026 .lp-body h2 {
		 font-size: 26px;
	}
	 .redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) {
		 columns: 1;
	}
	 .redesign-2026 .landing-2026 .lp-body > ul:is(.lp-links, :has(> li > a):not(:has(> li > :not(a)))) > li > a:not(.btn) {
		 font-size: 18px;
	}
}
/* ---------- Landing: motion and breakpoints ---------- */
 @media (prefers-reduced-motion: reduce) {
	 .redesign-2026 .landing-2026 .path-card {
		 transition: none;
	}
}
 @media (max-width: 1199.98px) {
	 .redesign-2026 .landing-2026 .headerHome-banner h1 {
		 font-size: 54px;
	}
	 .redesign-2026 .landing-2026 .section-h2 {
		 font-size: 30px;
	}
	 .redesign-2026 .landing-2026 .lp-path-list {
		 grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	 .redesign-2026 .landing-2026 .path-card-col .path-card h3 {
		 font-size: 1.5rem;
	}
}
 @media (max-width: 991.98px) {
	 .redesign-2026 .landing-2026 .headerHome-banner h1 {
		 font-size: 36px;
	}
	 .redesign-2026 .landing-2026 .headerHome-banner h1 span {
		 display: block;
		 font-size: 48px;
	}
	 .redesign-2026 .landing-2026 .enrollNowSection h2 {
		 font-size: 28px;
	}
	 .redesign-2026 .landing-2026 .lp-band-head {
		 justify-content: center;
	}
	 .redesign-2026 .landing-2026 .lp-quick-list {
		 columns: 2;
	}
	 .redesign-2026 .landing-2026 .lp-feature {
		 padding: 50px 0;
	}
	 .redesign-2026 .landing-2026 .lp-feature-card {
		 grid-template-columns: 1fr;
		 gap: 2rem;
		 text-align: center;
	}
	 .redesign-2026 .landing-2026 .lp-testimonials {
		 grid-template-columns: 1fr;
		 max-width: 32rem;
		 margin-inline: auto;
	}
	 .redesign-2026 .landing-2026 .facts-grid {
		 grid-template-columns: 1fr;
		 gap: 18px;
	}
	 .redesign-2026 .landing-2026 .facts-grid > li {
		 grid-column: auto;
	}
	 .redesign-2026 .landing-2026 .fact-card-image, .redesign-2026 .landing-2026 .fact-card-image-tall {
		 display: none;
	}
	 .redesign-2026 .landing-2026 .upcoming-events .event-contents .title {
		 font-size: 20px;
	}
}
 @media (max-width: 767.98px) {
	 .redesign-2026 .landing-2026 .lp-path-list {
		 grid-template-columns: 1fr;
		 gap: 1rem;
	}
	 .redesign-2026 .landing-2026 .path-card-col .path-card {
		 padding: 20px;
	}
	 .redesign-2026 .landing-2026 .path-card .card-icon {
		 font-size: 2.75rem;
	}
	 .redesign-2026 .landing-2026 .path-card-col .path-card h3 {
		 font-size: 22px;
	}
	 .redesign-2026 .landing-2026 .path-card-col .path-card h3 span {
		 display: inline;
		 font-size: inherit;
	}
	 .redesign-2026 .landing-2026 .lp-quick-list a, .redesign-2026 .landing-2026 .lp-quick-list .lp-nolink {
		 font-size: 20px;
	}
}
 @media (max-width: 600px) {
	 .redesign-2026 .landing-2026 .headerHome-banner h1 {
		 font-size: 25px;
	}
	 .redesign-2026 .landing-2026 .headerHome-banner h1 span {
		 font-size: 42px;
	}
	 .redesign-2026 .landing-2026 .enrollNowSection h2 {
		 font-size: 24px;
	}
	 .redesign-2026 .landing-2026 .enrollNowSection h2 span {
		 display: block;
	}
	 .redesign-2026 .landing-2026 .lp-lede {
		 font-size: 16px;
	}
	 .redesign-2026 .landing-2026 .lp-quick-list {
		 columns: 1;
	}
	 .redesign-2026 .landing-2026 .lp-quick-list a, .redesign-2026 .landing-2026 .lp-quick-list .lp-nolink {
		 font-size: 18px;
	}
}
/* Jump links (intro band). Pills: --primary-color on white 5.01;
 hover white on --primary-color 5.01;
 active white on --primary-active 8.32. */
 .redesign-2026 .landing-2026 .lp-jump ul {
	 display: flex;
	 flex-wrap: wrap;
	 gap: .5rem;
	 list-style: none;
	 margin: 24px 0 0;
	 padding: 0;
}
 .redesign-2026 .landing-2026 .lp-jump li {
	 margin: 0;
}
 .redesign-2026 .landing-2026 .lp-jump a, .redesign-2026 .landing-2026 .lp-jump a:focus {
	 display: inline-block;
	 padding: .35rem 1rem;
	 border: 2px solid var(--primary-color);
	 border-radius: 999px;
	 color: var(--primary-color);
	 background-color: transparent;
	 font-size: 16px;
	 font-weight: 600;
	 line-height: 1.3;
	 text-decoration: none;
}
 .redesign-2026 .landing-2026 .lp-jump a:hover {
	 background-color: var(--primary-color);
	 border-color: var(--primary-color);
	 color: var(--white);
}
 .redesign-2026 .landing-2026 .lp-jump a:active {
	 background-color: var(--primary-active);
	 border-color: var(--primary-active);
	 color: var(--white);
}
 .redesign-2026 .landing-2026 .lp-band[id] {
	 scroll-margin-top: 1rem;
}
/* Back to top (AVP 10-26, BUILD 1029_4). landing-page-2026 prints p.lp-top at the end of each
   band the jump nav links to, only when the jump nav shows. Target is #lp-title, the h1 above
   the jump pills. Right-aligned 16px/600 link, arrow is decorative.
   White band: --primary-color 5.01, hover/focus/active --primary-active 8.32.
   Tint band (#F4F5F6): --primary-active 7.62, hover/focus/active --band-ink 11.14.
   (0,3,1) beats .page-content a:not(.btn) (0,2,1). */
 .redesign-2026 .landing-2026 .lp-top {
	 margin: 2rem 0 0;
	 text-align: right;
	 font-size: 16px;
	 font-weight: 600;
	 line-height: 1.3;
}
 .redesign-2026 .landing-2026 .lp-top a {
	 color: var(--primary-color);
	 text-decoration: underline;
	 text-underline-offset: 3px;
	 border-bottom: 0;
}
 .redesign-2026 .landing-2026 .lp-top a::after {
	 content: "\2191";
	 content: "\2191" / "";
	 display: inline-block;
	 margin-left: .35em;
	 text-decoration: none;
}
 .redesign-2026 .landing-2026 .lp-top a:hover, .redesign-2026 .landing-2026 .lp-top a:focus, .redesign-2026 .landing-2026 .lp-top a:active {
	 color: var(--primary-active);
}
 .redesign-2026 .landing-2026 .lp-band--tint .lp-top a {
	 color: var(--primary-active);
}
 .redesign-2026 .landing-2026 .lp-band--tint .lp-top a:hover, .redesign-2026 .landing-2026 .lp-band--tint .lp-top a:focus, .redesign-2026 .landing-2026 .lp-band--tint .lp-top a:active {
	 color: var(--band-ink);
}
 .redesign-2026 .landing-2026 #lp-title {
	 scroll-margin-top: 1rem;
}
/* Landing hero (AVP 5, BUILD 1029_5) - REPLACES the "Banner photo" block (.lp-banner) added in 1029_4.
   landing-page-2026 prints div.lp-hero when the page has a Banner image: the photo fills the box
   and the home's angled band (same --overlay-blue, same clip-path) sits along the bottom carrying
   the h1. Heights step down from the home's 700/625/545/466 so the top-level pages read as
   siblings of the home, not copies.
   h1 is gold, as on the home. Worst case (band over a white part of the photo): gold 4.50,
   white 6.76 - the h1 is large text (>= 30px, 600), which needs 3:1. Deep-blue box behind the
   photo if it fails to load. (0,3,1) beats .page-content img (0,1,1). */
 .redesign-2026 .landing-2026 .lp-hero {
	 position: relative;
	 display: flex;
	 align-items: flex-end;
	 height: 560px;
	 overflow: hidden;
	 background-color: var(--primary-deep);
}
 .redesign-2026 .landing-2026 .lp-hero-img {
	 position: absolute;
	 inset: 0;
	 width: 100%;
	 max-width: none;
	 height: 100%;
	 object-fit: cover;
	 object-position: center;
}
 .redesign-2026 .landing-2026 .lp-hero-band {
	 position: relative;
	 width: 100%;
	 background-color: var(--overlay-blue);
	 padding: 104px 16px 52px;
	 clip-path: polygon(0 100%, 0 35.15%, 100% 0, 100% 100%);
	 text-align: center;
}
 .redesign-2026 .landing-2026 .lp-hero-band h1 {
	 color: var(--yellow);
	 font-size: 60px;
	 font-weight: 600;
	 line-height: 1.1;
	 letter-spacing: var(--tracking-display);
	 margin: 0;
}
/* Intro band under a hero: the h1 has moved up, so less top padding. */
 .redesign-2026 .landing-2026 .lp-intro--after-hero {
	 padding-top: 36px;
}
 .redesign-2026 .landing-2026 .lp-intro--after-hero .lp-intro-body {
	 margin-top: 0;
}
 @media (max-width: 1199.98px) {
	 .redesign-2026 .landing-2026 .lp-hero {
		 height: 500px;
	}
	 .redesign-2026 .landing-2026 .lp-hero-band h1 {
		 font-size: 50px;
	}
}
 @media (max-width: 991.98px) {
	 .redesign-2026 .landing-2026 .lp-hero {
		 height: 440px;
	}
	 .redesign-2026 .landing-2026 .lp-hero-band {
		 padding: 84px 16px 40px;
	}
	 .redesign-2026 .landing-2026 .lp-hero-band h1 {
		 font-size: 40px;
	}
}
 @media (max-width: 600px) {
	 .redesign-2026 .landing-2026 .lp-hero {
		 height: 360px;
	}
	 .redesign-2026 .landing-2026 .lp-hero-band {
		 padding: 64px 16px 28px;
	}
	 .redesign-2026 .landing-2026 .lp-hero-band h1 {
		 font-size: 32px;
	}
}

/* ---------- Landing page components (get-started-landing, about-landing, BUILD 1030_6) ----------
   Section body markup only - no Format change. Bands that need their own colour are
   found with :has() on a marker class (.lp-stats, .lp-cta), so no Section ID is needed.
   Contrast (computed from tokens, verify with the picker):
   white bands: heading --heading-ink 12.16, body --body-ink 8.09, arrow link --primary-color 5.01;
   tint bands: body --band-ink 11.14, links --primary-active 7.62 (hover --band-ink 11.14);
   deep bands (--primary-deep, stats and CTA): white 12.16, gold figures 8.09, footnote --on-deep-muted 9.01;
   on the 8% white tile: white 9.64, gold 6.43; links white, hover gold 8.09, gold focus ring;
   step numerals and card icons --on-gold on gold 8.10. Gold is for buttons and accents, never a band (Mark 10-30). */

/* Button rows */
.redesign-2026 .landing-2026 .lp-btn-row,
.redesign-2026 .landing-2026 .lp-intro-body .lp-btn-row {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem 1rem;
	margin: 1.5rem 0 0;
}

/* Outline button (white / tint bands): primary on white 5.01, on tint 4.59; hover white on primary 5.01; active white on --primary-active 8.32 */
.redesign-2026 .landing-2026 .btn.lp-btn-outline {
	--bs-btn-color: var(--primary-color);
	--bs-btn-bg: transparent;
	--bs-btn-border-width: 2px;
	--bs-btn-border-color: var(--primary-color);
	--bs-btn-hover-color: var(--white);
	--bs-btn-hover-bg: var(--primary-color);
	--bs-btn-hover-border-color: var(--primary-color);
	--bs-btn-active-color: var(--white);
	--bs-btn-active-bg: var(--primary-active);
	--bs-btn-active-border-color: var(--primary-active);
}
/* Outline button on dark bands: white 12.16 on --primary-deep; hover deep on white 12.16; active --on-gold on gold 8.10 */
.redesign-2026 .landing-2026 .btn.lp-btn-outline-light {
	--bs-btn-color: var(--on-deep);
	--bs-btn-bg: transparent;
	--bs-btn-border-width: 2px;
	--bs-btn-border-color: var(--on-deep);
	--bs-btn-hover-color: var(--primary-deep);
	--bs-btn-hover-bg: var(--white);
	--bs-btn-hover-border-color: var(--white);
	--bs-btn-active-color: var(--on-gold);
	--bs-btn-active-bg: var(--yellow);
	--bs-btn-active-border-color: var(--yellow);
}

/* Text + video */
.redesign-2026 .landing-2026 .lp-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
	align-items: center;
	margin-top: 1.5rem;
}
.redesign-2026 .landing-2026 .lp-split-text > :last-child {
	margin-bottom: 0;
}
.redesign-2026 .landing-2026 .lp-video {
	overflow: hidden;
	border-radius: 20px;
	background-color: var(--primary-deep);
}
.redesign-2026 .landing-2026 .lp-video .ratio {
	margin: 0;
}
@media (min-width: 992px) {
	.redesign-2026 .landing-2026 .lp-split {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 3.5rem;
	}
}

/* Arrow links (steps and cards). Colour and hover come from the .lp-body link rules above. */
.redesign-2026 .landing-2026 .lp-body a.lp-arrow {
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.redesign-2026 .landing-2026 .lp-body a.lp-arrow::after {
	content: "\2192";
	content: "\2192" / "";
	display: inline-block;
	margin-left: .35em;
	text-decoration: none;
	transition: transform .2s ease;
}
.redesign-2026 .landing-2026 .lp-body a.lp-arrow:hover::after,
.redesign-2026 .landing-2026 .lp-body a.lp-arrow:focus::after {
	transform: translateX(.2em);
}
@media (prefers-reduced-motion: reduce) {
	.redesign-2026 .landing-2026 .lp-body a.lp-arrow::after {
		transition: none;
	}
}

/* Numbered steps: counter circle (gold, --on-gold 8.10) + connecting line (decorative) */
.redesign-2026 .landing-2026 .lp-body ol.lp-steps {
	list-style: none;
	max-width: 54rem;
	margin: 2rem 0 0;
	padding: 0;
	counter-reset: lp-step;
}
.redesign-2026 .landing-2026 .lp-body .lp-steps > li {
	position: relative;
	margin: 0;
	padding: 0 0 2.25rem 4.5rem;
	counter-increment: lp-step;
}
.redesign-2026 .landing-2026 .lp-body .lp-steps > li:last-child {
	padding-bottom: 0;
}
.redesign-2026 .landing-2026 .lp-body .lp-steps > li::before {
	content: counter(lp-step);
	content: counter(lp-step) / "";
	position: absolute;
	top: 0;
	left: 0;
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	background-color: var(--yellow);
	color: var(--on-gold);
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1;
}
.redesign-2026 .landing-2026 .lp-body .lp-steps > li:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 3.5rem;
	bottom: .5rem;
	left: calc(1.5rem - 1.5px);
	width: 3px;
	background-color: var(--brand-blue);
}
.redesign-2026 .landing-2026 .lp-body .lp-steps h3 {
	margin: 0 0 .35rem;
	padding-top: .5rem;
	font-size: 1.5rem;
	line-height: 1.25;
}
.redesign-2026 .landing-2026 .lp-body .lp-steps p {
	margin: 0 0 .5rem;
}
.redesign-2026 .landing-2026 .lp-body .lp-steps p:last-child {
	margin-bottom: 0;
}

/* Cards (3-up auto-fit; --two = 2 columns from 768px). Whole card is the link: the arrow link's ::before covers it. */
.redesign-2026 .landing-2026 .lp-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
	gap: 1.5rem;
	margin-top: 2rem;
}
.redesign-2026 .landing-2026 .lp-cards.lp-cards--two {
	grid-template-columns: minmax(0, 1fr);
}
@media (min-width: 768px) {
	.redesign-2026 .landing-2026 .lp-cards.lp-cards--two {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
.redesign-2026 .landing-2026 .lp-card {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 2rem;
	border: 1px solid var(--light-blue);
	border-radius: 20px;
	background-color: var(--white);
	box-shadow: 0 1px 3px color-mix(in srgb, var(--primary-deep) 15%, transparent);
}
.redesign-2026 .landing-2026 .lp-card:has(a):hover {
	border-color: var(--primary-color);
}
.redesign-2026 .landing-2026 .lp-card:has(a:focus-visible) {
	outline: 3px solid var(--focus-ring);
	outline-offset: 2px;
}
/* Card headings: h2 when nothing sits above the cards (About's Vision / Mission), h3 under a section h2 */
.redesign-2026 .landing-2026 .lp-body .lp-card :is(h2, h3) {
	margin: 0 0 .5rem;
	color: var(--heading-ink);
	font-size: 1.5rem;
	line-height: 1.25;
}
.redesign-2026 .landing-2026 .lp-body .lp-card p {
	margin: 0 0 1rem;
}
.redesign-2026 .landing-2026 .lp-body .lp-card p:last-child {
	margin-bottom: 0;
}
.redesign-2026 .landing-2026 .lp-body .lp-card p.lp-card-link {
	margin: auto 0 0;
	padding-top: .5rem;
}
.redesign-2026 .landing-2026 .lp-body .lp-card a.lp-arrow::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 20px;
}
.redesign-2026 .landing-2026 .lp-body .lp-card a.lp-arrow:focus-visible {
	outline: 0;
}
/* Icon circle from the card's own ::before (Font Awesome 6 Pro Light) */
.redesign-2026 .landing-2026 .lp-card--compass::before,
.redesign-2026 .landing-2026 .lp-card--location::before,
.redesign-2026 .landing-2026 .lp-card--comments::before {
	content: "\f14e";
	content: "\f14e" / "";
	display: grid;
	place-items: center;
	width: 4rem;
	height: 4rem;
	margin-bottom: 1.25rem;
	border-radius: 50%;
	background-color: var(--yellow);
	color: var(--on-gold);
	font-family: "Font Awesome 6 Pro";
	font-weight: 300;
	font-size: 1.75rem;
	line-height: 1;
}
.redesign-2026 .landing-2026 .lp-card--location::before {
	content: "\f3c5";
	content: "\f3c5" / "";
}
.redesign-2026 .landing-2026 .lp-card--comments::before {
	content: "\f086";
	content: "\f086" / "";
}

/* Deep stats band: any band holding .lp-stats. All text and links white (About adds copy, a list and a link). */
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) {
	background-color: var(--primary-deep);
}
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-body,
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-body h2,
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-body :is(p, li, h3) {
	color: var(--on-deep);
}
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-body h3 {
	margin-top: 2.5rem;
}
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-body a:not(.btn),
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-body a:not(.btn):focus,
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-top a {
	color: var(--on-deep);
	font-weight: 700;
}
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-body a:not(.btn):hover,
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-body a:not(.btn):active,
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-top a:hover,
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-top a:focus,
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) .lp-top a:active {
	color: var(--yellow);
}
.redesign-2026 .landing-2026 .lp-band:has(.lp-stats) a:focus-visible {
	outline: 3px solid var(--focus-ring-on-dark);
	outline-offset: 3px;
}
.redesign-2026 .landing-2026 .lp-stats {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.25rem;
	margin-top: 2rem;
}
@media (min-width: 768px) {
	.redesign-2026 .landing-2026 .lp-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.5rem;
	}
}
/* Six stats: three columns from 992px */
@media (min-width: 992px) {
	.redesign-2026 .landing-2026 .lp-stats.lp-stats--three {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
.redesign-2026 .landing-2026 .lp-stat {
	padding: 1.75rem 2rem;
	border-radius: 20px;
	background-color: color-mix(in srgb, var(--white) 8%, transparent);
}
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-stats p {
	margin: 0;
	color: var(--on-deep);
	font-size: 1.125rem;
	line-height: 1.45;
}
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-stats p.lp-stat-figure {
	margin-bottom: .5rem;
	color: var(--yellow);
	font-size: clamp(2.25rem, 1.25rem + 2.6vw, 3.5rem);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: var(--tracking-display);
	overflow-wrap: break-word;
}

/* Enrollment breakdown (About): total beside a two-column list, on the 8% tile */
.redesign-2026 .landing-2026 .lp-enroll {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.25rem 3rem;
	align-items: center;
	margin-top: 2rem;
	padding: 1.75rem 2rem;
	border-radius: 20px;
	background-color: color-mix(in srgb, var(--white) 8%, transparent);
}
@media (min-width: 768px) {
	.redesign-2026 .landing-2026 .lp-enroll {
		grid-template-columns: auto minmax(0, 1fr);
	}
}
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-enroll p.lp-enroll-total {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.1;
}
.redesign-2026 .landing-2026 .lp-enroll-total strong {
	display: block;
	color: var(--yellow);
	font-size: clamp(3rem, 2rem + 3vw, 4.5rem);
	font-weight: 700;
	letter-spacing: var(--tracking-display);
}
.redesign-2026 .landing-2026 .lp-body ul.lp-enroll-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .75rem 2rem;
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 1.125rem;
}
@media (max-width: 575.98px) {
	.redesign-2026 .landing-2026 .lp-body ul.lp-enroll-list {
		grid-template-columns: minmax(0, 1fr);
	}
}
.redesign-2026 .landing-2026 .lp-body .lp-enroll-list li {
	margin: 0;
	line-height: 1.35;
}
.redesign-2026 .landing-2026 .lp-enroll-list strong {
	display: block;
	color: var(--yellow);
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.1;
}
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-enroll p.lp-note {
	grid-column: 1 / -1;
	margin: 0;
	color: var(--on-deep-muted);
	font-size: .9375rem;
}

/* Statement (About): --heading-ink 12.16 white / 11.14 tint; second line --primary-active 8.32 / 7.62 */
.redesign-2026 .landing-2026 .lp-body p.lp-statement {
	margin: 0 0 2rem;
	color: var(--heading-ink);
	font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem);
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: var(--tracking-heading);
}
.redesign-2026 .landing-2026 .lp-statement span {
	display: block;
}
.redesign-2026 .landing-2026 .lp-statement span + span {
	color: var(--primary-active);
}


/* Values grid (About): --band-ink 11.14 on the tint tile; gold top rule is a decorative accent.
   Flex, not grid, so a short last row centres: 4 across from 992px, 2 from 576px, 1 below (1103_1) */
.redesign-2026 .landing-2026 .lp-body ul.lp-values {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1.25rem;
	list-style: none;
	margin: 1.5rem 0 0;
	padding: 0;
	font-size: inherit;
}
.redesign-2026 .landing-2026 .lp-body ul.lp-values > li {
	flex: 0 0 100%;
}
@media (min-width: 576px) {
	.redesign-2026 .landing-2026 .lp-body ul.lp-values > li {
		flex-basis: calc((100% - 1.25rem) / 2);
	}
}
@media (min-width: 992px) {
	.redesign-2026 .landing-2026 .lp-body ul.lp-values > li {
		flex-basis: calc((100% - 3.75rem) / 4);
	}
}
.redesign-2026 .landing-2026 .lp-body .lp-values > li {
	margin: 0;
	padding: 1.5rem;
	border-top: 4px solid var(--yellow);
	border-radius: 0 0 12px 12px;
	background-color: var(--fast-facts-bg-color);
}
.redesign-2026 .landing-2026 .lp-body .lp-values h3 {
	margin: 0 0 .35rem;
	font-size: 1.25rem;
}
.redesign-2026 .landing-2026 .lp-body .lp-values p {
	margin: 0;
	color: var(--band-ink);
	font-size: 1rem;
	line-height: 1.5;
}

/* Quotes: brand editorial face (Newsreader semibold italic), gold rule (decorative) */
.redesign-2026 .landing-2026 .lp-quotes {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2.5rem;
}
@media (min-width: 768px) {
	.redesign-2026 .landing-2026 .lp-quotes {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 3rem;
	}
}
.redesign-2026 .landing-2026 .lp-body .lp-quote blockquote {
	margin: 0;
	padding: .25rem 0 .25rem 1.5rem;
	border-left: 6px solid var(--yellow);
}
.redesign-2026 .landing-2026 .lp-body .lp-quote blockquote p {
	margin: 0;
	color: var(--band-ink);
	font-family: var(--font-editorial);
	font-size: clamp(1.375rem, 1.1rem + 1vw, 1.75rem);
	font-style: italic;
	font-weight: 600;
	line-height: 1.35;
}
.redesign-2026 .landing-2026 .lp-body .lp-quote p.lp-quote-by {
	margin: 1rem 0 0 calc(6px + 1.5rem);
	color: var(--body-ink);
	font-size: .875rem;
	font-weight: 700;
	letter-spacing: var(--tracking-label);
	text-transform: uppercase;
}
.redesign-2026 .landing-2026 .lp-quote-by::before {
	content: "\2014\00a0";
	content: "\2014\00a0" / "";
}

/* Closing CTA: deep band. White 12.16; link hover gold 8.09; gold focus ring (the deep ring vanishes here). */
.redesign-2026 .landing-2026 .lp-band:has(.lp-cta) {
	background-color: var(--primary-deep);
}
.redesign-2026 .landing-2026 .lp-cta {
	max-width: 44rem;
	margin: 0 auto;
	text-align: center;
}
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-cta h2,
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-cta p {
	color: var(--on-deep);
}
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-cta p {
	font-size: 1.25rem;
}
.redesign-2026 .landing-2026 .lp-cta .lp-btn-row {
	justify-content: center;
	margin-bottom: 1.25rem;
}
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-cta a:not(.btn),
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-cta a:not(.btn):focus {
	color: var(--on-deep);
	font-weight: 700;
}
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-cta a:not(.btn):hover,
.redesign-2026 .landing-2026 .lp-band .lp-body .lp-cta a:not(.btn):active {
	color: var(--yellow);
}
.redesign-2026 .landing-2026 .lp-band:has(.lp-cta) a:focus-visible {
	outline: 3px solid var(--focus-ring-on-dark);
	outline-offset: 3px;
}

/* Not Sure page (1030_9).
   Quote cards: the heading is the student's voice - editorial face, --primary-active 8.32 on the white card.
   Question list: lp-steps with a single p per item, aligned to the numeral, --heading-ink 12.16.
   A lone quote in a section (outside .lp-quotes) gets room and a reading width. */
.redesign-2026 .landing-2026 .lp-body .lp-card--quote h3 {
	color: var(--primary-active);
	font-family: var(--font-editorial);
	font-style: italic;
	font-weight: 600;
}
.redesign-2026 .landing-2026 .lp-body .lp-steps > li > p:only-child {
	padding-top: .55rem;
	color: var(--heading-ink);
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.4;
}
.redesign-2026 .landing-2026 .lp-body > .lp-quote {
	max-width: 48rem;
	margin-top: 2.5rem;
}

/* Three-up cards (1030_10): one column, two from 768px, three from 992px */
.redesign-2026 .landing-2026 .lp-cards.lp-cards--three {
	grid-template-columns: minmax(0, 1fr);
}
@media (min-width: 768px) {
	.redesign-2026 .landing-2026 .lp-cards.lp-cards--three {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (min-width: 992px) {
	.redesign-2026 .landing-2026 .lp-cards.lp-cards--three {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Statement under a section h2 (Not Sure "Rather than asking..."): steps down below the h2 in size
   and switches to the editorial face, so the heading leads. About's statement (no h2 above it) keeps
   the large size. --heading-ink 11.14 / --primary-active 7.62 on the tint. */
.redesign-2026 .landing-2026 .lp-body h2 + p.lp-statement {
	margin: .25rem 0 1.25rem;
	font-family: var(--font-editorial);
	font-size: clamp(1.25rem, 1.05rem + .6vw, 1.5rem);
	font-style: italic;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.35;
}

/* Photos in landing content (1105_1): photo + text split, stats mosaic, card avatar */
.redesign-2026 .landing-2026 .lp-photo-split { display: grid; gap: 1.5rem 2.5rem; align-items: center; margin: 0 0 2.5rem; }
@media (min-width: 992px) {
  .redesign-2026 .landing-2026 .lp-photo-split { grid-template-columns: 5fr 7fr; }
  .redesign-2026 .landing-2026 .lp-photo-split--right { grid-template-columns: 7fr 5fr; }
  .redesign-2026 .landing-2026 .lp-photo-split--right > .lp-photo { order: 2; }
}
.redesign-2026 .landing-2026 .lp-photo { margin: 0; border-radius: 12px; overflow: hidden; }
.redesign-2026 .landing-2026 .lp-photo img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.redesign-2026 .landing-2026 .lp-photo-split .lp-statement { margin-top: 0; text-align: left; }
.redesign-2026 .landing-2026 .lp-photo-split-text > :last-child { margin-bottom: 0; }
/* stats mosaic: 4 across from 992px (photo, 3 stats / 3 stats, photo), 2 across below, photos hidden on phones */
.redesign-2026 .landing-2026 .lp-stats.lp-stats--mosaic { display: grid; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 992px) { .redesign-2026 .landing-2026 .lp-stats.lp-stats--mosaic { grid-template-columns: repeat(4, 1fr); } }
.redesign-2026 .landing-2026 .lp-stats--mosaic .lp-stat--photo { position: relative; min-height: 10rem; padding: 0; overflow: hidden; }
.redesign-2026 .landing-2026 .lp-stats--mosaic .lp-stat--photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 575.98px) { .redesign-2026 .landing-2026 .lp-stats--mosaic .lp-stat--photo { display: none; } }
/* round headshot at the top of a card */
.redesign-2026 .landing-2026 .lp-card-avatar { display: block; width: 6rem; height: 6rem; margin: 0 0 1rem; border-radius: 50%; object-fit: cover; object-position: center 20%; }
/* sticky variant: photo stays in view beside a long column (Get Started steps) */
@media (min-width: 992px) {
  .redesign-2026 .landing-2026 .lp-photo-split--sticky { align-items: start; }
  .redesign-2026 .landing-2026 .lp-photo-split--sticky > .lp-photo { position: sticky; top: 2rem; }
}
/* sticky variant: photo stays in view beside a long column (Get Started steps) */
@media (min-width: 992px) {
  .redesign-2026 .landing-2026 .lp-photo-split--sticky { align-items: start; }
  .redesign-2026 .landing-2026 .lp-photo-split--sticky > .lp-photo { position: sticky; top: 2rem; }
}
/* photo at the top of a landing card */
.redesign-2026 .landing-2026 .lp-card-photo { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; margin: 0 0 1rem; border-radius: 8px; }
/* cards in centred flex rows: 3 + 2 at desktop, 2 + 2 + 1 on tablets, 1 on phones */
.redesign-2026 .landing-2026 .lp-cards.lp-cards--center { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem; }
.redesign-2026 .landing-2026 .lp-cards--center > .lp-card { flex: 0 0 100%; }
@media (min-width: 576px) { .redesign-2026 .landing-2026 .lp-cards--center > .lp-card { flex-basis: calc((100% - 1.5rem) / 2); } }
@media (min-width: 992px) { .redesign-2026 .landing-2026 .lp-cards--center > .lp-card { flex-basis: calc((100% - 3rem) / 3); } }

/* ===================================================================== 12. LEGACY AUTHOR COMPONENTS: PHOTO LINK TILES (.enrollment-type-link) - 1022_2 ===================================================================== ~100 pages paste the global.css "Enrollment Page" tile: a.enrollment-type-link (photo as inline background-image or a global.css class) > span.enrollment-type-link-content > span.enrollment-type-link-name, span.glyph-circle > .glyphicon, span.enrollment-type-link-info Restyled in place - no content edits. Legacy behaviour kept: the panel covers the lower half and slides up on hover (and on .touch) to show the info line. Keyboard focus now does the same as hover. Specificity: the anchor rule must beat .page-content a:not(.btn) (0,2,1). Child rules use :where() so they sit at (0,2,0) - they beat global.css's base tile rules by load order, while global.css's hover / .touch state rules (0,3,0) still win. Panel: --primary-deep at 85% - worst case over a white photo, white text 7.83. No photo (and in Preview, where root-relative images fail): the tile is --primary-deep. Glyph: --on-gold on gold 8.10. Name stays uppercase (Mark, 10-22: authored case varies, caps keep the tiles uniform without checking every page). */
 .redesign-2026 .page-content a.enrollment-type-link {
	 border-radius: 20px;
	 background-color: var(--primary-deep);
	 color: var(--white);
	 text-decoration: none;
	 border-bottom: 0;
}
 .redesign-2026 .page-content a.enrollment-type-link:hover, .redesign-2026 .page-content a.enrollment-type-link:focus, .redesign-2026 .page-content a.enrollment-type-link:active {
	 color: var(--white);
	 text-decoration: none;
}
 :where(.redesign-2026 .page-content) .enrollment-type-link .enrollment-type-link-content {
	 display: flex;
	 flex-direction: column;
	 align-items: center;
	 gap: .5rem;
	 box-sizing: border-box;
	/* width 100% + padding must not overflow right */
	 left: 0;
	 width: 100%;
	 padding: 1rem 1.25rem;
	 background: color-mix(in srgb, var(--primary-deep) 85%, transparent);
	 color: var(--white);
	 line-height: 1.45;
}
 :where(.redesign-2026 .page-content) .enrollment-type-link .enrollment-type-link-name {
	 margin: 0;
	 font-family: var(--font-sans);
	 font-size: 1.25rem;
	 font-weight: 700;
	 line-height: 1.25;
	 letter-spacing: var(--tracking-label);
	 text-transform: uppercase;
	/* authored case varies page to page;
	 caps keep tiles uniform */
}
 :where(.redesign-2026 .page-content) .enrollment-type-link .glyph-circle {
	 display: inline-flex;
	 align-items: center;
	 justify-content: center;
	 width: 36px;
	 height: 36px;
	 margin: 0;
	 padding: 0;
	 border-radius: 50%;
	 background: var(--yellow);
	 color: var(--on-gold);
	 font-size: 16px;
	 line-height: 1;
}
 :where(.redesign-2026 .page-content) .enrollment-type-link .glyph-circle .glyphicon {
	 top: 0;
	 color: inherit;
}
 :where(.redesign-2026 .page-content) .enrollment-type-link .enrollment-type-link-info {
	 font-size: 1rem;
	 line-height: 1.45;
}
/* Keyboard focus = hover (global.css only reveals on :hover and .touch) */
 .redesign-2026 .page-content a.enrollment-type-link:focus-visible .enrollment-type-link-content {
	 top: 0;
}
 .redesign-2026 .page-content a.enrollment-type-link:focus-visible .glyph-circle {
	 display: none;
}
 .redesign-2026 .page-content a.enrollment-type-link:focus-visible .enrollment-type-link-info {
	 display: block;
	 opacity: 1;
}
 .redesign-2026 .page-content a.enrollment-type-link:focus-visible .enrollment-type-link-name {
	 border-bottom: 1px solid var(--yellow);
	 padding-bottom: 7px;
}
/* .custom: gold tile with an SVG icon, no photo. --on-gold 8.10;
 hover/focus deep, white 12.16 */
 .redesign-2026 .page-content a.enrollment-type-link.custom {
	 background-color: var(--yellow);
	 color: var(--on-gold);
}
 .redesign-2026 .page-content a.enrollment-type-link.custom:hover, .redesign-2026 .page-content a.enrollment-type-link.custom:focus-visible {
	 background-color: var(--primary-deep);
	 color: var(--white);
}
 .redesign-2026 .page-content a.enrollment-type-link.custom .enrollment-type-link-content {
	 background: transparent;
	 color: inherit;
}
/* .enrollment-type-row-small: legacy greys inactive tiles with opacity .5 (white text fails). Solid instead: --primary-color 5.01, hover/active --primary-deep 12.16. */
 .redesign-2026 .page-content .enrollment-type-row-small a.enrollment-type-link {
	 opacity: 1;
	 background-color: var(--primary-color);
}
 .redesign-2026 .page-content .enrollment-type-row-small a.enrollment-type-link:hover, .redesign-2026 .page-content .enrollment-type-row-small a.enrollment-type-link:focus-visible, .redesign-2026 .page-content .enrollment-type-row-small a.enrollment-type-link.active {
	 background-color: var(--primary-deep);
}
 .redesign-2026 .page-content .enrollment-type-row-small a.enrollment-type-link .enrollment-type-link-content {
	 background: transparent;
}
 @media (prefers-reduced-motion: reduce) {
	 .redesign-2026 .page-content .enrollment-type-link .enrollment-type-link-content {
		 transition: none;
	}
}
/* ---------- Then and Now alumni gallery (/photostory/, _One Column Page) - 1022_3 ---------- The index and its ~46 story pages carry author <style> blocks in the body: thin (200) Roboto Condensed quotes in #00A8E1 - 2.6:1 on white, fails on live too - and .learnMore a {
	 color: white 
}
, which .page-content a:not(.btn) (0,2,1) overrides in 2026, leaving primary-blue text on the navy bar. Fixed at render;
 the author CSS stays. Quotes take the brand editorial face (Newsreader semibold italic) in --primary-color 5.01. Cyan borders -> --brand-blue (decorative). Learn More bar --primary-deep, white 12.16, gold ring. Index cards: equal-height columns with the Learn More bar pinned to the bottom (the author's fixed 100px quote height clipped longer quotes once the face changed). */
 .redesign-2026 .page-content .intro h2 {
	 text-align: center;
}
 .redesign-2026 .page-content #storyContainer .story {
	 display: flex;
	 flex-direction: column;
}
 .redesign-2026 .page-content #storyContainer img {
	 border-color: var(--brand-blue);
}
 .redesign-2026 .page-content .storyExcerpt {
	 flex: 1 1 auto;
	 display: flex;
	 flex-direction: column;
	 border-color: var(--brand-blue);
}
 .redesign-2026 .page-content .storyExcerpt p, .redesign-2026 .page-content .pullout {
	 font-family: var(--font-editorial);
	 font-weight: 600;
	 font-style: italic;
	 letter-spacing: 0;
	 color: var(--primary-color);
}
 .redesign-2026 .page-content .storyExcerpt p {
	 flex: 1 1 auto;
	 height: auto;
	 min-height: 100px;
	 margin: 0;
	 padding: 16px 20px;
	 font-size: 1.125rem;
	 line-height: 1.45;
}
 .redesign-2026 .page-content .pullout {
	 font-size: 1.5rem;
	 line-height: 1.4;
}
 .redesign-2026 .page-content .learnMore {
	 background-color: var(--primary-deep);
	 padding: 12px 0;
}
 .redesign-2026 .page-content .learnMore a, .redesign-2026 .page-content .learnMore a:visited {
	 color: var(--white);
	 font-size: 1.25rem;
	 font-weight: 600;
	 text-decoration: none;
}
 .redesign-2026 .page-content .learnMore a:hover, .redesign-2026 .page-content .learnMore a:focus, .redesign-2026 .page-content .learnMore a:active {
	 color: var(--white);
	 text-decoration: underline;
	 text-underline-offset: 3px;
}
 .redesign-2026 .page-content .learnMore a:focus-visible {
	 outline: 3px solid var(--focus-ring-on-dark);
	 outline-offset: 2px;
}
/* Story pages: the white text card */
 .redesign-2026 .page-content .storytext {
	 border-color: var(--brand-blue);
}
 .redesign-2026 .page-content .storytext > :first-child {
	 margin-top: 0;
}
/* Student boxes (legacy global.css "Current Students Page") .student-box = header link + photo + hover panel or link list;
 10 live pages (2026-10-23). Restyled in place as a static card: header (deep band, gold title) > photo > content panel, always visible. The legacy hover overlay hid link lists from touch and keyboard users. Sanctioned component until a layout tool replaces it. */
 .redesign-2026 .page-content .student-box {
	 display: flex;
	 flex-direction: column;
	 height: calc(100% - 1.5rem);
	/* equal heights in a row */
	 margin-bottom: 1.5rem;
	 border: 1px solid var(--light-blue);
	/* decorative */
	 border-radius: 20px;
	 overflow: hidden;
	 background: var(--bs-body-bg);
}
 .redesign-2026 .page-content .student-box > :last-child {
	 flex-grow: 1;
}
/* Header: gold on --primary-deep 8.09;
 hover white on --primary-color 5.01 */
 .redesign-2026 .page-content .student-box-header {
	 width: auto;
	 height: auto;
	 background: var(--primary-deep);
}
 .redesign-2026 .page-content .student-box-header :is(h2, h3) {
	 margin: 0;
	 font-family: var(--font-sans);
	 font-size: 1.0625rem;
	 font-weight: 700;
	 line-height: 1.3;
	 letter-spacing: var(--tracking-label);
	 text-transform: uppercase;
	/* authored case varies (CE) */
	 text-align: left;
}
 .redesign-2026 .page-content .student-box-header :is(h2, h3) a {
	 position: static;
	 display: grid;
	 grid-template-columns: 1fr auto;
	 column-gap: .75rem;
	 align-content: center;
	 width: 100%;
	 height: auto;
	 min-height: 4.5rem;
	 padding: .875rem 1.25rem;
	 color: var(--yellow);
	 background: none;
	 border: 0;
	 text-decoration: none;
}
 .redesign-2026 .page-content .student-box-header a span {
	 position: static;
	 display: block;
	 grid-column: 1;
	 transform: none;
	 text-align: left;
	 font-size: inherit !important;
	/* author inline sizes (CE index) */
	 margin: 0 !important;
}
 .redesign-2026 .page-content .student-box-header a span + span {
	 margin-top: .125rem !important;
	/* subtitle line, e.g. "Completed each semester" */
	 font-size: .8125rem !important;
	 font-weight: 600;
}
 .redesign-2026 .page-content .student-box-header a span em {
	 font-style: normal;
}
 .redesign-2026 .page-content .student-box-header a::after {
	 content: "\f054";
	/* chevron-right */
	 font-family: "Font Awesome 6 Pro";
	 font-weight: 900;
	 font-size: .8125em;
	 grid-column: 2;
	 grid-row: 1 / span 2;
	 align-self: center;
}
 .redesign-2026 .page-content .student-box-header :is(h2, h3) a:is(:hover, :focus) {
	 color: var(--on-deep);
	 background: var(--primary-color);
	 border: 0;
}
 .redesign-2026 .page-content .student-box-header :is(h2, h3) a:active {
	 color: var(--on-deep);
	 background: var(--primary-active);
}
 .redesign-2026 .page-content .student-box-header :is(h2, h3) a:focus-visible {
	 outline: 3px solid var(--focus-ring-on-dark);
	 outline-offset: -6px;
}
/* Photo: <img> (aca-resource-box-pic) or background image (student-box-pic) */
 .redesign-2026 .page-content .student-box :is(.aca-resource-box-pic, .student-box-pic) {
	 position: relative;
	 height: auto !important;
	/* author inline height: 100% */
	 aspect-ratio: 16 / 9;
	 overflow: hidden;
	 background-color: var(--fast-facts-bg-color);
	 background-size: cover;
	 background-position: center;
}
 .redesign-2026 .page-content .student-box :is(.aca-resource-box-pic, .student-box-pic) > a {
	 display: block;
	 height: 100%;
	 border: 0;
}
 .redesign-2026 .page-content .student-box :is(.aca-resource-box-pic, .student-box-pic) img {
	 display: block;
	 width: 100%;
	 height: 100%;
	 object-fit: cover;
	 background: var(--fast-facts-bg-color);
	/* fallback when the photo fails */
}
 .redesign-2026 .page-content .student-box > :is(.aca-resource-box-pic, .student-box-pic):last-child:not(:has(.student-box-info-text > *)) {
	 flex-grow: 0;
}
/* Photo + panel: the old overlay panel now sits below the photo */
 .redesign-2026 .page-content .student-box :is(.aca-resource-box-pic, .student-box-pic):has(.student-box-info-text > *) {
	 display: flex;
	 flex-direction: column;
	 flex-grow: 1;
	 aspect-ratio: auto;
	 background-color: var(--bs-body-bg);
}
 .redesign-2026 .page-content .student-box :is(.aca-resource-box-pic, .student-box-pic):has(.student-box-info-text > *) > a, .redesign-2026 .page-content .student-box :is(.aca-resource-box-pic, .student-box-pic):has(.student-box-info-text > *) img {
	 height: auto;
	 aspect-ratio: 16 / 9;
}
 .redesign-2026 .page-content .student-box .student-box-pic:has(.student-box-info-text > *) {
	 background-size: 100% auto;
	 background-position: center top;
}
 .redesign-2026 .page-content .student-box .student-box-pic:has(.student-box-info-text > *)::before {
	 content: "";
	 display: block;
	 aspect-ratio: 16 / 9;
	/* reserves the photo area above the panel */
}
/* Panel */
 .redesign-2026 .page-content .student-box .student-box-info {
	 position: static;
	 display: block;
	 flex-grow: 1;
	 height: auto;
	 opacity: 1;
	 transition: none;
	 background: var(--bs-body-bg);
	 color: var(--body-ink);
}
 .redesign-2026 .page-content .student-box .student-box-info:not(:has(.student-box-info-text > *)) {
	 display: none;
}
 .redesign-2026 .page-content .student-box .student-box-info-text {
	 display: block;
	 height: auto;
	 padding: 1rem 1.25rem;
	 opacity: 1;
	 transform: none;
	 transition: none;
	 line-height: 1.5;
}
 .redesign-2026 .page-content .student-box .student-box-info-text p {
	 display: block;
}
 .redesign-2026 .page-content .student-box .student-box-info-text > :last-child {
	 margin-bottom: 0;
}
 .redesign-2026 .page-content .student-box-info-text :is(h2, h3, h4) {
	 margin: 0 0 .75rem;
	 font-family: var(--font-sans);
	 font-size: 1.125rem;
	 font-weight: 700;
	 line-height: 1.3;
	 color: var(--heading-ink) !important;
	/* author inline white, written for the overlay */
	 text-transform: none;
}
 .redesign-2026 .page-content .student-box-info-text .med-num {
	 font-size: inherit;
	 color: inherit;
}
/* Link lists (in a card, and standalone on Thayne pages) */
 .redesign-2026 .page-content .student-box-links {
	 padding: 1rem 1.25rem;
	 background: var(--bs-body-bg);
	 color: var(--body-ink);
}
 .redesign-2026 .page-content .student-box-links :is(h2, h3, h4) {
	 margin: 0 0 .5rem;
	 font-family: var(--font-sans);
	 font-size: 1.125rem;
	 font-weight: 700;
	 line-height: 1.3;
	 color: var(--heading-ink);
	 text-transform: none;
}
/* Standalone boxes carry inline pastel/gold fills (primary on gold 3.34 failed): neutralised to the soft tint, ink --band-ink 11.14, links --primary-active 7.62 */
 .redesign-2026 .page-content :not(.student-box) > .student-box-links {
	 height: calc(100% - 1.5rem);
	 margin-bottom: 1.5rem;
	 border-radius: 20px;
	 background: var(--fast-facts-bg-color) !important;
	 color: var(--band-ink);
}
 .redesign-2026 .page-content :not(.student-box) > .student-box-links :is(h2, h3, h4) {
	 color: var(--band-ink);
}
 .redesign-2026 .page-content :is(.student-box-info-text, .student-box-links) ul {
	 display: block;
	/* style.css .link-list is a 2-column flex list */
	 list-style: none;
	 margin: 0;
	 padding: 0;
}
 .redesign-2026 .page-content :is(.student-box-info-text, .student-box-links) ul li {
	 width: auto;
	 margin: 0;
	 padding: .4rem 0;
	 border-top: 1px solid var(--light-blue);
	 border-bottom: 0;
}
 .redesign-2026 .page-content :is(.student-box-info-text, .student-box-links) ul li:first-child {
	 border-top: 0;
	 padding-top: 0;
}
 .redesign-2026 .page-content :is(.student-box-info-text, .student-box-links) ul li a {
	 display: inline;
	 padding: 0;
	 background: none;
	/* legacy icn-arrow.png */
	 font-weight: inherit;
	 color: var(--primary-color);
}
 .redesign-2026 .page-content :is(.student-box-info-text, .student-box-links) ul li a:is(:hover, :focus, :active) {
	 color: var(--primary-active);
}
 .redesign-2026 .page-content :not(.student-box) > .student-box-links ul li a {
	 color: var(--primary-active);
}
 .redesign-2026 .page-content :not(.student-box) > .student-box-links ul li a:is(:hover, :focus, :active) {
	 color: var(--primary-deep);
}
/* 1024px: global.css wipes .student-box-pic backgrounds with !important (production hides them too), so drop the empty photo area */
 @media (max-width: 1024px) {
	 .redesign-2026 .page-content .student-box .student-box-pic:not(:has(.student-box-info-text > *)) {
		 display: none;
	}
	 .redesign-2026 .page-content .student-box .student-box-pic:has(.student-box-info-text > *) {
		 flex-grow: 0;
		 background: var(--bs-body-bg) !important;
	}
	 .redesign-2026 .page-content .student-box .student-box-pic:has(.student-box-info-text > *)::before {
		 display: none;
	}
}
/* Gallery items and listings (art-item-2026, art-gallery-index-2026)  Art Collection Item Configuration (Art Collection, Student Photography Showcase, Beloved Exhibition). Sanctioned gallery markup: manual gallery pages should use .art-gallery too. (2026-10-23) */
 .redesign-2026 .page-content .art-item {
	 margin-bottom: 1.5rem;
}
 .redesign-2026 .page-content .art-item-figure {
	 margin: 0 0 1.5rem;
	 text-align: center;
}
 .redesign-2026 .page-content .art-item-figure img {
	 display: inline-block;
	 max-width: 100%;
	 height: auto;
	 max-height: 80vh;
}
 .redesign-2026 .page-content .art-item-meta {
	 display: flex;
	 align-items: flex-start;
	 gap: 1.5rem;
}
 .redesign-2026 .page-content .art-item-portrait {
	 flex: none;
	 width: 9rem;
	 height: auto;
	 border-radius: 6px;
}
/* Details: hairline rows as Directory;
 label --heading-ink 12.16, text --body-ink 8.09 */
 .redesign-2026 .page-content .art-item-details {
	 flex: 1 1 auto;
	 min-width: 0;
	 margin: 0;
}
 .redesign-2026 .page-content .art-item-details > div {
	 display: grid;
	 grid-template-columns: 9rem 1fr;
	 column-gap: 1.5rem;
	 padding: .625rem 0;
	 border-top: 1px solid var(--light-blue);
}
 .redesign-2026 .page-content .art-item-details > div:first-child {
	 border-top: 0;
	 padding-top: 0;
}
 .redesign-2026 .page-content .art-item-details dt {
	 font-weight: 700;
	 color: var(--heading-ink);
}
 .redesign-2026 .page-content .art-item-details dd {
	 margin: 0;
	 color: var(--body-ink);
}
 .redesign-2026 .page-content .art-item-details dd > :last-child {
	 margin-bottom: 0;
}
 @media (max-width: 575.98px) {
	 .redesign-2026 .page-content .art-item-meta {
		 flex-direction: column;
	}
	 .redesign-2026 .page-content .art-item-details > div {
		 grid-template-columns: 1fr;
	}
}
/* Listing: masonry columns (3 / 2 / 1 by available width), one link per item */
 .redesign-2026 .page-content .art-gallery {
	 columns: 3 14rem;
	 column-gap: 1.25rem;
	 margin: 0 0 1.5rem;
	 padding: 0;
	 list-style: none;
}
 .redesign-2026 .page-content .art-gallery-item {
	 break-inside: avoid;
	 margin: 0 0 1.25rem;
	 padding: 0;
}
 .redesign-2026 .page-content .art-gallery-item a {
	 display: block;
	 color: var(--primary-color);
	 text-decoration: none;
	 border: 0;
}
 .redesign-2026 .page-content .art-gallery-item img {
	 display: block;
	 width: 100%;
	 height: auto;
	 border-radius: 6px;
	 background: var(--fast-facts-bg-color);
}
 .redesign-2026 .page-content .art-gallery-title {
	 display: block;
	 margin-top: .5rem;
	 font-weight: 600;
	 line-height: 1.35;
	 text-align: center;
	 text-decoration: underline;
	 text-decoration-color: transparent;
	 text-underline-offset: .2em;
}
 .redesign-2026 .page-content .art-gallery-item a:is(:hover, :focus, :active) .art-gallery-title {
	 color: var(--primary-active);
	 text-decoration-color: currentColor;
}
 .redesign-2026 .page-content .art-gallery-item a:is(:hover, :focus) img {
	 outline: 3px solid var(--primary-color);
	 outline-offset: 2px;
}
 .redesign-2026 .page-content .art-gallery-item a:focus-visible {
	 outline: 3px solid var(--focus-ring);
	 outline-offset: 4px;
	 border-radius: 6px;
}
 .redesign-2026 .page-content .art-gallery-item a:focus-visible img {
	 outline: 0;
}
/* ===================================================================== 13. CONCURRENT ENROLLMENT (ce-main-2026 Format) - 1022_4 ===================================================================== Highlights (repeating image + heading + text + button): image beside the text from 768px, stacked below;
 hairline separator instead of the legacy yellow rule. Text on white --body-ink 8.09;
 headings and buttons come from section 6. */
 .redesign-2026 .page-content .ce-highlight {
	 display: grid;
	 grid-template-columns: minmax(0, 1fr);
	 gap: 1rem 2rem;
	 margin-top: 2.5rem;
	 padding-top: 2.5rem;
	 border-top: 1px solid var(--light-blue);
}
 @media (min-width: 768px) {
	 .redesign-2026 .page-content .ce-highlight:has(> .ce-highlight-image) {
		 grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
	}
}
 .redesign-2026 .page-content .ce-highlight-image img {
	 display: block;
	 width: 100%;
	 height: auto;
	 border-radius: 12px;
}
 .redesign-2026 .page-content .ce-highlight-text > h2:first-child {
	 margin-top: 0;
}
/* CE sidebar (ce-left-nav-2026): the feature heading sits under the section title like a quick-link group heading (size from section 2's .sidebar-nav h3);
 section headings ("Resources") are small labels, --body-ink 8.09. */
 .redesign-2026 .sidebar-nav .ce-nav-title {
	 margin: 0 0 12px;
}
 .redesign-2026 .sidebar-nav .ce-nav-subhead {
	 margin: 1.25rem 0 .5rem;
	 padding-left: 24px;
	 color: var(--body-ink);
	 font-size: .8125rem;
	 font-weight: 700;
	 letter-spacing: var(--tracking-label);
	 text-transform: uppercase;
}
 .redesign-2026 .sidebar-nav .ce-nav-title + .ce-nav-subhead {
	 margin-top: 0;
}
 .redesign-2026 .sidebar-nav .ce-nav-steps {
	 padding-left: 2.75rem;
}
/* ---------- CE About (ce-about-2026, BUILD 1105_1) ----------
   Bands, jump pills, hero and typography come from section 11 (.landing-2026,
   .lp-band, .lp-body); these are the CE pieces only. Lists are element-qualified
   (0,3,1+) so they beat section 11's .lp-body list rules by order.
   Ratios: step numbers --primary-color 5.01 white / 4.59 tint (40px bold, decorative);
   stat figures --primary-deep 12.16 on the white card; quotes and staff titles
   --heading-ink 12.16; credits, stat and staff text --body-ink 8.09 white / 7.41 tint. */
.redesign-2026 .ce-about-2026 .cea-split {
	display: grid;
	gap: 2.5rem;
}
@media (min-width: 992px) {
	.redesign-2026 .ce-about-2026 .cea-split--side {
		grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
		align-items: start;
	}
}
.redesign-2026 .ce-about-2026 .cea-side img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 20px;
	margin: 0 0 1.5rem;
}
/* Reasons */
.redesign-2026 .ce-about-2026 ol.cea-steps {
	list-style: none;
	margin: 0;
	padding: 0;
}
.redesign-2026 .ce-about-2026 ol.cea-steps > li {
	display: grid;
	grid-template-columns: 3.5rem minmax(0, 1fr);
	gap: 1rem;
	margin: 0 0 1.5rem;
	padding: 0 0 1.5rem;
	border-bottom: 1px solid var(--light-blue);
}
.redesign-2026 .ce-about-2026 .cea-step-num {
	color: var(--primary-color);
	font-size: 2.5rem;
	font-weight: 800;
	line-height: 1;
}
.redesign-2026 .ce-about-2026 .cea-step-text h3 {
	margin: 0 0 .5rem;
}
.redesign-2026 .ce-about-2026 .cea-step-text p:last-child {
	margin-bottom: 0;
}
/* Quotes */
.redesign-2026 .ce-about-2026 figure.cea-quote {
	margin: 2rem 0 0;
	padding: 0 0 0 1.25rem;
	border-left: 4px solid var(--yellow);
}
.redesign-2026 .ce-about-2026 .cea-side figure.cea-quote,
.redesign-2026 .ce-about-2026 ul.cea-quotes figure.cea-quote {
	margin-top: 0;
}
.redesign-2026 .ce-about-2026 figure.cea-quote blockquote {
	margin: 0;
	padding: 0;
	border: 0;
}
.redesign-2026 .ce-about-2026 figure.cea-quote blockquote p {
	color: var(--heading-ink);
	font-family: var(--font-editorial);
	font-style: italic;
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.45;
	margin: 0 0 .75rem;
}
.redesign-2026 .ce-about-2026 figure.cea-quote blockquote p:last-child {
	margin-bottom: 0;
}
.redesign-2026 .ce-about-2026 figure.cea-quote figcaption {
	color: var(--body-ink);
	margin-top: .5rem;
}
.redesign-2026 .ce-about-2026 figure.cea-quote figcaption::before {
	content: "\2014\00a0";
}
.redesign-2026 .ce-about-2026 ul.cea-quotes {
	display: grid;
	gap: 2rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.redesign-2026 .ce-about-2026 ul.cea-quotes > li {
	margin: 0;
}
/* Did You Know */
.redesign-2026 .ce-about-2026 ul.cea-stats {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
	gap: 1.25rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.redesign-2026 .ce-about-2026 ul.cea-stats > li {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	margin: 0;
	padding: 1.25rem;
	background-color: var(--white);
	border: 1px solid var(--light-blue);
	border-radius: 12px;
}
.redesign-2026 .ce-about-2026 ul.cea-stats img {
	flex: 0 0 4rem;
	width: 4rem;
	height: 4rem;
	object-fit: cover;
	border-radius: 50%;
}
.redesign-2026 .ce-about-2026 .cea-stat-text p {
	color: var(--body-ink);
	margin: 0;
}
.redesign-2026 .ce-about-2026 .cea-stat-text p.cea-stat-figure {
	color: var(--primary-deep);
	font-size: 2rem;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: var(--tracking-display);
	margin-bottom: .25rem;
}
.redesign-2026 .ce-about-2026 .cea-stat-text p.cea-stat-link {
	margin-top: .5rem;
}
/* Meet Our Staff */
.redesign-2026 .ce-about-2026 ul.cea-staff {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
	gap: 2.5rem 2rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.redesign-2026 .ce-about-2026 ul.cea-staff > li {
	margin: 0;
	text-align: center;
}
.redesign-2026 .ce-about-2026 ul.cea-staff img {
	display: block;
	width: 9rem;
	height: 9rem;
	margin: 0 auto 1rem;
	object-fit: cover;
	border-radius: 50%;
}
.redesign-2026 .ce-about-2026 ul.cea-staff h3 {
	font-size: 1.25rem;
	margin: 0 0 .25rem;
}
.redesign-2026 .ce-about-2026 p.cea-staff-title {
	color: var(--heading-ink);
	font-weight: 600;
	margin: 0 0 .5rem;
}
.redesign-2026 .ce-about-2026 .cea-staff-desc,
.redesign-2026 .ce-about-2026 .cea-staff-desc p {
	font-size: 1rem;
	line-height: 1.5;
}
.redesign-2026 .ce-about-2026 .cea-staff-desc p:last-child {
	margin-bottom: 0;
}
/* Program Features */
.redesign-2026 .ce-about-2026 p.cea-subheading {
	color: var(--heading-ink);
	font-size: 1.25rem;
	font-weight: 600;
	margin: 0 0 1rem;
}
.redesign-2026 .ce-about-2026 p.cea-cta {
	margin: 1.5rem 0 0;
}
/* Q and A: BS5 accordion, styled by section 8 */
.redesign-2026 .ce-about-2026 .cea-faq .accordion-header {
	margin: 0;
}

/* ---------- CE Course Offerings (ce-courses-2026, BUILD 1105_1) ----------
   Filters on the soft tint above a BS5 accordion (section 8 styles the items).
   Ratios: filter labels --band-ink 11.14 on the tint; detail labels and codes
   --heading-ink 12.16, values and count --body-ink 8.09 on white; control borders
   --granite-gray 4.75 white / 4.36 tint (UI 3:1); Clear filters --primary-color 5.01. */
.redesign-2026 .ceco-filters {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
	gap: 1rem 1.25rem;
	margin: 0 0 1.5rem;
	padding: 1.25rem;
	background-color: var(--fast-facts-bg-color);
	border-radius: 12px;
}
.redesign-2026 .ceco-filters[hidden],
.redesign-2026 .ceco-item[hidden],
.redesign-2026 .ceco-clear[hidden],
.redesign-2026 .ceco-empty[hidden] {
	display: none;
}
.redesign-2026 .ceco-field--q {
	grid-column: 1 / -1;
}
.redesign-2026 .ceco-field label {
	display: block;
	margin: 0 0 .35rem;
	color: var(--band-ink);
	font-size: .9375rem;
	font-weight: 600;
}
.redesign-2026 .ceco-field input,
.redesign-2026 .ceco-field select {
	box-sizing: border-box;
	width: 100%;
	min-height: 2.75rem;
	padding: .5rem .75rem;
	background-color: var(--white);
	border: 1px solid var(--granite-gray);
	border-radius: 6px;
	color: var(--body-ink);
	font: inherit;
	font-size: 1rem;
}
.redesign-2026 .ceco-field input:focus-visible,
.redesign-2026 .ceco-field select:focus-visible {
	outline: 3px solid var(--primary-deep);
	outline-offset: 2px;
}
.redesign-2026 .ceco-status {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .5rem 1rem;
	margin: 0 0 1rem;
}
.redesign-2026 p.ceco-count {
	color: var(--body-ink);
	margin: 0;
}
.redesign-2026 .ceco-clear,
.redesign-2026 .ceco-clear:focus {
	padding: 0;
	background: none;
	border: 0;
	color: var(--primary-color);
	font: inherit;
	text-decoration: underline;
	cursor: pointer;
}
.redesign-2026 .ceco-clear:hover {
	color: var(--primary-hover);
}
.redesign-2026 .ceco-clear:active {
	color: var(--primary-active);
}
.redesign-2026 .ceco-clear:focus-visible {
	outline: 3px solid var(--primary-deep);
	outline-offset: 2px;
}
.redesign-2026 p.ceco-empty {
	margin: 0;
	padding: 1.25rem;
	background-color: var(--fast-facts-bg-color);
	border-radius: 12px;
	color: var(--band-ink);
}
.redesign-2026 .ceco-item {
	scroll-margin-top: 1rem;
}
.redesign-2026 .ceco-item .accordion-button {
	gap: .75rem;
}
.redesign-2026 .ceco-code {
	flex: 0 0 auto;
	min-width: 6.5rem;
	font-weight: 700;
}
.redesign-2026 .ceco-desc p {
	margin: 0 0 .75rem;
}
.redesign-2026 dl.ceco-details {
	margin: 1rem 0 0;
}
.redesign-2026 dl.ceco-details > div {
	display: grid;
	grid-template-columns: 14rem minmax(0, 1fr);
	gap: .25rem 1rem;
	padding: .5rem 0;
	border-top: 1px solid var(--light-blue);
}
.redesign-2026 dl.ceco-details > div:last-child {
	border-bottom: 1px solid var(--light-blue);
}
.redesign-2026 dl.ceco-details dt {
	color: var(--heading-ink);
	font-weight: 600;
	margin: 0;
}
.redesign-2026 dl.ceco-details dd {
	color: var(--body-ink);
	margin: 0;
}
.redesign-2026 dl.ceco-details dd p {
	margin: 0 0 .5rem;
}
.redesign-2026 dl.ceco-details dd p:last-child {
	margin-bottom: 0;
}
@media (max-width: 575.98px) {
	.redesign-2026 dl.ceco-details > div {
		grid-template-columns: minmax(0, 1fr);
	}
}
.redesign-2026 h3.ceco-qual-heading {
	font-size: 1.125rem;
	margin: 1.5rem 0 .5rem;
}
.redesign-2026 .ceco-qual h4 {
	font-size: 1rem;
	margin: 1rem 0 .5rem;
}
.redesign-2026 .ceco-qual p {
	margin: 0 0 .5rem;
}
/*   14. Placement (placement-video-2026) /placement/dt and /placement/fl Video Pages. Layout is Bootstrap 5 (ratio, row/col, card, stretched-link);
 this only adds the finish. */
 .redesign-2026 .page-content .placement-video {
	 margin-bottom: 3rem;
}
 .redesign-2026 .page-content .placement-video > .ratio {
	 margin-bottom: 1.5rem;
	 border-radius: 6px;
	 overflow: hidden;
	 background: var(--primary-deep);
}
 .redesign-2026 .page-content .placement-courses {
	 margin-bottom: 2rem;
}
 .redesign-2026 .page-content .placement-course {
	 border: 1px solid var(--light-blue);
	/* decorative */
	 border-radius: 12px;
	 overflow: hidden;
}
 .redesign-2026 .page-content .placement-course-thumb {
	 position: relative;
}
 .redesign-2026 .page-content .placement-course-thumb img {
	 object-fit: cover;
}
/* play mark: white on --primary-deep 12.16 */
 .redesign-2026 .page-content .placement-course-play {
	 position: absolute;
	 top: 50%;
	 left: 50%;
	 transform: translate(-50%, -50%);
	 display: grid;
	 place-items: center;
	 width: 3.25rem;
	 height: 3.25rem;
	 border-radius: 50%;
	 background: var(--primary-deep);
	 color: var(--on-deep);
	 font-size: 1.25rem;
	 pointer-events: none;
}
 .redesign-2026 .page-content .placement-course .card-title {
	 margin: 0;
	 font-family: var(--font-sans);
	 font-size: 1.125rem;
	 font-weight: 700;
	 line-height: 1.3;
	 text-transform: none;
	/* legacy bare-h3 caps */
}
 .redesign-2026 .page-content .placement-course .card-title a {
	 color: var(--primary-color);
	 text-decoration: none;
	 border: 0;
}
 .redesign-2026 .page-content .placement-course .card-title a:is(:hover, :focus, :active) {
	 color: var(--primary-active);
	 text-decoration: underline;
}
/* the stretched link covers the card, so ring the card */
 .redesign-2026 .page-content .placement-course:has(a:focus-visible) {
	 outline: 3px solid var(--focus-ring);
	 outline-offset: 2px;
}
 .redesign-2026 .page-content .placement-course .card-title a:focus-visible {
	 outline: 0;
}
 .redesign-2026 .page-content .placement-actions {
	 display: flex;
	 flex-wrap: wrap;
	 justify-content: flex-end;
	 gap: .75rem;
}
/*   15. Tab Page (tab-2026)   Bootstrap 5 nav-tabs, themed through its own --bs-nav-tabs-* variables. Tabs: --primary-color 5.01 on the soft tint (hover --primary-active 7.62);
 selected: --primary-deep on white with a 3px --primary-color bar (3:1+). */
 .redesign-2026 .page-content .tab-group-header {
	 margin-top: 2.5rem;
}
 .redesign-2026 .page-content .nav-tabs {
	 --bs-nav-tabs-border-color: var(--light-blue);
	 --bs-nav-tabs-border-width: 1px;
	 --bs-nav-tabs-border-radius: 6px;
	 --bs-nav-tabs-link-hover-border-color: transparent;
	 --bs-nav-tabs-link-active-color: var(--primary-deep);
	 --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
	 --bs-nav-tabs-link-active-border-color: var(--light-blue) var(--light-blue) var(--bs-body-bg);
	 gap: .25rem;
	 margin: 1rem 0 0;
	 padding: 0;
	 list-style: none;
}
 .redesign-2026 .page-content .nav-tabs .nav-item {
	 margin: 0;
	 padding: 0;
}
 .redesign-2026 .page-content .nav-tabs .nav-link {
	 position: relative;
	 padding: .625rem 1rem;
	 font-family: var(--font-sans);
	 font-size: 1rem;
	 font-weight: 600;
	 line-height: 1.3;
	 color: var(--primary-color);
	 background: var(--fast-facts-bg-color);
	 text-transform: none;
}
 .redesign-2026 .page-content .nav-tabs .nav-link:is(:hover, :focus) {
	 color: var(--primary-active);
}
 .redesign-2026 .page-content .nav-tabs .nav-link:active {
	 color: var(--primary-deep);
}
 .redesign-2026 .page-content .nav-tabs .nav-link.active {
	 color: var(--primary-deep);
	 background: var(--bs-body-bg);
	 font-weight: 700;
}
 .redesign-2026 .page-content .nav-tabs .nav-link.active::before {
	 content: "";
	 position: absolute;
	 top: -1px;
	 left: -1px;
	 right: -1px;
	 height: 3px;
	 border-radius: 6px 6px 0 0;
	 background: var(--primary-color);
}
 .redesign-2026 .page-content .nav-tabs .nav-link:focus-visible {
	 outline: 3px solid var(--focus-ring);
	 outline-offset: 2px;
	 box-shadow: none;
	 z-index: 1;
}
 .redesign-2026 .page-content .tab-content {
	 margin-bottom: 2rem;
}
 .redesign-2026 .page-content .tab-content > .tab-pane {
	 padding-top: 1.25rem;
}
 .redesign-2026 .page-content .tab-content > .tab-pane:focus-visible {
	 outline: 3px solid var(--focus-ring);
	 outline-offset: 4px;
}
/* Print every pane, labelled with its tab */
 @media print {
	 .redesign-2026 .page-content .nav-tabs {
		 display: none;
	}
	 .redesign-2026 .page-content .tab-content > .tab-pane {
		 display: block !important;
		 opacity: 1 !important;
	}
	 .redesign-2026 .page-content .tab-content > .tab-pane::before {
		 content: attr(data-tab-title);
		 display: block;
		 margin: 1rem 0 .5rem;
		 font-weight: 700;
	}
}
/* ========================================================================== 16. Newsroom (post-2026, listings, _sidebar-2026, default-home-2026) Formats: Newsroom > _cms/formats. Banner posts carry their own h1, so the title band is hidden for them (same approach as landing pages, section 11). Contrast, computed from the tokens (confirm with the DevTools picker): panel over a photo = --primary-deep at 85%;
 worst case (white photo) white 7.80, gold kicker 5.19;
 on solid --primary-deep (phones) 12.16 / 8.09. Category kicker --primary-active on white 8.32;
 card and sidebar titles --heading-ink 12.16;
 meta --body-ink 8.09;
 share buttons white on --primary-color 5.01 (hover 6.56, active 8.32). ========================================================================== */
/* ---------- Post ---------- */
 body.redesign-2026:has(.post-header--banner) .pageTitleBanner {
	 display: none;
}
 .redesign-2026 .post-2026 .post-header {
	 margin: 0 0 1.5rem;
}
 .redesign-2026 .post-2026 .post-header--banner {
	 border-radius: 20px;
	 overflow: hidden;
}
 .redesign-2026 .post-2026 .post-hero {
	 display: block;
	 width: 100%;
	 aspect-ratio: 3 / 2;
	 object-fit: cover;
}
 .redesign-2026 .post-2026 .post-header-text {
	 margin: 0;
}
 .redesign-2026 .post-2026 .post-header--banner .post-header-text {
	 padding: 1.25rem 1.5rem;
	 background: var(--primary-deep);
}
 .redesign-2026 .post-2026 .post-category {
	 margin: 0 0 .5rem;
	 font-size: .8125rem;
	 font-weight: 700;
	 letter-spacing: var(--tracking-label);
	 text-transform: uppercase;
	 color: var(--primary-active);
}
 .redesign-2026 .post-2026 .post-header--banner .post-category {
	 color: var(--yellow);
}
 .redesign-2026 .post-2026 .post-header-text h1 {
	 margin: 0 0 .75rem;
	 font-family: var(--font-sans);
	 font-size: clamp(1.75rem, 1.2rem + 2vw, 2.5rem);
	 letter-spacing: var(--tracking-heading);
	 text-transform: none;
	 color: var(--on-deep);
}
 .redesign-2026 .post-2026 .post-meta {
	 display: flex;
	 flex-wrap: wrap;
	 gap: .25rem 1rem;
	 margin: 0;
	 padding: 0;
	 list-style: none;
	 font-size: .9375rem;
	 color: var(--body-ink);
}
 .redesign-2026 .post-2026 .post-meta li {
	 margin: 0;
}
 .redesign-2026 .post-2026 .post-header--banner .post-meta {
	 color: var(--on-deep);
}
 @media (min-width: 768px) {
	 .redesign-2026 .post-2026 .post-header--banner {
		 position: relative;
	}
	 .redesign-2026 .post-2026 .post-hero {
		 aspect-ratio: 2 / 1;
	}
	 .redesign-2026 .post-2026 .post-header--banner .post-header-text {
		 position: absolute;
		 left: 0;
		 right: 0;
		 bottom: 0;
		 padding: 1.5rem 2rem;
		 background: color-mix(in srgb, var(--primary-deep) 85%, transparent);
	}
}
/* ---------- Share links (post and sidebar) ---------- */
 .redesign-2026 .post-share ul {
	 display: flex;
	 justify-content: flex-end;
	 gap: .5rem;
	 margin: 0 0 1.5rem;
	 padding: 0;
	 list-style: none;
}
 .redesign-2026 .post-share li {
	 margin: 0;
}
 .redesign-2026 .post-share a {
	 display: inline-flex;
	 align-items: center;
	 justify-content: center;
	 width: 2.75rem;
	 height: 2.75rem;
	 border: 0;
	 border-radius: .5rem;
	 font-size: 1.5rem;
	 line-height: 1;
	 text-decoration: none;
	 background: var(--primary-color);
	 color: var(--on-deep);
}
 .redesign-2026 .post-share a:hover, .redesign-2026 .post-share a:focus {
	 background: var(--primary-hover);
	 color: var(--on-deep);
	 border: 0;
}
 .redesign-2026 .post-share a:active {
	 background: var(--primary-active);
	 color: var(--on-deep);
	 border: 0;
}
/* ---------- Post body and tags ---------- */
 .redesign-2026 .post-2026 .post-body img {
	 max-width: 100%;
	 height: auto;
}
 .redesign-2026 .post-2026 .post-tags {
	 margin: 2rem 0 0;
	 padding-top: 1rem;
	 border-top: 1px solid var(--light-blue);
	 font-size: .9375rem;
	 color: var(--body-ink);
}
 .redesign-2026 .post-2026 .post-tags-label {
	 margin-right: .25rem;
	 font-weight: 700;
	 color: var(--heading-ink);
}
/* ---------- Listings: post cards (_cards-2026) ---------- */
 .redesign-2026 .post-listing .post-intro {
	 margin: 0 0 2rem;
}
 .redesign-2026 .post-listing .post-section-title {
	 margin: 0 0 1.25rem;
	 padding-top: 1rem;
	 border-top: 1px solid var(--light-blue);
	 font-family: var(--font-sans);
	 font-size: 1.375rem;
	 letter-spacing: var(--tracking-heading);
	 text-transform: none;
	 color: var(--heading-ink);
}
 .redesign-2026 .post-cards {
	 display: grid;
	 grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr));
	 gap: 1.5rem;
	 margin: 0 0 2.5rem;
	 padding: 0;
	 list-style: none;
}
 .redesign-2026 .post-cards > li {
	 margin: 0;
}
 .redesign-2026 .post-card {
	 position: relative;
	 display: flex;
	 flex-direction: column;
	 overflow: hidden;
	 border: 1px solid var(--light-blue);
	 border-radius: 12px;
}
 .redesign-2026 .post-card[hidden] {
	 display: none;
}
 .redesign-2026 .post-card-img {
	 display: block;
	 width: 100%;
	 aspect-ratio: 3 / 2;
	 object-fit: cover;
}
 .redesign-2026 .post-card-body {
	 padding: 1rem 1.125rem 1.25rem;
}
 .redesign-2026 .post-card .post-category {
	 margin: 0 0 .375rem;
	 font-size: .8125rem;
	 font-weight: 700;
	 letter-spacing: var(--tracking-label);
	 text-transform: uppercase;
	 color: var(--primary-active);
}
 .redesign-2026 .post-card .post-card-title {
	 margin: 0 0 .5rem;
	 font-family: var(--font-sans);
	 font-size: 1.125rem;
	 line-height: 1.3;
	 letter-spacing: var(--tracking-heading);
	 text-transform: none;
}
 .redesign-2026 .post-card .post-card-title a, .redesign-2026 .post-card .post-card-title a:focus, .redesign-2026 .post-card .post-card-title a:active {
	 border-bottom: 0;
	 text-decoration: none;
	 color: var(--heading-ink);
}
 .redesign-2026 .post-card .post-card-title a:hover, .redesign-2026 .post-card .post-card-title a:focus {
	 color: var(--primary-active);
	 text-decoration: underline;
}
 .redesign-2026 .post-card .post-card-title a:active {
	 color: var(--primary-darker);
}
 .redesign-2026 .post-card .post-card-title a:focus-visible {
	 outline: 0;
}
 .redesign-2026 .post-card:has(a:focus-visible) {
	 outline: 3px solid var(--primary-deep);
	 outline-offset: 2px;
}
 .redesign-2026 .post-card .post-meta {
	 display: flex;
	 flex-wrap: wrap;
	 gap: .25rem 1rem;
	 margin: 0;
	 font-size: .9375rem;
	 color: var(--body-ink);
}
/* ---------- Sidebar (_sidebar-2026) ---------- */
 .redesign-2026 .post-sidebar {
	 margin-top: 2rem;
}
 @media (min-width: 768px) {
	 .redesign-2026 .post-sidebar {
		 margin-top: 0;
	}
}
 .redesign-2026 .post-widget {
	 margin: 0 0 2.5rem;
}
 .redesign-2026 .post-widget-title {
	 margin: 0 0 1.25rem;
	 padding-top: 1rem;
	 border-top: 1px solid var(--light-blue);
	 font-family: var(--font-sans);
	 font-size: 1.375rem;
	 letter-spacing: var(--tracking-heading);
	 text-transform: none;
	 color: var(--heading-ink);
}
 .redesign-2026 .post-widget-body h3 {
	 font-size: 1.125rem;
}
 .redesign-2026 .post-category-list {
	 margin: 0;
	 padding: 0;
	 list-style: none;
}
 .redesign-2026 .post-category-list li {
	 margin: 0;
	 border-bottom: 1px solid var(--light-blue);
}
 .redesign-2026 .post-category-list a {
	 display: flex;
	 justify-content: space-between;
	 gap: 1rem;
	 padding: .75rem 0;
	 border-bottom: 0;
	 text-decoration: none;
	 font-weight: 600;
	 color: var(--heading-ink);
}
 .redesign-2026 .post-category-list a:hover, .redesign-2026 .post-category-list a:focus {
	 border-bottom: 0;
	 color: var(--primary-active);
}
 .redesign-2026 .post-category-list a:hover .post-category-name, .redesign-2026 .post-category-list a:focus .post-category-name {
	 text-decoration: underline;
}
 .redesign-2026 .post-category-list a:active {
	 border-bottom: 0;
	 color: var(--primary-darker);
}
 .redesign-2026 .post-category-list .post-count {
	 font-weight: 400;
	 color: var(--body-ink);
}
 .redesign-2026 .post-contact {
	 margin: 0 0 1rem;
	 color: var(--body-ink);
}
 .redesign-2026 .post-sidebar .post-cards {
	 grid-template-columns: 1fr;
	 margin-bottom: 0;
}
 .redesign-2026 .post-share--sidebar ul {
	 justify-content: flex-start;
	 margin-bottom: 0;
}
/* ---------- Home: featured posts (default-home-2026) ---------- */
 .redesign-2026 .post-features {
	 margin: 0 0 2.5rem;
}
 .redesign-2026 .post-features-list {
	 display: grid;
	 grid-template-columns: 1fr;
	 gap: 1.5rem;
	 margin: 0;
	 padding: 0;
	 list-style: none;
}
 .redesign-2026 .post-features-list > li {
	 margin: 0;
}
 .redesign-2026 .post-feature {
	 position: relative;
	 isolation: isolate;
	 display: flex;
	 flex-direction: column;
	 overflow: hidden;
	 border-radius: 20px;
	 background: var(--primary-deep);
}
 .redesign-2026 .post-feature-img {
	 display: block;
	 width: 100%;
	 aspect-ratio: 16 / 9;
	 object-fit: cover;
}
 .redesign-2026 .post-feature-body {
	 padding: 1.25rem 1.5rem;
	 background: var(--primary-deep);
}
 .redesign-2026 .post-feature .post-category {
	 margin: 0 0 .5rem;
	 font-size: .8125rem;
	 font-weight: 700;
	 letter-spacing: var(--tracking-label);
	 text-transform: uppercase;
	 color: var(--yellow);
}
 .redesign-2026 .post-feature .post-feature-title {
	 margin: 0 0 .5rem;
	 font-family: var(--font-sans);
	 font-size: 1.25rem;
	 line-height: 1.25;
	 letter-spacing: var(--tracking-heading);
	 text-transform: none;
}
 .redesign-2026 .post-feature--lead .post-feature-title {
	 font-size: clamp(1.5rem, 1.1rem + 1.5vw, 2rem);
}
 .redesign-2026 .post-feature .post-feature-title a, .redesign-2026 .post-feature .post-feature-title a:focus, .redesign-2026 .post-feature .post-feature-title a:active {
	 border-bottom: 0;
	 text-decoration: none;
	 color: var(--on-deep);
}
 .redesign-2026 .post-feature .post-feature-title a:hover, .redesign-2026 .post-feature .post-feature-title a:focus, .redesign-2026 .post-feature .post-feature-title a:active {
	 text-decoration: underline;
}
 .redesign-2026 .post-feature .post-feature-title a:focus-visible {
	 outline: 0;
}
 .redesign-2026 .post-feature:has(a:focus-visible) {
	 outline: 3px solid var(--primary-deep);
	 outline-offset: 2px;
}
 .redesign-2026 .post-feature .post-meta {
	 margin: 0;
	 font-size: .9375rem;
	 color: var(--on-deep);
}
/* embed-2026 (/today/): less space above, All News button right-aligned under the features */
.redesign-2026 .sidebarContentSection:has(.post-features--embed) { padding-top: 1.5rem; }
.redesign-2026 .post-features-more { margin: 1.25rem 0 0; text-align: right; }
.redesign-2026 .post-features-more .btn { text-transform: uppercase; }

 @media (min-width: 992px) {
	 .redesign-2026 .post-features-list {
		 grid-template-columns: 2fr 1fr;
		 grid-auto-rows: 15rem;
	}
	 .redesign-2026 .post-feature--lead {
		 grid-row: span 2;
	}
	 .redesign-2026 .post-feature-img {
		 position: absolute;
		 inset: 0;
		 z-index: -1;
		 height: 100%;
		 aspect-ratio: auto;
	}
	 .redesign-2026 .post-feature-body {
		 margin-top: auto;
		 background: color-mix(in srgb, var(--primary-deep) 85%, transparent);
	}
}
/* /today/ (News & Events) RESOURCE body: events list on white, sidebar column */
.redesign-2026 .page-content .today-cal-nav { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 0 1rem; }
.redesign-2026 .page-content .today-cal-nav .btn { margin: 0; }
.redesign-2026 .page-content .today-events .slcc-events { list-style: none; margin: 0; padding: 0; }
.redesign-2026 .page-content .today-events .slcc-events .event { gap: 1rem; margin: 0; padding: 1rem 0; border-top: 1px solid var(--light-blue); }
.redesign-2026 .page-content .today-events .slcc-events .event:first-child { border-top: 0; }
/* date badge: --on-gold on gold 8.10 */
.redesign-2026 .page-content .today-events .event-date { width: 4rem; height: 4rem; border-radius: 8px; background: var(--yellow); font-weight: 700; line-height: 1.1; }
.redesign-2026 .page-content .today-events .event-date span { color: var(--on-gold); }
.redesign-2026 .page-content .today-events .event-date span:last-child { font-size: 1.5rem; }
.redesign-2026 .page-content .today-events .title { font-size: 1.125rem; font-weight: 700; line-height: 1.4; margin: 0 0 .25rem; text-transform: none; }
.redesign-2026 .page-content .today-events .description p { margin: 0; font-size: 1rem; }
/* sidebar */
@media (max-width: 767.98px) { .redesign-2026 .page-content .today-aside { margin-top: 2.5rem; } }
.redesign-2026 .page-content .today-social { display: flex; justify-content: center; gap: 1.25rem; margin: 0 0 1.5rem; padding: 0; }
.redesign-2026 .page-content .today-social li { margin: 0; }
/* icons --primary-color 5.01; hover/focus/active --primary-active 8.32 */
.redesign-2026 .page-content .today-social a { color: var(--primary-color); font-size: 2rem; line-height: 1; text-decoration: none; border-bottom: 0; }
.redesign-2026 .page-content .today-social a:hover,
.redesign-2026 .page-content .today-social a:focus,
.redesign-2026 .page-content .today-social a:active { color: var(--primary-active); }
/* subscribe panel: white on --primary-deep 12.16; gold button with --on-gold 8.10 */
.redesign-2026 .page-content .today-subscribe { background: var(--primary-deep); border-radius: 12px; padding: 1.5rem; text-align: center; }
.redesign-2026 .page-content .today-subscribe h2 { color: var(--white); font-size: 1.375rem; margin: 0 0 1rem; }
.redesign-2026 .page-content .today-subscribe .form-label { display: block; color: var(--white); font-weight: 600; margin: 0 0 .375rem; text-align: left; }
.redesign-2026 .page-content .today-subscribe .form-control { box-sizing: border-box; width: 100%; margin: 0 0 1rem; }
.redesign-2026 .page-content .today-subscribe .form-control:focus,
.redesign-2026 .page-content .today-subscribe .btn:focus-visible { outline: 3px solid var(--focus-ring-on-dark); outline-offset: 2px; }
.redesign-2026 .page-content .today-subscribe .btn { margin: 0; }
/* cards: title white on --primary-deep 12.16; whole card ringed on keyboard focus */
.redesign-2026 .page-content .today-card { margin-top: 1.5rem; border: 1px solid var(--light-blue); border-radius: 12px; overflow: hidden; }
.redesign-2026 .page-content .today-card-title { background: var(--primary-deep); color: var(--white); font-size: 1.25rem; margin: 0; padding: .75rem 1rem; text-align: center; }
.redesign-2026 .page-content .today-card a { display: block; border-bottom: 0; }
.redesign-2026 .page-content .today-card a:focus-visible { outline: 0; }
.redesign-2026 .page-content .today-card:has(a:focus-visible) { outline: 3px solid var(--focus-ring); outline-offset: 2px; }
.redesign-2026 .page-content .today-card img { display: block; width: 100%; height: auto; }
.redesign-2026 .page-content .today-card--logo img { padding: 1.5rem; }
/* hairline between the news band and the events/sidebar body */
.redesign-2026 .post-features--embed { padding-bottom: 2rem; margin-bottom: 2.5rem; border-bottom: 1px solid var(--light-blue); }