/* Editorial photography, with native horizontal browsing on small screens. */
.editorial-gallery{padding-block:64px 76px;background:#000;color:#fff}
.editorial-heading{display:grid;grid-template-columns:1fr 2fr;gap:20px 60px;align-items:start;margin-bottom:44px}
.editorial-heading h2{font-size:clamp(36px,4.5vw,72px);line-height:1.06;letter-spacing:-.045em}
.editorial-heading .text-link{grid-column:2;justify-self:start}
.editorial-rail{display:grid;grid-template-columns:1.2fr 1fr;align-items:start;gap:5vw}
.editorial-photo{min-width:0;margin:0}
.editorial-frame{overflow:hidden;background:#151515}
.editorial-photo img{display:block;width:100%;height:auto;transition:transform 1.1s cubic-bezier(.22,.61,.36,1)}
.editorial-photo figcaption{font-size:11px;line-height:1.5;letter-spacing:.07em;text-transform:uppercase;padding-top:14px;border-top:1px solid #555;margin-top:14px}
.editorial-rail>.editorial-photo:nth-child(2){width:80%;justify-self:end;margin-top:80px}
.editorial-single .editorial-rail{display:block}
.editorial-single .editorial-photo{width:100%}
.editorial-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:6vw;align-items:center}
.editorial-hero-copy{min-width:0}.editorial-hero h1{font-size:clamp(48px,6.4vw,98px)}
.editorial-hero .lab-title{font-size:clamp(38px,5.2vw,80px)}
.editorial-hero .editorial-photo{width:100%;max-width:460px;justify-self:end}
.editorial-hero .lead{font-size:clamp(18px,1.6vw,25px)}
.editorial-photo.is-entering{animation:editorial-reveal .8s cubic-bezier(.22,.61,.36,1) both}
@keyframes editorial-reveal{from{opacity:.55;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.editorial-photo:hover img{transform:scale(1.025)}}
@media(max-width:800px){
 .editorial-gallery{padding-block:30px 36px}
 .editorial-heading{display:block;margin-bottom:24px}
 .editorial-heading h2{font-size:32px;margin-top:16px;line-height:1.06}
 .editorial-heading .text-link{margin-top:8px}
 .editorial-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:#999 #222}
 .editorial-rail>.editorial-photo,.editorial-rail>.editorial-photo:nth-child(2){flex:0 0 78%;width:78%;margin:0;scroll-snap-align:start}
 .editorial-rail .editorial-frame{aspect-ratio:4/5}
 .editorial-rail img{width:100%;height:100%;object-fit:cover;object-position:center}
 .editorial-single .editorial-photo{width:100%}
 .editorial-single .editorial-frame{aspect-ratio:auto}
 .editorial-single img{height:auto}
 .editorial-photo figcaption{font-size:10px;margin-top:10px;padding-top:10px}
 .editorial-hero{display:block}.editorial-hero h1{font-size:clamp(36px,9.2vw,64px)}
 .editorial-hero .lab-title{font-size:clamp(27px,7.8vw,58px)}
 .editorial-hero .lead{font-size:17px;line-height:1.38}
 .editorial-hero .editorial-photo{width:65%;max-width:280px;margin:30px 0 0 auto}
 .editorial-photo.is-entering{animation-duration:.5s}
 @keyframes editorial-reveal{from{opacity:.7;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
}
@media(prefers-reduced-motion:reduce){.editorial-photo.is-entering{animation:none}.editorial-photo img{transition:none;transform:none}}
/* Expanded visual stories: full composition on desktop, compact swipe on mobile. */
.gallery-hint{display:none;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#bbb;margin:0 0 16px}
.home-photo-grid .editorial-rail{grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 5vw}
.home-photo-grid .editorial-photo:nth-child(even){width:80%;justify-self:end;margin-top:70px}
.home-photo-grid .editorial-frame{aspect-ratio:4/5}
.home-photo-grid img{width:100%;height:100%;object-fit:cover}
.home-design-gallery .editorial-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.home-design-gallery .editorial-rail>.editorial-photo,.editorial-sequence .editorial-rail>.editorial-photo:nth-child(2){width:100%;margin-top:0}
.home-design-gallery .editorial-frame{aspect-ratio:1/1;background:#111}
.home-design-gallery img{height:100%;width:100%;object-fit:contain}
.editorial-sequence .editorial-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.editorial-sequence .editorial-frame{aspect-ratio:3/4}
.editorial-sequence img{width:100%;height:100%;object-fit:cover}
.editorial-rail:focus-visible{outline:2px solid #fff;outline-offset:6px}
@media(max-width:800px){
 .gallery-hint{display:block}
 .home-photo-grid .editorial-rail,.home-design-gallery .editorial-rail,.editorial-sequence .editorial-rail{display:flex;gap:16px}
 .home-photo-grid .editorial-rail>.editorial-photo,.home-photo-grid .editorial-photo:nth-child(even),.home-design-gallery .editorial-rail>.editorial-photo,.editorial-sequence .editorial-rail>.editorial-photo{flex:0 0 82%;width:82%;margin:0}
 .home-design-gallery .editorial-frame{aspect-ratio:1/1}
}
.home-image-break{position:relative;margin:0;background:#111;color:#fff;overflow:hidden}
.home-image-break .editorial-frame{height:min(85vw,90svh);min-height:480px}
.home-image-break img{width:100%;height:100%;object-fit:cover}
.home-image-break>p{position:absolute;bottom:6%;left:5%;margin:0;font-family:'Space Grotesk',Arial,sans-serif;font-size:clamp(38px,6vw,96px);font-weight:300;line-height:1.04;letter-spacing:-.045em;pointer-events:none;text-shadow:0 2px 25px #000}
.home-image-break:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.65));pointer-events:none}
.home-image-break>p{z-index:1}
.home-image-archive .gallery-hint{display:block}
.home-image-archive .editorial-rail{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:20px;scrollbar-color:#aaa #222;scrollbar-width:thin}
.home-image-archive .editorial-rail>.editorial-photo,.home-image-archive .editorial-rail>.editorial-photo:nth-child(2){flex:0 0 32%;width:32%;margin:0;scroll-snap-align:start}
.home-image-archive .editorial-frame{height:500px;max-height:65svh}
.home-image-archive img{height:100%;object-fit:contain;background:#111}
@media(max-width:800px){.home-image-break .editorial-frame{height:65svh;min-height:340px;max-height:620px}.home-image-break>p{font-size:36px;left:6%;bottom:8%}.home-image-archive .editorial-rail>.editorial-photo,.home-image-archive .editorial-rail>.editorial-photo:nth-child(2){flex-basis:85%;width:85%}.home-image-archive .editorial-frame{height:420px;max-height:60svh}}
/* Home galleries share consistent frames, with intentional subject cropping. */
.video-home .editorial-gallery .editorial-rail>.editorial-photo{width:100%;margin:0;justify-self:stretch}
.video-home .editorial-gallery .editorial-frame{position:relative;aspect-ratio:4/5;height:auto;max-height:none;overflow:hidden}
.video-home .editorial-gallery .editorial-frame img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.video-home .home-image-archive .editorial-rail>.editorial-photo{flex:0 0 32%;width:32%}
@media(max-width:800px){
 .video-home .editorial-gallery .editorial-rail>.editorial-photo{flex:0 0 82%;width:82%;margin:0}
}
