.page-projects .page-hero{min-height:0;padding:42px 0 16px}
.page-projects .page-hero h1{font-size:clamp(36px,4.6vw,64px);margin:14px 0}
.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}
.project-entry{display:flex;flex-direction:column;background:transparent;border:0;overflow:hidden;min-width:0;scroll-margin-top:24px}
.staircase-copy{padding:16px 16px 14px}
.staircase-copy h2{font-size:21px;margin:10px 0 12px}
.staircase-copy p{line-height:1.7;font-size:13px;margin:0}
.staircase-copy .eyebrow{font-size:10px;letter-spacing:.03em}
.project-entry .reconstruction-note{font-size:11px;color:#aebbc3;line-height:1.6;margin:0;padding:0 18px 18px;background:transparent}
.project-gallery{min-width:0;background:transparent;direction:ltr}
.project-slides{position:relative;height:280px;overflow:hidden;touch-action:pan-y}
.project-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .7s,visibility .7s;overflow:hidden;background:transparent}
.project-slide.is-active{opacity:1;visibility:visible;z-index:1}
.project-slide img{height:100%;width:100%;object-fit:contain;display:block;animation:project-drift 12s ease-in-out infinite alternate;animation-play-state:paused}
.project-gallery.is-playing .project-slide.is-active img{animation-play-state:running}
.project-slide figcaption{position:absolute;inset:auto 0 0;padding:30px 14px 12px;background:linear-gradient(transparent,#091219ed);color:#fff;direction:rtl;text-align:start;font-size:12px;line-height:1.5}
[lang=en] .project-slide figcaption{direction:ltr}
.project-slide figcaption small{display:block;color:#d8dfe3;font-size:11px;letter-spacing:.02em;margin-bottom:5px}
.project-slide.is-reconstruction figcaption small{color:#ffb279}
.gallery-controls{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 0 0;border:0}
.gallery-controls button,.gallery-thumb{cursor:pointer;border:0;background:transparent;color:#e6ecef;min-width:0;min-height:0;padding:0;display:grid;place-items:center}
.gallery-controls button{width:30px;height:30px;border-radius:50%;transition:color .2s,background .2s}
.gallery-controls button:hover{background:#ffffff12;color:#ffb279}
.gallery-controls button:focus-visible,.gallery-thumb:focus-visible{outline:2px solid #ffb279;outline-offset:2px}
.gallery-controls svg{width:13px;height:13px;fill:currentColor;filter:drop-shadow(0 1px 2px #0008)}
.gallery-play .play-symbol{display:none}
.gallery-play[aria-pressed=true] .play-symbol{display:block}
.gallery-play[aria-pressed=true] .pause-symbol{display:none}
.gallery-thumbs{display:flex;gap:0;justify-content:center;padding:0 8px 8px;flex-wrap:wrap}
.gallery-thumb{position:relative;width:24px;height:24px;border-radius:50%}
.gallery-thumb::before{content:"";width:5px;height:5px;border-radius:50%;background:#ffffff75;box-shadow:0 1px 3px #0005;transition:background .2s,transform .2s}
.gallery-thumb:hover::before{background:#fff}
.gallery-thumb[aria-pressed=true]::before{background:#ffb279;transform:scale(1.35)}
@media(pointer:coarse){.gallery-controls button{width:44px;height:44px}.gallery-thumb{height:32px}}
.gallery-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@keyframes project-drift{from{transform:scale(1)}to{transform:scale(1.025)}}
@media(max-width:1000px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.project-grid{grid-template-columns:1fr}.project-slides{height:360px;max-height:65svh}.staircase-copy{padding:20px}.page-projects .page-hero{padding-top:28px}}
@media(prefers-reduced-motion:reduce){.project-slide{transition:none}.project-slide img{animation:none}}
