:root{--ink:#0a0b0c;--paper:#d7cfbb;--fog:#a9a79f;--line:rgba(255,255,255,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#f1eee5;font-family:Georgia,'Times New Roman',serif}.topbar{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:20px 28px;background:linear-gradient(#08090bd9,transparent)}.brand{font:600 12px/1.2 Arial,sans-serif;letter-spacing:.22em;color:#eee;text-decoration:none}.menu{border:1px solid #ffffff44;background:#090a0bb8;color:#eee;padding:10px 14px;font:700 10px Arial;letter-spacing:.18em}.nav{position:absolute;right:28px;top:62px;background:#0b0c0ef2;border:1px solid #ffffff22;padding:18px;display:none;min-width:220px}.nav.open{display:grid}.nav a{color:#ddd;text-decoration:none;font:12px Arial;letter-spacing:.12em;padding:9px}.scene{position:relative;min-height:100svh;overflow:hidden;padding:9vh 8vw;display:flex;align-items:center}.opening{justify-content:center;text-align:center;background:radial-gradient(ellipse at 50% 76%,#8a6d3b55 0 9%,transparent 34%),linear-gradient(#05070b 0 58%,#12171b 59% 70%,#050608 71%)}.skyline{position:absolute;left:0;right:0;bottom:29%;height:17%;opacity:.65;background:linear-gradient(90deg,transparent 0 6%,#181b1e 6% 9%,transparent 9% 13%,#202326 13% 18%,transparent 18% 21%,#15181a 21% 27%,transparent 27% 31%,#232629 31% 38%,transparent 38% 43%,#171a1d 43% 48%,transparent 48% 53%,#25282a 53% 60%,transparent 60% 66%,#16191c 66% 72%,transparent 72% 77%,#222527 77% 84%,transparent 84%)}.river-glow{position:absolute;left:-10%;right:-10%;bottom:0;height:32%;background:repeating-linear-gradient(175deg,#30353a55 0 2px,transparent 2px 16px),linear-gradient(#111820,#030506)}.opening-copy{z-index:2}.eyebrow{font:700 11px Arial,sans-serif;letter-spacing:.28em;color:#bbb6aa}.opening h1{font-size:clamp(64px,13vw,180px);letter-spacing:.04em;margin:0;line-height:.8}.year{font-size:clamp(28px,5vw,58px);letter-spacing:.5em;margin:28px 0 0;padding-left:.5em}.scroll{margin-top:15vh;font:10px Arial;letter-spacing:.2em;color:#aaa}.portrait-scene{justify-content:center;gap:8vw;background:radial-gradient(circle at 25% 50%,#3b352b 0,transparent 42%),#090a0b}.portrait-wrap{width:min(38vw,430px);filter:grayscale(1) sepia(.18);box-shadow:0 0 80px #000}.portrait-wrap img{display:block;width:100%;max-height:72vh;object-fit:cover}.lines{max-width:560px}.lines p{font-size:clamp(20px,3vw,38px);margin:.35em 0;color:#c7c2b7}.lines h2{font-size:clamp(38px,6vw,80px);margin:.8em 0 0}.city-scene{background:linear-gradient(115deg,#0b0d0f,#22201b 48%,#090a0b)}.texture{position:absolute;inset:0;opacity:.15;background:repeating-linear-gradient(90deg,transparent 0 80px,#fff 81px,transparent 82px)}.panel{max-width:780px;z-index:2}.panel h2,.industry-copy h2,.press-copy h2,.war-copy h2{font-size:clamp(42px,6vw,78px);line-height:.95;margin:.2em 0}.panel p,.industry-copy p,.press-copy p,.war-copy p,.archive-copy p{font-size:clamp(17px,2vw,24px);line-height:1.55;color:#d1ccc0}.chapter-strip{position:absolute;bottom:8vh;left:8vw;right:8vw;display:flex;gap:18px;flex-wrap:wrap}.chapter-strip span{border-top:1px solid var(--line);padding-top:10px;min-width:150px;font:700 10px Arial;letter-spacing:.18em}.archive-scene{background:#c8c0ae;color:#171717}.archive-grid{display:grid;grid-template-columns:minmax(280px,1fr) 1fr;gap:7vw;align-items:center}.archive-grid figure{margin:0;transform:rotate(-1.5deg);background:#e8e0cf;padding:14px;box-shadow:0 20px 50px #0004}.archive-grid img{width:100%;display:block;filter:grayscale(.9) sepia(.15)}figcaption{font:700 9px Arial;letter-spacing:.16em;margin-top:10px}.archive-copy .eyebrow{color:#4c4a45}.archive-copy h2{font-size:clamp(38px,5vw,70px);margin:.2em 0}.archive-copy p{color:#333}.note{border-left:3px solid #333;padding-left:18px}.industry-scene{background:linear-gradient(#1b1b19,#080909);gap:7vw}.industry-copy{max-width:650px;z-index:2}.document{width:min(38vw,500px);margin:0;background:#d8d0bd;padding:12px;color:#171717;transform:rotate(1.5deg);box-shadow:0 30px 70px #000}.document img{width:100%;display:block;filter:sepia(.25)}.smoke{position:absolute;width:70vw;height:70vw;border-radius:50%;background:radial-gradient(circle,#aaa2 0,transparent 60%);right:-20vw;top:-20vw}.press-scene{background:repeating-linear-gradient(0deg,#111 0 2px,#151515 2px 5px)}.press-copy{max-width:900px}.bigline{font-style:italic;border-top:1px solid var(--line);padding-top:30px;margin-top:40px}.war-scene{background:#0b0c0d;gap:8vw}.war-photo{width:min(36vw,430px);margin:0}.war-photo img{width:100%;filter:grayscale(1);box-shadow:0 0 80px #000}.war-copy{max-width:650px}.badge-scene{background:linear-gradient(110deg,#050608 0 45%,#14181b 75%,#040506);min-height:120svh}.streetlamp{position:absolute;right:25%;top:0;width:5px;height:52%;background:#34383a;box-shadow:0 0 100px 45px #d9c48722}.callbox{position:absolute;right:17%;top:36%;width:150px;height:235px;background:#171b1d;border:5px solid #34393c;box-shadow:0 25px 45px #000}.callbox-top{text-align:center;border-bottom:4px solid #34393c;padding:10px;font:bold 16px Arial;letter-spacing:.18em}.callbox-door{text-align:center;padding-top:55px;font:bold 20px Arial;line-height:1.4;letter-spacing:.12em}.date{align-self:flex-start;margin-top:15vh;max-width:600px}.date h2{font-size:clamp(52px,8vw,110px);line-height:.85;margin:.2em 0}.date p:last-child{font-size:22px;color:#c9c5bb}.uniform{position:absolute;right:7vw;bottom:5vh;width:min(28vw,340px);margin:0}.uniform img{width:100%;filter:grayscale(1);box-shadow:0 0 60px #000}.reveal-scene{justify-content:center;text-align:center;background:radial-gradient(circle at center,#27241e,#08090a 60%)}.reveal-copy{max-width:980px}.reveal-copy h2{font-size:clamp(45px,7vw,92px);margin:.2em 0}.book-label{font:700 11px Arial;letter-spacing:.3em;color:#aaa}.reveal-copy h3{font-size:clamp(35px,5vw,70px);margin:.2em 0 1em}.reveal-copy>p:last-of-type{font-size:20px;color:#c9c5ba}.future{margin:60px auto 0;border:1px solid #ffffff30;padding:22px;font:700 12px Arial;letter-spacing:.2em;max-width:520px}.future span{display:block;font-weight:400;letter-spacing:.08em;color:#aaa;margin-top:8px}footer{padding:35px;text-align:center;background:#050607;color:#777;font:10px Arial;letter-spacing:.15em}.reveal{opacity:0;transform:translateY(34px);transition:opacity 1s ease,transform 1s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:800px){.scene{padding:12vh 7vw;min-height:100svh}.portrait-scene,.industry-scene,.war-scene{flex-direction:column;justify-content:center}.portrait-wrap,.document,.war-photo{width:min(82vw,430px)}.archive-grid{grid-template-columns:1fr}.chapter-strip{position:relative;left:auto;right:auto;bottom:auto;margin-top:60px}.city-scene{display:block;padding-top:24vh}.uniform{width:42vw;right:4vw;bottom:4vh}.callbox{right:7vw;top:46%;transform:scale(.72);transform-origin:right center}.date{margin-top:8vh;max-width:80%}.brand{max-width:180px}.nav{right:18px}.opening h1{font-size:20vw}}

/* Production Screen 02 — Before the Badge. Archival image placement intentionally reserved. */
.before-scene{min-height:245svh;display:block;padding:0;background:linear-gradient(#090b0e 0%,#0c0f12 32%,#15130f 70%,#08090b 100%)}
.before-river{position:absolute;left:-10%;right:-10%;top:0;height:25svh;opacity:.58;background:repeating-linear-gradient(175deg,#30353a55 0 2px,transparent 2px 16px),linear-gradient(#111820,#080a0c);mask-image:linear-gradient(#000,transparent);-webkit-mask-image:linear-gradient(#000,transparent)}
.before-haze{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 18% 35%,#8a6d3b18,transparent 32%),radial-gradient(ellipse at 80% 64%,#a7b5bd10,transparent 30%)}
.before-copy{position:relative;z-index:2;width:min(1120px,86vw);margin:0 auto;padding:24svh 0 14svh}
.before-line{font-size:clamp(29px,4.1vw,62px);line-height:1.08;margin:0 0 19svh;color:#c8c3b8;letter-spacing:-.015em}
.before-line:nth-child(4){margin-bottom:25svh;color:#e7e2d7}
.detroit-statement{font-size:clamp(64px,10vw,150px);line-height:.86;letter-spacing:-.035em;margin:0 0 13svh;color:#f1eee5;max-width:1000px}
.detroit-fragments{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 9svh}
.detroit-fragments span{padding:22px 14px 22px 0;font:700 10px Arial,sans-serif;letter-spacing:.23em;color:#aaa69d;border-bottom:1px solid #ffffff10}
.city-thesis{max-width:760px;font-size:clamp(23px,3vw,42px);line-height:1.35;color:#d3cec2;margin:0 0 18svh}
.ralph-intro{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(320px,1.15fr);column-gap:8vw;align-items:end;margin:0 0 18svh}
.ralph-intro .eyebrow{grid-column:1;margin:0 0 18px}
.ralph-intro h3{grid-column:1;font-size:clamp(42px,6vw,86px);line-height:.93;margin:0;letter-spacing:-.025em}
.photo-reserve{grid-column:2;grid-row:1/3;min-height:44svh;border:1px solid #ffffff24;background:linear-gradient(135deg,#ffffff08,#ffffff02);display:grid;place-items:center;color:#77736b;text-align:center;font:700 9px/1.7 Arial,sans-serif;letter-spacing:.22em}
.bridge{margin:0;font:700 clamp(15px,2vw,24px)/1.8 Arial,sans-serif;letter-spacing:.22em;color:#aaa69d}
.bridge strong{font-size:1.18em;color:#f1eee5}
@media(max-width:800px){.before-copy{width:86vw;padding-top:20svh}.before-line{margin-bottom:16svh}.detroit-fragments{grid-template-columns:1fr 1fr}.ralph-intro{grid-template-columns:1fr;gap:36px}.ralph-intro .eyebrow,.ralph-intro h3,.photo-reserve{grid-column:1}.photo-reserve{grid-row:auto;min-height:48svh}}

/* Prototype 03 — historical Detroit scenery layer. Family/archive photographs remain user-selected. */
.scenic-scene{isolation:isolate}
.scenic-image{position:absolute;inset:-6%;z-index:-3;background-size:cover;background-position:center;filter:grayscale(1) sepia(.14) contrast(1.08);transform:scale(1.06)}
.scenic-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(5,6,7,.90) 0%,rgba(7,8,9,.70) 42%,rgba(6,7,8,.48) 100%),linear-gradient(0deg,rgba(4,5,6,.84),rgba(4,5,6,.18) 50%,rgba(4,5,6,.72));}
.paper-shade{background:linear-gradient(90deg,rgba(209,200,181,.92) 0%,rgba(199,189,170,.78) 48%,rgba(28,27,24,.36) 100%)}
.scenic-woodward{background-image:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15307v.jpg');background-position:center 45%}
.scenic-traffic{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg');background-position:center}
.scenic-rouge{background-image:url('https://cdn.loc.gov/service/pnp/cph/3c20000/3c24000/3c24500/3c24506v.jpg');background-position:center 46%}
.scenic-news{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27975v.jpg');background-position:center}
.scenic-assembly{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27966v.jpg');background-position:center}
.before-scene:before{content:"";position:absolute;inset:22% -5% 0;z-index:0;background:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15308v.jpg') center 10%/cover no-repeat;filter:grayscale(1) sepia(.12) contrast(1.1);opacity:.27;mask-image:linear-gradient(transparent 0,#000 16%,#000 78%,transparent 100%);-webkit-mask-image:linear-gradient(transparent 0,#000 16%,#000 78%,transparent 100%)}
.before-copy{z-index:2}
.archive-scene{color:#171717;background:#c8c0ae}
.archive-grid{position:relative;z-index:2}
.archive-reserve{min-height:58svh;background:rgba(237,229,211,.22);border-color:rgba(30,30,30,.42);color:#393731;box-shadow:0 18px 60px rgba(0,0,0,.22)}
.war-reserve{width:min(36vw,430px);min-height:62svh;background:rgba(255,255,255,.035)}
.uniform.photo-reserve{position:absolute;right:7vw;bottom:5vh;width:min(28vw,340px);min-height:48svh;margin:0;background:rgba(255,255,255,.035)}
.city-scene,.industry-scene,.press-scene,.war-scene{background:#090a0b}
.panel,.industry-copy,.press-copy,.war-copy{position:relative;z-index:2;text-shadow:0 2px 26px #000}
.document{position:relative;z-index:2}
.press-copy{position:relative;z-index:2}
.source-credit{font:9px Arial,sans-serif;letter-spacing:.12em;color:#777}
@media(max-width:800px){.scenic-image{inset:-2%;background-attachment:scroll}.war-reserve{width:min(82vw,430px);min-height:52svh}.uniform.photo-reserve{width:42vw;right:4vw;bottom:4vh;min-height:42svh}.archive-reserve{min-height:48svh}}

/* Prototype 04 — author-selected archival images added without changing the established layout. */
.family-placement{grid-template-columns:minmax(320px,.82fr) minmax(360px,1.18fr);gap:8vw;align-items:center}
.family-frame{margin:0;width:min(36vw,460px);justify-self:start;background:#e5dcc9;padding:11px 11px 9px;color:#171717;border:1px solid rgba(50,43,32,.55);box-shadow:0 24px 70px rgba(0,0,0,.34);transform:rotate(-.65deg)}
.family-frame img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 43%;filter:grayscale(.92) sepia(.12) contrast(1.04)}
.family-frame figcaption{margin:9px 2px 0;color:#3b3933}
.archive-scene .scenic-image{background-position:center 54%}
.archive-copy{max-width:610px;justify-self:end}

.document{width:min(40vw,560px);padding:10px 10px 8px;overflow:hidden}
.document img{aspect-ratio:1.39/1;object-fit:cover;object-position:50% 49%;filter:sepia(.2) contrast(1.02)}

.selected-war{position:relative;z-index:2;background:#d9d1c1;padding:10px 10px 8px;color:#171717;box-shadow:0 24px 70px rgba(0,0,0,.48);transform:rotate(-.7deg)}
.selected-war img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 34%;filter:grayscale(1) sepia(.08) contrast(1.04)}
.selected-war figcaption{color:#302e2a}
.war-scene .scenic-shade{background:linear-gradient(90deg,rgba(4,5,6,.82) 0%,rgba(5,6,7,.56) 42%,rgba(5,6,7,.44) 100%),linear-gradient(0deg,rgba(4,5,6,.82),rgba(4,5,6,.12) 52%,rgba(4,5,6,.62))}

.callbox-archive{position:absolute;right:5.5vw;bottom:5.5vh;width:min(38vw,520px);display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:10px;z-index:3;align-items:end}
.callbox-archive figure{margin:0;background:#101315;border:1px solid rgba(255,255,255,.18);padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.45)}
.callbox-archive img{display:block;width:100%;height:190px;object-fit:cover;filter:grayscale(.72) sepia(.06) brightness(.82) contrast(1.08)}
.callbox-archive figure:first-child img{object-position:47% 43%}
.callbox-archive figure:nth-child(2) img{object-position:50% 28%}
.callbox-archive figure:nth-child(3) img{object-position:52% 28%}
.callbox-archive figcaption{color:#9e9a91;text-align:center;font-size:8px}
.badge-scene .date{max-width:52vw;z-index:4}

.reveal-scene{padding-top:12vh;padding-bottom:12vh}
.book-one-grid{width:min(1180px,88vw);display:grid;grid-template-columns:minmax(300px,.8fr) minmax(440px,1.2fr);gap:7vw;align-items:center}
.patrolmen-frame{margin:0;background:#d9d1c1;padding:10px 10px 8px;color:#171717;box-shadow:0 28px 80px rgba(0,0,0,.5);transform:rotate(-.6deg)}
.patrolmen-frame img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;object-position:50% 57%;filter:grayscale(1) sepia(.07) contrast(1.05)}
.patrolmen-frame figcaption{color:#302e2a}
.book-one-grid .reveal-copy{text-align:left}

@media(max-width:800px){
  .family-placement{grid-template-columns:1fr;gap:42px}
  .family-frame{width:min(82vw,460px);justify-self:start}
  .archive-copy{justify-self:start}
  .document{width:min(84vw,560px)}
  .callbox-archive{position:relative;right:auto;bottom:auto;width:86vw;margin-top:54vh;grid-template-columns:1fr 1fr 1fr}
  .callbox-archive img{height:120px}
  .badge-scene .date{max-width:86vw}
  .book-one-grid{grid-template-columns:1fr;gap:48px}
  .patrolmen-frame{width:min(78vw,430px);margin:0 auto}
  .book-one-grid .reveal-copy{text-align:center}
}

/* Prototype 05 — author-directed archival crops. No generated photographs. */
.document{width:min(42vw,590px);padding:10px;background:#d8d0bd;overflow:hidden}
.document img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;filter:sepia(.18) contrast(1.03)}
.document figcaption{margin-top:8px}

/* Replace the graphic call box and three-image gallery with one tight original photograph. */
.badge-scene .callbox{display:none}
.callbox-archive{display:none}
.callbox-open-frame{position:absolute;right:6vw;bottom:7vh;width:min(37vw,500px);margin:0;padding:9px 9px 7px;background:#111416;border:1px solid rgba(255,255,255,.18);box-shadow:0 22px 60px rgba(0,0,0,.55);z-index:4;transform:rotate(.35deg)}
.callbox-open-frame img{display:block;width:100%;height:auto;object-fit:contain;object-position:center top;filter:grayscale(.22) sepia(.03) brightness(.86) contrast(1.08)}
.callbox-open-frame figcaption{color:#a7a299;text-align:center;font-size:8px;margin-top:8px}
.badge-scene .date{max-width:48vw}

/* Remove the added title area from the patrolmen source image but retain Ross's handwritten label. */
.patrolmen-frame{padding:10px 10px 8px}
.patrolmen-frame img{display:block;width:100%;aspect-ratio:auto;max-height:72svh;object-fit:contain;object-position:center;filter:grayscale(1) sepia(.07) contrast(1.05)}

@media(max-width:800px){
  .document{width:min(88vw,590px)}
  .callbox-open-frame{position:relative;right:auto;bottom:auto;width:min(86vw,500px);margin:54vh auto 0}
  .badge-scene .date{max-width:86vw}
  .patrolmen-frame img{max-height:none}
}

/* Prototype 06 — Page Two: Explore Detroit */
.back-home{color:#ddd;text-decoration:none;font:700 10px Arial,sans-serif;letter-spacing:.18em;border:1px solid #ffffff35;padding:10px 13px}
.explore-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:14vh 8vw;overflow:hidden;background:#07090b}
.explore-hero-image{position:absolute;inset:-4%;background:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15307v.jpg') center 48%/cover no-repeat;filter:grayscale(1) sepia(.13) contrast(1.12);transform:scale(1.04)}
.explore-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#060708ed 0%,#08090bbd 43%,#08090b65 78%),linear-gradient(0deg,#060708e8 0%,transparent 42%,#060708a8 100%)}
.explore-hero-copy{position:relative;z-index:2;max-width:1040px}.explore-hero h1{font-size:clamp(72px,12vw,176px);line-height:.72;letter-spacing:-.055em;margin:.15em 0 .25em;text-transform:uppercase}.explore-deck{font-size:clamp(20px,2.6vw,35px);line-height:1.35;color:#d3cec1;max-width:760px}
.detroit-doors{background:#090a0b;padding:10vh 7vw 14vh;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background-color:#292824}
.detroit-door{position:relative;min-height:390px;padding:48px;color:#eee;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:#0b0c0d;isolation:isolate}
.detroit-door:before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:grayscale(1) sepia(.12) contrast(1.12);transition:transform .7s ease,filter .7s ease}.detroit-door:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#060708f5 0%,#090a0bc0 46%,#08090b45 100%)}
.detroit-door:hover:before{transform:scale(1.035);filter:grayscale(.8) sepia(.18) contrast(1.1)}.detroit-door h2{font-size:clamp(34px,4vw,58px);line-height:.95;margin:.15em 0 .3em}.detroit-door p:not(.eyebrow){font-size:17px;line-height:1.5;color:#c9c4b9;max-width:570px}.door-number{position:absolute;top:28px;right:30px;font:700 11px Arial;letter-spacing:.22em;color:#a9a398}.door-arrow{font:700 10px Arial;letter-spacing:.2em;margin-top:18px;color:#d6c9ae}.door-city:before{background-image:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15308v.jpg')}.door-streets:before{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg')}.door-river:before{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27975v.jpg')}.door-news:before{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27966v.jpg')}.door-night:before{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg');background-position:center 70%}.door-police:before{background-image:url('assets/callbox-open-crop.jpg');background-position:center}.door-cases:before{background-image:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15307v.jpg');background-position:center 65%}.door-chronicles:before{background-image:url('assets/patrol-four-officers-labeled.webp');background-position:center 52%}
.world-preview{position:relative;min-height:86svh;display:flex;align-items:center;padding:12vh 8vw;overflow:hidden;background:#0a0b0c;background-size:cover;background-position:center;isolation:isolate}.world-preview:before{content:"";position:absolute;inset:-3%;z-index:-2;background:inherit;background-size:cover;background-position:inherit;filter:grayscale(1) sepia(.12) contrast(1.1)}.preview-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070809ef,#08090bbd 48%,#08090b6b),linear-gradient(0deg,#070809dc,transparent 48%,#070809a8)}.preview-copy{max-width:820px}.preview-copy h2{font-size:clamp(46px,7vw,92px);line-height:.92;margin:.2em 0}.preview-copy p{font-size:clamp(18px,2vw,25px);line-height:1.55;color:#d0cabf}.construction,.crime-tape{display:inline-block;margin-top:28px;padding:14px 17px;border:1px solid #ffffff35;font:700 10px Arial;letter-spacing:.18em;color:#c7c1b5}.crime-tape{background:#c3a447;color:#17130b;border:0;transform:rotate(-1deg)}.journey-button{display:inline-block;margin-top:28px;padding:14px 18px;border:1px solid #ffffff45;color:#eee;text-decoration:none;font:700 10px Arial;letter-spacing:.18em}.preview-city{background-image:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15308v.jpg')}.preview-map{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg')}.preview-river{background-image:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15307v.jpg')}.preview-news{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27975v.jpg')}.preview-night{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg');background-position:center 72%}.preview-police{background-image:url('assets/callbox-open-crop.jpg');background-position:center}.preview-cases{background-image:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15308v.jpg')}.preview-chronicles{background-image:url('assets/patrol-four-officers-labeled.webp');background-position:center 45%}
@media(max-width:800px){.explore-hero{padding:18vh 7vw 12vh}.explore-hero h1{font-size:20vw}.detroit-doors{grid-template-columns:1fr;padding:0}.detroit-door{min-height:330px;padding:34px 28px}.world-preview{min-height:78svh;padding:12vh 7vw}.back-home{font-size:8px}.explore-page .brand{max-width:170px}}

/* Prototype 07 — The City */
.city-page{background:#08090a;color:#eee}.city-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:15vh 8vw;overflow:hidden;isolation:isolate}.city-hero-image{position:absolute;inset:-4%;z-index:-2;background:url('https://collections-media.thehenryford.org/CollectionImages/_detail/photos/thf205231.jpg') center/cover no-repeat;filter:grayscale(1) sepia(.16) contrast(1.13);transform:scale(1.04)}.city-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#060708f2 0%,#08090bc7 45%,#08090b55 80%),linear-gradient(0deg,#070809e8,transparent 45%,#0708099c)}.city-hero-copy{max-width:980px}.city-hero h1{font-size:clamp(84px,15vw,210px);line-height:.69;letter-spacing:-.065em;margin:.15em 0 .2em}.city-deck{font-size:clamp(28px,4vw,55px);margin:0;color:#d7c7a7}.city-intro{max-width:760px;font-size:clamp(18px,2vw,27px);line-height:1.5;color:#d1cbc0}.city-manifest{padding:12vh 8vw;max-width:1250px}.city-manifest h2{font-size:clamp(50px,8vw,110px);line-height:.88;margin:.2em 0}.city-manifest>p:last-child{font-size:clamp(18px,2vw,26px);line-height:1.6;max-width:850px;color:#cbc5b9}.era-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#26231e}.era-card{position:relative;min-height:430px;padding:50px;display:flex;align-items:flex-end;overflow:hidden;color:#eee;text-decoration:none;isolation:isolate}.era-card:before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:grayscale(1) sepia(.16) contrast(1.12);transition:.5s}.era-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#070809f2 4%,#08090b9e 55%,#08090b44)}.era-card>span{position:absolute;top:28px;right:30px;font:700 11px Arial;letter-spacing:.22em;color:#b4aa99}.era-card h2{font-size:clamp(38px,5vw,68px);line-height:.92;margin:.15em 0}.era-card p:not(.eyebrow){max-width:600px;color:#cec7bb;line-height:1.5}.era-card:hover:before{transform:scale(1.035)}.era-river:before{background-image:url('assets/detroit-river-lansdowne-winter-1905.jpg')}.era-arrivals:before{background-image:url('assets/ford-immigrant-english-class-detroit.jpg')}.era-prohibition:before{background-image:url('assets/detroit-prohibition-underground-brewery-nara-541928.jpg');background-position:center 45%}.era-streets:before{background-image:url('assets/campus-martius-detroit-dhs.jpg');background-position:center 55%}.era-industry:before{background-image:url('assets/dhs-detroit-automobile-assembly-line.webp')}.era-war:before{background-image:url('assets/willow-run-b24-assembly-howard-hollem.jpg');background-position:center 48%}.era-postwar:before{background-image:url('assets/ross-palmer-collection-detroit-police-patrol-car-55459.jpg');background-position:center 52%}.era-change:before{background-image:url('assets/woodward-at-eight-mile-1960s-ross-palmer-collection.jpg');background-position:center 48%}.history-band{position:relative;min-height:82svh;display:flex;align-items:center;padding:12vh 8vw;background-size:cover;background-position:center;isolation:isolate}.history-band:before{content:"";position:absolute;inset:0;z-index:-2;background:inherit;background-size:cover;background-position:inherit;filter:grayscale(1) sepia(.15) contrast(1.12)}.history-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070809f2,#08090bb5 55%,#08090b4f)}.history-copy{max-width:850px}.history-copy h2{font-size:clamp(50px,8vw,104px);line-height:.9;margin:.2em 0}.history-copy p{font-size:clamp(18px,2vw,25px);line-height:1.6;color:#d0cabf}.scenic-river{background-image:url('assets/detroit-skyline-from-river-ross-palmer-collection.jpg');background-position:center 55%}.scenic-night{background-image:url('assets/detroit-police-discarding-captured-rum-runner-beer.jpg');background-position:center 52%}.city-next{padding:14vh 8vw;max-width:1200px}.city-next h2{font-size:clamp(48px,8vw,100px);line-height:.9;margin:.2em 0}.city-next>p:not(.eyebrow){font-size:clamp(18px,2vw,25px);line-height:1.6;max-width:800px;color:#ccc5b8}.city-next .journey-button{margin-right:10px}@media(max-width:800px){.city-hero{padding:18vh 7vw 12vh}.city-hero h1{font-size:24vw}.era-grid{grid-template-columns:1fr}.era-card{min-height:350px;padding:34px 28px}.city-manifest,.history-band,.city-next{padding-left:7vw;padding-right:7vw}}

/* Prototype 08 — The Streets / Geography & Crime Crawl */
.streets-page{background:#08090a;color:#eee}.streets-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:15vh 8vw;overflow:hidden;isolation:isolate}.streets-hero-image{position:absolute;inset:-4%;z-index:-2;background:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg') center 62%/cover no-repeat;filter:grayscale(1) sepia(.16) contrast(1.15);transform:scale(1.04)}.streets-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#060708f4,#08090bc8 48%,#08090b5d 82%),linear-gradient(0deg,#070809eb,transparent 45%,#070809a0)}.streets-hero-copy{max-width:1000px}.streets-hero h1{font-size:clamp(84px,15vw,205px);line-height:.69;letter-spacing:-.065em;margin:.15em 0 .2em}.streets-deck{font-size:clamp(27px,4vw,54px);color:#d4c29f;margin:0}.streets-intro{max-width:820px;font-size:clamp(18px,2vw,26px);line-height:1.55;color:#d2ccc0}.maproom-intro{padding:12vh 8vw;max-width:1250px}.maproom-intro h2,.crawl-doors>h2,.streets-next h2{font-size:clamp(50px,8vw,108px);line-height:.88;margin:.2em 0}.maproom-intro>p:last-child,.streets-next>p:not(.eyebrow){font-size:clamp(18px,2vw,26px);line-height:1.6;max-width:850px;color:#cbc5b9}.map-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#29251e}.map-mode{position:relative;min-height:560px;padding:52px;color:#eee;text-decoration:none;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate}.map-mode:before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:grayscale(1) sepia(.18) contrast(1.15);transition:.6s}.map-mode:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#070809f5,#090a0bb5 55%,#08090b4a)}.map-mode:hover:before{transform:scale(1.035)}.mode-map:before{background-image:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15308v.jpg')}.mode-board:before{background-image:url('assets/callbox-open-crop.jpg');background-position:center}.map-mode>span{position:absolute;top:30px;right:32px;font:700 11px Arial;letter-spacing:.2em;color:#b3aa9a}.map-mode h2{font-size:clamp(42px,5vw,70px);line-height:.92;margin:.15em 0}.map-mode p:not(.eyebrow){max-width:600px;color:#d0c9bd;line-height:1.55}.map-mode b{display:inline-block;margin-top:20px;font:700 10px Arial;letter-spacing:.2em;color:#d8c7a4}.street-map-room{padding:12vh 7vw;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:6vw;align-items:center;background:#11100d}.map-paper{position:relative;aspect-ratio:1.35/1;overflow:hidden;border:1px solid #786c55;background-color:#d2c39f;background-image:linear-gradient(#665b4618 1px,transparent 1px),linear-gradient(90deg,#665b4618 1px,transparent 1px),radial-gradient(circle at 45% 45%,#e4d6b5,#b8a77e);background-size:24px 24px,24px 24px,100% 100%;box-shadow:inset 0 0 80px #4a3d2580}.map-paper:before,.map-paper:after{content:"";position:absolute;background:#655c49;height:1px;opacity:.45;transform-origin:left}.map-paper:before{width:120%;left:-10%;top:36%;transform:rotate(-13deg)}.map-paper:after{width:105%;left:4%;top:64%;transform:rotate(8deg)}.river-line{position:absolute;left:-4%;right:-4%;bottom:5%;height:18%;border-top:4px double #5e746e;border-radius:50% 45% 0 0;color:#4f625e;font:700 11px Arial;letter-spacing:.28em;padding:18px 0 0 10%;transform:rotate(-2deg)}.route{position:absolute;left:48%;top:50%;transform-origin:0 50%;height:3px;width:43%;background:#8a3128;box-shadow:0 0 0 1px #7b2d2428}.route i{position:absolute;width:10px;height:10px;border-radius:50%;background:#8a3128;left:-5px;top:-4px}.route strong{position:absolute;left:42%;top:-20px;font:700 9px Arial;letter-spacing:.12em;color:#6b2a24;white-space:nowrap}.r-woodward{transform:rotate(-72deg);width:36%}.r-michigan{transform:rotate(160deg);width:48%}.r-grand{transform:rotate(-145deg);width:48%}.r-tireman{transform:translate(-25%,-800%) rotate(177deg);width:38%}.r-mcgraw{transform:translate(-22%,700%) rotate(170deg);width:34%}.map-pin{position:absolute;color:#342f27;font:700 8px Arial;letter-spacing:.08em}.map-pin em{display:block;width:12px;height:12px;border:3px solid #8a3128;border-radius:50%;background:#d6c7a4;box-shadow:0 0 0 2px #d6c7a4}.map-pin label{position:absolute;left:16px;top:-2px;white-space:nowrap}.pin-downtown{left:48%;top:49%}.pin-beaubien{left:56%;top:42%}.pin-mcgraw{left:27%;top:61%}.pin-tireman{left:20%;top:45%}.map-copy h2,.board-copy h2,.drive-copy h2{font-size:clamp(48px,7vw,96px);line-height:.9;margin:.2em 0}.map-copy p,.board-copy p,.drive-copy p{font-size:clamp(17px,1.8vw,24px);line-height:1.6;color:#cec7ba}.map-key{display:flex;gap:25px;flex-wrap:wrap;margin-top:30px;font:700 9px Arial;letter-spacing:.14em;color:#aaa294}.map-key span{display:flex;align-items:center;gap:9px}.key-line{display:inline-block;width:34px;height:3px;background:#8a3128}.key-pin{display:inline-block;width:11px;height:11px;border:3px solid #8a3128;border-radius:50%}.case-board-room{padding:13vh 7vw;background:#090a0b}.board-copy{max-width:900px;margin-bottom:8vh}.case-board{position:relative;max-width:1180px;margin:auto;aspect-ratio:1.62/1;background:radial-gradient(circle at 50% 45%,#5c4c34,#30281e 70%,#1b1712);border:14px solid #1e1a15;box-shadow:inset 0 0 90px #0009;overflow:hidden}.case-board svg{position:absolute;inset:0;width:100%;height:100%}.case-board path{fill:none;stroke:#8e302a;stroke-width:4;opacity:.8}.file{position:absolute;width:22%;min-height:20%;padding:18px;background:#d3c49f;color:#2d2922;box-shadow:0 5px 14px #0008;transform:rotate(-2deg);border:1px solid #887b5e}.file:before{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:#922f28;top:10px;left:50%;box-shadow:0 2px 3px #0008}.file small{font:700 9px Arial;letter-spacing:.15em;color:#716650}.file strong{display:block;font-size:clamp(16px,2vw,27px);margin-top:12px}.file p{font:12px Arial;margin:8px 0;color:#625a49}.f1{left:5%;top:9%}.f2{right:4%;top:8%;transform:rotate(2deg)}.f3{right:4%;bottom:7%;transform:rotate(-1deg)}.f4{left:5%;bottom:8%;transform:rotate(2deg)}.f5{left:39%;top:38%;width:25%;transform:rotate(.5deg);background:#e0d2ad}.crawl-doors{padding:13vh 7vw;background:#0d0e0f}.crawl-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#2c2923;margin-top:7vh}.crawl-grid article{padding:38px 30px;min-height:290px;background:#111214}.crawl-grid span{font:700 10px Arial;letter-spacing:.2em;color:#a99c85}.crawl-grid h3{font-size:clamp(26px,3vw,42px);margin:40px 0 15px}.crawl-grid p{line-height:1.55;color:#bfb8ac}.drive-detroit{position:relative;min-height:82svh;padding:12vh 8vw;display:flex;align-items:center;background:url('https://www.detroithistorical.org/sites/default/files/styles/gallery_full_1x/public/artifact-media/119/1945119001.JPG.webp?itok=v4nD9UZy') center 68%/cover no-repeat;isolation:isolate}.drive-detroit:before{content:"";position:absolute;inset:0;z-index:-2;background:inherit;filter:grayscale(1) sepia(.15) contrast(1.14)}.drive-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070809f2,#08090bb4 55%,#08090b5b)}.drive-copy{max-width:900px}.year-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:35px}.year-strip span{padding:12px 15px;border:1px solid #ffffff35;font:700 10px Arial;letter-spacing:.15em}.year-strip .sealed{background:#b99c4a;color:#17130b;border:0}.streets-next{padding:14vh 8vw;max-width:1250px}.streets-next .journey-button{margin-right:10px}@media(max-width:800px){.streets-hero{padding:18vh 7vw 12vh}.streets-hero h1{font-size:24vw}.map-modes{grid-template-columns:1fr}.map-mode{min-height:390px;padding:34px 28px}.street-map-room{grid-template-columns:1fr;padding:10vh 7vw}.map-paper{aspect-ratio:1/1}.case-board{aspect-ratio:.9/1;min-height:690px}.file{width:36%}.f1{left:5%;top:6%}.f2{right:5%;top:8%}.f3{right:5%;bottom:7%}.f4{left:5%;bottom:7%}.f5{left:30%;top:40%;width:42%}.crawl-grid{grid-template-columns:1fr 1fr}.crawl-doors,.streets-next{padding-left:7vw;padding-right:7vw}}@media(max-width:520px){.crawl-grid{grid-template-columns:1fr}.map-pin label{font-size:6px}.route strong{font-size:6px}}

/* Prototype 09 — The River */
.river-page{background:#07090a;color:#f0ede4}.river-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:15vh 8vw;overflow:hidden;isolation:isolate}.river-hero-image{position:absolute;inset:-4%;z-index:-2;background:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15307v.jpg') center 55%/cover no-repeat;filter:grayscale(1) sepia(.12) contrast(1.12);transform:scale(1.04)}.river-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#050708f4,#080a0bc5 48%,#07101562 82%),linear-gradient(0deg,#06090aec,transparent 45%,#0607088f)}.river-hero-copy{max-width:1060px}.river-hero h1{font-size:clamp(92px,16vw,220px);line-height:.67;letter-spacing:-.065em;margin:.16em 0 .25em}.river-deck{font-size:clamp(25px,3.8vw,52px);line-height:1.08;color:#c9c0aa;margin:0}.river-manifest{padding:14vh 8vw;max-width:1300px}.river-manifest h2{font-size:clamp(52px,8vw,108px);line-height:.88;margin:.2em 0}.river-manifest>p:last-child{font-size:clamp(18px,2vw,27px);line-height:1.62;max-width:900px;color:#cbc5b8}.river-chapters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#2b2925}.river-card{position:relative;min-height:440px;padding:50px;color:#eee;text-decoration:none;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate}.river-card:before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:grayscale(1) sepia(.14) contrast(1.12);transition:.6s}.river-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#060809f7,#07090bb0 60%,#0710124f)}.river-card:hover:before{transform:scale(1.035)}.river-card>span{position:absolute;top:28px;right:30px;font:700 11px Arial;letter-spacing:.2em;color:#b4ad9e}.river-card h2{font-size:clamp(37px,5vw,68px);line-height:.9;margin:.16em 0}.river-card p:not(.eyebrow){max-width:650px;line-height:1.55;color:#d0c9bc}.rc-working:before{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27975v.jpg')}.rc-border:before{background-image:url('https://www.detroithistorical.org/sites/default/files/styles/gallery_full_1x/public/artifact-media/203/2014002818.jpg.webp?itok=7rsA3Ne5')}.rc-prohibition:before{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg')}.rc-industry:before{background-image:url('https://cdn.loc.gov/service/pnp/cph/3c20000/3c24000/3c24500/3c24506v.jpg')}.rc-crossings:before{background-image:url('https://cdn.loc.gov/service/pnp/ppmsca/15300/15308v.jpg')}.rc-policing:before{background-image:url('assets/callbox-open-crop.jpg');background-position:center}.river-band{position:relative;min-height:82svh;display:flex;align-items:center;padding:12vh 8vw;background-size:cover;background-position:center;isolation:isolate}.river-band:before{content:"";position:absolute;inset:0;z-index:-2;background:inherit;background-size:cover;background-position:inherit;filter:grayscale(1) sepia(.14) contrast(1.15)}.river-band-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#050708f2,#07090bb8 56%,#07101255)}.river-band-copy{max-width:900px}.river-band-copy h2,.border-copy h2,.river-route-copy h2,.crossing-copy h2,.river-next h2{font-size:clamp(50px,8vw,106px);line-height:.88;margin:.2em 0}.river-band-copy p,.border-copy p,.river-route-copy p,.crossing-copy p,.river-next>p:not(.eyebrow){font-size:clamp(18px,2vw,26px);line-height:1.62;color:#d0c9bc}.river-working{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27975v.jpg')}.river-prohibition{background-image:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg');background-position:center 65%}.river-industry{background-image:url('https://cdn.loc.gov/service/pnp/cph/3c20000/3c24000/3c24500/3c24506v.jpg')}.river-policing{background-image:url('assets/callbox-open-crop.jpg');background-position:center 40%}.river-tag{display:inline-block;margin-top:28px}.border-room{padding:13vh 8vw;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:7vw;align-items:center;background:#101112}.border-copy{max-width:680px}.border-diagram{position:relative;min-height:560px;border:1px solid #625f57;background:#111;overflow:hidden}.shore{position:absolute;left:0;right:0;height:24%;display:flex;align-items:center;justify-content:center;flex-direction:column;letter-spacing:.18em}.shore strong{font:700 clamp(26px,4vw,52px) Arial}.shore small{font:700 9px Arial;letter-spacing:.25em;color:#aaa}.detroit-shore{top:0;background:linear-gradient(#161819,#252422)}.windsor-shore{bottom:0;background:linear-gradient(#282623,#151719)}.waterway{position:absolute;top:24%;bottom:24%;left:0;right:0;background:repeating-linear-gradient(173deg,#33454a66 0 2px,transparent 2px 21px),linear-gradient(#17262a,#091317);display:flex;align-items:center;justify-content:center}.waterway>span{font:700 11px Arial;letter-spacing:.35em;color:#aeb7b6;transform:rotate(-7deg)}.boat{position:absolute;color:#b8a15c;font-style:normal;font-size:18px}.b1{left:22%;top:35%}.b2{left:51%;top:58%}.b3{left:77%;top:29%}.schematic-note{position:absolute;right:20px;bottom:27%;font:700 8px Arial;letter-spacing:.18em;color:#8c8c87}.river-route-room{padding:13vh 8vw;background:#11100d}.river-route-copy{max-width:900px;margin-bottom:8vh}.river-route{position:relative;max-width:1180px;margin:auto;min-height:560px;border:1px solid #6e6758;background:#cbbb95;color:#312e27;overflow:hidden;box-shadow:inset 0 0 90px #5f50308a}.route-shore{position:absolute;left:0;right:0;height:22%;display:flex;align-items:center;padding:0 5%;font:700 14px Arial;letter-spacing:.3em;color:#5b5040}.route-detroit{top:0;background:linear-gradient(#d8cba7,#c5b58e)}.route-windsor{bottom:0;justify-content:flex-end;background:linear-gradient(#c3b389,#d2c59f)}.route-water{position:absolute;top:22%;bottom:22%;left:0;right:0;background:linear-gradient(165deg,#8ea29b,#647d7a);overflow:hidden}.route-water svg{position:absolute;inset:0;width:100%;height:100%}.route-water path{fill:none;stroke:#7e2e27;stroke-width:5;stroke-dasharray:15 10}.route-label{position:absolute;left:42%;top:44%;font:700 12px Arial;letter-spacing:.3em;color:#354b49;transform:rotate(-8deg)}.route-node{position:absolute;padding:8px 10px;background:#d4c49e;border:1px solid #7c6e50;font:700 9px Arial;letter-spacing:.12em}.n1{left:10%;top:62%}.n2{left:40%;top:24%}.n3{left:66%;top:58%}.n4{right:7%;top:18%}.river-route>small{position:absolute;right:18px;bottom:18px;font:700 8px Arial;letter-spacing:.18em}.crossing-room{padding:13vh 8vw;background:#0d0e0f}.crossing-copy{max-width:900px}.crossing-pair{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#37332c;margin-top:7vh}.crossing-pair article{min-height:340px;padding:46px;background:#151617}.crossing-pair span{font:700 12px Arial;letter-spacing:.25em;color:#aa9c82}.crossing-pair h3{font-size:clamp(34px,4vw,58px);line-height:.95;margin:.7em 0 .4em}.crossing-pair p{line-height:1.55;color:#bbb4a7}.river-next{padding:14vh 8vw;max-width:1250px}.river-next .journey-button{margin-right:10px}@media(max-width:800px){.river-hero{padding:18vh 7vw 12vh}.river-hero h1{font-size:24vw}.river-chapters{grid-template-columns:1fr}.river-card{min-height:360px;padding:34px 28px}.border-room{grid-template-columns:1fr;padding:10vh 7vw}.border-diagram{min-height:460px}.river-route-room,.crossing-room,.river-next{padding-left:7vw;padding-right:7vw}.crossing-pair{grid-template-columns:1fr}.river-route{min-height:500px}.route-node{font-size:7px}.river-band{padding-left:7vw;padding-right:7vw}}

/* Prototype 10: Ross-selected archival portrait and Book One photograph */
.ralph-archive-portrait{grid-column:2;grid-row:1/3;margin:0;align-self:center;width:min(100%,430px);justify-self:end;background:#d8d0bd;padding:10px 10px 8px;color:#171717;box-shadow:0 24px 70px rgba(0,0,0,.5);transform:rotate(.45deg)}
.ralph-archive-portrait img{display:block;width:100%;max-height:58svh;object-fit:contain;filter:grayscale(1) sepia(.08) contrast(1.04)}
.ralph-archive-portrait figcaption{color:#302e2a}
.patrolmen-frame img[src*="book-one-selected"]{display:block;width:100%;aspect-ratio:auto;max-height:72svh;object-fit:contain;object-position:center;filter:none;background:#060606}
@media(max-width:800px){.ralph-archive-portrait{grid-column:1;grid-row:auto;width:min(82vw,430px);justify-self:center}.ralph-archive-portrait img{max-height:none}}

/* Prototype 11 — The Newspapers */
.newspapers-page{background:#090909;color:#efe8d9}.news-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:15vh 8vw;overflow:hidden;isolation:isolate}.news-hero-image{position:absolute;inset:-4%;z-index:-2;background:url('https://www.detroithistorical.org/sites/default/files/styles/gallery_full_1x/public/artifact-media/297/2023001104.JPG.webp?itok=gaFwpML_') center/cover no-repeat;filter:grayscale(1) sepia(.2) contrast(1.18);transform:scale(1.04)}.news-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070707f7,#0b0907d5 50%,#0a08055c),linear-gradient(0deg,#080706f0,transparent 48%,#0707069a)}.news-hero-copy{max-width:1060px}.news-hero h1{font-size:clamp(78px,14vw,190px);line-height:.7;letter-spacing:-.055em;margin:.18em 0 .24em}.news-deck{font-size:clamp(24px,3.6vw,50px);line-height:1.08;color:#d1c4ab;margin:0}.press-manifest{padding:14vh 8vw;max-width:1300px}.press-manifest h2{font-size:clamp(50px,8vw,106px);line-height:.9;margin:.22em 0}.press-manifest>p:last-child{font-size:clamp(18px,2vw,27px);line-height:1.62;max-width:920px;color:#c9c0b0}.press-floor{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#312b22}.press-desk{position:relative;min-height:420px;padding:48px;color:#efe9db;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;isolation:isolate}.press-desk:before{content:"";position:absolute;inset:0;z-index:-2;background:repeating-linear-gradient(0deg,transparent 0 24px,#ffffff08 25px),linear-gradient(135deg,#17130f,#2a2116);transition:.5s}.press-desk:nth-child(even):before{background:repeating-linear-gradient(90deg,transparent 0 32px,#ffffff06 33px),linear-gradient(145deg,#111,#28221a)}.press-desk:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#070706f8,#0a0907a5 70%,transparent)}.press-desk:hover:before{transform:scale(1.025)}.press-desk>span{position:absolute;top:28px;right:30px;font:700 11px Arial;letter-spacing:.2em;color:#b4aa96}.press-desk h2{font-size:clamp(34px,4.5vw,64px);line-height:.92;margin:.18em 0}.press-desk p:not(.eyebrow){max-width:620px;line-height:1.55;color:#c9c0b0}.press-desk b{font:700 10px Arial;letter-spacing:.19em;color:#c8a968;margin-top:14px}.newspaper-wall{padding:14vh 8vw;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8vw;align-items:center;background:#11100d}.wall-copy h2,.city-desk-copy h2,.daily-copy h2,.date-copy h2,.press-to-book-copy h2,.news-next h2{font-size:clamp(48px,7.4vw,100px);line-height:.9;margin:.2em 0}.wall-copy>p:not(.eyebrow),.city-desk-copy>p:not(.eyebrow),.daily-copy>p:not(.eyebrow),.date-copy>p:not(.eyebrow),.press-to-book-copy>p:not(.eyebrow),.news-next>p:not(.eyebrow){font-size:clamp(18px,2vw,26px);line-height:1.62;color:#cbc2b1}.press-stamp{display:inline-block;margin-top:25px;border:2px solid #a24635;color:#bb604b;padding:10px 14px;font:700 10px Arial;letter-spacing:.18em;transform:rotate(-1.2deg)}.paper-stack{position:relative;min-height:650px}.paper{position:absolute;width:72%;min-height:470px;background:#d8caa6;color:#29251d;padding:42px 38px;box-shadow:0 20px 70px #0009,inset 0 0 70px #89764e42;border:1px solid #8d7b59}.paper small{font:700 9px Arial;letter-spacing:.22em}.paper h3{font-size:clamp(33px,4vw,56px);line-height:.9;margin:.38em 0}.paper p{font-size:17px}.paper hr{border:0;border-top:3px double #4a4030}.paper-lines{height:210px;background:repeating-linear-gradient(#4d453828 0 2px,transparent 2px 16px)}.p1{left:2%;top:10%;transform:rotate(-6deg)}.p2{right:1%;top:3%;transform:rotate(5deg);background:#cbbd98}.p3{left:16%;bottom:1%;transform:rotate(-1deg);background:#e0d2ad}.city-desk-room{position:relative;min-height:82svh;padding:12vh 8vw;display:flex;align-items:center;background:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg') center 65%/cover no-repeat;isolation:isolate}.city-desk-room:before{content:"";position:absolute;inset:0;z-index:-2;background:inherit;filter:grayscale(1) sepia(.18) contrast(1.15)}.city-desk-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080705f3,#0b0908c4 60%,#0a08065a)}.city-desk-copy{max-width:900px}.daily-life-room{padding:14vh 8vw;background:#0b0a08}.daily-copy{max-width:900px;margin-bottom:7vh}.classified-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#4b4030}.classified-grid article{min-height:310px;background:#d6c8a5;color:#29251d;padding:32px;box-shadow:inset 0 0 45px #7b684642}.classified-grid span{font:700 9px Arial;letter-spacing:.2em;color:#7c2f25}.classified-grid h3{font-size:clamp(25px,3vw,40px);line-height:1;margin:20px 0}.classified-grid p{line-height:1.5}.date-room{padding:14vh 8vw;background:#15120e;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:7vw;align-items:center}.date-machine{position:relative;min-height:500px;border:1px solid #76664b;background:#cbbb95;color:#27231b;padding:50px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;box-shadow:inset 0 0 95px #5c4d2f80}.date-reel{background:#ece1bf;border:1px solid #8d7c5c;padding:28px 18px;text-align:center;box-shadow:inset 0 0 25px #9d87614a}.date-reel small{font:700 8px Arial;letter-spacing:.2em}.date-reel strong{display:block;font-size:clamp(30px,5vw,64px);margin-top:12px}.date-output{grid-column:1/-1;border-top:3px double #66563f;border-bottom:3px double #66563f;padding:24px 6px}.date-output span{display:block;font:700 9px Arial;letter-spacing:.2em}.date-output b{display:block;margin-top:10px;font:700 clamp(12px,1.6vw,19px) Arial;letter-spacing:.12em}.date-note{grid-column:1/-1;align-self:end;font:700 8px Arial;letter-spacing:.17em;color:#655a47}.press-to-book{padding:14vh 8vw;background:#080807}.press-to-book-copy{max-width:950px}.edition-line{display:flex;align-items:center;gap:17px;flex-wrap:wrap;margin-top:8vh;padding:26px;border-top:1px solid #6e5e42;border-bottom:1px solid #6e5e42}.edition-line span{font:700 11px Arial;letter-spacing:.18em;color:#d1c2a4}.edition-line i{color:#9f472f;font-style:normal}.news-next{padding:14vh 8vw;max-width:1250px}@media(max-width:800px){.news-hero{padding:18vh 7vw 12vh}.news-hero h1{font-size:19vw}.press-floor{grid-template-columns:1fr}.press-desk{min-height:350px;padding:34px 28px}.newspaper-wall{grid-template-columns:1fr;padding:10vh 7vw}.paper-stack{min-height:620px}.classified-grid{grid-template-columns:1fr 1fr}.date-room{grid-template-columns:1fr;padding:10vh 7vw}.city-desk-room,.daily-life-room,.press-to-book,.news-next{padding-left:7vw;padding-right:7vw}}@media(max-width:520px){.classified-grid{grid-template-columns:1fr}.paper{width:82%;padding:28px 24px}.date-machine{padding:24px;grid-template-columns:1fr}.date-output,.date-note{grid-column:auto}.date-reel strong{font-size:42px}}

/* Prototype 12 — The Detroit Police */
.police-page{background:#090a0b;color:#efe9dc}.police-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:15vh 8vw;overflow:hidden;isolation:isolate}.police-hero-image{position:absolute;inset:-2%;z-index:-2;background:linear-gradient(90deg,#0b0d10cc,#0a0b0dd0),url('assets/callbox-open-crop.jpg') center 32%/cover no-repeat;filter:grayscale(1) sepia(.1) contrast(1.24);transform:scale(1.035)}.police-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#07090af4 0 43%,#090a0bb2 68%,#0708096b),linear-gradient(0deg,#08090af0,transparent 48%,#08090ab5)}.police-hero-copy{max-width:1120px}.police-hero h1{font-size:clamp(72px,12vw,172px);line-height:.72;letter-spacing:-.06em;margin:.2em 0 .24em}.police-deck{font-size:clamp(23px,3.4vw,48px);line-height:1.05;color:#d2c7b1;margin:0}.police-manifest{padding:14vh 8vw;max-width:1300px}.police-manifest h2{font-size:clamp(50px,8vw,105px);line-height:.9;margin:.22em 0}.police-manifest>p:last-child{font-size:clamp(18px,2vw,27px);line-height:1.62;max-width:980px;color:#c9c0b0}.police-doors{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#2e2b26}.police-door{min-height:410px;padding:46px;color:#eee7d9;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;isolation:isolate}.police-door:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(145deg,#161819,#26231f);transition:.45s}.police-door:nth-child(2):before{background:linear-gradient(145deg,#121416,#28231c)}.police-door:nth-child(3):before{background:linear-gradient(145deg,#141312,#2c251d)}.police-door:nth-child(4):before{background:linear-gradient(145deg,#0f1214,#242421)}.police-door:after{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(90deg,transparent 0 34px,#fff 35px 36px);opacity:.025}.police-door:hover:before{transform:scale(1.025)}.police-door>span{position:absolute;top:27px;right:30px;font:700 11px Arial;letter-spacing:.2em;color:#aaa292}.police-door h2{font-size:clamp(34px,4.4vw,62px);line-height:.93;margin:.18em 0}.police-door p:not(.eyebrow){line-height:1.55;color:#c7bead;max-width:620px}.police-door b{font:700 10px Arial;letter-spacing:.18em;color:#c6a768;margin-top:14px}.police-places{padding:14vh 8vw;display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);gap:8vw;align-items:center;background:#11100e}.police-copy h2,.patrol-copy h2,.career-copy h2,.promotion-copy h2,.methods-copy h2,.police-crosslinks h2,.police-next h2{font-size:clamp(48px,7.3vw,98px);line-height:.9;margin:.2em 0}.police-copy>p:not(.eyebrow),.patrol-copy>p:not(.eyebrow),.career-copy>p:not(.eyebrow),.promotion-copy>p:not(.eyebrow),.methods-copy>p:not(.eyebrow),.police-crosslinks>p:not(.eyebrow),.police-next>p:not(.eyebrow){font-size:clamp(18px,2vw,25px);line-height:1.62;color:#c9c0b0}.place-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:34px}.place-tags span{border:1px solid #5c5549;padding:9px 11px;font:700 9px Arial;letter-spacing:.15em;color:#b9ad95}.police-callbox-frame,.uniform-frame,.certificate-frame{margin:0;background:#d6ccb7;color:#292722;padding:11px;box-shadow:0 28px 80px #000a}.police-callbox-frame img,.uniform-frame img,.certificate-frame img{display:block;width:100%;max-height:70svh;object-fit:cover;object-position:center;filter:grayscale(1) sepia(.11) contrast(1.05)}.police-callbox-frame figcaption,.uniform-frame figcaption,.certificate-frame figcaption{padding:10px 3px 2px;font:700 8px Arial;letter-spacing:.18em}.patrol-room{position:relative;min-height:90svh;padding:12vh 8vw;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.65fr);gap:8vw;align-items:center;isolation:isolate;background:linear-gradient(130deg,#121416,#050607)}.patrol-room:before{content:"";position:absolute;inset:0;z-index:-2;background:url('assets/callbox-interior.jpg') 12% center/cover no-repeat;filter:grayscale(1) sepia(.08) contrast(1.2);opacity:.28}.patrol-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#08090af5,#08090bc7 55%,#08090b82)}.uniform-frame{transform:rotate(.6deg)}.career-rail{padding:14vh 8vw;background:#0b0c0d}.career-copy{max-width:980px;margin-bottom:8vh}.career-track{position:relative;display:grid;gap:1px;background:#39342b;border-left:2px solid #9d4937}.career-track article{display:grid;grid-template-columns:110px 1fr 1fr;align-items:center;gap:25px;min-height:96px;background:#151616;padding:20px 28px}.career-track time{font:700 28px Arial;color:#c6a86a}.career-track b{font:700 12px Arial;letter-spacing:.18em;color:#ece4d5}.career-track span{color:#bdb3a1;line-height:1.4}.promotion-room{padding:14vh 8vw;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.05fr);gap:8vw;align-items:center;background:#15120e}.police-stamp{display:inline-block;margin-top:24px;border:2px solid #a44435;color:#bd6350;padding:10px 14px;font:700 9px Arial;letter-spacing:.18em;transform:rotate(-1deg)}.certificate-frame img{object-fit:contain;max-height:72svh;filter:grayscale(.15) sepia(.08) contrast(1.02)}.methods-room{padding:14vh 8vw;background:#08090a}.methods-copy{max-width:980px;margin-bottom:7vh}.methods-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#4c4438}.methods-grid article{min-height:310px;padding:32px;background:#d5c9ad;color:#29251d;box-shadow:inset 0 0 45px #75634240}.methods-grid span{font:700 9px Arial;letter-spacing:.2em;color:#7d342a}.methods-grid h3{font-size:clamp(25px,3vw,39px);line-height:1;margin:20px 0}.methods-grid p{line-height:1.5}.police-crosslinks{padding:14vh 8vw;background:#12110f}.police-linkline{display:flex;align-items:center;gap:17px;flex-wrap:wrap;margin:7vh 0 3vh;padding:24px 0;border-top:1px solid #5f5648;border-bottom:1px solid #5f5648}.police-linkline a,.police-linkline span{font:700 11px Arial;letter-spacing:.17em;color:#d0c1a3;text-decoration:none}.police-linkline i{font-style:normal;color:#9d4937}.police-next{padding:14vh 8vw;max-width:1250px}.back-home{color:#d6d0c6;text-decoration:none;font:700 9px Arial;letter-spacing:.16em}
@media(max-width:800px){.police-hero{padding:18vh 7vw 12vh}.police-hero h1{font-size:18vw}.police-doors{grid-template-columns:1fr}.police-door{min-height:350px;padding:34px 28px}.police-places,.patrol-room,.promotion-room{grid-template-columns:1fr;padding:10vh 7vw}.police-callbox-frame,.uniform-frame,.certificate-frame{width:min(100%,560px);justify-self:center}.career-rail,.methods-room,.police-crosslinks,.police-next{padding-left:7vw;padding-right:7vw}.career-track article{grid-template-columns:82px 1fr}.career-track article span{grid-column:2}.methods-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.methods-grid{grid-template-columns:1fr}.career-track article{grid-template-columns:1fr;gap:7px}.career-track article span{grid-column:auto}.career-track time{font-size:22px}}

/* Prototype 13 — Detroit After Dark */
.afterdark-page{background:#070706;color:#eee6d8}.afterdark-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:15vh 8vw;overflow:hidden;isolation:isolate}.afterdark-hero-image{position:absolute;inset:-2%;z-index:-3;background:url('https://www.detroithistorical.org/sites/default/files/styles/gallery_full_1x/public/artifact-media/251/2019057003-3.jpg.webp?itok=3g1cXC8C') center 58%/cover no-repeat;filter:grayscale(1) sepia(.18) brightness(.52) contrast(1.3);transform:scale(1.035)}.afterdark-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 72% 58%,#a56b2e2b 0 5%,transparent 20%),radial-gradient(circle at 22% 64%,#8f4e2830 0 4%,transparent 17%)}.afterdark-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#050505f7 0 38%,#080706c7 62%,#0706056b),linear-gradient(0deg,#070706fa 0 5%,transparent 45%,#050505c9)}.afterdark-hero-copy{max-width:1180px}.afterdark-hero h1{font-size:clamp(70px,11.8vw,170px);line-height:.72;letter-spacing:-.065em;margin:.2em 0 .27em}.afterdark-deck{font-size:clamp(22px,3.2vw,46px);line-height:1.06;color:#d0bfa5;max-width:900px}.afterdark-manifest{padding:14vh 8vw;max-width:1320px}.afterdark-manifest h2,.night-street-copy h2,.tavern-copy h2,.gambling-copy h2,.vice-copy h2,.rackets-copy h2,.police-night-copy h2,.afterdark-next h2{font-size:clamp(48px,7.5vw,102px);line-height:.89;margin:.22em 0}.afterdark-manifest>p:last-child,.night-street-copy>p:not(.eyebrow),.tavern-copy>p:not(.eyebrow),.gambling-copy>p:not(.eyebrow),.vice-copy>p:not(.eyebrow),.rackets-copy>p:not(.eyebrow),.police-night-copy>p:not(.eyebrow),.afterdark-next>p:not(.eyebrow){font-size:clamp(18px,2vw,26px);line-height:1.63;color:#c8bba6;max-width:980px}.afterdark-doors{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#332820}.afterdark-door{min-height:410px;padding:44px;color:#eee4d2;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;isolation:isolate}.afterdark-door:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(150deg,#11100e,#2c1d16);transition:.45s}.afterdark-door:nth-child(2):before{background:linear-gradient(150deg,#0d0d0d,#30221a)}.afterdark-door:nth-child(3):before{background:linear-gradient(150deg,#0c0b09,#251911)}.afterdark-door:nth-child(4):before{background:linear-gradient(150deg,#11100f,#28140f)}.afterdark-door:nth-child(5):before{background:linear-gradient(150deg,#0b0a09,#221712)}.afterdark-door:nth-child(6):before{background:linear-gradient(150deg,#0a0c0d,#1d2323)}.afterdark-door:after{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(90deg,transparent 0 38px,#fff 39px 40px);opacity:.018}.afterdark-door:hover:before{transform:scale(1.025)}.afterdark-door>span{position:absolute;top:27px;right:30px;font:700 11px Arial;letter-spacing:.2em;color:#a99b88}.afterdark-door h2{font-size:clamp(35px,4.6vw,64px);line-height:.92;margin:.17em 0}.afterdark-door p:not(.eyebrow){line-height:1.55;color:#c8bba7;max-width:640px}.afterdark-door b{font:700 10px Arial;letter-spacing:.18em;color:#c79b59;margin-top:14px}.night-street{position:relative;min-height:92svh;padding:13vh 8vw;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(270px,.6fr);gap:8vw;align-items:center;isolation:isolate;overflow:hidden;background:#090807}.night-street:before{content:"";position:absolute;inset:0;z-index:-2;background:url('https://cdn.loc.gov/service/pnp/det/4a20000/4a27000/4a27900/4a27913v.jpg') center 62%/cover no-repeat;filter:grayscale(1) sepia(.2) brightness(.4) contrast(1.3)}.night-street-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080705f5,#080705c8 56%,#08070576),linear-gradient(0deg,#080705ef,transparent 45%,#080705a8)}.afterdark-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}.afterdark-tags span{border:1px solid #6b5540;padding:9px 11px;font:700 9px Arial;letter-spacing:.15em;color:#c0a787}.door-silhouette{justify-self:center;width:min(330px,80vw);aspect-ratio:.62;background:#080808;border:5px solid #6a5134;box-shadow:0 30px 80px #000c,inset 0 0 0 2px #1f1911;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;position:relative}.door-silhouette:before{content:"";position:absolute;right:24px;top:50%;width:10px;height:10px;border-radius:50%;background:#aa7d45;box-shadow:0 0 16px #d6a35d88}.door-silhouette span,.door-silhouette i{font:700 9px Arial;letter-spacing:.22em;color:#8f806c}.door-silhouette b{font-size:clamp(30px,4vw,50px);letter-spacing:.08em;color:#d0b896}.tavern-room{padding:14vh 8vw;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:8vw;align-items:center;background:#13100d}.neon-block{min-height:480px;border:1px solid #594231;background:radial-gradient(circle at 50% 50%,#8a4b252c,transparent 52%),#080807;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;box-shadow:inset 0 0 80px #000}.neon-block span{font:700 10px Arial;letter-spacing:.3em;color:#967f65}.neon-block b{font-size:clamp(40px,6vw,78px);letter-spacing:.06em;color:#d6a869;text-shadow:0 0 18px #9f5a2f77;margin:24px 0}.neon-block i{font:700 10px Arial;letter-spacing:.22em;color:#b26344;font-style:normal}.gambling-room{padding:14vh 8vw;background:#090907;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8vw;align-items:center}.betting-board{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#584a36;border:1px solid #7b6748;box-shadow:0 30px 80px #000a}.betting-board>div{min-height:220px;background:#d2c39e;color:#28231b;padding:28px;display:flex;flex-direction:column;justify-content:center;text-align:center;box-shadow:inset 0 0 40px #7a67423d}.betting-board small{font:700 8px Arial;letter-spacing:.2em}.betting-board strong{font:700 clamp(34px,5vw,64px) Arial;margin:12px 0}.betting-board span{font:700 8px Arial;letter-spacing:.14em;color:#714031}.betting-board>p{grid-column:1/-1;background:#11100d;color:#9d8d76;margin:0;padding:14px 18px;font:700 8px Arial;letter-spacing:.14em}.vice-room{position:relative;min-height:90svh;padding:14vh 8vw;display:flex;align-items:center;isolation:isolate;overflow:hidden}.vice-room:before{content:"";position:absolute;inset:0;z-index:-2;background:url('assets/callbox-open-crop.jpg') center 42%/cover no-repeat;filter:grayscale(1) sepia(.12) brightness(.5) contrast(1.25)}.vice-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070808f4 0 48%,#080807b5 70%,#08080765),linear-gradient(0deg,#070706f1,transparent 48%,#070706ad)}.vice-copy{max-width:940px}.rackets-room{padding:14vh 8vw;background:#15110d}.rackets-copy{max-width:980px;margin-bottom:7vh}.racket-files{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.racket-files article{min-height:260px;background:#c9bb96;color:#28231b;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:inset 0 0 45px #735f3e42;transform:rotate(-.3deg)}.racket-files article:nth-child(even){transform:rotate(.4deg)}.racket-files span{font:700 8px Arial;letter-spacing:.2em;color:#813d31}.racket-files b{font-size:clamp(25px,3vw,39px);line-height:1;margin:18px 0}.racket-files small{font:700 8px Arial;letter-spacing:.14em;color:#665a47}.police-night{padding:14vh 8vw;background:#08090a;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.62fr);gap:8vw;align-items:center}.night-linkline{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:5vh;padding:20px 0;border-top:1px solid #524a3f;border-bottom:1px solid #524a3f}.night-linkline a,.night-linkline span{font:700 10px Arial;letter-spacing:.16em;color:#cfbfa2;text-decoration:none}.night-linkline i{font-style:normal;color:#9d4937}.night-callbox{margin:0;background:#d3c8b1;color:#28251f;padding:10px;box-shadow:0 26px 70px #000a}.night-callbox img{display:block;width:100%;max-height:66svh;object-fit:cover;object-position:center;filter:grayscale(1) sepia(.12) contrast(1.08)}.night-callbox figcaption{padding:10px 3px 2px;font:700 8px Arial;letter-spacing:.16em}.afterdark-next{padding:14vh 8vw;max-width:1250px}
@media(max-width:800px){.afterdark-hero{padding:18vh 7vw 12vh}.afterdark-hero h1{font-size:18vw}.afterdark-doors{grid-template-columns:1fr}.afterdark-door{min-height:350px;padding:34px 28px}.night-street,.tavern-room,.gambling-room,.police-night{grid-template-columns:1fr;padding:10vh 7vw}.door-silhouette{margin-top:4vh}.neon-block,.betting-board,.night-callbox{width:min(100%,580px);justify-self:center}.rackets-room,.vice-room,.afterdark-next{padding-left:7vw;padding-right:7vw}.racket-files{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.racket-files{grid-template-columns:1fr}.betting-board{grid-template-columns:1fr}.betting-board>p{grid-column:auto}.afterdark-hero h1{font-size:17vw}}

/* Prototype 14 — The Case Files */
.cases-page{background:#090909;color:#ede7d9}.cases-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:16vh 8vw;overflow:hidden;isolation:isolate;background:#0a0a09}.cases-hero-grid{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,transparent 49.7%,#6a5a4330 50%,transparent 50.3%),linear-gradient(0deg,transparent 49.7%,#6a5a4330 50%,transparent 50.3%),repeating-linear-gradient(90deg,#151411 0 1px,transparent 1px 64px),repeating-linear-gradient(0deg,#151411 0 1px,transparent 1px 64px);background-size:100% 100%,100% 100%,64px 64px,64px 64px}.cases-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 72% 48%,#8a2f2230 0 3%,transparent 20%),radial-gradient(circle at 26% 70%,#b28a4a24 0 4%,transparent 22%)}.cases-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070707f4 0 40%,#0b0a08bd 68%,#080807d9),linear-gradient(0deg,#080807fb 0 4%,transparent 45%,#080807b8)}.cases-hero-copy{max-width:1180px}.cases-hero h1{font-size:clamp(76px,12vw,176px);line-height:.72;letter-spacing:-.07em;margin:.2em 0 .28em}.cases-deck{font-size:clamp(22px,3.2vw,46px);line-height:1.08;color:#ccbda2}.cases-manifest{padding:14vh 8vw;max-width:1320px}.cases-manifest h2,.ledger-heading h2,.case-anatomy-copy h2,.case-crosslinks h2,.cases-next h2{font-size:clamp(48px,7.4vw,100px);line-height:.9;margin:.22em 0}.cases-manifest>p:last-child,.ledger-heading>p:last-child,.case-anatomy-copy>p:last-child,.cases-next>p:not(.eyebrow){font-size:clamp(18px,2vw,26px);line-height:1.63;color:#c8bca7;max-width:980px}.case-entry-doors{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#473b2d}.case-entry{min-height:360px;padding:42px;color:#eee4d2;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;background:linear-gradient(145deg,#11100e,#2b251d)}.case-entry:nth-child(2){background:linear-gradient(145deg,#0c1010,#1e2828)}.case-entry:nth-child(3){background:linear-gradient(145deg,#101010,#222327)}.case-entry:nth-child(4){background:linear-gradient(145deg,#13110d,#2d2418)}.case-entry>span{position:absolute;top:26px;right:30px;font:700 11px Arial;letter-spacing:.2em;color:#a99b88}.case-entry h2{font-size:clamp(34px,4.8vw,64px);line-height:.92;margin:.18em 0}.case-entry p:not(.eyebrow){line-height:1.55;color:#c9bda9;max-width:640px}.case-entry b{font:700 10px Arial;letter-spacing:.18em;color:#c79b59;margin-top:14px}.case-ledger{padding:14vh 8vw;background:#12100c}.ledger-heading{max-width:1100px;margin-bottom:8vh}.ledger-stack{display:grid;gap:24px;max-width:1180px}.case-folder{position:relative;background:#cfc09b;color:#29231b;padding:0 0 0 0;box-shadow:0 24px 70px #0008, inset 0 0 60px #7a68442f;transform:rotate(-.15deg)}.case-folder:nth-child(even){transform:rotate(.15deg)}.folder-tab{display:inline-block;margin-left:34px;transform:translateY(-15px);background:#a9966f;color:#2e281f;padding:10px 18px;font:700 9px Arial;letter-spacing:.18em;border:1px solid #806f50;border-bottom:0}.folder-body{padding:28px 34px 34px}.case-code{font:700 9px Arial;letter-spacing:.19em;color:#7b4035}.folder-body h3{font-size:clamp(34px,5vw,66px);line-height:.95;margin:.22em 0}.folder-body>p{font-size:clamp(17px,1.7vw,22px);line-height:1.55;color:#4e4537;max-width:840px}.folder-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.folder-links a{border:1px solid #7f7157;padding:8px 10px;color:#4a4030;text-decoration:none;font:700 8px Arial;letter-spacing:.14em}.case-folder.sealed{background:#171511;color:#d6c8aa;border:1px solid #493d2e;box-shadow:0 24px 70px #000a}.case-folder.sealed .folder-tab{background:#301b18;color:#d4b797;border-color:#5f322b}.case-folder.sealed .case-code{color:#a95c4d}.case-folder.sealed .folder-body>p{color:#a99b84}.case-seal{display:inline-block;margin-top:18px;padding:10px 13px;border:2px solid #84392f;color:#b85d4e;font:800 9px Arial;letter-spacing:.18em;transform:rotate(-1deg)}.case-anatomy{padding:14vh 8vw;background:#080909;display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:8vw;align-items:center}.evidence-board{position:relative;min-height:560px;border:1px solid #655743;background:repeating-linear-gradient(0deg,#1a1814 0 29px,#1e1b16 30px),#191713;box-shadow:inset 0 0 90px #000}.evidence-node{position:absolute;background:#d0c19c;color:#2d271e;padding:18px 20px;min-width:130px;text-align:center;font:800 10px Arial;letter-spacing:.16em;box-shadow:0 12px 26px #0008;z-index:3}.n-file{left:50%;top:43%;transform:translate(-50%,-50%);font-size:15px;padding:28px}.n-date{left:8%;top:12%}.n-place{right:7%;top:15%}.n-unit{left:7%;bottom:15%}.n-press{right:8%;bottom:12%}.n-book{left:50%;bottom:5%;transform:translateX(-50%)}.wire{position:absolute;height:2px;background:#7d2f28;transform-origin:left center;z-index:2;box-shadow:0 0 5px #7d2f2866}.w1{left:28%;top:28%;width:28%;transform:rotate(20deg)}.w2{left:52%;top:40%;width:30%;transform:rotate(-25deg)}.w3{left:25%;top:68%;width:30%;transform:rotate(-22deg)}.w4{left:51%;top:56%;width:31%;transform:rotate(30deg)}.w5{left:50%;top:58%;width:25%;transform:rotate(90deg)}.case-crosslinks{padding:12vh 8vw;background:#12100d}.case-linkline{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:5vh 0 3vh;padding:20px 0;border-top:1px solid #544b3d;border-bottom:1px solid #544b3d}.case-linkline a{font:700 10px Arial;letter-spacing:.16em;color:#cfbfa2;text-decoration:none}.case-linkline i{font-style:normal;color:#9d4937}.cases-next{padding:14vh 8vw;max-width:1250px}
@media(max-width:800px){.cases-hero{padding:18vh 7vw 12vh}.cases-hero h1{font-size:18vw}.case-entry-doors{grid-template-columns:1fr}.case-entry{min-height:330px;padding:34px 28px}.case-ledger,.case-crosslinks,.cases-next{padding-left:7vw;padding-right:7vw}.case-anatomy{grid-template-columns:1fr;padding:10vh 7vw}.evidence-board{min-height:500px}.folder-body{padding-left:24px;padding-right:24px}}
@media(max-width:520px){.evidence-board{min-height:430px}.evidence-node{min-width:auto;padding:13px 12px;font-size:8px}.n-file{font-size:11px;padding:20px}.folder-body h3{font-size:38px}.case-linkline{gap:9px}}

/* Prototype 15 — The Ralph Palmer Chronicles */
.chronicles-page{background:#090a0a;color:#eee8da}.chronicles-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:16vh 8vw;overflow:hidden;isolation:isolate;background:#080909}.chronicles-hero-lines{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,transparent 13%,#8c74534f 13.2%,transparent 13.5%),repeating-linear-gradient(0deg,#171713 0 1px,transparent 1px 62px),linear-gradient(135deg,#090a0a 0 43%,#1b1812 44% 58%,#090a0a 59%)}.chronicles-hero:before{content:"1919  ·  1938  ·  1946  ·  1949  ·  1952  ·  1960  ·  1971";position:absolute;left:12%;right:4%;bottom:17%;z-index:-2;color:#c7aa7650;font:800 clamp(12px,1.8vw,24px) Arial;letter-spacing:.22em;white-space:nowrap}.chronicles-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070808f7 0 44%,#090907bd 70%,#080808d6),linear-gradient(0deg,#080808f4,transparent 50%,#08080896)}.chronicles-hero-copy{max-width:1180px}.chronicles-hero h1{font-size:clamp(78px,12vw,176px);line-height:.72;letter-spacing:-.065em;margin:.2em 0 .28em}.chronicles-deck{font-size:clamp(22px,3.1vw,44px);line-height:1.08;color:#cdbd9e}.chronicles-manifest{padding:14vh 8vw;max-width:1300px}.chronicles-manifest h2,.future-volumes h2,.chronicles-crosslinks h2{font-size:clamp(48px,7.5vw,102px);line-height:.9;margin:.22em 0}.chronicles-manifest>p:last-child,.future-volumes>p:not(.eyebrow),.chronicles-crosslinks>p:not(.eyebrow){font-size:clamp(18px,2vw,26px);line-height:1.62;color:#c7baa4;max-width:980px}.chronicle-road{position:relative;padding:4vh 8vw 14vh 8vw;background:linear-gradient(90deg,#0b0c0c 0 26%,#11100d 26% 100%)}.chronicle-road:before{content:"";position:absolute;left:26%;top:0;bottom:0;width:2px;background:linear-gradient(#6c5840,#b58b4d,#6c5840);box-shadow:0 0 20px #b58b4d22}.chronicle-stop{position:relative;display:grid;grid-template-columns:18% 6% 1fr;gap:2vw;align-items:start;padding:7vh 0;border-bottom:1px solid #5a4c382e}.chronicle-year{font:800 clamp(30px,4vw,58px) Arial;letter-spacing:-.05em;color:#d0c1a5;text-align:right;padding-top:5px}.chronicle-pin{width:18px;height:18px;border-radius:50%;background:#b68b4d;border:4px solid #1a1813;box-shadow:0 0 0 1px #b68b4d,0 0 22px #b68b4d55;justify-self:center;margin-top:12px;z-index:2}.chronicle-copy{max-width:920px}.chronicle-copy h2{font-size:clamp(34px,5vw,68px);line-height:.92;margin:.14em 0}.chronicle-copy>p:not(.eyebrow){font-size:clamp(17px,1.6vw,22px);line-height:1.55;color:#bfb29d;max-width:820px}.chronicle-stop.featured .chronicle-copy h2{color:#e0c08b}.chronicle-stop.featured .chronicle-pin{background:#8f3e32;box-shadow:0 0 0 1px #a95748,0 0 30px #8f3e326b}.chronicle-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.chronicle-links a,.sealed-inline{display:inline-block;border:1px solid #6b5b45;padding:10px 12px;color:#d3c3a6;text-decoration:none;font:700 9px Arial;letter-spacing:.14em}.sealed-inline{border-color:#73392f;color:#b86859}.book-one-room{padding:14vh 8vw;background:#15110d;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.75fr);gap:8vw;align-items:center}.book-one-copy h2{font-size:clamp(52px,8vw,112px);line-height:.78;letter-spacing:-.045em;margin:.25em 0}.book-one-copy>p:not(.eyebrow){font-size:clamp(18px,1.8vw,24px);line-height:1.6;color:#c8baa4;max-width:800px}.book-one-archive{margin:0;background:#d0c4aa;padding:10px;box-shadow:0 32px 90px #000b;transform:rotate(.4deg)}.book-one-archive img{display:block;width:100%;max-height:74svh;object-fit:cover;object-position:center;filter:sepia(.1) contrast(1.05)}.book-one-archive figcaption{color:#342e24;padding:10px 4px 2px;font:800 8px Arial;letter-spacing:.15em}.future-volumes{padding:14vh 8vw;background:#080909}.volume-shelf{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:8vh}.volume{min-height:330px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #574a39;background:#171510;box-shadow:inset 0 0 55px #0007}.volume span{font:800 11px Arial;letter-spacing:.2em;color:#9d8b70}.volume b{font-size:clamp(23px,2.7vw,38px);line-height:.92;color:#d8ccb5}.volume small{font:800 8px Arial;letter-spacing:.16em;color:#8d7a61}.volume.open{background:#cdbf9c;color:#2e281e;border-color:#8d7959}.volume.open b{color:#2e281e}.volume.open span,.volume.open small{color:#714332}.volume.sealed{position:relative}.volume.sealed:after{content:"SEALED";position:absolute;right:18px;top:20px;border:2px solid #71382f;color:#a95649;padding:7px 8px;font:800 8px Arial;letter-spacing:.15em;transform:rotate(5deg)}.chronicles-crosslinks{padding:14vh 8vw;background:#13100c}.chronicle-linkline{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:5vh 0 4vh;padding:20px 0;border-top:1px solid #544b3d;border-bottom:1px solid #544b3d}.chronicle-linkline a{font:700 10px Arial;letter-spacing:.16em;color:#cfbfa2;text-decoration:none}.chronicle-linkline i{font-style:normal;color:#9d4937}
@media(max-width:800px){.chronicles-hero{padding:18vh 7vw 12vh}.chronicles-hero h1{font-size:17vw}.chronicles-manifest,.future-volumes,.chronicles-crosslinks{padding-left:7vw;padding-right:7vw}.chronicle-road{padding-left:7vw;padding-right:7vw;background:#0e0f0e}.chronicle-road:before{left:22%}.chronicle-stop{grid-template-columns:17% 6% 1fr;gap:2.5vw}.chronicle-year{font-size:6vw}.book-one-room{grid-template-columns:1fr;padding:10vh 7vw}.book-one-archive{width:min(100%,560px);justify-self:center}.volume-shelf{grid-template-columns:1fr 1fr}.volume{min-height:260px}}
@media(max-width:520px){.chronicle-road:before{left:20%}.chronicle-stop{grid-template-columns:15% 7% 1fr}.chronicle-year{font-size:5.3vw;writing-mode:vertical-rl;transform:rotate(180deg);justify-self:end}.chronicle-copy h2{font-size:38px}.volume-shelf{grid-template-columns:1fr}.volume{min-height:220px}}

/* Prototype 17 — Crime Crawl */
.crime-crawl-page{background:#0b0b09;color:#eee7d8}.crawl-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:16vh 8vw;overflow:hidden;isolation:isolate;background:#100e0a}.crawl-hero-map{position:absolute;inset:7% 2% 2% 43%;z-index:-3;transform:rotate(1deg);border:1px solid #705e43;background:repeating-linear-gradient(0deg,#cdbf9b 0 1px,#c6b690 1px 31px),repeating-linear-gradient(90deg,transparent 0 39px,#66583f55 40px 41px),linear-gradient(135deg,#c9b98e,#ae9b70);box-shadow:0 30px 80px #0008,inset 0 0 100px #6f5c3c44}.crawl-hero-map:before{content:"DETROIT";position:absolute;right:6%;top:6%;font:800 clamp(30px,5vw,78px) Arial;letter-spacing:.08em;color:#58492f2d}.crawl-hero-map:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(28deg,transparent 0 73px,#6e5e4233 74px 75px)}.crawl-river{position:absolute;left:7%;right:3%;bottom:10%;height:17%;border-top:8px double #6f654f;color:#514833;font:800 14px Arial;letter-spacing:.24em;padding:24px 0 0 15%;transform:rotate(-4deg)}.crawl-route{position:absolute;height:3px;background:#7a3329;transform-origin:left center;box-shadow:0 0 8px #7a332955}.cr1{left:16%;top:30%;width:58%;transform:rotate(15deg)}.cr2{left:25%;top:56%;width:55%;transform:rotate(-18deg)}.cr3{left:38%;top:16%;width:50%;transform:rotate(63deg)}.cr4{left:11%;top:72%;width:54%;transform:rotate(-9deg)}.crawl-pin{position:absolute;width:20px;height:20px;border-radius:50% 50% 50% 0;background:#171510;border:3px solid #b79b68;transform:rotate(-45deg);box-shadow:0 8px 12px #0007}.cp1{left:18%;top:36%}.cp2{left:32%;top:27%}.cp3{left:49%;top:47%}.cp4{left:66%;top:33%}.cp5{left:77%;top:55%}.cp6{left:26%;top:68%}.cp7{left:56%;top:70%}.cp8{left:84%;top:26%}.crawl-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080907fb 0 43%,#0b0a08c9 62%,#0909088f),radial-gradient(circle at 70% 48%,transparent 0 38%,#080808cb 78%)}.crawl-hero-copy{max-width:720px}.crawl-hero h1{font-size:clamp(80px,13vw,190px);line-height:.68;letter-spacing:-.065em;margin:.15em 0 .25em}.crawl-deck{font:800 clamp(18px,2.5vw,34px) Arial;letter-spacing:.17em;text-transform:uppercase;color:#c59a57}.crawl-intro{font-size:clamp(18px,1.8vw,25px);line-height:1.65;color:#c9bca4;max-width:680px}.crawl-tools{padding:9vh 8vw;background:#15110d}.crawl-tool-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:3vh}.crawl-tool-grid a{min-height:135px;border:1px solid #65543d;padding:22px 18px;color:#e2d6c1;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;background:#0e0e0c}.crawl-tool-grid strong{font:800 11px Arial;letter-spacing:.17em;color:#d0ad73}.crawl-tool-grid span{font-size:14px;line-height:1.35;color:#a99d89}.crawl-case-grid{padding:13vh 8vw;background:#0a0b0b}.crawl-section-heading{max-width:1050px}.crawl-section-heading h2,.crawl-route-copy h2,.crawl-real-copy h2,.crawl-next h2{font-size:clamp(46px,7vw,96px);line-height:.9;margin:.2em 0}.crawl-section-heading>p:last-child,.crawl-route-copy>p,.crawl-real-copy>p,.crawl-next>p{font-size:clamp(17px,1.8vw,24px);line-height:1.6;color:#c6baa6;max-width:920px}.crawl-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:7vh}.crawl-card{position:relative;min-height:330px;padding:28px;border:1px solid #5f503b;background:linear-gradient(145deg,#17140f,#0b0c0c);display:flex;flex-direction:column}.crawl-card>span{font:800 10px Arial;letter-spacing:.2em;color:#806f57}.crawl-card h3{font-size:clamp(26px,3vw,40px);line-height:.95;margin:.4em 0}.crawl-card p{line-height:1.55;color:#b7aa96}.crawl-card a{margin-top:auto;font:800 9px Arial;letter-spacing:.15em;color:#c99e5b;text-decoration:none}.crawl-feature-route{padding:14vh 8vw;background:#17120d;display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(0,.95fr);gap:8vw;align-items:center}.crawl-route-board{background:#3b3123;padding:28px;box-shadow:0 34px 90px #000a}.route-map-paper{position:relative;min-height:520px;overflow:hidden;background:repeating-linear-gradient(0deg,#c8b88d 0 1px,#c1b083 1px 30px),repeating-linear-gradient(90deg,transparent 0 38px,#68583b4b 39px 40px),linear-gradient(135deg,#ccb98a,#aa9569);border:1px solid #6f5e41;box-shadow:inset 0 0 90px #6b57384a}.rm-river{position:absolute;left:-4%;right:-5%;bottom:10%;border-top:8px double #685e49;padding:20px 0 0 44%;font:800 12px Arial;letter-spacing:.2em;color:#564b37;transform:rotate(-5deg)}.rm-line{position:absolute;height:3px;background:#873d31;transform-origin:left center}.l1{left:15%;top:26%;width:66%;transform:rotate(22deg)}.l2{left:17%;top:61%;width:61%;transform:rotate(-18deg)}.l3{left:48%;top:15%;width:54%;transform:rotate(71deg)}.rm-pin{position:absolute;width:38px;height:38px;border-radius:50%;background:#171510;color:#d0b77f;border:2px solid #ad905e;display:grid;place-items:center;font:800 11px Arial}.p1{left:15%;top:27%}.p2{left:46%;top:41%}.p3{right:16%;top:33%}.p4{left:31%;bottom:21%}.route-status{display:grid;gap:9px;margin:4vh 0}.route-status span{border-left:3px solid #866a43;padding:10px 14px;font:800 9px Arial;letter-spacing:.14em;color:#c7b69a;background:#0b0b096b}.crawl-real-assets{padding:14vh 8vw;background:#090a09;display:grid;grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);gap:8vw;align-items:center}.crawl-real-images{display:grid;grid-template-columns:1.1fr .75fr;gap:18px;align-items:end}.crawl-real-images figure{margin:0;background:#d0c3a7;padding:9px;box-shadow:0 24px 65px #000a}.crawl-real-images figure:first-child{transform:rotate(-1deg)}.crawl-real-images figure:last-child{transform:rotate(1.3deg)}.crawl-real-images img{display:block;width:100%;max-height:520px;object-fit:cover;object-position:center;filter:grayscale(1) sepia(.18) contrast(1.06)}.crawl-real-images figcaption{color:#3e362b;font:800 8px Arial;letter-spacing:.13em;padding-top:8px}.crawl-next{padding:14vh 8vw;background:#15110d}.crawl-next .journey-button{margin-right:10px;margin-top:16px}
@media(max-width:900px){.crawl-hero-map{inset:42% -28% 2% 10%;opacity:.5}.crawl-hero-shade{background:linear-gradient(#080907ed 0 45%,#090908c7)}.crawl-tool-grid{grid-template-columns:1fr 1fr}.crawl-cards{grid-template-columns:1fr 1fr}.crawl-feature-route,.crawl-real-assets{grid-template-columns:1fr}.crawl-real-images{grid-template-columns:1fr 1fr}.route-map-paper{min-height:430px}}
@media(max-width:620px){.crawl-hero{padding:18vh 7vw 11vh}.crawl-hero h1{font-size:22vw}.crawl-tools,.crawl-case-grid,.crawl-feature-route,.crawl-real-assets,.crawl-next{padding-left:7vw;padding-right:7vw}.crawl-tool-grid,.crawl-cards,.crawl-real-images{grid-template-columns:1fr}.crawl-tool-grid a{min-height:110px}.crawl-card{min-height:260px}.crawl-route-board{padding:14px}.route-map-paper{min-height:360px}}

/* Prototype 63 v3.2.3 — first verified Crime Crawl route */
.crawl-door-room{padding:12vh 7vw;background:radial-gradient(circle at 50% 0,#2a2017,#090908 58%);border-top:1px solid #4b3928;border-bottom:1px solid #3d2b20}.crawl-door-heading{max-width:940px;margin:0 auto 7vh;text-align:center}.crawl-door-heading h2{font-size:clamp(48px,8vw,105px);line-height:.86;margin:.2em 0}.crawl-door-heading>p:last-child{font-size:clamp(16px,1.8vw,22px);color:#bcae99}.crawl-door-grid{max-width:1300px;margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,44px);perspective:1500px}.crawl-door-frame{position:relative;aspect-ratio:.68/1;background:#050505;border:12px solid #2d2219;border-bottom-width:18px;box-shadow:inset 0 0 60px #000,0 24px 60px #000b;overflow:visible}.crawl-door-reveal{position:absolute;inset:0;padding:34px 28px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(0deg,#050505f5,#0b0a08a8),url('assets/crime-crawl/purple-gang-1928-dhs.webp') center/cover;color:#eadcc4}.crawl-door-unit[data-door="police"] .crawl-door-reveal{background-image:linear-gradient(0deg,#050505f5,#0b0a08a8),url('assets/callbox-open-crop.jpg')}.crawl-door-unit[data-door="city"] .crawl-door-reveal{background-image:linear-gradient(0deg,#050505f5,#0b0a08a8),url('assets/detroit-street-historic.jpg')}.crawl-door-reveal span{font:800 12px Arial;letter-spacing:.2em;color:#c59a57}.crawl-door-reveal strong{font-size:clamp(25px,3vw,42px);line-height:.9;margin:10px 0}.crawl-door-reveal p{font-size:15px;line-height:1.5;color:#c8baa5}.crawl-door-reveal a{color:#e0b46f;font:800 12px Arial;letter-spacing:.1em;text-decoration:none}.crawl-door{position:absolute;inset:0;width:100%;height:100%;border:0;border-left:4px solid #59402d;background:linear-gradient(90deg,#2a1a11,#49301f 48%,#26170f);color:#eddfc8;transform-origin:left center;transform-style:preserve-3d;transition:transform .85s cubic-bezier(.2,.75,.2,1),filter .25s;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;backface-visibility:hidden;box-shadow:inset -20px 0 35px #0008,inset 0 0 0 8px #2b1b12,inset 0 0 0 10px #6b4a31}.crawl-door:focus-visible{outline:3px solid #e2b665;outline-offset:4px}.crawl-door-unit.open .crawl-door{transform:rotateY(-105deg);filter:brightness(.8)}.crawl-door .door-number{font:800 13px Arial;letter-spacing:.24em;color:#bf945b}.crawl-door .door-title{font-size:clamp(27px,3vw,45px);line-height:.9;margin:18px 0;text-align:center}.crawl-door .door-direction{max-width:210px;font:800 11px/1.5 Arial;letter-spacing:.14em;color:#d9c5a4;text-align:center}.crawl-door i{position:absolute;right:22px;top:50%;width:15px;height:15px;border-radius:50%;background:#bb955d;box-shadow:0 0 0 4px #1a100b,0 0 12px #dfbd75}.crawl-door-panel{padding:18px 20px;border:1px solid #5b432f;border-top:0;background:#120e0b;color:#c8baa5;font-size:15px;line-height:1.55}.crawl-door-panel strong{color:#d0ad73}.crawl-door-panel a{display:inline-block;margin-top:8px;color:#edbd72;font:800 12px Arial;letter-spacing:.1em}.crawl-door-sound-note{text-align:center;margin:38px 0 0;color:#796b59;font:800 11px Arial;letter-spacing:.16em}.crawl-door-unit.open .crawl-door-panel{animation:doorPanel .28s ease both}@keyframes doorPanel{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media(max-width:900px){.crawl-door-grid{grid-template-columns:1fr;max-width:470px}.crawl-door-frame{aspect-ratio:.82/1}.crawl-door-unit.open .crawl-door{transform:rotateY(-96deg)}.crawl-door-room{padding-left:6vw;padding-right:6vw}}@media(prefers-reduced-motion:reduce){.crawl-door{transition:none}.crawl-door-unit.open .crawl-door-panel{animation:none}}
.crawl-filters{display:flex;gap:9px;flex-wrap:wrap;margin:28px 0 22px}.crawl-filters button{border:1px solid #715b3d;background:#0d0d0b;color:#d8c9ad;padding:13px 18px;font:800 10px Arial;letter-spacing:.16em;cursor:pointer}.crawl-filters button.active,.crawl-filters button:focus-visible{background:#8b1e1e;color:#fff;border-color:#c05142;outline:2px solid #e0b46f;outline-offset:2px}.crawl-key{max-width:980px;color:#b8aa92;line-height:1.6}.crawl-key b{color:#d0ad73}.crawl-dossier-grid{display:grid;gap:34px;margin-top:7vh}.crawl-dossier{display:grid;grid-template-columns:minmax(310px,.9fr) minmax(0,1.1fr);border:1px solid #5f503b;background:#11100d;overflow:hidden}.crawl-dossier[hidden]{display:none}.crawl-dossier figure{margin:0;display:flex;flex-direction:column;background:#d1c3a5;padding:10px}.crawl-dossier img{display:block;width:100%;height:100%;min-height:420px;object-fit:contain;object-position:center;background:#171510;filter:grayscale(1) sepia(.12) contrast(1.04)}.crawl-dossier figcaption{color:#3e362b;font:800 8px/1.45 Arial;letter-spacing:.11em;padding:9px 5px 2px}.crawl-dossier-copy{padding:clamp(28px,5vw,64px)}.crawl-dossier h3{font-size:clamp(34px,5vw,68px);line-height:.9;margin:.25em 0}.crawl-dossier p{line-height:1.6;color:#c6baa6}.crawl-address{font:800 10px/1.6 Arial!important;letter-spacing:.16em;color:#d0ad73!important}.crawl-tag{display:inline-block;padding:8px 10px;font:800 9px Arial;letter-spacing:.13em;border:1px solid #8a6f49;color:#e4cfaa}.crawl-tag.exact{background:#6c241e}.crawl-tag.event{background:#40321f}.crawl-tag.context{background:#283b3b}.crawl-tag.pending{background:#272727}.photo-note{border-left:3px solid #806946;padding-left:16px;font-size:14px}.crawl-pending{grid-template-columns:1fr;border-style:dashed}.crawl-pending .crawl-dossier-copy{max-width:850px}.crawl-dossier .journey-button{margin-top:12px}@media(max-width:820px){.crawl-dossier{grid-template-columns:1fr}.crawl-dossier img{min-height:0;max-height:none;aspect-ratio:auto}.crawl-dossier-copy{padding:30px 24px}}

/* PROTOTYPE 18 — THE ARCHIVE */
.archive-page{background:#090907;color:#eee7d8}.archive-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:16vh 8vw;overflow:hidden;isolation:isolate;background:#100d09}.archive-hero-files{position:absolute;inset:-3%;z-index:-2;background:linear-gradient(115deg,#0b0a08 0 34%,transparent 34%),url('assets/detective-certificate.jpg') 77% 25%/34% auto no-repeat,url('assets/ford-apprentice-crop.jpg') 88% 72%/38% auto no-repeat,#17130e;filter:grayscale(.65) sepia(.35) contrast(1.05);transform:rotate(.3deg) scale(1.02)}.archive-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080806fb 0 48%,#090806bd 65%,#0908068b),linear-gradient(0deg,#090907f3,transparent 50%,#0808079c)}.archive-hero-copy{max-width:870px}.archive-hero h1{font-size:clamp(88px,15vw,210px);line-height:.68;letter-spacing:-.065em;margin:.16em 0 .24em}.archive-deck{font:800 clamp(18px,2.5vw,34px) Arial;letter-spacing:.13em;text-transform:uppercase;color:#c8a66c;max-width:760px}.archive-manifest{padding:13vh 8vw;max-width:1200px}.archive-manifest h2,.archive-table-copy h2,.archive-method h2,.archive-future-copy h2,.archive-next h2{font-size:clamp(48px,7vw,102px);line-height:.9;margin:.18em 0}.archive-manifest>p:last-child,.archive-table-copy>p,.archive-method>p:last-child,.archive-future-copy>p,.archive-next>p{font-size:clamp(18px,1.8vw,25px);line-height:1.62;color:#c7baa5;max-width:900px}.archive-cabinets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#332a1d}.archive-cabinet{min-height:315px;background:linear-gradient(145deg,#1b1711,#0c0c0a);padding:42px;color:#eee5d6;text-decoration:none;border:1px solid #3f3526;display:grid;grid-template-columns:64px 1fr;grid-template-rows:1fr auto;gap:12px 24px;transition:.3s}.archive-cabinet:hover{background:linear-gradient(145deg,#251d13,#10100d);border-color:#8a6d41}.archive-cabinet>span{font:800 11px Arial;letter-spacing:.18em;color:#8d7655}.archive-cabinet h2{font-size:clamp(32px,4vw,56px);line-height:.95;margin:.2em 0}.archive-cabinet p:not(.eyebrow){color:#b9ae9c;line-height:1.55;max-width:650px}.archive-cabinet b{grid-column:2;font:800 9px Arial;letter-spacing:.17em;color:#cba66b}.archive-cabinet.sealed{background:repeating-linear-gradient(-45deg,#16120f 0 15px,#1a1511 15px 30px);opacity:.88}.archive-table{padding:14vh 8vw;display:grid;grid-template-columns:minmax(0,.75fr) minmax(520px,1.25fr);gap:7vw;align-items:center;background:#13100c}.archive-table.dark{background:#080909}.archive-specimens{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:end}.archive-card{margin:0;background:#d1c3a4;padding:10px;color:#3c3326;box-shadow:0 26px 70px #000a;transform:rotate(-.8deg)}.archive-card:nth-child(even){transform:rotate(.9deg)}.archive-card img{display:block;width:100%;height:430px;object-fit:cover;object-position:center;filter:grayscale(.9) sepia(.25) contrast(1.04)}.archive-card.portrait img{object-position:center 22%}.archive-card.document img{height:500px;object-fit:contain;background:#cfc09e}.archive-card.document.wide{grid-column:1/-1}.archive-card.document.wide img{height:auto;max-height:520px}.archive-card figcaption{font:800 8px Arial;letter-spacing:.13em;padding:9px 4px 2px}.archive-catalog-card,.archive-file-box{align-self:center;border:1px solid #746143;padding:38px;background:#17130e;color:#d5c7ae;box-shadow:0 22px 60px #0008}.archive-catalog-card span,.archive-file-box span{font:800 9px Arial;letter-spacing:.18em;color:#ae8451}.archive-catalog-card strong,.archive-file-box strong{display:block;font-size:32px;margin:12px 0}.archive-catalog-card p,.archive-file-box p{color:#a99d8a;line-height:1.55}.archive-crosslinks{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.archive-crosslinks a{border:1px solid #65533b;padding:10px 12px;text-decoration:none;color:#c8a66c;font:800 9px Arial;letter-spacing:.14em}.archive-method{padding:14vh 8vw;background:#15110d}.archive-method-line{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin:6vh 0 4vh;padding:22px 0;border-top:1px solid #5e4d36;border-bottom:1px solid #5e4d36}.archive-method-line span{font:800 11px Arial;letter-spacing:.16em;color:#d0b37c}.archive-method-line i{font-style:normal;color:#8d3e31}.archive-future{padding:14vh 8vw;background:#080909;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:8vw;align-items:center}.archive-seal{display:inline-block;margin-top:25px;padding:12px 16px;border:2px solid #79352e;color:#b35b4d;font:800 9px Arial;letter-spacing:.18em;transform:rotate(-1deg)}.archive-box-stack{min-height:470px;position:relative}.archive-box-stack div{position:absolute;left:10%;right:8%;height:135px;border:1px solid #6e593b;background:linear-gradient(#75654b,#53452f);color:#2b241b;display:flex;align-items:center;justify-content:center;font:800 12px Arial;letter-spacing:.2em;box-shadow:0 24px 50px #0008}.archive-box-stack div:nth-child(1){top:4%;transform:rotate(-2deg)}.archive-box-stack div:nth-child(2){top:34%;left:4%;right:14%;transform:rotate(1deg)}.archive-box-stack div:nth-child(3){top:64%;left:13%;right:3%;transform:rotate(-.5deg)}.archive-next{padding:14vh 8vw;background:#15110d}.preview-archive:before{content:"";position:absolute;inset:0;z-index:-2;background:url('assets/detective-certificate.jpg') 73% 45%/36% auto no-repeat,url('assets/family-selected.jpg') 18% 54%/28% auto no-repeat,#15110d;filter:grayscale(.8) sepia(.25);opacity:.72}.door-archive{background:linear-gradient(145deg,#17130e,#0b0c0b)}
@media(max-width:900px){.archive-table,.archive-future{grid-template-columns:1fr}.archive-cabinets{grid-template-columns:1fr}.archive-specimens{grid-template-columns:1fr}.archive-card.document.wide{grid-column:auto}.archive-box-stack{min-height:420px}}
@media(max-width:620px){.archive-hero{padding:18vh 7vw 11vh}.archive-hero h1{font-size:22vw}.archive-manifest,.archive-table,.archive-method,.archive-future,.archive-next{padding-left:7vw;padding-right:7vw}.archive-cabinet{grid-template-columns:42px 1fr;padding:28px 22px;min-height:260px}.archive-card img,.archive-card.document img{height:auto;max-height:460px}.archive-hero-files{background-size:50% auto,55% auto}}

/* PROTOTYPE 19 · THE UNOPENED FILES */
.unopened-page{background:#070706;color:#eee6d6}.unopened-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:16vh 8vw;overflow:hidden;isolation:isolate;background:#090806}.unopened-hero:before{content:"";position:absolute;inset:-4%;z-index:-3;background:linear-gradient(90deg,#090806 0 42%,transparent 42%),repeating-linear-gradient(90deg,#17130e 0 10%,#0d0c0a 10% 11%,#211b14 11% 20%,#090806 20% 21%);opacity:.95;transform:perspective(900px) rotateY(-5deg) scale(1.04)}.unopened-hero:after{content:"SEALED  ·  RESTRICTED  ·  PENDING  ·  SEALED  ·  RESTRICTED";position:absolute;right:-4%;top:44%;z-index:-2;transform:rotate(-7deg);border:4px solid #7d392f;color:#9b493c;padding:18px 24px;font:900 clamp(18px,2.2vw,34px) Arial;letter-spacing:.18em;opacity:.38}.unopened-hero-shade{position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 72% 28%,#8f6b2d25,transparent 25%),linear-gradient(90deg,#060605fb 0 50%,#090806c2 72%,#080706e8)}.unopened-hero-copy{max-width:900px}.unopened-hero h1{font-size:clamp(78px,13vw,190px);line-height:.68;letter-spacing:-.065em;margin:.18em 0 .25em}.unopened-deck{font:800 clamp(22px,3vw,42px) Arial;letter-spacing:.1em;text-transform:uppercase;color:#d1ad6c}.unopened-intro{font-size:clamp(17px,1.65vw,23px);line-height:1.62;color:#bfb19a;max-width:820px}.unopened-manifest{padding:13vh 8vw;max-width:1200px}.unopened-manifest h2,.release-copy h2,.tease-copy h2{font-size:clamp(50px,7.5vw,106px);line-height:.88;margin:.2em 0}.unopened-manifest>p:last-child,.release-copy>p:last-child{font-size:clamp(18px,1.8vw,25px);line-height:1.62;color:#c4b7a0;max-width:950px}.sealed-drawers{padding:0 8vw 14vh;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;background:#070706}.sealed-drawer{min-height:390px;display:grid;grid-template-columns:35% 1fr;border:1px solid #4c3e2b;background:linear-gradient(145deg,#18140f,#0b0b09);box-shadow:inset 0 0 80px #0007;overflow:hidden}.drawer-label{position:relative;padding:34px 26px;background:linear-gradient(#756348,#4e412e);color:#292219;display:flex;flex-direction:column;justify-content:space-between;border-right:6px solid #31281d;box-shadow:inset -18px 0 28px #0003}.drawer-label:after{content:"";position:absolute;left:18%;right:18%;top:43%;height:22%;border:1px solid #2b231b55;background:#a18c6855}.drawer-label span{font:900 9px Arial;letter-spacing:.2em}.drawer-label b{font:900 clamp(19px,2vw,30px) Arial;letter-spacing:.08em;line-height:.98;z-index:1}.drawer-copy{padding:42px 34px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.drawer-copy h2{font-size:clamp(36px,4.6vw,64px);line-height:.9;margin:.18em 0}.drawer-copy>p:not(.eyebrow){color:#b9ad98;line-height:1.55;max-width:650px}.drawer-stamp{margin-top:22px;border:2px solid #73362e;color:#a65346;padding:9px 11px;font:900 8px Arial;letter-spacing:.16em;transform:rotate(-1deg)}.sealed-drawer.personal{grid-column:1/-1;grid-template-columns:28% 1fr}.sealed-drawer.personal .drawer-label{background:linear-gradient(#5e5542,#3f392d)}.release-system{padding:14vh 8vw;background:#14100c}.release-chain{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:6vh;padding:24px 0;border-top:1px solid #5d4b33;border-bottom:1px solid #5d4b33}.release-chain span{border:1px solid #675338;padding:11px 13px;font:900 9px Arial;letter-spacing:.15em;color:#d1b57b}.release-chain i{font-style:normal;color:#844137}.unopened-tease{position:relative;padding:18vh 8vw;background:#080808;overflow:hidden}.tease-tape{position:absolute;left:-4%;right:-4%;top:16%;padding:10px 0;background:#b19751;color:#17140e;font:900 10px Arial;letter-spacing:.2em;white-space:nowrap;transform:rotate(-2.5deg);opacity:.7}.tease-copy{padding-top:7vh}.unopened-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.unopened-links a{border:1px solid #6a563b;padding:12px 14px;text-decoration:none;color:#d3b676;font:900 9px Arial;letter-spacing:.15em}.door-unopened{background:repeating-linear-gradient(-45deg,#17120e 0 16px,#201812 16px 32px)}.preview-unopened{background:#090807}.preview-unopened:before{content:"";position:absolute;inset:0;z-index:-2;background:repeating-linear-gradient(90deg,#17130e 0 13%,#090807 13% 14%,#211a12 14% 27%,#090807 27% 28%);opacity:.92}.preview-unopened:after{content:"SEALED";position:absolute;right:9%;top:31%;border:4px solid #7b372f;color:#9e4a3e;padding:16px 20px;font:900 clamp(22px,3.3vw,48px) Arial;letter-spacing:.2em;transform:rotate(-8deg);opacity:.45}
@media(max-width:800px){.sealed-drawers{grid-template-columns:1fr;padding-left:0;padding-right:0}.sealed-drawer,.sealed-drawer.personal{grid-template-columns:1fr;min-height:0}.drawer-label{min-height:170px;border-right:0;border-bottom:5px solid #31281d}.sealed-drawer.personal{grid-column:auto}.unopened-hero{padding:17vh 7vw 12vh}.unopened-hero h1{font-size:20vw}.release-system,.unopened-manifest,.unopened-tease{padding-left:7vw;padding-right:7vw}}

/* PROTOTYPE 23 · EVERY DOOR OPENS */
.door-war{background:linear-gradient(145deg,#242015,#0c0c0a)}
.p23-page{background:#0a0907;color:#eee4d3;min-height:100vh}.p23-hero{min-height:92svh;padding:16vh 8vw;display:flex;align-items:center;position:relative;isolation:isolate;overflow:hidden}.war-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:url('assets/ralph-military-kitchen.jpg') 78% 48%/42% auto no-repeat,#0a0907;filter:grayscale(1) sepia(.22);opacity:.55}.p23-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#090806 0 48%,#090806a8 72%,#090806ed)}.p23-copy{max-width:920px}.p23-copy h1,.sealed-room h1,.p23-doc-hero h1{font-size:clamp(62px,10vw,150px);line-height:.76;letter-spacing:-.055em;margin:.2em 0}.p23-deck{font-size:clamp(21px,2.7vw,38px);line-height:1.15;color:#d1b98f;max-width:880px}.p23-note{max-width:780px;color:#a99c87;line-height:1.55}.p23-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#493c2a}.p23-card{min-height:360px;padding:42px;background:linear-gradient(145deg,#18140f,#0b0b09);color:#eee4d3;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end}.p23-card span,.p23-card b{font:800 10px Arial;letter-spacing:.18em;color:#c59b59}.p23-card h2{font-size:clamp(34px,4.5vw,62px);line-height:.92;margin:.2em 0}.p23-card p{color:#b9ad98;line-height:1.55}.p23-card:hover{background:linear-gradient(145deg,#251c12,#10100d)}.p23-doc-hero{padding:14vh 8vw 10vh;display:grid;grid-template-columns:1fr minmax(320px,.8fr);gap:7vw;align-items:center}.p23-doc-hero>div>p:not(.eyebrow){font-size:clamp(18px,1.8vw,25px);line-height:1.6;color:#c2b59f}.p23-doc-hero figure,.p23-doc-grid figure{background:#d1c3a4;padding:10px;color:#332b20;box-shadow:0 25px 70px #0008;margin:0}.p23-doc-hero img,.p23-doc-grid img{display:block;width:100%;max-height:650px;object-fit:contain;filter:grayscale(.35) sepia(.12)}.p23-doc-hero figcaption,.p23-doc-grid figcaption{font:800 8px Arial;letter-spacing:.13em;padding:10px 4px 2px}.p23-doc-grid{padding:0 8vw 12vh;display:grid;grid-template-columns:repeat(2,1fr);gap:30px;align-items:center}.p23-file-note{border:1px solid #675339;padding:44px}.p23-file-note span{font:800 9px Arial;letter-spacing:.18em;color:#c59b59}.p23-file-note h2{font-size:clamp(38px,5vw,70px);line-height:.9}.p23-file-note p{color:#b8ab95;line-height:1.6}.p23-nav{padding:30px 8vw 60px;display:flex;gap:12px;flex-wrap:wrap;background:#0a0907}.p23-nav a,.sealed-actions a{border:1px solid #6b563b;padding:12px 14px;color:#d0ad6f;text-decoration:none;font:800 9px Arial;letter-spacing:.14em}.sealed-room{min-height:82svh;padding:17vh 8vw 12vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:repeating-linear-gradient(-45deg,#0c0b09 0 26px,#12100c 26px 52px)}.sealed-room .seal{border:4px solid #843d33;color:#b75a4b;padding:14px 18px;font:900 clamp(16px,2.3vw,30px) Arial;letter-spacing:.17em;transform:rotate(-2deg);margin:25px 0}.sealed-room>p:not(.eyebrow,.small){font-size:clamp(18px,2vw,27px);line-height:1.6;color:#c2b49d;max-width:900px}.sealed-room .small{color:#8f8372}.sealed-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:35px}.sealed-drawer{color:inherit;text-decoration:none}.sealed-drawer:hover{border-color:#9a7443}.sealed-drawer{cursor:pointer}
@media(max-width:800px){.p23-grid,.p23-doc-hero,.p23-doc-grid{grid-template-columns:1fr}.p23-hero,.p23-doc-hero,.sealed-room{padding-left:7vw;padding-right:7vw}.war-hero:before{background-size:75% auto;background-position:100% 40%;opacity:.28}.p23-card{min-height:300px}}

/* PROTOTYPE 23A — universal shortcut rail + interactive red hover */
.rp-shortcuts{position:sticky;top:0;z-index:99990;display:flex;align-items:center;gap:0;overflow-x:auto;white-space:nowrap;background:#090909f2;border-bottom:1px solid #4f302b;box-shadow:0 8px 24px #0008;-webkit-overflow-scrolling:touch}
.rp-shortcuts a{flex:0 0 auto;padding:11px 14px;color:#cfc5b3;text-decoration:none;font:800 9px Arial,sans-serif;letter-spacing:.13em;border-right:1px solid #332a24;transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.rp-shortcuts a:hover,.rp-shortcuts a:focus-visible{background:#8b1e1e;color:#fff0d6;box-shadow:inset 0 -3px 0 #d75b4d;outline:none}
body:has(.rp-shortcuts) .topbar{top:34px}

/* Anything presented as a destination/card should visibly go red on hover. */
a.detroit-door,a.p23-card,a.sealed-drawer,a.archive-cabinet,a.archive-card,a.journey-button,.p23-nav a,.sealed-actions a,.unopened-links a,.links a,.route-label,.board-file{transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,filter .18s ease,color .18s ease,transform .18s ease}
a.detroit-door:hover,a.detroit-door:focus-visible,
a.p23-card:hover,a.p23-card:focus-visible,
a.sealed-drawer:hover,a.sealed-drawer:focus-visible,
a.archive-cabinet:hover,a.archive-cabinet:focus-visible,
a.archive-card:hover,a.archive-card:focus-visible,
a.journey-button:hover,a.journey-button:focus-visible,
.p23-nav a:hover,.p23-nav a:focus-visible,
.sealed-actions a:hover,.sealed-actions a:focus-visible,
.unopened-links a:hover,.unopened-links a:focus-visible,
.links a:hover,.links a:focus-visible,
.route-label:hover,.route-label:focus-visible,
.board-file:hover,.board-file:focus-visible{border-color:#c94b3d!important;background-color:#651713!important;box-shadow:0 0 0 2px #a52d25,0 0 26px #a52d2566,inset 0 0 35px #8b1e1e55!important;color:#fff0df!important;outline:none}
@media(max-width:800px){.rp-shortcuts a{padding:10px 11px;font-size:8px}.rp-shortcuts{top:0}body:has(.rp-shortcuts) .topbar{top:32px}}
\n/* Prototype 23B: archival image correction pass */
.war-service-page .p23-doc-hero{grid-template-columns:minmax(0,1fr) minmax(270px,390px);gap:5vw}
.war-service-page .service-photo{padding:8px;justify-self:center;width:min(100%,390px);background:#c9b995}
.war-service-page .service-photo img{width:100%;height:auto;max-height:520px;object-fit:cover;object-position:center 48%;filter:grayscale(.18) sepia(.1)}
.war-service-page .service-docs{align-items:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.war-service-page .document-card{padding:10px;background:#d4c6aa;align-self:start}
.war-service-page .document-card img{height:auto;max-height:520px;object-fit:contain;object-position:center;filter:grayscale(.15) sepia(.08)}
.war-training-page .p23-doc-hero{grid-template-columns:minmax(0,1fr) minmax(300px,520px);gap:5vw}
.war-training-page .training-document{width:min(100%,520px);justify-self:center;padding:10px;background:#d4c6aa}
.war-training-page .training-document img{width:100%;height:auto;max-height:520px;object-fit:contain;filter:none}
.war-amvets-page .p23-doc-hero{grid-template-columns:minmax(0,.85fr) minmax(320px,560px);gap:5vw;align-items:start}
.war-amvets-page .newspaper-document{width:min(100%,560px);justify-self:center;background:#c8b590;padding:9px}
.war-amvets-page .newspaper-document img{width:100%;height:auto;max-height:690px;object-fit:contain;filter:grayscale(.1) sepia(.08)}
.war-amvets-page .amvets-docs{align-items:start;grid-template-columns:minmax(280px,.78fr) minmax(0,1fr)}
.war-amvets-page .newspaper-document.secondary img{max-height:610px}
@media(max-width:800px){
 .war-service-page .p23-doc-hero,.war-training-page .p23-doc-hero,.war-amvets-page .p23-doc-hero{grid-template-columns:1fr}
 .war-service-page .service-photo,.war-training-page .training-document,.war-amvets-page .newspaper-document{width:min(100%,520px);margin-inline:auto}
 .war-service-page .service-docs,.war-amvets-page .amvets-docs{grid-template-columns:1fr}
 .war-service-page .service-photo img{max-height:440px}
 .war-amvets-page .newspaper-document img{max-height:none}
}

/* PROTOTYPE 24 — archive placement and interaction pass */
.patrol-room .uniform-frame{width:min(100%,760px)}
.patrol-room .uniform-frame img{aspect-ratio:4/3;max-height:none;object-fit:cover;object-position:center 42%}
a.police-door:hover,a.map-mode:hover,a.river-card:hover,.journey-button:hover,.crawl-grid article:hover,.case-board .file:hover,[role="link"]:hover{outline:2px solid #b42620!important;outline-offset:-2px;box-shadow:inset 0 0 0 999px rgba(155,20,18,.12),0 0 24px rgba(180,38,32,.18)!important}
.palmer-press-archive{padding:12vh 8vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center;background:#15120e}.palmer-press-archive h2{font-size:clamp(44px,7vw,90px);line-height:.92;margin:.2em 0}.palmer-press-archive p:not(.eyebrow){font-size:clamp(17px,2vw,24px);line-height:1.6;color:#c9c0b0}.palmer-press-archive figure{margin:0;background:#d5c9ad;padding:10px;color:#29251d}.palmer-press-archive img{display:block;width:100%;max-height:72svh;object-fit:contain;filter:grayscale(1) sepia(.08)}.palmer-press-archive figcaption{padding:10px 3px 2px;font:700 8px Arial;letter-spacing:.16em}@media(max-width:800px){.palmer-press-archive{grid-template-columns:1fr;padding:9vh 7vw}}

/* PROTOTYPE 25 — BEFORE THE BADGE: THE PAPER TRAIL */
.bb-hero{min-height:92svh;padding:15vh 8vw 9vh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.7fr);gap:7vw;align-items:center;background:radial-gradient(circle at 80% 35%,#3b3020 0,#17130e 27%,#090907 66%);border-bottom:1px solid #443521}.bb-hero-copy h1,.bb-room-copy h1{font-size:clamp(64px,10vw,145px);line-height:.78;letter-spacing:-.055em;margin:.2em 0}.bb-deck{font-size:clamp(21px,2.5vw,36px);line-height:1.2;color:#d0b98f;max-width:850px}.bb-note,.bb-caution{color:#a99c87;line-height:1.6;max-width:780px;border-left:2px solid #8b1e1e;padding-left:18px}.bb-hero-photo,.bb-gallery figure,.bb-badge-photo{margin:0;background:#d0c2a6;padding:9px;color:#33291e;box-shadow:0 28px 75px #0009}.bb-hero-photo{transform:rotate(1deg)}.bb-hero-photo img{width:100%;display:block;max-height:66vh;object-fit:cover;object-position:center 25%;filter:grayscale(.65) sepia(.16)}.bb-hero-photo figcaption,.bb-gallery figcaption,.bb-badge-photo figcaption{font:800 8px Arial;letter-spacing:.14em;padding:9px 3px 2px}.bb-intro{padding:80px 8vw 55px;max-width:1100px}.bb-intro h2{font-size:clamp(42px,6vw,82px);line-height:.92;margin:.18em 0}.bb-intro p:last-child{font-size:20px;line-height:1.65;color:#b9ad98;max-width:850px}.bb-card{position:relative;overflow:hidden}.bb-card:before{content:"";position:absolute;inset:0;opacity:.16;filter:grayscale(1);transition:opacity .2s ease,transform .3s ease;background-size:cover;background-position:center}.bb-card>*{position:relative;z-index:1}.bb-card:hover:before{opacity:.28;transform:scale(1.025)}.bb-card.family:before{background-image:url('assets/family-selected.jpg')}.bb-card.school:before{background-image:url('assets/ralph-school-class-labeled.webp')}.bb-card.apprentice:before{background-image:url('assets/ford-apprentice-crop.jpg')}.bb-card.engineering:before{background-image:url('assets/tool-engineering-1943.jpg')}.bb-card.service:before{background-image:url('assets/ralph-military-selected.jpg')}.bb-card.return:before{background-image:url('assets/ralph-patrol-uniform-portrait.jpg')}.bb-room{padding:15vh 8vw 10vh;display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:7vw;align-items:start;min-height:90svh;background:radial-gradient(circle at 75% 30%,#2b2419,#0a0907 52%)}.bb-room-copy{position:sticky;top:110px}.bb-room-copy>p:not(.eyebrow,.bb-caution){font-size:clamp(18px,1.8vw,25px);line-height:1.62;color:#c6b9a3}.bb-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:start}.bb-gallery figure img{display:block;width:100%;height:430px;object-fit:cover;object-position:center 28%;filter:grayscale(.4) sepia(.1)}.bb-gallery figure.wide{grid-column:1/-1}.bb-gallery figure.wide img{height:auto;max-height:620px;object-fit:contain}.bb-gallery.docs figure img,.bb-gallery figure.doc img{height:auto;max-height:650px;object-fit:contain}.bb-file-card{border:1px solid #675339;padding:38px;align-self:center}.bb-file-card span{font:800 9px Arial;letter-spacing:.17em;color:#c59b59}.bb-file-card h2{font-size:clamp(36px,4vw,58px);line-height:.95}.bb-file-card p{color:#b8ab95;line-height:1.6}.bb-file-card a,.bb-actions a{display:inline-block;margin-top:14px;border:1px solid #6b563b;padding:13px 15px;color:#d0ad6f;text-decoration:none;font:800 9px Arial;letter-spacing:.14em;transition:.18s}.bb-file-card a:hover,.bb-actions a:hover{background:#651713;border-color:#c94b3d;color:#fff0df;box-shadow:0 0 24px #a52d2566}.bb-transition{align-items:center}.bb-badge-photo img{width:100%;display:block;max-height:720px;object-fit:cover;object-position:center 20%;filter:grayscale(.5) sepia(.1)}.bb-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.bb-actions .primary{background:#7b211b;color:#fff0df;border-color:#b94a3d}
@media(max-width:800px){.bb-hero,.bb-room{grid-template-columns:1fr;padding-left:7vw;padding-right:7vw}.bb-hero{padding-top:18vh}.bb-hero-photo{width:min(78vw,420px)}.bb-room-copy{position:static}.bb-gallery{grid-template-columns:1fr}.bb-gallery figure.wide{grid-column:auto}.bb-gallery figure img{height:auto;max-height:560px;object-fit:contain}.bb-room-copy h1{font-size:clamp(54px,17vw,92px)}}


/* PROTOTYPE 26 — THE STREET */
.street26-page{background:#070809;color:#eee5d5}
.street26-hero{position:relative;min-height:96svh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:6vw;align-items:center;padding:14vh 8vw 10vh;overflow:hidden;isolation:isolate;border-bottom:1px solid #392d22}
.street26-hero:before{content:"";position:absolute;inset:0;z-index:-3;background:url('assets/patrol-four-officers-labeled.webp') 78% 48%/46% auto no-repeat,#070809;filter:grayscale(1) sepia(.1) contrast(1.1);opacity:.65}
.street26-hero:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#070809 0 49%,#070809c9 66%,#07080978 82%,#070809ed),linear-gradient(0deg,#070809e8,transparent 45%,#0708099c)}
.street26-copy{max-width:870px}.street26-copy h1{font-size:clamp(76px,12vw,180px);line-height:.72;letter-spacing:-.065em;margin:.18em 0}.street26-deck{font-size:clamp(22px,2.7vw,39px);line-height:1.18;color:#d1bd97;max-width:800px}.street26-copy .street26-note{max-width:760px;color:#a99e8a;line-height:1.58;border-left:2px solid #8b1e1e;padding-left:18px}.street26-stamp{align-self:end;justify-self:end;border:3px solid #8f332a;color:#b44a3d;padding:12px 16px;font:900 14px Arial;letter-spacing:.2em;transform:rotate(-3deg);background:#090909c7}
.street26-intro{padding:88px 8vw 62px;max-width:1180px}.street26-intro h2{font-size:clamp(46px,7vw,96px);line-height:.9;margin:.18em 0}.street26-intro p:last-child{font-size:clamp(18px,2vw,25px);line-height:1.68;color:#c0b39e;max-width:900px}
.street26-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#3d3025}.street26-card{position:relative;min-height:430px;padding:44px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;color:#eee5d5;text-decoration:none;isolation:isolate;background:#111}
.street26-card:before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:grayscale(1) sepia(.08) contrast(1.1);opacity:.54;transition:.3s}.street26-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#070809f4 3%,#070809a4 58%,#0708093d)}.street26-card:hover:before,.street26-card:focus-visible:before{transform:scale(1.035);opacity:.72}.street26-card:hover,.street26-card:focus-visible{outline:2px solid #b42620!important;outline-offset:-2px;box-shadow:inset 0 0 0 999px rgba(155,20,18,.10),0 0 28px rgba(180,38,32,.2)!important}.street26-card .num{position:absolute;top:27px;right:30px;color:#bca987;font:800 10px Arial;letter-spacing:.2em}.street26-card span,.street26-card b{font:800 10px Arial;letter-spacing:.18em;color:#c99b58}.street26-card h2{font-size:clamp(38px,5vw,70px);line-height:.88;margin:.18em 0}.street26-card p{color:#c3b9a8;line-height:1.55;max-width:620px}.s26-patrol:before{background-image:url('assets/patrol-four-officers-labeled.webp');background-position:center 34%}.s26-callbox:before{background-image:url('assets/callbox-open-crop.jpg')}.s26-uniform:before{background-image:url('assets/ralph-patrol-uniform-portrait.jpg');background-position:center 18%}.s26-first:before{background-image:url('assets/patrolmen-frontpage.jpg');background-position:center 35%}.s26-cases:before{background-image:url('assets/callbox-telegram.jpg');background-position:center}.s26-mcgraw:before{background-image:linear-gradient(145deg,#262016,#0b0b09)}
.street26-band{padding:11vh 8vw;display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:6vw;align-items:center;background:#0e0d0b;border-top:1px solid #392d22}.street26-band figure{margin:0;background:#d0c2a6;padding:10px;color:#32291f;box-shadow:0 30px 80px #000a}.street26-band figure img{width:100%;display:block;max-height:680px;object-fit:contain;filter:grayscale(.55) sepia(.1)}.street26-band figcaption{font:800 8px Arial;letter-spacing:.14em;padding:9px 4px 2px}.street26-band h2{font-size:clamp(48px,7vw,95px);line-height:.9;margin:.15em 0}.street26-band p{font-size:clamp(18px,1.8vw,25px);line-height:1.65;color:#bdb09a}.street26-band .journey-button{margin-top:16px}
.street26-room{min-height:88svh;padding:14vh 8vw 10vh;background:radial-gradient(circle at 78% 28%,#2a2318,#080807 55%);display:grid;grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr);gap:6vw;align-items:start}.street26-room-copy{position:sticky;top:105px}.street26-room-copy h1{font-size:clamp(58px,8vw,118px);line-height:.8;letter-spacing:-.05em;margin:.2em 0}.street26-room-copy>p:not(.eyebrow,.street26-caution){font-size:clamp(18px,1.8vw,25px);line-height:1.62;color:#c4b7a1}.street26-caution{border-left:2px solid #8b1e1e;padding-left:17px;color:#9d917e;line-height:1.55}.street26-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.street26-gallery figure{margin:0;background:#cfc0a4;padding:9px;color:#342a20;box-shadow:0 24px 70px #0009}.street26-gallery img{display:block;width:100%;height:450px;object-fit:cover;object-position:center 28%;filter:grayscale(.45) sepia(.1)}.street26-gallery figure.wide{grid-column:1/-1}.street26-gallery figure.wide img,.street26-gallery figure.doc img{height:auto;max-height:650px;object-fit:contain}.street26-gallery figcaption{font:800 8px Arial;letter-spacing:.13em;padding:9px 4px 2px}.street26-file{border:1px solid #665139;padding:38px;background:#0c0b09}.street26-file span{font:800 9px Arial;letter-spacing:.16em;color:#c59b59}.street26-file h2{font-size:clamp(35px,4vw,58px);line-height:.95}.street26-file p{color:#b7aa95;line-height:1.6}.street26-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.street26-actions a{border:1px solid #6b563b;padding:12px 14px;color:#d0ad6f;text-decoration:none;font:800 9px Arial;letter-spacing:.14em}.street26-actions a:hover{background:#651713;border-color:#c94b3d;color:#fff0df;box-shadow:0 0 24px #a52d2566}
@media(max-width:850px){.street26-hero,.street26-band,.street26-room{grid-template-columns:1fr}.street26-hero:before{background-position:center 75%;background-size:cover;opacity:.28}.street26-stamp{justify-self:start}.street26-grid{grid-template-columns:1fr}.street26-room-copy{position:static}.street26-gallery{grid-template-columns:1fr}.street26-gallery figure.wide{grid-column:auto}.street26-card{min-height:360px}}

/* PROTOTYPE 27 — VICE */
.vice27-page{background:#070707;color:#eee4d4}
.vice27-hero{position:relative;min-height:94svh;padding:15vh 8vw 10vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:6vw;align-items:center;overflow:hidden;isolation:isolate;border-bottom:1px solid #3a2b20}
.vice27-hero:before{content:"";position:absolute;inset:0;z-index:-3;background:radial-gradient(circle at 82% 48%,#2b2117 0,#13110e 30%,#070707 68%);filter:grayscale(.15) sepia(.08) contrast(1.02);opacity:.55}
.vice27-hero:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#070707 0 50%,#070707d5 68%,#0707077e 85%,#070707ee),linear-gradient(0deg,#070707e7,transparent 50%,#070707a8)}
.vice27-copy{max-width:870px}.vice27-copy h1{font-size:clamp(86px,14vw,210px);line-height:.7;letter-spacing:-.07em;margin:.15em 0 .18em}.vice27-deck{font-size:clamp(22px,2.7vw,40px);line-height:1.15;color:#d3bd95;max-width:820px}.vice27-note{color:#a99a82;line-height:1.6;max-width:760px;border-left:2px solid #8b1e1e;padding-left:18px}.vice27-stamp{justify-self:end;align-self:end;border:3px solid #91362d;color:#bd4f42;padding:13px 17px;font:900 14px Arial;letter-spacing:.22em;transform:rotate(-3deg);background:#080808cf}
.vice27-intro{padding:86px 8vw 58px;max-width:1220px}.vice27-intro h2{font-size:clamp(46px,7vw,98px);line-height:.9;margin:.18em 0}.vice27-intro p:last-child{font-size:clamp(18px,2vw,25px);line-height:1.68;color:#c2b39b;max-width:930px}
.vice27-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#3a2d22}.vice27-card{position:relative;min-height:430px;padding:44px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;color:#eee4d4;text-decoration:none;isolation:isolate;background:#111}.vice27-card:before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:grayscale(1) sepia(.09) contrast(1.1);opacity:.5;transition:.3s}.vice27-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#070707f4 2%,#070707a6 58%,#07070742)}.vice27-card:hover:before,.vice27-card:focus-visible:before{transform:scale(1.035);opacity:.7}.vice27-card:hover,.vice27-card:focus-visible{outline:2px solid #b42620!important;outline-offset:-2px;box-shadow:inset 0 0 0 999px rgba(155,20,18,.11),0 0 28px rgba(180,38,32,.23)!important}.vice27-card .num{position:absolute;top:27px;right:30px;color:#bca987;font:800 10px Arial;letter-spacing:.2em}.vice27-card span,.vice27-card b{font:800 10px Arial;letter-spacing:.18em;color:#ca9a56}.vice27-card h2{font-size:clamp(38px,5vw,70px);line-height:.88;margin:.18em 0}.vice27-card p{color:#c3b8a6;line-height:1.55;max-width:620px}
.v27-assignment:before{background-image:url('assets/ralph-suit-portrait-source.jpg');background-position:center 25%}.v27-citation:before{background-image:linear-gradient(145deg,#241d15,#0a0908);background-position:center}.v27-rackets:before{background-image:url('assets/archive-bar-scene.jpg');background-position:center}.v27-raids:before{background-image:url('assets/archive-bar-collage.jpg');background-position:center}.v27-exam:before{background-image:url('assets/detective-certificate.jpg');background-position:center 26%}.v27-afterdark:before{background-image:url('assets/archive-how-to-be-robbed.jpg');background-position:center 18%}
.vice27-band{padding:11vh 8vw;display:grid;grid-template-columns:minmax(0,.92fr) minmax(320px,1.08fr);gap:6vw;align-items:center;background:#0d0b09;border-top:1px solid #392d22}.vice27-band figure{margin:0;background:#d0c2a6;padding:10px;color:#33291f;box-shadow:0 30px 80px #000a;transform:rotate(.35deg)}.vice27-band figure img{width:100%;display:block;max-height:720px;object-fit:contain;filter:sepia(.05) contrast(1.02)}.vice27-band figcaption{font:800 8px Arial;letter-spacing:.14em;padding:9px 4px 2px}.vice27-band h2{font-size:clamp(48px,7vw,98px);line-height:.9;margin:.15em 0}.vice27-band p{font-size:clamp(18px,1.8vw,25px);line-height:1.65;color:#bdb09a}
.vice27-room{min-height:88svh;padding:14vh 8vw 10vh;background:radial-gradient(circle at 78% 28%,#2a2117,#080706 55%);display:grid;grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr);gap:6vw;align-items:start}.vice27-room-copy{position:sticky;top:105px}.vice27-room-copy h1{font-size:clamp(58px,8vw,118px);line-height:.8;letter-spacing:-.05em;margin:.2em 0}.vice27-room-copy>p:not(.eyebrow,.vice27-caution){font-size:clamp(18px,1.8vw,25px);line-height:1.62;color:#c4b7a1}.vice27-caution{border-left:2px solid #8b1e1e;padding-left:17px;color:#9d917e;line-height:1.55}.vice27-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.vice27-gallery figure{margin:0;background:#cfc0a4;padding:9px;color:#342a20;box-shadow:0 24px 70px #0009}.vice27-gallery img{display:block;width:100%;height:450px;object-fit:cover;object-position:center 28%;filter:grayscale(.45) sepia(.1)}.vice27-gallery figure.wide{grid-column:1/-1}.vice27-gallery figure.wide img,.vice27-gallery figure.doc img{height:auto;max-height:680px;object-fit:contain;filter:none}.vice27-gallery figcaption{font:800 8px Arial;letter-spacing:.13em;padding:9px 4px 2px}.vice27-file{border:1px solid #665139;padding:38px;background:#0c0b09}.vice27-file span{font:800 9px Arial;letter-spacing:.16em;color:#c59b59}.vice27-file h2{font-size:clamp(35px,4vw,58px);line-height:.95}.vice27-file p{color:#b7aa95;line-height:1.6}.vice27-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.vice27-actions a{border:1px solid #6b563b;padding:12px 14px;color:#d0ad6f;text-decoration:none;font:800 9px Arial;letter-spacing:.14em}.vice27-actions a:hover{background:#651713;border-color:#c94b3d;color:#fff0df;box-shadow:0 0 24px #a52d2566}
@media(max-width:850px){.vice27-hero,.vice27-band,.vice27-room{grid-template-columns:1fr}.vice27-hero:before{background-position:center 80%;background-size:cover;opacity:.2}.vice27-stamp{justify-self:start}.vice27-grid{grid-template-columns:1fr}.vice27-room-copy{position:static}.vice27-gallery{grid-template-columns:1fr}.vice27-gallery figure.wide{grid-column:auto}.vice27-card{min-height:360px}}

/* PROTOTYPE 28 — DETECTIVE */
.det28-page{background:#070707;color:#eee4d4}.det28-hero{position:relative;min-height:94svh;padding:15vh 8vw 10vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.82fr);gap:6vw;align-items:center;overflow:hidden;isolation:isolate;border-bottom:1px solid #3a2b20}.det28-hero:before{content:"";position:absolute;inset:0;z-index:-3;background:url('assets/detective-certificate.jpg') 84% 50%/40% auto no-repeat,#070707;opacity:.58;filter:grayscale(.08) sepia(.04) contrast(1.03)}.det28-hero:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#070707 0 49%,#070707d8 68%,#0707077b 85%,#070707ed),linear-gradient(0deg,#070707e7,transparent 50%,#070707a8)}.det28-copy{max-width:900px}.det28-copy h1{font-size:clamp(76px,13vw,190px);line-height:.72;letter-spacing:-.065em;margin:.15em 0 .18em}.det28-deck{font-size:clamp(22px,2.7vw,40px);line-height:1.18;color:#d4bd93;max-width:820px}.det28-note{color:#aa9b83;line-height:1.6;max-width:760px;border-left:2px solid #8b1e1e;padding-left:18px}.det28-stamp{justify-self:end;align-self:end;border:3px solid #91362d;color:#bd4f42;padding:13px 17px;font:900 14px Arial;letter-spacing:.22em;transform:rotate(-3deg);background:#080808cf}.det28-intro{padding:86px 8vw 58px;max-width:1220px}.det28-intro h2{font-size:clamp(46px,7vw,98px);line-height:.9;margin:.18em 0}.det28-intro p:last-child{font-size:clamp(18px,2vw,25px);line-height:1.68;color:#c2b39b;max-width:940px}.det28-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#3a2d22}.det28-card{position:relative;min-height:430px;padding:44px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;color:#eee4d4;text-decoration:none;isolation:isolate;background:#111}.det28-card:before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:grayscale(1) sepia(.08) contrast(1.1);opacity:.52;transition:.3s}.det28-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#070707f4 2%,#070707a6 58%,#07070742)}.det28-card:hover:before,.det28-card:focus-visible:before{transform:scale(1.035);opacity:.72}.det28-card:hover,.det28-card:focus-visible{outline:2px solid #b42620!important;outline-offset:-2px;box-shadow:inset 0 0 0 999px rgba(155,20,18,.11),0 0 28px rgba(180,38,32,.23)!important}.det28-card span,.det28-card b{font:800 10px Arial;letter-spacing:.18em;color:#ca9a56}.det28-card .num{position:absolute;top:27px;right:30px;color:#bca987;font:800 10px Arial;letter-spacing:.2em}.det28-card h2{font-size:clamp(38px,5vw,70px);line-height:.88;margin:.18em 0}.det28-card p{color:#c3b8a6;line-height:1.55;max-width:630px}.d28-promotion:before{background-image:url('assets/detective-certificate.jpg');background-position:center 40%}.d28-bureau:before{background-image:url('assets/detective-bureau-composite-source.jpg');background-position:center 38%}.d28-holdup:before{background-image:url('assets/ralph-detective-portraits-source.jpg');background-position:center 32%}.d28-robbery:before{background-image:url('assets/archive-how-to-be-robbed.jpg');background-position:center 20%}.d28-merits:before{background-image:url('assets/palmer-merits-record.jpg');background-position:center 28%}.d28-cases:before{background-image:url('assets/archive-bar-collage.jpg');background-position:center}.det28-band{padding:11vh 8vw;display:grid;grid-template-columns:minmax(0,.92fr) minmax(320px,1.08fr);gap:6vw;align-items:center;background:#0d0b09;border-top:1px solid #392d22}.det28-band figure{margin:0;background:#d0c2a6;padding:10px;color:#33291f;box-shadow:0 30px 80px #000a;transform:rotate(.25deg)}.det28-band figure img{width:100%;display:block;max-height:720px;object-fit:contain}.det28-band figcaption{font:800 8px Arial;letter-spacing:.14em;padding:9px 4px 2px}.det28-band h2{font-size:clamp(48px,7vw,98px);line-height:.9;margin:.15em 0}.det28-band p{font-size:clamp(18px,1.8vw,25px);line-height:1.65;color:#bdb09a}.det28-room{min-height:88svh;padding:14vh 8vw 10vh;background:radial-gradient(circle at 78% 28%,#2a2117,#080706 55%);display:grid;grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr);gap:6vw;align-items:start}.det28-room-copy{position:sticky;top:105px}.det28-room-copy h1{font-size:clamp(58px,8vw,118px);line-height:.8;letter-spacing:-.05em;margin:.2em 0}.det28-room-copy>p:not(.eyebrow,.det28-caution){font-size:clamp(18px,1.8vw,25px);line-height:1.62;color:#c4b7a1}.det28-caution{border-left:2px solid #8b1e1e;padding-left:17px;color:#9d917e;line-height:1.55}.det28-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.det28-gallery figure{margin:0;background:#cfc0a4;padding:9px;color:#342a20;box-shadow:0 24px 70px #0009}.det28-gallery img{display:block;width:100%;height:450px;object-fit:cover;object-position:center 28%;filter:grayscale(.35) sepia(.08)}.det28-gallery figure.wide{grid-column:1/-1}.det28-gallery figure.doc img,.det28-gallery figure.wide img{height:auto;max-height:680px;object-fit:contain;filter:none}.det28-gallery figcaption{font:800 8px Arial;letter-spacing:.13em;padding:9px 4px 2px}.det28-file{border:1px solid #665139;padding:38px;background:#0c0b09}.det28-file span{font:800 9px Arial;letter-spacing:.16em;color:#c59b59}.det28-file h2{font-size:clamp(35px,4vw,58px);line-height:.95}.det28-file p{color:#b7aa95;line-height:1.6}.det28-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.det28-actions a{border:1px solid #6b563b;padding:12px 14px;color:#d0ad6f;text-decoration:none;font:800 9px Arial;letter-spacing:.14em}.det28-actions a:hover{background:#651713;border-color:#c94b3d;color:#fff0df;box-shadow:0 0 24px #a52d2566}@media(max-width:850px){.det28-hero,.det28-band,.det28-room{grid-template-columns:1fr}.det28-hero:before{background-position:center 80%;background-size:cover;opacity:.2}.det28-stamp{justify-self:start}.det28-grid{grid-template-columns:1fr}.det28-room-copy{position:static}.det28-gallery{grid-template-columns:1fr}.det28-gallery figure.wide{grid-column:auto}.det28-card{min-height:360px}}

/* PROTOTYPE 29 — MASTER CHRONOLOGY */
.chrono29-page{background:#080706;color:#eee4d4}
.chrono29-hero{min-height:88svh;padding:15vh 8vw 9vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:7vw;align-items:end;background:radial-gradient(circle at 76% 31%,#4b301b66,transparent 34%),linear-gradient(135deg,#080706 0 55%,#120d09);border-bottom:1px solid #3c2b1e}
.chrono29-hero h1{font-size:clamp(72px,12vw,176px);line-height:.72;letter-spacing:-.065em;margin:.14em 0 .2em}
.chrono29-deck{font-size:clamp(22px,2.6vw,38px);line-height:1.15;color:#d2b681;max-width:860px}
.chrono29-note{max-width:760px;color:#9f917c;line-height:1.6;border-left:2px solid #8b1e1e;padding-left:18px}
.chrono29-index-card{border:1px solid #6a5132;padding:32px;background:#0c0a08;box-shadow:0 25px 70px #0008;transform:rotate(1deg)}
.chrono29-index-card span{font:800 9px Arial;letter-spacing:.2em;color:#c99a55}.chrono29-index-card strong{display:block;font-size:clamp(36px,5vw,70px);line-height:.9;margin:15px 0;color:#eee0c7}.chrono29-index-card p{color:#a99a83;line-height:1.5}
.chrono29-controls{position:sticky;top:34px;z-index:80;display:flex;overflow-x:auto;white-space:nowrap;background:#0c0a08f5;border-bottom:1px solid #4c3324;box-shadow:0 10px 30px #0008;padding-left:6vw}
.chrono-filter{flex:0 0 auto;border:0;border-right:1px solid #3c2c20;background:transparent;color:#c8baa4;padding:15px 16px;font:800 9px Arial;letter-spacing:.14em;cursor:pointer}
.chrono-filter:hover,.chrono-filter:focus-visible,.chrono-filter.active{background:#8b1e1e;color:#fff0dd;outline:none;box-shadow:inset 0 -3px 0 #d75b4d}
.chrono29-board{padding:8vh 8vw 12vh;max-width:1500px;margin:0 auto}
.chrono29-entry{display:grid;grid-template-columns:150px 30px minmax(0,1fr);gap:20px;align-items:stretch;min-height:235px}
.chrono29-entry[hidden]{display:none}
.chrono29-year{padding-top:34px;font:900 clamp(20px,2.4vw,34px) Arial,sans-serif;letter-spacing:-.03em;color:#d1b37d;text-align:right}
.chrono29-line{position:relative}.chrono29-line:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:#55402b}.chrono29-line:after{content:"";position:absolute;left:50%;top:47px;width:13px;height:13px;border-radius:50%;background:#b88a45;transform:translateX(-50%);box-shadow:0 0 0 6px #080706}
.chrono29-entry.major .chrono29-line:after{width:19px;height:19px;background:#9e251f;box-shadow:0 0 0 6px #080706,0 0 30px #8b1e1e88}.chrono29-entry.major .chrono29-year{color:#e0c08b}
.chrono29-card{margin:0 0 28px;padding:30px 34px;border:1px solid #4d3927;background:linear-gradient(145deg,#12100d,#0a0907);transition:.2s}
.chrono29-card:hover{border-color:#a02a24;box-shadow:inset 0 0 0 999px rgba(139,30,30,.07),0 0 28px #8b1e1e35}
.chrono29-card>span{font:800 9px Arial;letter-spacing:.18em;color:#c89a57}.chrono29-card h2{font-size:clamp(31px,4vw,55px);line-height:.92;margin:.2em 0}.chrono29-card>p{font-size:clamp(16px,1.55vw,21px);line-height:1.62;color:#b9ac97;max-width:960px}
.chrono29-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.chrono29-links a{border:1px solid #695238;padding:11px 13px;color:#d3ad70;text-decoration:none;font:800 9px Arial;letter-spacing:.13em;transition:.18s}.chrono29-links a:hover,.chrono29-links a:focus-visible{background:#8b1e1e;border-color:#c44a3e;color:#fff2df;outline:none;box-shadow:0 0 20px #8b1e1e55}
.chrono29-entry.sealed .chrono29-card{background:repeating-linear-gradient(-45deg,#0d0b09 0 22px,#12100c 22px 44px);border-color:#663d34}.chrono29-entry.sealed .chrono29-year{color:#a85b50}
.chrono29-footer-room{padding:11vh 8vw 13vh;background:radial-gradient(circle at 50% 0,#302318,#090806 60%);text-align:center}.chrono29-footer-room h2{font-size:clamp(42px,7vw,92px);line-height:.92;max-width:1120px;margin:.25em auto}.chrono29-footer-room>p:not(.eyebrow){max-width:860px;margin:0 auto;color:#b4a590;line-height:1.65;font-size:clamp(17px,1.8vw,23px)}.chrono29-footer-room .chrono29-links{justify-content:center;margin-top:30px}
@media(max-width:800px){.chrono29-hero{grid-template-columns:1fr;padding-top:13vh}.chrono29-index-card{transform:none}.chrono29-controls{top:32px;padding-left:0}.chrono29-entry{grid-template-columns:82px 20px minmax(0,1fr);gap:10px}.chrono29-year{font-size:17px;padding-top:31px}.chrono29-card{padding:24px 22px}.chrono29-board{padding-left:4vw;padding-right:4vw}.chrono29-line:after{top:42px}}

/* Prototype 35 photo-identification pass */
.bb-gallery figure.school-portrait-feature img{width:100%;height:min(76vh,760px);object-fit:cover;object-position:center 35%;filter:none}
@media(max-width:800px){.bb-gallery figure.school-portrait-feature img{height:auto;max-height:none;object-fit:contain}}

.rp-brandmark{display:flex;align-items:center;justify-content:center;flex:0 0 54px;width:54px;min-width:54px;height:54px;padding:4px 7px 4px 0;text-decoration:none;border-right:1px solid rgba(255,255,255,.05);overflow:hidden}
.rp-brandmark img{display:block!important;width:42px!important;height:46px!important;max-width:42px!important;max-height:46px!important;object-fit:contain!important;border:0!important;filter:none!important;background:transparent!important}
.rp-brandmark:hover,.rp-brandmark:focus-visible{background:#1b1816;outline:1px solid #795135;outline-offset:-1px}
@media(max-width:900px){.rp-brandmark{flex-basis:48px;width:48px;min-width:48px;height:50px;padding-right:4px}.rp-brandmark img{width:36px!important;height:40px!important;max-width:36px!important;max-height:40px!important}}

/* P63 V2 interior wayfinding */
.rp-wayfinder{background:linear-gradient(90deg,#0b0a09,#14110e 52%,#0b0a09);border-bottom:1px solid #3d2d20;color:#9f907b;padding:9px 7vw;font:800 9px/1.4 Arial,Helvetica,sans-serif;letter-spacing:1.55px;text-transform:uppercase;position:relative;z-index:20}
.rp-wayfinder-inner{max-width:1320px;margin:0 auto;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.rp-wayfinder-label{color:#6f6252;letter-spacing:2px;margin-right:3px}.rp-wayfinder a{color:#d7aa64;text-decoration:none;border-bottom:1px solid transparent}.rp-wayfinder a:hover,.rp-wayfinder a:focus-visible{color:#fff;border-bottom-color:#8d1d1d;outline:none}.rp-wayfinder-sep{color:#5e5041}.rp-wayfinder-current{color:#d2c5b1}
.rp-deep-exit{background:#090807;border-top:1px solid #3b2a1d;border-bottom:1px solid #211a14;padding:28px 7vw 32px;text-align:center}.rp-deep-exit-inner{max-width:1040px;margin:0 auto}.rp-deep-exit-kicker{color:#826d54;font:800 9px/1 Arial,Helvetica,sans-serif;letter-spacing:2.1px;text-transform:uppercase;margin:0 0 13px}.rp-deep-exit-links{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.rp-deep-exit a{display:inline-block;border:1px solid #5d442d;color:#d8c7aa;background:#0e0c0a;text-decoration:none;padding:11px 14px;font:800 9px/1.25 Arial,Helvetica,sans-serif;letter-spacing:1.55px;text-transform:uppercase}.rp-deep-exit a:hover,.rp-deep-exit a:focus-visible{background:#7f1c1c;border-color:#aa3434;color:#fff;outline:none}.rp-deep-exit a.rp-section-home{border-color:#8d6a3f;color:#e0b46f}
@media(max-width:900px){.rp-wayfinder{padding:8px 18px;font-size:8px}.rp-deep-exit{padding:24px 18px 28px}.rp-deep-exit-links{gap:8px}.rp-deep-exit a{font-size:8px;padding:10px 12px}}

/* Prototype 63 v3.2.5 — simplified page exits */
html{scroll-behavior:smooth}.rp-deep-exit .rp-back-top{background:transparent;border-color:#4c4033;color:#aaa092}.rp-deep-exit .rp-back-top:hover,.rp-deep-exit .rp-back-top:focus-visible{background:#2a241d;border-color:#71614e;color:#fff}.rp-deep-exit .rp-section-home{border-color:#8d6a3f;color:#e0b46f}

/* Version 63.3.2.6 — clear site pathway entrances. */
.rp-pathway-hub{padding:10vh 7vw;background:#0b0b0a;border-top:1px solid #4b3928;border-bottom:1px solid #4b3928;color:#eee4d2}.rp-pathway-heading{max-width:930px;margin:0 auto 5vh}.rp-pathway-heading h2{font-size:clamp(44px,7vw,92px);line-height:.9;margin:.18em 0}.rp-pathway-heading>p:last-child{font-size:clamp(17px,1.7vw,23px);line-height:1.55;color:#bcae99}.rp-pathway-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:#4b3928;border:1px solid #4b3928}.rp-pathway-grid>a{min-height:290px;padding:28px 24px;background:linear-gradient(145deg,#17140f,#0a0b0a);color:#eee4d2;text-decoration:none;display:flex;flex-direction:column;transition:.2s}.rp-pathway-grid>a:hover,.rp-pathway-grid>a:focus-visible{background:linear-gradient(145deg,#28190f,#11100d);outline:2px solid #a32626;outline-offset:-2px}.rp-pathway-grid span{font:800 9px Arial,Helvetica,sans-serif;letter-spacing:.17em;color:#bd955d}.rp-pathway-grid strong{font:700 clamp(26px,2.5vw,38px)/.95 Georgia,serif;margin:20px 0 14px}.rp-pathway-grid p{font:15px/1.55 Arial,Helvetica,sans-serif;color:#b9ad99;margin:0 0 24px}.rp-pathway-grid b{margin-top:auto;font:800 9px Arial,Helvetica,sans-serif;letter-spacing:.14em;color:#d8aa68}@media(max-width:1050px){.rp-pathway-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-pathway-grid>a:last-child{grid-column:1/-1;min-height:220px}}@media(max-width:620px){.rp-pathway-hub{padding:8vh 18px}.rp-pathway-grid{grid-template-columns:1fr}.rp-pathway-grid>a:last-child{grid-column:auto}.rp-pathway-grid>a{min-height:220px}}
.rp-explore-page>footer~p,.rp-explore-page>footer~div:not(.rp-rights-footer):not(.rp-social-footer){display:none!important}
.rp-crime-crawl-page>footer~p,.rp-crime-crawl-page>footer~div:not(.rp-rights-footer):not(.rp-social-footer){display:none!important}

/* Version 63.3.2.7 — early Detroit and early policing review sections. */
.early-detroit,.early-policing{padding:12vh 7vw;background:#0b0b09;color:#eee4d2;border-top:1px solid #4a3827;border-bottom:1px solid #4a3827}.early-policing{background:radial-gradient(circle at 50% 0,#241a12,#090908 60%)}.early-detroit-head,.early-policing-head{max-width:1050px;margin:0 auto 6vh}.early-detroit-head h2,.early-policing-head h2{font-size:clamp(48px,7.5vw,104px);line-height:.88;margin:.18em 0}.early-detroit-head>p:last-child,.early-policing-head>p:last-child{font-size:clamp(18px,1.8vw,25px);line-height:1.6;color:#c3b59e;max-width:920px}.early-detroit-timeline,.early-policing-line{max-width:1320px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#4c3a27;border:1px solid #4c3a27}.early-detroit-timeline article,.early-policing-line article{min-height:330px;padding:32px 28px;background:linear-gradient(145deg,#17140f,#0b0b0a)}.early-detroit-timeline span,.early-policing-line span{font:800 10px Arial,Helvetica,sans-serif;letter-spacing:.17em;color:#c3985d}.early-detroit-timeline h3,.early-policing-line h3{font-size:clamp(28px,3vw,43px);line-height:.95;margin:22px 0 16px}.early-detroit-timeline p,.early-policing-line p{font:16px/1.6 Arial,Helvetica,sans-serif;color:#b9ad99}.early-source-note{max-width:1050px;margin:5vh auto 0;padding:24px 28px;border-left:4px solid #8f2924;background:#15110d}.early-source-note strong{font:800 10px Arial,Helvetica,sans-serif;letter-spacing:.18em;color:#d1a665}.early-source-note p{font:15px/1.55 Arial,Helvetica,sans-serif;color:#b9ad99}.early-source-note a{display:inline-block;margin:10px 12px 0 0;color:#dfb16c;text-decoration:none;font:800 10px Arial,Helvetica,sans-serif;letter-spacing:.1em}@media(max-width:980px){.early-detroit-timeline,.early-policing-line{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.early-detroit,.early-policing{padding:9vh 18px}.early-detroit-timeline,.early-policing-line{grid-template-columns:1fr}.early-detroit-timeline article,.early-policing-line article{min-height:0}}

/* Version 63.3.2.8 — river, border and Prohibition review layer. */
.prohibition-route{padding:12vh 7vw;background:radial-gradient(circle at 50% 0,#1f2a2b,#090b0b 62%);color:#eee4d2;border-top:1px solid #405355;border-bottom:1px solid #405355}.prohibition-route-head{max-width:1040px;margin:0 auto 6vh}.prohibition-route-head h2{font-size:clamp(48px,7.5vw,104px);line-height:.88;margin:.18em 0}.prohibition-route-head>p:last-child{font-size:clamp(18px,1.8vw,25px);line-height:1.6;color:#c1b7a4;max-width:900px}.prohibition-route-line{max-width:1320px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#536165;border:1px solid #536165}.prohibition-route-line article{position:relative;min-height:310px;padding:34px 28px;background:linear-gradient(145deg,#151b1c,#090b0b)}.prohibition-route-line article:not(:last-child):after{content:'→';position:absolute;right:-13px;top:48%;z-index:2;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#8b2521;color:#fff;font:800 13px Arial}.prohibition-route-line span{font:800 10px Arial;letter-spacing:.17em;color:#d0a766}.prohibition-route-line h3{font-size:clamp(30px,3.2vw,46px);line-height:.95;margin:22px 0 16px}.prohibition-route-line p{font:16px/1.6 Arial;color:#b9ad99}.route-boundary{max-width:1050px;margin:5vh auto 0;padding:22px 26px;border-left:4px solid #8b2521;background:#101414;color:#b9ad99;font:15px/1.6 Arial}.route-boundary strong{color:#d4aa68}@media(max-width:850px){.prohibition-route-line{grid-template-columns:repeat(2,minmax(0,1fr))}.prohibition-route-line article:nth-child(2):after{display:none}}@media(max-width:620px){.prohibition-route{padding:9vh 18px}.prohibition-route-line{grid-template-columns:1fr}.prohibition-route-line article{min-height:0}.prohibition-route-line article:after{display:none!important}}

/* Version 63.3.2.8.1 — one consistent bottom-navigation system. */
.rp-canonical-exit .rp-deep-exit-links{align-items:stretch}.rp-canonical-exit .rp-previous-page,.rp-canonical-exit .rp-next-page{min-width:min(290px,100%);max-width:440px;display:flex;align-items:center;justify-content:center}.rp-canonical-exit .rp-next-page{border-color:#8d6a3f;color:#e0b46f}.rp-canonical-exit .rp-back-top{min-width:130px}
body:has(.rp-canonical-exit) main>.links:last-child,body:has(.rp-canonical-exit) main>.city-next:last-child a,body:has(.rp-canonical-exit) main>.river-next:last-child a,body:has(.rp-canonical-exit) main>.crawl-next:last-child a,body:has(.rp-canonical-exit) main>.police-next:last-child a{display:none!important}
body:has(.rp-canonical-exit)>footer~p,body:has(.rp-canonical-exit)>footer~div:not(.rp-rights-footer):not(.rp-social-footer){display:none!important}
body:has(.rp-canonical-exit) .rp-legacy-direction,body:has(.rp-canonical-exit) .sealed-actions{display:none!important}
@media(max-width:620px){.rp-canonical-exit .rp-deep-exit-links{display:grid}.rp-canonical-exit .rp-previous-page,.rp-canonical-exit .rp-next-page,.rp-canonical-exit .rp-back-top{width:100%;max-width:none}}


/* Mobile navigation: prevent sticky touch hover from leaving multiple menus visible. */
@media (max-width:900px){
  .rp-dd:not(.open) > .rp-menu{display:none!important}
  .rp-dd.open > .rp-menu{display:block!important}
}


/* Immersive reading navigation — reversible September 2026 cleanup */
.rp-wayfinder,
.rp-shortcuts,
.p23-nav {
  display: none !important;
}


/* Image visibility and logo contrast — September 2026 */
/* Navigation logo: preserve the approved artwork while lifting dark detail. */
body .rp-brandmark img {
  filter: brightness(1.18) contrast(1.18) saturate(1.03) !important;
}

/* Homepage opening mark: more visible behind the title without competing with it. */
body .opening .rp-opening-brand {
  opacity: .30 !important;
  filter: grayscale(.94) sepia(.18) brightness(1.08) contrast(1.18) !important;
}

/* Historical scene photographs: lift shadows and let more of each image through. */
body .scenic-image {
  filter: grayscale(.96) sepia(.06) brightness(1.10) contrast(1.16) !important;
}
body .scenic-shade:not(.paper-shade) {
  opacity: .82 !important;
}
body .before-scene::before {
  opacity: .34 !important;
  filter: grayscale(.96) sepia(.06) brightness(1.08) contrast(1.16) !important;
}

/* Keep the treatment slightly brighter on narrow phone screens. */
@media (max-width: 900px) {
  body .rp-brandmark img {
    filter: brightness(1.24) contrast(1.20) saturate(1.03) !important;
  }
  body .opening .rp-opening-brand {
    opacity: .34 !important;
    filter: grayscale(.92) sepia(.16) brightness(1.12) contrast(1.18) !important;
  }
  body .scenic-image {
    filter: grayscale(.94) sepia(.05) brightness(1.12) contrast(1.15) !important;
  }
  body .scenic-shade:not(.paper-shade) {
    opacity: .78 !important;
  }
  body .before-scene::before {
    opacity: .38 !important;
  }
}


/* Explore Detroit destination-image correction — September 2026 */
.door-city::before {
  background-image: url('assets/woodward-from-maccabees-detroit-july-1942.jpg') !important;
  background-position: center 45% !important;
}
.door-streets::before {
  background-image: url('assets/second-avenue-detroit-july-1942.jpg') !important;
  background-position: center 55% !important;
}
.door-river::before {
  background-image: url('assets/ambassador-bridge-river.jpg') !important;
  background-position: center 48% !important;
}
.door-border::before {
  background-image: url('assets/detroit-river-railroad-tunnel.jpg') !important;
  background-position: center 50% !important;
}
.door-news::before {
  background-image: url('assets/detroit-free-press-building-shelby-street.jpg') !important;
  background-position: center 48% !important;
}
.door-war::before {
  background-image: url('assets/highland-park-chrysler-workers-1942.jpg') !important;
  background-position: center 45% !important;
}
.door-night::before {
  background-image: url('assets/detroit-bar-interior.jpg') !important;
  background-position: center 55% !important;
}
.door-police::before {
  background-image: url('assets/patrol-four-officers-labeled.webp') !important;
  background-position: center 42% !important;
}
.door-cases::before {
  background-image: url('assets/archive-how-to-be-robbed.jpg') !important;
  background-position: center 38% !important;
}
.door-chronicles::before {
  background-image: url('assets/book-one-selected.jpg') !important;
  background-position: center 50% !important;
}
.door-archive::before {
  background-image: url('assets/archive-bar-collage.jpg') !important;
  background-position: center 46% !important;
}
.door-unopened::before {
  background-image: url('assets/ralph-suit-portrait-source.jpg') !important;
  background-position: center 30% !important;
}
.detroit-door::before {
  filter: grayscale(.96) sepia(.06) brightness(1.06) contrast(1.16) !important;
}
.detroit-door::after {
  background: linear-gradient(0deg,rgba(6,7,8,.88) 0%,rgba(9,10,11,.64) 46%,rgba(8,9,11,.22) 100%) !important;
}
.detroit-door:hover::before,
.detroit-door:focus-visible::before {
  filter: grayscale(.88) sepia(.05) brightness(1.14) contrast(1.16) !important;
}
@media (max-width: 900px) {
  .detroit-door::before {
    filter: grayscale(.94) sepia(.05) brightness(1.08) contrast(1.15) !important;
  }
  .detroit-door::after {
    background: linear-gradient(0deg,rgba(6,7,8,.86) 0%,rgba(9,10,11,.60) 48%,rgba(8,9,11,.18) 100%) !important;
  }
}


/* User-supplied newspaper-table photograph for The Evidence That Survived */
.door-archive::before {
  background-image: url('assets/archive-newspaper-table.jpg') !important;
  background-size: cover !important;
  background-position: center 54% !important;
}
@media (max-width: 900px) {
  .door-archive::before {
    background-position: center 55% !important;
  }
}


/* Distinct mobile accordion navigation — September 2026 */
@media (max-width: 900px) {
  .rp-topnav.rp-mobile-open {
    padding-bottom: 12px !important;
    background: #0c0b0a !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd {
    display: block !important;
    margin: 7px 0 0 !important;
    border: 1px solid #5e4935 !important;
    background: #171411 !important;
    box-shadow: 0 4px 12px rgba(0,0,0,.28) !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd > button {
    position: relative !important;
    min-height: 58px !important;
    padding: 25px 48px 12px 16px !important;
    background: #171411 !important;
    color: #f0e3cf !important;
    border: 0 !important;
    border-left: 4px solid #795135 !important;
    letter-spacing: 1.35px !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd > button::before {
    content: "MAIN SECTION" !important;
    position: absolute !important;
    top: 9px !important;
    left: 16px !important;
    color: #a98a63 !important;
    font: 800 8px/1 Arial, Helvetica, sans-serif !important;
    letter-spacing: 1.6px !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd > button::after {
    content: "+" !important;
    position: absolute !important;
    right: 17px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #d4aa70 !important;
    font: 400 24px/1 Arial, Helvetica, sans-serif !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd.open {
    border-color: #a77a43 !important;
    box-shadow: 0 0 0 1px rgba(167,122,67,.25),0 7px 18px rgba(0,0,0,.42) !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd.open > button {
    background: #741b19 !important;
    color: #fff7e8 !important;
    border-left-color: #d3a363 !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd.open > button::before {
    content: "OPEN SECTION" !important;
    color: #efd2a4 !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd.open > button::after {
    content: "−" !important;
    color: #fff1d9 !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd > .rp-menu {
    margin: 0 !important;
    padding: 5px 0 8px 18px !important;
    background: #0d0c0b !important;
    border: 0 !important;
    border-top: 1px solid #7c5636 !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd > .rp-menu > a,
  .rp-topnav.rp-mobile-open > .rp-dd > .rp-menu > .rp-subhead,
  .rp-topnav.rp-mobile-open > .rp-dd > .rp-menu > .rp-nested {
    border-left: 2px solid #493724 !important;
    background: #151311 !important;
  }

  .rp-topnav.rp-mobile-open > .rp-dd > .rp-menu > a {
    padding-left: 20px !important;
  }
}


/* Mobile current-section header — September 2026 */
.rp-mobile-current-section {
  display: none;
}
@media (max-width: 900px) {
  body .rp-topnav {
    grid-template-columns: auto minmax(0,1fr) auto !important;
    column-gap: 8px !important;
  }
  body .rp-topnav > .rp-brandmark {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  body .rp-topnav > .rp-mobile-current-section {
    display: block !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: center !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    color: #d8b77e !important;
    font: 900 clamp(8px,2.5vw,11px)/1.2 Arial,Helvetica,sans-serif !important;
    letter-spacing: clamp(.6px,.28vw,1.4px) !important;
    text-align: center !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  body .rp-topnav > .rp-mobile-menu-toggle {
    grid-column: 3 !important;
    grid-row: 1 !important;
    min-width: 82px !important;
    margin-left: 0 !important;
  }
  body .rp-topnav.rp-mobile-open > .rp-dd {
    grid-column: 1 / -1 !important;
  }
}


/* Full-screen mobile site directory and location trail — September 2026 */
.rp-mobile-directory-intro,.rp-mobile-directory-close,.rp-mobile-page-location{display:none}
@media(max-width:900px){
body.rp-mobile-directory-active{overflow:hidden!important}
body .rp-topnav.rp-mobile-open{position:fixed!important;inset:0!important;z-index:1000000!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;grid-auto-rows:max-content!important;align-content:start!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;padding:0 10px 22px!important;background:linear-gradient(rgba(6,5,4,.98),rgba(13,10,8,.99)),#090806!important}
body .rp-topnav.rp-mobile-open>.rp-brandmark,body .rp-topnav.rp-mobile-open>.rp-mobile-current-section,body .rp-topnav.rp-mobile-open>.rp-mobile-menu-toggle{position:sticky!important;top:0!important;z-index:4!important;background:#0b0908!important}
body .rp-topnav.rp-mobile-open>.rp-mobile-menu-toggle{min-width:92px!important;color:#fff4df!important;border-color:#a77a43!important;background:#741b19!important}
.rp-mobile-directory-intro{display:grid!important;grid-column:1/-1!important;grid-template-columns:1fr auto!important;gap:8px 14px!important;margin:15px 0 8px!important;padding:20px 16px 18px!important;border:1px solid #795135!important;border-left:4px solid #b7894e!important;background:#17130f!important;color:#f2e7d4!important}
.rp-mobile-directory-kicker{grid-column:1!important;color:#b99565!important;font:900 9px/1 Arial,Helvetica,sans-serif!important;letter-spacing:2px!important}
.rp-mobile-directory-intro strong{grid-column:1!important;margin-top:4px!important;color:#fff6e8!important;font:900 17px/1.1 Arial,Helvetica,sans-serif!important;letter-spacing:1.5px!important}
.rp-mobile-directory-trail{grid-column:1/-1!important;color:#e0c18f!important;font:800 11px/1.55 Arial,Helvetica,sans-serif!important;letter-spacing:.55px!important}
.rp-mobile-directory-trail b{padding:0 4px!important;color:#b43a31!important}
.rp-mobile-directory-intro small{grid-column:1/-1!important;max-width:520px!important;color:#b8aa95!important;font:12px/1.5 Arial,Helvetica,sans-serif!important}
.rp-mobile-directory-close{appearance:none!important;border:1px solid #8e603c!important;background:#231b15!important;color:#f6ead6!important;font:900 10px/1 Arial,Helvetica,sans-serif!important;letter-spacing:1.25px!important;cursor:pointer!important}
.rp-mobile-directory-close-top{display:block!important;grid-column:2!important;grid-row:1/span 2!important;align-self:start!important;padding:10px 11px!important}
.rp-mobile-directory-close-bottom{display:block!important;grid-column:1/-1!important;width:100%!important;min-height:48px!important;margin:14px 0 0!important}
body .rp-topnav.rp-mobile-open>.rp-dd{position:relative!important;grid-column:1/-1!important;width:100%!important}
body .rp-topnav.rp-mobile-open>.rp-dd>button::before{content:"MAIN SECTION"!important}
body .rp-topnav.rp-mobile-open>.rp-dd.rp-current-main-section>button::before{content:"CURRENT SECTION"!important;color:#f0ca91!important}
body .rp-topnav.rp-mobile-open>.rp-dd.open>button::before{content:"OPEN SECTION"!important}
body .rp-topnav.rp-mobile-open>.rp-dd.open.rp-current-main-section>button::before{content:"CURRENT · OPEN"!important}
body .rp-topnav.rp-mobile-open .rp-current-page-link{position:relative!important;padding-left:38px!important;color:#fff8ec!important;background:#5e1917!important;border-left-color:#d7aa64!important}
body .rp-topnav.rp-mobile-open .rp-current-page-link::before{content:"YOU ARE HERE"!important;display:block!important;margin-bottom:5px!important;color:#e6c28d!important;font:900 8px/1 Arial,Helvetica,sans-serif!important;letter-spacing:1.4px!important}
.rp-mobile-page-location{display:block!important;position:sticky!important;top:54px!important;z-index:99990!important;width:100%!important;padding:7px 12px!important;overflow:hidden!important;border-bottom:1px solid #4d3523!important;background:rgba(16,13,10,.96)!important;color:#c8ab7b!important;font:800 8px/1.35 Arial,Helvetica,sans-serif!important;letter-spacing:.65px!important;text-align:center!important;text-overflow:ellipsis!important;white-space:nowrap!important}
}

/* Solve Monthly Crime — live evidence cards */
.rp-monthly-clue{position:relative;padding:54px 22px;background:linear-gradient(180deg,#0b0907,#050505);border-block:1px solid #62431f;color:#eee2c8}
.rp-monthly-clue-inner{width:min(860px,100%);margin:0 auto;padding:30px;border:1px solid #7b5729;background:#11100d;box-shadow:0 18px 42px rgba(0,0,0,.45)}
.rp-monthly-clue-kicker{margin:0 0 10px;color:#d7aa64;font:900 10px/1.35 Arial,sans-serif;letter-spacing:2.4px;text-transform:uppercase}
.rp-monthly-clue h2{margin:0 0 18px;font:900 clamp(30px,5vw,52px)/1 Impact,"Arial Narrow",Arial,sans-serif;letter-spacing:1px;text-transform:uppercase}
.rp-monthly-clue p,.rp-monthly-clue li{color:#cbbda6;font:16px/1.7 Georgia,serif}
.rp-monthly-clue-evidence{margin:22px 0;padding:17px 19px;border-left:4px solid #a62323;background:#090807;color:#f0dfc2;font:900 15px/1.55 Arial,sans-serif;letter-spacing:1.2px;text-transform:uppercase}
.rp-monthly-clue-lines{margin:20px 0;padding:20px 22px;background:#e4d3b7;color:#17110c;border:1px solid #9a7847;font:700 15px/1.85 Georgia,serif}
.rp-monthly-clue-next{display:inline-block;margin-top:12px;border:1px solid #9d2a2a;background:#741919;color:#fff;padding:13px 17px;text-decoration:none;font:900 10px/1 Arial,sans-serif;letter-spacing:1.5px;text-transform:uppercase}
.rp-monthly-clue-next:hover,.rp-monthly-clue-next:focus-visible{background:#9a2020;outline:2px solid #e4d3b7;outline-offset:2px}
@media(max-width:700px){.rp-monthly-clue{padding:38px 16px}.rp-monthly-clue-inner{padding:23px 19px}.rp-monthly-clue p,.rp-monthly-clue li{font-size:15px}.rp-monthly-clue-lines{padding:17px 16px;font-size:14px}}

/* Solve Monthly Crime — consistent yellow case-open tape */
.rp-monthly-crime-tape{display:block;width:100%;margin:0 0 18px;padding:13px 18px;background:linear-gradient(#f0c419,#f0c419) center/100% calc(100% - 10px) no-repeat,repeating-linear-gradient(135deg,#151515 0 10px,#f0c419 10px 20px);border:1px solid #f8db55;color:#111;text-align:center;font:900 12px/1.25 Arial,Helvetica,sans-serif;letter-spacing:2.2px;text-transform:uppercase;box-shadow:0 5px 18px rgba(0,0,0,.34)}
.rp-monthly-clue .rp-monthly-crime-tape{margin:-2px 0 20px}
.rp-menu a[href="evidence-hunt.html"]{background:#e7bd20!important;color:#111!important;font-weight:900!important}
.rp-menu a[href="evidence-hunt.html"]:hover,.rp-menu a[href="evidence-hunt.html"]:focus{background:#ffe36a!important;color:#000!important}
@media(max-width:700px){.rp-monthly-crime-tape{padding:11px 12px;font-size:10px;letter-spacing:1.5px}}



/* Mobile header edge spacing — preserve logo, centered label and Menu sizing. */
@media (max-width: 900px) {
  html body .rp-topnav:not(.rp-mobile-open) {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  html body .rp-topnav.rp-mobile-open {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* Monthly Crime interaction: only the homepage tape is a link. */
.rp-monthly-crime-tape{pointer-events:none!important;cursor:default!important}
.rp-monthly-clue-next{
  background:#b01818!important;
  border-color:#ef5a5a!important;
  color:#fff!important;
}
.rp-monthly-clue-next:hover,
.rp-monthly-clue-next:focus-visible{background:#d12121!important}

