/* inner.css : rules only inner pages use (DESIGN.md sec. 5); full notes: S31's _unsorted/s31-state/comments-moved-S31.txt. */

/* 2. */
.container--narrow { max-width: calc(var(--container-narrow) + 2 * var(--gutter)); }
.stack--lg { --stack: var(--sp-6); }
.steps { max-width: var(--measure); }
.small { font-size: var(--fs-sm); }

/* 3. */
.breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  gap: 0 var(--sp-2);
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: var(--fs-sm);
}
.breadcrumb li { display: flex; align-items: center; gap: var(--sp-2); }
.breadcrumb li + li::before {
  content: "";
  width: 0.4rem; height: 0.4rem;
  border-top: 2px solid var(--muted);
  border-right: 2px solid var(--muted);
  transform: rotate(45deg);
}
.breadcrumb a { display: inline-flex; align-items: center; min-height: var(--target); min-width: var(--target); }
.breadcrumb [aria-current] { color: var(--muted); }
.in-about .site-nav a[href="/about/"], .in-news .site-nav a[href="/news/"], .in-get-involved .site-nav a[href="/get-involved/"] { font-weight: 600; text-decoration: underline; text-decoration-thickness: 0.1875rem; text-decoration-color: var(--link); text-underline-offset: 0.45em; }

/* 4. */
.download {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-3);
  min-height: 3.5rem;
  padding: var(--sp-3) var(--sp-5);
  border: 2px solid var(--link);
  border-radius: var(--radius);
  color: var(--link);
  font-weight: 600;
  text-decoration: none;
}
.download svg { width: 1.5rem; height: 1.5rem; flex: none; }
.download span span { white-space: nowrap; }

/* 5. */
.page-header { padding-block: var(--sp-5) var(--sp-7); background: var(--tint); }
.page-header__body { display: grid; gap: var(--sp-4); max-width: var(--measure); padding-top: var(--sp-3); }
.page-header .lead { color: var(--text); }
.page-header__inner { display: grid; gap: var(--sp-6); }
.page-header__art { --rw: min(8.5rem + 12vw, 15rem, 70%); position: relative; width: var(--rw); margin-left: calc(var(--rw) * .16); aspect-ratio: 109.87 / 129.65; }
.page-header__art .shape-img { width: 100%; height: 100%; background: var(--deco-hero-ground); }
@media (min-width: 48rem) { .page-header__art { justify-self: end; } }
@media (min-width: 64rem) {
  .page-header__inner { grid-template-columns: minmax(0, 1fr) auto; column-gap: var(--sp-8); }
  .page-header__art { align-self: end; width: auto; height: 19rem; margin: 0; }
  .page-header--photo .page-header__art { align-self: start; margin-top: var(--sp-5); }
}

/* 6. */

/* 7. */
.card__meta { color: var(--muted); font-size: var(--fs-sm); }
.card__title { font-size: var(--fs-h3); line-height: var(--lh-snug); }
.card__title a { display: block; min-height: var(--target); padding-block: var(--sp-1); color: var(--heading); text-decoration-thickness: 0.0625rem; }
@media (min-width: 40rem) {
  .card-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .card-grid--feature > :first-child { grid-column: 1 / -1; }
}
@media (min-width: 40rem) { .card-grid--six { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 64rem) { .card-grid--six { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 64rem) { .card-grid--3-2 { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); } .card-grid--feature { grid-template-columns: repeat(6, minmax(0, 1fr)); } .card-grid--feature > * { grid-column: span 2; } .card-grid--feature > :nth-child(-n+2) { grid-column: span 3; } }
.tag { display: inline-block; padding: 0.125rem 0.625rem; border-radius: var(--radius-sm); background: var(--tint); color: var(--text); font-size: var(--fs-sm); border: 1px solid var(--line); }

/* 9. */
.notice {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--sp-1) var(--sp-3);
  padding: var(--sp-4) var(--sp-5);
  border: 1px solid var(--notice-bar, var(--line));
  border-left-width: 0.375rem;
  border-radius: var(--radius);
  background: var(--notice-bg, var(--surface));
  color: var(--text);
}
.notice__icon { width: 1.5rem; height: 1.5rem; color: var(--notice-ink, var(--heading)); }
.notice__title { margin: 0; color: var(--notice-ink, var(--heading)); font-weight: 600; }
.notice__body { grid-column: 2; }
.notice__body > * + * { margin-top: var(--sp-2); }
.notice--warning { --notice-bg: var(--notice-warning-bg); --notice-bar: var(--notice-warning-bar); --notice-ink: var(--notice-warning-ink); }

/* 10. */
.prose { max-width: var(--measure); }
.section-head + .prose { margin-top: var(--sp-3); }
.prose > * + * { margin-top: var(--sp-4); }
.prose > h2 { margin-top: var(--sp-7); }
.prose > h3 { margin-top: var(--sp-6); }
.stack--lg > .prose--split:first-child > h2:first-child { margin-top: 0; }
.prose > h2 + *, .prose > h3 + * { margin-top: var(--sp-3); }
.prose > .quote, .prose > figure { margin-top: var(--sp-6); }
.prose ul, .prose ol { padding-left: 1.4em; }
.prose li + li { margin-top: var(--sp-2); }
.prose li::marker { color: var(--muted); }
@media (min-width: 64rem) {
  .prose--split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--sp-7); align-items: start; max-width: none; }
  .prose--split > * { grid-column: 2; }
  .prose--split > h2 { grid-column: 1; grid-row: span 2; }
  .prose--split > h2 + * { margin-top: var(--sp-7); }
  .prose--split > * + h2, .prose--split > * + h2 + * { margin-top: var(--sp-9); }
  .stack--lg > .prose--split:first-child > h2:first-child + * { margin-top: 0; }
  .prose--split > .table-wrap { grid-column: 1 / -1; }
}
.derive svg { width: 100%; height: auto; overflow: visible; }
.derive path, .derive use { fill: var(--deco-mark-a); }
.derive .s { fill-opacity: .5; stroke: var(--deco-mark-a); stroke-width: .8; }
.quote { padding-left: var(--sp-5); border-left: 0.375rem solid var(--accent); }
.quote blockquote { font-size: var(--fs-lead); line-height: 1.45; font-weight: 500; color: var(--heading); }
.quote figcaption { margin-top: var(--sp-2); color: var(--muted); font-size: var(--fs-sm); }
.figure figcaption { margin-top: var(--sp-2); color: var(--muted); font-size: var(--fs-sm); }
.dl { display: grid; gap: var(--sp-1) var(--sp-5); }
.dl dt { color: var(--heading); font-weight: 600; }
.dl dd { margin: 0 0 var(--sp-3); }
@media (min-width: 40rem) {
  .dl { grid-template-columns: minmax(0, 14rem) minmax(0, 1fr); }
  .dl dd { margin: 0; }
}
.table-wrap { overflow-x: auto; container-type: inline-size; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(to left, var(--surface) 1rem, transparent) 100% 0 / 2rem 100% no-repeat local, linear-gradient(to left, var(--line), transparent) 100% 0 / 1rem 100% no-repeat var(--surface); }
.data-table { width: 100%; min-width: 30rem; border-collapse: collapse; }
.data-table--wide { min-width: 46rem; }
.data-table caption { box-sizing: border-box; max-width: 100cqw; padding: var(--sp-4); text-align: left; color: var(--heading); font-weight: 600; }
.data-table th, .data-table td { padding: var(--sp-3) var(--sp-4); border-top: 1px solid var(--line); text-align: left; vertical-align: top; }
.data-table thead th { border-bottom: 2px solid var(--ui-border); background: var(--tint); color: var(--heading); font-weight: 600; }
.data-table tbody th { background: var(--surface); color: var(--heading); font-weight: 600; }
.data-table th:first-child { position: sticky; left: 0; }
.page-nav { font-size: var(--fs-sm); }
.page-nav__title, .page-nav ol { display: inline; margin: 0 var(--sp-4) 0 0; padding: 0; }
.page-nav__title { color: var(--heading); font-weight: 600; }
.page-nav li { display: inline-block; margin-right: var(--sp-4); }
.page-nav a { display: inline-flex; align-items: center; justify-content: center; min-height: var(--target); min-width: var(--target); }
.steps { display: grid; gap: var(--sp-4); padding: 0; list-style: none; counter-reset: step; }
.steps > li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--sp-4); align-items: start; counter-increment: step; }
.steps > li::before {
  content: counter(step);
  display: grid;
  place-items: center;
  width: 2.5rem; height: 2.5rem;
  border-radius: 50%;
  background: var(--accent);
  color: var(--on-accent);
  font-weight: 600;
}
.steps > li > * { margin: 0; padding-top: 0.375rem; }
.steps h3, .steps h4 { font-size: var(--fs-h4); line-height: var(--lh-snug); }
.steps p { margin-top: var(--sp-1); overflow-wrap: anywhere; }
@media (min-width: 48rem) { .split.split--mark { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: center; } }
.photo--cover { aspect-ratio: 480 / 679; width: min(100%, 24rem); justify-self: end; border: 1px solid var(--line); }
.people { display: grid; gap: var(--sp-6); }
.people__group > * + * { margin-top: var(--sp-2); }
.people__group > p { max-width: var(--measure); }
.people__group ul { columns: 2 15rem; column-gap: var(--sp-5); }
.people__group li { break-inside: avoid; }
.tone-pine { --fit-fill: var(--rh-pine); --fit-ink: var(--rh-white); --fit-edge: var(--deco-mark-a); --fit-accent: var(--heading); }
.tone-sky { --fit-fill: var(--rh-sky); --fit-ink: var(--rh-ink); }
.tone-mint { --fit-fill: var(--rh-mint); --fit-ink: var(--rh-ink); }
.tone-amber { --fit-fill: var(--rh-amber); --fit-ink: var(--rh-ink); }
.orgmap__boxes { display: grid; gap: var(--sp-3); }
.orgmap__boxes > li { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: var(--sp-3) var(--sp-4); border: 2px solid var(--fit-edge, var(--fit-fill)); border-radius: var(--radius); background: var(--fit-fill); color: var(--fit-ink); text-align: center; text-wrap: balance; }
.orgmap a { display: inline-flex; align-items: center; min-height: var(--target); color: inherit; font-weight: 600; }
.orgmap p { font-size: var(--fs-sm); }
@media (min-width: 30rem) { .orgmap__boxes { grid-template-columns: 1fr 1fr; } .orgmap__board, .orgmap__champions, .orgmap__partners { grid-column: 1 / -1; } }
@media (min-width: 48rem) { .orgmap__boxes { grid-template-columns: 1fr 1fr minmax(0, 0.8fr); grid-template-areas: "b b p" "c s p" "n n p"; } .orgmap__board { grid-area: b; } .orgmap__core { grid-area: c; } .orgmap__student { grid-area: s; } .orgmap__champions { grid-area: n; } .orgmap__partners { grid-area: p; } }
.accent { padding-top: var(--sp-5); border-top: 0.375rem solid var(--fit-accent, var(--fit-fill)); }
.key::before { content: ""; display: inline-block; width: 1rem; height: 1rem; margin-right: var(--sp-2); background: var(--fit-accent, var(--fit-fill)); vertical-align: -0.0625rem; }
.people-grid { display: grid; gap: var(--sp-6) var(--sp-7); margin-top: var(--sp-5); }
@media (min-width: 48rem) { .people-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .people-grid .person { grid-template-columns: minmax(0, 1fr); align-content: start; } }
.person { display: grid; grid-template-columns: 6.5rem minmax(0, 1fr); gap: var(--sp-4); align-items: start; }
.person__photo, .person__tile { width: 6.5rem; aspect-ratio: 1; border-radius: var(--radius-lg); }
.person__photo, .card--photo > .photo { border: 1px solid var(--line); }
.person__tile { display: grid; place-items: center; border: 2px solid var(--fit-edge, var(--fit-fill)); background: var(--tint); color: var(--heading); font-size: 1.75rem; font-weight: 600; }
.person__text > * + * { margin-top: var(--sp-2); }
.person h4 { font-size: var(--fs-h4); line-height: var(--lh-snug); }
.person__role { color: var(--muted); font-size: var(--fs-sm); }
.person[data-portrait="photo"] > .person__tile, .person[data-portrait="initials"] > .person__photo { display: none; }
.person__role { font-weight: 600; }
@media (min-width: 48rem) { .people--two { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-7); } }
.people__group .team-grid { columns: auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4); margin-top: var(--sp-5); }
@media (min-width: 64rem) { .people__group .team-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.member { display: flex; flex-direction: column; padding: var(--sp-4); border: 1px solid var(--line); border-top: 0.375rem solid var(--fit-fill); border-radius: var(--radius-lg); background: var(--tint); }
.band--tint .member { background: var(--surface); }
.member__in { display: grid; place-items: center; width: var(--target); height: var(--target); margin: auto calc(0px - var(--sp-3)) calc(0px - var(--sp-3)) auto; color: var(--text); }
.member__in svg { width: 1.25rem; height: 1.25rem; fill: currentColor; fill-rule: evenodd; }
.member h4 { font-size: var(--fs-h4); line-height: var(--lh-snug); overflow-wrap: anywhere; }
.member__role { margin-top: var(--sp-2); color: var(--muted); font-size: var(--fs-sm); font-weight: 600; text-wrap: pretty; }
.prose .others { padding-left: 0; }
.others > li + li { margin-top: var(--sp-5); }
.others h4 { font-size: var(--fs-body); }
.others h4 a { display: inline-flex; align-items: flex-start; min-height: var(--target); }
.pair { display: grid; gap: var(--sp-6) var(--sp-7); }
.pair > * { min-width: 0; }
.pair > .prose > :first-child { margin-top: 0; }
@media (min-width: 72rem) { .prose--cols { max-width: none; columns: 2; column-gap: var(--sp-7); } .prose--cols > * { break-inside: avoid; } .prose--cols > :first-child { margin-top: 0; } }
@media (min-width: 48rem) { .pair { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 64rem) { .cols--across { grid-template-columns: minmax(0, 1fr); } }
.others--grid { display: grid; gap: var(--sp-5) var(--sp-7); }
.others--grid > li + li { margin-top: 0; }
@media (min-width: 48rem) { .split--aside { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); } }
.facts { align-self: start; padding: var(--sp-5); border-radius: var(--radius-lg); background: var(--tint); }
@media (min-width: 40rem) { .facts .dl { grid-template-columns: minmax(0, 6rem) minmax(0, 1fr); } }
@media (min-width: 48rem) { .others--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 48rem) and (max-width: 63.99rem) { .others--grid > li:last-child:nth-child(odd) { grid-column: 1 / -1; } }
@media (min-width: 64rem) { .others--grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .partners__top { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: start; } }
.partners, .partners__top { display: grid; gap: var(--sp-7); }
.invite { padding: var(--sp-5); border-top: 0.375rem solid var(--fit-fill); border-radius: var(--radius-lg); background: var(--tint); }
.invite > * + * { margin-top: var(--sp-3); }
.partners__top .people__group { margin-top: var(--sp-2); }
.partners__top .people__group > * + * { margin-top: var(--sp-1); }
.others li > * + * { margin-top: var(--sp-1); }
.cols > .prose > :first-child { margin-top: 0; }
.where { display: grid; gap: var(--sp-6) var(--sp-8); }
@media (min-width: 64rem) { .where { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); grid-template-areas: "head map" "study map"; align-items: start; } .where__head { grid-area: head; } .where__map { grid-area: map; } .where__study { grid-area: study; } }
.where__map, .where__study { display: grid; gap: var(--sp-5); align-content: start; }
.container > .pullquote { max-width: 50rem; }
.container > * + .pullquote { margin-top: var(--sp-7); }
.pullquote .statement { margin: 0 0 var(--sp-3); }
.pullquote figcaption { color: var(--muted); font-weight: 600; }
@media (min-width: 64rem) { .pullquote { margin-inline: auto; text-align: center; } }
.ukmap { width: min(100%, 27.5rem); margin-inline: auto; }
.ukmap svg { display: block; width: 100%; height: auto; }
.ukmap__land { fill: var(--rh-pine); stroke: var(--deco-mark-a); stroke-width: 0.75; stroke-linejoin: round; }
.ukmap__dots circle { fill: var(--rh-mint); stroke: var(--deco-mark-a); stroke-width: 1.5; }
.ukmap__border { fill: none; stroke: var(--d-mint-tint); stroke-width: 0.6; stroke-linecap: round; }
.places { columns: 2 12rem; column-gap: var(--sp-6); font-size: var(--fs-sm); }
.places li { break-inside: avoid; }
.chart--study .units i { border-color: var(--deco-mark-a); background: color-mix(in srgb, var(--rh-mint) var(--k, 100%), var(--ground)); }
.chart--study > :nth-child(1) { --k: 100%; }
.chart--study > :nth-child(2) { --k: 92%; }
.chart--study > :nth-child(3) { --k: 84%; }
.chart--study > :nth-child(4) { --k: 76%; }
.chart--study > :nth-child(5) { --k: 68%; }
.chart--study > :nth-child(6) { --k: 60%; }
.chart--study > :nth-child(7) { --k: 52%; }
.chart--study > :nth-child(8) { --k: 44%; }
.chart--study > :nth-child(9) { --k: 36%; }
.card--photo > .map-tile, .card--photo > .doc-tile { display: block; width: calc(100% + 2 * var(--sp-5)); max-width: none; margin: 0 calc(-1 * var(--sp-5)) var(--sp-2); aspect-ratio: 3 / 2; }
.map-tile { position: relative; background: var(--tint); }
.map-tile svg { position: absolute; inset: var(--sp-5) 0; width: 100%; height: calc(100% - 2 * var(--sp-5)); }
.map-tile .ukmap__border { stroke-width: 1.2; }
.doc-tile__ground { fill: var(--tint); }
.doc-tile__page { fill: var(--surface); stroke: var(--line); }
.doc-tile__title { fill: var(--heading); font-weight: 600; }
.doc-tile__date { fill: var(--muted); }
.doc-tile__mark, .doc-tile__step { fill: var(--logo-mark); }
.doc-tile__step { fill-opacity: 0.5; }
.reading { display: grid; gap: var(--sp-3); max-width: var(--measure); }
@media (min-width: 48rem) { .band--form { padding-bottom: var(--sp-6); } }
.photo--fill { display: none; }
@media (min-width: 64rem) {
  .band--form .cols > :first-child { align-self: stretch; display: flex; flex-direction: column; }
  .band--form .photo--fill { display: block; flex: 1 1 auto; min-height: 16rem; }
}
@media (min-width: 48rem) {
}

/* 11. */
.form { display: grid; gap: var(--sp-5); max-width: 40rem; position: relative; }
.field { display: grid; align-content: start; gap: var(--sp-2); min-width: 0; }
.field__label, .fieldset legend { padding: 0; color: var(--heading); font-weight: 600; }
.field__req { color: var(--muted); font-weight: 400; }
.field__hint { color: var(--muted); font-size: var(--fs-sm); }
.input, .select, .textarea {
  width: 100%;
  min-height: 3rem;
  padding: 0.625rem 0.875rem;
  border: 2px solid var(--ui-border);
  border-radius: var(--radius-sm);
  background: var(--surface);
  color: var(--text);
  font: inherit;
  line-height: 1.4;
}
.textarea { min-height: 9rem; resize: vertical; }
.input[aria-invalid="true"], .select[aria-invalid="true"], .textarea[aria-invalid="true"] { border-color: var(--error); }
.input:disabled, .select:disabled, .textarea:disabled { border-color: var(--line); background: var(--tint); color: var(--muted); cursor: not-allowed; }
.field__error, .field__ok { display: flex; gap: var(--sp-2); align-items: flex-start; margin: 0; font-size: var(--fs-sm); font-weight: 600; }
.field__error { color: var(--error); }
.field__ok { color: var(--success); }
.field__error svg, .field__ok svg { width: 1.125rem; height: 1.125rem; margin-top: 0.15rem; flex: none; }
.fieldset { min-width: 0; margin-inline: 0; padding: 0; border: 0; }
.fieldset > * + * { margin-top: var(--sp-2); }
.check { display: flex; align-items: flex-start; gap: var(--sp-3); min-height: var(--target); padding: var(--sp-2) 0; cursor: pointer; }
.check input { flex: none; width: 1.5rem; height: 1.5rem; margin: 0.125rem 0 0; accent-color: var(--accent); }
.error-summary { padding: var(--sp-4) var(--sp-5); border: 3px solid var(--error); border-radius: var(--radius); background: var(--surface); }
.error-summary h3 { font-size: var(--fs-h4); color: var(--error); }
.error-summary ul { margin: var(--sp-2) 0 0; padding: 0; list-style: none; }
.error-summary a { display: inline-flex; align-items: center; min-height: var(--target); font-weight: 600; }
.error-summary li + li { margin-top: var(--sp-1); }
.honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.form-status { display: grid; }
.form-status > * { grid-area: 1 / 1; align-self: start; margin: 0; visibility: hidden; }
.form-status[data-state="idle"] > [data-for~="idle"],
.form-status[data-state="sending"] > [data-for~="sending"],
.form-status[data-state="success"] > [data-for~="success"],
.form-status[data-state="failure"] > [data-for~="failure"],
.form-status[data-state="unconnected"] > [data-for~="unconnected"] { visibility: visible; }
.form-status__msg { padding: var(--sp-3) var(--sp-4); border-radius: var(--radius); border: 1px solid var(--line); background: var(--surface); overflow-wrap: anywhere; }
.form-status__msg > * + * { margin-top: var(--sp-2); }
.form-status__msg:focus { outline: var(--ring-w) solid var(--focus); outline-offset: var(--ring-gap); box-shadow: 0 0 0 var(--ring-gap) var(--focus-halo); }
.form-status__msg--ok { border-left: 0.375rem solid var(--success); }
.form-status__msg--bad { border-left: 0.375rem solid var(--error); }
.form-status__title { font-weight: 600; color: var(--heading); }
.form-status__msg--bad .form-status__title { color: var(--error); }
.form-status__msg--ok .form-status__title { color: var(--success); }
.form-note { color: var(--muted); font-size: var(--fs-sm); }

/* 12. */
.deco { --m: max(var(--gutter), (100% - var(--container)) / 2 + var(--gutter)); }
.deco { isolation: isolate; overflow: hidden; overflow: clip; }
.deco { position: relative; }
.page-header.deco { --deco-top: calc(var(--sp-5) + var(--target) + var(--sp-3)); }
.deco--mark { --deco-strong: var(--deco-mark-a); --deco-soft: var(--deco-mark-b); }
@media (min-width: 84rem) {
  @supports (mask-image: none) {
    .deco--mark::before, .deco--mark::after { content: ""; position: absolute; z-index: -1; pointer-events: none; mask-repeat: no-repeat; mask-size: contain; mask-position: center; }
    .deco--mark::before { top: var(--deco-top); right: calc(var(--m) - 9.5rem); width: 7rem; height: 7rem; background: var(--deco-strong); mask-image: url(../img/shapes/01-block-r.svg); mask-position: left top; }
    .deco--mark::after { top: calc(var(--deco-top) + 5rem); right: calc(var(--m) - 4.5rem); width: 4rem; height: 4rem; background: var(--deco-soft); mask-image: url(../img/shapes/13-stair-column.svg); }
  }
}
@supports (mask-image: none) {
  @media screen and (forced-colors: none) and (max-width: 83.99rem) {
    .deco--mark { --s: clamp(4rem, 42.86vw - 16.57rem, 7rem); }
    .deco--mark .page-header__body, .deco--mark .breadcrumb { max-width: min(var(--measure), 100% - var(--s) * 1.133 - 1.5rem); }
    .deco--mark::before, .deco--mark::after { content: ""; position: absolute; z-index: -1; mask: url(../img/shapes/01-block-r.svg) right top / contain no-repeat; }
    .deco--mark::before { top: var(--deco-top); right: var(--m); width: var(--s); height: var(--s); background: var(--deco-strong); }
    .deco--mark::after { mask-image: url(../img/shapes/13-stair-column.svg); mask-position: center; top: calc(var(--deco-top) + var(--s) * 5 / 7); right: calc(var(--m) + var(--s) * .5617); width: calc(var(--s) * 4 / 7); height: calc(var(--s) * 4 / 7); background: var(--deco-soft); }
  }
  @media screen and (forced-colors: none) and (max-width: 47.99rem) {
    .page-header.deco--mark { --s: 4rem; --deco-top: var(--sp-5); }
    .deco--mark .page-header__body { max-width: var(--measure); padding-top: calc(var(--s) * 9 / 7 + var(--sp-4) - var(--target)); }
  }
}

/* 13. */
@media (prefers-reduced-motion: no-preference) {
  .download { transition: background-color var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease); }
}

/* 14. */
@media (hover: hover) {
  .card__title a:hover { color: var(--link-hover); }
  .download:hover { background: var(--tint); color: var(--link-hover); }
}

/* 16. */
@media (forced-colors: active) {
  .form-status__msg:focus { outline: 3px solid Highlight; outline-offset: 2px; box-shadow: none; }
  .notice, .table-wrap, .download, .form-status__msg, .error-summary { border-color: CanvasText; }
  .deco::before, .deco::after { display: none; }
  .steps > li::before { border: 2px solid CanvasText; }
  .input, .select, .textarea { border-color: CanvasText; }
  .input[aria-invalid="true"] { border-style: dashed; }
  .check input { accent-color: auto; }
  .notice { border-left-width: 0.375rem; }
  .derive path, .derive use { fill: CanvasText; stroke: CanvasText; }
  .ukmap__land { fill: Canvas; stroke: CanvasText; }
  .ukmap__dots circle { fill: CanvasText; stroke: Canvas; }
  .ukmap__border { stroke: CanvasText; }
  .chart--study .units i { forced-color-adjust: none; border-color: CanvasText; background: Canvas; }
  .person__tile, .orgmap__boxes > li, .member, .key::before { border: 1px solid CanvasText; }
  .key::before { forced-color-adjust: none; background: CanvasText; }
  .notice__icon { color: CanvasText; }
}

/* 17. */
@media print {
  .deco::before, .deco::after, .form, .page-nav { display: none !important; }
  .page-header, .band--form { padding-block: var(--sp-5); background: var(--rh-white); color: var(--rh-black); }
  .container--narrow { max-width: none; }
  .page-header__art { display: none; }
  .notice, .figure, .quote, .table-wrap, .steps > li { break-inside: avoid; }
  .table-wrap { overflow: visible; }
  .data-table { min-width: 0; }
  .orgmap__boxes > li { border: 1px solid var(--rh-black); background: var(--rh-white); color: var(--rh-black); }
  .ukmap__land { fill: var(--rh-white); stroke: var(--rh-black); }
  .ukmap__dots circle { fill: var(--rh-black); }
  .ukmap__border { stroke: var(--rh-black); }
  .where { break-inside: avoid; }
  .member__in { display: none; }
}
