/* Real project photographs: consistent frames without artificial recolouring. */
.home-page .hero{grid-template-columns:1fr 1.08fr;gap:52px}
.home-page .hero-visual{align-self:center;padding:0 0 0 22px;min-height:0}
.home-page .hero-photo{height:auto;min-height:0;aspect-ratio:4/3;max-height:none;box-shadow:0 14px 34px -24px #182c4055}
.home-page .hero-slide>img{object-position:center;object-fit:cover}
.home-page .hero-project{padding:52px 22px 20px;background:linear-gradient(transparent,rgba(16,35,50,.88))}
.home-page .hero-project b{font-family:var(--font-body);font-size:23px;font-weight:600;letter-spacing:-.015em}
.home-page .hero-project small{font-size:10px;letter-spacing:.08em}
.home-page .hero-stamp{margin-top:18px;padding-bottom:0;color:var(--muted)}
.home-page .carousel-controls{top:14px;right:14px;background:var(--paper)}
.direction-photo,.home-page .direction-photo{height:auto;aspect-ratio:4/3;overflow:hidden}
.direction-photo>img{object-position:center}
.project-image,.home-page .project-image{height:auto;aspect-ratio:4/3;overflow:hidden;background:#e8eceb}
.project-image>img{height:100%;width:100%;object-fit:cover;object-position:center}
.project-image>img[data-image-kind="drawing"]{object-fit:contain;padding:20px;background:#fff}
.image-arrow{box-shadow:0 2px 12px #182c4012}
.practice-image{align-self:center;min-height:0}
.practice-image img{height:auto;max-height:none;aspect-ratio:4/3;object-fit:cover;object-position:center}
.company-story>div:first-child{align-self:center;background:#e8eceb}
.company-story>div:first-child>img{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;display:block}
.scope-hero>img{height:auto;aspect-ratio:4/3;object-fit:cover;align-self:center}
.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.gallery-item{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);background:var(--paper);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.gallery-item:hover{border-color:#9aadb9;box-shadow:0 10px 24px -18px #182c4066}
.gallery .gallery-item>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;background:#e8eceb}
.gallery .gallery-item>img[data-orientation="portrait"]{object-fit:contain;background:#e8eceb}
.gallery .gallery-item>img[data-image-kind="drawing"]{object-fit:contain;padding:20px;background:#fff}
.gallery-item>span{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;min-height:76px;background:var(--paper)}
.gallery-caption{min-width:0;display:flex;flex-direction:column;gap:7px}
.gallery-caption b{font-size:17px;font-weight:600;line-height:1.35;letter-spacing:0}
.gallery-caption small{font-size:10px;line-height:1.4;letter-spacing:.07em;color:var(--muted)}
.gallery-item>span>svg{width:22px;height:22px;flex-shrink:0;color:var(--accent)}
.gallery-item--panorama{grid-column:1/-1}
.gallery .gallery-item--panorama>img{aspect-ratio:3/1}
.certificates .gallery-item>span{font-size:12px;line-height:1.45;letter-spacing:0;min-height:86px;padding:12px}
.certificates .gallery-item>span>svg{width:18px;height:18px}
.certificates .gallery-item>img{background:#fff}
@media(min-width:1101px){.projects-grid{gap:30px}}
@media(max-width:1100px) and (min-width:761px){.home-page .hero{gap:30px;grid-template-columns:1fr 1fr}.home-page .hero-visual{padding-left:16px}.home-page .hero-project b{font-size:20px}.home-page .hero-project small{font-size:9px}.home-page .hero-project{padding:40px 16px 16px}}
@media(max-width:760px){.home-page .hero{grid-template-columns:1fr;gap:30px}.home-page .hero-visual{padding:0;border-left:0}.home-page .hero-photo{height:auto;aspect-ratio:4/3;min-height:0}.home-page .hero-project{padding:45px 18px 16px}.home-page .hero-project b{font-size:21px}.home-page .hero-stamp{font-size:9px;letter-spacing:.035em;margin-top:14px}.direction-photo,.home-page .direction-photo,.project-image,.home-page .project-image{height:auto;aspect-ratio:4/3}.practice-image img{height:auto}.gallery{grid-template-columns:1fr;gap:22px}.gallery .gallery-item>img{height:auto;aspect-ratio:4/3}.gallery-item>span{padding:16px;min-height:76px}.gallery-caption b{font-size:17px}.gallery .gallery-item--panorama>img{aspect-ratio:2/1}.company-story>div:first-child>img,.scope-hero>img{height:auto}.gallery .gallery-item>img[data-image-kind="drawing"]{padding:14px}.certificates .gallery-item>span{padding:10px;font-size:11px;min-height:100px}}
@media(prefers-reduced-motion:reduce){.gallery-item{transition:none}}
