/* A press article keeps its own URL while opening over the editorial index. */
body.press-reading-open{overflow:hidden}
body.press-reading-open .recognition-track{animation-play-state:paused!important}

dialog.press-reader{
 --reader-paper:#e9e5d8;
 --reader-ink:#10110f;
 --reader-rule:rgba(16,17,15,.23);
 --reader-gutter:clamp(28px,4.3vw,76px);
 position:fixed;
 inset:0;
 z-index:100;
 width:100vw;
 height:100vh;
 height:100dvh;
 max-width:none;
 max-height:none;
 margin:0;
 padding:0;
 border:0;
 border-radius:0;
 overflow:hidden;
 color:var(--reader-ink);
 background:transparent;
 overscroll-behavior:contain;
 text-align:left;
}
dialog.press-reader[open]{display:block}
.press-reader::backdrop{
 background:rgba(0,0,0,.36);
 opacity:1;
 transition:opacity 620ms ease;
}
.press-reader-panel{
 width:90%;
 height:100%;
 overflow-x:hidden;
 overflow-y:auto;
 overscroll-behavior-y:contain;
 -webkit-overflow-scrolling:touch;
 scrollbar-color:#77786d var(--reader-paper);
 color:var(--reader-ink);
 background:var(--reader-paper);
 transform:translate3d(0,0,0);
 transition:transform 620ms cubic-bezier(.22,1,.36,1);
}
.press-reader.is-entering .press-reader-panel,
.press-reader.is-closing .press-reader-panel{transform:translate3d(-100%,0,0)}
.press-reader.is-entering::backdrop,
.press-reader.is-closing::backdrop{opacity:0}
.press-reader-toolbar{
 position:sticky;
 top:0;
 z-index:2;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:24px;
 min-height:88px;
 padding:18px var(--reader-gutter);
 padding-top:max(18px,env(safe-area-inset-top));
 border-bottom:1px solid var(--reader-rule);
 background:var(--reader-paper);
}
.press-reader-back{
 display:inline-flex;
 align-items:center;
 gap:20px;
 min-height:44px;
 font:500 12px/1.3 DM,Arial,sans-serif;
 letter-spacing:.065em;
 text-transform:uppercase;
 touch-action:manipulation;
}
.press-reader-close{
 display:grid;
 flex:none;
 place-items:center;
 width:44px;
 height:44px;
 color:var(--reader-ink);
 touch-action:manipulation;
}
.press-reader-close svg{display:block;width:24px;height:24px}
.press-reader :is(a,button):focus-visible{outline:2px solid var(--reader-ink);outline-offset:5px}
.press-reader ::selection{background:var(--reader-ink);color:var(--reader-paper)}
.press-story{
 margin:0;
 padding:clamp(34px,4.8vw,76px) var(--reader-gutter) max(72px,calc(env(safe-area-inset-bottom) + 40px));
}
.press-story-header{margin-bottom:clamp(30px,4vw,58px)}
.press-story-meta{
 display:flex;
 align-items:baseline;
 flex-wrap:wrap;
 justify-content:space-between;
 gap:10px 24px;
 margin:0 0 24px;
 font:500 12px/1.45 DM,Arial,sans-serif;
 letter-spacing:.055em;
 text-transform:uppercase;
}
.press-story-meta :is(time,.press-story-issue){font-size:11px;font-variant-numeric:tabular-nums}
.press-story-header :is(h1,h2){
 max-width:26ch;
 margin:0;
 font:650 clamp(28px,3.65vw,56px)/1.1 Unbounded,Arial,sans-serif;
 letter-spacing:-.045em;
 text-transform:uppercase;
 text-wrap:pretty;
 overflow-wrap:break-word;
}
.press-story-header :is(h1,h2):focus{outline:none}
.press-story-layout{
 display:grid;
 grid-template-columns:minmax(0,1fr) minmax(0,1fr);
 align-items:start;
 gap:clamp(32px,4.8vw,76px);
}
.press-story-image{min-width:0;margin:0}
.press-story-image img{
 display:block;
 width:100%;
 height:auto;
 max-height:min(76svh,840px);
 object-fit:contain;
 object-position:left top;
 border-radius:0;
}
.press-story-image figcaption{
 margin-top:12px;
 font:400 12px/1.5 DM,Arial,sans-serif;
 color:#57594f;
}
.press-story-copy{
 min-width:0;
 max-width:62ch;
 font:400 clamp(17px,1.45vw,21px)/1.6 DM,Arial,sans-serif;
 letter-spacing:-.012em;
 overflow-wrap:break-word;
}
.press-story-copy>p{margin:0 0 1.15em}
.press-story-copy>p:last-child{margin-bottom:0}
.press-story-copy>.press-story-text-label{margin-bottom:24px;font:500 12px/1.5 DM,Arial,sans-serif;letter-spacing:.015em;color:#57594f}
.press-story-copy blockquote{
 margin:1.6em 0;
 padding-left:22px;
 border-left:1px solid var(--reader-ink);
}
.press-story-copy blockquote cite{display:block;margin-top:12px;font-size:13px;font-style:normal}
.press-story-scans{margin-top:clamp(36px,5vw,80px)}
.press-story-scan{max-width:1100px;margin:0 auto 36px}
.press-story-scan>a{display:block;touch-action:manipulation}
.press-story-scan img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:0}
.press-story-scan figcaption{
 display:flex;
 align-items:baseline;
 justify-content:space-between;
 flex-wrap:wrap;
 gap:8px 24px;
 margin-top:14px;
 font:400 12px/1.5 DM,Arial,sans-serif;
 color:#57594f;
}
.press-story-scan figcaption a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;touch-action:manipulation}
.press-story-source{
 display:inline-flex;
 align-items:center;
 gap:16px;
 min-height:44px;
 max-width:100%;
 margin-top:8px;
 font:500 14px/1.5 DM,Arial,sans-serif;
 letter-spacing:0;
 text-decoration:underline;
 text-decoration-thickness:1px;
 text-underline-offset:5px;
 touch-action:manipulation;
}
.press-story-related{
 display:flex;
 align-items:flex-start;
 flex-direction:column;
 gap:12px;
 margin-top:clamp(34px,4vw,60px);
 padding-top:23px;
 border-top:1px solid var(--reader-rule);
}
.press-story-related>span{
 margin-bottom:2px;
 font:500 13px/1.4 DM,Arial,sans-serif;
}
.press-story-related>a{
 display:inline-flex;
 align-items:center;
 gap:10px;
 min-height:44px;
 max-width:100%;
 font:600 clamp(15px,1.35vw,19px)/1.4 Unbounded,Arial,sans-serif;
 letter-spacing:-.035em;
 text-transform:uppercase;
 touch-action:manipulation;
}

/* Use the site's moving link spectrum, with deeper colors on the light paper. */
@supports (background-clip:text) and (color:color-mix(in srgb,white,black)){
 .press-reader :is(.press-reader-back,.press-story-source,.press-story-related>a,.press-story-scan figcaption a){
  background-image:linear-gradient(90deg,
   color-mix(in srgb,currentColor,#6240a5 var(--link-shimmer,0%)) 0%,
   color-mix(in srgb,currentColor,#00656b var(--link-shimmer,0%)) 20%,
   color-mix(in srgb,currentColor,#74600e var(--link-shimmer,0%)) 40%,
   color-mix(in srgb,currentColor,#934614 var(--link-shimmer,0%)) 60%,
   color-mix(in srgb,currentColor,#a82d44 var(--link-shimmer,0%)) 80%,
   color-mix(in srgb,currentColor,#6240a5 var(--link-shimmer,0%)) 100%);
  background-size:400% 100%;
  background-position:0% 50%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:var(--shimmer-animation,none);
 }
}
@media(max-width:1000px){
 .press-story-layout{grid-template-columns:minmax(0,1fr);gap:32px}
 .press-story-image{max-width:760px}
 .press-story-image img{max-height:72svh}
 .press-story-copy{font-size:18px}
}
@media(max-width:760px){
 html:has(body.press-reading-open){scrollbar-gutter:auto}
 dialog.press-reader{--reader-gutter:24px}
 .press-reader-panel{width:100%}
 .press-reader-toolbar{
  min-height:76px;
  padding:12px max(18px,env(safe-area-inset-right)) 12px max(24px,env(safe-area-inset-left));
  padding-top:max(12px,env(safe-area-inset-top));
 }
 .press-reader-back{font-size:11px;gap:16px}
 .press-story{
  padding:32px max(24px,env(safe-area-inset-right)) max(52px,calc(env(safe-area-inset-bottom) + 24px)) max(24px,env(safe-area-inset-left));
 }
 .press-story-header{margin-bottom:28px}
 .press-story-meta{font-size:10px;gap:8px 16px;margin-bottom:20px}
 .press-story-meta :is(time,.press-story-issue){font-size:10px}
 .press-story-header :is(h1,h2){font-size:clamp(22px,6.9vw,42px);line-height:1.13;letter-spacing:-.045em}
 .press-story-layout{gap:27px}
 .press-story-image img{max-height:70svh}
 .press-story-copy{font-size:17px;line-height:1.6}
 .press-story-source{font-size:14px}
 .press-story-related{margin-top:32px;padding-top:20px}
 .press-story-related>a{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
 .press-reader-panel,.press-reader::backdrop{transition:none}
 .press-reader :is(.press-reader-back,.press-story-source,.press-story-related>a,.press-story-scan figcaption a){animation:none;background-position:50% 50%}
}
@media(forced-colors:active){
 .press-reader-panel,.press-reader-toolbar{background:Canvas;color:CanvasText}
 .press-reader :is(a,button){color:LinkText;-webkit-text-fill-color:currentColor;background-image:none;animation:none}
 .press-reader-toolbar,.press-story-related{border-color:CanvasText}
 .press-reader :is(a,button):focus-visible{outline-color:Highlight}
}
