/* Original photo proportions are preserved in the teaser and full gallery. */
.ab-realization-overview{padding:28px 0 30px;border-top:1px solid var(--line,#d7d7d2)}
.ab-realization-intro{font-size:15px;line-height:1.6;color:var(--muted,#646464);max-width:650px;margin:0 0 22px}
.ab-realization-card-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px;align-items:start}
.ab-realization-card{min-width:0}
.ab-realization-card-media{display:flex;justify-content:center;align-items:center;min-width:0;min-height:240px;background:#f5f5f1}
.ab-realization-card-media img{width:100%;height:auto;max-height:370px;object-fit:contain}
.ab-realization-card-video .ab-realization-card-media img{width:auto;max-width:100%;height:370px;object-fit:contain}
.ab-realization-card h3{font-family:var(--ab-font-text,"Golos Text",Arial,sans-serif);font-size:17px;font-weight:400;line-height:1.4;letter-spacing:-.02em;margin:12px 0 8px}
.ab-realization-card .text-link{font-size:14px;display:inline-block;padding:5px 0}
.ab-realization-page{padding-block:32px 60px}
.ab-realization-page>h1{max-width:1000px;margin:0 0 22px}
.ab-realization-jump-links{display:flex;gap:24px;flex-wrap:wrap;margin:0 0 36px}
.ab-realization-jump-links a{font-size:15px;min-height:44px;display:inline-flex;align-items:center}
.ab-realization-section{border-top:1px solid var(--line,#d7d7d2);padding-top:26px;margin-top:32px;scroll-margin-top:24px}
.ab-realization-section>h2{font-size:clamp(30px,4vw,48px);text-transform:uppercase;margin:0 0 22px}
.ab-realization-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px;align-items:start}
.ab-realization-photo-grid figure{min-width:0;margin:0}
.ab-realization-photo-grid a{display:block}
.ab-realization-photo-grid img{width:100%;height:auto;object-fit:contain}
.ab-realization-photo-grid figcaption{font-size:13px;line-height:1.45;margin-top:9px;color:var(--muted,#646464)}
.ab-realization-photo-grid .ab-realization-frame--portrait + .ab-realization-frame--landscape,
.ab-realization-photo-grid .ab-realization-frame--landscape + .ab-realization-frame--portrait{grid-column-start:1}
.ab-realization-video{display:block;width:min(100%,430px);height:auto;aspect-ratio:9/16;max-height:78vh;background:#111;object-fit:contain}
.ab-realization-credit{font-size:12px;line-height:1.5;color:var(--muted,#646464);margin:20px 0 0}
.ab-realization-video-note{font-size:13px;line-height:1.6;color:var(--muted,#646464);margin:12px 0 0}
@media(max-width:700px){
 .ab-realization-overview{padding-block:22px}
 .ab-realization-overview .overview-heading{display:block}
 .ab-realization-overview .overview-heading h2{max-width:340px}
 .ab-realization-card-grid{grid-template-columns:1fr;gap:28px}
 .ab-realization-card-media{min-height:0}
 .ab-realization-card-media img{max-height:none}
 .ab-realization-card-video .ab-realization-card-media img{height:340px;max-height:65vh}
 .ab-realization-card h3{font-size:16px}
 .ab-realization-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}
 .ab-realization-photo-grid figcaption{font-size:12px}
 .ab-realization-jump-links{gap:12px 24px;margin-bottom:26px}
 .ab-realization-page{padding-block:24px 36px}
}

/* Physical rooms stay contiguous and each new room starts its own row. */
.ab-realization-photo-grid .ab-realization-room-start{grid-column-start:1}
