@font-face {
  font-family: "TRACK Syne";
  src: url("../fonts/Syne-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
}

@font-face {
  font-family: "TRACK Manrope";
  src: url("../fonts/Manrope-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
}

@font-face {
  font-family: "TRACK Oswald";
  src: url("../fonts/Oswald-Medium.ttf") format("truetype");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "TRACK Compacta";
  src: url("../fonts/compacta.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "TRACK Neuzeit";
  src: url("../fonts/Neuzeit_ff/NeuzeitSBook.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "TRACK Neuzeit Grotesk";
  src: url("../fonts/Neuzeit_ff/Neuzeit Grotesk W01 Regular.otf") format("opentype");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "TRACK Eurostile Extended";
  src: url("../fonts/EurostileExtendedBlack.ttf") format("truetype");
  font-style: normal;
  font-weight: 800;
  font-display: swap;
}

/* ── T.R.A.C.K Design System ── */
:root {
  /* ── Midnight Broadcast Tokens ── */
  --mb-bg: #171F22;
  --mb-card-light: #F4EFE6;
  --mb-text: #EFECE6;
  --mb-muted: #C2BCB2;
  --mb-red: #D34E36;
  --mb-slate: #1E282C;
  --mb-line: rgba(239, 236, 230, 0.12);
  --mb-line-solid: #2A363B;

  /* ── Core Vintage Tokens ── */
  --navy:         #00416A;  /* Primary Accent Lineage */
  --ash:          var(--mb-muted);  /* Secondary Muted Tone */
  --brick:        var(--mb-red);  /* Primary Editorial Theme Accent */
  --warm-cream:   var(--mb-text);  /* Document Matte Background */
  --gunmetal:     var(--mb-bg);  /* High Contrast Slate Ink */

  /* ── Structural Semantic Layout Mapping ── */
  --parchment:    var(--warm-cream);
  --cream:        var(--mb-card-light);  /* Structural Card Canvas Surface */
  --cream-dark:   #E6DDD0;  /* Deepened Content Canvas Surface */
  --ink:          var(--gunmetal);
  --ink-light:    #3d4a50;
  --brown-mid:    #5a6a70;
  --muted:        #4A565A;  /* Darkened from #7a8a8e to resolve WCAG contrast violation */
  --border:       var(--mb-line-solid);
  --border-light: var(--mb-line);

  /* ── Refactored Accent Bindings ── */
  --brand-accent:       var(--brick);
  --brand-accent-dark:  #6b2c22;
  --brand-accent-light: #c47a6e;

  /* backward-compat aliases (used throughout CSS/JS) */
  --amber:        var(--brick);
  --amber-dark:   #6b2c22;
  --amber-light:  #c47a6e;
  --red-hot:      var(--brick);
  --red-light:    #a84e40;
  --orient:       var(--navy);
  --orient-light: #7ab0cc;
  --intl-accent:        var(--navy);
  --intl-accent-light:  #7ab0cc;

  /* ── Dark Mode Storage Tokens ── */
  --dm-bg:        var(--mb-bg);
  --dm-surface:   var(--mb-slate);
  --dm-surface2:  #223034;
  --dm-border:    var(--mb-line-solid);
  --dm-text:      var(--mb-text);
  --dm-muted:     var(--mb-muted);

  /* ── Focus & Interaction Tokens ── */
  --focus-ring: rgba(122, 176, 204, 0.28);
  --panel-shadow: 0 8px 32px rgba(26, 14, 5, 0.14);
  --dm-panel-shadow: 0 10px 28px rgba(0, 0, 0, 0.38);
  --interactive-hover: rgba(0, 65, 106, 0.08);
  --interactive-hover-dark: rgba(122, 176, 204, 0.14);
}

@media (prefers-color-scheme: dark) {
  :root {
    --parchment:    var(--dm-bg);
    --cream:        var(--dm-surface);
    --cream-dark:   var(--dm-surface2);
    --ink:          var(--dm-text);
    --ink-light:    var(--dm-muted);
    --brown-mid:    var(--ash);
    --muted:        var(--dm-muted);
    --border:       var(--dm-border);
    --border-light: var(--dm-border);
    --brand-accent: var(--brand-accent-light);
    --amber:        var(--brand-accent-light);
  }
  /* .header-logo — no filter needed; transparent PNG inherits background */
}

html {
  color-scheme: light dark;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  line-height: 1.6;
}

:focus-visible {
  outline: 3px solid var(--orient-light);
  outline-offset: 3px;
}

button:focus-visible,
input:focus-visible,
[role="button"]:focus-visible,
a:focus-visible {
  box-shadow: 0 0 0 3px rgba(122, 176, 204, 0.28);
  border-radius: 6px;
}

@media (prefers-contrast: more) {
  :root {
    --muted: #2f3a3e;
    --brown-mid: #364349;
    --border: #8f8679;
    --border-light: #a59b8e;
  }

  body {
    background-image: none;
  }

  .job-tag,
  .filter-btn,
  .deg-btn,
  .pathway-select,
  .pathway-chip,
  .filter-toggle-btn,
  .search-mode-btn,
  .popup-badge,
  .uni-badge,
  .school-card-badge,
  .section,
  .popup-card,
  .policy-modal {
    border-width: 2px;
  }

  .popup-text,
  .popup-roles li,
  .career-cert-item,
  .career-steps li,
  .school-card-desc,
  .job-cert-note,
  .tier-subhead,
  .stats,
  .legend-item,
  .school-card-highlight,
  .career-timeline,
  .footer-disclaimer,
  .footer-meta {
    color: var(--ink) !important;
  }
}

@media (forced-colors: active) {
  * {
    forced-color-adjust: auto;
  }

  .section,
  .popup-card,
  .policy-modal,
  .search-bar input,
  .job-tag,
  .filter-btn,
  .deg-btn,
  .pathway-select,
  .pathway-chip,
  .filter-toggle-btn,
  .search-mode-btn,
  .tier-tab,
  .popup-close,
  .school-card,
  .school-match-banner {
    border: 1px solid CanvasText !important;
    background: Canvas !important;
    color: CanvasText !important;
    box-shadow: none !important;
  }

  .section-header,
  .search-mode-btn.active,
  .pathway-chip.active,
  .filter-toggle-btn.has-filter,
  .job-tag.active,
  .tier-tab.active,
  .programs-chapter {
    background: Highlight !important;
    color: HighlightText !important;
    border-color: Highlight !important;
  }

  .job-dot,
  .legend-dot,
  .dot,
  .deg-group-dot,
  .school-card-accent {
    background: ButtonText !important;
  }
}

*{box-sizing:border-box;margin:0;padding:0}

body {
  font-family: var(--rd-serif);
  background: var(--parchment);
  color: var(--ink);
  padding: 0;
  margin: 0;
  /* Subtle paper texture via CSS */
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");
}


/* ── SITE WRAPPER ── */
#site-wrap {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 1.5rem 3rem;
}

/* ── HEADER ── */
#site-header,
.site-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 0.35rem;
  padding-top: 2.25rem;
  padding-bottom: 2.1rem;
  border-top: 1px solid rgba(44, 53, 57, 0.18);
  border-bottom: 1px solid rgba(44, 53, 57, 0.10);
  margin-bottom: 1.9rem;
  position: relative;
}
#site-header::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(141, 59, 47, 0.20);
}

@media (prefers-color-scheme: dark) {
  #site-header,
  .site-header {
    border-top-color: rgba(254, 251, 242, 0.14);
    border-bottom-color: rgba(254, 251, 242, 0.10);
  }
  #site-header::after{background:rgba(196, 122, 110, 0.28);}
}

.header-logo {
  display: block;
  width: 118px !important;
  height: 118px !important;
  max-width: 118px !important;
  max-height: 118px !important;
  margin: 0 auto 0.7rem auto;
}

.header-brand-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.38rem;
  margin: 0;
  width: min(100%, 880px);
}

/* Row: left rule + wordmark + right rule */
.header-wordmark-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  width: 100%;
}

.header-rule-left,
.header-rule-right {
  display: block;
  width: 3.7rem;
  height: 1px;
  background-color: var(--brick);
  flex-shrink: 0;
}

.header-wordmark {
  font-family: var(--rd-serif) !important;
  font-weight: 400 !important;
  font-style: normal !important;
  font-size: 4.25rem;
  line-height: 0.95;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: #334247;
  margin: 0;
  white-space: nowrap;
}

.header-wordmark .brand-dot {
  color: var(--brick);
  letter-spacing: 0.24em;
}

.header-expansion {
  font-family: var(--rd-mono) !important;
  font-weight: 500 !important;
  font-style: normal !important;
  font-size: 0.84rem;
  line-height: 1.25;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--brick);
  margin: 0;
  max-width: 760px;
  text-align: center;
}

@media (prefers-color-scheme: dark) {
  .header-wordmark {
    color: var(--dm-text);
  }

  .header-rule-left,
  .header-rule-right,
  .header-center-rule {
    background-color: var(--brand-accent-light);
  }

  .header-expansion {
    color: var(--brand-accent-light);
  }
}

/* Short centered rule between expansion and tagline */
.header-center-rule {
  display: block;
  width: 2.25rem;
  height: 1px;
  background-color: #334247;
  margin: 0.6rem auto 0.35rem;
}

.header-tagline {
  font-family: var(--rd-serif) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 1.12rem;
  line-height: 1.35;
  letter-spacing: 0.01em;
  color: #3f4c51;
  margin: 0;
  max-width: 520px;
  text-align: center;
  text-transform: none;
}

@media (prefers-color-scheme: dark) {
  .header-tagline {
    color: var(--dm-muted);
  }
}

/* Mobile header */
@media (max-width: 600px) {
  #site-header,
  .site-header {
    padding-top: 1.35rem;
    padding-bottom: 1.35rem;
  }
  .header-logo {
    width: 82px !important;
    height: 82px !important;
    max-width: 82px !important;
    max-height: 82px !important;
    margin-bottom: 0.45rem;
  }
  .header-brand-block {
    gap: 0.3rem;
    width: 100%;
  }
  .header-wordmark-row {
    gap: 0.5rem;
  }
  .header-wordmark {
    font-size: 2.05rem;
    letter-spacing: 0.1em;
  }
  .header-wordmark .brand-dot {
    letter-spacing: 0.1em;
  }
  .header-rule-left,
  .header-rule-right {
    width: 1.15rem;
  }
  .header-expansion {
    font-size: 0.62rem;
    letter-spacing: 0.12em;
    line-height: 1.45;
    max-width: 88vw;
  }
  .header-tagline {
    font-size: 0.95rem;
    line-height: 1.4;
    max-width: 88vw;
  }
}

/* ── SEARCH ── */
.search-bar{display:flex;gap:10px;margin-bottom:1rem;align-items:center}
.search-bar input {
  flex:1 1 0;min-width:0;
  padding: 9px 14px;
  border: 1.5px solid var(--border);
  border-radius: 6px;
  font-size: 14px;
  font-family: var(--rd-serif);
  background: var(--cream);
  color: var(--ink);
  transition: border-color 0.15s, box-shadow 0.15s;
}
.search-bar input::placeholder{color:var(--muted);}
.search-bar input:focus,
.search-bar input:focus-visible {
  outline: 2px solid transparent;
  border-color: var(--orient);
  box-shadow: 0 0 0 3px rgba(122, 176, 204, 0.28);
}

.compare-tray-head {
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}

.compare-help-add {
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--border);
  border-radius:5px;
  background:var(--parchment);
  color:var(--brand-accent-dark);
  font-family:var(--rd-mono);
  font-size:22px;
  font-weight:700;
  line-height:1;
}

.compare-tray-title {
  font-family:var(--rd-mono);
  font-size:13px;
  font-weight:700;
  letter-spacing:0.07em;
  text-transform:uppercase;
  color:var(--ink);
  margin:0 0 4px;
}

.compare-tray-copy {
  color:var(--ink-light);
  font-size:14px;
  line-height:1.5;
  margin:0;
}

.compare-tray-copy strong {
  color:var(--ink);
  font-weight:700;
}

@media (prefers-color-scheme: dark) {
  .search-bar input::placeholder{color:var(--dm-muted);}
  .search-bar input:focus,.search-bar input:focus-visible{outline:2px solid transparent;border-color:var(--orient);box-shadow:0 0 0 3px rgba(122, 176, 204, 0.28);}
  .compare-help-add {
    background:var(--dm-surface2);
    border-color:var(--dm-border);
    color:var(--brand-accent-light);
  }
  .compare-tray-title,
  .compare-tray-copy strong {
    color:var(--dm-text);
  }
  .compare-tray-copy {
    color:var(--dm-muted);
  }
}
.stats{font-size:13px;color:var(--muted);white-space:nowrap;font-family:var(--rd-mono);}
.stats-row{margin:-6px 0 10px 0;padding:0 2px;}


/* ── LEGEND ── */
.legend{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:1rem;align-items:center}
.legend-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--brown-mid);}

.legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.deg-group-dot{width:7px;height:7px;border-radius:50%}
.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}

/* ── PATHWAY GUIDE ── */
.pathway-guide {
  margin: 0 0 1rem;
  border: 1.5px solid var(--border);
  border-radius: 8px;
  background: var(--cream);
  padding: 14px;
  box-shadow: var(--panel-shadow);
}

.pathway-guide-head {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}

.pathway-guide-title {
  font-family: var(--rd-mono);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--ink);
}

.pathway-guide-count {
  margin-left: auto;
  font-family: var(--rd-mono);
  font-size: 12px;
  color: var(--muted);
}

.pathway-guide-grid {
  display: grid;
  grid-template-columns: minmax(210px, 0.8fr) minmax(0, 1.2fr);
  gap: 14px;
  align-items: start;
}

.pathway-guide-help {
  margin: 10px 0 0;
  color: var(--ink-light);
  font-size: 13px;
  line-height: 1.45;
}

.pathway-field {
  display: grid;
  gap: 6px;
}

.pathway-label {
  font-family: var(--rd-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--muted);
}

.pathway-select {
  width: 100%;
  min-height: 42px;
  padding: 0 34px 0 12px;
  border: 1.5px solid var(--border);
  border-radius: 6px;
  background: var(--parchment);
  color: var(--ink);
  font-family: var(--rd-serif);
  font-size: 15px;
  cursor: pointer;
}

.pathway-select-shell {
  position: relative;
  min-width: 0;
}

.pathway-native-select {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.pathway-select-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  text-align: left;
}

.pathway-select-chevron {
  flex: 0 0 auto;
  color: var(--rd-accent);
  font-family: var(--rd-mono);
  font-size: .8em;
  transition: transform .18s ease;
}

.pathway-select-shell.open .pathway-select-chevron {
  transform: rotate(180deg);
}

.pathway-select-menu {
  position: absolute;
  z-index: 90;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  display: grid;
  gap: 4px;
  padding: 8px;
  border: 1px solid rgba(248, 241, 229, .34);
  border-radius: 12px;
  background: rgba(13, 23, 26, .98);
  box-shadow: 0 22px 60px rgba(0, 0, 0, .48);
  backdrop-filter: blur(16px);
}

.pathway-select-menu[hidden] {
  display: none;
}

.pathway-select-option {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: #f8f1e5;
  cursor: pointer;
  font: 500 17px/1.35 var(--rd-sans);
  text-align: left;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}

.pathway-select-option:hover,
.pathway-select-option:focus-visible {
  outline: none;
  border-color: rgba(248, 241, 229, .26);
  background: #26383d;
}

.pathway-select-option[aria-selected="true"] {
  border-color: #d88a7b;
  background: #a34738;
  color: #fff8ed;
}

body.redesign-page .pathway-select-trigger:focus-visible {
  outline: none;
  border-color: #d88a7b;
  box-shadow: 0 0 0 3px rgba(216, 138, 123, .3);
}

.pathway-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.pathway-chip {
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--parchment);
  color: var(--brown-mid);
  cursor: pointer;
  font-family: var(--rd-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  transition: background 0.15s, color 0.15s, border-color 0.15s, box-shadow 0.15s;
}

.pathway-chip:hover {
  background: var(--cream-dark);
  color: var(--ink);
  border-color: var(--border);
}

.pathway-chip.active {
  background: var(--ink);
  color: var(--cream);
  border-color: var(--ink);
}

@media (prefers-color-scheme: dark) {
  .pathway-guide {
    background: var(--dm-surface);
    border-color: var(--dm-border);
    box-shadow: var(--dm-panel-shadow);
  }

  .pathway-guide-title {
    color: var(--dm-text);
  }

  .pathway-guide-count,
  .pathway-label,
  .pathway-guide-help {
    color: var(--dm-muted);
  }

  .pathway-select,
  .pathway-chip {
    background: var(--dm-surface2);
    color: var(--dm-text);
    border-color: var(--dm-border);
  }

  .pathway-chip:hover {
    background: var(--dm-border);
    color: var(--dm-text);
    border-color: var(--dm-muted);
  }

  .pathway-chip.active {
    background: var(--brand-accent-light);
    color: #111820;
    border-color: var(--brand-accent-light);
  }
}

/* ── FILTER BAR ── */
.deg-filter-row{display:flex;gap:8px;margin-bottom:0.75rem;flex-wrap:wrap}
.deg-btn {
  font-size:13px;padding:4px 12px;border-radius:4px;
  border:1px solid var(--border);
  background:var(--cream);color:var(--brown-mid);cursor:pointer;
  font-family:var(--rd-serif);
  transition:all 0.12s;
}


.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:1.5rem}
.filter-btn {
  font-size:12px;padding:4px 12px;border-radius:4px;
  border:1px solid var(--border);
  background:var(--cream);color:var(--brown-mid);cursor:pointer;
  font-family:var(--rd-serif);
  transition:all 0.12s;
}


.filter-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:1.25rem;position:relative}
.filter-toggle-btn {
  font-size:12px;padding:5px 13px;border-radius:4px;
  border:1px solid var(--border);
  background:var(--cream);color:var(--ink-light);cursor:pointer;
  display:flex;align-items:center;gap:5px;font-weight:600;white-space:nowrap;
  font-family:var(--rd-serif);
  transition:all 0.12s;
}

.filter-toggle-btn.has-filter{background:var(--ink);color:var(--cream);border-color:var(--ink);}

.filter-toggle-btn svg{flex-shrink:0}

.filter-dropdown {
  display:none;position:absolute;top:calc(100% + 6px);left:0;z-index:50;
  background:var(--parchment);
  border:1.5px solid var(--border);border-radius:8px;padding:14px;
  box-shadow:var(--panel-shadow);min-width:340px;
}

.filter-dropdown.open{display:block}
.filter-dropdown-section{margin-bottom:10px}
.filter-dropdown-section:last-child{margin-bottom:0}
.filter-dropdown-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:var(--muted);margin-bottom:6px;font-family:var(--rd-mono);}

.filter-dropdown-pills{display:flex;flex-wrap:wrap;gap:5px}

.filter-btn.active-filter{background:var(--ink);color:var(--cream);border-color:var(--ink);font-weight:600}

.deg-btn.active-deg{font-weight:700;border-color:var(--amber);color:var(--ink);}


.reset-btn{font-size:12px;padding:3px 10px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;margin-left:auto;font-family:var(--rd-serif);}
.reset-btn:hover{color:var(--red-hot);border-color:var(--red-hot);}

@media(max-width:600px){.filter-dropdown{min-width:calc(100vw - 2rem);left:0;right:0}}

@media(max-width:700px){
  .pathway-guide-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .pathway-guide-count {
    margin-left: 0;
  }

  .pathway-chip {
    flex: 1 1 calc(50% - 6px);
    min-width: 130px;
  }
}

/* ── JOB GRID ── */
.section {
  margin-bottom: 2rem;
  border: 2px solid var(--ink);
  border-radius: 6px;
  padding: 0;
  /* Double-border stamp effect via outline */
  outline: 1px solid var(--border);
  outline-offset: 3px;
  position: relative;
}


.section-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 14px;
  background: var(--ink);
  border-radius: 3px 3px 0 0;
  margin-bottom: 0;
  cursor: pointer;
  user-select: none;
}
.section-header:hover { background: #3a4147; }
.section-chevron {
  color: var(--amber-light);
  opacity: 0.7;
  transition: transform 0.2s ease;
  flex-shrink: 0;
}
.section.collapsed .section-chevron { transform: rotate(-90deg); }
.section.collapsed .section-body { display: none; }
.section.collapsed { border-radius: 6px; }

@media (prefers-color-scheme: dark) {
  .section-header{background:var(--dm-surface2);border-bottom:1px solid var(--dm-border);}
}

/* Jobs content inside section gets padding */
.section > .deg-group-label,
.section > .jobs-grid {
  padding-left: 12px;
  padding-right: 12px;
}

.section-title {
  font-size: 13.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  color: var(--cream);
  font-family: var(--rd-mono);
}


.section-count {
  font-size: 12px;
  color: #FFD580;
  font-family: var(--rd-mono);
  opacity: 1;
  margin-left: auto;
}


.section-body {
  padding: 10px 12px 12px;
}

.deg-group-label {
  font-size: 12.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  padding: 8px 0 6px 0;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--ink-light);
  font-family: var(--rd-mono);
  border-bottom: 1px solid var(--border);
  margin-bottom: 6px;
  cursor: pointer;
  user-select: none;
}
.deg-group-label:hover { color: var(--ink); }
.deg-group-chevron {
  margin-left: auto;
  opacity: 0.5;
  transition: transform 0.2s ease;
  flex-shrink: 0;
}
.deg-group.collapsed .deg-group-chevron { transform: rotate(-90deg); }
.deg-group.collapsed .jobs-grid { display: none; }



.jobs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px;margin-bottom:12px}
@media(max-width:600px){.jobs-grid{grid-template-columns:repeat(2,1fr)}}

.job-tag {
  font-size: 14px;
  padding: 7px 12px;
  border-radius: 5px;
  border: 1px solid var(--border-light);
  color: var(--ink);
  background: var(--cream);
  cursor: pointer;
  text-align: left;
  width: 100%;
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  font-family: var(--rd-serif);
  transition: background 0.1s, border-color 0.1s, transform 0.08s;
  letter-spacing: 0.01em;
}
.job-tag:hover{background:var(--cream-dark);border-color:var(--border);transform:translateY(-1px);color:var(--brand-accent-dark);}
.job-tag.active{border-color:var(--amber);background:var(--cream-dark);color:var(--brand-accent-dark);}

@media (prefers-color-scheme: dark) {
  .job-tag:hover{background:var(--dm-surface2);border-color:var(--dm-muted);color:#FFD580;}
  .job-tag.active{border-color:var(--brand-accent-light);background:var(--dm-surface2);color:#FFD580;}
}
.job-dot{width:6px;height:6px;border-radius:50%;background:var(--brand-accent);flex-shrink:0;margin-top:5px;}

.job-select-wrap {
  display:grid;
  grid-template-columns:minmax(0, 1fr) 34px;
  gap:6px;
  align-items:stretch;
  min-width:0;
}
.job-select-wrap.selected .job-tag {
  border-color:var(--brand-accent);
  background:var(--cream-dark);
}
.job-select-toggle {
  width:34px;
  min-width:34px;
  min-height:34px;
  border:1px solid var(--border-light);
  border-radius:5px;
  background:var(--cream);
  color:var(--muted);
  cursor:pointer;
  font-family:var(--rd-mono);
  font-size:16px;
  font-weight:700;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background 0.12s, border-color 0.12s, color 0.12s, transform 0.08s;
}
.job-select-toggle:hover {
  background:var(--cream-dark);
  color:var(--ink);
  border-color:var(--border);
  transform:translateY(-1px);
}
.job-select-toggle.selected {
  background:var(--brand-accent);
  border-color:var(--brand-accent);
  color:var(--warm-cream);
}
.orch-parent-row {
  display:grid;
  grid-template-columns:minmax(0, 1fr) 32px 34px;
  gap:6px;
  align-items:stretch;
  margin-bottom:1px;
}
.orch-parent-row.selected .job-tag {
  border-color:var(--brand-accent);
  background:var(--cream-dark);
}
.orch-sub-list .job-select-wrap {
  margin:1px 4px;
  grid-template-columns:minmax(0, 1fr) 34px;
}
.job-tag.orch-sub-job {
  padding-left:28px;
  border:none;
  background:transparent;
  color:var(--brown-mid);
  font-size:13px;
}
.job-tag.orch-sub-job:hover,
.job-tag.orch-sub-job.active {
  background:var(--amber-light);
  color:var(--ink);
}
.job-tag.orch-sub-job .job-dot {
  display:none;
}

@media (prefers-color-scheme: dark) {
  .job-select-wrap.selected .job-tag {
    border-color:var(--brand-accent-light);
    background:var(--dm-surface2);
  }
  .orch-parent-row.selected .job-tag {
    border-color:var(--brand-accent-light);
    background:var(--dm-surface2);
  }
  .job-select-toggle {
    background:var(--dm-surface);
    color:var(--dm-muted);
    border-color:var(--dm-border);
  }
  .job-select-toggle:hover {
    background:var(--dm-surface2);
    color:var(--dm-text);
    border-color:var(--dm-muted);
  }
  .job-select-toggle.selected {
    background:var(--brand-accent-light);
    border-color:var(--brand-accent-light);
    color:#111820;
  }
  .job-tag.orch-sub-job:hover,
  .job-tag.orch-sub-job.active {
    background:var(--dm-surface2);
    color:#FFD580;
  }
}

.no-results{font-size:14px;color:var(--muted);padding:2rem 0;text-align:center;font-style:italic;}

/* ── COMPARE SELECTED JOBS ── */
.compare-tray {
  display:block;
  margin:0 0 1rem;
  background:var(--cream);
  color:var(--ink);
  border:1.5px solid var(--border);
  border-radius:8px;
  box-shadow:var(--panel-shadow);
  padding:14px;
}
.compare-tray.open { display:block; }
.compare-tray-main {
  display:flex;
  align-items:stretch;
  justify-content:space-between;
  gap:12px;
  min-width:0;
  border-top:1px solid var(--border-light);
  padding-top:12px;
}
.compare-selected-area {
  display:grid;
  gap:7px;
  min-width:0;
  flex:1 1 auto;
}
.compare-count {
  font-family:var(--rd-mono);
  font-size:12px;
  font-weight:700;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--brand-accent-dark);
}
.compare-selected-list {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  min-width:0;
  min-height:32px;
}
.compare-selected-chip {
  border:1px solid var(--border-light);
  border-radius:999px;
  background:var(--parchment);
  color:var(--ink);
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 9px;
  white-space:nowrap;
  font-size:13px;
  line-height:1.2;
}
.compare-chip-remove {
  border:none;
  background:transparent;
  color:var(--brand-accent-dark);
  cursor:pointer;
  font-size:13px;
  line-height:1;
  padding:1px;
}
.compare-empty-selection {
  color:var(--muted);
  font-size:13px;
  font-style:italic;
  line-height:1.4;
}
.compare-actions {
  display:flex;
  gap:8px;
  flex-shrink:0;
  align-items:flex-end;
}
.compare-clear-btn,
.compare-run-btn {
  border-radius:5px;
  min-height:34px;
  padding:7px 12px;
  font-family:var(--rd-mono);
  font-size:12px;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  cursor:pointer;
}
.compare-clear-btn {
  border:1px solid var(--border);
  background:transparent;
  color:var(--ink);
}
.compare-run-btn {
  border:1px solid var(--brand-accent);
  background:var(--brand-accent);
  color:var(--warm-cream);
}
.compare-run-btn:disabled {
  cursor:not-allowed;
  opacity:0.55;
}
.compare-overlay {
  display:none;
  position:fixed;
  inset:0;
  z-index:130;
  background:rgba(17,24,32,0.74);
  backdrop-filter:blur(2px);
  padding:22px;
}
.compare-overlay.open {
  display:flex;
  align-items:center;
  justify-content:center;
}
.compare-modal {
  width:min(980px, 100%);
  max-height:88vh;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  background:var(--parchment);
  color:var(--ink);
  border:1.5px solid var(--border);
  border-radius:8px;
  box-shadow:var(--panel-shadow);
  position:relative;
  padding:22px 24px 24px;
}
.compare-modal-close {
  position:absolute;
  top:10px;
  right:10px;
  width:40px;
  height:40px;
  border-radius:50%;
  border:1px solid var(--border);
  background:var(--cream-dark);
  color:var(--brown-mid);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.compare-modal-head {
  padding-right:44px;
  margin-bottom:14px;
}
.compare-modal h2 {
  font-family:var(--rd-serif);
  font-size:24px;
  color:var(--ink);
  margin-bottom:4px;
}
.compare-modal-head p {
  font-size:14px;
  line-height:1.5;
  color:var(--ink-light);
}
.compare-selected-summary {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:12px 0 4px;
}
.compare-result-section {
  margin-top:18px;
}
.compare-result-heading {
  background:var(--brand-accent);
  color:var(--warm-cream);
  font-family:var(--rd-mono);
  font-size:12px;
  font-weight:700;
  letter-spacing:0.08em;
  text-transform:uppercase;
  padding:8px 10px;
  border-radius:4px 4px 0 0;
}
.compare-result-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  border:1px solid var(--border-light);
  border-top:none;
  padding:10px;
}
.compare-result-card {
  background:var(--cream-dark);
  border:1px solid var(--border-light);
  border-radius:6px;
  padding:10px 11px;
  min-width:0;
}
.compare-result-name {
  font-family:var(--rd-serif);
  font-size:15px;
  font-weight:700;
  line-height:1.3;
  color:var(--ink);
}
.compare-result-name a {
  color:inherit;
  text-decoration:none;
  border-bottom:1px dotted currentColor;
}
.compare-result-score {
  margin-top:5px;
  font-family:var(--rd-mono);
  font-size:12px;
  font-weight:700;
  color:var(--brand-accent-dark);
}
.compare-result-desc {
  margin-top:6px;
  font-size:13px;
  line-height:1.45;
  color:var(--ink-light);
}
.compare-match-list,
.compare-gap-list {
  margin-top:8px;
  font-size:12px;
  line-height:1.4;
}
.compare-match-list strong,
.compare-gap-list strong {
  font-family:var(--rd-mono);
  font-size:11px;
  letter-spacing:0.04em;
  text-transform:uppercase;
}
.compare-match-list { color:var(--ink); }
.compare-gap-list { color:var(--muted); }
.compare-empty {
  border:1px solid var(--border-light);
  border-top:none;
  padding:12px 10px;
  font-size:13px;
  font-style:italic;
  color:var(--muted);
}

@media (prefers-color-scheme: dark) {
  .compare-tray {
    background:var(--dm-surface2);
    border-color:var(--dm-border);
    box-shadow:var(--dm-panel-shadow);
  }
  .compare-tray-main {
    border-top-color:var(--dm-border);
  }
  .compare-count,
  .compare-chip-remove {
    color:var(--brand-accent-light);
  }
  .compare-selected-chip {
    background:var(--dm-surface);
    color:var(--dm-text);
    border-color:var(--dm-border);
  }
  .compare-empty-selection {
    color:var(--dm-muted);
  }
  .compare-clear-btn {
    color:var(--dm-text);
    border-color:var(--dm-border);
  }
  .compare-run-btn {
    background:var(--brand-accent-light);
    border-color:var(--brand-accent-light);
    color:#111820;
  }
  .compare-modal {
    background:var(--dm-surface);
    color:var(--dm-text);
    border-color:var(--dm-border);
    box-shadow:var(--dm-panel-shadow);
  }
  .compare-modal-close {
    background:var(--dm-surface2);
    color:var(--dm-text);
    border-color:var(--dm-border);
  }
  .compare-modal h2,
  .compare-result-name,
  .compare-match-list {
    color:var(--dm-text);
  }
  .compare-modal-head p,
  .compare-result-desc,
  .compare-gap-list,
  .compare-empty {
    color:var(--dm-muted);
  }
  .compare-result-card {
    background:var(--dm-surface2);
    border-color:var(--dm-border);
  }
  .compare-result-grid,
  .compare-empty {
    border-color:var(--dm-border);
  }
  .compare-result-heading {
    background:#6b2c22;
  }
  .compare-result-score {
    color:var(--brand-accent-light);
  }
}

@media(max-width:760px){
  .compare-tray { padding:12px; }
  .compare-tray-head { gap:10px; }
  .compare-help-add {
    width:36px;
    height:36px;
    flex-basis:36px;
    font-size:19px;
  }
  .compare-tray-main {
    flex-direction:column;
    gap:10px;
  }
  .compare-actions {
    width:100%;
  }
  .compare-clear-btn,
  .compare-run-btn {
    flex:1 1 0;
  }
  .compare-overlay {
    padding:12px;
  }
  .compare-modal {
    max-height:92vh;
    padding:20px 16px 18px;
  }
  .compare-result-grid {
    grid-template-columns:1fr;
  }
}


/* ── DETAIL PANEL / POPUP ── */
.popup-row{display:none}
.popup-card {
  background:var(--parchment);
  border:1.5px solid var(--border);
  border-radius:8px;padding:1.1rem 1.25rem;position:relative;
}


.popup-title{
  font-size:20px;font-weight:700;margin-bottom:7px;padding-right:40px;
  font-family:var(--rd-serif);
  color:var(--ink);
;letter-spacing:0.015em}


.popup-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.popup-badge {
  font-size:12px;padding:3px 10px;border-radius:3px;font-weight:600;
  border:1px solid var(--border);
  background:var(--cream-dark);
  color:var(--brown-mid);
  font-family:var(--rd-mono);
  letter-spacing:0.04em;
}


.popup-label {
  font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;
  color:var(--muted);margin-bottom:5px;margin-top:15px;
  font-family:var(--rd-mono);
}

.popup-section{margin-bottom:12px}
.popup-section:last-child{margin-bottom:0}
.popup-text{font-size:16px;line-height:1.68;color:var(--ink-light);;letter-spacing:0.02em}


.popup-roles{list-style:none;padding:0}
.popup-roles li{font-size:15.5px;padding:4px 0 4px 14px;position:relative;line-height:1.55;color:var(--ink-light);}

.popup-roles li:before{content:"";position:absolute;left:0;top:12px;width:5px;height:5px;border-radius:50%;background:var(--amber);}

.popup-loading{font-size:15px;color:var(--muted);padding:1rem 0;text-align:center;font-style:italic;}


/* ── SCHOOL LISTS ── */
.uni-list{list-style:none;padding:0;margin:0;counter-reset:uni-counter}
.uni-list li{
  font-size:12px;padding:5px 0 5px 26px;position:relative;
  border-bottom:1px solid var(--border-light);line-height:1.45;
}

.uni-list li:last-child{border-bottom:none}
.uni-list li:before{
  counter-increment:uni-counter;content:counter(uni-counter);
  position:absolute;left:0;top:5px;width:17px;height:17px;border-radius:50%;
  background:#00416A;color:#B2BEB5;
  font-size:10px;font-weight:700;font-family:var(--rd-mono);
  display:flex;align-items:center;justify-content:center;text-align:center;line-height:17px;
}

.uni-name{font-weight:700;color:var(--ink);}

.uni-prog{color:#4B5262;font-style:italic;}





.uni-highlight{font-size:11px;font-weight:700;color:var(--brand-accent-dark);margin:2px 0 3px 0;line-height:1.3;}

.uni-badges{display:flex;flex-wrap:wrap;gap:4px;margin:3px 0 4px 0}
.uni-badge{
  display:inline-flex;align-items:center;font-size:10px;font-weight:700;
  line-height:1;padding:2px 7px;border-radius:3px;white-space:nowrap;letter-spacing:0.02em;
  font-family:var(--rd-mono);
}
.uni-badge-award{background:#fff3cd;color:#7a5000;border:1px solid #e8c840;}

.uni-badge-stat{background:var(--cream);color:var(--brand-accent-dark);border:1px solid var(--intl-accent-light);}

@media (prefers-color-scheme: dark) {
  .uni-prog {
    color: var(--dm-muted);
  }

  .uni-highlight,
  .schools-primary-label {
    color: var(--brand-accent-light);
  }

  .uni-badge-stat {
    background: var(--dm-surface);
    color: var(--brand-accent-light);
    border-color: var(--brand-accent-light);
  }

  .uni-badge-award {
    background: #2f2818;
    color: #f1cf80;
    border-color: #6a5620;
  }
}






.schools-primary-label{
  font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;
  color:var(--brand-accent);margin-bottom:6px;margin-top:18px;
  display:flex;align-items:center;gap:6px;
  font-family:var(--rd-mono);
}

.schools-secondary{opacity:0.9}
.popup-schools-divider{border:none;border-top:1px solid var(--border-light);margin:14px 0 0;}


/* ── CLOSE BUTTON ── */
.popup-close{
  position:absolute;top:6px;right:6px;
  background:var(--cream-dark);border:1px solid var(--border);border-radius:50%;
  width:28px;height:28px;font-size:14px;color:var(--brown-mid);cursor:pointer;
  display:flex;align-items:center;justify-content:center;line-height:1;transition:all 0.15s;
  min-width:44px;min-height:44px;}
.popup-close:hover{background:var(--amber-light);color:var(--ink);border-color:var(--amber);}
@media (prefers-color-scheme: dark) {
  .popup-close:hover{background:var(--dm-border);color:var(--dm-text);}
}

/* ── SIDE PANEL ── */
#app-layout{display:flex;gap:0;align-items:flex-start;position:relative}
#job-list-col{flex:1;min-width:0}
#detail-panel{
  display:none;position:sticky;top:1.5rem;width:clamp(440px, 42vw, 470px);flex-shrink:0;margin-left:20px;
  --detail-panel-available-height:calc(100vh - 3rem);
  max-height:var(--detail-panel-available-height);overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  scroll-margin-top:1.5rem;
  background:var(--parchment);
  border:1.5px solid var(--border);border-radius:8px;padding:0;
}

#detail-panel.open{display:block}
#detail-inner{padding:1.25rem}

/* ── MOBILE DRAWER ── */
#drawer-overlay{display:none;position:fixed;inset:0;background:rgba(26,14,5,0.5);z-index:100;backdrop-filter:blur(2px);}
#drawer-overlay.open{display:block}
#detail-drawer{
  position:fixed;bottom:0;left:0;right:0;z-index:101;
  background:var(--parchment);border-radius:12px 12px 0 0;
  max-height:88vh;overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  transform:translateY(100%);transition:transform 0.3s cubic-bezier(0.32,0.72,0,1);
  padding:0 0 env(safe-area-inset-bottom,16px);
  border-top:2px solid var(--amber);
}

#detail-drawer.open{transform:translateY(0)}
.drawer-handle{width:36px;height:4px;border-radius:2px;background:var(--border);margin:10px auto 4px;}

#detail-drawer-inner{padding:0 1.25rem 1.5rem}

/* ── CAREER PATH SECTION ── */
.career-path-section{margin-top:4px}
.career-entry-box{
  background:var(--cream-dark);border-left:3px solid var(--amber);
  border-radius:0 5px 5px 0;padding:9px 11px;margin-bottom:11px;font-size:13.5px;line-height:1.5;
}

.career-entry-label{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:var(--muted);margin-bottom:3px;font-family:var(--rd-mono);}

.career-entry-text{font-weight:600;color:var(--ink);}


.career-steps{list-style:none;padding:0;margin:0 0 8px 0;counter-reset:step-counter}
.career-steps li{
  font-size:13.5px;padding:6px 0 6px 30px;position:relative;
  border-bottom:1px solid var(--border-light);line-height:1.5;color:var(--ink-light);
}

.career-steps li:last-child{border-bottom:none}
.career-steps li:before{
  counter-increment:step-counter;content:counter(step-counter);
  position:absolute;left:0;top:7px;width:18px;height:18px;border-radius:50%;
  background:#00416A;color:#B2BEB5;
  font-size:10px;font-weight:700;font-family:var(--rd-mono);
  display:flex;align-items:center;justify-content:center;text-align:center;line-height:18px;
}


.career-certs{margin:0;padding:0}
.career-cert-item{
  display:flex;align-items:flex-start;gap:7px;font-size:12.5px;color:var(--ink-light);
  padding:5px 0;border-bottom:1px solid var(--border-light);line-height:1.45;
}

.career-cert-item:last-child{border-bottom:none}
.career-cert-icon{flex-shrink:0;margin-top:1px;color:var(--navy);}

.career-timeline{
  font-size:12px;color:var(--muted);font-style:italic;
  margin-top:8px;padding-top:6px;border-top:1px solid var(--border-light);
}





/* Clickable school name links */
.uni-name a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px dotted currentColor;
  cursor: pointer;
}
.uni-name a:hover {
  border-bottom-style: solid;
  opacity: 0.8;
}

/* Credential type pill on school entries */
/* dark mode placeholder removed */

/* ── POPUP REDESIGN: Chapter divider ── */
.programs-chapter {
  margin: 20px -1.25rem 0;
  background: var(--brand-accent);
  color: var(--warm-cream);
  padding: 9px 1.25rem 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--rd-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.programs-chapter svg { flex-shrink: 0; opacity: 0.85; }
@media (prefers-color-scheme: dark) {
  .programs-chapter { background: #6b2c22; }
}

/* ── Tier tabs ── */
.tier-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 14px 0 0;
  padding-bottom: 2px;
}
.tier-tab {
  flex: 1 1 31%;
  min-width: 0;
  min-height: 34px;
  padding: 7px 8px 6px;
  font-family: var(--rd-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: var(--cream);
  color: var(--muted);
  transition: background 0.15s, color 0.15s, border-color 0.15s, box-shadow 0.15s;
  white-space: normal;
  line-height: 1.25;
  overflow-wrap: break-word;
  hyphens: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.tier-tab:hover {
  background: var(--cream-dark);
  color: var(--ink);
  border-color: var(--border);
}
.tier-tab.active {
  background: var(--cream-dark);
  color: var(--brand-accent-dark);
  border-color: var(--brand-accent);
  box-shadow: inset 0 0 0 1px var(--brand-accent);
}
@media (prefers-color-scheme: dark) {
  .tier-tab {
    background: var(--dm-surface);
    color: var(--dm-muted);
    border-color: var(--dm-border);
  }
  .tier-tab:hover {
    background: var(--dm-surface2);
    color: var(--dm-text);
    border-color: var(--dm-muted);
  }
  .tier-tab.active {
    background: var(--dm-surface2);
    color: var(--brand-accent-light);
    border-color: var(--brand-accent-light);
    box-shadow: inset 0 0 0 1px var(--brand-accent-light);
  }
}

/* ── Tier panels ── */
.tier-panel { display: none; padding-top: 10px; }
.tier-panel.active { display: block; }

/* ── Tier sub-header (inside panel) ── */
.tier-subhead {
  font-size: 13px;
  color: var(--brown-mid);
  line-height: 1.5;
  margin-bottom: 10px;
  font-style: italic;
}
@media (prefers-color-scheme: dark) { .tier-subhead { color: var(--dm-muted); } }

/* ── ORCHESTRAL SUB-JOBS ── */
.orch-sub-list {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease;
}
.orch-sub-list.expanded {
  max-height: 400px;
}
.orch-sub-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 5px 10px 5px 28px;
  font-family: var(--rd-serif);
  font-size: 13px;
  color: var(--brown-mid);
  cursor: pointer;
  border-radius: 4px;
  margin: 1px 4px;
  transition: background 0.12s, color 0.12s;
  width: calc(100% - 8px);
  border: none;
  background: transparent;
  text-align: left;
}
.orch-sub-item:hover {
  background: var(--amber-light);
  color: var(--ink);
}
.orch-sub-item.active-sub {
  background: var(--amber-light);
  color: var(--ink);
  font-weight: 600;
}
.orch-sub-item::before {
  content: '↳';
  font-size: 11px;
  color: var(--ash);
  flex-shrink: 0;
}
.orch-expand-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 3px 6px;
  color: var(--muted);
  font-size: 12px;
  transition: transform 0.2s, color 0.15s;
  flex-shrink: 0;
  line-height: 1;
  border-radius: 3px;
}
.orch-expand-btn:hover { color: var(--ink); background: var(--amber-light); }
.orch-expand-btn.open { transform: rotate(90deg); }

/* ── JOB CERTIFICATIONS SECTION ── */
.job-certs-section { padding-top: 4px; }
.job-cert-item {
  padding: 8px 0;
  border-bottom: 1px solid var(--border-light);
}
.job-cert-item:last-child { border-bottom: none; }
.job-cert-name {
  font-size: 18px;
  font-weight: 500;
  font-family: var(--rd-sans);
  color: var(--ink);
  line-height: 1.58;
}
.job-cert-name a {
  color: var(--navy);
  text-decoration: none;
}
.job-cert-name a:hover { text-decoration: underline; }
.job-cert-org {
  font-size: 17px;
  font-family: var(--rd-sans);
  font-weight: 500;
  color: var(--muted);
  margin-top: 6px;
  text-transform: none;
}
.job-cert-note {
  font-size: 13px;
  color: var(--ink-light);
  margin-top: 4px;
  line-height: 1.45;
}
.tier-empty {
  font-size: 13px;
  color: var(--muted);
  font-style: italic;
  padding: 12px 4px;
}
@media (prefers-color-scheme: dark) {
  .job-cert-name a { color: #FFD580; }
  .job-cert-note { color: var(--dm-muted); }
  .tier-empty { color: var(--dm-muted); }
}

/* ── PATHWAY NOTE CALLOUT ── */
.pathway-note {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  margin: 16px 0 4px;
  padding: 10px 13px;
  border-radius: 6px;
  font-family: var(--rd-serif);
  font-size: 13px;
  line-height: 1.55;
}
.pathway-note.required {
  background: #fdf3ef;
  border-left: 3px solid #8D3B2F;
  color: #5a2218;
}
.pathway-note.typical {
  background: #f0f4f8;
  border-left: 3px solid #00416A;
  color: #1a3045;
}
.pathway-note-icon {
  flex-shrink: 0;
  font-size: 13px;
  margin-top: 1px;
}
.pathway-note-body strong {
  display: block;
  font-family: var(--rd-mono);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 3px;
}
@media (prefers-color-scheme: dark) {
  .pathway-note.required {
    background: rgba(141,59,47,0.18);
    border-left-color: #e06050;
    color: #f0b8b0;
  }
  .pathway-note.typical {
    background: rgba(0,65,106,0.22);
    border-left-color: #7ab0cc;
    color: #a8c8e0;
  }
  .pathway-note-body strong {
    color: inherit;
  }
}


/* ── School cards ── */
.school-card {
  display: flex;
  gap: 0;
  margin-bottom: 8px;
  border-radius: 5px;
  overflow: hidden;
  background: var(--cream-dark);
  border: 1px solid var(--border-light);
}
@media (prefers-color-scheme: dark) {
  .school-card { background: var(--dm-surface2); border-color: var(--dm-border); }
}
.school-card-accent {
  width: 4px;
  flex-shrink: 0;
}
/* accent colors per tier */
.tier-university    .school-card-accent { background: #00416A; }
.tier-conservatories .school-card-accent { background: #00416A; }
.tier-specialized .school-card-accent { background: #00416A; }
.tier-research .school-card-accent { background: #00416A; }
.tier-international  .school-card-accent { background: #00416A; }

.school-card-body {
  padding: 10px 11px 9px;
  flex: 1;
  min-width: 0;
}
.school-card-name {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  color: #2C3539;
  font-family: var(--rd-serif);
;letter-spacing:0.02em}
@media (prefers-color-scheme: dark) {
  .school-card-name { color: var(--dm-text); }
}
.school-card-name a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px dotted currentColor;
}
.school-card-name a:hover { opacity: 0.75; }

.school-card-desc {
  font-size: 13.5px;
  line-height: 1.55;
  color: #4B5262;
  margin-top: 4px;
}
@media (prefers-color-scheme: dark) { .school-card-desc { color: var(--dm-muted); } }

/* Highlight line — demoted: smaller, lighter */
.school-card-highlight {
  font-size: 12.5px;
  color: var(--brand-accent);
  margin-top: 3px;
  line-height: 1.3;
  font-style: italic;
}
@media (prefers-color-scheme: dark) { .school-card-highlight { color: var(--brand-accent-light); } }

/* Badges row — demoted: right-aligned, very small */
.school-card-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  margin-top: 5px;
}
.school-card-badge {
  font-size: 12px;
  font-family: var(--rd-mono);
  font-weight: 600;
  padding: 1px 6px;
  border-radius: 3px;
  white-space: nowrap;
  letter-spacing: 0.02em;
  background: #f0f4f0;
  color: #556;
  border: 1px solid #d8ddd8;
}
@media (prefers-color-scheme: dark) {
  .school-card-badge { background: var(--dm-surface); color: var(--dm-muted); border-color: var(--dm-border); }
}


/* ── Search mode toggle ── */
.search-mode-toggle {
  display: flex;
  border: 1.5px solid var(--border);
  border-radius: 6px;
  overflow: hidden;
  flex-shrink: 0;
}
.search-mode-btn {
  padding: 0 13px;
  height: 38px;
  font-family: var(--rd-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border: none;
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
  white-space: nowrap;
}
.search-mode-btn + .search-mode-btn {
  border-left: 1.5px solid var(--border);
}
.search-mode-btn.active {
  background: #00416A;
  color: #FEFBF2;
}
.search-mode-btn:not(.active):hover {
  background: var(--cream-dark);
  color: var(--ink);
}
@media (prefers-color-scheme: dark) {
  .search-mode-toggle { border-color: var(--dm-border); }
  .search-mode-btn + .search-mode-btn { border-left-color: var(--dm-border); }
  .search-mode-btn { color: var(--dm-muted); }
  .search-mode-btn.active { background: #00416A; color: #FEFBF2; }
  .search-mode-btn:not(.active):hover { background: var(--dm-surface2); color: var(--dm-text); }
}

/* ── School match banner ── */
.school-match-banner {
  margin: 0 0 10px;
  padding: 8px 14px;
  background: #e8f0f7;
  border: 1px solid #b8d0e8;
  border-radius: 6px;
  font-size: 13px;
  color: #00416A;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.school-match-banner strong { font-weight: 700; }
.school-match-banner .banner-clear {
  margin-left: auto;
  font-size: 12px;
  cursor: pointer;
  opacity: 0.7;
  font-family: var(--rd-mono);
  text-decoration: underline;
  white-space: nowrap;
}
.school-match-banner .banner-clear:hover { opacity: 1; }
@media (prefers-color-scheme: dark) {
  .school-match-banner { background: #0d2233; border-color: #1e4060; color: #7ab0cc; }
}

/* School mode: dim the placeholder differently */
.search-bar input.school-mode::placeholder { color: #557566; }
@media (prefers-color-scheme: dark) {
  .search-bar input.school-mode::placeholder { color: #7a9a8a; }
}


/* ── MOBILE LAYOUT FIXES ── */
@media(max-width:400px){
  .search-bar { flex-wrap: wrap; }
  .school-search-shell { flex-basis: 100%; }
  .search-bar input { flex-basis: 100%; }
  .search-mode-toggle { width: 100%; }
  .search-mode-btn { flex: 1 1 0; min-width: 0; padding: 0 8px; font-size: 12px; }
  .section-header { flex-wrap: wrap; row-gap: 2px; }
  .section-count { margin-left: auto; }
}
/* ── MOBILE FONT SIZE BOOST (+3pt across the board) ── */
@media(max-width:600px){
  body { font-size: 17px; }
  .header-expansion {
    font-size: 0.62rem;
    letter-spacing: 0.12em;
  }
  .header-tagline { font-size: 0.95rem; }
  .search-bar input { font-size: 17px; }
  .pathway-select { font-size: 16px; }
  .pathway-chip { font-size: 12px; }
  .stats { font-size: 15px; }
  .legend-item { font-size: 14px; }
  .deg-btn,
  .filter-btn,
  .filter-toggle-btn { font-size: 14px; }
  .filter-dropdown-label { font-size: 12px; }
  .reset-btn { font-size: 13px; }
  .section-title { font-size: 15px; }
  .section-count { font-size: 13px; }
  .deg-group-label { font-size: 13px; }
  .job-tag { font-size: 15px; }
  .no-results { font-size: 17px; }
  .popup-title { font-size: 22px; }
  .popup-badge { font-size: 12px; }
  .popup-label { font-size: 12px; }
  .popup-text,
  .popup-roles li,
  .popup-loading { font-size: 17px; }
  .uni-list li { font-size: 14px; }
  .uni-list li::before { font-size: 12px; }
  .uni-name { font-size: 15px; }
  .uni-prog { font-size: 14px; }
  .uni-highlight { font-size: 12px; }
  .uni-badge { font-size: 12px; }
  .schools-primary-label { font-size: 12px; }
  .tier-tab { font-size: 12px; }
  .school-card-name { font-size: 16px; }
  .school-card-desc { font-size: 15px; }
  .school-card-highlight { font-size: 13px; }
  .school-card-badge { font-size: 12px; }
  .career-entry-box { font-size: 15px; }
  .career-entry-label { font-size: 12px; }
  .career-steps li { font-size: 15px; }
  .career-cert-item { font-size: 14px; }
  .career-timeline { font-size: 13px; }
  .school-match-banner { font-size: 13px; }
}

/* ── Legal Footer ── */
#track-footer {
  margin-top: 48px;
  border-top: 1px solid var(--border, #d4c9b0);
  padding: 24px 20px 32px;
  background: var(--gunmetal, #2C3539);
  color: var(--ash, #B2BEB5);
  font-family: var(--rd-mono);
  font-size: 12px;
  line-height: 1.7;
}
#track-footer .footer-disclaimer {
  max-width: 820px;
  margin: 0 auto 16px;
  color: #9aa5a8;
  font-size: 12px;
}
#track-footer .footer-links {
  display: flex;
  gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 12px;
}
#track-footer .footer-links a {
  color: var(--ash, #B2BEB5);
  text-decoration: none;
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  border-bottom: 1px solid transparent;
  transition: border-color 0.15s;
}
#track-footer .footer-links a:hover { border-color: var(--ash); }
#track-footer .footer-meta {
  text-align: center;
  font-size: 12px;
  color: #9aa5a8;
  margin-top: 8px;
}

/* ── Policy Modals ── */
.policy-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.65);
  z-index: 200;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.policy-overlay.open { display: flex; }
.policy-modal {
  background: var(--warm-cream, #FEFBF2);
  border-radius: 8px;
  max-width: 640px;
  width: 100%;
  max-height: 80vh;
  overflow-y: auto;
  padding: 32px 28px 28px;
  position: relative;
  font-family: var(--rd-serif);
  font-size: 14px;
  line-height: 1.75;
  color: var(--gunmetal, #2C3539);
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}
.policy-modal h2 {
  font-family: var(--rd-serif);
  font-size: 20px;
  margin: 0 0 16px;
  color: var(--navy, #00416A);
}
.policy-modal h3 {
  font-family: var(--rd-mono);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--brick, #8D3B2F);
  margin: 20px 0 6px;
}
.policy-modal p { margin: 0 0 12px; }
.policy-modal ul { margin: 0 0 12px; padding-left: 20px; }
.policy-modal li { margin-bottom: 6px; }
.policy-close-btn {
  position: absolute;
  top: 12px; right: 14px;
  background: none; border: none;
  font-size: 20px; cursor: pointer;
  color: var(--gunmetal);
  min-width: 36px; min-height: 36px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%;
}
.policy-close-btn:hover { background: rgba(0,0,0,0.07); }
@media(max-width:600px){
  .policy-modal { padding: 24px 16px 20px; font-size: 13px; }
}

@media (prefers-color-scheme: dark) {
  .policy-overlay {
    background: rgba(0, 0, 0, 0.76);
  }

  .policy-modal {
    background: var(--dm-surface);
    color: var(--dm-text);
    border: 1px solid var(--dm-border);
    box-shadow: var(--dm-panel-shadow);
  }

  .policy-modal h2 {
    color: var(--dm-text);
  }

  .policy-modal h3 {
    color: var(--brand-accent-light);
  }

  .policy-close-btn {
    color: var(--dm-text);
  }

  .policy-close-btn:hover {
    background: var(--interactive-hover-dark);
  }
}

@media (prefers-color-scheme: dark) {
  :root {
    --focus-ring: rgba(122, 176, 204, 0.34);
    --panel-shadow: var(--dm-panel-shadow);
  }

  .popup-text,
  .popup-roles li,
  .career-steps li {
    color: var(--dm-text);
  }

  .tier-subhead,
  .stats,
  .legend-item,
  .career-cert-item,
  .job-cert-note,
  .school-card-desc,
  .career-timeline,
  .footer-disclaimer,
  .footer-meta {
    color: var(--dm-muted);
  }

  .school-card-highlight,
  .uni-highlight {
    color: var(--brand-accent-light);
  }
}

/* =========================
   FEEDBACK FORM MODAL
   ========================= */

.feedback-trigger {
  background: none;
  border: none;
  color: var(--ash);
  text-decoration: none;
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  border-bottom: 1px solid transparent;
  transition: border-color 0.15s, color 0.15s, opacity 0.15s;
  font-family: var(--rd-mono);
  padding: 0;
}

.feedback-trigger:hover {
  border-bottom-color: var(--ash);
}

.feedback-modal {
  background: var(--warm-cream);
  border-radius: 8px;
  max-width: 680px;
  width: 100%;
  max-height: 84vh;
  overflow-y: auto;
  padding: 32px 28px 28px;
  position: relative;
  font-family: var(--rd-serif);
  font-size: 14px;
  line-height: 1.7;
  color: var(--gunmetal);
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  border: 1px solid var(--border);
}

.feedback-modal h2 {
  font-family: var(--rd-serif);
  font-size: 22px;
  margin: 0 0 10px;
  color: var(--navy);
}

.feedback-intro {
  margin: 0 0 18px;
  color: var(--ink-light);
  max-width: 60ch;
}

.feedback-form {
  display: grid;
  gap: 14px;
}

.feedback-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.feedback-field {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.feedback-field label {
  font-family: var(--rd-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--brick);
}

.feedback-field input,
.feedback-field select,
.feedback-field textarea {
  width: 100%;
  border: 1.5px solid var(--border);
  border-radius: 6px;
  background: var(--cream);
  color: var(--ink);
  font-family: var(--rd-serif);
  font-size: 15px;
  line-height: 1.45;
  padding: 10px 12px;
  transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
}

.feedback-field textarea {
  min-height: 140px;
  resize: vertical;
}

.feedback-field input::placeholder,
.feedback-field textarea::placeholder {
  color: var(--muted);
}

.feedback-field input:focus,
.feedback-field input:focus-visible,
.feedback-field select:focus,
.feedback-field select:focus-visible,
.feedback-field textarea:focus,
.feedback-field textarea:focus-visible {
  outline: 2px solid transparent;
  border-color: var(--orient);
  box-shadow: 0 0 0 3px rgba(122, 176, 204, 0.28);
}

.feedback-help {
  font-size: 12px;
  color: var(--muted);
  margin-top: -2px;
}

.feedback-honeypot {
  display: none;
}

.feedback-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 4px;
  flex-wrap: wrap;
}

.feedback-submit {
  border: 1px solid var(--navy);
  background: var(--navy);
  color: var(--warm-cream);
  border-radius: 6px;
  min-height: 44px;
  padding: 0 16px;
  font-family: var(--rd-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, transform 0.08s;
}

.feedback-submit:hover {
  background: var(--brick);
  border-color: var(--brick);
}

.feedback-submit:active {
  transform: translateY(1px);
}

.feedback-note {
  font-size: 12px;
  color: var(--muted);
}

.feedback-success {
  display: none;
  margin-top: 6px;
  padding: 10px 12px;
  border-radius: 6px;
  background: #e8f0f7;
  border: 1px solid #b8d0e8;
  color: var(--navy);
  font-size: 13px;
  line-height: 1.5;
}

.feedback-success.show {
  display: block;
}

@media (prefers-color-scheme: dark) {
  .feedback-trigger {
    color: var(--ash);
  }

  .feedback-trigger:hover {
    border-bottom-color: var(--ash);
  }

  .feedback-modal {
    background: var(--dm-surface);
    color: var(--dm-text);
    border-color: var(--dm-border);
  }

  .feedback-modal h2 {
    color: var(--dm-text);
  }

  .feedback-intro,
  .feedback-help,
  .feedback-note {
    color: var(--dm-muted);
  }

  .feedback-field label {
    color: var(--brand-accent-light);
  }

  .feedback-field input,
  .feedback-field select,
  .feedback-field textarea {
    background: var(--dm-surface2);
    color: var(--dm-text);
    border-color: var(--dm-border);
  }

  .feedback-field input::placeholder,
  .feedback-field textarea::placeholder {
    color: var(--dm-muted);
  }

  .feedback-submit {
    background: var(--navy);
    border-color: var(--navy);
    color: var(--warm-cream);
  }

  .feedback-submit:hover {
    background: var(--brand-accent-light);
    border-color: var(--brand-accent-light);
    color: #111820;
  }

  .feedback-success {
    background: #0d2233;
    border-color: #1e4060;
    color: #a8c8e0;
  }
}

@media (max-width: 600px) {
  .feedback-modal {
    padding: 24px 16px 20px;
    font-size: 14px;
  }

  .feedback-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .feedback-field label {
    font-size: 12px;
  }

  .feedback-field input,
  .feedback-field select,
  .feedback-field textarea {
    font-size: 16px;
  }

  .feedback-trigger {
    font-size: 12px;
  }

  .feedback-submit {
    width: 100%;
    font-size: 12px;
  }
}


/* =========================
   T.R.A.C.K REDESIGN DRAFT SHELL
   Parallel prototype layer for index-redesign.html only.
   ========================= */
:root {
  --rd-ink: #EFECE6;
  --rd-paper: #F4EFE6;
  --rd-charcoal: #171F22;
  --rd-slate: #1E282C;
  --rd-rust: #D34E36;
  --rd-blue: #0f4e73;
  --rd-accent: #D34E36;
  --rd-line: rgba(239, 236, 230, 0.15);
  --rd-muted: #C2BCB2;
  --rd-shadow: 0 26px 90px rgba(0, 0, 0, 0.32);
  --rd-ui: "TRACK Syne", "Helvetica Neue", Arial, sans-serif;
  --rd-body: "TRACK Manrope", "Avenir Next", Arial, sans-serif;
  --rd-tech: "TRACK Oswald", "Arial Narrow", Arial, sans-serif;
  --rd-display: var(--rd-ui);
  --rd-serif: var(--rd-ui);
  --rd-sans: var(--rd-body);
  --rd-mono: var(--rd-tech);
}

body.redesign-page {
  background: var(--rd-charcoal);
  color: var(--rd-ink);
  font-family: var(--rd-sans);
  font-synthesis: none;
  overflow-x: hidden;
  background-image: none;
}

body.redesign-page * {
  letter-spacing: 0 !important;
}

body.redesign-page button,
body.redesign-page [role="button"],
body.redesign-page .redesign-intro-menu-links a,
body.redesign-page .redesign-nav-links a {
  font-family: var(--rd-ui);
}

html {
  scroll-behavior: smooth;
}

body.redesign-page.redesign-light {
  --rd-ink: #171F22;
  --rd-paper: #F4EFE6;
  --rd-charcoal: #F4EFE6;
  --rd-slate: #EFE7DA;
  --rd-line: rgba(23, 31, 34, 0.16);
  --rd-muted: #4A4440;
  --rd-shadow: 0 26px 90px rgba(60, 45, 25, 0.16);
  background: var(--rd-paper);
}

.redesign-grain {
  pointer-events: none;
  position: fixed;
  inset: 0;
  z-index: 1000;
  opacity: 0.12;
  background-image:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,.35) 0 1px, transparent 1px),
    radial-gradient(circle at 80% 70%, rgba(163,71,56,.45) 0 1px, transparent 1px);
  background-size: 34px 34px, 47px 47px;
  mix-blend-mode: soft-light;
}

.redesign-orb {
  display: none;
}

.redesign-nav {
  position: absolute;
  top: 18px;
  left: 50%;
  transform: translateX(-50%);
  width: min(1260px, calc(100vw - 48px));
  height: 64px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #f8f1e5;
  box-shadow: none;
  z-index: 120;
}

.redesign-brand-lockup,
.redesign-nav a {
  color: inherit;
  text-decoration: none;
}

.redesign-brand-lockup {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.redesign-mini-logo {
  width: 34px;
  height: 34px;
  object-fit: cover;
  border-radius: 8px;
  opacity: .92;
}

.redesign-brand-lockup span {
  font-family: var(--rd-serif);
  font-weight: 700;
  letter-spacing: .1em;
  white-space: nowrap;
}

.redesign-nav-links {
  display: flex;
  align-items: center;
  gap: 24px;
  font-size: 13px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(248, 241, 229, 0.72);
}

.redesign-nav-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
}

.redesign-button {
  border: 1px solid rgba(248, 241, 229, 0.28);
  border-radius: 999px;
  background: rgba(16, 25, 28, 0.28);
  color: #f8f1e5;
  font: 700 12px/1 var(--rd-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: 14px 18px;
  cursor: pointer;
}

.redesign-button.primary {
  background: #f8f1e5;
  color: #10191c;
  border-color: #f8f1e5;
}

.redesign-intro-menu {
  position: absolute;
  top: 24px;
  left: 24px;
  z-index: 7;
  width: min(292px, calc(100vw - 48px));
  padding: 8px;
  border: 1px solid rgba(248, 241, 229, 0.2);
  border-radius: 6px;
  background: rgba(12, 19, 21, 0.88);
  color: #f8f1e5;
  box-shadow: 0 18px 58px rgba(0, 0, 0, 0.2);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  transition: width .25s ease, border-color .25s ease, background .25s ease;
}

.redesign-intro-menu:not(.menu-open) {
  width: min(132px, calc(100vw - 48px));
}

.redesign-intro-menu-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  font: 700 15px/1 var(--rd-mono);
  letter-spacing: 0;
  text-transform: uppercase;
}

.redesign-menu-toggle {
  min-width: 0;
  min-height: 38px;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  padding: 0 10px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #f8f1e5;
  font: inherit;
  letter-spacing: 0;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
}

.redesign-menu-toggle:hover,
.redesign-menu-toggle:focus-visible {
  background: rgba(248, 241, 229, 0.08);
}

.redesign-menu-toggle:focus-visible {
  outline: 2px solid var(--rd-accent);
  outline-offset: 2px;
}

.redesign-menu-icon {
  position: relative;
  width: 15px;
  height: 12px;
  flex: 0 0 15px;
}

.redesign-menu-icon::before {
  content: "";
  position: absolute;
  left: 1px;
  top: 1px;
  width: 13px;
  height: 1px;
  background: currentColor;
  box-shadow: 0 5px 0 currentColor, 0 10px 0 currentColor;
}

.redesign-intro-menu-links {
  display: grid;
  gap: 0;
  max-height: 0;
  padding: 0 8px;
  border-top: 1px solid transparent;
  opacity: 0;
  overflow: hidden;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-6px);
  transition:
    max-height .3s ease,
    padding .25s ease,
    border-color .25s ease,
    opacity .2s ease,
    transform .25s ease,
    visibility 0s linear .3s;
}

.redesign-intro-menu.menu-open .redesign-intro-menu-links {
  max-height: 220px;
  padding: 8px 8px 4px;
  border-top-color: rgba(248, 241, 229, 0.16);
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  transition-delay: 0s;
}

.redesign-intro-menu-links a {
  display: flex;
  align-items: center;
  min-height: 42px;
  color: rgba(248, 241, 229, 0.72);
  text-decoration: none;
  font: 600 16px/1.2 var(--rd-sans);
  letter-spacing: 0;
  transition: color .2s ease, transform .2s ease;
}

.redesign-intro-menu-links a::before {
  content: "";
  width: 5px;
  height: 5px;
  margin-right: 10px;
  border-radius: 50%;
  background: var(--rd-accent);
  opacity: 0;
  transform: scale(.5);
  transition: opacity .2s ease, transform .2s ease;
}

.redesign-intro-menu-links a:hover,
.redesign-intro-menu-links a:focus-visible {
  color: #f8f1e5;
  transform: translateX(4px);
}

.redesign-intro-menu-links a:hover::before,
.redesign-intro-menu-links a:focus-visible::before {
  opacity: 1;
  transform: scale(1);
}

.redesign-hero {
  --intro-progress: 0;
  --intro-title-opacity: 1;
  --intro-card-opacity: 0;
  --intro-reel-opacity: .28;
  --intro-reel-scale: 1;
  --intro-reel-blur: 1px;
  --intro-wash-opacity: 0;
  height: 230svh;
  min-height: 1480px;
  position: relative;
  background: #0d171a;
}

.redesign-hero-sticky {
  position: sticky;
  top: 0;
  height: 100svh;
  min-height: 680px;
  overflow: hidden;
  background: #0d171a;
  color: #f8f1e5;
  isolation: isolate;
}

.redesign-transition-wash {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: #050a0c;
  opacity: var(--intro-wash-opacity);
  pointer-events: none;
}

.redesign-reel-motion {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  width: min(72vw, 1020px);
  aspect-ratio: 700 / 585;
  transform: translate(-50%, -50%) scale(var(--intro-reel-scale));
  filter:
    blur(var(--intro-reel-blur))
    contrast(.9)
    brightness(.78)
    drop-shadow(0 34px 90px rgba(0, 0, 0, 0.34));
  opacity: var(--intro-reel-opacity);
  will-change: transform, filter, opacity;
}

.redesign-hero-reel {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.redesign-reel-wheel {
  position: absolute;
  top: 12.82%;
  z-index: 2;
  width: 38.43%;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
  pointer-events: none;
  animation: redesign-wheel-spin 7s linear infinite;
  animation-play-state: running;
  transform-origin: 50% 50%;
  will-change: transform;
}

.redesign-reel-wheel img {
  position: absolute;
  top: -27.88%;
  width: 260.22%;
  height: auto;
  max-width: none;
}

.redesign-reel-wheel.left {
  left: 10.29%;
}

.redesign-reel-wheel.left img {
  left: -26.77%;
}

.redesign-reel-wheel.right {
  left: 51.14%;
  animation-duration: 6.25s;
}

.redesign-reel-wheel.right img {
  left: -133.09%;
}

@keyframes redesign-wheel-spin {
  to { transform: rotate(360deg); }
}

.redesign-hero-lockup {
  position: absolute;
  right: clamp(24px, 4.5vw, 72px);
  bottom: clamp(26px, 5vh, 62px);
  z-index: 4;
  width: min(900px, calc(100vw - 48px));
  text-align: right;
  color: #f8f1e5;
  opacity: var(--intro-title-opacity);
  transform: translateY(calc((1 - var(--intro-title-opacity)) * 34px));
  will-change: opacity, transform;
}

.redesign-hero-expansion {
  margin: 0 0 8px auto;
  font: 500 clamp(11px, 1vw, 14px)/1.3 var(--rd-mono);
  letter-spacing: 0;
  text-transform: uppercase;
  color: #d88a7b;
}

.redesign-hero-tagline {
  max-width: 660px;
  margin: 0 0 0 auto;
  padding-bottom: .12em;
  font: 500 clamp(16px, 1.5vw, 22px)/1.52 var(--rd-sans);
  letter-spacing: 0;
  color: rgba(248, 241, 229, 0.72);
}

.redesign-hero h1 {
  margin: 0 0 18px;
  font-family: var(--rd-display);
  font-size: clamp(72px, 11.5vw, 168px);
  font-weight: 500;
  line-height: .76;
  letter-spacing: 0;
  color: #f8f1e5;
  white-space: nowrap;
}

.redesign-title-dot {
  color: #d88a7b;
}

.redesign-hero-searches {
  position: absolute;
  left: 50%;
  top: 52%;
  z-index: 5;
  width: min(1180px, calc(100vw - 56px));
  opacity: var(--intro-card-opacity);
  transform: translate(-50%, calc(-50% + (1 - var(--intro-card-opacity)) * 42px));
  pointer-events: none;
  will-change: opacity, transform;
}

.redesign-hero-sticky.search-ready .redesign-hero-searches {
  pointer-events: auto;
}

.redesign-marquee {
  border-block: 1px solid var(--rd-line);
  overflow: hidden;
  white-space: nowrap;
  color: var(--rd-muted);
  font: 700 13px/1 var(--rd-mono);
  letter-spacing: .14em;
  text-transform: uppercase;
}

.redesign-marquee-track {
  display: inline-flex;
  gap: 34px;
  padding: 22px 0;
  animation: redesign-marquee 32s linear infinite;
}

@keyframes redesign-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.redesign-section {
  padding: 112px 28px;
  position: relative;
}

.redesign-section-inner {
  width: min(1260px, 100%);
  margin: 0 auto;
}

.redesign-split-heading {
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(300px, .62fr);
  gap: 56px;
  align-items: end;
  margin-bottom: 56px;
}

.redesign-split-heading h2 {
  margin: 0;
  font-family: var(--rd-serif);
  font-size: clamp(48px, 7vw, 98px);
  line-height: .94;
  letter-spacing: -0.02em;
}

.redesign-split-heading p {
  margin: 0;
  color: var(--rd-muted);
  font-size: 21px;
  line-height: 1.45;
}

.redesign-path-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.redesign-path-card {
  min-height: 184px;
  padding: 22px;
  border: 1px solid rgba(248, 241, 229, 0.24);
  border-radius: 24px;
  background: rgba(16, 25, 28, 0.78);
  color: var(--rd-ink);
  text-align: left;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  overflow: hidden;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transition: transform .28s ease, background .28s ease, border-color .28s ease, box-shadow .28s ease;
}

.redesign-path-card:hover,
.redesign-path-card:focus-visible {
  transform: translateY(-6px);
  background: rgba(25, 41, 45, 0.82);
  border-color: rgba(216, 138, 123, 0.72);
  box-shadow: 0 0 0 4px rgba(216, 138, 123, 0.72);
  outline: none;
}

.redesign-path-card h2 {
  margin: 0 0 12px;
  font-family: var(--rd-serif);
  font-size: 30px;
  line-height: 1.04;
  letter-spacing: 0;
}

.redesign-path-card p {
  margin: 0;
  color: rgba(248, 241, 229, 0.72);
  font-size: 15px;
  line-height: 1.45;
}

.redesign-index-section {
  position: relative;
  z-index: 4;
  margin-top: 0;
  padding: 96px 28px 64px;
}

body.redesign-page #site-wrap {
  max-width: none;
  margin: 0;
  padding: 0;
}

.redesign-app-wrap {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.redesign-product-window {
  width: min(1340px, 100%);
  margin: 0 auto;
  padding: 30px;
  border: 1px solid var(--rd-line);
  border-radius: 34px;
  background: color-mix(in srgb, var(--rd-slate) 96%, #000 4%);
  box-shadow: 0 34px 110px rgba(0, 0, 0, 0.5);
}

.redesign-index-shell {
  width: 100%;
  margin: 0 auto 28px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, .64fr);
  gap: 30px;
  align-items: end;
}

.redesign-index-shell h2 {
  margin: 0;
  font-family: var(--rd-serif);
  font-size: clamp(48px, 6vw, 88px);
  line-height: .9;
  letter-spacing: -0.02em;
}

.redesign-index-shell p {
  color: var(--rd-muted);
  font-size: 21px;
  line-height: 1.45;
  margin: 0;
}

.redesign-index-shell:has(> #redesign-workspace-description[hidden]) {
  grid-template-columns: 1fr;
}

.redesign-workspace-heading {
  display: grid;
  gap: 14px;
}

.redesign-workspace-back {
  display: none;
  width: fit-content;
  min-height: 38px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--rd-muted);
  font: 700 16px/1 var(--rd-mono);
  letter-spacing: 0;
  text-transform: uppercase;
  cursor: pointer;
}

.redesign-workspace-back:hover,
.redesign-workspace-back:focus-visible {
  color: var(--rd-ink);
}

.redesign-product-window:not([data-workspace="all"]) .redesign-workspace-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.redesign-product-window[data-workspace="job"] .pathway-guide,
.redesign-product-window[data-workspace="job"] .compare-tray,
.redesign-product-window[data-workspace="school"] .pathway-guide,
.redesign-product-window[data-workspace="school"] .compare-tray,
.redesign-product-window[data-workspace="pathway"] .compare-tray,
.redesign-product-window[data-workspace="pathway"] .search-bar,
.redesign-product-window[data-workspace="compare"] .pathway-guide,
.redesign-product-window[data-workspace="index"] .pathway-guide,
.redesign-product-window[data-workspace="index"] .compare-tray,
.redesign-product-window[data-workspace="index"] .search-bar,
.redesign-product-window[data-workspace="all"] .pathway-guide,
.redesign-product-window[data-workspace="all"] .compare-tray,
.redesign-product-window[data-workspace="all"] .search-bar {
  display: none;
}

.redesign-product-window:not([data-workspace="all"]) .search-mode-toggle {
  display: none;
}

.redesign-product-window:not([data-workspace="compare"]):not([data-workspace="all"]) .job-select-toggle {
  display: none;
}

.redesign-product-window:not([data-workspace="compare"]):not([data-workspace="all"]) .job-select-wrap,
.redesign-product-window:not([data-workspace="compare"]):not([data-workspace="all"]) .orch-sub-list .job-select-wrap {
  grid-template-columns: minmax(0, 1fr);
}

.redesign-product-window:not([data-workspace="compare"]):not([data-workspace="all"]) .orch-parent-row {
  grid-template-columns: minmax(0, 1fr) 32px;
}

.redesign-product-window.workspace-waiting .stats-row,
.redesign-product-window.workspace-waiting #app-layout {
  display: none;
}

body.redesign-page .pathway-guide,
body.redesign-page .compare-tray,
body.redesign-page .search-bar,
body.redesign-page .stats-row,
body.redesign-page #app-layout {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

body.redesign-page .pathway-guide {
  border-radius: 34px;
  border-color: var(--rd-line);
  background: color-mix(in srgb, var(--rd-slate) 68%, transparent);
  color: var(--rd-ink);
  box-shadow: var(--rd-shadow);
  margin-bottom: 18px;
}

body.redesign-page .pathway-guide-title,
body.redesign-page .pathway-label,
body.redesign-page .pathway-guide-count,
body.redesign-page .pathway-guide-help {
  color: var(--rd-ink);
}

body.redesign-page .pathway-guide-help,
body.redesign-page .stats,
body.redesign-page .compare-tray-copy,
body.redesign-page .compare-empty-selection {
  color: var(--rd-muted);
}

body.redesign-page .pathway-select,
body.redesign-page .pathway-chip,
body.redesign-page .search-bar input,
body.redesign-page .search-mode-toggle,
body.redesign-page .filter-toggle-btn,
body.redesign-page .filter-btn,
body.redesign-page .deg-btn,
body.redesign-page .reset-btn,
body.redesign-page .tier-tab,
body.redesign-page .compare-selected-chip {
  border: 1px solid rgba(248, 241, 229, 0.24);
  border-radius: 12px;
  background: rgba(16, 25, 28, 0.78);
  color: var(--rd-ink);
  box-shadow: none;
  transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease;
}

body.redesign-page .pathway-chip,
body.redesign-page .filter-toggle-btn,
body.redesign-page .filter-btn,
body.redesign-page .deg-btn,
body.redesign-page .reset-btn,
body.redesign-page .tier-tab {
  min-height: 42px;
  padding: 8px 13px;
  white-space: normal;
  line-height: 1.2;
}

body.redesign-page .pathway-chip:hover,
body.redesign-page .pathway-chip:focus-visible,
body.redesign-page .filter-toggle-btn:hover,
body.redesign-page .filter-toggle-btn:focus-visible,
body.redesign-page .filter-btn:hover,
body.redesign-page .filter-btn:focus-visible,
body.redesign-page .deg-btn:hover,
body.redesign-page .deg-btn:focus-visible,
body.redesign-page .reset-btn:hover,
body.redesign-page .reset-btn:focus-visible,
body.redesign-page .tier-tab:hover,
body.redesign-page .tier-tab:focus-visible,
body.redesign-page .compare-selected-chip:hover,
body.redesign-page .compare-selected-chip:focus-within {
  transform: translateY(-2px);
  background: rgba(25, 41, 45, 0.82);
  border-color: rgba(216, 138, 123, 0.72);
  box-shadow: 0 0 0 4px rgba(216, 138, 123, 0.72);
  color: var(--rd-ink);
  outline: none;
}

body.redesign-page .pathway-chip.active,
body.redesign-page .filter-toggle-btn.has-filter,
body.redesign-page .filter-btn.active-filter,
body.redesign-page .deg-btn.active-deg,
body.redesign-page .tier-tab.active {
  background: rgba(163, 71, 56, 0.34);
  border-color: rgba(216, 138, 123, 0.86);
  color: var(--rd-ink);
  box-shadow: inset 0 0 0 1px rgba(216, 138, 123, 0.42);
}

body.redesign-page .pathway-chip.active:hover,
body.redesign-page .pathway-chip.active:focus-visible,
body.redesign-page .filter-toggle-btn.has-filter:hover,
body.redesign-page .filter-toggle-btn.has-filter:focus-visible,
body.redesign-page .filter-btn.active-filter:hover,
body.redesign-page .filter-btn.active-filter:focus-visible,
body.redesign-page .deg-btn.active-deg:hover,
body.redesign-page .deg-btn.active-deg:focus-visible,
body.redesign-page .tier-tab.active:hover,
body.redesign-page .tier-tab.active:focus-visible {
  box-shadow: inset 0 0 0 1px rgba(216, 138, 123, 0.42), 0 0 0 4px rgba(216, 138, 123, 0.72);
}

body.redesign-page .compare-selected-chip {
  min-height: 38px;
  padding: 7px 10px;
}

body.redesign-page .compare-chip-remove {
  color: var(--rd-accent);
}

body.redesign-page .search-bar {
  gap: 12px;
  margin-top: 22px;
  margin-bottom: 16px;
}

body.redesign-page .school-search-shell {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
}

body.redesign-page .school-search-shell > input {
  width: 100%;
}

body.redesign-page .search-bar input {
  min-height: 60px;
  background: rgba(16, 25, 28, 0.78);
  color: var(--rd-ink);
  font-family: var(--rd-sans);
  font-size: 19px;
  padding-inline: 24px;
}

body.redesign-page .search-bar input::placeholder {
  color: var(--rd-muted);
}

body.redesign-page .search-bar input:hover,
body.redesign-page .search-bar input:focus-visible,
body.redesign-page .pathway-select:hover,
body.redesign-page .pathway-select:focus-visible,
body.redesign-page .search-mode-toggle:focus-within {
  border-color: rgba(216, 138, 123, 0.72);
  box-shadow: 0 0 0 4px rgba(216, 138, 123, 0.72);
  outline: none;
}

body.redesign-page .search-mode-toggle {
  overflow: hidden;
  min-height: 60px;
  background: color-mix(in srgb, var(--rd-slate) 86%, transparent);
}

body.redesign-page .search-mode-btn {
  min-height: 58px;
  padding-inline: 22px;
  color: var(--rd-muted);
  font-family: var(--rd-mono);
}

body.redesign-page .search-mode-btn.active {
  background: rgba(163, 71, 56, 0.34);
  color: var(--rd-ink);
}

body.redesign-page .search-mode-btn:not(.active):hover,
body.redesign-page .search-mode-btn:focus-visible {
  background: rgba(25, 41, 45, 0.82);
  color: var(--rd-ink);
  box-shadow: none;
  outline: none;
}

body.redesign-page .school-browser {
  display: none;
  position: absolute;
  z-index: 120;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  max-height: min(68vh, 660px);
  overflow: hidden;
  border: 1px solid rgba(248, 241, 229, 0.24);
  border-radius: 18px;
  background: rgba(16, 25, 28, 0.98);
  color: var(--rd-ink);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.48);
}

body.redesign-page .school-browser.open {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

body.redesign-page .school-browser-head {
  display: grid;
  gap: 12px;
  padding: 16px;
  border-bottom: 1px solid var(--rd-line);
}

body.redesign-page .school-browser-title-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
}

body.redesign-page .school-browser-sort-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

body.redesign-page .school-browser-sort-label {
  color: var(--rd-muted);
  font: 700 12px/1.2 var(--rd-mono);
  text-transform: uppercase;
}

body.redesign-page .school-browser-sort {
  display: inline-grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid rgba(248, 241, 229, .32);
}

body.redesign-page .school-browser-sort-button {
  min-height: 42px;
  padding: 9px 14px;
  border: 0;
  border-right: 1px solid rgba(248, 241, 229, .24);
  background: rgba(16, 25, 28, .78);
  color: var(--rd-muted);
  font: 700 13px/1.25 var(--rd-mono);
  cursor: pointer;
}

body.redesign-page .school-browser-sort-button:last-child { border-right: 0; }
body.redesign-page .school-browser-sort-button:hover,
body.redesign-page .school-browser-sort-button:focus-visible {
  background: rgba(25, 41, 45, .92);
  color: var(--rd-ink);
  outline: 2px solid rgba(216, 138, 123, .72);
  outline-offset: -2px;
}

body.redesign-page .school-browser-sort-button.active {
  background: rgba(163, 71, 56, .48);
  color: #fff8ed;
}

body.redesign-page .school-browser-title {
  margin: 0;
  color: var(--rd-ink);
  font: 700 13px/1.2 var(--rd-mono);
  letter-spacing: .06em;
  text-transform: uppercase;
}

body.redesign-page .school-browser-count {
  flex: 0 0 auto;
  color: var(--rd-muted);
  font: 600 12px/1.2 var(--rd-mono);
}

body.redesign-page .school-browser-filters {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

body.redesign-page .school-browser-filter {
  min-height: 104px;
  display: grid;
  align-content: start;
  gap: 7px;
  padding: 12px;
  border: 1px solid rgba(248, 241, 229, 0.24);
  border-radius: 10px;
  background: rgba(16, 25, 28, 0.78);
  color: var(--rd-muted);
  cursor: pointer;
  text-align: left;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease;
}

body.redesign-page .school-browser-filter-label {
  color: var(--rd-ink);
  font: 700 13px/1.25 var(--rd-mono);
  letter-spacing: .03em;
  text-transform: uppercase;
}

body.redesign-page .school-browser-filter-description {
  color: var(--rd-muted);
  font: 500 16px/1.5 var(--rd-sans);
  font-style: normal;
  letter-spacing: 0;
  text-transform: none;
}

body.redesign-page .school-browser-filter:hover,
body.redesign-page .school-browser-filter:focus-visible {
  border-color: rgba(216, 138, 123, 0.72);
  background: rgba(25, 41, 45, 0.82);
  color: var(--rd-ink);
  box-shadow: 0 0 0 3px rgba(216, 138, 123, 0.5);
  outline: none;
}

body.redesign-page .school-browser-filter.active {
  border-color: rgba(216, 138, 123, 0.86);
  background: rgba(163, 71, 56, 0.34);
  color: var(--rd-ink);
}

body.redesign-page .school-browser-filter.active .school-browser-filter-description {
  color: color-mix(in srgb, var(--rd-ink) 82%, transparent);
}

body.redesign-page .school-browser-list {
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 8px;
  scrollbar-color: rgba(248, 241, 229, 0.3) transparent;
}

/* In the dedicated school workspace, use the page scrollbar so the search
   controls and category cards can move out of the way of the results. */
body.redesign-page .redesign-product-window[data-workspace="school"] .school-browser {
  position: static;
  top: auto;
  left: auto;
  right: auto;
  max-height: none;
  margin-top: 10px;
  overflow: visible;
}

body.redesign-page .redesign-product-window[data-workspace="school"] .school-browser.open {
  grid-template-rows: auto auto;
}

body.redesign-page .redesign-product-window[data-workspace="school"] .school-browser-list {
  max-height: none;
  overflow: visible;
  overscroll-behavior: auto;
}

.school-back-to-top {
  position: fixed;
  right: max(22px, env(safe-area-inset-right));
  bottom: max(22px, env(safe-area-inset-bottom));
  z-index: 180;
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(248, 241, 229, .58);
  border-radius: 50%;
  background: #a34738;
  color: #fff8ed;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .38);
  font: 500 32px/1 var(--rd-sans);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(12px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease,
    background .2s ease, box-shadow .2s ease;
}

.school-back-to-top.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.school-back-to-top:hover,
.school-back-to-top:focus-visible {
  background: #bd5a49;
  box-shadow: 0 0 0 4px rgba(216, 138, 123, .72), 0 14px 34px rgba(0, 0, 0, .42);
  outline: none;
}

@media (max-width: 600px) {
  .school-back-to-top {
    right: max(14px, env(safe-area-inset-right));
    bottom: max(14px, env(safe-area-inset-bottom));
    width: 50px;
    height: 50px;
    font-size: 28px;
  }
}

body.redesign-page .school-browser-letter {
  padding: 12px 10px 6px;
  color: var(--rd-accent);
  font: 700 11px/1 var(--rd-mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}

body.redesign-page .school-browser-option {
  width: 100%;
  min-height: 54px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 11px 12px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
  color: var(--rd-ink);
  cursor: pointer;
  text-align: left;
}

body.redesign-page .school-browser-option:hover,
body.redesign-page .school-browser-option:focus-visible,
body.redesign-page .school-browser-option.keyboard-active {
  border-color: rgba(216, 138, 123, 0.72);
  background: rgba(25, 41, 45, 0.82);
  box-shadow: inset 4px 0 0 var(--rd-accent);
  outline: none;
}

body.redesign-page .school-browser-option-copy {
  min-width: 0;
}

body.redesign-page .school-browser-option-name {
  color: var(--rd-ink);
  font: 700 16px/1.25 var(--rd-serif);
  overflow-wrap: anywhere;
}

body.redesign-page .school-browser-option-count {
  color: var(--rd-accent);
  font: 700 12px/1.2 var(--rd-mono);
  white-space: nowrap;
}

body.redesign-page .school-browser-empty {
  padding: 30px 18px;
  color: var(--rd-muted);
  font: 500 15px/1.5 var(--rd-sans);
  text-align: center;
}

body.redesign-page .compare-tray.open,
body.redesign-page .compare-tray {
  border-radius: 28px;
  border-color: var(--rd-line);
  background: color-mix(in srgb, var(--rd-slate) 78%, transparent);
  color: var(--rd-ink);
}

body.redesign-page #app-layout {
  align-items: flex-start;
  gap: 18px;
}

body.redesign-page #job-list-col {
  min-width: 0;
}

body.redesign-page #detail-panel {
  border-radius: 34px;
  background: color-mix(in srgb, var(--rd-ink) 98%, transparent);
  color: #1b2a2e;
  box-shadow: var(--rd-shadow);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

body.redesign-page .section {
  border-radius: 24px;
  background: color-mix(in srgb, var(--rd-slate) 78%, transparent);
  border-color: var(--rd-line);
  color: var(--rd-ink);
  box-shadow: 0 16px 50px rgba(0,0,0,.16);
}

body.redesign-page .section-header {
  border-radius: 22px 22px 0 0;
  background: color-mix(in srgb, var(--rd-ink) 10%, transparent);
  color: var(--rd-ink);
}

body.redesign-page #detail-panel.detail-panel-constrained {
  overflow-x: hidden;
  overflow-y: auto;
}

body.redesign-page #detail-panel.detail-panel-constrained #detail-inner {
  height: auto;
  min-height: 100%;
}

body.redesign-page #detail-panel.detail-panel-constrained .career-workspace {
  height: auto;
  min-height: 100%;
  overflow: visible;
}

body.redesign-page #detail-panel.detail-panel-constrained .career-workspace-stage {
  flex: 0 0 auto;
  overflow: visible;
}

body.redesign-page #detail-panel.detail-panel-constrained .career-workspace-panel {
  height: auto;
  min-height: 280px;
  overflow: visible;
}

body.redesign-page .job-tag,
body.redesign-page .compare-add-btn {
  border-radius: 16px;
}

body.redesign-page .programs-chapter {
  background: var(--rd-rust);
}

.redesign-reveal {
  opacity: 0;
  transform: translateY(44px);
  transition: opacity .8s ease, transform .8s ease;
}

.redesign-reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 900px) {
  .redesign-nav {
    grid-template-columns: 1fr auto;
    width: min(100% - 32px, 760px);
  }
  .redesign-nav-links { display: none; }
  .redesign-split-heading,
  .redesign-index-shell { grid-template-columns: 1fr; }
  .redesign-hero { height: 220svh; min-height: 1380px; }
  .redesign-reel-motion { width: min(82vw, 820px); }
  .redesign-hero-lockup {
    right: 24px;
    bottom: 28px;
  }
  .redesign-hero-searches {
    top: 52%;
    width: min(760px, calc(100vw - 34px));
  }
  .redesign-index-section {
    margin-top: 0;
    padding: 80px 14px 64px;
  }
  .redesign-product-window {
    padding: 20px;
    border-radius: 26px;
  }
  .redesign-path-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.redesign-page #app-layout { display: block; }
}

@media (max-width: 600px) {
  .redesign-nav {
    top: 10px;
    width: calc(100% - 28px);
    height: 58px;
  }
  .redesign-brand-lockup span { font-size: 14px; }
  .redesign-mini-logo { width: 30px; height: 30px; }
  .redesign-nav-actions .redesign-button { display: none; }
  .redesign-intro-menu {
    top: 14px;
    left: 14px;
    width: min(292px, calc(100vw - 28px));
    padding: 8px;
  }
  .redesign-intro-menu:not(.menu-open) {
    width: min(132px, calc(100vw - 28px));
  }
  .redesign-intro-menu-links {
    grid-template-columns: 1fr;
  }
  .redesign-intro-menu-links a {
    min-height: 40px;
    font-size: 15px;
  }
  .redesign-hero {
    height: 215svh;
    min-height: 1320px;
  }
  .redesign-hero-sticky {
    min-height: 620px;
  }
  .redesign-reel-motion {
    top: 50%;
    width: 92vw;
  }
  .redesign-hero-lockup {
    right: 16px;
    bottom: 22px;
    width: calc(100vw - 32px);
  }
  .redesign-hero-expansion {
    font-size: 10px;
  }
  .redesign-hero-tagline {
    max-width: 360px;
    font-size: 15px;
  }
  .redesign-hero h1 {
    font-size: clamp(54px, 17vw, 84px);
  }
  .redesign-hero-searches {
    top: 52%;
    width: calc(100vw - 24px);
  }
  .redesign-path-grid {
    gap: 10px;
  }
  .redesign-path-card {
    min-height: 116px;
    padding: 16px;
    border-radius: 18px;
  }
  .redesign-path-card h2 {
    margin: 0;
    font-size: 22px;
    line-height: 1.08;
  }
  .redesign-path-card p {
    display: none;
  }
  .redesign-index-section {
    margin-top: 0;
    padding: 64px 8px;
  }
  .redesign-product-window {
    padding: 14px 10px;
    border-radius: 22px;
  }
  body.redesign-page .school-browser {
    left: -2px;
    right: -2px;
    max-height: min(66vh, 560px);
    border-radius: 14px;
  }
  body.redesign-page .school-browser-head {
    padding: 13px 11px;
  }
  body.redesign-page .school-browser-sort-row {
    justify-content: space-between;
  }
  body.redesign-page .school-browser-sort {
    flex: 1 1 auto;
  }
  body.redesign-page .school-browser-sort-button {
    padding-inline: 9px;
    font-size: 12px;
  }
  body.redesign-page .school-browser-filters {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;
    padding: 2px 3px 8px;
    scrollbar-color: rgba(248, 241, 229, 0.3) transparent;
  }
  body.redesign-page .school-browser-filter {
    width: auto;
    flex: 0 0 min(78vw, 292px);
    min-height: 116px;
    scroll-snap-align: start;
  }
  .redesign-index-shell {
    padding-inline: 4px;
  }
  .redesign-index-shell h2 {
    font-size: 46px;
  }
  .redesign-index-shell p {
    font-size: 17px;
  }
}

/* Readability audit: larger type, stronger contrast, and roomier text surfaces. */
body.redesign-page {
  --rd-muted: rgba(248, 241, 229, .84);
  --dm-muted: #cbd4cd;
  --ash: #cbd4cd;
  font-size: 17px;
  line-height: 1.65;
}

body.redesign-page.redesign-light {
  --rd-muted: rgba(22, 36, 39, .8);
}

body.redesign-page * {
  letter-spacing: 0;
}

body.redesign-page .redesign-intro-menu-head,
body.redesign-page .redesign-menu-toggle { font-size: 17px; }
body.redesign-page .redesign-intro-menu-links a { font-size: 18px; }
body.redesign-page .redesign-hero-expansion { font-size: 17px; }
body.redesign-page .redesign-hero-tagline { font-size: 22px; line-height: 1.52; }
body.redesign-page .redesign-hero h1 { font-size: 130px; }
body.redesign-page .redesign-marquee { font-size: 15px; }
body.redesign-page .redesign-split-heading h2 { font-size: 84px; }
body.redesign-page .redesign-split-heading p,
body.redesign-page .redesign-index-shell > div > p { font-size: 22px; line-height: 1.55; }
body.redesign-page .redesign-path-card h2 { font-size: 32px; }
body.redesign-page .redesign-path-card p { font-size: 17px; line-height: 1.55; }
body.redesign-page .redesign-index-shell h2 { font-size: 72px; }
body.redesign-page .redesign-workspace-back { font-size: 18px; }

body.redesign-page .search-bar input { font-size: 20px; }
body.redesign-page .search-mode-btn { font-size: 14px; }
body.redesign-page .pathway-guide-title,
body.redesign-page .pathway-guide-count,
body.redesign-page .pathway-label { font-size: 14px; }
body.redesign-page .pathway-select { font-size: 18px; }
body.redesign-page .pathway-chip,
body.redesign-page .deg-btn,
body.redesign-page .filter-btn,
body.redesign-page .filter-toggle-btn,
body.redesign-page .filter-dropdown-label,
body.redesign-page .reset-btn { font-size: 14px; }
body.redesign-page .pathway-guide-help { font-size: 16px; line-height: 1.55; }
body.redesign-page .stats,
body.redesign-page .legend-item { font-size: 15px; }

body.redesign-page .school-browser-title { font-size: 15px; }
body.redesign-page .school-browser-count { font-size: 14px; }
body.redesign-page .school-browser-filter-label { font-size: 13px; }
body.redesign-page .school-browser-filter-description { font-size: 16px; line-height: 1.5; }
body.redesign-page .school-browser-letter { font-size: 13px; }
body.redesign-page .school-browser-option-name { font-size: 18px; line-height: 1.4; }
body.redesign-page .school-browser-option-count { font-size: 14px; }
body.redesign-page .school-browser-empty { font-size: 17px; }

body.redesign-page .section-title { font-size: 16px; }
body.redesign-page .section-count { font-size: 14px; }
body.redesign-page .deg-group-label { font-size: 15px; }
body.redesign-page .jobs-grid {
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 9px;
}
body.redesign-page .job-tag {
  min-height: 52px;
  font-size: 17px;
  line-height: 1.45;
}
body.redesign-page .orch-sub-item { font-size: 16px; }
body.redesign-page .no-results { font-size: 18px; }

/* Complete index: use the redesign's type and color system throughout. */
body.redesign-page .redesign-product-window .stats {
  color: #e6ded1;
  font: 600 17px/1.5 var(--rd-mono);
}

body.redesign-page .redesign-product-window .section {
  border: 1px solid rgba(248, 241, 229, .38);
  background: #1b292d;
  color: #f8f1e5;
}

body.redesign-page .redesign-product-window .section-header {
  min-height: 58px;
  padding: 14px 18px;
  border-bottom: 1px solid rgba(248, 241, 229, .3);
  background: #344247;
  color: #f8f1e5;
}

body.redesign-page .redesign-product-window .section-header:hover {
  background: #3d4d52;
}

body.redesign-page .redesign-product-window .section-title {
  color: #f8f1e5 !important;
  font: 700 19px/1.3 var(--rd-mono);
  text-transform: uppercase;
}

body.redesign-page .redesign-product-window .section-count {
  color: #ffd580 !important;
  font: 700 16px/1.3 var(--rd-mono);
}

body.redesign-page .redesign-product-window .section-chevron,
body.redesign-page .redesign-product-window .deg-group-chevron {
  color: #e7a292 !important;
  opacity: 1;
}

body.redesign-page .redesign-product-window .section-body {
  padding: 14px 16px 18px;
}

body.redesign-page .redesign-product-window .deg-group-label {
  padding: 14px 2px 11px;
  border-bottom-color: rgba(248, 241, 229, .62);
  color: #f2eadf !important;
  font: 700 18px/1.4 var(--rd-mono);
  opacity: 1;
}

body.redesign-page .redesign-product-window .deg-group-label:hover,
body.redesign-page .redesign-product-window .deg-group-label:focus-visible {
  color: #ffffff !important;
}

body.redesign-page .redesign-product-window .job-tag,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job {
  min-height: 58px;
  padding: 12px 14px;
  border: 1px solid rgba(248, 241, 229, .34);
  border-radius: 14px;
  background: #243438;
  color: #f8f1e5 !important;
  font: 600 18px/1.45 var(--rd-serif);
}

body.redesign-page .redesign-product-window .job-tag:hover,
body.redesign-page .redesign-product-window .job-tag:focus-visible,
body.redesign-page .redesign-product-window .job-tag.active,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job:hover,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job:focus-visible,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job.active {
  border-color: rgba(216, 138, 123, .86);
  background: #53332e;
  color: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(216, 138, 123, .28);
  outline: none;
}

body.redesign-page .redesign-product-window .job-dot {
  width: 7px;
  height: 7px;
  margin-top: .55em;
  background: #e7a292;
}

body.redesign-page #detail-panel { width: clamp(480px, 44vw, 560px); }
body.redesign-page .popup-title { font-size: 27px; line-height: 1.25; }
body.redesign-page .popup-badge { font-size: 13px; }
body.redesign-page .popup-label { font-size: 14px; }
body.redesign-page .popup-text { font-size: 18px; line-height: 1.62; }
body.redesign-page .popup-roles li { font-size: 17.5px; line-height: 1.55; }
body.redesign-page .popup-loading { font-size: 17px; }
body.redesign-page .uni-list li { font-size: 17px; line-height: 1.55; }
body.redesign-page .uni-name { font-size: 18px; }
body.redesign-page .uni-prog { font-size: 17px; }
body.redesign-page .uni-highlight { font-size: 15px; }
body.redesign-page .uni-badge { font-size: 13px; }
body.redesign-page .schools-primary-label { font-size: 14px; }
body.redesign-page .career-entry-box { font-size: 17px; line-height: 1.55; }
body.redesign-page .career-entry-label { font-size: 14px; }
body.redesign-page .career-steps li { font-size: 17px; line-height: 1.55; }
body.redesign-page .career-cert-item { font-size: 16px; line-height: 1.5; }
body.redesign-page .career-timeline { font-size: 15px; }
body.redesign-page .programs-chapter { font-size: 14px; }
body.redesign-page .tier-tab { font-size: 13.5px; }
body.redesign-page .tier-subhead { font-size: 16.5px; line-height: 1.5; }
body.redesign-page .job-cert-name { font-size: 18px; }
body.redesign-page .job-cert-org { font-size: 17px; }
body.redesign-page .job-cert-note { font-size: 16px; line-height: 1.5; }
body.redesign-page .tier-empty { font-size: 17px; }
body.redesign-page .pathway-note { font-size: 16px; line-height: 1.55; }
body.redesign-page .pathway-note-body strong { font-size: 13px; }
body.redesign-page .school-card-name { font-size: 18px; line-height: 1.35; }
body.redesign-page .school-card-desc { font-size: 17px; line-height: 1.55; }
body.redesign-page .school-card-highlight { font-size: 15px; line-height: 1.5; }
body.redesign-page .school-card-badge { font-size: 13px; }

body.redesign-page .compare-help-add {
  border-color: rgba(248, 241, 229, .58);
  background: #fff8ed;
  color: #a34738;
}
body.redesign-page .compare-tray-title {
  margin-bottom: 6px;
  color: #f8f1e5;
  font: 700 18px/1.3 var(--rd-mono);
  letter-spacing: 0;
}
body.redesign-page .compare-tray-copy {
  color: #e6ded1;
  font: 500 17px/1.55 var(--rd-sans);
}
body.redesign-page .compare-tray-copy strong { color: #e7a292; }
body.redesign-page .compare-count {
  color: #e7a292;
  font: 700 16px/1.3 var(--rd-mono);
  letter-spacing: 0;
}
body.redesign-page .compare-selected-chip {
  border-color: rgba(248, 241, 229, .38);
  background: #243438;
  color: #f8f1e5;
  font: 600 16px/1.35 var(--rd-sans);
}
body.redesign-page .compare-chip-remove {
  color: #e7a292;
  font-size: 17px;
}
body.redesign-page .compare-empty-selection {
  color: #d8d1c6;
  font: 500 17px/1.5 var(--rd-sans);
  font-style: normal;
}
body.redesign-page .compare-clear-btn,
body.redesign-page .compare-run-btn {
  min-height: 42px;
  padding: 9px 14px;
  border-radius: 7px;
  font: 700 15px/1.2 var(--rd-mono);
  letter-spacing: 0;
}
body.redesign-page .compare-clear-btn {
  border-color: rgba(248, 241, 229, .58);
  color: #f8f1e5;
}
body.redesign-page .compare-run-btn {
  border-color: #a34738;
  background: #a34738;
  color: #fff8ed;
}
body.redesign-page .compare-clear-btn:disabled {
  border-color: rgba(248, 241, 229, .28);
  color: rgba(248, 241, 229, .58);
  cursor: not-allowed;
}
body.redesign-page .compare-run-btn:disabled {
  border-color: rgba(216, 138, 123, .48);
  background: rgba(163, 71, 56, .42);
  color: rgba(255, 248, 237, .72);
  opacity: 1;
}
body.redesign-page .compare-clear-btn:hover:not(:disabled),
body.redesign-page .compare-clear-btn:focus-visible,
body.redesign-page .compare-run-btn:hover:not(:disabled),
body.redesign-page .compare-run-btn:focus-visible {
  border-color: #e7a292;
  box-shadow: 0 0 0 3px rgba(216, 138, 123, .5);
  outline: none;
}
body.redesign-page .compare-modal h2 { font-size: 28px; }
body.redesign-page .compare-modal-head p { font-size: 17px; line-height: 1.55; }
body.redesign-page .compare-result-heading { font-size: 15px; }
body.redesign-page .compare-result-name { font-size: 18px; line-height: 1.4; }
body.redesign-page .compare-result-score { font-size: 14px; }
body.redesign-page .compare-result-desc { font-size: 16px; line-height: 1.5; }
body.redesign-page .compare-match-list,
body.redesign-page .compare-gap-list { font-size: 14px; line-height: 1.5; }
body.redesign-page .compare-match-list strong,
body.redesign-page .compare-gap-list strong { font-size: 15px; }
body.redesign-page .compare-empty { font-size: 17px; }

body.redesign-page .policy-modal,
body.redesign-page .feedback-modal { font-size: 17px; line-height: 1.6; }
body.redesign-page .policy-modal h2,
body.redesign-page .feedback-modal h2 { font-size: 28px; }
body.redesign-page .policy-modal h3 { font-size: 15px; }
body.redesign-page .feedback-trigger { font-size: 15px; }
body.redesign-page .feedback-intro { font-size: 17px; }
body.redesign-page .feedback-field label { font-size: 14px; }
body.redesign-page .feedback-field input,
body.redesign-page .feedback-field select,
body.redesign-page .feedback-field textarea { font-size: 17px; }
body.redesign-page .feedback-help,
body.redesign-page .feedback-note { font-size: 15px; }
body.redesign-page .feedback-submit { font-size: 14px; }
body.redesign-page .feedback-success { font-size: 17px; }
body.redesign-page .school-match-banner { font-size: 16px; line-height: 1.5; }
body.redesign-page .school-match-banner .banner-clear { font-size: 14px; }
body.redesign-page .uni-list li::before,
body.redesign-page .career-steps li::before { font-size: 13px; }
body.redesign-page #track-footer,
body.redesign-page .footer-disclaimer,
body.redesign-page .footer-links a,
body.redesign-page .footer-meta { font-size: 14.5px; }
body.redesign-page .footer-disclaimer,
body.redesign-page .footer-meta { color: #cbd4cd; }

@media (prefers-color-scheme: light) {
  body.redesign-page {
    --muted: #3d494d;
    --brown-mid: #3d494d;
    --ink-light: #354248;
  }
  body.redesign-page .school-card-desc { color: #354248; }
}

@media (prefers-color-scheme: dark) {
  body.redesign-page .footer-disclaimer,
  body.redesign-page .footer-meta { color: #cbd4cd; }
}

@media (max-width: 900px) {
  body.redesign-page .redesign-hero h1 { font-size: 98px; }
  body.redesign-page .redesign-split-heading h2,
  body.redesign-page .redesign-index-shell h2 { font-size: 60px; }
  body.redesign-page #detail-panel { width: min(100%, 620px); }
}

@media (max-width: 600px) {
  body.redesign-page { font-size: 18px; }
  body.redesign-page .redesign-intro-menu-head,
  body.redesign-page .redesign-menu-toggle { font-size: 17px; }
  body.redesign-page .redesign-intro-menu-links a { font-size: 18px; }
  body.redesign-page .redesign-hero-expansion { font-size: 16px; }
  body.redesign-page .redesign-hero-tagline { font-size: 19px; line-height: 1.52; }
  body.redesign-page .redesign-hero h1 { font-size: 66px; }
  body.redesign-page .redesign-split-heading h2,
  body.redesign-page .redesign-index-shell h2 { font-size: 48px; }
  body.redesign-page .redesign-split-heading p,
  body.redesign-page .redesign-index-shell > div > p { font-size: 19px; }
  body.redesign-page .redesign-path-card h2 { font-size: 24px; }
  body.redesign-page .redesign-workspace-back { font-size: 18px; }
  body.redesign-page .search-bar input,
  body.redesign-page .pathway-select { font-size: 18px; }
  body.redesign-page .school-browser-filter-description { font-size: 16px; }
  body.redesign-page .school-browser-option-name { font-size: 17px; }
  body.redesign-page .jobs-grid { grid-template-columns: 1fr; }
  body.redesign-page .job-tag { font-size: 17px; }
  body.redesign-page .popup-title { font-size: 25px; }
  body.redesign-page .popup-text,
  body.redesign-page .popup-roles li { font-size: 18px; }
  body.redesign-page .school-card-name { font-size: 18px; }
  body.redesign-page .school-card-desc { font-size: 17px; }
  body.redesign-page .policy-modal,
  body.redesign-page .feedback-modal { font-size: 17px; }
  body.redesign-page #track-footer,
  body.redesign-page .footer-disclaimer,
  body.redesign-page .footer-links a,
  body.redesign-page .footer-meta { font-size: 14px; }
}

@media (max-width: 380px) {
  body.redesign-page .redesign-hero h1 { font-size: 54px; }
  body.redesign-page .redesign-split-heading h2,
  body.redesign-page .redesign-index-shell h2 { font-size: 42px; }
}

/* Dark career workspace: shared by the desktop panel and mobile drawer */
body.redesign-page #detail-panel {
  width: clamp(560px, 48vw, 720px);
  height: min(820px, var(--detail-panel-available-height));
  max-height: none;
  overflow: hidden;
  border: 1px solid rgba(248, 241, 229, .24);
  border-radius: 30px;
  background: var(--rd-slate);
  color: var(--rd-ink);
}

body.redesign-page .redesign-product-window[data-workspace="job"] #detail-panel {
  transition: height .34s ease;
}

body.redesign-page #detail-inner,
body.redesign-page #detail-drawer-inner {
  height: 100%;
  min-height: 0;
  padding: 0;
}

body.redesign-page .career-workspace {
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--rd-slate);
  color: var(--rd-ink);
}

body.redesign-page .career-workspace-head {
  position: relative;
  flex: 0 0 auto;
  padding: 30px 82px 26px 34px;
  border-bottom: 1px solid rgba(248, 241, 229, .22);
  background: var(--rd-charcoal);
}

body.redesign-page .career-workspace-kicker,
body.redesign-page .career-workspace-label {
  color: #e7a292;
  font: 700 15px/1.25 var(--rd-mono);
  text-transform: uppercase;
}

body.redesign-page .career-workspace-kicker { margin-bottom: 10px; }

body.redesign-page .career-workspace .popup-title {
  max-width: 100%;
  margin: 0;
  color: #fff8ed;
  font: 700 36px/1.12 var(--rd-serif);
  overflow-wrap: anywhere;
}

body.redesign-page .career-workspace-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 20px;
}

body.redesign-page .career-workspace-tag {
  padding: 7px 11px;
  border: 1px solid rgba(231, 162, 146, .88);
  border-radius: 999px;
  color: #f2b2a4;
  font: 700 13px/1.2 var(--rd-mono);
  text-transform: uppercase;
}

body.redesign-page .career-workspace .popup-close {
  top: 22px;
  right: 22px;
  width: 48px;
  height: 48px;
  min-width: 48px;
  min-height: 48px;
  border: 1px solid rgba(248, 241, 229, .64);
  background: transparent;
  color: #fff8ed;
  font-size: 22px;
}

body.redesign-page .career-workspace .popup-close:hover,
body.redesign-page .career-workspace .popup-close:focus-visible {
  border-color: var(--rd-rust);
  background: var(--rd-rust);
  color: #fff8ed;
}

body.redesign-page .career-workspace-tabs {
  flex: 0 0 auto;
  display: flex;
  overflow-x: auto;
  scrollbar-width: thin;
  border-bottom: 1px solid rgba(248, 241, 229, .22);
  background: #26383d;
}

body.redesign-page .career-workspace-tab {
  flex: 1 0 auto;
  min-width: 128px;
  min-height: 58px;
  padding: 13px 17px;
  border: 0;
  border-right: 1px solid rgba(248, 241, 229, .18);
  background: transparent;
  color: #ddd5c9;
  font: 700 14px/1.2 var(--rd-mono);
  text-transform: uppercase;
  cursor: pointer;
}

body.redesign-page .career-workspace-tab:hover,
body.redesign-page .career-workspace-tab:focus-visible {
  background: rgba(248, 241, 229, .09);
  color: #fff8ed;
}

body.redesign-page .career-workspace-tab.active {
  background: var(--rd-rust);
  color: #fff8ed;
}

body.redesign-page .career-workspace-stage {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
}

body.redesign-page .career-workspace-panel {
  display: none;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
  padding: 34px 34px 54px;
}

body.redesign-page .career-workspace-panel.active { display: block; }

body.redesign-page .career-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 38px;
}

body.redesign-page .career-workspace-label { margin-bottom: 12px; }

body.redesign-page .career-workspace-copy,
body.redesign-page .career-workspace .career-entry-text,
body.redesign-page .career-workspace .pathway-note,
body.redesign-page .career-workspace .tier-subhead,
body.redesign-page .career-workspace .tier-empty {
  color: #f8f1e5;
  font: 500 19px/1.66 var(--rd-sans);
}

body.redesign-page .career-workspace-responsibilities {
  margin: 0;
  padding: 0;
  list-style: none;
}

body.redesign-page .career-workspace-responsibilities li {
  position: relative;
  padding: 13px 0 13px 22px;
  border-bottom: 1px solid rgba(248, 241, 229, .2);
  color: #f8f1e5;
  font: 500 18px/1.55 var(--rd-sans);
}

body.redesign-page .career-workspace-responsibilities li:first-child { padding-top: 0; }
body.redesign-page .career-workspace-responsibilities li:first-child::before { top: 10px; }
body.redesign-page .career-workspace-responsibilities li::before {
  content: "";
  position: absolute;
  top: 24px;
  left: 0;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #e7a292;
}

body.redesign-page .career-workspace .career-entry-box {
  margin: 0 0 28px;
  padding: 18px 20px;
  border: 1px solid rgba(248, 241, 229, .24);
  border-left: 4px solid #e7a292;
  border-radius: 0 10px 10px 0;
  background: #26383d;
}

body.redesign-page .career-workspace .career-entry-label {
  margin-bottom: 7px;
  color: #f2b2a4;
  font: 700 14px/1.25 var(--rd-mono);
}

body.redesign-page .career-workspace .career-steps {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: career-step;
}

body.redesign-page .career-workspace .career-steps li {
  counter-increment: career-step;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 16px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(248, 241, 229, .2);
  color: #f8f1e5;
  font: 500 18px/1.55 var(--rd-sans);
}

body.redesign-page .career-workspace .career-steps li::before {
  position: static;
  inset: auto;
  width: auto;
  height: auto;
  border-radius: 0;
  background: transparent;
  display: block;
  align-items: initial;
  justify-content: initial;
  text-align: left;
  counter-increment: none;
  content: counter(career-step, decimal-leading-zero);
  color: #f2b2a4;
  font: 700 14px/1.6 var(--rd-mono);
}

body.redesign-page .career-workspace .career-steps li > div {
  min-width: 0;
  overflow-wrap: break-word;
}

body.redesign-page .career-workspace .career-steps li strong {
  color: #fff8ed;
  font-family: var(--rd-serif);
  font-size: 20px;
}

body.redesign-page .career-workspace .career-training-section,
body.redesign-page .career-workspace .career-timeline {
  margin-top: 34px;
  padding-top: 26px;
  border-top: 1px solid rgba(248, 241, 229, .2);
}

body.redesign-page .career-workspace .career-training-list {
  border-top: 1px solid rgba(248, 241, 229, .2);
}

body.redesign-page .career-workspace .career-training-item {
  padding: 18px 0;
  border-bottom: 1px solid rgba(248, 241, 229, .2);
}

body.redesign-page .career-workspace .career-training-name,
body.redesign-page .career-workspace .career-training-name a {
  color: #fff8ed;
  font: 600 19px/1.5 var(--rd-sans);
}

body.redesign-page .career-workspace .career-training-org {
  margin-top: 5px;
  color: #f2b2a4;
  font: 500 16px/1.5 var(--rd-sans);
}

body.redesign-page .career-workspace .career-training-note,
body.redesign-page .career-workspace .career-timeline-copy {
  margin-top: 7px;
  color: #e6ded1;
  font: 500 18px/1.58 var(--rd-sans);
}

body.redesign-page .career-workspace .career-timeline .career-workspace-label {
  margin-bottom: 4px;
}

body.redesign-page .career-workspace .pathway-note {
  margin: 0;
  padding: 20px;
  border: 1px solid rgba(248, 241, 229, .24);
  border-left: 4px solid #e7a292;
  border-radius: 0 10px 10px 0;
  background: #26383d;
}

body.redesign-page .career-workspace .pathway-note-icon { display: none; }
body.redesign-page .career-workspace .pathway-note-body strong {
  display: block;
  margin-bottom: 8px;
  color: #f2b2a4;
  font: 700 14px/1.25 var(--rd-mono);
  text-transform: uppercase;
}

body.redesign-page .career-program-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-bottom: 26px;
}

body.redesign-page .career-program-tab {
  min-height: 54px;
  padding: 12px 14px;
  border: 1px solid rgba(248, 241, 229, .48);
  border-radius: 0;
  background: transparent;
  color: #f8f1e5;
  font: 700 14px/1.25 var(--rd-mono);
  text-transform: uppercase;
  cursor: pointer;
}

body.redesign-page .career-program-tab:hover,
body.redesign-page .career-program-tab:focus-visible,
body.redesign-page .career-program-tab.active {
  border-color: #e7a292;
  background: var(--rd-rust);
  color: #fff8ed;
}

body.redesign-page .career-program-panel { display: none; }
body.redesign-page .career-program-panel.active { display: block; }

body.redesign-page .career-workspace .tier-subhead {
  margin: 0 0 24px;
  color: #e6ded1;
  font-size: 17px;
}

body.redesign-page .career-workspace .school-card {
  display: grid;
  grid-template-columns: 5px minmax(0, 1fr);
  margin: 0;
  border: 0;
  border-bottom: 2px solid rgba(247, 228, 180, .46);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.redesign-page .career-workspace .school-card:first-of-type {
  border-top: 2px solid rgba(247, 228, 180, .46);
}

body.redesign-page .career-workspace .school-card-accent {
  background: #e7a292;
}

body.redesign-page .career-workspace .school-card-body { padding: 20px 8px 22px 18px; }
body.redesign-page .career-workspace .school-card-name,
body.redesign-page .career-workspace .school-card-name a {
  color: #fff8ed;
  font: 600 20px/1.45 var(--rd-sans);
}

body.redesign-page .career-workspace .school-card-desc {
  margin-top: 7px;
  color: #e6ded1;
  font: 500 18px/1.58 var(--rd-sans);
}

body.redesign-page .school-card-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 12px;
  margin-top: 9px;
}

body.redesign-page .school-card-fact {
  display: inline-block;
  padding: 3px 8px 3px 9px;
  border-left: 2px solid #e7a292;
  background: rgba(248, 241, 229, .08);
  color: #f2b2a4;
  font: 600 14px/1.4 var(--rd-sans);
}

body.redesign-page .compare-result-card .school-card-facts {
  margin: 10px 0 12px;
}

@media (max-width: 560px) {
  body.redesign-page .career-program-tabs { grid-template-columns: 1fr; }
}

body.redesign-page .career-workspace .job-certs-section {
  display: grid;
  gap: 0;
  padding: 0;
}

body.redesign-page .career-workspace .job-cert-item {
  padding: 20px 0;
  border-bottom: 1px solid rgba(248, 241, 229, .2);
}

body.redesign-page .career-workspace .job-cert-item:first-child {
  border-top: 1px solid rgba(248, 241, 229, .2);
}

body.redesign-page .career-workspace .job-cert-type {
  margin-bottom: 7px;
  color: #f2b2a4;
  font: 700 13px/1.3 var(--rd-mono);
  text-transform: uppercase;
}

body.redesign-page .career-workspace .job-cert-name,
body.redesign-page .career-workspace .job-cert-name a {
  color: #e6ded1;
  font: 500 18px/1.58 var(--rd-sans);
}

body.redesign-page .career-workspace .job-cert-org {
  margin-top: 6px;
  color: #e6ded1;
  font: 500 17px/1.58 var(--rd-sans);
}

body.redesign-page .career-workspace .job-cert-note {
  margin-top: 8px;
  color: #e6ded1;
  font: 500 18px/1.58 var(--rd-sans);
}

body.redesign-page .career-workspace .career-development-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.redesign-page .career-workspace .career-development-item {
  position: relative;
  padding-left: 20px;
  color: #e6ded1;
  font: 500 18px/1.58 var(--rd-sans);
}

body.redesign-page .career-workspace .career-development-item::before {
  content: "";
  position: absolute;
  left: 2px;
  top: .76em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #e7a292;
  transform: translateY(-50%);
}

body.redesign-page .career-workspace .career-development-item a {
  color: inherit;
  font: inherit;
  text-decoration-color: rgba(231, 162, 146, .72);
  text-underline-offset: 3px;
}

body.redesign-page .career-specializations-section {
  margin: 34px 0 30px;
  padding-top: 22px;
  border-top: 2px solid rgba(194, 188, 178, .32);
}

body.redesign-page .career-specialization-list {
  display: grid;
  gap: 12px;
}

body.redesign-page .career-specialization {
  border: 1px solid rgba(194, 188, 178, .34);
  background:
    linear-gradient(90deg, rgba(194, 188, 178, .28) 0 6px, transparent 6px),
    rgba(15, 27, 30, .54);
}

body.redesign-page .career-specialization summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 54px;
  padding: 14px 18px 14px 24px;
  color: #EFECE6;
  cursor: pointer;
  list-style: none;
  font: 700 19px/1.25 var(--rd-sans);
}

body.redesign-page .career-specialization summary::-webkit-details-marker {
  display: none;
}

body.redesign-page .career-specialization-icon {
  color: #D34E36;
  font: 700 22px/1 var(--rd-sans);
}

body.redesign-page .career-specialization[open] .career-specialization-icon {
  transform: rotate(45deg);
}

body.redesign-page .career-specialization-copy {
  margin: 0;
  padding: 0 24px 12px;
  color: #C2BCB2;
  font: 500 17px/1.55 var(--rd-sans);
}

body.redesign-page .career-specialization-items {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0 24px 20px 42px;
  color: #EFECE6;
  font: 500 17px/1.55 var(--rd-sans);
}

body.redesign-page .career-specialization-items li::marker {
  color: #D34E36;
}

body.redesign-page #drawer-overlay {
  background: rgba(7, 12, 14, .76);
  backdrop-filter: blur(8px);
}

body.redesign-page #detail-drawer {
  height: min(94svh, 900px);
  max-height: 94svh;
  overflow: hidden;
  border-top: 1px solid rgba(248, 241, 229, .28);
  border-radius: 26px 26px 0 0;
  background: var(--rd-slate);
  color: var(--rd-ink);
}

body.redesign-page #detail-drawer .drawer-handle {
  height: 5px;
  margin: 9px auto;
  background: rgba(248, 241, 229, .56);
}

body.redesign-page #detail-drawer-inner {
  height: calc(100% - 23px);
}

@media (max-width: 1100px) and (min-width: 601px) {
  body.redesign-page #detail-panel { width: clamp(500px, 50vw, 580px); }
  body.redesign-page .career-overview-grid { grid-template-columns: 1fr; gap: 34px; }
}

@media (max-width: 600px) {
  body.redesign-page .career-workspace-head { padding: 24px 70px 22px 22px; }
  body.redesign-page .career-workspace .popup-title { font-size: 30px; line-height: 1.14; }
  body.redesign-page .career-workspace .popup-close {
    top: 17px;
    right: 16px;
    width: 48px;
    height: 48px;
  }
  body.redesign-page .career-workspace-meta { margin-top: 16px; }
  body.redesign-page .career-workspace-tab {
    min-width: 118px;
    min-height: 56px;
    font-size: 13px;
  }
  body.redesign-page .career-workspace-panel { padding: 28px 22px 46px; }
  body.redesign-page .career-overview-grid { grid-template-columns: 1fr; gap: 34px; }
  body.redesign-page .career-workspace-copy,
  body.redesign-page .career-workspace .career-entry-text,
  body.redesign-page .career-workspace .pathway-note { font-size: 18px; line-height: 1.62; }
  body.redesign-page .career-workspace-responsibilities li,
  body.redesign-page .career-workspace .career-steps li { font-size: 18px; }
  body.redesign-page .career-workspace .school-card-name,
  body.redesign-page .career-workspace .school-card-name a { font-size: 20px; }
  body.redesign-page .career-workspace .job-cert-name,
  body.redesign-page .career-workspace .job-cert-name a { font-size: 18px; line-height: 1.58; }
  body.redesign-page .career-workspace .school-card-desc,
  body.redesign-page .career-workspace .job-cert-note { font-size: 18px; }
}

/* Editorial directory shared by Complete Index and Compare Schools */
body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) #app-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: start;
}

.index-overview,
.index-focused-section {
  animation: indexCanvasIn .42s ease both;
}

@keyframes indexCanvasIn {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

.index-overview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 34px;
}

.index-overview-item {
  min-height: 112px;
  display: grid;
  align-content: center;
  gap: 10px;
  padding: 22px 2px;
  border: 0;
  border-top: 1px solid rgba(248, 241, 229, .34);
  border-radius: 0;
  background: transparent;
  color: #f8f1e5;
  cursor: pointer;
  text-align: left;
  transition: padding .22s ease, color .22s ease, border-color .22s ease;
}

.index-overview-item:hover,
.index-overview-item:focus-visible {
  padding-left: 10px;
  border-top-color: #d88a7b;
  color: #ffffff;
  outline: none;
}

.index-overview-name {
  font: 700 25px/1.15 var(--rd-serif);
}

.index-overview-meta {
  color: #e7a292;
  font: 700 14px/1.3 var(--rd-mono);
}

.index-overview-back {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 24px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #e7a292;
  cursor: pointer;
  font: 700 16px/1.3 var(--rd-mono);
  text-transform: uppercase;
  transition: color .2s ease;
}

.index-overview-back:hover,
.index-overview-back:focus-visible {
  color: #ffffff;
  outline: none;
}

.index-overview-back span[aria-hidden="true"] {
  font-size: 32px;
  line-height: 1;
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section {
  overflow: hidden;
  border: 1px solid var(--rd-line);
  border-radius: 24px;
  background: transparent;
  box-shadow: none;
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section > .section-header,
body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section > .section-header:hover {
  min-height: 0;
  align-items: end;
  padding: 20px 18px 24px;
  border: 0;
  border-bottom: 1px solid rgba(248, 241, 229, .48);
  border-radius: 0;
  background: transparent;
  cursor: default;
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .section-title {
  color: #f8f1e5 !important;
  font: 700 42px/1.04 var(--rd-serif);
  text-transform: none;
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .section-count {
  color: #e7a292 !important;
  font: 700 15px/1.3 var(--rd-mono);
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section > .section-body {
  padding: 8px 0 0;
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .deg-group-label {
  position: sticky;
  top: 0;
  z-index: 3;
  padding: 18px 18px 12px;
  border-bottom: 1px solid rgba(248, 241, 229, .44);
  background: #1e2d31;
  color: #f2eadf !important;
  font: 700 16px/1.35 var(--rd-mono);
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .jobs-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0 20px;
  padding-inline: 0;
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .job-tag,
body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .job-tag.orch-sub-job {
  min-height: 64px;
  border-radius: 8px;
  background: #243438;
  font-size: 18px;
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) #app-layout:has(#detail-panel.open) .index-focused-section .jobs-grid {
  grid-template-columns: 1fr;
}

@media (max-width: 900px) {
  body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) #app-layout {
    display: block;
  }
}

@media (max-width: 700px) {
  .index-overview-grid { grid-template-columns: 1fr; }
  .index-overview-item { min-height: 98px; }
  body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section > .section-header,
  body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section > .section-header:hover {
    padding: 18px 14px 20px;
  }
  body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .deg-group-label {
    padding-inline: 14px;
  }
  body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .section-title {
    font-size: 34px;
  }
  body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .jobs-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .redesign-marquee-track,
  .redesign-reveal {
    animation: none !important;
    transition: none !important;
  }
  .redesign-reveal { opacity: 1; transform: none; }
  .index-overview,
  .index-focused-section { animation: none; }
}

/* =========================
   BRUTALIST FRAME SYSTEM
   Closed boxes for navigation; corner brackets for career choices.
   ========================= */
body.redesign-page .redesign-path-card,
body.redesign-page .redesign-intro-menu,
body.redesign-page .redesign-menu-toggle {
  border-radius: 0;
}

body.redesign-page .redesign-path-card {
  border: 1px solid rgba(248, 241, 229, .34);
}

body.redesign-page .redesign-intro-menu {
  border-color: rgba(248, 241, 229, .34);
}

body.redesign-page .redesign-product-window .job-tag,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job {
  --job-corner-accent: #e7a292;
  --job-corner-neutral: rgba(248, 241, 229, .46);
  position: relative;
  overflow: visible;
  border: 0;
  border-radius: 0;
}

body.redesign-page .redesign-product-window .job-tag::before,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(var(--job-corner-accent), var(--job-corner-accent)) left top / 30px 2px no-repeat,
    linear-gradient(var(--job-corner-accent), var(--job-corner-accent)) left top / 2px 30px no-repeat,
    linear-gradient(var(--job-corner-neutral), var(--job-corner-neutral)) right top / 30px 2px no-repeat,
    linear-gradient(var(--job-corner-neutral), var(--job-corner-neutral)) right top / 2px 30px no-repeat,
    linear-gradient(var(--job-corner-neutral), var(--job-corner-neutral)) left bottom / 30px 2px no-repeat,
    linear-gradient(var(--job-corner-neutral), var(--job-corner-neutral)) left bottom / 2px 30px no-repeat,
    linear-gradient(var(--job-corner-accent), var(--job-corner-accent)) right bottom / 30px 2px no-repeat,
    linear-gradient(var(--job-corner-accent), var(--job-corner-accent)) right bottom / 2px 30px no-repeat;
  transition: filter .2s ease;
}

body.redesign-page .redesign-product-window .job-tag:hover,
body.redesign-page .redesign-product-window .job-tag:focus-visible,
body.redesign-page .redesign-product-window .job-tag.active,
body.redesign-page .redesign-product-window .job-select-wrap.selected .job-tag,
body.redesign-page .redesign-product-window .orch-parent-row.selected .job-tag {
  --job-corner-neutral: #e7a292;
}

body.redesign-page .redesign-product-window .job-select-toggle,
body.redesign-page .redesign-product-window .orch-expand-btn {
  border-radius: 0;
}

/* Job lists use clean, borderless tiles. Selection remains visible through
   the separate square add button in Compare Schools. */
body.redesign-page .redesign-product-window:is(
  [data-workspace="index"],
  [data-workspace="pathway"],
  [data-workspace="job"],
  [data-workspace="school"],
  [data-workspace="compare"]
) .job-tag,
body.redesign-page .redesign-product-window:is(
  [data-workspace="index"],
  [data-workspace="pathway"],
  [data-workspace="job"],
  [data-workspace="school"],
  [data-workspace="compare"]
) .job-tag.orch-sub-job {
  align-items: center;
  border: 0;
  border-radius: 0;
}

body.redesign-page .redesign-product-window:is(
  [data-workspace="index"],
  [data-workspace="pathway"],
  [data-workspace="job"],
  [data-workspace="school"],
  [data-workspace="compare"]
) .job-tag::before,
body.redesign-page .redesign-product-window:is(
  [data-workspace="index"],
  [data-workspace="pathway"],
  [data-workspace="job"],
  [data-workspace="school"],
  [data-workspace="compare"]
) .job-tag.orch-sub-job::before {
  content: none;
}

body.redesign-page .redesign-product-window:is(
  [data-workspace="index"],
  [data-workspace="pathway"],
  [data-workspace="job"],
  [data-workspace="school"],
  [data-workspace="compare"]
) .job-dot {
  margin-top: 0;
}

/* Entry-path career areas follow the borderless job-list treatment. */
body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chips {
  align-items: stretch;
  gap: 2px 18px;
}

body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip {
  position: relative;
  flex: 1 1 230px;
  justify-content: flex-start;
  min-height: 46px;
  padding: 10px 10px 10px 25px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #f8f1e5;
  text-align: left;
  transform: none;
}

body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip::before {
  content: "";
  position: absolute;
  left: 8px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #e7a292;
  transform: translateY(-50%);
}

body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip:hover,
body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip:focus-visible {
  border: 0;
  background: #26383d;
  box-shadow: none;
  color: #ffffff;
  transform: none;
}

body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip.active,
body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip.active:hover,
body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip.active:focus-visible {
  border: 0;
  background: transparent;
  box-shadow: none;
  color: #f2b2a4;
  transform: none;
}

/* Descender safety audit: Syne has deep lowercase forms that need more room
   than the original display settings allowed inside clipped UI surfaces. */
body.redesign-page .redesign-product-window .job-tag,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job {
  min-height: 62px;
  padding-top: 14px;
  padding-bottom: 16px;
  line-height: 1.5;
}

body.redesign-page .career-workspace .popup-title {
  line-height: 1.26;
  padding-bottom: .1em;
}

body.redesign-page .index-overview-name,
body.redesign-page .school-browser-option-name,
body.redesign-page .career-workspace .career-steps li strong {
  line-height: 1.35;
  padding-bottom: .08em;
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .section-title {
  line-height: 1.18;
  padding-bottom: .1em;
}

body.redesign-page .redesign-split-heading h2,
body.redesign-page .redesign-index-shell h2 {
  line-height: 1.12;
  padding-bottom: .08em;
  overflow: visible;
}

body.redesign-page .redesign-path-card h2,
body.redesign-page .policy-modal h2,
body.redesign-page .feedback-modal h2,
body.redesign-page .compare-modal h2 {
  line-height: 1.24;
  padding-bottom: .08em;
}

/* Mixed-case UI needs a body face with conventional descenders. Syne remains
   the branded display face for the hero, uppercase navigation, and labels. */
body.redesign-page .redesign-product-window .job-tag,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job,
body.redesign-page .career-workspace .popup-title,
body.redesign-page .index-overview-name,
body.redesign-page .school-browser-option-name,
body.redesign-page .compare-result-name {
  font-family: var(--rd-sans);
}

body.redesign-page .job-tag-label {
  display: block;
  min-width: 0;
  padding: .12em 0 .28em;
  overflow: visible;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  line-height: 1.5;
}

/* Restore hierarchy inside career lists:
   field heading > degree heading > career name. */
body.redesign-page .redesign-product-window .section .section-title,
body.redesign-page .redesign-product-window .index-focused-section .section-title {
  font-size: clamp(44px, 4.1vw, 58px) !important;
  line-height: 1.08 !important;
}

body.redesign-page .redesign-product-window .section .deg-group-label,
body.redesign-page .redesign-product-window .index-focused-section .deg-group-label {
  font-size: clamp(20px, 1.75vw, 24px) !important;
  line-height: 1.22 !important;
}

body.redesign-page .redesign-product-window .section .job-tag,
body.redesign-page .redesign-product-window .section .job-tag.orch-sub-job,
body.redesign-page .redesign-product-window .index-focused-section .job-tag,
body.redesign-page .redesign-product-window .index-focused-section .job-tag.orch-sub-job {
  align-items: center !important;
  min-height: 58px !important;
  font-size: clamp(15.5px, 1.28vw, 17px) !important;
}

body.redesign-page .redesign-product-window .section .job-tag-label,
body.redesign-page .redesign-product-window .index-focused-section .job-tag-label {
  line-height: 1.34 !important;
  padding: .08em 0 .16em !important;
}

body.redesign-page .career-workspace .popup-title,
body.redesign-page .index-overview-name,
body.redesign-page .school-browser-option-name,
body.redesign-page .compare-result-name {
  padding-bottom: .16em;
  overflow: visible;
  line-height: 1.3;
}

body.redesign-page .career-workspace .school-card-name a {
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
}

/* The entry-path view is intentionally self-explanatory through its controls. */
body.redesign-page .redesign-product-window[data-workspace="pathway"] #redesign-workspace-description,
body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-guide-help,
body.redesign-page .redesign-product-window[data-workspace="job"] #redesign-workspace-description,
body.redesign-page .redesign-product-window[data-workspace="school"] #redesign-workspace-description {
  display: none !important;
}

/* Square surface system: every rectangular interface surface follows the
   straight-corner treatment established by the four search-function cards. */
body.redesign-page * {
  border-radius: 0 !important;
}

/* Preserve controls and graphics whose shape communicates their function. */
body.redesign-page .redesign-reel-wheel,
body.redesign-page .legend-dot,
body.redesign-page .deg-group-dot,
body.redesign-page .dot,
body.redesign-page .job-dot,
body.redesign-page .popup-close,
body.redesign-page .compare-modal-close,
body.redesign-page .policy-close-btn,
body.redesign-page .school-back-to-top {
  border-radius: 50% !important;
}

body.redesign-page .drawer-handle {
  border-radius: 999px !important;
}

/* =========================
   MIDNIGHT BROADCAST THEME
   Final theme layer for the active deployable index.
   ========================= */
body.redesign-page {
  --rd-ink: #EFECE6;
  --rd-paper: #F4EFE6;
  --rd-charcoal: #171F22;
  --rd-slate: #1E282C;
  --rd-rust: #D34E36;
  --rd-accent: #D34E36;
  --rd-line: rgba(239, 236, 230, 0.15);
  --rd-muted: #C2BCB2;
  --screenprint-shadow: 0.02em 0.02em 0 rgba(0, 0, 0, 0.4);
  background: #171F22;
  color: #EFECE6;
}

body.redesign-page.redesign-light {
  --rd-ink: #171F22;
  --rd-paper: #F4EFE6;
  --rd-charcoal: #F4EFE6;
  --rd-slate: #F4EFE6;
  --rd-line: rgba(23, 31, 34, 0.16);
  --rd-muted: #4A4440;
  background: #F4EFE6;
  color: #171F22;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body.redesign-page .redesign-hero,
body.redesign-page .redesign-hero-sticky {
  background: #171F22;
}

body.redesign-page .redesign-reel-motion {
  opacity: calc(var(--intro-reel-opacity) * 0.78);
  filter:
    blur(var(--intro-reel-blur))
    contrast(.92)
    brightness(.72)
    drop-shadow(0 34px 90px rgba(0, 0, 0, 0.34));
}

body.redesign-page .redesign-logo-wordmark {
  display: block;
  width: min(650px, 68vw);
  max-width: 100%;
  margin: 0 0 10px auto;
  background: transparent;
  filter: drop-shadow(0.02em 0.02em 0 rgba(0, 0, 0, 0.4));
}

body.redesign-page .redesign-hero-expansion {
  color: #D34E36;
  text-shadow: var(--screenprint-shadow);
}

body.redesign-page .redesign-hero-tagline {
  color: #C2BCB2;
}

body.redesign-page .redesign-intro-menu,
body.redesign-page .redesign-path-card,
body.redesign-page .redesign-product-window,
body.redesign-page .pathway-guide,
body.redesign-page .compare-tray,
body.redesign-page .search-bar input,
body.redesign-page .school-browser,
body.redesign-page .school-browser-category,
body.redesign-page .school-browser-option,
body.redesign-page .section,
body.redesign-page .index-focused-section,
body.redesign-page #detail-panel,
body.redesign-page .career-workspace,
body.redesign-page .compare-modal,
body.redesign-page .policy-modal,
body.redesign-page .feedback-modal {
  border-color: rgba(239, 236, 230, 0.15) !important;
}

body.redesign-page .redesign-intro-menu,
body.redesign-page .redesign-path-card,
body.redesign-page .redesign-product-window,
body.redesign-page .pathway-guide,
body.redesign-page .compare-tray,
body.redesign-page .section,
body.redesign-page .index-focused-section,
body.redesign-page #detail-panel,
body.redesign-page .career-workspace {
  background: #1E282C !important;
}

body.redesign-page .redesign-path-card:hover,
body.redesign-page .redesign-path-card:focus-visible,
body.redesign-page .pathway-chip:hover,
body.redesign-page .pathway-chip:focus-visible,
body.redesign-page .filter-btn:hover,
body.redesign-page .filter-btn:focus-visible,
body.redesign-page .deg-btn:hover,
body.redesign-page .deg-btn:focus-visible,
body.redesign-page .tier-tab:hover,
body.redesign-page .tier-tab:focus-visible {
  border-color: #D34E36 !important;
  box-shadow: 0 0 0 4px rgba(211, 78, 54, 0.34) !important;
}

body.redesign-page .redesign-path-card h2,
body.redesign-page .redesign-index-shell h2,
body.redesign-page .redesign-split-heading h2,
body.redesign-page .section-title,
body.redesign-page .index-overview-name,
body.redesign-page .career-workspace .popup-title,
body.redesign-page .compare-modal h2,
body.redesign-page .policy-modal h2,
body.redesign-page .feedback-modal h2 {
  color: #EFECE6 !important;
  text-shadow: var(--screenprint-shadow);
}

body.redesign-page .redesign-path-card p,
body.redesign-page .redesign-index-shell p,
body.redesign-page .redesign-split-heading p,
body.redesign-page .school-card-desc,
body.redesign-page .career-workspace-copy,
body.redesign-page .career-workspace-responsibilities li,
body.redesign-page .career-workspace .career-steps li,
body.redesign-page .career-workspace .school-card-desc,
body.redesign-page .career-workspace .job-cert-note,
body.redesign-page .career-workspace .career-training-note,
body.redesign-page .career-workspace .career-timeline-copy,
body.redesign-page .compare-result-desc,
body.redesign-page .compare-match-list,
body.redesign-page .footer-disclaimer,
body.redesign-page .footer-meta {
  color: #C2BCB2 !important;
}

body.redesign-page .section-count,
body.redesign-page .index-overview-meta,
body.redesign-page .pathway-guide-count,
body.redesign-page .stats,
body.redesign-page .compare-count,
body.redesign-page .compare-result-score,
body.redesign-page .school-card-highlight,
body.redesign-page .school-browser-count,
body.redesign-page .career-workspace-kicker,
body.redesign-page .career-workspace-label,
body.redesign-page .career-workspace-tag,
body.redesign-page .career-workspace .career-entry-label,
body.redesign-page .career-workspace .job-cert-type,
body.redesign-page .career-workspace .school-card-fact {
  color: #D34E36 !important;
}

body.redesign-page .section-count,
body.redesign-page .pathway-guide-count,
body.redesign-page .compare-count,
body.redesign-page .compare-result-score {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 28px;
  padding: 3px 9px;
  border: 1px solid rgba(211, 78, 54, 0.34);
  background: rgba(211, 78, 54, 0.08);
}

body.redesign-page .redesign-product-window .section-header {
  background: rgba(239, 236, 230, 0.045) !important;
  border-bottom-color: rgba(239, 236, 230, 0.12) !important;
}

body.redesign-page .redesign-product-window .job-tag,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job {
  background: rgba(239, 236, 230, 0.035) !important;
}

body.redesign-page .redesign-product-window .job-tag:hover,
body.redesign-page .redesign-product-window .job-tag:focus-visible,
body.redesign-page .redesign-product-window .job-tag.active,
body.redesign-page .redesign-product-window .job-select-wrap.selected .job-tag {
  background: rgba(211, 78, 54, 0.18) !important;
  color: #EFECE6 !important;
}

body.redesign-page .redesign-product-window .job-dot,
body.redesign-page .career-workspace-responsibilities li::before,
body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip::before {
  background: #D34E36 !important;
}

body.redesign-page .redesign-product-window:is([data-workspace="index"], [data-workspace="compare"]) .index-focused-section .jobs-grid {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

body.redesign-page .career-workspace-head {
  background: #171F22 !important;
  border-bottom-color: rgba(239, 236, 230, 0.12) !important;
}

body.redesign-page .career-workspace-tabs,
body.redesign-page .career-workspace-tab {
  border-color: rgba(239, 236, 230, 0.12) !important;
}

body.redesign-page .career-workspace-tabs {
  background: #1E282C !important;
}

body.redesign-page .career-workspace-tab.active,
body.redesign-page .career-program-tab.active {
  background: rgba(211, 78, 54, 0.24) !important;
  color: #EFECE6 !important;
  border-top: 4px solid #D34E36 !important;
  box-shadow: inset 0 -2px 0 #D34E36 !important;
}

body.redesign-page .career-program-tab:hover,
body.redesign-page .career-program-tab:focus-visible,
body.redesign-page .career-program-tab.active {
  border-color: #D34E36 !important;
}

body.redesign-page .career-workspace .career-entry-box,
body.redesign-page .career-workspace .pathway-note {
  background: rgba(239, 236, 230, 0.045) !important;
  border-color: rgba(239, 236, 230, 0.15) !important;
  border-left-color: #D34E36 !important;
}

body.redesign-page .career-workspace .school-card-accent,
body.redesign-page .programs-chapter {
  background: #D34E36 !important;
}

body.redesign-page .school-card-fact,
body.redesign-page .school-card-badge,
body.redesign-page .compare-result-pill {
  border-color: rgba(211, 78, 54, 0.42) !important;
  background: rgba(211, 78, 54, 0.12) !important;
  color: #D34E36 !important;
}

body.redesign-page .compare-modal {
  background: #171F22 !important;
  color: #EFECE6 !important;
}

body.redesign-page .compare-result-card {
  background: #1E282C !important;
  border: 1px solid rgba(239, 236, 230, 0.15) !important;
}

body.redesign-page.redesign-light .compare-modal,
body.redesign-page.redesign-light .compare-result-card {
  background: #F4EFE6 !important;
  color: #171F22 !important;
  border-color: rgba(23, 31, 34, 0.16) !important;
}

body.redesign-page.redesign-light .compare-modal h2,
body.redesign-page.redesign-light .compare-result-name,
body.redesign-page.redesign-light .compare-match-list {
  color: #171F22 !important;
}

body.redesign-page.redesign-light .compare-result-desc,
body.redesign-page.redesign-light .compare-gap-list {
  color: #4A4440 !important;
}

@media (prefers-color-scheme: light) {
  body.redesign-page .compare-modal,
  body.redesign-page .compare-result-card {
    background: #F4EFE6 !important;
    color: #171F22 !important;
    border-color: rgba(23, 31, 34, 0.16) !important;
  }

  body.redesign-page .compare-modal h2,
  body.redesign-page .compare-result-name,
  body.redesign-page .compare-match-list {
    color: #171F22 !important;
  }

  body.redesign-page .compare-result-desc,
  body.redesign-page .compare-gap-list {
    color: #4A4440 !important;
  }
}

@media (max-width: 600px) {
  body.redesign-page .redesign-logo-wordmark {
    width: min(500px, 78vw);
    margin-right: auto;
    margin-left: auto;
  }
}

/* =========================
   WORN TAPE BOX THEME
   Active visual direction: old tape-box ink, worn concert-shirt texture,
   lowercase Compacta display, Neuzeit reading text, Eurostile utility labels.
   ========================= */
body.redesign-page {
  --tape-black: #111719;
  --tape-charcoal: #171F22;
  --tape-slate: #1E282C;
  --tape-slate-2: #243235;
  --tape-cream: #F7E4B4;
  --tape-paper: #F4EFE6;
  --tape-tan: #E5C38F;
  --tape-sand: #BFA996;
  --tape-brown: #5D5146;
  --tape-taupe: #86796B;
  --tape-red: #F25536;
  --tape-red-deep: #D34E36;
  --tape-olive: #C2BC73;
  --tape-line: rgba(247, 228, 180, 0.24);
  --tape-line-soft: rgba(247, 228, 180, 0.15);
  --tape-wash: rgba(194, 188, 115, 0.12);
  --screenprint-shadow: 0.035em 0.035em 0 rgba(0, 0, 0, 0.42);

  --rd-ink: var(--tape-cream);
  --rd-paper: var(--tape-paper);
  --rd-charcoal: var(--tape-charcoal);
  --rd-slate: var(--tape-slate);
  --rd-rust: var(--tape-red);
  --rd-accent: var(--tape-red);
  --rd-line: var(--tape-line-soft);
  --rd-muted: var(--tape-sand);
  --rd-ui: "TRACK Compacta", Impact, "Arial Narrow", sans-serif;
  --rd-display: "TRACK Compacta", Impact, "Arial Narrow", sans-serif;
  --rd-serif: "TRACK Compacta", Impact, "Arial Narrow", sans-serif;
  --rd-sans: "TRACK Neuzeit", "Helvetica Neue", Arial, sans-serif;
  --rd-body: "TRACK Neuzeit", "Helvetica Neue", Arial, sans-serif;
  --rd-mono: "TRACK Eurostile Extended", "TRACK Michroma", "Arial Narrow", Arial, sans-serif;

  background:
    radial-gradient(circle at 12% 0%, rgba(242, 85, 54, 0.15), transparent 24rem),
    radial-gradient(circle at 88% 10%, rgba(194, 188, 115, 0.12), transparent 30rem),
    linear-gradient(135deg, var(--tape-black), var(--tape-charcoal) 48%, #131B1D) !important;
  color: var(--tape-cream);
  font-family: var(--rd-sans);
}

body.redesign-page .redesign-grain {
  opacity: 0.22;
  background-image:
    radial-gradient(circle at 7px 11px, rgba(255,255,255,.18) 0 1px, transparent 1.4px),
    radial-gradient(circle at 38px 49px, rgba(255,255,255,.09) 0 1px, transparent 1.4px),
    radial-gradient(circle at 71px 20px, rgba(0,0,0,.35) 0 1px, transparent 1.5px);
  background-size: 91px 83px;
  mix-blend-mode: screen;
}

body.redesign-page::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: .16;
  background:
    radial-gradient(circle at 11% 17%, rgba(247,228,180,.08) 0 1px, transparent 1.35px),
    radial-gradient(circle at 36% 72%, rgba(247,228,180,.045) 0 1px, transparent 1.25px),
    radial-gradient(circle at 78% 28%, rgba(0,0,0,.26) 0 1.2px, transparent 1.55px),
    radial-gradient(ellipse at 18% 84%, rgba(194,188,115,.05), transparent 24rem),
    radial-gradient(ellipse at 88% 10%, rgba(242,85,54,.045), transparent 22rem);
  background-size: 73px 61px, 109px 97px, 137px 121px, auto, auto;
  mix-blend-mode: soft-light;
}

body.redesign-page :is(
  .redesign-hero h1,
  .redesign-split-heading h2,
  .redesign-index-shell h2,
  .redesign-path-card h2,
  .section-title,
  .index-overview-name,
  .career-workspace .popup-title,
  .compare-modal h2,
  .compare-result-name,
  .policy-modal h2,
  .feedback-modal h2
) {
  font-family: var(--rd-display) !important;
  font-weight: 700 !important;
  letter-spacing: 0.018em !important;
  line-height: 0.88 !important;
  text-transform: lowercase !important;
  color: var(--tape-paper) !important;
  text-shadow: var(--screenprint-shadow);
  padding-bottom: .12em;
}

body.redesign-page .redesign-hero h1 {
  font-size: clamp(82px, 12vw, 178px);
}

body.redesign-page .redesign-index-shell h2,
body.redesign-page .redesign-split-heading h2 {
  font-size: clamp(74px, 8vw, 132px);
}

body.redesign-page .redesign-path-card h2 {
  font-size: clamp(38px, 3.9vw, 62px);
}

body.redesign-page .section-title,
body.redesign-page .index-overview-name {
  font-size: clamp(30px, 3.2vw, 52px) !important;
}

body.redesign-page .career-workspace .popup-title {
  font-size: clamp(48px, 5.2vw, 82px) !important;
}

body.redesign-page :is(
  .redesign-intro-menu-head,
  .redesign-menu-toggle,
  .redesign-intro-menu-links a,
  .redesign-hero-expansion,
  .redesign-marquee,
  .redesign-workspace-back,
  .pathway-guide-title,
  .pathway-label,
  .pathway-guide-count,
  .school-browser-title,
  .school-browser-sort-label,
  .school-browser-sort-button,
  .school-browser-filter-label,
  .school-browser-letter,
  .school-browser-option-count,
  .section-count,
  .deg-group-label,
  .career-workspace-kicker,
  .career-workspace-label,
  .career-workspace-tag,
  .career-workspace-tab,
  .career-program-tab,
  .career-workspace .career-entry-label,
  .career-workspace .job-cert-type,
  .career-workspace .career-steps li::before,
  .compare-count,
  .compare-result-score,
  .compare-result-heading,
  .feedback-field label,
  .feedback-submit,
  .footer-links a,
  .feedback-trigger
) {
  font-family: var(--rd-mono) !important;
  font-weight: 800 !important;
  letter-spacing: 0.035em !important;
  text-transform: lowercase !important;
}

body.redesign-page :is(
  .redesign-hero-tagline,
  .redesign-path-card p,
  .redesign-index-shell p,
  .redesign-split-heading p,
  .pathway-guide-help,
  .search-bar input,
  .school-browser-filter-description,
  .school-browser-option-name,
  .job-tag-label,
  .career-workspace-copy,
  .career-workspace-responsibilities li,
  .career-workspace .career-entry-text,
  .career-workspace .career-steps li,
  .career-workspace .tier-subhead,
  .career-workspace .school-card-name,
  .career-workspace .school-card-name a,
  .career-workspace .school-card-desc,
  .career-workspace .job-cert-name,
  .career-workspace .job-cert-name a,
  .career-workspace .job-cert-note,
  .career-workspace .career-training-note,
  .career-workspace .career-timeline-copy,
  .compare-result-desc,
  .compare-match-list,
  .compare-gap-list,
  .feedback-modal,
  .policy-modal,
  #track-footer
) {
  font-family: var(--rd-sans) !important;
}

body.redesign-page .redesign-hero,
body.redesign-page .redesign-hero-sticky {
  background:
    radial-gradient(circle at 78% 14%, rgba(194, 188, 115, .12), transparent 28rem),
    linear-gradient(135deg, var(--tape-black), var(--tape-charcoal) 58%, #121A1C) !important;
}

body.redesign-page .redesign-hero-sticky::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: .3;
  background:
    linear-gradient(90deg, rgba(93, 81, 70, .34) 0 8%, transparent 8%),
    radial-gradient(ellipse at 22% 78%, rgba(194, 188, 115, .12), transparent 30rem);
}

body.redesign-page .redesign-reel-motion {
  opacity: calc(var(--intro-reel-opacity) * 0.68);
  filter:
    blur(var(--intro-reel-blur))
    grayscale(1)
    contrast(.95)
    brightness(.7)
    drop-shadow(0 34px 90px rgba(0, 0, 0, 0.34));
}

body.redesign-page .redesign-hero-expansion {
  color: var(--tape-red) !important;
}

body.redesign-page .redesign-hero-tagline {
  color: var(--tape-sand) !important;
  font-size: clamp(20px, 1.8vw, 26px);
  line-height: 1.38;
}

body.redesign-page :is(
  .redesign-intro-menu,
  .redesign-path-card,
  .redesign-product-window,
  .pathway-guide,
  .compare-tray,
  .search-bar input,
  .school-browser,
  .section,
  .index-focused-section,
  #detail-panel,
  .career-workspace,
  .compare-modal,
  .policy-modal,
  .feedback-modal
) {
  position: relative;
  border: 1px solid var(--tape-line) !important;
  background:
    linear-gradient(90deg, rgba(93, 81, 70, .32) 0 1px, transparent 1px),
    linear-gradient(180deg, rgba(247, 228, 180, .035), rgba(30, 40, 44, .78)),
    rgba(30, 40, 44, .88) !important;
  box-shadow:
    0 22px 64px rgba(0,0,0,.28),
    inset 0 0 0 1px rgba(255,255,255,.03) !important;
}

body.redesign-page .redesign-path-card {
  min-height: 204px;
  padding: 24px;
}

body.redesign-page .redesign-path-card::before,
body.redesign-page .redesign-product-window::before,
body.redesign-page .section::before,
body.redesign-page .career-workspace::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .12;
  mix-blend-mode: overlay;
  background:
    radial-gradient(circle at 12% 22%, rgba(255,255,255,.8), transparent 1.5px),
    radial-gradient(circle at 72% 18%, rgba(0,0,0,.9), transparent 1.8px),
    radial-gradient(circle at 42% 80%, rgba(255,255,255,.7), transparent 1.2px);
  background-size: 74px 69px, 91px 86px, 121px 109px;
}

body.redesign-page .redesign-path-card::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 8px;
  background: var(--tape-olive);
  opacity: .42;
}

body.redesign-page .redesign-path-card:hover,
body.redesign-page .redesign-path-card:focus-visible {
  background:
    linear-gradient(90deg, rgba(194, 188, 115, .18), transparent 42%),
    linear-gradient(180deg, rgba(247, 228, 180, .055), rgba(30, 40, 44, .86)),
    rgba(30, 40, 44, .94) !important;
  border-color: rgba(242, 85, 54, .72) !important;
  box-shadow: 0 0 0 4px rgba(242, 85, 54, .28), 0 22px 64px rgba(0,0,0,.32) !important;
}

body.redesign-page :is(.redesign-path-card p, .redesign-index-shell p, .redesign-split-heading p) {
  color: var(--tape-sand) !important;
  font-size: 18px;
  line-height: 1.48;
}

body.redesign-page .redesign-intro-menu {
  background: rgba(17, 23, 25, .9) !important;
  border-color: rgba(247, 228, 180, .28) !important;
}

body.redesign-page .redesign-intro-menu-links a {
  color: var(--tape-sand);
}

body.redesign-page .redesign-intro-menu-links a:hover,
body.redesign-page .redesign-intro-menu-links a:focus-visible {
  color: var(--tape-cream);
}

body.redesign-page .redesign-intro-menu-links a::before,
body.redesign-page .job-dot,
body.redesign-page .career-workspace-responsibilities li::before,
body.redesign-page .career-development-item::before,
body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip::before {
  background: #FFB7A8 !important;
}

body.redesign-page .redesign-product-window {
  position: relative;
  overflow: visible;
}

body.redesign-page .redesign-product-window::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 10px;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(194, 188, 115, .36), transparent 48%, rgba(242, 85, 54, .24));
}

body.redesign-page .search-bar input,
body.redesign-page .pathway-select {
  min-height: 64px;
  background: rgba(17, 23, 25, .78) !important;
  color: var(--tape-paper) !important;
  border-color: rgba(191, 169, 150, .48) !important;
  font-size: 22px;
}

body.redesign-page .search-bar input::placeholder {
  color: rgba(247, 228, 180, .76) !important;
}

body.redesign-page :is(.search-bar input, .pathway-select):hover,
body.redesign-page :is(.search-bar input, .pathway-select):focus-visible {
  border-color: var(--tape-red) !important;
  box-shadow: 0 0 0 4px rgba(242, 85, 54, .32) !important;
}

body.redesign-page .school-browser-filter,
body.redesign-page .school-browser-option,
body.redesign-page .school-browser-sort-button,
body.redesign-page .pathway-chip,
body.redesign-page .filter-btn,
body.redesign-page .deg-btn,
body.redesign-page .tier-tab,
body.redesign-page .career-program-tab,
body.redesign-page .compare-selected-chip,
body.redesign-page .compare-clear-btn,
body.redesign-page .compare-run-btn,
body.redesign-page .feedback-submit {
  border-color: rgba(247, 228, 180, .28) !important;
  background: rgba(17, 23, 25, .54) !important;
  color: var(--tape-paper) !important;
}

body.redesign-page :is(
  .pathway-chip.active,
  .filter-btn.active-filter,
  .deg-btn.active-deg,
  .tier-tab.active,
  .school-browser-filter.active,
  .school-browser-sort-button.active,
  .career-program-tab.active,
  .career-workspace-tab.active,
  .compare-run-btn,
  .feedback-submit
) {
  border-color: var(--tape-red) !important;
  background: rgba(242, 85, 54, .48) !important;
  color: var(--tape-paper) !important;
  box-shadow: inset 0 4px 0 rgba(247, 228, 180, .2) !important;
}

body.redesign-page .school-browser-filter.active,
body.redesign-page .pathway-chip.active {
  background: rgba(194, 188, 115, .16) !important;
  border-color: rgba(194, 188, 115, .58) !important;
  color: var(--tape-cream) !important;
}

body.redesign-page .school-browser-filter-description,
body.redesign-page .school-browser-empty,
body.redesign-page .compare-empty-selection,
body.redesign-page .compare-tray-copy {
  color: var(--tape-sand) !important;
}

body.redesign-page :is(
  .section-count,
  .index-overview-meta,
  .pathway-guide-count,
  .stats,
  .compare-count,
  .compare-result-score,
  .school-browser-count
) {
  color: var(--tape-red) !important;
  border-color: rgba(242, 85, 54, .36) !important;
  background: rgba(242, 85, 54, .1) !important;
}

body.redesign-page :is(
  .school-card-fact,
  .school-card-badge,
  .compare-result-pill
) {
  border-color: rgba(194, 188, 115, .5) !important;
  background: rgba(194, 188, 115, .13) !important;
  color: var(--tape-olive) !important;
}

body.redesign-page .redesign-product-window .section-header {
  min-height: 74px;
  background:
    linear-gradient(90deg, rgba(194,188,115,.16) 0 6px, transparent 6px),
    rgba(247, 228, 180, .045) !important;
  border-bottom-color: rgba(247, 228, 180, .24) !important;
}

body.redesign-page .redesign-product-window .deg-group-label {
  color: var(--tape-paper) !important;
  border-bottom-color: rgba(247, 228, 180, .42) !important;
}

body.redesign-page .redesign-product-window .job-tag,
body.redesign-page .redesign-product-window .job-tag.orch-sub-job {
  min-height: 72px;
  background: rgba(247, 228, 180, .035) !important;
  color: var(--tape-paper) !important;
}

body.redesign-page .job-tag-label {
  color: var(--tape-paper) !important;
  font-family: "TRACK Neuzeit Grotesk", "TRACK Neuzeit", Arial, sans-serif !important;
  font-size: 20px;
  font-weight: 500;
}

body.redesign-page .redesign-product-window .job-tag:hover,
body.redesign-page .redesign-product-window .job-tag:focus-visible,
body.redesign-page .redesign-product-window .job-tag.active,
body.redesign-page .redesign-product-window .job-select-wrap.selected .job-tag {
  background:
    linear-gradient(90deg, rgba(242,85,54,.18), transparent 42%),
    rgba(93, 81, 70, .45) !important;
  box-shadow: inset 4px 0 0 var(--tape-red) !important;
}

body.redesign-page .career-workspace-head {
  background:
    radial-gradient(circle at 86% 20%, rgba(242,85,54,.12), transparent 12rem),
    rgba(17, 23, 25, .72) !important;
}

body.redesign-page .career-workspace-tabs {
  background: rgba(30, 40, 44, .92) !important;
}

body.redesign-page .career-workspace-tab {
  color: var(--tape-sand) !important;
}

body.redesign-page .career-workspace-tab.active {
  background: linear-gradient(180deg, rgba(242,85,54,.9), rgba(211,78,54,.72)) !important;
  color: var(--tape-paper) !important;
  border-top: 4px solid #FFB7A8 !important;
  box-shadow: inset 0 -1px 0 rgba(0,0,0,.45) !important;
}

body.redesign-page :is(
  .career-workspace-kicker,
  .career-workspace-label,
  .career-workspace-tag,
  .career-workspace .career-entry-label,
  .career-workspace .job-cert-type,
  .compare-result-heading,
  .feedback-field label
) {
  color: #FFB7A8 !important;
}

body.redesign-page .career-workspace-tag {
  border-color: rgba(255, 183, 168, .78) !important;
  background: rgba(93,81,70,.22) !important;
}

body.redesign-page .career-workspace .career-entry-box,
body.redesign-page .career-workspace .pathway-note {
  background: rgba(247, 228, 180, .045) !important;
  border-color: rgba(247, 228, 180, .18) !important;
  border-left-color: var(--tape-red) !important;
}

body.redesign-page .career-workspace .career-steps li::before {
  color: #FFB7A8 !important;
}

body.redesign-page .career-workspace .school-card-accent,
body.redesign-page .programs-chapter {
  background: var(--tape-red) !important;
}

body.redesign-page .career-workspace .school-card-accent {
  background: var(--tape-olive) !important;
}

body.redesign-page .career-workspace .school-card-name,
body.redesign-page .career-workspace .school-card-name a,
body.redesign-page .career-workspace .job-cert-name,
body.redesign-page .career-workspace .job-cert-name a {
  color: var(--tape-paper) !important;
  font-family: "TRACK Neuzeit Grotesk", "TRACK Neuzeit", Arial, sans-serif !important;
}

body.redesign-page .compare-modal,
body.redesign-page .compare-result-card {
  background: var(--tape-paper) !important;
  color: var(--tape-charcoal) !important;
  border-color: rgba(23, 31, 34, .2) !important;
}

body.redesign-page .compare-modal :is(h2, .compare-result-name, .compare-match-list) {
  color: var(--tape-charcoal) !important;
}

body.redesign-page .compare-modal :is(.compare-result-desc, .compare-gap-list, .compare-modal-head p) {
  color: #4F4740 !important;
}

body.redesign-page .compare-overlay {
  background: rgba(7, 12, 14, .74) !important;
}

body.redesign-page .compare-modal {
  background:
    linear-gradient(180deg, rgba(247, 228, 180, .98), rgba(244, 239, 230, .98)),
    var(--tape-paper) !important;
}

body.redesign-page .compare-modal-head {
  padding-right: 58px;
  border-bottom: 1px solid rgba(23, 31, 34, .18);
}

body.redesign-page .compare-modal h2 {
  color: var(--tape-charcoal) !important;
  font-family: "TRACK Compacta", Impact, "Arial Narrow", sans-serif !important;
  font-size: clamp(54px, 6.8vw, 86px) !important;
  line-height: .9 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

body.redesign-page .compare-modal-head p {
  max-width: 70ch;
  color: #3F3933 !important;
  font-family: "TRACK Neuzeit", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 19px !important;
  line-height: 1.48 !important;
}

body.redesign-page .compare-modal-close {
  background: var(--tape-paper) !important;
  border-color: rgba(23, 31, 34, .4) !important;
  color: var(--tape-charcoal) !important;
}

body.redesign-page .compare-modal-close:hover,
body.redesign-page .compare-modal-close:focus-visible {
  background: var(--tape-red) !important;
  border-color: var(--tape-red) !important;
  color: var(--tape-paper) !important;
}

body.redesign-page .compare-selected-summary {
  gap: 9px;
  margin: 18px 0 22px;
}

body.redesign-page .compare-selected-summary .compare-selected-chip {
  background: var(--tape-charcoal) !important;
  color: var(--tape-paper) !important;
  border-color: rgba(23, 31, 34, .34) !important;
  font-family: "TRACK Neuzeit Grotesk", "TRACK Neuzeit", Arial, sans-serif !important;
  font-size: 16px;
  line-height: 1.35;
}

body.redesign-page .compare-result-heading {
  min-height: 44px;
  display: flex;
  align-items: center;
  padding: 11px 14px;
  background: var(--tape-red) !important;
  color: var(--tape-paper) !important;
  font-size: 13px !important;
}

body.redesign-page .compare-result-grid {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 14px;
  padding-top: 12px;
}

body.redesign-page .compare-result-card {
  padding: 18px 16px 20px;
  background: rgba(244, 239, 230, .96) !important;
  border: 1px solid rgba(23, 31, 34, .18) !important;
  box-shadow: none !important;
}

body.redesign-page .compare-result-name,
body.redesign-page .compare-result-name a {
  color: var(--tape-charcoal) !important;
  font-family: "TRACK Neuzeit Grotesk", "TRACK Neuzeit", Arial, sans-serif !important;
  font-size: 21px !important;
  font-weight: 600 !important;
  line-height: 1.24 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  text-shadow: none !important;
  overflow-wrap: anywhere;
}

body.redesign-page .compare-result-score {
  width: fit-content;
  margin: 10px 0 12px;
  padding: 6px 9px;
  background: rgba(242, 85, 54, .1) !important;
  border: 1px solid rgba(242, 85, 54, .45) !important;
  color: var(--tape-red) !important;
  font-size: 12px !important;
}

body.redesign-page .compare-result-card .school-card-facts {
  gap: 8px;
  margin: 12px 0 14px;
}

body.redesign-page .compare-result-card .school-card-fact {
  border-left: 3px solid var(--tape-olive) !important;
  background: rgba(194, 188, 115, .2) !important;
  color: #4F4A2D !important;
  font-family: "TRACK Neuzeit Grotesk", "TRACK Neuzeit", Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  padding: 5px 9px;
}

body.redesign-page .compare-result-desc {
  color: #3F3933 !important;
  font-size: 17px !important;
  line-height: 1.52 !important;
}

body.redesign-page .compare-match-list,
body.redesign-page .compare-gap-list {
  color: #3F3933 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

body.redesign-page .compare-match-list strong,
body.redesign-page .compare-gap-list strong {
  color: var(--tape-charcoal) !important;
}

/* Entry-path category label readability */
body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip {
  align-items: center !important;
  min-height: 52px !important;
  padding: 12px 14px 12px 30px !important;
  color: var(--tape-paper) !important;
  font-family: "TRACK Neuzeit Grotesk", "TRACK Neuzeit", Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.28 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip.active {
  color: var(--tape-paper) !important;
  background: rgba(194, 188, 115, .18) !important;
}

body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip:hover,
body.redesign-page .redesign-product-window[data-workspace="pathway"] .pathway-chip:focus-visible {
  color: var(--tape-paper) !important;
  background: rgba(247, 228, 180, .08) !important;
}

body.redesign-page .policy-modal,
body.redesign-page .feedback-modal {
  background:
    linear-gradient(180deg, rgba(30, 40, 44, .98), rgba(23, 31, 34, .99)),
    var(--tape-slate) !important;
  color: var(--tape-sand) !important;
  border: 1px solid rgba(247, 228, 180, .24) !important;
}

body.redesign-page .policy-modal :is(p, li, strong),
body.redesign-page .feedback-modal :is(p, label, .feedback-help, .feedback-note) {
  color: var(--tape-sand) !important;
}

body.redesign-page .policy-modal h2,
body.redesign-page .feedback-modal h2 {
  color: var(--tape-paper) !important;
}

body.redesign-page .policy-modal h3,
body.redesign-page .feedback-field label {
  color: var(--tape-red) !important;
}

body.redesign-page .policy-modal a,
body.redesign-page .feedback-modal a {
  color: var(--tape-paper) !important;
}

body.redesign-page .policy-close-btn {
  color: var(--tape-paper) !important;
  border: 1px solid rgba(247, 228, 180, .42) !important;
  background: rgba(17, 23, 25, .72) !important;
}

body.redesign-page .policy-close-btn:hover,
body.redesign-page .policy-close-btn:focus-visible {
  color: var(--tape-red) !important;
  background: rgba(247, 228, 180, .08) !important;
}

body.redesign-page .feedback-field input,
body.redesign-page .feedback-field select,
body.redesign-page .feedback-field textarea {
  background: rgba(17, 23, 25, .78) !important;
  color: var(--tape-paper) !important;
  border-color: rgba(247, 228, 180, .34) !important;
  font-family: var(--rd-sans) !important;
}

body.redesign-page .feedback-field input::placeholder,
body.redesign-page .feedback-field textarea::placeholder {
  color: rgba(191, 169, 150, .8) !important;
}

body.redesign-page .feedback-field select option {
  background: var(--tape-charcoal) !important;
  color: var(--tape-paper) !important;
}

body.redesign-page .feedback-submit {
  background: var(--tape-red) !important;
  border-color: var(--tape-red) !important;
  color: var(--tape-paper) !important;
}

body.redesign-page .feedback-success {
  background: rgba(194, 188, 178, .12) !important;
  border-color: rgba(194, 188, 178, .35) !important;
  color: var(--tape-paper) !important;
}

body.redesign-page .school-back-to-top {
  background: var(--tape-red) !important;
  color: var(--tape-paper) !important;
  border-color: rgba(247, 228, 180, .58) !important;
}

body.redesign-page #track-footer {
  background: var(--tape-black) !important;
  color: var(--tape-sand) !important;
  border-top-color: var(--tape-line-soft) !important;
}

body.redesign-page #track-footer a,
body.redesign-page .feedback-trigger {
  color: var(--tape-sand) !important;
}

/* Footer readability and placement */
body.redesign-page #track-footer {
  position: relative !important;
  display: block !important;
  width: 100vw !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 48px calc(50% - 50vw) 0 !important;
  padding: 24px max(20px, calc((100vw - 980px) / 2)) 32px !important;
  background:
    linear-gradient(180deg, rgba(30, 40, 44, .98), rgba(23, 31, 34, .99)),
    var(--tape-slate) !important;
  border: 0 !important;
  border-top: 1px solid rgba(247, 228, 180, .42) !important;
  box-shadow: none !important;
  color: var(--tape-sand) !important;
  text-align: center !important;
  transform: none !important;
}

body.redesign-page #track-footer::before,
body.redesign-page #track-footer::after {
  content: none !important;
}

body.redesign-page #track-footer .footer-disclaimer {
  max-width: 820px !important;
  margin: 0 auto 16px !important;
  color: var(--tape-sand) !important;
  font-family: var(--rd-sans) !important;
  font-size: 12.5px !important;
  line-height: 1.7 !important;
  opacity: 1 !important;
}

body.redesign-page #track-footer .footer-links {
  gap: 20px !important;
  margin: 0 auto 12px !important;
}

body.redesign-page #track-footer .footer-links a,
body.redesign-page #track-footer .feedback-trigger {
  color: var(--tape-sand) !important;
  font-family: var(--rd-sans) !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  opacity: .95 !important;
}

body.redesign-page #track-footer .footer-links a:hover,
body.redesign-page #track-footer .footer-links a:focus-visible,
body.redesign-page #track-footer .feedback-trigger:hover,
body.redesign-page #track-footer .feedback-trigger:focus-visible {
  color: var(--tape-red) !important;
  border-bottom-color: currentColor !important;
}

body.redesign-page #track-footer .footer-meta {
  max-width: 820px !important;
  margin: 8px auto 0 !important;
  color: var(--tape-sand) !important;
  font-family: var(--rd-sans) !important;
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  opacity: 1 !important;
}

body.redesign-page .redesign-app-wrap {
  padding-bottom: 0 !important;
}

body.redesign-page .redesign-index-section {
  padding-bottom: 0 !important;
}

body.redesign-page .redesign-product-window {
  margin-bottom: 0 !important;
}

/* Keep the mobile career drawer out of the page unless a card is open */
body.redesign-page #detail-drawer {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 101 !important;
  height: min(94svh, 900px) !important;
  max-height: 94svh !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(23, 31, 34, .98), rgba(30, 40, 44, .98)),
    var(--tape-slate) !important;
  color: var(--tape-paper) !important;
  border: 1px solid rgba(247, 228, 180, .24) !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;
  transform: translateY(110%) !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body.redesign-page #detail-drawer.open {
  transform: translateY(0) !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

body.redesign-page #detail-drawer:not(.open) .drawer-handle,
body.redesign-page #drawer-overlay:not(.open) {
  display: none !important;
}

/* School-search result banner */
body.redesign-page .school-match-banner {
  margin: 12px 0 12px !important;
  padding: 12px 14px !important;
  background: rgba(17, 23, 25, .72) !important;
  border: 1px solid rgba(247, 228, 180, .28) !important;
  border-left: 4px solid var(--tape-olive) !important;
  border-radius: 0 !important;
  color: var(--tape-paper) !important;
  font-family: var(--rd-sans) !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  box-shadow: none !important;
}

body.redesign-page .school-match-banner strong {
  color: var(--tape-red) !important;
  font-weight: 800 !important;
}

body.redesign-page .school-match-banner .banner-clear {
  color: var(--tape-sand) !important;
  font-family: var(--rd-sans) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  opacity: 1 !important;
}

body.redesign-page .school-match-banner .banner-clear:hover,
body.redesign-page .school-match-banner .banner-clear:focus-visible {
  color: var(--tape-red) !important;
}

@media (max-width: 900px) {
  body.redesign-page .redesign-index-shell h2,
  body.redesign-page .redesign-split-heading h2 {
    font-size: clamp(64px, 15vw, 98px);
  }

  body.redesign-page .redesign-path-card h2 {
    font-size: clamp(34px, 8vw, 52px);
  }
}

@media (max-width: 600px) {
  body.redesign-page .redesign-hero h1 {
    font-size: clamp(64px, 19vw, 98px);
  }

  body.redesign-page .redesign-logo-wordmark {
    width: min(500px, 78vw);
    margin-right: auto;
    margin-left: auto;
  }

  body.redesign-page .section-title,
  body.redesign-page .index-overview-name {
    font-size: clamp(30px, 11vw, 44px) !important;
  }

  body.redesign-page .career-workspace .popup-title {
    font-size: clamp(42px, 13vw, 62px) !important;
  }
}

/* Compare Schools readability pass */
body.redesign-page .compare-overlay {
  background: rgba(7, 12, 14, .62) !important;
  backdrop-filter: blur(4px);
}

body.redesign-page .compare-modal {
  background:
    linear-gradient(180deg, rgba(247, 228, 180, .98), rgba(244, 239, 230, .99)),
    var(--tape-paper) !important;
  color: var(--tape-charcoal) !important;
  border-color: rgba(23, 31, 34, .34) !important;
  box-shadow: 0 28px 82px rgba(0, 0, 0, .42) !important;
}

body.redesign-page .compare-modal::before,
body.redesign-page .compare-modal::after {
  content: none !important;
}

body.redesign-page .compare-modal-head {
  background: transparent !important;
  border-bottom: 2px solid rgba(23, 31, 34, .18) !important;
  margin-bottom: 18px !important;
  padding: 2px 68px 18px 0 !important;
}

body.redesign-page .compare-modal h2 {
  color: var(--tape-sand) !important;
  font-family: "TRACK Neuzeit Grotesk", "TRACK Neuzeit", Arial, sans-serif !important;
  font-size: clamp(34px, 4vw, 52px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-shadow: var(--screenprint-shadow) !important;
  text-transform: lowercase !important;
  opacity: 1 !important;
}

body.redesign-page .compare-overlay.open #compare-title {
  color: var(--tape-sand) !important;
  font-family: "TRACK Neuzeit Grotesk", "TRACK Neuzeit", Arial, sans-serif !important;
  font-size: clamp(34px, 4vw, 52px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-shadow: var(--screenprint-shadow) !important;
  text-transform: lowercase !important;
}

body.redesign-page .compare-modal-head p {
  display: none !important;
}

body.redesign-page .compare-selected-summary {
  gap: 10px !important;
  margin: 18px 0 22px !important;
}

body.redesign-page .compare-selected-summary .compare-selected-chip {
  min-height: 42px !important;
  background: var(--tape-charcoal) !important;
  color: var(--tape-paper) !important;
  border: 1px solid rgba(23, 31, 34, .52) !important;
  font-family: var(--rd-sans) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  padding: 9px 12px !important;
}

body.redesign-page .compare-result-heading {
  min-height: 46px !important;
  background: rgba(93, 61, 54, .92) !important;
  color: var(--tape-paper) !important;
  font-size: 17px !important;
  letter-spacing: .04em !important;
  padding: 12px 16px !important;
}

body.redesign-page .compare-result-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 390px), 1fr)) !important;
  gap: 16px !important;
  padding: 14px !important;
  border-color: rgba(23, 31, 34, .2) !important;
}

body.redesign-page .compare-result-card {
  background: rgba(244, 239, 230, .98) !important;
  color: var(--tape-charcoal) !important;
  border: 1px solid rgba(23, 31, 34, .24) !important;
  padding: 20px !important;
}

body.redesign-page .compare-result-name,
body.redesign-page .compare-result-name a {
  color: var(--tape-charcoal) !important;
  font-family: "TRACK Neuzeit Grotesk", "TRACK Neuzeit", Arial, sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-shadow: none !important;
  overflow-wrap: break-word !important;
}

body.redesign-page .compare-result-score {
  background: rgba(242, 85, 54, .1) !important;
  border: 1px solid rgba(242, 85, 54, .5) !important;
  color: #BF351F !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  padding: 7px 10px !important;
}

body.redesign-page .compare-result-card .school-card-fact {
  background: rgba(247, 228, 180, .72) !important;
  border: 1px solid rgba(93, 81, 70, .18) !important;
  border-left: 4px solid var(--tape-olive) !important;
  color: #333117 !important;
  font-family: "TRACK Neuzeit", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  padding: 6px 10px !important;
}

body.redesign-page .compare-result-desc,
body.redesign-page .compare-match-list,
body.redesign-page .compare-gap-list {
  color: #3F3933 !important;
  font-family: var(--rd-sans) !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
}

body.redesign-page .compare-match-list strong,
body.redesign-page .compare-gap-list strong {
  color: var(--tape-charcoal) !important;
}

@media (max-width: 600px) {
  body.redesign-page .compare-overlay {
    padding: 12px !important;
  }

  body.redesign-page .compare-modal {
    max-height: 92vh !important;
    padding: 18px !important;
  }

  body.redesign-page .compare-modal-head {
    padding-right: 52px !important;
  }

  body.redesign-page .compare-modal h2 {
    font-size: clamp(42px, 15vw, 58px) !important;
  }

  body.redesign-page .compare-modal-head p {
    font-size: 18px !important;
  }
}

/* =========================
   USED CONCERT SHIRT TEXTURE PASS
   Adds worn ink, paper grain, and tape-box surface character away from the
   landing hero so the T.R.A.C.K hero lockup remains untouched.
   ========================= */
body.redesign-page {
  --shirt-dot: rgba(247, 228, 180, .08);
  --shirt-scuff: rgba(247, 228, 180, .045);
  --shirt-shadow: rgba(0, 0, 0, .22);
  --shirt-red-wash: rgba(242, 85, 54, .11);
  --shirt-green-wash: rgba(194, 188, 115, .105);
  --shirt-print-shadow:
    .034em .034em 0 rgba(0, 0, 0, .45),
    .055em .055em 0 rgba(93, 81, 70, .28);
}

body.redesign-page .redesign-index-section,
body.redesign-page .redesign-app-wrap {
  background-image: none !important;
}

body.redesign-page :is(
  .redesign-product-window,
  .redesign-path-card,
  .pathway-guide,
  .compare-tray,
  .school-browser,
  .section,
  .index-focused-section,
  #detail-panel,
  .career-workspace,
  .policy-modal,
  .feedback-modal
) {
  background-image:
    radial-gradient(circle at 18% 14%, rgba(247, 228, 180, .07) 0 1px, transparent 1.3px),
    radial-gradient(circle at 74% 62%, rgba(0, 0, 0, .26) 0 1px, transparent 1.4px),
    linear-gradient(105deg, rgba(194, 188, 115, .055), transparent 26%, rgba(242, 85, 54, .035) 82%),
    linear-gradient(180deg, rgba(247, 228, 180, .035), rgba(30, 40, 44, .86)) !important;
  background-size: 58px 58px, 83px 83px, auto, auto !important;
  background-blend-mode: soft-light, soft-light, normal, normal !important;
}

body.redesign-page :is(
  .redesign-path-card h2,
  .redesign-split-heading h2,
  .redesign-index-shell h2,
  .section-title,
  .index-overview-name,
  .career-workspace .popup-title,
  .compare-modal h2,
  .policy-modal h2,
  .feedback-modal h2
) {
  text-shadow: var(--shirt-print-shadow) !important;
}

body.redesign-page :is(
  .redesign-product-window,
  .redesign-path-card,
  .pathway-guide,
  .compare-tray,
  .school-browser,
  .section,
  .index-focused-section,
  #detail-panel,
  .career-workspace
)::before {
  background:
    radial-gradient(circle at 12% 22%, rgba(247, 228, 180, .42), transparent 1.2px),
    radial-gradient(circle at 72% 18%, rgba(0, 0, 0, .75), transparent 1.5px),
    radial-gradient(circle at 42% 80%, rgba(247, 228, 180, .32), transparent 1px),
    radial-gradient(ellipse at 24% 8%, rgba(194,188,115,.08), transparent 18rem),
    radial-gradient(ellipse at 92% 88%, rgba(242,85,54,.055), transparent 16rem) !important;
  background-size: 74px 69px, 91px 86px, 121px 109px, auto, auto !important;
  mix-blend-mode: overlay !important;
  opacity: .13 !important;
}

body.redesign-page .redesign-path-card::before {
  opacity: .14 !important;
}

body.redesign-page :is(.job-tag, .pathway-chip, .school-browser-option, .compare-selected-chip) {
  background-image:
    linear-gradient(90deg, rgba(247, 228, 180, .032), transparent 42%),
    radial-gradient(circle at 16px 14px, rgba(247, 228, 180, .06) 0 1px, transparent 1.2px) !important;
  background-size: auto, 42px 42px !important;
}

body.redesign-page :is(.job-tag:hover, .job-tag:focus-visible, .job-tag.active),
body.redesign-page .job-select-wrap.selected .job-tag {
  background-image:
    linear-gradient(90deg, rgba(194, 188, 115, .16), transparent 42%),
    linear-gradient(90deg, rgba(93, 81, 70, .5), rgba(93, 81, 70, .28)) !important;
}

body.redesign-page :is(.career-workspace-tabs, .career-workspace-panel, .section-body) {
  background-image:
    radial-gradient(circle at 18% 24%, rgba(247, 228, 180, .032) 0 1px, transparent 1.35px),
    radial-gradient(circle at 73% 68%, rgba(0, 0, 0, .16) 0 1px, transparent 1.4px) !important;
  background-size: 83px 71px, 119px 101px !important;
}

body.redesign-page :is(.career-workspace-copy, .career-workspace-responsibilities li, .school-card-desc, .compare-result-desc, .footer-disclaimer, .footer-meta) {
  text-shadow: 0 1px 0 rgba(0, 0, 0, .16);
}

body.redesign-page :is(
  .redesign-path-card h2,
  .redesign-split-heading h2,
  .redesign-index-shell h2,
  .section-title,
  .index-overview-name,
  .career-workspace .popup-title,
  .compare-modal h2
) {
  text-shadow: .032em .032em 0 rgba(0, 0, 0, .46) !important;
}

@supports (-webkit-mask-image: radial-gradient(circle, #000 0 1px, transparent 1px)) {
  body.redesign-page :is(
    .redesign-path-card h2,
    .redesign-split-heading h2,
    .redesign-index-shell h2,
    .section-title,
    .index-overview-name,
    .career-workspace .popup-title,
    .compare-modal h2
  ) {
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }
}

body.redesign-page :is(
  .redesign-path-card h2,
  .redesign-split-heading h2,
  .redesign-index-shell h2,
  .section-title,
  .index-overview-name,
  .career-workspace .popup-title,
  .compare-modal h2
) {
  display: inline-block;
  overflow: visible;
  filter: url(#track-title-wear);
  text-shadow: .032em .032em 0 rgba(0, 0, 0, .46) !important;
}

.track-title-filter-defs {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
}

/* Plain hero-to-search scroll: no fade-in/out transition between the landing
   viewport and the four search-option cards. */
body.redesign-page .redesign-hero {
  --intro-title-opacity: 1 !important;
  --intro-card-opacity: 1 !important;
  --intro-reel-opacity: .28 !important;
  --intro-reel-scale: 1 !important;
  --intro-reel-blur: 1px !important;
  --intro-wash-opacity: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}

body.redesign-page .redesign-hero-sticky {
  position: relative !important;
  top: auto !important;
  height: 100svh !important;
  min-height: 680px !important;
  overflow: hidden !important;
}

body.redesign-page .redesign-transition-wash {
  display: none !important;
}

body.redesign-page .redesign-hero-lockup {
  opacity: 1 !important;
  transform: none !important;
}

body.redesign-page .redesign-reel-motion {
  transform: translate(-50%, -50%) scale(1) !important;
}

body.redesign-page .redesign-hero-searches {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: min(1180px, calc(100vw - 56px)) !important;
  margin: 0 auto !important;
  min-height: 118svh !important;
  padding: 30svh 0 38svh !important;
  align-content: center !important;
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}

body.redesign-page .redesign-index-section {
  background: transparent !important;
  padding-top: clamp(96px, 16svh, 180px) !important;
}

body.redesign-page .redesign-hero-searches,
body.redesign-page .redesign-index-section {
  background: transparent !important;
  background-image: none !important;
}

body.redesign-page #redesign-top {
  background:
    radial-gradient(circle at 16% 26%, rgba(242, 85, 54, .055), transparent 34rem),
    radial-gradient(circle at 84% 24%, rgba(194, 188, 115, .07), transparent 38rem),
    radial-gradient(circle at 26% 44%, rgba(247, 228, 180, .035) 0 1px, transparent 1.35px),
    radial-gradient(circle at 71% 68%, rgba(0, 0, 0, .16) 0 1.15px, transparent 1.55px),
    linear-gradient(180deg, var(--tape-black) 0%, var(--tape-charcoal) 42%, var(--tape-charcoal) 100%) !important;
  background-size: auto, auto, 89px 77px, 131px 113px, auto !important;
  background-blend-mode: soft-light, soft-light, soft-light, soft-light, normal !important;
}

body.redesign-page .redesign-hero,
body.redesign-page .redesign-hero-sticky {
  background: transparent !important;
  background-image: none !important;
}

body.redesign-page .redesign-hero-sticky::after {
  opacity: .16 !important;
  background:
    linear-gradient(90deg, rgba(93, 81, 70, .18) 0 8%, transparent 8%),
    radial-gradient(ellipse at 22% 78%, rgba(194, 188, 115, .06), transparent 30rem) !important;
}

@media (max-width: 900px) {
  body.redesign-page .redesign-hero-searches {
    min-height: 130svh !important;
    padding: 24svh 0 34svh !important;
  }
}

/* Mobile navigation and search repair pass */
@media (max-width: 600px) {
  body.redesign-page {
    overflow-x: hidden;
  }

  body.redesign-page .redesign-hero-sticky {
    height: 100svh !important;
    min-height: 100svh !important;
  }

  body.redesign-page .redesign-reel-motion {
    top: 45% !important;
    width: min(82vw, 340px) !important;
  }

  body.redesign-page .redesign-logo-wordmark {
    width: min(72vw, 310px) !important;
    max-width: calc(100vw - 72px) !important;
    margin-inline: auto !important;
    padding-inline: 10px !important;
    box-sizing: border-box !important;
  }

  body.redesign-page .redesign-hero-lockup {
    right: 0 !important;
    left: 0 !important;
    bottom: max(22px, env(safe-area-inset-bottom)) !important;
    width: 100% !important;
    padding-inline: 14px !important;
    text-align: center !important;
  }

  body.redesign-page .redesign-hero-expansion,
  body.redesign-page .redesign-hero-tagline {
    margin-inline: auto !important;
    text-align: center !important;
  }

  body.redesign-page .redesign-hero-expansion {
    max-width: 92vw !important;
    font-size: clamp(11px, 3.4vw, 13px) !important;
    line-height: 1.25 !important;
  }

  body.redesign-page .redesign-hero-tagline {
    max-width: 82vw !important;
    font-size: clamp(14px, 4.5vw, 17px) !important;
    line-height: 1.35 !important;
  }

  body.redesign-page .redesign-reel-wheel {
    animation-play-state: running !important;
  }

  body.redesign-page .redesign-index-section {
    padding: 0 8px 64px !important;
  }

  body.redesign-page .redesign-product-window {
    scroll-margin-top: 0 !important;
  }

  body.redesign-page .redesign-product-window[data-workspace="job"],
  body.redesign-page .redesign-product-window[data-workspace="school"],
  body.redesign-page .redesign-product-window[data-workspace="pathway"],
  body.redesign-page .redesign-product-window[data-workspace="compare"],
  body.redesign-page .redesign-product-window[data-workspace="index"] {
    margin-top: 0 !important;
    padding-top: 18px !important;
  }

  body.redesign-page .school-browser,
  body.redesign-page .school-browser.open {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body.redesign-page .school-browser-filters,
  body.redesign-page .school-browser-category-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    overflow: visible !important;
    padding: 2px 0 8px !important;
    scroll-snap-type: none !important;
  }

  body.redesign-page .school-browser-filter {
    min-width: 0 !important;
    width: 100% !important;
    flex: 1 1 auto !important;
    min-height: auto !important;
  }

  body.redesign-page .redesign-product-window[data-workspace="pathway"].pathway-filtered .pathway-field[aria-labelledby="pathway-area-label"] {
    display: none !important;
  }

  body.redesign-page .redesign-product-window[data-workspace="pathway"].pathway-filtered .pathway-guide {
    margin-bottom: 14px !important;
    padding-bottom: 16px !important;
  }

  body.redesign-page .redesign-product-window[data-workspace="pathway"].pathway-filtered .pathway-guide-grid {
    display: block !important;
  }

  body.redesign-page .redesign-product-window[data-workspace="pathway"].pathway-filtered #content {
    scroll-margin-top: 10px !important;
  }
}
