 
@layer pages {
:root { --photo-rule: 1px solid rgb(246 224 120 / .42);
    --photo-veil: radial-gradient(130% 100% at 50% 45%, transparent 58%, rgb(13 28 24 / .34)), linear-gradient(rgb(191 151 44 / .05), rgb(13 28 24 / .1)); }
[data-theme="light"] { --photo-veil: radial-gradient(130% 100% at 50% 45%, transparent 62%, rgb(20 41 35 / .18)); }
:root { --bleed-grid: minmax(calc(var(--gutter) - var(--grid-gap)), 1fr) repeat(12, minmax(0, calc((var(--content-max) - 11 * var(--grid-gap)) / 12))) minmax(calc(var(--gutter) - var(--grid-gap)), 1fr); }
.title-plate { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1fr); background: var(--surface-sunken); }
  .title-plate__words {
    grid-row: 2; display: grid; justify-items: start; align-content: center; gap: 1.125rem;
    inline-size: min(100% - 2 * var(--gutter), var(--content-max)); margin-inline: auto; padding-block: var(--space-5) var(--space-6);
  }
  .title-plate--compact .title-plate__words { grid-row: 1; padding-block: var(--space-5) var(--space-6); }
  .title-plate__title {
    font-family: var(--heading-family); font-weight: var(--heading-weight); font-stretch: var(--heading-stretch);
    font-size: clamp(2.5rem, 1.7rem + 2.6vw, 3.75rem); line-height: 1.04; letter-spacing: var(--track-display); text-wrap: balance;
  }
  .title-plate--long .title-plate__title { font-size: clamp(2rem, 1.6rem + 1.5vw, 3rem); line-height: 1.08; letter-spacing: var(--track-heading); }
.title-plate--picture.title-plate--long .title-plate__title { text-wrap: wrap; }
  .title-plate--compact .title-plate__title { font-size: clamp(1.875rem, 1.5rem + 1.4vw, 2.75rem); line-height: 1.1; letter-spacing: var(--track-heading); max-inline-size: 22em; }
  .title-plate__title em { font-style: var(--em-style); color: var(--label-hi); }
  .title-plate__lead { max-inline-size: 36em; font-size: 1.0625rem; line-height: 1.65; color: var(--fg-2); text-wrap: pretty; }
  .title-plate__actions { padding-block-start: var(--space-2); }
.breadcrumbs {
    display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); min-block-size: var(--target-min);
    font-family: var(--font-sans); font-size: var(--step--2); font-weight: var(--weight-semibold); letter-spacing: var(--track-label);
    text-transform: uppercase; line-height: var(--lh-label); color: var(--label);
  }
  .breadcrumbs a { display: inline-flex; align-items: center; min-block-size: var(--target-min); color: var(--fg-2); text-decoration: none; }
  .breadcrumbs a:hover { color: var(--fg); text-decoration: underline 1px var(--accent); text-underline-offset: 0.4em; }
  .breadcrumbs__slash { color: var(--fg-3); }
.title-plate__media { grid-row: 1; position: relative; overflow: hidden; block-size: max(10rem, min(56vw, 22rem, 44svh)); background: var(--surface-sunken); }
  .title-plate__picture, .title-plate__picture img { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; }
  .title-plate__picture img { object-fit: cover; object-position: var(--stacked, 50% 50%); }
  .title-plate__media::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background: linear-gradient(to top, rgb(13 28 24 / .62) 0%, rgb(13 28 24 / .34) 12%, rgb(13 28 24 / .12) 26%, rgb(13 28 24 / 0) 42%);
  }
.title-plate--coin .title-plate__picture img { object-position: 62% 56%; }
  .title-plate--coin .title-plate__media::after { background: linear-gradient(to top, rgb(13 28 24 / 1) 0%, rgb(13 28 24 / .62) 14%, rgb(13 28 24 / .18) 30%, rgb(13 28 24 / 0) 46%); }
  @media (max-width: 599.98px) {
    .title-plate--coin .title-plate__picture img { object-position: 50% 54%; }
  }
.title-plate__foot, .title-plate__seam {
    position: absolute; z-index: 1; inset-inline: 0; inset-block-end: 0; block-size: 1px; pointer-events: none;
    background: var(--gold-band); transform-origin: 0 50%;
  }
  [dir="rtl"] :is(.title-plate__foot, .title-plate__seam) { transform-origin: 100% 50%; }
  @keyframes tp-draw-x { from { transform: scaleX(0); } }
  @keyframes tp-draw-y { from { transform: scaleY(0); } }
:root.mt .title-plate__foot { animation: tp-draw-x 900ms var(--ease-cut) 120ms both; }
  :root.mt .title-plate__seam { animation: tp-draw-x 800ms var(--ease-cut) 320ms both; }
  @media (min-width: 1024px) {
    .title-plate { grid-template-columns: var(--bleed-grid); column-gap: var(--grid-gap); }
    .title-plate--picture { min-block-size: clamp(25rem, 58svh, 35rem); }
    .title-plate__words, .title-plate--compact .title-plate__words {
      grid-row: 1; grid-column: 2 / span 5; inline-size: auto; margin-inline: 0; padding-block: var(--space-7); padding-inline-end: var(--space-3);
    }
    .title-plate--compact .title-plate__words { grid-column: 2 / span 10; padding-block: var(--space-6) var(--space-7); padding-inline-end: 0; }
    .title-plate__media { grid-row: 1; grid-column: 7 / -1; block-size: auto; }
    .title-plate__picture img { object-position: var(--wide, 50% 50%); }
    .title-plate--coin .title-plate__picture img { object-position: 100% 50%; }
    .title-plate__media::after {
      background:
        linear-gradient(to right, rgb(13 28 24 / .5) 0%, rgb(13 28 24 / .26) 7%, rgb(13 28 24 / .1) 16%, rgb(13 28 24 / 0) 30%),
        linear-gradient(to top, rgb(13 28 24 / .55) 0%, rgb(13 28 24 / .3) 10%, rgb(13 28 24 / .1) 22%, rgb(13 28 24 / 0) 36%);
    }
    .title-plate--coin .title-plate__media::after {
      background:
        linear-gradient(to right, rgb(13 28 24 / 1) 0%, rgb(13 28 24 / .72) 12%, rgb(13 28 24 / .3) 28%, rgb(13 28 24 / 0) 46%),
        linear-gradient(to top, rgb(13 28 24 / .5) 0%, rgb(13 28 24 / 0) 22%);
    }
    .title-plate__seam { inset-inline: 0 auto; inset-block: 0; inline-size: 1px; block-size: auto; background: linear-gradient(to top, var(--gold-500) 0%, var(--gold-500) 62%, rgb(191 151 44 / 0) 100%); transform-origin: 50% 100%; }
    :root.mt .title-plate__seam { animation-name: tp-draw-y; }
  }
.detail { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-8) var(--grid-gap); }
.detail__body { max-inline-size: 38em; }
  .detail__body > :first-child { margin-block-start: 0; }
  .detail__body > p:first-child { font-size: 1.1875rem; line-height: 1.6; }
  .detail__body > h2 {
    margin-block-start: var(--space-8);
    font-family: var(--heading-family);
    font-size: var(--step-5);
    font-weight: var(--heading-weight);
    letter-spacing: var(--heading-track);
    line-height: 1.1;
  }
  .detail__body > :is(h3, h4, h5, h6) {
    font-family: var(--font-sans);
    font-weight: var(--weight-semibold);
    font-stretch: 100%;
    line-height: var(--lh-title);
  }
  .detail__body > h3 { margin-block-start: var(--space-6); font-size: var(--step-2); letter-spacing: -0.005em; }
  .detail__body > :is(h4, h5, h6) { margin-block-start: var(--space-6); font-size: var(--step-1); letter-spacing: 0; }
.detail__body > :is(h3, h4, h5, h6) + :not(h2, h3, h4, h5, h6) { margin-block-start: var(--space-3); }
  .detail__body > h2 + :not(h2, h3, h4, h5, h6) { margin-block-start: var(--space-4); }
  .detail__body > h2 + :is(h3, h4, h5, h6) { margin-block-start: var(--space-5); }
  .detail__body > h3 + :is(h4, h5, h6) { margin-block-start: var(--space-4); }
.detail__body > .heading-label {
    margin-block-start: var(--space-7);
    padding-block-start: var(--space-5);
    border-block-start: 1px solid var(--rule);
    font-family: var(--font-sans);
    font-size: var(--step--2);
    font-weight: var(--weight-semibold);
    line-height: var(--lh-label);
    letter-spacing: var(--track-label);
    text-transform: uppercase;
    color: var(--label);
  }
  .detail__body > .heading-label + * { margin-block-start: var(--space-4); }
.detail__body > .heading-item {
    margin-block-start: 0;
    padding-block: var(--space-3);
    border-block-end: 1px solid var(--rule-soft);
    font-size: var(--step-1);
    font-weight: var(--weight-regular);
    line-height: var(--lh-reading);
    letter-spacing: 0;
  }
  .detail__body > .heading-label + .heading-item { margin-block-start: var(--space-3); border-block-start: 1px solid var(--rule-soft); }
  .detail__body > .heading-item + :is(h2, h3):not(.heading-item) { margin-block-start: var(--space-8); }
  .detail__body > blockquote { padding-inline-start: var(--space-5); border-inline-start: 2px solid var(--accent); font-weight: var(--weight-medium); }
  .detail__alumni { display: grid; gap: var(--space-6); margin-block-start: var(--space-9); padding-block-start: var(--space-7); border-block-start: 1px solid var(--rule); max-inline-size: none; }
  .detail__alumni .quotes { grid-template-columns: minmax(0, 1fr); }
  .detail__aside { display: grid; gap: var(--space-6); align-content: start; }
  @media (min-width: 1024px) {
    .detail { grid-template-columns: repeat(12, minmax(0, 1fr)); }
    .detail__body { grid-column: 1 / span 7; }
    .detail--legal .detail__body { grid-column: 1 / span 8; }
    .detail__aside { grid-column: 9 / span 4; align-self: start; }
  }
@media (min-width: 1024px) and (min-height: 760px) {
    .detail__aside { position: sticky; inset-block-start: calc(var(--header-h) + var(--space-5)); }
  }
.aside-card {
    display: grid;
    gap: var(--space-4);
    padding: var(--space-6);
    background: var(--surface-raised);
    border: 1px solid var(--rule);
    border-radius: var(--radius-card);
  }
  .aside-card__title {
    font-family: var(--heading-family);
    font-size: var(--step-4);
    font-weight: var(--heading-weight);
    letter-spacing: var(--heading-track);
    line-height: 1.15;
  }
  .aside-card__text { color: var(--fg-2); }
  .aside-card__action { padding-block-start: var(--space-2); }
  .aside-card__action .btn { inline-size: 100%; }
  .aside-card__faq {
    display: inline-flex;
    align-items: center;
    min-block-size: var(--target-min);
    justify-self: start;
    font-size: var(--step-ui);
  }
  .aside-nav { display: grid; gap: var(--space-3); }
  .aside-nav ul { border-block-start: 1px solid var(--rule); }
  .aside-nav a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    min-block-size: 48px;
    border-block-end: 1px solid var(--rule);
    color: var(--fg);
    font-size: var(--step-ui);
    text-decoration: none;
  }
  .aside-nav a .icon { inline-size: 16px; block-size: 16px; color: var(--accent); transition: transform var(--dur-2) var(--ease-reveal); }
  .aside-nav a:hover .icon { transform: translateX(3px); }
  [dir="rtl"] .aside-nav a:hover .icon--dir { transform: scaleX(-1) translateX(3px); }
  .aside-nav a[aria-current="page"] { font-weight: var(--weight-semibold); }
.chapter-row { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4) var(--grid-gap); padding-block: var(--space-5) var(--space-6); border-block-start: 1px solid var(--rule);
    border-image: linear-gradient(90deg, transparent, var(--rule) 10%, var(--rule) 90%, transparent) 1; }
  .chapter-row__title {
    font-family: var(--heading-family); font-weight: var(--heading-weight); font-stretch: var(--heading-stretch);
    font-size: clamp(2rem, 1.5rem + 1.2vw, 2.75rem); line-height: 1.1; letter-spacing: var(--heading-track); text-wrap: balance;
  }
  @media (min-width: 1024px) {
    .chapter-row { grid-template-columns: repeat(12, minmax(0, 1fr)); padding-block: var(--space-7) var(--space-8); }
    .chapter-row__head { grid-column: 1 / span 5; align-self: start; }
    .chapter-row__body { grid-column: 6 / -1; }
  }
@media (min-width: 1024px) and (min-height: 700px) {
    .chapter-row__head { position: sticky; inset-block-start: calc(var(--header-h) + var(--space-5)); }
  }
.cells { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 var(--grid-gap); }
  .cell { position: relative; padding-block: 0.75rem 1rem; font-size: 0.96875rem; line-height: 1.6; color: var(--fg-2); }
  @media (min-width: 1024px) { .cell { padding-block: var(--space-4) 1.375rem; } }
  .cell::before { content: ""; position: absolute; inset-inline: 0; inset-block-start: 0; block-size: 1px; background: var(--rule); transform-origin: 0 50%; }
  [dir="rtl"] .cell::before { transform-origin: 100% 50%; }
  .cell__title { margin-block-end: var(--space-2); font-size: var(--step-0); font-weight: var(--weight-semibold); line-height: 1.35; color: var(--fg); }
  .cell > p { max-inline-size: 36em; }
  .cells > .cell:first-child { padding-block-start: 0; }
  .cells > .cell:first-child::before { content: none; }
  @media (min-width: 600px) {
    .cells--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cells--2 > .cell:nth-child(-n+2) { padding-block-start: 0; }
    .cells--2 > .cell:nth-child(-n+2)::before { content: none; }
    .cells--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cells--3 > .cell:nth-child(-n+3) { padding-block-start: 0; }
    .cells--3 > .cell:nth-child(-n+3)::before { content: none; }
  }
  @media screen {
    :root.mt[data-motion-ready] [data-m]:not([data-in]) .cell::before { transform: scaleX(0); }
    :root.mt [data-m][data-in=""] .cell::before { transition: transform 600ms var(--ease-cut) calc(var(--i, 0) * 60ms); }
  }
.photo-band { position: relative; overflow: hidden; block-size: clamp(9rem, 22vw, 21rem); background: var(--surface-sunken); }
  .photo-band img { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; object-fit: cover; }
  .photo-band::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to bottom, rgb(13 28 24 / .26) 0%, rgb(13 28 24 / .08) 12%, rgb(13 28 24 / 0) 26%, rgb(13 28 24 / 0) 66%, rgb(13 28 24 / .14) 84%, rgb(13 28 24 / .36) 100%); }
.close-band { position: relative; background: var(--surface-sunken); border-block-start: 1px solid var(--rule); }
  .close-band__main { display: grid; grid-template-columns: minmax(0, 1fr); }
  .close-band__words {
    grid-row: 2; display: grid; justify-items: start; align-content: center; gap: 1.125rem;
    inline-size: min(100% - 2 * var(--gutter), var(--content-max)); margin-inline: auto; padding-block: var(--space-5) var(--space-6);
  }
  .close-band__title {
    font-family: var(--heading-family); font-weight: var(--heading-weight); font-stretch: var(--heading-stretch);
    font-size: clamp(1.875rem, 1.6rem + 1.2vw, 2.75rem); line-height: 1.1; letter-spacing: var(--heading-track); text-wrap: balance; max-inline-size: 13em;
  }
  .close-band__text { max-inline-size: 30em; font-size: var(--step-reading); line-height: var(--lh-reading); color: var(--fg-2); text-wrap: pretty; }
  .close-band__action { padding-block-start: var(--space-3); }
  .close-band__action .action__buttons { gap: var(--space-4) var(--space-5); }
  .title-plate__link, .close-band__faq { display: inline-flex; align-items: center; min-block-size: var(--target-touch); font-size: var(--step-ui); font-weight: var(--weight-medium); }
  .title-plate .action__buttons { gap: var(--space-3) var(--space-5); }
  .close-band__coin { grid-row: 1; position: relative; overflow: hidden; block-size: min(50vw, 18rem); background: var(--surface-sunken); }
  .close-band__coin picture, .close-band__coin img { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; }
  .close-band__coin img { object-fit: cover; object-position: 62% 56%; }
  .close-band__coin::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to top, rgb(13 28 24 / 1) 0%, rgb(13 28 24 / .62) 14%, rgb(13 28 24 / .18) 30%, rgb(13 28 24 / 0) 46%); }
  @media (max-width: 599.98px) { .close-band__coin img { object-position: 50% 54%; } }
  .close-band__foot { padding-block-end: var(--space-7); }
  .program-row { display: grid; gap: var(--space-4); }
  .program-row ul { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 var(--grid-gap); }
  .program-row li { border-block-start: 1px solid var(--rule); }
  .program-row a { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); min-block-size: 3rem; padding-block: var(--space-2); color: var(--fg); font-size: var(--step-ui); line-height: 1.35; text-decoration: none; }
  .program-row a .icon { inline-size: 16px; block-size: 16px; color: var(--accent); transition: transform var(--dur-2) var(--ease-reveal); }
  .program-row a:hover .icon { transform: translateX(3px); }
  [dir="rtl"] .program-row a:hover .icon--dir { transform: scaleX(-1) translateX(3px); }
  .program-row a[aria-current="page"] { color: var(--label-hi); font-weight: var(--weight-semibold); }
  @media (min-width: 600px) { .program-row ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (min-width: 1024px) {
    .close-band__main { grid-template-columns: var(--bleed-grid); column-gap: var(--grid-gap); min-block-size: clamp(22rem, 46svh, 28rem); }
    .close-band__words { grid-row: 1; grid-column: 2 / span 5; inline-size: auto; margin-inline: 0; padding-block: var(--space-7); }
    .close-band__coin { grid-row: 1; grid-column: 7 / -1; block-size: auto; }
    .close-band__coin img { object-position: 100% 50%; }
    .close-band__coin::after {
      background:
        linear-gradient(to right, rgb(13 28 24 / 1) 0%, rgb(13 28 24 / .72) 12%, rgb(13 28 24 / .3) 28%, rgb(13 28 24 / 0) 46%),
        linear-gradient(to top, rgb(13 28 24 / 1) 0%, rgb(13 28 24 / 0) 26%);
    }
    .program-row ul { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  }
  @media screen {
    :root.mt[data-motion-ready] .close-band[data-m]:not([data-in]) .close-band__coin picture { opacity: 0; translate: 0 12px; }
    :root.mt .close-band[data-m][data-in=""] .close-band__coin picture { transition: opacity 900ms var(--ease-reveal) 120ms, translate 1100ms var(--ease-reveal) 120ms; }
  }
.quote { grid-template-rows: auto 1fr auto; align-content: stretch; }
.detail__body > h2.opener { position: relative; padding-block-start: var(--space-5); border-block-start: 1px solid var(--rule); }
}
@layer motion {
.chapter-row > .m-rule, h2.opener > .m-rule, .faq-page__answers > .m-rule { display: block; }
  :root.mo .chapter-row, :root.mo h2.opener, :root.mo .faq-page__answers > .accordion { border-color: transparent; }
}
