
/* Interior revision only; homepage excluded. */
body.interior-revision .photo-gallery{display:block;columns:3;column-gap:22px;max-width:1400px;margin-inline:auto}
body.interior-revision .photo-gallery .photo{display:block;break-inside:avoid;margin:0 0 22px!important;width:100%;padding:0}
body.interior-revision .photo-gallery .photo img{width:100%;height:auto!important;max-height:none;aspect-ratio:auto;object-fit:contain}
body.interior-revision .photo-gallery .photo[hidden]{display:none!important}
@media(max-width:800px){body.interior-revision .photo-gallery{columns:2;column-gap:14px}}
@media(max-width:440px){body.interior-revision .photo-gallery{columns:1}}

body.interior-revision .category-opening h1{font-size:clamp(48px,7vw,110px);max-width:90vw}
body.interior-revision .photo-gallery{display:grid;columns:unset;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1px;gap:20px;align-items:start;padding-top:55px}
body.interior-revision .photo-gallery .photo{grid-column:span 1;margin:0!important}
body.interior-revision .photo-gallery .photo.double{grid-column:span 2}
@media(max-width:800px){body.interior-revision .photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:440px){body.interior-revision .photo-gallery{grid-template-columns:1fr}body.interior-revision .photo-gallery .photo.double{grid-column:span 1}}

body.interior-revision .photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
.related-stories{padding-top:80px;padding-bottom:100px}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:35px}.related-card{display:block;min-width:0}.related-card h2{font-size:clamp(36px,5vw,76px);color:#f2f0e9;margin-bottom:30px}.related-card h2 span{font-size:.45em}.related-fade{overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}.related-track,.related-repeat{display:flex;gap:14px;width:max-content}.related-track{animation:related-slide 28s linear infinite}.related-track img{width:180px;height:135px;object-fit:cover}.related-repeat{padding-right:14px}.related-card:hover .related-track,.related-card:focus .related-track{animation-play-state:paused}@keyframes related-slide{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.related-track{animation:none}}@media(max-width:700px){.related-grid{grid-template-columns:1fr;gap:45px}.related-track img{width:150px;height:112px}}@media(max-width:440px){body.interior-revision .photo-gallery{grid-template-columns:1fr}}

.motion-toggle{background:transparent;border:1px solid var(--line);padding:8px 14px;margin-top:15px;color:var(--fg);font-size:12px}
.about-editorial>div:last-child>p:not(.eyebrow){max-width:62ch;line-height:1.85;margin-top:22px}.about-editorial h2{margin-bottom:30px}

.story-index{position:sticky;top:0;z-index:30;background:var(--bg);padding-top:22px;padding-bottom:22px;border-block:1px solid var(--line);margin:0;flex-wrap:wrap}.story-index a{min-height:44px;display:flex;align-items:center}.story-chapter{scroll-margin-top:calc(var(--story-nav-height,90px) + 20px)}.collection-controls{scroll-margin-top:0}.collection-gallery .photo[hidden]{display:none!important}.collection-gallery{padding-bottom:70px}@media(max-width:600px){.story-index{gap:4px 16px;display:flex}.story-index a{font-size:12px}.story-index span{margin-right:8px}}

/* About: one contextual photograph and one discreet portrait. */
.about-editorial{align-items:start;gap:clamp(28px,5vw,85px)}.about-editorial .about-photo img{height:auto;aspect-ratio:auto;object-fit:contain}.bio-portrait{float:right;width:150px;max-width:32%;margin:24px 0 20px 25px}.bio-portrait img{width:100%;height:auto;display:block}.about-editorial>div:last-child{display:flow-root}.about-editorial .line-link{clear:both}.about-editorial .about-photo .eyebrow{margin-top:16px}@media(max-width:600px){.bio-portrait{width:120px;margin-left:18px}.about-editorial{gap:32px}}

/* Portrait shares the biography's text block and first-line alignment. */
.about-editorial .bio-body{display:flow-root;color:var(--muted);font-size:16px;line-height:1.85}
.about-editorial .bio-body .bio-portrait{float:left;width:clamp(110px,11vw,150px);max-width:31%;margin:6px 24px 12px 0}
.about-editorial .bio-body p{line-height:1.85;margin:0 0 22px}
.about-editorial .bio-body p:last-child{margin-bottom:0}
.about-editorial .bio-body+.line-link{margin-top:24px}
@media(max-width:600px){.about-editorial .bio-body .bio-portrait{width:108px;margin:6px 18px 10px 0}.about-editorial .bio-body{font-size:15px}}

.story-stack{max-width:1200px;margin:auto}.story-stack summary{list-style:none;cursor:pointer}.story-stack summary::-webkit-details-marker{display:none}.stack-cover{position:relative;margin:12px 12px 0 0;box-shadow:6px -6px 0 var(--line),12px -12px 0 #262823}.stack-cover img{width:100%;height:clamp(200px,35vw,420px);object-fit:cover}.stack-action{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);font-size:14px}.stack-action>span{color:var(--muted);font-size:12px}.story-stack[open] .stack-cover{display:none}.story-stack[open] .stack-action{margin-bottom:30px}.story-index{gap:10px 24px;justify-content:flex-start}.story-index a{flex:1 1 180px}@media(max-width:600px){.stack-action{flex-direction:column;gap:6px}.story-index a{flex:0 1 auto}}

/* Each story occupies its own complete row; expansion is contained within it. */
.stories-editorial{display:block;width:100%}.stories-editorial>.story-chapter{display:block;width:100%;max-width:none;grid-column:1/-1;clear:both}.stories-editorial .story-stack{width:100%;max-width:1200px}.stories-editorial .story-stack>.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;width:100%;padding-inline:0}.stories-editorial .story-stack>.photo-gallery>.photo.double{grid-column:span 1}@media(max-width:440px){.stories-editorial .story-stack>.photo-gallery{grid-template-columns:1fr}}

/* Folder-based projects share the grid but expand across its complete width. */
body.interior-revision .collection-gallery>.collection-stack{grid-column:1/-1;align-self:start;width:100%;max-width:none;margin:30px 0 22px;padding:0;min-width:0}
body.interior-revision .collection-stack[hidden]{display:none!important}
.collection-stack .stack-cover{margin-right:12px}
.collection-stack .stack-cover img{display:block;width:100%;height:clamp(220px,38vw,460px);object-fit:cover}
.collection-stack summary:focus-visible{outline:2px solid var(--fg);outline-offset:8px}
.collection-stack .stack-action{align-items:start;padding:24px 0}
.collection-stack .stack-title{color:var(--fg);font-size:clamp(24px,3vw,42px);line-height:1.1}
.collection-stack .stack-title small{display:block;max-width:55ch;margin-top:12px;color:var(--muted);font-size:14px;line-height:1.6;font-weight:400}
.collection-stack .stack-meta{display:flex;flex-direction:column;align-items:flex-end;gap:12px;flex-shrink:0}
.collection-stack .stack-label{color:var(--fg);font-size:13px}
.collection-stack[open] .stack-action{margin-bottom:0}
body.interior-revision .collection-stack>.stack-gallery{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:none;padding:28px 0 0;margin:0}
body.interior-revision .collection-stack>.stack-gallery>.photo.double{grid-column:span 1}
@media(max-width:600px){.collection-stack .stack-meta{align-items:flex-start}.collection-stack .stack-action{gap:18px}}
@media(max-width:440px){body.interior-revision .collection-stack>.stack-gallery{grid-template-columns:1fr}}

/* Other Stories uses the same full-width expandable collection component as Events. */
.stories-editorial .collection-stack{width:100%;max-width:none}
.stories-editorial .collection-stack>.stack-gallery{max-width:none;width:100%;padding-inline:0}

/* Source folders are editorial specials: an issue line, a cover and a short introduction. */
.magazine-special{border-top:1px solid var(--line)}
.magazine-special .special-kicker{display:flex;justify-content:space-between;gap:20px;padding:18px 0 20px;color:var(--muted);font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.magazine-special .stack-cover{margin:0;box-shadow:none;overflow:hidden}
.magazine-special .stack-cover img{height:clamp(240px,40vw,520px);transition:transform .6s ease}
.magazine-special:not([open]) summary:hover .stack-cover img{transform:scale(1.015)}
.magazine-special .stack-action{padding:24px 0 30px}
.magazine-special .stack-title{font-size:clamp(32px,4.4vw,68px);letter-spacing:-.035em;font-weight:400}
.magazine-special .stack-title small{max-width:50ch;margin-top:15px;font-size:14px;letter-spacing:0;line-height:1.65}
.magazine-special .stack-meta{padding-top:7px;gap:18px;font-size:11px;letter-spacing:.05em}
.magazine-special .stack-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.magazine-special .stack-label>span{display:inline-block;margin-left:14px;font-size:20px;vertical-align:-1px}
.magazine-special[open] .special-kicker{padding-bottom:4px}
.magazine-special[data-auto-expanded="true"] summary{cursor:default}
.magazine-special[data-auto-expanded="true"] .stack-label{color:var(--muted)}
.stories-editorial>.has-special{padding-top:60px}
@media(max-width:600px){.magazine-special .special-kicker{font-size:10px}.magazine-special .stack-action{gap:18px}.magazine-special .stack-meta{flex-direction:row;align-items:center;flex-wrap:wrap;gap:15px}}
@media(prefers-reduced-motion:reduce){.magazine-special .stack-cover img{transition:none}}

/* Desktop navigation for long photographic sequences. */
.back-to-top{position:fixed;right:28px;bottom:28px;z-index:45;display:flex;align-items:center;gap:16px;min-height:48px;padding:12px 18px;background:#141513ed;border:1px solid #77796e;color:#f2f0e9;font-size:11px;letter-spacing:.16em;cursor:pointer}
.back-to-top .icon-arrow{width:15px;height:15px}
.back-to-top:hover{background:#f2f0e9;color:#141513}
.back-to-top:focus-visible{outline:2px solid #f2f0e9;outline-offset:4px}
.back-to-top[hidden]{display:none!important}
@media(max-width:899px),(hover:none),(pointer:coarse){.back-to-top{display:none!important}}

/* A gentle photographic zoom; titles and overlays stay fixed. */
.hero{overflow:hidden}
.hero>.hero-image{transform:scale(1);transform-origin:center;transition:transform 1.3s cubic-bezier(.2,.65,.3,1)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.hero:hover>.hero-image{transform:scale(1.035)}}
@media(prefers-reduced-motion:reduce){.hero>.hero-image{transition:none;transform:none}}

/* Two equal strips produce a seamless loop, using lightweight destination thumbnails. */
.related-track{display:flex;gap:0;width:max-content;animation-duration:34s}
.related-strip{display:flex;flex:none;width:max-content;gap:14px;padding-right:14px}
.related-track .related-strip img{flex:none;width:190px;height:138px;object-fit:cover}
.related-fade{padding-block:4px;mask-image:linear-gradient(to right,transparent,#000 14%,#000 86%,transparent)}
@media(max-width:700px){.related-track .related-strip img{width:150px;height:110px}}

/* Specials stay below the main photographs, as two independent, manual sliders. */
.specials-section{padding-top:65px;padding-bottom:85px;border-top:1px solid var(--line)}
.specials-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:36px}
.specials-heading h2{font-size:clamp(28px,3.5vw,48px)}
.specials-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 28px;align-items:start}
.special-card{min-width:0;border-top:1px solid var(--line);padding-top:18px;scroll-margin-top:calc(var(--story-nav-height,90px) + 24px)}
.special-issue{color:var(--muted);margin-bottom:16px}
.special-viewer{min-width:0}
.special-slides{position:relative;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;scroll-behavior:smooth}
.special-slides::-webkit-scrollbar{display:none}
.special-slide{flex:0 0 100%;min-width:0;margin:0;padding:0;scroll-snap-align:start;scroll-snap-stop:always;aspect-ratio:3/2;background:#10110f}
.special-slide img{display:block;width:100%;height:100%;object-fit:contain}
.special-controls{display:flex;align-items:center;justify-content:flex-end;gap:18px;padding-top:14px}
.special-controls p{min-width:52px;text-align:center;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.special-arrow{display:grid;place-items:center;width:44px;height:44px;background:transparent;border:1px solid #85877b;color:var(--fg);padding:0}
.special-arrow .icon-arrow{width:19px;height:19px}
.special-arrow:hover:not(:disabled){background:var(--fg);color:var(--bg)}
.special-arrow:disabled{opacity:.3;cursor:default}
.special-arrow:focus-visible,.special-slides:focus-visible{outline:2px solid var(--fg);outline-offset:4px}
.special-caption{padding-top:20px}
.special-caption h3{font-size:clamp(26px,3vw,42px);line-height:1.12}
.special-caption>p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:12px;max-width:52ch}
.special-card[hidden],.special-slide[hidden],.specials-section[hidden],.collection-gallery[hidden]{display:none!important}
@media(max-width:759px){.specials-grid{grid-template-columns:1fr;gap:44px}.specials-heading{align-items:start;flex-direction:column;gap:14px}.specials-section{padding-top:42px;padding-bottom:55px}}
@media(prefers-reduced-motion:reduce){.special-slides{scroll-behavior:auto}}
