:root{--paper:#f7f5ef;--ink:#111214;--muted:#5e5f60;--line:#aaa9a2;--red:#a82226;--blue:#173d67;--yellow:#dca400}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}.page-frame{width:min(1440px,100%);margin:auto;padding-left:5.9vw;padding-right:5.9vw}.site-header{height:100px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:30px;padding:0 6vw;background:var(--paper)}.brand{font:600 36px/1 "Playfair Display",serif;color:var(--ink);text-decoration:none;letter-spacing:-.06em}.masthead-note{border-left:1px solid var(--line);padding-left:28px;font:500 10px/1.25 "DM Mono",monospace;letter-spacing:.14em}.desktop-nav{margin-left:auto;display:flex;gap:27px;align-items:center;font-size:14px}.desktop-nav a{color:var(--ink);text-decoration:none}.desktop-nav a:hover,.text-link:hover,.section-bar a:hover{color:var(--red)}.menu-toggle{display:none;background:none;border:0}.mobile-nav{display:none}.hero{min-height:498px;display:grid;grid-template-columns:60px minmax(370px,.92fr) 1.25fr;gap:0;border-bottom:1px solid var(--line)}.street-rail{border-right:1px solid var(--line);display:flex;align-items:center;flex-direction:column;gap:0;text-align:center}.street-rail>div{width:100%;min-height:92px;padding:25px 5px 12px;border-bottom:1px solid var(--line);font-family:"DM Mono",monospace}.street-rail strong{display:block;font:400 28px/1 "Playfair Display"}.street-rail span{display:block;font-size:10px;margin-top:4px}.street-rail .rail-active{color:var(--blue);border-bottom:2px solid var(--blue)}.route-badge{background:var(--yellow);border-radius:50%;font:bold 22px/38px "DM Sans";height:38px;width:38px;margin-top:20px}.street-rail small{font:500 9px/1.15 "DM Mono";margin-top:5px}.down-arrow{font-size:24px;font-weight:400;margin-top:10px}.hero-copy{padding:43px 48px 28px}.eyebrow,.story-kicker{font:500 10px "DM Mono",monospace;letter-spacing:.15em;text-transform:uppercase}.eyebrow i{display:inline-block;background:var(--red);border-radius:50%;width:5px;height:5px;margin:0 8px 2px}.hero h1,.about-intro h1{font:600 clamp(54px,6.1vw,92px)/.87 "Playfair Display",serif;letter-spacing:-.055em;text-transform:uppercase;margin:41px 0 25px}.hero h1 em,.about-intro h1 em,.article-title h1 em,.columns h2 em{color:var(--red);font-style:normal}.red-rule{width:47px;height:3px;background:var(--red);margin:22px 0}.hero-dek{font-size:19px;line-height:1.45;max-width:355px}.route-link{display:flex;align-items:center;gap:12px;margin-top:35px;color:var(--red);font:500 11px "DM Mono";text-transform:uppercase;letter-spacing:.08em;text-decoration:none}.route-link .route-node{height:15px;width:15px;border:3px solid var(--red);border-radius:50%;position:relative}.route-link .route-node:before{content:"";height:2px;width:80px;background:var(--red);position:absolute;right:12px;top:4px}.route-link b{font-size:22px;font-weight:400;margin-left:8px}.hero-media{margin:16px 0 16px;position:relative;overflow:hidden;background:#232323}.hero-media img{width:100%;height:100%;object-fit:cover;filter:none}.about-media img,.reading-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08)}.hero-media figcaption,.reading-image figcaption,.about-media figcaption{position:absolute;bottom:0;left:0;right:0;padding:13px 15px;display:flex;justify-content:space-between;background:rgba(17,18,20,.9);color:#fff;font:500 9px "DM Mono";letter-spacing:.1em}.section-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:17px 0 13px}.section-bar h2{font-size:16px;margin:0;font-weight:500}.section-bar a{color:var(--red);font:500 10px "DM Mono";text-decoration:none;letter-spacing:.1em}.section-bar a b{font:20px Arial;margin-left:14px}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.story-card{position:relative;display:grid;grid-template-columns:38% 1fr;gap:16px;padding:18px 22px 25px 0;border-right:1px solid var(--line);text-decoration:none;color:var(--ink)}.story-card:not(:first-child){padding-left:22px}.story-card:last-child{border-right:0}.story-index{font:27px "Playfair Display";color:var(--red);position:absolute;left:0;top:16px}.story-card img{grid-column:1;width:100%;height:178px;object-fit:cover;filter:grayscale(1);margin-top:2px}.story-card>div{grid-column:2}.story-kicker{color:var(--blue);margin:5px 0 14px;font-size:9px}.story-card h3{font:500 22px/1.03 "Playfair Display";margin:0 0 12px}.story-summary{font-size:13px;line-height:1.4;margin:0 0 24px}.story-card small{font:500 9px "DM Mono";letter-spacing:.04em}.story-card small i,.byline i{display:inline-block;background:var(--ink);border-radius:50%;height:4px;width:4px;margin:0 7px 2px}.card-arrow{position:absolute;right:18px;bottom:22px;color:var(--red);font-size:22px;font-weight:400}.columns{min-height:260px;margin-top:36px;display:grid;grid-template-columns:24% 30% 46%;align-items:stretch;background:var(--ink);color:#fff}.columns-sign{background:var(--blue);padding:38px 30px;display:flex;align-items:center;gap:24px}.columns-sign span{font:500 55px "Playfair Display"}.columns-sign b{border-left:1px solid #fff;padding-left:18px;font:500 14px "DM Mono"}.map-line{position:relative;background:#eee7da;overflow:hidden}.map-line:before,.map-line:after{content:"";position:absolute;height:3px;width:130%;background:var(--blue);top:45%;left:-10%;transform:rotate(17deg)}.map-line:after{background:var(--red);top:58%;transform:rotate(-26deg)}.map-line span{position:absolute;width:18px;height:18px;border:4px solid var(--red);background:#eee7da;border-radius:50%;z-index:1;top:43%;left:62%}.columns-copy{padding:33px 42px}.columns-copy .eyebrow{color:#fff}.columns h2{font:500 40px/.94 "Playfair Display";margin:15px 0}.columns-copy>p:not(.eyebrow){max-width:350px;color:#d6d4cf;font-size:14px;line-height:1.5}.text-link{color:var(--red);font:500 11px "DM Mono";text-transform:uppercase;text-decoration:none;letter-spacing:.08em}.text-link b{font:20px Arial;margin-left:12px}.site-footer{display:flex;align-items:center;justify-content:space-between;padding-top:35px;padding-bottom:35px;color:var(--muted);font:500 9px "DM Mono";letter-spacing:.1em}.site-footer .brand{color:var(--ink);font-size:26px}.about-hero{display:grid;grid-template-columns:60px 1fr 43%;min-height:500px;border-bottom:1px solid var(--line)}.about-intro{padding:62px 7vw}.about-intro h1{margin-top:38px}.about-media{margin:16px 0 16px;position:relative;overflow:hidden}.about-body{display:grid;grid-template-columns:38% 1fr;gap:10%;padding-top:70px;padding-bottom:80px}.about-body>div{max-width:690px}.about-body p{font-size:18px;line-height:1.72;margin:0 0 28px}.about-body .lead-copy{font:500 31px/1.25 "Playfair Display"}.about-body .text-link{display:inline-block;margin-top:18px}.article-title{padding-top:38px;padding-bottom:47px;border-bottom:1px solid var(--line)}.back-link{display:inline-block;color:var(--red);font:500 10px "DM Mono";letter-spacing:.1em;text-transform:uppercase;text-decoration:none;margin-bottom:44px}.article-title h1{max-width:1060px;font:600 clamp(50px,6vw,88px)/.9 "Playfair Display";letter-spacing:-.055em;text-transform:uppercase;margin:24px 0}.article-title .hero-dek{max-width:620px}.byline{color:var(--red);font:500 10px "DM Mono";letter-spacing:.1em;margin-top:35px}.reading-layout{display:grid;grid-template-columns:1fr 1fr;min-height:900px}.reading-image{position:sticky;top:0;height:100vh;margin:0;overflow:hidden;background:#222}.reading-image figcaption{left:5vw;right:auto;bottom:24px}.reading-copy{padding:85px 10vw 100px 8vw;max-width:780px}.reading-copy p{font-size:18px;line-height:1.85;margin:0 0 28px}.lead-copy{font:500 29px/1.35 "Playfair Display"}.reading-copy h2{font:500 40px/1 "Playfair Display";margin:58px 0 24px}.reading-copy blockquote{border-left:4px solid var(--red);padding:10px 0 10px 24px;margin:50px 0;font:italic 30px/1.3 "Playfair Display"}.article-end{border-top:1px solid var(--line);padding-top:22px;margin-top:60px;color:var(--muted);font:500 10px "DM Mono";letter-spacing:.1em;display:flex;justify-content:space-between;gap:20px}.article-end a{color:var(--red);text-decoration:none}.progress{position:fixed;right:22px;top:45%;height:120px;width:2px;background:var(--line);z-index:5}.progress span{display:block;height:42%;background:var(--red)}

body.quote-page{position:relative;overflow-x:hidden;background:linear-gradient(180deg,#f7f5ef 0%,#f3eee5 100%)}body.quote-page:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(rgba(17,18,20,.045) .7px,transparent .7px);background-size:18px 18px;opacity:.35;mix-blend-mode:multiply}.quote-page-shell{padding-top:0}.quote-hero{padding-top:22px;padding-bottom:36px}.quote-intro{padding:10px 0 22px;border-bottom:1px solid var(--line)}.quote-intro h1{margin:16px 0 14px;font:600 clamp(58px,6.7vw,92px)/.88 "Playfair Display",serif;letter-spacing:-.06em;text-transform:capitalize}.quote-intro .quote-dek{max-width:540px;font-size:19px;line-height:1.45;color:var(--muted);margin:0}.quote-layout{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(360px,.98fr) 112px;gap:22px;align-items:start;padding-top:24px}.quote-feed{min-width:0}.quote-searchbar{display:grid;grid-template-columns:minmax(0,1fr) 128px;border:1px solid var(--line);background:#fbfaf6}.quote-search{display:flex;align-items:center;gap:15px;padding:18px 20px;font:500 16px "DM Mono",monospace;color:var(--muted)}.quote-search span{font-size:18px;color:var(--ink)}.quote-search input{width:100%;border:0;background:transparent;color:var(--ink);font:500 16px "DM Mono",monospace;outline:none}.quote-search input::placeholder{color:#84817d}.quote-tool{border:0;border-left:1px solid var(--line);background:transparent;font:500 14px "DM Mono",monospace;color:var(--ink);display:flex;align-items:center;justify-content:center;gap:10px;letter-spacing:.06em}.quote-tags{display:flex;flex-wrap:wrap;gap:12px;padding:14px 0 14px}.quote-tag{border:1px solid var(--line);background:transparent;padding:10px 15px;font:500 13px "DM Mono",monospace;color:var(--ink);display:flex;gap:10px;align-items:center}.quote-tag span{color:var(--muted)}.quote-tag.is-active{background:var(--ink);color:var(--paper)}.quote-tag.is-active span{color:var(--paper)}.quote-toolbar{display:flex;align-items:center;gap:26px;padding:6px 0 17px;font:500 12px "DM Mono",monospace;color:var(--muted)}.quote-toolbar-group{display:flex;align-items:center;gap:10px}.quote-toolbar-group span{color:var(--ink)}.quote-toolbar button{border:0;background:transparent;padding:0;font:inherit;color:var(--ink)}.quote-toolbar b{font-family:Arial,sans-serif;font-size:12px;font-weight:400;margin-left:4px}.quote-results{margin-left:auto;color:var(--ink)}.quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quote-card{position:relative;min-height:250px;border:1px solid #d6d2c8;background:#fbfaf6;padding:18px 17px 14px 16px;display:flex;flex-direction:column;justify-content:space-between}.quote-card__mark{font:600 28px/1 "Playfair Display",serif;color:var(--ink)}.quote-card__quote{font:500 23px/1.08 "Playfair Display",serif;letter-spacing:-.03em;margin:0;max-width:92%}.quote-card__author,.quote-card__date{font:500 12px "DM Mono",monospace;color:var(--muted);margin:0}.quote-card__author{margin-top:10px}.quote-card__date{margin-top:4px}.quote-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:12px;border-top:1px solid #e3ddd1;color:var(--red)}.quote-card__footer b{font-size:18px;font-weight:400}.quote-card__check{position:absolute;top:10px;left:10px;height:20px;width:20px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font:700 12px/1 Arial,sans-serif}.quote-card.is-selected{background:#f5efd9;box-shadow:inset 0 0 0 1px var(--ink)}.quote-card.is-selected .quote-card__quote{max-width:100%}.quote-chip{border:1px solid currentColor;padding:4px 8px;font:500 11px "DM Mono",monospace;letter-spacing:.06em}.chip-film{color:#173d67}.chip-politics{color:#a82226}.chip-media{color:#6a7fa1}.chip-identity{color:#485867}.quote-panel{border:1px solid var(--line);background:#fbfaf6;padding:24px 22px 18px;position:sticky;top:16px}.quote-panel__head{display:flex;align-items:center;justify-content:space-between;font:500 13px "DM Mono",monospace;letter-spacing:.12em;margin-bottom:20px}.quote-panel__head button{border:0;background:none;font-size:30px;line-height:1;padding:0;color:var(--ink)}.quote-panel__mark{font:600 58px/1 "Playfair Display",serif;color:var(--red);margin-bottom:2px}.quote-panel__quote blockquote{margin:0;font:600 clamp(56px,4.2vw,74px)/.92 "Playfair Display",serif;letter-spacing:-.06em}.quote-panel__author,.quote-panel__date{font:500 13px "DM Mono",monospace;color:var(--ink);margin:16px 0 0}.quote-panel__date{margin-top:8px;color:var(--muted)}.quote-panel__source{border-top:1px solid #e3ddd1;margin-top:18px;padding-top:15px}.quote-panel__source span,.quote-section-title{display:block;font:500 12px "DM Mono",monospace;letter-spacing:.12em;color:var(--muted)}.quote-panel__source p{margin:10px 0 0;font-size:16px;line-height:1.5;max-width:280px}.quote-read{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding:16px 18px;background:var(--ink);color:var(--paper);text-decoration:none;font:500 12px "DM Mono",monospace;letter-spacing:.12em}.quote-read b{font:400 22px/1 Arial,sans-serif}.quote-panel__related{border-top:1px solid #e3ddd1;margin-top:22px;padding-top:18px}.related-card{margin-top:14px}.related-card__image{height:116px;display:flex;align-items:flex-end;padding:14px 15px;background:linear-gradient(135deg,#ddd3bd,#b9a894);border:1px solid #d7cdb7;overflow:hidden;position:relative}.related-card__image:before{content:"";position:absolute;inset:12px 26px auto auto;height:78px;width:78px;border-radius:50%;border:4px solid rgba(17,18,20,.85);box-shadow:0 0 0 10px rgba(247,245,239,.55) inset}.related-card__image:after{content:"";position:absolute;left:22px;right:22px;bottom:18px;height:2px;background:rgba(17,18,20,.55);transform:rotate(-8deg)}.related-card__image span{position:relative;z-index:1;font:600 12px "DM Mono",monospace;letter-spacing:.1em;background:rgba(17,18,20,.84);color:#fff;padding:5px 8px}.related-card__image--didion{background:linear-gradient(135deg,#ece1c8,#beb2a1)}.related-card h3{font:500 24px/1.05 "Playfair Display",serif;margin:12px 0 6px}.related-card__author,.related-card__meta,.related-card__date{margin:0;font:500 11px "DM Mono",monospace;color:var(--muted)}.related-card__meta{margin-top:10px;color:var(--ink)}.related-card__date{margin-top:4px}.quote-panel__more{border-top:1px solid #e3ddd1;margin-top:20px;padding-top:16px}.quote-panel__more a{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:start;padding:13px 0;color:var(--ink);text-decoration:none;border-bottom:1px solid #e3ddd1;font-size:14px;line-height:1.35}.quote-panel__more a:last-child{border-bottom:0}.quote-panel__more span{grid-column:1/-1;font:500 11px "DM Mono",monospace;color:var(--muted);margin-top:2px}.quote-panel__more b{font-size:18px;font-weight:400;align-self:center}.quote-rail{border-left:1px solid var(--line);padding-left:20px;display:flex;flex-direction:column;gap:24px;position:sticky;top:16px}.quote-rail__status{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:8px}.quote-rail__status strong{font:600 20px "Playfair Display",serif;letter-spacing:-.04em}.quote-rail__status span{display:block;width:18px;height:3px;background:var(--red)}.quote-rail__track{display:flex;flex-direction:column;align-items:center;gap:30px;padding:0 0 10px}.quote-rail__track i{display:block;height:8px;width:8px;border-radius:50%;background:#b8b5af;opacity:.85}.quote-rail__track i.is-active{height:18px;width:18px;border:2px solid var(--red);background:#fbfaf6;box-shadow:0 0 0 2px rgba(17,18,20,.08)}.quote-rail__track:before{content:"";display:block;width:1px;height:300px;background:linear-gradient(180deg,transparent 0,var(--line) 10%,var(--line) 90%,transparent 100%);margin-bottom:-8px}.quote-rail__count{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;font:500 12px "DM Mono",monospace;letter-spacing:.14em;color:var(--ink)}.quote-rail__count strong{font:600 18px "Playfair Display",serif;letter-spacing:-.03em}.quote-rail__feature,.quote-rail__export{border-top:1px solid var(--line);padding-top:16px}.art-card{height:148px;display:flex;flex-direction:column;justify-content:flex-end;gap:9px;padding:12px 12px 14px;margin-top:14px;position:relative;color:#fff;overflow:hidden}.art-card strong,.art-card a{position:relative;z-index:1}.art-card strong{font:600 17px/1.02 "DM Mono",monospace;letter-spacing:.08em;max-width:110px;text-transform:uppercase}.art-card a{font:500 12px "DM Mono",monospace;letter-spacing:.1em;color:#fff;text-decoration:none}.art-card--orange{background:linear-gradient(145deg,#f06922,#a8231c)}.art-card--blue{background:linear-gradient(145deg,#b9d2e8,#5f8fb2)}.art-card__eye,.art-card__figure{position:absolute;inset:17px 16px auto auto;display:block;height:72px;width:72px;border-radius:50%;background:radial-gradient(circle at 50% 50%,transparent 0 12px,rgba(17,18,20,.88) 12px 17px,transparent 17px 100%)}.art-card__eye:before,.art-card__figure:before{content:"";position:absolute;left:-10px;right:-10px;top:32px;height:14px;border-radius:999px;background:rgba(17,18,20,.88)}.art-card__figure{inset:auto auto 34px 16px;height:66px;width:66px;border-radius:18px;background:rgba(17,18,20,.76)}.art-card__figure:before{display:none}.art-card__figure:after{content:"";position:absolute;inset:11px 17px 11px 17px;border-radius:999px;background:linear-gradient(180deg,#7bc0d8,#1b3851)}.quote-rail__export{display:grid;grid-template-columns:1fr;gap:16px}.quote-rail__export a{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:500 14px "DM Mono",monospace;letter-spacing:.08em}.quote-rail__export a:before{content:"◫";font-size:16px;color:var(--muted)}.quote-rail__export a + a:before{content:"◧"}@media(max-width:1200px){.quote-layout{grid-template-columns:minmax(0,1fr)}.quote-panel,.quote-rail{position:relative;top:auto}.quote-rail{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:22px}.quote-rail__track:before{height:180px}.quote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.site-header{height:78px;padding:0 6vw}.brand{font-size:29px}.masthead-note,.desktop-nav{display:none}.menu-toggle{display:flex;margin-left:auto;flex-direction:column;gap:6px;padding:8px}.menu-toggle span{display:block;width:21px;height:1px;background:var(--ink)}.mobile-nav{display:none;position:absolute;z-index:10;right:0;top:78px;width:210px;padding:20px 24px;background:var(--paper);border:1px solid var(--line);flex-direction:column;gap:18px;text-transform:uppercase;font:500 11px "DM Mono"}.mobile-nav.open{display:flex}.mobile-nav a{color:var(--ink);text-decoration:none}.hero{display:block;padding:0}.street-rail{display:none}.hero-copy{padding:43px 7vw 28px}.hero h1,.about-intro h1{font-size:clamp(52px,14vw,82px)}.hero-media{height:58vw;min-height:280px;margin:0}.hero-media figcaption{font-size:8px}.archive{padding-left:6vw;padding-right:6vw}.story-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.story-card{min-width:88%;scroll-snap-align:start;border-right:1px solid var(--line);padding-right:22px}.story-card:not(:first-child){padding-left:22px}.columns{margin-top:24px;display:block}.columns-sign{min-height:110px}.map-line{height:110px}.columns-copy{padding:34px 7vw 44px}.site-footer{padding-left:6vw;padding-right:6vw;gap:20px;flex-wrap:wrap}.about-hero{display:block;min-height:0}.about-intro{padding:43px 7vw 40px}.about-media{height:70vw;min-height:300px;margin:0}.about-body{display:block;padding:55px 7vw 65px}.about-body>p{margin-bottom:30px}.about-body .lead-copy{font-size:27px}.article-title{padding:34px 7vw 38px}.article-title h1{font-size:clamp(47px,12vw,76px)}.reading-layout{display:block;min-height:0}.reading-image{position:relative;height:64vw;min-height:280px}.reading-copy{padding:55px 8vw 80px}.reading-copy p{font-size:17px;line-height:1.78}.reading-copy .lead-copy{font-size:25px}.reading-copy h2{font-size:35px}.reading-copy blockquote{font-size:27px}.article-end{flex-direction:column}.progress{display:none}.quote-hero{padding-top:14px}.quote-intro h1{font-size:clamp(52px,12vw,74px)}.quote-intro .quote-dek{font-size:17px}.quote-searchbar{grid-template-columns:1fr}.quote-tool{border-left:0;border-top:1px solid var(--line);padding:16px 20px}.quote-tags{gap:10px}.quote-grid{grid-template-columns:1fr}.quote-toolbar{flex-wrap:wrap;gap:12px}.quote-results{margin-left:0}.quote-panel{padding:20px 18px}.quote-panel__quote blockquote{font-size:42px}.quote-panel__more a{grid-template-columns:minmax(0,1fr) auto}.quote-rail__status,.quote-rail__track,.quote-rail__count{display:none}.quote-rail__feature{border-top:0;padding-top:0}.quote-rail__export{grid-template-columns:1fr 1fr}.art-card{height:132px}} 
@media(max-width:900px){.site-header{height:78px;padding:0 6vw}.brand{font-size:29px}.masthead-note,.desktop-nav{display:none}.menu-toggle{display:flex;margin-left:auto;flex-direction:column;gap:6px;padding:8px}.menu-toggle span{display:block;width:21px;height:1px;background:var(--ink)}.mobile-nav{display:none;position:absolute;z-index:10;right:0;top:78px;width:210px;padding:20px 24px;background:var(--paper);border:1px solid var(--line);flex-direction:column;gap:18px;text-transform:uppercase;font:500 11px "DM Mono"}.mobile-nav.open{display:flex}.mobile-nav a{color:var(--ink);text-decoration:none}.hero{display:block;padding:0}.street-rail{display:none}.hero-copy{padding:43px 7vw 28px}.hero h1,.about-intro h1{font-size:clamp(52px,14vw,82px)}.hero-media{height:58vw;min-height:280px;margin:0}.hero-media figcaption{font-size:8px}.archive{padding-left:6vw;padding-right:6vw}.story-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.story-card{min-width:88%;scroll-snap-align:start;border-right:1px solid var(--line);padding-right:22px}.story-card:not(:first-child){padding-left:22px}.columns{margin-top:24px;display:block}.columns-sign{min-height:110px}.map-line{height:110px}.columns-copy{padding:34px 7vw 44px}.site-footer{padding-left:6vw;padding-right:6vw;gap:20px;flex-wrap:wrap}.about-hero{display:block;min-height:0}.about-intro{padding:43px 7vw 40px}.about-media{height:70vw;min-height:300px;margin:0}.about-body{display:block;padding:55px 7vw 65px}.about-body>p{margin-bottom:30px}.about-body .lead-copy{font-size:27px}.article-title{padding:34px 7vw 38px}.article-title h1{font-size:clamp(47px,12vw,76px)}.reading-layout{display:block;min-height:0}.reading-image{position:relative;height:64vw;min-height:280px}.reading-copy{padding:55px 8vw 80px}.reading-copy p{font-size:17px;line-height:1.78}.reading-copy .lead-copy{font-size:25px}.reading-copy h2{font-size:35px}.reading-copy blockquote{font-size:27px}.article-end{flex-direction:column}.progress{display:none}}

/* Article wireframe: keep the visual anchored while the reading pane moves. */
@media(min-width:901px){
  .reading-layout{height:min(900px,calc(100vh - 100px));min-height:680px;overflow:hidden}
  .reading-image{position:relative;height:100%}
  .reading-copy{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--red) transparent;scrollbar-width:thin}
  .reading-copy::-webkit-scrollbar{width:8px}
  .reading-copy::-webkit-scrollbar-thumb{background:var(--red)}
}

/* Global mobile menu state: the hamburger becomes a clear close control. */
@media (max-width: 900px) {
  .menu-toggle {
    position: relative;
    width: 37px;
    height: 37px;
    align-items: center;
    justify-content: center;
  }

  .menu-toggle span {
    position: absolute;
    left: 8px;
    transform-origin: center;
    transition: transform 180ms ease, opacity 140ms ease;
  }

  .menu-toggle span:first-child { top: 14px; }
  .menu-toggle span:last-child { top: 20px; }

  .menu-toggle[aria-expanded="true"] span:first-child {
    transform: translateY(3px) rotate(45deg);
  }

  .menu-toggle[aria-expanded="true"] span:last-child {
    transform: translateY(-3px) rotate(-45deg);
  }
}
@media(max-width:900px){
  .reading-layout{height:auto;min-height:0;overflow:visible}
  .reading-copy{height:auto;overflow:visible}
}

/* Preserve the complete article artwork inside its reading frame. */
.reading-gallery{background:#222;display:flex;align-items:center;justify-content:center}
.reading-gallery img{width:100%;height:100%;object-fit:contain;filter:none}

/* Keep the custom article progress indicator and hide the browser scrollbar chrome. */
.progress{display:block}
@media(min-width:901px){
  .reading-copy{scrollbar-width:none}
  .reading-copy::-webkit-scrollbar{width:0;height:0}
}

/* Desktop articles use one page scroll; the image remains pinned beside the copy. */
@media(min-width:901px){
  .reading-layout{height:auto;min-height:900px;overflow:visible}
  .reading-image{position:sticky;height:100vh;top:0}
  .reading-copy{height:auto;overflow:visible}
}

/* Keep native scrolling behavior while replacing the browser scrollbar with the site rail. */
html,body{scrollbar-width:none}
html::-webkit-scrollbar,body::-webkit-scrollbar{display:none;width:0;height:0}

/* Keep the complete portrait collage visible on mobile. */
@media(max-width:900px){
  .hero-media{height:auto;min-height:0;aspect-ratio:945 / 1665}
  .hero-media img{object-fit:contain}
}

/* Keep the yellow R route marker geometrically circular at every viewport. */
.route-badge{
  aspect-ratio:1 / 1;
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:grid;
  place-items:center;
  line-height:1;
  border-radius:50%;
}

@media(max-width:900px){
  .route-badge{
    width:38px;
    height:38px;
    flex-basis:38px;
  }
}

.reading-gallery{cursor:zoom-in}.gallery-controls{position:absolute;right:18px;bottom:22px;display:flex;gap:8px}.gallery-controls button{width:34px;height:34px;border:1px solid rgba(255,255,255,.7);background:rgba(17,18,20,.8);color:#fff;font:18px Arial;cursor:pointer}.gallery-controls button:hover{background:var(--red)}.image-lightbox{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;overflow:auto;-webkit-overflow-scrolling:touch;padding:5vh 5vw;background:rgba(10,11,12,.94);cursor:zoom-out}.image-lightbox[hidden]{display:none}.image-lightbox img{max-width:none;max-height:none;width:auto;height:auto;object-fit:contain;filter:none;flex:none;transition:width .18s ease,height .18s ease;touch-action:none;-webkit-user-drag:none}.image-lightbox [data-lightbox-close]{position:fixed;top:20px;right:28px;border:0;background:none;color:#fff;font:36px Arial;cursor:pointer;z-index:2}.image-lightbox p{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);color:#fff;font:500 10px "DM Mono";letter-spacing:.1em;z-index:2}.image-lightbox__nav{position:fixed;top:50%;transform:translateY(-50%);width:50px;height:50px;border:1px solid rgba(255,255,255,.42);border-radius:50%;background:rgba(17,18,20,.72);color:#fff;font:24px Arial;display:grid;place-items:center;cursor:pointer;z-index:2}.image-lightbox__nav:hover,.image-lightbox__zoom button:hover{background:var(--red)}.image-lightbox__nav--prev{left:18px}.image-lightbox__nav--next{right:18px}.image-lightbox__zoom{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);display:flex;gap:8px;align-items:center;z-index:2}.image-lightbox__zoom button{min-width:44px;height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(17,18,20,.72);color:#fff;font:500 12px \"DM Mono\";letter-spacing:.12em;cursor:pointer}.image-lightbox.is-zoomed img{cursor:grab}.image-lightbox.is-dragging img,.image-lightbox.is-pinch img{cursor:grabbing}

/* Final hero sizing: the yellow R marker is exactly 50px and the collage is 3% shorter. */
.route-badge{
  width:50px;
  height:50px;
  flex:0 0 50px;
  aspect-ratio:1 / 1;
  display:grid;
  place-items:center;
  line-height:1;
  border-radius:50%;
}

@media(min-width:901px){
  .hero{min-height:483px}
}

@media(max-width:900px){
  .hero-media{aspect-ratio:945 / 1615}
}

/* Requested UI fixes: remove image text bars and keep story numbers visible. */
.hero-media figcaption,
.reading-image figcaption,
.about-media figcaption{display:none}

.story-card{
  grid-template-columns:42px 34% minmax(0,1fr);
  padding-left:0;
}
.story-card:not(:first-child){padding-left:22px}
.story-index{
  position:static;
  grid-column:1;
  grid-row:1;
  align-self:start;
  z-index:1;
}
.story-card img{grid-column:2}
.story-card>div{grid-column:3}
.story-grid.is-collapsed .story-card:nth-of-type(n+4){display:none}
.story-reveal{
  margin:18px auto 0;
  width:46px;
  height:46px;
  border:1px solid var(--line);
  border-radius:50%;
  background:transparent;
  color:var(--red);
  display:grid;
  place-items:center;
  cursor:pointer;
}
.story-reveal span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.story-reveal b{font:400 28px/1 Arial,sans-serif;transition:transform .2s ease}
.story-reveal[aria-expanded="true"] b{transform:rotate(180deg)}

.archive-link-label--short{display:none}

.quote-card{color:var(--ink);text-decoration:none}
.quote-card.is-hidden,.quote-card[hidden]{display:none}
.quote-card:hover{border-color:var(--ink)}
.quote-tool{color:var(--ink);text-decoration:none}
.quote-panel__head a{color:var(--ink);text-decoration:none;font-size:22px}

@media(max-width:900px){
  .story-reveal{display:none}
  .archive-link-label--full{display:none}
  .archive-link-label--short{display:inline}

  .story-card,
  .story-card:not(:first-child){
    grid-template-columns:42px 35% minmax(0,1fr);
    padding-left:0;
  }
}

/* About page: tighter editorial layout with live-page imagery. */
.about-hero{min-height:430px;grid-template-columns:60px minmax(0,1fr) 38%}
.about-intro{padding:42px 5vw 34px}
.about-intro h1{margin:28px 0 18px}
.about-media{margin:12px 0}
.about-media img{filter:none}
.about-story{grid-template-columns:24% minmax(0,1fr);gap:5%;padding-top:44px;padding-bottom:52px}
.about-story__content{max-width:930px}
.about-story p{margin-bottom:18px}
.about-story .lead-copy{margin-bottom:28px}
.about-story__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,34%);gap:28px;align-items:center;margin:22px 0}
.about-story__row--reverse{grid-template-columns:minmax(220px,32%) minmax(0,1fr)}
.about-inline-media,.about-banner-media{margin:0;overflow:hidden;background:var(--paper)}
.about-inline-media{aspect-ratio:1 / 1}
.about-inline-media--portrait{aspect-ratio:3 / 4}
.about-inline-media img,.about-banner-media img{width:100%;height:100%;object-fit:cover;display:block;filter:none}
.about-banner-media{height:260px;margin:26px 0}
.street-rail > .route-badge{
  width:50px;
  height:50px;
  min-height:0;
  flex:0 0 50px;
  padding:0;
  margin-top:20px;
  border:0;
  border-radius:50%;
}
.quote-hero--railed{
  display:grid;
  grid-template-columns:60px minmax(0,1fr);
  gap:0;
  padding-top:0;
  padding-bottom:0;
}
.quote-hero--railed .street-rail{
  min-height:calc(100vh - 100px);
}
.quote-main{
  min-width:0;
  padding:22px 0 36px 32px;
}

@media(max-width:900px){
  .about-hero{display:block}
  .about-intro{padding:34px 7vw 28px}
  .about-media{height:auto;min-height:0;aspect-ratio:1 / 1}
  .about-story{display:block;padding:36px 7vw 46px}
  .about-story__row,.about-story__row--reverse{display:block;margin:20px 0}
  .about-inline-media{margin:18px 0;aspect-ratio:1 / 1}
  .about-inline-media--portrait{aspect-ratio:3 / 4}
  .about-banner-media{height:auto;aspect-ratio:1 / 1;margin:20px 0}
  .quote-hero--railed{display:block;padding-top:14px;padding-bottom:36px}
  .quote-main{padding:0}
}

/* About page as a feature profile: it follows the article-reading rhythm. */
.about-feature-title{display:grid;grid-template-columns:60px minmax(0,1fr);gap:0;padding-top:0;padding-bottom:0}
.about-feature-title .street-rail{min-height:430px}
.about-feature-title__copy{padding:52px 7vw 48px}
.about-feature-title h1{max-width:900px;margin:24px 0}
.about-feature-title .hero-dek{max-width:570px}
.about-feature-layout{min-height:980px}
.about-feature-image{background:var(--paper);display:flex;align-items:flex-end;justify-content:center;padding:30px 4vw 0}
.about-feature-image img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:none}
.about-feature-copy{max-width:840px}
.about-feature-copy .article-pull-quote{margin-top:0}
.about-feature-copy .about-story__row,.about-feature-copy .about-story__row--reverse{display:block;margin:30px 0 58px}
.about-feature-copy .about-inline-media{width:min(48%,320px);margin:24px 0 0 auto;aspect-ratio:4 / 3}
.about-feature-copy .about-story__row--reverse .about-inline-media{width:min(42%,280px);margin:0 auto 26px 0}
.about-feature-copy .about-inline-media--portrait{width:min(48%,300px);aspect-ratio:3 / 4}
.about-feature-copy .about-banner-media{height:auto;aspect-ratio:16 / 9;margin:18px 0 46px}
.about-feature-copy .article-end{margin-top:64px}

@media(max-width:900px){
  .about-feature-title{display:block;padding:34px 7vw 38px}
  .about-feature-title .street-rail{display:none}
  .about-feature-title__copy{padding:0}
  .about-feature-layout{min-height:0}
  .about-feature-image{height:82vw;min-height:360px;padding:18px 6vw 0}
  .about-feature-copy .about-story__row,.about-feature-copy .about-story__row--reverse{margin:24px 0 42px}
  .about-feature-copy .about-inline-media,.about-feature-copy .about-story__row--reverse .about-inline-media{width:100%;margin:22px 0 0}
  .about-feature-copy .about-story__row--reverse .about-inline-media{margin:0 0 22px}
  .about-feature-copy .about-inline-media--portrait{width:82%;margin-left:auto;margin-right:auto}
  .about-feature-copy .about-banner-media{aspect-ratio:1 / 1}
}
