.uploaded-art{background-position:center;background-size:cover;background-repeat:no-repeat}
.uploaded-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.34))}
.uploaded-art>span{color:#fff;z-index:2}
.ig-wall{padding:130px clamp(24px,5vw,80px);background:#f3f2eb}
.ig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ig-grid a{position:relative;text-decoration:none;color:#111;overflow:hidden}
.ig-grid .art{height:clamp(220px,28vw,430px);min-height:0;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.ig-grid a:hover .art{transform:scale(.985)}
.ig-grid a>span{display:block;padding:12px 2px;font-size:8px;font-weight:700;letter-spacing:.12em}
@media(max-width:760px){.ig-wall{padding:90px 20px}.ig-grid{grid-template-columns:repeat(2,1fr)}.ig-grid .art{height:220px}}

/* Consistent icon rhythm and interaction */
.service-list article{gap:clamp(22px,3vw,42px)}
.service-icon{display:grid;place-items:center;align-self:center;margin-block:4px;transition:transform .42s cubic-bezier(.2,.8,.2,1),box-shadow .42s}
.service-list h3{margin:0;align-self:center;line-height:1.2}
.service-list article>p{margin:0;align-self:center}
.service-list article>.arrow{display:grid;place-items:center;width:44px;height:44px;margin:0;border:1px solid rgba(17,18,15,.14);box-shadow:4px 5px 10px rgba(20,24,21,.07);transition:transform .3s,box-shadow .3s}
.project-meta>.arrow,.all-work>.arrow,.contact a>.arrow,.location a>.arrow,.contact-pill>.arrow,.primary>.arrow{display:inline-grid;place-items:center;min-width:28px;min-height:28px;margin-left:16px;line-height:1}
.service-list article:hover .service-icon,.project-card:hover .project-meta>.arrow,.all-work:hover>.arrow,.contact a:hover>.arrow,.location a:hover>.arrow,.contact-pill:hover>.arrow,.primary:hover>.arrow{transform:translateY(-6px);box-shadow:7px 10px 18px rgba(20,24,21,.12)}
.service-list article:active .service-icon,.project-card:active .project-meta>.arrow,.all-work:active>.arrow,.contact a:active>.arrow,.location a:active>.arrow,.contact-pill:active>.arrow,.primary:active>.arrow{transform:translateY(2px);transition-duration:.12s}
.section-head h2{margin-top:26px}.section-head{row-gap:28px}.contact h2{margin-block:30px 42px}.about-copy .index{margin-bottom:28px}.location-copy .index{margin-bottom:30px}

/* Section entrance system */
.reveal-on-scroll{opacity:0;transform:translateY(34px);transition:opacity .82s cubic-bezier(.2,.8,.2,1) var(--reveal-delay,0ms),transform .82s cubic-bezier(.2,.8,.2,1) var(--reveal-delay,0ms)}
.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.reveal-on-scroll{opacity:1;transform:none;transition:none}.service-icon,.arrow{transition:none!important}}
