/* Compact masonry and one-line footer details. */
.photo-gallery{--masonry-columns:2}
.photo-gallery.vertical-gallery{--masonry-columns:4}
body.interior-revision .photo-gallery .photo{margin:0!important}
.photo-gallery .photo img{display:block;width:100%;height:auto!important}
.filter-status,[data-overview-status],[data-more-status]{display:none!important}
.footer-bottom{flex-wrap:wrap;gap:16px}
.footer-bottom .privacy-inline{white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.home [data-rotation]>.hero-image{transition:opacity 1.2s ease,transform 1.3s ease}

@media(max-width:700px){.photo-gallery.vertical-gallery{--masonry-columns:3}body.motorsport-edit .photo-gallery{--masonry-columns:1}.footer-bottom .privacy-inline{grid-column:auto}}
@media(max-width:440px){.photo-gallery{--masonry-columns:1}.photo-gallery.vertical-gallery{--masonry-columns:3}}
@media(prefers-reduced-motion:reduce){.home [data-rotation]>.hero-image{transition:none}}
@media(min-width:761px){.footer-bottom{display:grid;grid-template-columns:auto auto auto minmax(0,1fr) auto;align-items:center;gap:18px}.footer-bottom>span:last-of-type{text-align:right}.footer-bottom .privacy-inline{grid-column:5}}
body.interior-revision .photo-gallery[data-masonry-ready]>.photo{margin:0!important}
.collection-gallery{padding-bottom:28px}
/* Full reportage pilot: an uncropped cover, followed by the complete sequence. */
.specials-grid>.full-story{grid-column:1/-1;min-width:0}
.full-story-heading{padding-block:8px 26px;max-width:850px}
.full-story-heading h3{font-size:clamp(30px,4.5vw,66px);line-height:1.08;margin:16px 0}
.full-story-heading>p:last-child{color:var(--muted);font-size:14px;line-height:1.7}
.full-story-cover{margin:0;width:100%}
.full-story-cover img{display:block;width:100%;height:auto}
body.interior-revision .full-story>.project-gallery{width:100%;max-width:none;padding:28px 0 0;--masonry-columns:4}
.home-overview .overview-photo img{aspect-ratio:3/2;object-fit:cover}
@media(max-width:700px){body.interior-revision .full-story>.project-gallery{--masonry-columns:2}}

/* Shared four-track masonry; landscape photographs span two tracks. */
body.interior-revision .photo-gallery{--masonry-columns:4;grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:700px){body.interior-revision .photo-gallery{--masonry-columns:2;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}}
@media(max-width:700px){body.interior-revision .photo-gallery.vertical-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Dedicated project archives and direct contact on About. */
.archive-card{display:block;min-width:0;scroll-margin-top:calc(var(--site-header-height) + var(--selection-height) + 20px)}
.archive-cover{overflow:hidden;aspect-ratio:3/2;background:#10110f}
.archive-cover img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.archive-caption{padding-top:22px}.archive-caption h3{font-size:clamp(25px,3vw,42px);line-height:1.15;margin:10px 0 18px}
.archive-action{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted)}
.archive-action svg{width:18px;height:18px}
.archive-card:hover .archive-cover img{transform:scale(1.025)}
.archive-return{padding-block:28px 70px}
.archive-intro h1{font-size:clamp(40px,7vw,92px);max-width:1100px;overflow-wrap:anywhere}
.about-contact{display:grid;grid-template-columns:1fr 1.15fr;gap:8vw;padding-block:75px 100px;border-top:1px solid var(--line);scroll-margin-top:calc(var(--site-header-height) + 20px)}
.about-contact h2{font-size:clamp(40px,5vw,72px);margin-top:20px}.about-contact .muted{margin:24px 0}
.about-contact .email{margin-top:0}
.back-to-top{bottom:108px!important}
@media(max-width:900px){.specials-jump{display:none!important}}
@media(max-width:700px){.about-contact{grid-template-columns:1fr;gap:34px;padding-block:50px 70px}}
@media(prefers-reduced-motion:reduce){.archive-cover img{transition:none}}
body.interior-revision .photo-gallery,body.interior-revision .photo-gallery.vertical-gallery{column-gap:18px}
@media(max-width:700px){body.interior-revision .photo-gallery,body.interior-revision .photo-gallery.vertical-gallery{column-gap:12px}}
.color-month{padding-block:55px 65px;border-block:1px solid var(--line);margin-top:35px}
.color-month-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:24px}
.color-month-heading .eyebrow{color:var(--muted)}
.color-month-heading h2{font-size:clamp(38px,5vw,70px);margin-top:12px}
.color-month-swatch{display:block;flex:none;width:38px;height:38px;border-radius:50%;background:var(--month-color);border:1px solid #ffffff33}
.color-month-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#777b70 transparent}
.color-month-photo{flex:0 0 calc((100% - 80px)/6);min-width:0;margin:0;scroll-snap-align:start}
.color-month-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.color-month-photo[hidden]{display:none!important}
.about-contact>div:first-child>.line-link{display:inline-flex;margin-top:26px}
@media(max-width:700px){.color-month{padding-block:35px 42px}.color-month-photo{flex-basis:76%}.color-month-track{gap:12px;padding-bottom:10px}.color-month-swatch{width:28px;height:28px}}
/* Monthly colour: 18 frames, three rows of six on desktop. */
:root{--month-accent:#c6a179}
.color-month-heading h2{color:var(--month-accent)}
.pantone-reference{display:inline-block;font:12px/1.5 Arial,Helvetica,sans-serif;letter-spacing:.02em;margin-left:15px;text-decoration:none;vertical-align:middle;color:inherit}
.color-month-track{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;overflow:visible;scroll-snap-type:none}
.color-month-photo{width:100%;margin:0;min-width:0}
svg.icon-arrow{color:var(--month-accent);stroke:currentColor}
.early-project{padding-top:65px;padding-bottom:35px;border-top:1px solid var(--line);scroll-margin-top:calc(var(--site-header-height) + var(--selection-height) + 20px)}
.early-heading{max-width:850px;margin-bottom:28px}.early-heading h2{font-size:clamp(30px,4.5vw,62px);margin:16px 0}.early-heading>p:last-child{color:var(--muted);line-height:1.7}
body.interior-revision .early-gallery{padding:0;max-width:none;width:100%}
.archive-personal-note{font-size:13px;color:var(--muted);line-height:1.65;margin:0 0 20px;max-width:48ch}
@media(max-width:700px){.color-month-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pantone-reference{display:block;margin:12px 0 0}.early-project{padding-top:40px}}
.early-continuation{padding-block:65px 85px;border-top:1px solid var(--line);scroll-margin-top:calc(var(--site-header-height) + var(--selection-height) + 20px)}
.early-continuation h2{font-size:clamp(35px,5vw,65px);margin-block:20px}
.early-continuation>p:not(.eyebrow){max-width:65ch;color:var(--muted);margin-bottom:24px}

/* Collection navigation shares the clean Other Stories treatment. */
.vertical-controls.collection-controls,.vertical-controls:not(.collection-controls),.story-index.wrap{border:0}
.vertical-controls .filters,body.motorsport-edit .collection-controls>.filters{border-top:0}
.page-intro .intro-text{margin-left:0;text-align:left}
.specials-jump{display:none!important}

/* Mobile collection indexes stay in one compact horizontal scrolling row. */
@media(max-width:900px){
 body.interior-revision nav.story-index.wrap{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;grid-template-columns:none!important;align-items:center;justify-content:flex-start;gap:26px;height:auto;max-height:66px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-block:9px 8px}
 body.interior-revision nav.story-index.wrap>a{flex:0 0 auto!important;white-space:nowrap;min-height:44px;font-size:12px;padding-block:8px}
 body.interior-revision nav.story-index.wrap::-webkit-scrollbar{display:none}
}

.hero-origin{display:inline-flex;align-items:center;gap:10px}.origin-heart{display:inline-block;width:16px;height:16px;fill:none;stroke:#fff;stroke-width:1.4;flex:none}

.project-sources{padding-block:25px 20px;display:flex;align-items:center;flex-wrap:wrap;gap:18px 35px}.project-sources>.eyebrow{color:var(--muted);flex-basis:100%}.project-sources .line-link{font-size:12px}
