/* October 23: image-led controls and aligned project directory. */
.image-nav{position:absolute;z-index:3;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(24,53,47,.25);border-radius:50%;background:rgba(248,245,237,.94);color:var(--ink);font-size:25px;box-shadow:0 2px 14px rgba(0,0,0,.08);transition:transform .28s cubic-bezier(.2,.8,.2,1),background .2s,box-shadow .2s;touch-action:manipulation}
.image-nav.previous{left:18px}.image-nav.next{right:18px}.image-nav:hover,.image-nav:focus-visible{transform:translateY(-50%) scale(1.13);background:#fffdf7;box-shadow:0 5px 20px rgba(0,0,0,.16)}.image-nav:active{transform:translateY(-50%) scale(.97)}.image-nav:disabled{opacity:.3;cursor:default;transform:translateY(-50%);box-shadow:none}
.principle-stage{position:relative}.principle-toolbar{justify-content:space-between;margin-bottom:18px}.principle-count{font-size:10px;color:var(--muted);letter-spacing:.1em}.principle-slider{position:relative;display:flex;gap:0;overflow-x:auto;direction:ltr;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab}.principle-slider.dragging{scroll-snap-type:none;cursor:grabbing}.principle-slider article{flex:0 0 100%;min-width:0;scroll-snap-align:start}.principle-slider img{width:100%;aspect-ratio:.94;object-fit:cover}.principle-slider article:first-child img{object-fit:contain;background:#e8e4db}.principle-slider article>div{padding:22px 0 25px;min-height:140px;gap:12px 20px}.principle-slider h3{font-size:24px}.principle-slider p{font-size:13px;line-height:1.9;max-width:90%;padding-right:10px}.principle-stage>.image-nav{top:calc((100cqw / .94) / 2)}.principle-stage{container-type:inline-size}
.photo-stage{position:relative;display:flex;align-items:center;justify-content:center;height:72svh;background:#10211d;touch-action:pan-y;overflow:hidden}.photo-stage #photoImage{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}.photo-dialog{max-height:94svh}.photo-dialog>.dialog-close{z-index:5}.photo-count{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);background:rgba(16,33,29,.75);color:#fffdf7;padding:8px 12px;border-radius:20px;font-size:10px;letter-spacing:.1em}.photo-caption{min-height:74px}
.all-projects-grid{align-items:start;column-gap:4vw;row-gap:64px}.directory-card:nth-child(n){margin-top:0}.directory-card:nth-child(n) .directory-image{aspect-ratio:6/5}.directory-image img{height:100%;width:100%;object-fit:cover}.directory-meta{min-height:92px}.directory-meta h2{line-height:1.4}
.editorial-gallery{gap:70px 7vw}.editorial-gallery figure:nth-child(3){margin-top:0}.editorial-gallery figure.portrait:nth-child(odd){margin-top:90px}.editorial-gallery figure:not(.wide) img{aspect-ratio:auto;object-fit:contain;height:auto}.editorial-gallery img{height:auto}.project-story-image img{aspect-ratio:auto;object-fit:contain;height:auto}
.gallery-stage{position:relative}.horizontal-gallery{position:relative;align-items:center;gap:4vw;padding:0 12vw 20px;scroll-padding-inline:12vw}.gallery-slide{flex:0 0 auto;width:min(76vw,calc(65svh * var(--photo-ratio,1.5)));max-width:none;filter:none;opacity:1;transform:none}.gallery-slide img{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:var(--photo-ratio,1.5);object-fit:contain;background:transparent}.gallery-slide figcaption{min-height:28px;margin-top:12px}.gallery-stage>.image-nav{top:calc(50% - 20px)}.gallery-stage>.previous{left:var(--pad)}.gallery-stage>.next{right:var(--pad)}.gallery-help{padding-top:10px}.gallery-help>span{font-size:11px}
html[dir=rtl] .image-nav{direction:ltr}html[dir=rtl] .principle-slider article>div{direction:rtl}
@media(max-width:600px){.image-nav{width:46px;height:46px;font-size:22px}.image-nav.previous{left:10px}.image-nav.next{right:10px}.principle-block{width:100%}.principle-slider p{font-size:12px;max-width:100%}.principle-slider h3{font-size:22px}.principle-slider article>div{min-height:165px}.photo-stage{height:65svh}.photo-caption{min-height:100px}.photo-dialog{width:96vw;max-width:96vw}.photo-count{bottom:10px}.all-projects-grid{row-gap:42px}.directory-meta{min-height:78px}.editorial-gallery{gap:35px 18px}.editorial-gallery figure.portrait:nth-child(odd){margin-top:45px}.editorial-gallery figure:not(.wide) img{aspect-ratio:auto}.gallery-slide{width:min(84vw,calc(60svh * var(--photo-ratio,1.5)))}.horizontal-gallery{gap:20px;padding-inline:8vw}.gallery-stage>.image-nav{top:calc(50% - 20px)}.gallery-stage>.previous{left:12px}.gallery-stage>.next{right:12px}.gallery-slide figcaption{font-size:9px}.photo-caption h2{font-size:16px}}
@media(prefers-reduced-motion:reduce){.image-nav{transition:none}.image-nav:hover,.image-nav:focus-visible{transform:translateY(-50%)}}
.horizontal-gallery{padding-left:max(24px,calc((100% - min(76vw,65svh * var(--first-ratio,1.5)))/2));padding-right:max(24px,calc((100% - min(76vw,65svh * var(--last-ratio,1.5)))/2))}@media(max-width:600px){.horizontal-gallery{padding-left:max(16px,calc((100% - min(84vw,60svh * var(--first-ratio,1.5)))/2));padding-right:max(16px,calc((100% - min(84vw,60svh * var(--last-ratio,1.5)))/2))}}
.principle-slider article{margin:0}
