:root {
  color-scheme: dark;
  --night: #11110f;
  --night-light: #1a1a17;
  --paper: #e8e4d9;
  --paper-deep: #dcd6c8;
  --ink: #22211d;
  --red: #a6302c;
  --red-dark: #7e211e;
  --soft-white: #eeeae0;
  --mono: ui-monospace, "SFMono-Regular", Menlo, monospace;
  --sans: system-ui, sans-serif;
  --serif: "Playfair Display", Georgia, serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 25px; }
body { margin: 0; background: var(--night); color: var(--soft-white); font-family: var(--sans); font-size: 14px; line-height: 1.7; -webkit-font-smoothing: antialiased; }
::selection { background: var(--red); color: white; }
a { color: inherit; }
button { font: inherit; }
:focus-visible { outline: 2px solid #c7584e; outline-offset: 4px; }
.skip-link { position: fixed; z-index: 30; top: 10px; left: 10px; padding: 9px 14px; transform: translateY(-150%); background: var(--red); color: white; }
.skip-link:focus { transform: translateY(0); }

.masthead { position: absolute; z-index: 5; inset: 0 0 auto; display: flex; align-items: center; justify-content: space-between; height: 74px; padding-inline: 5.5vw; border-bottom: 1px solid rgba(239,234,221,.19); color: #e9e4da; }
.seal { display: flex; align-items: center; gap: 9px; color: inherit; font-family: var(--mono); font-size: 7px; letter-spacing: .08em; line-height: 1.5; text-decoration: none; }
.seal svg { width: 37px; height: 37px; fill: none; stroke: #b4433a; stroke-width: 1; }
.seal svg path { fill: #b4433a; stroke: none; }
.masthead-center { display: flex; align-items: center; gap: 13px; color: rgba(239,234,221,.58); font-family: var(--mono); font-size: 7px; letter-spacing: .14em; }
.masthead-center i { width: 24px; height: 1px; background: var(--red); }
.sound-button { display: flex; align-items: center; gap: 8px; padding: 8px 0 8px 14px; border: 0; border-left: 1px solid rgba(239,234,221,.24); background: transparent; color: rgba(239,234,221,.74); font-family: var(--mono); font-size: 7px; letter-spacing: .1em; cursor: pointer; }
.sound-icon { color: #ce6355; font-size: 16px; }

.cover { position: relative; min-height: min(920px, 100svh); min-height: max(730px, min(920px, 100svh)); display: flex; align-items: center; overflow: hidden; isolation: isolate; background: #11110f; }
.cover-art { position: absolute; z-index: -2; inset: 0 0 0 31%; overflow: hidden; }
.cover-art img { position: absolute; top: -5%; right: -1%; width: min(78vw, 1160px); height: 112%; object-fit: cover; object-position: 50% 38%; filter: saturate(.69) contrast(1.08) brightness(.78); }
.cover-shade { position: absolute; inset: 0; background: linear-gradient(90deg, #11110f 0%, rgba(17,17,15,.97) 12%, rgba(17,17,15,.76) 38%, rgba(17,17,15,.16) 69%, rgba(17,17,15,.21) 100%), linear-gradient(0deg, #11110f 0%, transparent 17%, rgba(17,17,15,.18) 100%); }
.cover::after { position: absolute; z-index: -1; inset: 0; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E"); opacity: .2; content: ""; pointer-events: none; mix-blend-mode: screen; }
.cover-copy { position: relative; z-index: 1; width: min(660px, 56vw); margin: 38px 0 35px 10.5vw; }
.file-label, .section-index { display: flex; align-items: center; gap: 9px; margin: 0 0 28px; color: rgba(232,228,217,.69); font-family: var(--mono); font-size: 7px; letter-spacing: .12em; }
.live-dot { width: 6px; height: 6px; border-radius: 50%; background: #a8463d; box-shadow: 0 0 10px rgba(174,62,53,.6); }
.file-slash, .section-index span { color: #c35b4f; }
.cover h1 { margin: 0; color: #ede9df; font-family: var(--serif); font-size: clamp(51px, 6.4vw, 86px); font-weight: 500; letter-spacing: -.065em; line-height: 1.02; }
.cover h1 em { color: #c34b41; font-weight: 500; }
.cover-deck { margin: 21px 0 0; color: rgba(232,228,217,.69); font-size: 12px; line-height: 1.9; }
.cover-cta { display: inline-flex; align-items: center; gap: 12px; margin-top: 32px; color: #e7e2d8; font-family: var(--mono); font-size: 7px; letter-spacing: .11em; text-decoration: none; }
.cta-seal { width: 35px; height: 35px; display: grid; place-items: center; border: 1px solid rgba(183,77,66,.7); border-radius: 50%; color: #d3685b; font-size: 17px; transition: color .2s, background .2s, transform .2s; }
.cover-cta:hover .cta-seal { transform: rotate(-45deg); background: var(--red); color: white; }
.cta-line { width: 44px; height: 1px; margin-left: 5px; background: rgba(232,228,217,.4); transition: width .2s; }
.cover-cta:hover .cta-line { width: 65px; }
.cover-credit { display: block; margin-top: 52px; color: rgba(232,228,217,.49); font-family: var(--mono); font-size: 6px; letter-spacing: .15em; }
.cover-credit i { color: #c25249; font-style: normal; }
.cover-registration { position: absolute; right: 5.2%; bottom: 21%; display: grid; justify-items: end; gap: 5px; color: rgba(239,234,221,.67); font-family: var(--mono); font-size: 6px; letter-spacing: .14em; }
.cover-registration span:first-child { margin-bottom: 4px; color: #e3ded3; font-family: var(--serif); font-size: 12px; font-style: italic; letter-spacing: .05em; }
.cover-foot { position: absolute; right: 5.5%; bottom: 32px; left: 5.5%; display: flex; align-items: center; gap: 13px; color: rgba(239,234,221,.48); font-family: var(--mono); font-size: 6px; letter-spacing: .12em; }
.cover-foot-dash { width: 30px; height: 1px; background: var(--red); }
.cover-noise { position: absolute; inset: auto 0 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(240,233,217,.2), transparent); }

.case-file { position: relative; padding: 27px max(8vw, calc((100vw - 1120px)/2)) 24px; overflow: hidden; background: var(--paper); color: var(--ink); }
.case-file::before { position: absolute; top: 0; bottom: 0; left: 25px; width: 1px; background: rgba(153,45,39,.25); content: ""; }
.case-topline, .case-bottom { display: flex; justify-content: space-between; gap: 15px; color: #615e56; font-family: var(--mono); font-size: 6px; letter-spacing: .11em; }
.case-classified { padding: 3px 8px; border: 1px solid var(--red); color: var(--red); transform: rotate(-2deg); }
.case-topline b, .case-bottom b { color: var(--red); }
.case-grid { position: relative; display: grid; grid-template-columns: 1fr 1fr 80px; gap: 6vw; align-items: center; padding: 60px 0 49px; }
.case-headline { position: relative; }
.case-headline .section-index, .map-heading .section-index, .interval .section-index, .people .section-index, .last-copy .section-index { margin-bottom: 17px; color: #5d594f; font-size: 6px; }
.case-headline h2 { margin: 0; color: #24221e; font-family: var(--serif); font-size: clamp(55px, 7vw, 87px); font-weight: 500; letter-spacing: -.07em; line-height: .98; }
.case-headline h2 em { color: #a73630; font-weight: 500; }
.red-pencil { position: absolute; right: 8%; bottom: -7px; color: #7e211e; font-family: var(--serif); font-size: 18px; font-style: italic; transform: rotate(-12deg); }
.case-body { max-width: 400px; padding-top: 9px; color: #545149; font-size: 10px; line-height: 1.95; }
.case-lead { margin: 0 0 15px; color: #2b2923; font-family: var(--serif); font-size: 18px; line-height: 1.45; }
.case-body p:not(.case-lead) { margin: 0 0 11px; }
.case-signature { display: flex; align-items: center; gap: 11px; margin-top: 20px; color: #5e5a50; font-family: var(--mono); font-size: 6px; letter-spacing: .1em; }
.signature-name { color: #8e332d; font-family: var(--serif); font-size: 15px; font-style: italic; letter-spacing: 0; transform: rotate(-4deg); }
.case-margin { align-self: stretch; display: flex; flex-direction: column; justify-content: center; align-items: center; border-left: 1px solid rgba(53,49,41,.19); text-align: center; }
.margin-symbol { color: #a4322b; font-family: var(--serif); font-size: 26px; }
.case-margin p { color: #5b574e; font-family: var(--mono); font-size: 6px; letter-spacing: .1em; line-height: 1.8; }
.case-margin i { width: 23px; height: 1px; background: #ac372e; }
.case-bottom { padding-top: 15px; border-top: 1px solid rgba(44,41,35,.22); font-size: 5px; }

.street-map { position: relative; display: grid; grid-template-columns: .72fr 1.28fr; gap: 6vw; align-items: center; min-height: 610px; padding: 78px max(8vw, calc((100vw - 1120px)/2)) 59px; overflow: hidden; background: #c9c2b2; color: var(--ink); }
.street-map::before { position: absolute; inset: 0; background-image: repeating-linear-gradient(0deg, transparent 0 4px, rgba(50,45,37,.025) 5px), repeating-linear-gradient(90deg, transparent 0 4px, rgba(50,45,37,.02) 5px); content: ""; pointer-events: none; }
.map-heading { position: relative; z-index: 1; }
.map-heading h2 { margin: 0; font-family: var(--serif); font-size: clamp(53px, 6vw, 75px); font-weight: 500; letter-spacing: -.07em; line-height: 1.02; }
.map-heading h2 em { color: var(--red); font-weight: 500; }
.map-description { max-width: 250px; margin: 19px 0 0; color: #575349; font-size: 9px; line-height: 1.9; }
.map-stamp { display: inline-block; margin-top: 24px; padding: 6px 9px; border: 1px solid rgba(147,43,36,.63); color: #7e211e; font-family: var(--mono); font-size: 6px; letter-spacing: .12em; line-height: 1.6; text-align: center; transform: rotate(-6deg); }
.map-drawing { position: relative; z-index: 1; min-width: 0; border: 1px solid rgba(57,53,44,.35); background: rgba(233,228,216,.18); }
.map-drawing svg { display: block; width: 100%; overflow: visible; }
.map-roads path { fill: none; stroke: rgba(67,64,56,.53); stroke-width: 1; }
.map-blocks path { fill: rgba(73,69,60,.08); stroke: rgba(67,64,56,.31); stroke-width: .7; }
.map-river { fill: none; stroke: rgba(71,105,103,.49); stroke-width: 13; }
.map-markers circle:first-child { fill: var(--red); }
.map-markers circle:nth-child(even) { fill: none; stroke: var(--red); stroke-width: 1; }
.map-labels { fill: rgba(46,43,37,.9); font-family: var(--mono); font-size: 8px; letter-spacing: .08em; }
.map-crosshair { fill: none; stroke: rgba(46,43,37,.68); stroke-width: 1; }
.map-note { position: absolute; padding: 5px 7px; background: var(--paper); color: #656055; font-family: var(--mono); font-size: 5px; letter-spacing: .08em; line-height: 1.6; }
.map-note b { color: var(--red); font-weight: 500; }
.map-note-one { top: 9%; right: 4%; transform: rotate(2deg); }
.map-note-two { right: 1%; bottom: 10%; color: #8b312c; transform: rotate(-4deg); }
.map-north { position: absolute; top: 8px; left: 9px; color: #5b584f; font-family: var(--mono); font-size: 7px; }
.map-north b { margin-left: 3px; color: var(--red); font-size: 12px; }
.map-footer { position: absolute; right: max(8vw, calc((100vw - 1120px)/2)); bottom: 24px; left: max(8vw, calc((100vw - 1120px)/2)); display: flex; justify-content: space-between; gap: 14px; color: #57544b; font-family: var(--mono); font-size: 5px; letter-spacing: .12em; }

.interval { position: relative; min-height: 485px; display: flex; align-items: center; overflow: hidden; padding: 80px max(10vw, calc((100vw - 1120px)/2)); background: #181917; }
.interval-mark { position: absolute; top: 50%; right: 9%; width: clamp(260px, 41vw, 500px); aspect-ratio: 1; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 500'%3E%3Ctext x='50%25' y='80%25' text-anchor='middle' font-family='Georgia,serif' font-size='440' font-style='italic' fill='%23eee9de' fill-opacity='.05'%3E27%3C/text%3E%3C/svg%3E") center / contain no-repeat; transform: translateY(-49%); }
.interval-content { position: relative; z-index: 1; width: min(710px, 77%); }
.interval .section-index { color: #a6a399; }
.interval h2 { margin: 0; font-family: var(--serif); font-size: clamp(48px, 6.2vw, 76px); font-weight: 500; letter-spacing: -.065em; line-height: 1.07; }
.interval h2 em { color: #ca6256; font-weight: 500; }
.interval-content > p:not(.section-index) { margin: 12px 0 0; color: #aaa79e; font-size: 10px; }
.timeline { display: grid; grid-template-columns: auto minmax(90px, 1fr) auto; align-items: center; gap: 14px; max-width: 580px; margin-top: 41px; }
.timeline-point { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 10px; min-width: 113px; }
.timeline-point span { color: #eee9de; font-family: var(--serif); font-size: 22px; }
.timeline-point i { width: 7px; height: 7px; border: 1px solid #cf645a; border-radius: 50%; background: #181917; box-shadow: 0 0 0 4px rgba(201,81,70,.11); }
.timeline-point strong { grid-column: 1 / -1; color: #aaa69c; font-family: var(--mono); font-size: 5px; font-weight: 400; letter-spacing: .11em; }
.timeline-muted span, .timeline-muted strong { color: #a4a096; }
.timeline-gap { display: flex; align-items: center; justify-content: center; gap: 9px; padding-bottom: 14px; color: #99958a; font-family: var(--mono); font-size: 6px; white-space: nowrap; }
.timeline-gap i { width: 100%; height: 1px; background: linear-gradient(90deg, rgba(195,82,72,.7), rgba(255,255,255,.18)); }

.people { position: relative; display: grid; grid-template-columns: .84fr 1fr; gap: 7vw; padding: 94px max(10vw, calc((100vw - 1120px)/2)) 85px; background: var(--paper); color: var(--ink); }
.people-heading { align-self: center; }
.people .section-index { color: #5d594f; }
.people-heading h2 { margin: 0; font-family: var(--serif); font-size: clamp(51px, 6.5vw, 80px); font-weight: 500; letter-spacing: -.07em; line-height: 1.02; }
.people-heading h2 em { color: var(--red); font-weight: 500; }
.people-heading > p:last-child { margin: 15px 0 0; color: #5c584f; font-size: 9px; }
.people-list { border-top: 1px solid rgba(35,32,27,.33); }
.person { min-height: 67px; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 11px; border-bottom: 1px solid rgba(35,32,27,.23); }
.person > span { color: #9d342d; font-family: var(--mono); font-size: 7px; }
.person strong { color: #27251f; font-family: var(--serif); font-size: 17px; font-weight: 500; }
.person small { color: #5c584f; font-size: 8px; }
.person-danger small { color: #9d342d; }
.people-note { grid-column: 2; justify-self: end; margin: -62px 0 0; color: #8b332c; font-family: var(--mono); font-size: 5px; letter-spacing: .09em; }

.last-page { position: relative; min-height: 450px; display: flex; align-items: center; overflow: hidden; isolation: isolate; background: #101211; }
.last-art { position: absolute; z-index: -2; inset: 0; overflow: hidden; }
.last-art img { width: 100%; height: 100%; object-fit: cover; object-position: center 52%; filter: saturate(.64) brightness(.47); }
.last-page::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(12,14,14,.94), rgba(12,14,14,.63) 50%, rgba(12,14,14,.13)), linear-gradient(0deg, rgba(12,14,14,.65), transparent 40%); content: ""; }
.last-copy { position: relative; z-index: 1; padding: 76px 0 88px max(10vw, calc((100vw - 1120px)/2)); }
.last-copy .section-index { color: rgba(238,233,222,.67); }
.last-copy h2 { margin: 0; color: #f0ece2; font-family: var(--serif); font-size: clamp(55px, 7.3vw, 88px); font-weight: 500; letter-spacing: -.07em; line-height: 1.01; }
.last-copy h2 em { color: #cb5b50; font-weight: 500; }
.trailer-trigger { display: inline-flex; align-items: center; gap: 12px; margin-top: 25px; padding: 0; border: 0; border-bottom: 1px solid rgba(237,232,218,.45); background: transparent; color: #f0ece2; font-family: var(--mono); font-size: 7px; letter-spacing: .1em; cursor: pointer; }
.trailer-play { width: 29px; height: 29px; display: grid; place-items: center; margin-bottom: -1px; border: 1px solid rgba(237,232,218,.45); border-bottom: 0; color: #d45e52; font-size: 7px; }
.trailer-arrow { margin-left: 12px; color: #d45e52; font-size: 14px; }
.last-classification { position: absolute; right: 5.5%; bottom: 27px; color: rgba(239,234,223,.66); font-family: var(--mono); font-size: 6px; letter-spacing: .13em; line-height: 1.8; text-align: right; }

.colophon { min-height: 91px; display: flex; align-items: center; gap: 13px; padding: 16px 5.5vw; background: #11110f; }
.colophon-seal { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid rgba(177,67,56,.65); border-radius: 50%; color: #b94339; font-family: var(--serif); font-size: 17px; font-style: italic; text-decoration: none; }
.colophon div { display: grid; color: #dfdbd1; font-family: var(--mono); font-size: 6px; letter-spacing: .1em; line-height: 1.8; }
.colophon div span { color: #96948b; font-size: 5px; }
.colophon > p { margin: 0 auto; color: #aaa69d; font-family: var(--mono); font-size: 5px; letter-spacing: .09em; line-height: 1.8; text-align: center; }
.colophon-top { color: #b8b5ac; font-family: var(--mono); font-size: 5px; letter-spacing: .1em; line-height: 1.7; text-align: right; text-decoration: none; }

.trailer-dialog { width: min(920px, calc(100% - 28px)); max-width: none; padding: 0; border: 1px solid rgba(238,232,219,.28); background: #121311; color: var(--soft-white); box-shadow: 0 22px 100px #000b; }
.trailer-dialog::backdrop { background: rgba(7,8,7,.88); backdrop-filter: blur(5px); }
.dialog-header { min-height: 43px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 8px 13px; font-family: var(--mono); font-size: 7px; letter-spacing: .1em; }
.dialog-header i { color: #a29e93; font-style: normal; }
.dialog-close { width: 28px; height: 28px; border: 1px solid rgba(255,255,255,.25); background: transparent; color: white; font-size: 20px; cursor: pointer; }
.video-frame { aspect-ratio: 16 / 9; background: #000; }
.video-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
body:has(.trailer-dialog[open]) { overflow: hidden; }

@media (min-width: 1600px) { .cover-copy { margin-left: max(10.5vw, calc((100vw - 1230px)/2)); } }
@media (max-width: 900px) {
  .cover-art { left: 23%; }
  .cover-art img { right: -13%; width: 92vw; object-position: 52% 38%; }
  .cover-copy { width: 62vw; margin-left: 7vw; }
  .cover h1 { font-size: clamp(52px, 7.1vw, 70px); }
  .case-grid { grid-template-columns: 1fr 1fr 48px; gap: 4vw; }
  .case-margin { font-size: 5px; }
  .street-map { grid-template-columns: .65fr 1.35fr; gap: 4vw; }
  .map-labels { font-size: 7px; }
  .people { gap: 4vw; }
  .person { grid-template-columns: 22px 1fr; gap: 8px; }
  .person small { grid-column: 2; margin-top: -19px; }
}
@media (max-width: 620px) {
  html { scroll-padding-top: 14px; }
  .masthead { height: 62px; padding-inline: 17px; }
  .seal svg { width: 31px; height: 31px; }
  .seal { gap: 7px; font-size: 6px; }
  .masthead-center { gap: 7px; font-size: 5px; letter-spacing: .08em; }
  .masthead-center i { width: 12px; }
  .sound-button { gap: 4px; padding-left: 8px; font-size: 5px; }
  .sound-icon { font-size: 13px; }
  .cover { min-height: max(730px, 100svh); align-items: end; }
  .cover-art { inset: 0; }
  .cover-art img { top: -4%; right: -31%; width: 124%; height: 96%; object-position: 50% 28%; filter: saturate(.72) contrast(1.05) brightness(.76); }
  .cover-shade { background: linear-gradient(90deg, rgba(17,17,15,.48), rgba(17,17,15,.05)), linear-gradient(0deg, #11110f 3%, rgba(17,17,15,.91) 25%, rgba(17,17,15,.22) 68%, rgba(17,17,15,.12)); }
  .cover-copy { width: calc(100% - 40px); margin: 0 20px 101px; }
  .file-label { gap: 6px; margin-bottom: 18px; font-size: 5px; letter-spacing: .08em; }
  .cover h1 { font-size: clamp(48px, 11.6vw, 68px); }
  .cover-deck { margin-top: 14px; font-size: 10px; }
  .cover-cta { gap: 9px; margin-top: 21px; font-size: 6px; }
  .cta-seal { width: 31px; height: 31px; }
  .cover-credit { margin-top: 26px; font-size: 5px; }
  .cover-registration { top: 23%; right: 18px; bottom: auto; font-size: 5px; }
  .cover-registration span:first-child { font-size: 9px; }
  .cover-foot { right: 20px; bottom: 22px; left: 20px; gap: 8px; font-size: 5px; }
  .cover-foot span:first-child { max-width: 58%; line-height: 1.6; }
  .cover-foot-dash { width: 17px; flex: 0 0 17px; }
  .case-file { padding: 20px 23px 18px 29px; }
  .case-file::before { left: 17px; }
  .case-topline { flex-wrap: wrap; gap: 6px 10px; font-size: 5px; }
  .case-topline span:nth-child(2) { order: 3; width: 100%; }
  .case-grid { grid-template-columns: 1fr; gap: 21px; padding: 42px 0 29px; }
  .case-headline .section-index { margin-bottom: 14px; }
  .case-headline h2 { font-size: clamp(55px, 13vw, 76px); }
  .red-pencil { right: 6%; bottom: -7px; font-size: 15px; }
  .case-body { max-width: 100%; padding: 0; font-size: 9px; }
  .case-lead { max-width: 300px; font-size: 17px; }
  .case-margin { display: none; }
  .case-bottom { flex-wrap: wrap; gap: 7px 12px; font-size: 5px; }
  .street-map { display: block; min-height: 0; padding: 59px 24px 54px; }
  .map-heading h2 { font-size: 57px; }
  .map-description { max-width: 290px; font-size: 9px; }
  .map-stamp { margin-top: 15px; }
  .map-drawing { margin-top: 24px; margin-right: -5px; margin-left: -5px; }
  .map-labels { font-size: 8px; }
  .map-footer { right: 24px; bottom: 19px; left: 24px; flex-direction: column; gap: 4px; font-size: 5px; }
  .interval { min-height: 443px; padding: 62px 23px; }
  .interval-mark { top: 13%; right: -5%; width: 260px; transform: none; }
  .interval-content { width: 100%; }
  .interval h2 { font-size: clamp(43px, 10vw, 60px); }
  .interval-content > p:not(.section-index) { max-width: 275px; font-size: 9px; }
  .timeline { grid-template-columns: 91px minmax(38px,1fr) 91px; gap: 6px; margin-top: 31px; }
  .timeline-point { min-width: 0; gap: 7px; }
  .timeline-point span { font-size: 20px; }
  .timeline-point strong { font-size: 4px; letter-spacing: .06em; }
  .timeline-gap { gap: 5px; font-size: 5px; }
  .people { display: block; padding: 66px 24px 49px; }
  .people-heading h2 { font-size: clamp(51px, 12vw, 70px); }
  .people-heading > p:last-child { font-size: 8px; }
  .people-list { margin-top: 29px; }
  .person { min-height: 65px; grid-template-columns: 23px 1fr auto; gap: 8px; }
  .person strong { font-size: 16px; }
  .person small { grid-column: auto; margin-top: 0; font-size: 7px; }
  .people-note { margin: 14px 0 0; font-size: 5px; text-align: right; }
  .last-page { min-height: 412px; align-items: end; }
  .last-art img { object-position: 57% center; }
  .last-page::after { background: linear-gradient(90deg, rgba(12,14,14,.72), rgba(12,14,14,.16)), linear-gradient(0deg, rgba(12,14,14,.94), rgba(12,14,14,.48) 41%, rgba(12,14,14,.08)); }
  .last-copy { padding: 0 22px 71px; }
  .last-copy h2 { font-size: clamp(49px, 12vw, 68px); }
  .last-copy .section-index { font-size: 5px; }
  .trailer-trigger { gap: 9px; font-size: 6px; }
  .last-classification { right: 21px; bottom: 17px; font-size: 5px; }
  .colophon { min-height: 79px; gap: 8px; padding: 12px 16px; }
  .colophon-seal { width: 27px; height: 27px; flex: 0 0 27px; font-size: 15px; }
  .colophon div { font-size: 5px; }
  .colophon div span { font-size: 4px; }
  .colophon > p { font-size: 4px; }
  .colophon-top { font-size: 4px; }
}
@media (max-width: 370px) {
  .masthead-center { display: none; }
  .cover h1 { font-size: 46px; }
  .file-label { font-size: 4px; }
  .case-file { padding-right: 19px; }
  .person { grid-template-columns: 20px 1fr; }
  .person small { grid-column: 2; margin-top: -20px; }
  .colophon > p { display: none; }
  .colophon-top { margin-left: auto; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; } }
