/* draft16 (13 Oct 2026, Jared): one type scale, one subtitle per frame, hero frames fill the viewport,
   text under a button sits on the button's text axis. Loaded last on every page. */

@media (min-width:900px) {
  /* desktop scale: 80 / 40 / 24 / 16 / 14 */
  main .page-heading h1, .homepage .hero h1 { font-size:80px !important; }
  main h2:not(.film-sr), main .contact-inner h2, .finder-section h2, main #open.open-verifier h2 { font-size:40px !important; }
  main h3, main .row-list h3, .p-people .team-person-name { font-size:24px !important; }
  main .page-heading .lead { font-size:24px !important; }
  .homepage .hero-invite, #open .ov-line, main .section-lead, .check-cap p, .fig-labels span, .proof-heading h2,
  .policy-comparison strong, .home-bridge p, .p-days .gap-option p, .p-need h4, .p-q .faq-q .page-row-title,
  .sae .tbl-cell, .sae .tbl-m p, .sae .m-bandhead p, .ws .tbl-lead, .ws-row span, .contact-copy > p,
  .contact-inner .close-line, .reg-dates > p, main strong, .dv-result, .dv-req, .dv-licence, .finder-intro,
  main .page-heading > p:not(.lead) { font-size:16px !important; }
  main .team-section .team-person-name { font-size:16px !important; font-weight:600; }

  /* one subtitle per frame */
  main .page-heading .page-note, #open .ov-status, main .p-shape > h2 + p, .dv-build-figure figcaption,
  .finder-helper { display:none !important; }

  /* text under a button sits on the button's text axis (the button pads 22px) */
  .contact-copy .text-link, .contact-copy .contact-email { margin-left:22px; }
  .contact-inner .close-line, .contact-copy > p { color:var(--ink) !important; }
}

@media (max-width:899px) {
  /* phone scale: 40 / 26 / 18 / 16 / 14, display 52 */
  main .page-heading .lead, main .m-screen .m-sub, main p.m-sub, main p.m-sublead, main .finder-intro, main .ref-intro,
  #finder .finder-intro, main .contact-inner .close-line, #open > div > p:first-child, #open.open-verifier .ov-line,
  main .p-fit .row-list p, main .p-days .gap-option p, main .dv-m-table td, main .dv-m-table .dv-m-mean, main .dv-m-table td b,
  main .m-articles li b, main .m-articles li span, main .m-verdicts span, main .reg-dates .reg-date-grid span,
  main .p-q .faq-q > .page-row-copy, main .p-exchange li span, main .m-person-id b, main .dv-result,
  main .m-screen .button, main .developer-actions .button, #finder .button, main .page-heading .button { font-size:16px !important; }
  main .p-days .gap-label, main .p-q .faq-q .page-row-title, main .dv-m-steps summary, main .dv-flow-node > b,
  main .dv-flow-rule > b, main .dv-flow-out, main .m-articles h3, main .p-exchange li, main .p-exchange h3,
  main .p-fit .row-list h3, main .dv-m-table tbody th { font-size:18px !important; }
  main .m-verdicts b, main .reg-dates time, main .m-pair .m-verdicts b, main .m-pair .reg-dates time, #finder h2 { font-size:26px !important; }
  main .developer-heading .page-note, main .dv-m-table thead { display:none !important; }
}

/* pass 2: the last off-scale sizes, and the heading actions row */
@media (min-width:900px) {
  .pf-claim-title, .pf-a2, .dv-build-figure b, .dv-build-figure span, .dv-build-figure figcaption { font-size:16px !important; }
  main .page-heading .developer-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 40px; margin-top:32px; }
}
@media (max-width:899px) {
  main .hero h1, main .hero h1 span, main .page-heading h1 { font-size:clamp(36px,9.6vw,40px) !important; }
  #check .section-lead.m-sub, main .m-att-why, #open .open-links a, #open .open-links a span, main .dv-copy, main .m-fine-line { font-size:16px !important; }
  main .m-claim-title, main #check details summary, main .dv-refs-list a, main .dv-refs-list a span, main .m-person summary::after, main .page-disclosure-mark { font-size:18px !important; }
  main .m-att-total { font-size:26px !important; }
}
@media (min-width:900px) { main code { font-size:16px !important; } }
@media (max-width:899px) {
  body.homepage main .hero h1, body.homepage main .hero h1 > span { font-size:clamp(36px,9.6vw,40px) !important; }
  #check p.m-claim-title, main .dv-m-steps b, main .dv-m-steps th, main summary::after, main .page-disclosure-mark, main .m-instruments summary span[aria-hidden] { font-size:18px !important; }
  main code, main pre code { font-size:16px !important; }
}
@media (max-width:899px) { main summary span[aria-hidden], main summary > span:last-child, main .reg-field summary span { font-size:18px !important; } }

/* pass 3: the phone standards on desktop. Row sublines, heading notes and second subtitles go; the seal sits whole inside the content edge. */
@media (min-width:900px) {
  .m-drop { display:none !important; }
  .p-fit .row-list > li, .p-shape .row-list > li { grid-template-columns:minmax(0,1fr); }
  main .page-heading .page-wheel, main .wheel-clear .page-wheel { --seal:min(clamp(340px,32vw,460px), calc(100svh - 57px - 180px)); right:var(--gutter); }
  main .page-heading > :not(.page-wheel) { max-width:calc(100% - min(clamp(340px,32vw,460px), calc(100svh - 57px - 180px)) - 64px); }
}
@media (min-width:900px) { main #fit, main #shape, main #questions, main #people { display:flex; flex-direction:column; justify-content:center; } main :is(#fit,#shape,#questions,#people) > * { width:100%; } }

/* pass 4 (13 Oct 2026, Jared on his phone): lighter weights, buttons at their own width, a calmer hero,
   the film control in its own band, and a footer that is one quiet list. Phones only. */
@media (max-width:899px) {
  /* weights: titles 400 like desktop, row titles 500, everything else 400 */
  main .page-heading h1, body.homepage main .hero h1, body.homepage main .hero h1 > span, main .m-screen h2, main h2:not(.film-sr),
  #finder h2, #open h2, main .contact-inner h2 { font-weight:400 !important; letter-spacing:-.03em !important; }
  main .page-heading .lead, main .m-screen .m-sub, main p.m-sub, main .finder-intro, main .contact-inner .close-line,
  #open.open-verifier .ov-line, main .m-articles li b, main .m-person-id span { font-weight:400 !important; }
  main h3:not(.film-sr), main .p-exchange li, main .p-exchange h3, main .p-days .gap-label, main .m-person-id b, main .dv-m-steps summary,
  main .dv-m-table tbody th, main .m-articles h3, main .p-q .faq-q .page-row-title, main .dv-flow-node > b, main .dv-flow-rule > b,
  main .dv-flow-out, main #check details summary, main .m-claim-title { font-weight:500 !important; }
  main .m-screen .m-big, main .m-att-total, main .m-verdicts b, main .reg-dates time { font-weight:500 !important; }
  main .button, main .button.dark { font-weight:500 !important; }

  /* buttons: their own width, centred, never full bleed */
  main .button, main .m-screen .button, main .developer-actions .button, body.homepage main .hero-actions .button,
  main .contact-inner .button, main #contact .contact-copy .button, #finder button[type="submit"], #open.open-verifier .open-links a:first-child {
    display:inline-flex !important; width:auto !important; max-width:100%; min-width:0; align-self:center; justify-content:center !important;
    padding:0 28px !important; min-height:52px !important; font-size:16px !important; gap:10px;
  }
  main #open.open-verifier .open-links { align-items:center; }
  main .developer-actions, main .contact-copy, body.homepage main .hero-actions { align-items:center; }

  /* the home hero: seal, title, one button */
  body.homepage main .hero-actions { margin-top:24px !important; gap:0; }
  body.homepage main .hero-actions .text-link { display:none !important; }

  /* the film: the cut sits whole above a 64px band that holds the control */
  #film.film-section { background:#17231e; }
  #film .film, #film .film.film-portrait { inset:0 0 64px 0 !important; height:auto !important; overflow:visible; }
  #film .film video { object-fit:contain; background:#17231e; }
  #film .film .film-ctl { bottom:-54px !important; left:calc(50% - 22px) !important; right:auto !important; }

  /* the footer: wordmark, five links in one list, one legal line, the tagline */
  .site-footer-col h2 { display:none !important; }
  .site-footer-nav { display:flex !important; flex-direction:column; gap:0 !important; }
  .site-footer-col ul { margin:0 !important; }
  .site-footer-col li { min-height:44px !important; display:flex; align-items:center; }
  .site-footer-col a { font-size:16px !important; font-weight:400 !important; }
  .site-footer-top { gap:8px !important; }
  .site-footer-bottom { margin-top:16px !important; gap:4px !important; }
  .site-footer-bottom p, .site-footer-bottom .site-footer-tagline { font-size:14px !important; line-height:1.5; }
}
@media (max-width:899px) { :root { --m-footer:359px; } @media (min-width:421px) { :root { --m-footer:338px; } } }

/* pass 5 (13 Oct 2026, Jared): one left axis on phones, every element. */
@media (max-width:899px) {
  main .m-screen, main .page-heading, main .page-heading:has(.page-wheel), main .m-pair, #finder, #open, #contact, main .contact-inner, main .contact-inner > div { align-items:flex-start !important; text-align:left !important; }
  main h1, main h2, main h3, main p, main li, main summary, main .page-heading .lead, main .m-screen .m-sub, main .finder-intro, main .contact-inner .close-line,
  #open .ov-line, main .m-screen .m-fine, main .m-fine-m, main .ref-source-date, main .dv-flow-out, main .m-claim-title, main .pf-label, main .m-fine-line, main .m-pair p { text-align:left !important; }
  main .page-wheel, main .wheel-clear .page-wheel, .homepage .hero-wheel { align-self:flex-start !important; margin-left:0 !important; margin-right:auto; width:min(52vw, calc((100svh - 53px) * .32), 260px) !important; }
  .homepage .hero-copy, .homepage .hero { align-items:flex-start !important; text-align:left !important; }
  main .button, main .m-screen .button, body.homepage main .hero-actions .button, main .developer-actions .button, main .contact-inner .button,
  #finder button[type="submit"], #open.open-verifier .open-links a:first-child, main .contact-copy .contact-email, main .contact-copy .text-link { align-self:flex-start !important; }
  main .developer-actions, main .contact-copy, body.homepage main .hero-actions, main #open.open-verifier .open-links, #finder .finder-form { align-items:flex-start !important; justify-content:flex-start !important; }
  #open .ov-mark { margin:0 !important; }
  main .dv-frame .text-link, main .reg-m-recheck > .text-link, main .reg-dates > .text-link, main .m-screen > .text-link, main .p-team-link, main .dv-m-steps, main .dv-flow { align-self:flex-start !important; }
  main .dv-flow-edge { align-self:flex-start !important; margin-left:24px; }
  #film .film .film-ctl { left:24px !important; }
  main .contact-inner { display:flex; flex-direction:column; }
  main .contact-copy { margin-top:20px; }
}
@media (max-width:899px) { #finder label, #finder .finder-field, #finder .finder-field span { text-align:left !important; align-items:flex-start; } #finder .finder-helper { display:none !important; } }
@media (max-width:899px) { main .p-days .gap-options { gap:16px; } main .p-days .gap-option { grid-template-columns:72px minmax(0,1fr); column-gap:14px; align-items:center; } main .p-days .gap-scene { max-width:72px; } main .p-days .gap-label { align-self:center; } main .p-days .partners-figure, main .p-days .gap-options { margin-bottom:0 !important; } }
@media (max-width:899px) { :root { --m-footer:334px; } @media (min-width:421px) { :root { --m-footer:313px; } } }
@media (max-width:899px) { main .p-days.m-screen { padding:40px var(--m-pad) 40px !important; } main .p-days .gap-options { gap:18px; } main .p-days .gap-option { grid-template-columns:104px minmax(0,1fr); column-gap:16px; align-items:end; } main .p-days .gap-scene { max-width:104px; } main .p-days .gap-label { align-self:end; padding-bottom:6px; } @media (max-height:700px) { main .p-days .gap-option { grid-template-columns:80px minmax(0,1fr); } main .p-days .gap-scene { max-width:80px; } } }
@media (max-width:899px) { main .p-days .gap-option { grid-template-rows:minmax(0,auto); } main .p-days .gap-scene { grid-row:1; grid-column:1; } main .p-days .gap-label { grid-row:1; grid-column:2; align-self:end; } }

/* pass 6 (13 Oct 2026, Jared): phones centred, every element; the seal oversized into the top corner; no header on phones. */
@media (max-width:899px) {
  header.header { display:none !important; }
  :root { --m-frame:100svh; }
  main .m-screen, main .page-heading, main .page-heading:has(.page-wheel), main .m-pair, #finder, #open, #contact, main .contact-inner, main .contact-inner > div,
  .homepage .hero-copy, .homepage .hero { align-items:center !important; text-align:center !important; }
  main h1, main h2, main h3, main p, main li, main summary, main td, main th, main label, main .page-heading .lead, main .m-screen .m-sub, main .finder-intro,
  main .contact-inner .close-line, #open .ov-line, main .m-screen .m-fine, main .m-fine-m, main .ref-source-date, main .dv-flow-out, main .m-claim-title,
  main .pf-label, main .m-fine-line, main .m-pair p, #finder label, #finder .finder-field, #finder .finder-field span, main .dv-m-table .dv-m-mean { text-align:center !important; }
  main .button, main .m-screen .button, body.homepage main .hero-actions .button, main .developer-actions .button, main .contact-inner .button,
  #finder button[type="submit"], #open.open-verifier .open-links a:first-child, main .contact-copy .contact-email, main .contact-copy .text-link,
  main .dv-frame .text-link, main .reg-m-recheck > .text-link, main .reg-dates > .text-link, main .m-screen > .text-link, main .p-team-link, main .dv-m-steps, main .dv-flow, main .dv-flow-edge { align-self:center !important; margin-left:0 !important; }
  main .developer-actions, main .contact-copy, body.homepage main .hero-actions, main #open.open-verifier .open-links, #finder .finder-form, #finder .finder-field { align-items:center !important; justify-content:center !important; }
  #open .ov-mark { margin:0 auto !important; }
  #film .film .film-ctl { left:calc(50% - 22px) !important; }
  main .m-person summary { grid-template-columns:40px auto 20px; justify-content:center; }
  main .m-person-id { align-items:center; }
  main .m-person > p, main .m-person > .text-link { margin:0 0 6px !important; text-align:center !important; }
  main .m-person > .text-link { display:inline-flex; justify-content:center; width:100%; }
  main .p-days .gap-option { grid-template-columns:104px auto; justify-content:center; }
  main .m-articles li { grid-template-columns:auto auto; justify-content:center; column-gap:16px; }
  main .m-verdicts li { justify-content:center; gap:16px; }
  main .m-inst li { grid-template-columns:auto auto; justify-content:center; column-gap:12px; }
  main .p-people .team-person { grid-template-columns:56px auto; justify-content:center; column-gap:14px; }
  main .p-people .team-person-proof { grid-column:1 / -1; text-align:center !important; max-width:none; }
  main .dv-m-table tbody tr { grid-template-columns:auto auto auto; justify-content:center; column-gap:20px; }
  main .dv-m-table tr > :nth-child(3) { text-align:center !important; }
  main .dv-flow { align-items:center; }
  main .dv-flow-node { align-items:center; width:100%; }
  main .dv-flow-rule { align-items:center; border-left:0; border-top:3px solid var(--m-green); padding:8px 0 0; }
  main .dv-m-steps tr { justify-content:center; }
  /* the seal: oversized, cropped by the top right corner; the words sit in the lower half */
  main .page-heading, main .page-heading:has(.page-wheel), .homepage .hero { position:relative; overflow:hidden; clip-path:inset(0) !important; justify-content:flex-end !important; padding-bottom:64px !important; }
  main .page-wheel, main .wheel-clear .page-wheel, .homepage .hero-wheel { position:absolute !important; top:-75vw !important; right:-75vw !important; left:auto !important; bottom:auto !important;
    transform:none !important; width:150vw !important; max-width:none !important; margin:0 !important; flex:none; align-self:auto !important; }
  .homepage .hero-copy, main .page-heading > :not(.page-wheel) { position:relative; z-index:1; max-width:100% !important; }
  @media (max-height:700px) { main .page-wheel, main .wheel-clear .page-wheel, .homepage .hero-wheel { width:140vw !important; top:-70vw !important; right:-70vw !important; } main .page-heading, .homepage .hero { padding-bottom:48px !important; } }
}
@media (max-width:899px) {
  .site-footer-inner, .site-footer-top, .site-footer-nav, .site-footer-col, .site-footer-col ul, .site-footer-bottom { align-items:center !important; text-align:center !important; }
  .site-footer-col li { justify-content:center !important; }
  .site-footer-brand { margin-left:auto !important; margin-right:auto !important; }
  .site-footer-col a { justify-content:center; }
  .site-footer-col li a::before, .site-footer-nav [aria-current] { border-left:0 !important; padding-left:0 !important; }
  .site-footer-bottom p { text-align:center !important; width:100%; }
}
@media (max-width:899px) {
  .site-footer a[aria-current], .site-footer li:has(a[aria-current]) { border-left:0 !important; padding-left:0 !important; margin-left:0 !important; background:none !important; }
  .site-footer a[aria-current]::before, .site-footer a[aria-current]::after, .site-footer li:has(a[aria-current])::before { display:none !important; content:none !important; }
  .site-footer a[aria-current] { text-decoration:underline; text-underline-offset:.25em; }
}

/* pass 7 (13 Oct 2026): desktop, one left axis on the two figures and the footer */
@media (min-width:900px) {
  .dv-build-figure { align-self:flex-start !important; text-align:left !important; margin-left:0; }
  .dv-build-figure .dv-tier { text-align:left; }
  .dv-roles { margin-inline:0 !important; }
  .dv-build-figure li { align-items:flex-start !important; text-align:left; }
  .reg-ref-section .reg-model { text-align:left; }
  .reg-model .rf-articles { justify-content:start !important; justify-items:start !important; }
  .reg-model .rf-record { justify-content:flex-start !important; }
  .reg-model .rf-slab { margin-left:0 !important; margin-right:auto !important; }
  .site-footer-top { grid-template-columns:1.25fr 1fr !important; gap:10% !important; }
}
@media (min-width:900px) { .site-footer-nav, .site-footer-nav.site-footer-nav-2 { justify-content:start !important; justify-self:start !important; margin-left:0 !important; } }
@media (min-width:900px) { .site-footer-top { grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important; gap:64px !important; } }

/* pass 8 (13 Oct 2026): the phone seal larger still, only its lower left quarter in the corner; the wordmark above the home title */
@media (max-width:899px) { body.homepage .hero-copy .hero-mark { display:block; width:120px; height:auto; margin:0 auto 20px; } }
@media (min-width:900px) { body.homepage .hero-copy .hero-mark { display:none !important; } }
/* pass 9 (13 Oct 2026, Jared): desktop close without the button box; both links plain, underlined, on one left edge */
@media (min-width:900px) {
  main #contact .contact-copy { display:flex; flex-direction:column; align-items:flex-start !important; gap:24px; }
  main #contact .contact-copy .button, main #contact .contact-copy .contact-email { background:none !important; color:var(--ink) !important; border:0 !important; border-bottom:1px solid currentColor !important;
    border-radius:0 !important; box-shadow:none !important; width:auto !important; min-width:0 !important; min-height:0 !important; height:auto !important; padding:0 0 6px !important; margin:0 !important;
    display:inline-flex !important; justify-content:flex-start !important; gap:12px; font-size:16px !important; font-weight:500 !important; line-height:1.5 !important; text-decoration:none !important; }
  main #contact .contact-copy .button:hover, main #contact .contact-copy .contact-email:hover { color:var(--m-green, #04a957) !important; }
}
/* pass 10 (14 Oct 2026, Jared): Team is one frame, one row per person, every slot one line; LinkedIn logos; footer wordmark larger, legal line as fine print */
.t-roster .t-rows { list-style:none; margin:0; padding:0; border-top:2px solid var(--ink); }
.t-roster .t-row { display:grid; grid-template-columns:28px minmax(0,17rem) minmax(0,24.5rem) minmax(0,1fr); align-items:center; column-gap:20px; height:36px; border-bottom:1px solid var(--line); }
.t-roster .t-row > img { width:28px; height:28px; object-fit:cover; filter:grayscale(1); }
.t-roster .t-row > span { white-space:nowrap; overflow:hidden; text-overflow:clip; font-size:16px; line-height:1.3; color:var(--ink); }
.t-roster .t-name { font-weight:500; }
.t-roster .t-role { font-weight:400; }
.t-roster .t-in { margin-left:10px; vertical-align:-2px; }
.t-roster .t-in, main .m-in { display:inline-flex; align-items:center; justify-content:center; color:var(--ink); }
.t-roster .t-in:hover, main .m-in:hover { color:#0a66c2; }
.t-roster .t-in svg, main .m-in svg { width:16px; height:16px; }
.t-roster .t-group { margin:24px 0 12px; font-size:24px !important; font-weight:400 !important; letter-spacing:-.02em; }
.t-roster > h2 { margin-bottom:20px; }
@media (min-width:900px) { main .team-section.t-roster { padding-block:40px !important; justify-content:center !important; } }
@media (max-width:899px) { main .team-section.t-roster { display:none; } main .m-in { width:44px; height:44px; margin:0 0 4px 40px; } }
@media (min-width:900px) and (max-width:1279px) { .t-roster .t-row { grid-template-columns:28px minmax(0,17rem) minmax(0,1fr); } .t-roster .t-desc { display:none; } } /* pass 24: 1279, the leads clip between 1200 and 1279 */
@media (min-width:900px) {
  .site-footer-brand img { height:20px !important; width:auto !important; max-width:none !important; }
  .site-footer-bottom p { font-size:11px !important; line-height:1.4 !important; letter-spacing:.01em; }
}
@media (max-width:899px) {
  main .m-person summary { position:relative; grid-template-columns:40px auto !important; padding-right:0; }
  main .m-person summary::after { position:absolute; right:0; top:calc(50% - 19px); transform:none; }
  main .m-person-id span { white-space:nowrap; }
}
.t-roster .t-rows.t-first { border-top:0; }
/* pass 11 (14 Oct 2026, Jared): the home hero wheel on phones, centred and as large as fits whole above the words */
@media (max-width:899px) {
  body.homepage .hero { justify-content:flex-start !important; padding-top:24px !important; }
  body.homepage .hero .hero-wheel { position:static !important; order:-1; flex:none !important; width:min(calc(100vw - 32px), calc(100svh - 290px)) !important; height:auto !important; aspect-ratio:1;
    top:auto !important; right:auto !important; max-width:none !important; align-self:center !important; margin:auto 0 !important; }
  body.homepage .hero .hero-copy { flex:none; }
}
/* pass 12 (14 Oct 2026, Jared): the hero call is a down arrow to the film */
main .hero-actions .hero-down { display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; color:var(--ink); text-decoration:none; }
main .hero-actions .hero-down svg { width:32px; height:32px; }
main .hero-actions .hero-down:hover { color:#04a957; }
@media (max-width:899px) { body.homepage main .hero-actions .hero-down { align-self:center !important; margin:0 !important; } }
@media (min-width:900px) { body.homepage main .hero-actions .hero-down { margin-left:-8px; } }
/* pass 13 (14 Oct 2026, Jared): phones: the film and the check fill the frame edge to edge and hold while they play; the check as one animated claim card */
.check-pin { display:contents; }
@media (max-width:899px) {
  .film-pin, .check-pin { display:block; position:relative; height:170svh; height:170dvh; }
  .film-pin > #film.film-section, .check-pin > #check { position:sticky !important; top:0; height:100svh !important; height:100dvh !important; min-height:0 !important; }
  #film .film, #film .film.film-portrait { inset:0 !important; height:100% !important; }
  #film .film video { object-fit:cover !important; object-position:50% 20%; }
  #film .film .film-ctl { top:12px !important; bottom:auto !important; right:12px !important; left:auto !important; }

  #check { justify-content:flex-start !important; padding:40px 16px 24px !important; overflow:hidden; }
  #check .control-copy { flex:none; }
  #check .xc { display:flex; flex-direction:column; flex:1 1 0; min-height:0; width:100%; margin-top:24px; }
  #check .xc-card { flex:1 1 0; min-height:0; display:flex; flex-direction:column; box-sizing:border-box; padding:20px 20px 24px; background:#fff; border:2px solid var(--m-ink); }
  #check .xc-head { display:flex; justify-content:space-between; margin:0; padding-bottom:12px; border-bottom:1px solid var(--m-ink); font-size:16px; font-weight:500; color:var(--m-ink); }
  #check .xc-rules { flex:1 1 0; min-height:0; display:flex; flex-direction:column; justify-content:space-evenly; list-style:none; margin:0; padding:8px 0; }
  #check .xc-rules li { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0; font-size:18px; line-height:1.3; color:var(--m-ink); text-align:left !important; }
  #check .xc-i { width:22px; height:22px; flex:none; color:#04a957; }
  #check .xc-flip { display:grid; justify-items:end; }
  #check .xc-flip > span { grid-area:1 / 1; display:inline-flex; align-items:center; gap:8px; white-space:nowrap; font-size:16px; }
  #check .xc-flip .a1, #check .xc-flip .a1 .xc-i { color:#c8283c; }
  #check .xc-verdict { display:grid; padding-top:16px; border-top:1px solid var(--m-ink); }
  #check .xc-verdict > p { grid-area:1 / 1; display:flex; flex-direction:column; align-items:center; margin:0; text-align:center !important; }
  #check .xc-verdict b { font-size:40px; line-height:1.1; font-weight:500; letter-spacing:-.02em; }
  #check .xc-verdict .a1 b { color:#c8283c; } #check .xc-verdict .a2 b { color:#04a957; }
  #check .xc-verdict span { margin-top:4px; font-size:16px; color:var(--m-ink); }
  #check .xc-fine { margin:12px 0 0; font-size:14px; color:var(--m-ink); text-align:center !important; }
  #check .xc .a1 { animation:xc-a1 7s infinite; } #check .xc .a2 { animation:xc-a2 7s infinite; }
  @keyframes xc-a1 { 0%, 44% { opacity:1; } 50%, 94% { opacity:0; } 100% { opacity:1; } }
  @keyframes xc-a2 { 0%, 44% { opacity:0; } 50%, 94% { opacity:1; } 100% { opacity:0; } }
  @media (prefers-reduced-motion:reduce) { #check .xc .a1 { animation:none; opacity:0; } #check .xc .a2 { animation:none; opacity:1; } }

  /* the verifier frame: a plain link, lower, no GitHub */
  #open.open-verifier .open-links { margin-top:40px !important; }
  #open.open-verifier .open-links a:first-child { background:none !important; border:0 !important; border-bottom:1px solid currentColor !important; border-radius:0 !important;
    padding:0 0 6px !important; min-height:0 !important; box-shadow:none !important; }

  /* the footer: the wordmark leads, the links smaller */
  .site-footer-brand img { height:20px !important; width:auto !important; }
  .site-footer-col a { font-size:14px !important; }
}
@media (min-width:900px) {
  .site-footer-col a { font-size:14px !important; }
  .site-footer-col h2 { font-size:12px !important; }
}
/* pass 14 (14 Oct 2026, Jared): the finder field without a placeholder, its text centred like the frame on phones */
@media (max-width:899px) { #finder .finder-field input { text-align:center; } }
/* pass 15 (14 Oct 2026, Jared): phone team, one frame: rows left, photo then name and role, + on the right, advisors in the same frame */
@media (max-width:899px) {
  main .m-roster.m-screen { min-height:100svh; min-height:100dvh; justify-content:flex-start !important; align-items:stretch !important; padding:16px 16px 20px !important; }
  main .m-roster .m-people { margin:0 !important; border-top:0 !important; display:flex; flex-direction:column; }
  main .m-roster .m-p1 { flex:10 1 auto; } main .m-roster .m-p2 { flex:5 1 auto; } /* pass 23: content basis, so the lists size from their rows and the frame grows when a row opens */
  main .m-roster .m-people > li { flex:1 1 auto; display:flex; flex-direction:column; justify-content:center; min-height:auto; } /* pass 23: content basis and min-height auto, so an opened row takes its bio height instead of painting over the rows below */
  main .m-roster .m-person summary { display:grid !important; grid-template-columns:32px minmax(0,1fr) 20px !important; justify-content:stretch !important; align-items:center; column-gap:12px; min-height:0 !important; padding:4px 0 !important; position:static; }
  main .m-roster .m-person summary::after { position:static !important; transform:none !important; justify-self:end; }
  main .m-roster .m-person summary img { width:32px; height:32px; }
  main .m-roster .m-person-id { align-items:flex-start !important; text-align:left !important; }
  main .m-roster .m-person-id b { font-size:16px; line-height:1.15; text-align:left !important; }
  main .m-roster .m-person-id span { font-size:14px; line-height:1.2; margin-top:0; text-align:left !important; }
  main .m-roster .m-person > p { margin:4px 32px 2px 44px !important; text-align:left !important; font-size:14px; line-height:1.4; }
  main .m-roster .m-person > .m-in { display:flex; margin:0 0 6px 44px !important; width:32px; height:32px; justify-content:flex-start; } /* pass 23: block, so it sits under the bio instead of centring on the frame */
  main .m-roster .m-group { margin:12px 0 4px !important; padding-bottom:4px; border-bottom:1px solid var(--m-ink); font-size:14px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; text-align:left !important; color:var(--m-ink); }
}
/* pass 16 (14 Oct 2026, Jared): inner heads show more of the seal, filling the upper frame; the footer gives back the 8px the larger wordmark took */
@media (max-width:899px) {
  .site-footer-bottom { margin-top:8px !important; }
}
@media (max-width:899px) {
  main .m-roster.m-screen { padding:16px 24px 20px !important; }
  main .m-roster .m-person summary { grid-template-columns:32px minmax(0,1fr) !important; position:relative !important; }
  main .m-roster .m-person summary::after { position:absolute !important; right:0; top:calc(50% - 19px) !important; }
  main .m-roster .m-person-id b { padding-right:24px; }
}
/* pass 17 (14 Oct 2026, Jared): desktop footer type back to the page's small size; the wordmark 10% smaller */
@media (min-width:900px) {
  .site-footer-brand img { height:18px !important; }
  .site-footer-col a, .site-footer-col h2, .site-footer-bottom p { font-size:14px !important; }
}
/* pass 18 (14 Oct 2026, Jared): desktop footer links at the header link size; the legal line back to fine print */
@media (min-width:900px) {
  .site-footer-col a { font-size:16px !important; }
  .site-footer-bottom p { font-size:11px !important; line-height:1.4 !important; }
}
/* pass 19 (14 Oct 2026, Jared): phones: a little less of the inner seals; the NV monogram top left of every page, home link */
.m-home { display:none; }
@media (max-width:899px) {
  .m-home { display:flex; position:absolute; top:8px; left:12px; z-index:20; width:44px; height:44px; align-items:center; justify-content:center; }
  .m-home img { width:27px; height:28px; display:block; }
}
/* pass 20 (14 Oct 2026, Jared): inner heads. Phones: the seal's centre sits on the top right corner, one quarter showing,
   radius set by seal.js (--seal-r) to the gap above the words. Desktop: the larger seal back, half off the right edge. */
@media (max-width:899px) {
  main .page-heading .page-wheel { width:calc(var(--seal-r, 80vw) * 2) !important; top:calc(var(--seal-r, 80vw) * -1) !important; right:calc(var(--seal-r, 80vw) * -1) !important; bottom:auto !important; }
}
@media (min-width:900px) {
  main .page-heading .page-wheel, main .wheel-clear .page-wheel { --seal:min(clamp(380px,38vw,540px), calc(100svh - 57px - 96px)); right:calc(50% - 50vw - var(--seal) * .5); }
  main .page-heading > :not(.page-wheel) { max-width:calc(100% - min(clamp(380px,38vw,540px), calc(100svh - 57px - 96px)) * .5 + var(--gutter) - 64px); }
}
/* pass 21 (14 Oct 2026, Jared): desktop inner seals as large as the head allows below the header, still half off the right edge;
   phones: the email link sits further below the call button */
@media (min-width:900px) {
  main .page-heading .page-wheel, main .wheel-clear .page-wheel { --seal:min(calc(100svh - 57px - 48px), 64vw); }
  main .page-heading > :not(.page-wheel) { max-width:calc(100% - min(calc(100svh - 57px - 48px), 64vw) * .5 + var(--gutter) - 64px); }
}
@media (max-width:899px) { main .contact-copy .contact-email { margin-top:20px !important; } }
/* pass 22 (14 Oct 2026, QA nexi-5f): code blocks wrap, square figure controls, equal "What a result means" rows,
   centred changes frames, a full regulations pair, rows left, the confirm link centred, white footer labels */
main pre, main pre code { white-space:pre-wrap !important; overflow-wrap:anywhere; word-break:normal; max-width:100%; box-sizing:border-box; }
main pre { min-width:0; overflow-x:hidden; }
.pf-step, .pf-attempt, .pf-claim-card, #film .film-cta { border-radius:0 !important; }
.site-footer-col h2, .site-footer-bottom p { color:#fff !important; }
@media (min-width:900px) {
  main #means .row-list > li { min-height:112px; align-content:center; align-items:center; }
  main #means .row-list > li { grid-template-columns:280px minmax(0,1fr) !important; column-gap:32px; }
  main #means .row-list > li h3 { white-space:nowrap; }
  main .ch-section { min-height:calc(100svh - 57px) !important; display:flex !important; flex-direction:column !important; justify-content:center !important; box-sizing:border-box; }
  main .ch-section .ch-table { font-size:18px; }
  main .ch-section .ch-table td, main .ch-section .ch-table th { padding-top:18px; padding-bottom:18px; }
}
@media (max-width:899px) {
  main .m-pair { min-height:100svh !important; }
  main .m-articles ol, main .m-articles li { text-align:left !important; justify-content:flex-start !important; align-items:flex-start !important; margin-left:0; }
  main .confirm-heading .not-found-links { display:flex !important; width:100%; justify-content:center !important; align-self:center !important; text-align:center !important; }
}

/* pass 24 (14 Oct 2026, Jared): desktop roster rows open on click to a two or three sentence bio, as the phone rows do */
@media (min-width:900px) {
  .t-roster .t-rows > li.t-row-wrap { border-bottom:1px solid var(--line); }
  .t-roster .t-row-wrap .t-row { grid-template-columns:28px minmax(0,15.5rem) minmax(0,23rem) minmax(0,1fr) 20px; border-bottom:0; cursor:pointer; list-style:none; }
  .t-roster .t-row-wrap .t-row::-webkit-details-marker { display:none; }
  .t-roster .t-row-wrap .t-row::after { content:"+"; justify-self:end; font-size:18px; line-height:1; color:var(--ink); }
  .t-roster .t-row-wrap details[open] > .t-row::after { content:"\2212"; }
  .t-roster .t-bio { margin:2px 0 14px 48px; max-width:64rem; font-size:16px; line-height:1.45; color:var(--ink); text-wrap:pretty; }
}
@media (min-width:900px) and (max-width:1279px) { .t-roster .t-row-wrap .t-row { grid-template-columns:28px minmax(0,15.5rem) minmax(0,1fr) 20px; } }
@media (max-width:899px) { .t-roster .t-bio { display:none; } }
/* pass 26 (14 Oct 2026, Jared): desktop roster top line semi-bold, the bio sentences smaller */
@media (min-width:900px) {
  .t-roster .t-row-wrap .t-row > span, .t-roster .t-row-wrap .t-name, .t-roster .t-row-wrap .t-role { font-weight:400; } /* pass 28: no bold on the top line, sizes unchanged */
  .t-roster .t-bio { font-size:14px; line-height:1.45; }
}
/* pass 27 (14 Oct 2026, Jared): the desktop roster frame grows when a row opens; a fixed frame with centred content pushed the top rows out of view */
@media (min-width:900px) { main section#team-title.t-roster { height:auto !important; min-height:var(--frame) !important; } }
/* pass 30 (14 Oct 2026, Jared): the report button sits level with the email input instead of stretching to the label's height */
@media (min-width:900px) { #finder .finder-fields > .button { align-self:flex-end; min-height:62px; } }
