/* Two-column page-scroll gallery, adapted from the supplied Aceternity reference. */
.reality-parallax-gallery{position:relative;padding:80px 0;isolation:isolate}
.reality-parallax-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 24px;align-items:start}
.parallax-project-card{min-width:0;margin:0;will-change:transform}
.parallax-project-button{border:0;padding:0;background:none;color:inherit;font:inherit;display:block;width:100%;text-align:start;cursor:pointer}
.parallax-project-media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#e5e1d8}
.parallax-project-media>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;max-width:100%;transform:none}
.parallax-project-overlay{position:absolute;inset:0;padding:clamp(22px,2.5vw,42px);color:#fff;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(180deg,#282c2d40,#282c2d10 20%,#282c2de8);opacity:0;transition:opacity .65s cubic-bezier(.2,.65,.2,1)}
.parallax-project-location{display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.04em}.parallax-project-location>span{font-size:25px}
.parallax-project-summary{display:flex;flex-direction:column;gap:12px;max-width:44ch;font-size:clamp(13px,1.2vw,17px);line-height:1.6;transform:translateY(12px);transition:transform .7s cubic-bezier(.2,.65,.2,1)}
.parallax-project-type{font-size:clamp(22px,2.4vw,35px);line-height:1.15;letter-spacing:-.03em}.parallax-project-action{margin-top:6px;font-size:11px;letter-spacing:.07em;text-transform:uppercase;display:flex;gap:15px;align-items:center}.parallax-project-action>span{font-size:21px}
.parallax-project-button:hover .parallax-project-overlay,.parallax-project-button:focus-visible .parallax-project-overlay{opacity:1}.parallax-project-button:hover .parallax-project-summary,.parallax-project-button:focus-visible .parallax-project-summary{transform:none}
.parallax-project-button:focus-visible{outline:2px solid #91745a;outline-offset:6px}
.parallax-project-caption{display:flex;gap:14px;padding:20px 0 0;align-items:flex-start}.parallax-project-number{font-size:10px;color:#7b766d;padding-top:8px;font-variant-numeric:tabular-nums}.parallax-project-caption>span:nth-child(2){display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.parallax-project-name{font-size:clamp(24px,2.8vw,44px);line-height:1.08;letter-spacing:-.045em}.parallax-project-category{font-size:11px;color:#706b63;line-height:1.7}.parallax-project-plus{font-size:26px;line-height:1.2}.parallax-project-mobile-type{display:none}
#project-gallery .gallery-fallback{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1000px){.reality-parallax-grid{gap:48px 18px}.parallax-project-overlay{padding:22px}.parallax-project-summary{font-size:13px;gap:9px}.parallax-project-type{font-size:24px}}
@media(max-width:640px){.reality-parallax-gallery{padding:6px 0 20px}.reality-parallax-grid{grid-template-columns:1fr;gap:36px}.parallax-project-card{will-change:auto}.parallax-project-media{aspect-ratio:auto}.parallax-project-media>img{height:auto;max-height:70svh;object-fit:contain}.parallax-project-overlay{display:none}.parallax-project-caption{padding-top:15px;gap:12px}.parallax-project-name{font-size:31px}.parallax-project-category{font-size:11px}.parallax-project-mobile-type{display:block;font-size:12px;line-height:1.6;color:#706b63}.parallax-project-number{padding-top:7px}#project-gallery .gallery-fallback{grid-template-columns:1fr}}
@media(hover:none) and (min-width:641px){.parallax-project-mobile-type{display:block;font-size:12px;color:#706b63}}
@media(prefers-reduced-motion:reduce){.parallax-project-card{transform:none!important;will-change:auto}.parallax-project-overlay,.parallax-project-summary{transition:none}}
/* Every row waits for its own entry; cards reveal sequentially inside that row. */
.reality-parallax-grid{grid-template-columns:1fr;row-gap:64px}
.parallax-gallery-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.parallax-project-reveal{will-change:opacity,transform}
.parallax-project-reveal:focus-within{opacity:1!important;transform:none!important}
.parallax-project-reveal:focus-within .parallax-project-media{clip-path:inset(0)!important}
.gallery-js:not(.gallery-fallback-visible) #project-gallery:not([data-gallery-ready]){visibility:hidden}
@media(max-width:1000px){.reality-parallax-grid{row-gap:48px}.parallax-gallery-row{gap:18px}}
@media(max-width:640px){.reality-parallax-grid{row-gap:36px}.parallax-gallery-row{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){.parallax-project-reveal{opacity:1!important;transform:none!important;will-change:auto}.parallax-project-media{clip-path:none!important}}
/* Consistent filled tiles. The popup viewer retains the complete image ratio. */
.parallax-project-media{aspect-ratio:4/3;background:#e5e1d8}
.parallax-project-media>img{height:100%;width:100%;object-fit:cover;object-position:center}
.parallax-project-card{transform-origin:center center}
@media(max-width:640px){.parallax-project-media{aspect-ratio:4/3}.parallax-project-media>img{height:100%;max-height:none;object-fit:cover}.parallax-project-caption{min-height:88px}}

/* Revision16: straight aligned cards, centered final project, compact partner handoff. */
.parallax-project-card{will-change:auto}
.parallax-gallery-row:last-child>.parallax-project-card:only-child{grid-column:1/-1;width:calc((100% - 24px)/2);justify-self:center}
.reality-parallax-gallery{padding-bottom:0}
#projects{padding-bottom:36px}
#partners{padding-top:44px}
@media(min-width:641px){[dir=rtl] .parallax-gallery-row{direction:ltr}[dir=rtl] .parallax-project-card{direction:rtl}}
@media(min-width:641px) and (max-width:1000px){.parallax-gallery-row:last-child>.parallax-project-card:only-child{width:calc((100% - 18px)/2)}}
@media(max-width:640px){.parallax-gallery-row:last-child>.parallax-project-card:only-child{width:100%}#projects{padding-bottom:12px}#partners{padding-top:28px}}

/* Fill gallery tiles edge to edge; full compositions remain in project details. */
.parallax-project-media>img{object-fit:cover;object-position:center;transform:none}
