.union-ui .ui-projects-page{overflow:hidden}
/* Hero: offer on the left, real object photographs on the right. */
.union-ui .ui-projects-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,72px);align-items:center;padding-top:40px;padding-bottom:56px}
.union-ui .ui-projects-hero__collage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;aspect-ratio:1/1;min-height:0}
.union-ui .ui-projects-hero__tile{position:relative;display:block;overflow:hidden;border-radius:20px;background:var(--color-panel);color:#fff;isolation:isolate}
.union-ui .ui-projects-hero__tile--main{grid-row:1/3}
.union-ui .ui-projects-hero__tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--motion-ease)}
.union-ui .ui-projects-hero__tile::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 55%,rgba(22,26,42,.7))}
.union-ui .ui-projects-hero__tile>span{position:absolute;left:16px;bottom:12px;z-index:2;font:600 15px/1.2 var(--font-display);letter-spacing:-.02em}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.union-ui .ui-projects-hero__tile:hover img{transform:scale(1.04)}}
/* Project blocks: head row on top, media grid below. */
.union-ui .ui-project{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 14px;align-items:start}
.union-ui .ui-project__head{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:12px clamp(24px,5vw,72px);align-items:end}
.union-ui .ui-project__head>.ui-eyebrow{grid-column:1}
.union-ui .ui-project__head h2{grid-column:1;font-size:clamp(26px,2.5vw,38px);line-height:1.15;text-wrap:balance}
.union-ui .ui-project__text{grid-column:1;margin-top:6px;font-size:17px;line-height:1.5;max-width:46ch}
.union-ui .ui-project__facts{grid-column:2;grid-row:1/span 3;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px 24px;margin:0;padding:0}
.union-ui .ui-project__facts>div{border-top:1px solid var(--color-line);padding-top:12px}
.union-ui .ui-project__facts dt{font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.union-ui .ui-project__facts dd{margin:6px 0 0;font-size:17px;line-height:1.35}
.union-ui .ui-project__media{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;gap:14px;list-style:none;margin:0;padding:0}
.union-ui .ui-project__item{min-width:0;margin:0;overflow:hidden;border-radius:16px;background:var(--color-panel)}
.union-ui .ui-project__figure{margin:0}
.union-ui .ui-project__figure img,.union-ui .ui-project__video{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:3/2;background:var(--color-panel)}
.union-ui .ui-project__item--wide{grid-column:span 2}
.union-ui .ui-project__item--wide .ui-project__video{aspect-ratio:21/9}
.union-ui .ui-project:has(.ui-project__item:only-child){grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:28px clamp(28px,5vw,72px);align-items:start}
.union-ui .ui-project:has(.ui-project__item:only-child) .ui-project__head{grid-column:1;grid-template-columns:1fr;align-self:center}
.union-ui .ui-project:has(.ui-project__item:only-child) .ui-project__facts{grid-column:1;grid-row:auto;margin-top:12px;grid-template-columns:1fr}
.union-ui .ui-project:has(.ui-project__item:only-child) .ui-project__media{grid-column:2;grid-row:1;grid-template-columns:minmax(0,1fr)}
.union-ui .ui-project__item--portrait,.union-ui .ui-project__item:has(img[height="1280"]){grid-row:span 2;position:relative}
.union-ui .ui-project__item--portrait .ui-project__video,.union-ui .ui-project__item--portrait img,.union-ui .ui-project__item:has(img[height="1280"]) img,.union-ui .ui-project__item:has(img[height="1280"]) .ui-project__figure{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}
.union-ui .ui-project__video{background:#000}
/* Proof strip reused on services. */
.union-ui .ui-proof__head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:24px 48px;margin-bottom:36px}
.union-ui .ui-proof__head .ui-section-heading{max-width:760px}
.union-ui .ui-proof__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px}
.union-ui .ui-proof__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}
.union-ui .ui-proof__card{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:20px;background:#3d3f52;color:#fff;isolation:isolate}
.union-ui .ui-proof__card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--motion-ease)}
.union-ui .ui-proof__card::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 45%,rgba(22,26,42,.86))}
.union-ui .ui-proof__meta{position:absolute;left:20px;right:20px;bottom:16px;z-index:2;display:grid;gap:4px}
.union-ui .ui-proof__meta span{font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.union-ui .ui-proof__meta strong{font:600 clamp(16px,1.35vw,19px)/1.25 var(--font-display);letter-spacing:-.03em}
.union-ui .ui-proof__card:hover strong,.union-ui .ui-proof__card:focus-visible strong{text-decoration:underline;text-underline-offset:5px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.union-ui .ui-proof__card:hover img{transform:scale(1.04)}}
.union-ui .ui-services-path{display:block}
.union-ui .ui-services-path .ui-section-heading{max-width:820px;margin-bottom:32px}
.union-ui .ui-services-path ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 28px;list-style:none;margin:0;padding:0}
.union-ui .ui-services-path li{border-top:1px solid var(--color-line);padding-top:18px}
.union-ui .ui-services-path li h3{font-size:21px;margin-bottom:10px}
.union-ui .ui-services-path li p{font-size:16px;line-height:1.5}
@media(max-width:1000px){.union-ui .ui-projects-hero__collage{aspect-ratio:16/10}
.union-ui .ui-project__head{grid-template-columns:1fr}
.union-ui .ui-project__facts{grid-column:1;grid-row:auto;margin-top:12px}
.union-ui .ui-project__media{grid-template-columns:repeat(2,minmax(0,1fr))}
.union-ui .ui-project:has(.ui-project__item:only-child){grid-template-columns:1fr}
.union-ui .ui-project:has(.ui-project__item:only-child) .ui-project__head{grid-column:1/-1}
.union-ui .ui-project:has(.ui-project__item:only-child) .ui-project__media{grid-column:1/-1;grid-row:auto}
.union-ui .ui-project__item--wide{grid-column:1/-1}
.union-ui .ui-project__item--portrait,.union-ui .ui-project__item:has(img[height="1280"]){grid-row:auto;grid-column:1/-1;position:static}
.union-ui .ui-project__item--portrait .ui-project__video,.union-ui .ui-project__item--portrait img,.union-ui .ui-project__item:has(img[height="1280"]) img,.union-ui .ui-project__item:has(img[height="1280"]) .ui-project__figure{position:static;width:auto;height:auto;max-width:100%;max-height:560px;aspect-ratio:auto;margin-inline:auto}
.union-ui .ui-proof__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.union-ui .ui-services-path ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.union-ui .ui-projects-hero__collage{aspect-ratio:1/1;gap:8px}
.union-ui .ui-project__media{grid-template-columns:1fr}
.union-ui .ui-proof__grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(var(--page-gutter) * -1);padding-inline:var(--page-gutter);scroll-padding-inline:var(--page-gutter)}
.union-ui .ui-proof__grid::-webkit-scrollbar{display:none}
.union-ui .ui-proof__grid>li{scroll-snap-align:start}
.union-ui .ui-proof__actions .ui-button--secondary{width:100%}
.union-ui .ui-services-path ol{grid-template-columns:1fr;gap:18px}}
