.reference-case-studies{padding:0 var(--pad) clamp(4rem,7vw,7rem);border-bottom:1px solid var(--line)}
.reference-case-studies__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.58fr);gap:clamp(2rem,7vw,7rem);align-items:end;max-width:var(--max);margin:0 auto 2.25rem}
.reference-case-studies__head h2{max-width:45rem;margin:0;color:var(--navy);font-size:clamp(2rem,3.3vw,3.35rem);letter-spacing:-.035em;line-height:1.06}
.reference-case-studies__head>p{margin:0;color:var(--muted)}
.reference-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;max-width:var(--max);margin:auto;background:var(--line);border:1px solid var(--line)}
.reference-case{display:flex;min-width:0;background:#fff;flex-direction:column}
.reference-case__image{position:relative;width:100%;aspect-ratio:4/3;padding:0;overflow:hidden;background:#fbfcfc;border:0;cursor:zoom-in}
.reference-case__image img{width:100%;height:100%;object-fit:contain;transition:transform .35s ease}
.reference-case__image:hover img{transform:scale(1.018)}
.reference-case__image span{position:absolute;right:.75rem;bottom:.75rem;display:grid;width:2.5rem;height:2.5rem;color:#fff;background:var(--navy);place-items:center;font-size:1.2rem}
.reference-case__copy{display:flex;min-height:23rem;padding:clamp(1.5rem,2.5vw,2.25rem);flex:1;flex-direction:column}
.reference-case__eyebrow{margin:0 0 .75rem;color:var(--blue);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.reference-case h3{margin:0;color:var(--navy);font-size:clamp(1.35rem,1.8vw,1.75rem);letter-spacing:-.025em;line-height:1.12}
.reference-case__summary{margin:1rem 0;color:var(--muted);line-height:1.58}
.reference-case dl{display:grid;gap:.65rem;margin:auto 0 0}
.reference-case dl div{display:grid;grid-template-columns:5.4rem 1fr;gap:.75rem;padding-top:.65rem;border-top:1px solid var(--line)}
.reference-case dt{color:var(--navy);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.reference-case dd{margin:0;color:#46575e;font-size:.84rem;line-height:1.45}
.reference-gallery-tools{display:flex;max-width:var(--max);margin:0 auto;padding:2rem var(--pad) 1rem;align-items:center;justify-content:space-between;gap:1.5rem}
.reference-gallery-tools p{margin:0;color:var(--navy);font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.reference-gallery-filters{display:flex;flex-wrap:wrap;gap:.4rem}
.reference-gallery-filters button{padding:.62rem .85rem;color:#43545b;background:#fff;border:1px solid var(--line);font:inherit;font-size:.78rem;cursor:pointer}
.reference-gallery-filters button[aria-pressed="true"]{color:#fff;background:var(--navy);border-color:var(--navy)}
.reference-feed-item{position:relative;cursor:zoom-in}
.reference-feed-item.is-filtered-out{display:none}
.reference-feed-item::after{position:absolute;right:.8rem;bottom:.8rem;display:grid;width:2.35rem;height:2.35rem;color:#fff;background:#063444e8;content:'+';place-items:center;font-size:1.15rem;opacity:0;transition:opacity .2s ease}
.reference-feed-item:hover::after,.reference-feed-item:focus-within::after{opacity:1}
.reference-feed-item button{position:absolute;inset:0;width:100%;height:100%;padding:0;background:transparent;border:0;cursor:zoom-in}
.reference-feed-item img.reference-neutral-background,.reference-lightbox__media img.reference-neutral-background{background:#fff;filter:brightness(1.075) contrast(1.015)}
.reference-lightbox{width:min(94vw,86rem);max-width:none;padding:0;overflow:hidden;color:var(--ink);background:#fff;border:0;box-shadow:0 1.5rem 5rem #061f2aaa}
.reference-lightbox::backdrop{background:#061f2ad9;backdrop-filter:blur(4px)}
.reference-lightbox__layout{display:grid;width:100%;max-width:100%;min-width:0;overflow:hidden;grid-template-columns:minmax(0,1.4fr) minmax(23rem,.6fr);min-height:min(82vh,48rem)}
.reference-lightbox__media{display:grid;min-width:0;overflow:hidden;padding:1.25rem;background:#fff;place-items:center}
.reference-lightbox__media img{display:block;width:100%;height:100%;min-width:0;max-width:100%;max-height:76vh;background:#fff;object-fit:contain}
.reference-lightbox__copy{display:flex;min-width:0;padding:clamp(1.5rem,3vw,3rem);overflow-wrap:normal;word-break:normal;hyphens:auto;flex-direction:column;justify-content:center}
.reference-lightbox__copy p:first-child{margin:0 0 .8rem;color:var(--blue);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.reference-lightbox__copy h2{margin:0;color:var(--navy);font-size:clamp(1.45rem,2vw,2.1rem);line-height:1.1;overflow-wrap:normal;word-break:normal;hyphens:auto}
.reference-lightbox__copy p:last-of-type{margin:1rem 0 0;color:var(--muted);line-height:1.6}
.reference-lightbox__close{position:absolute;z-index:2;top:.75rem;right:.75rem;display:grid;width:2.8rem;height:2.8rem;color:#fff;background:var(--navy);border:0;place-items:center;font-size:1.25rem;cursor:pointer}
@media(max-width:900px){.reference-case-studies__head,.reference-case-grid{grid-template-columns:1fr}.reference-case__copy{min-height:0}.reference-gallery-tools{align-items:flex-start;flex-direction:column}.reference-lightbox__layout{grid-template-columns:1fr;grid-template-rows:minmax(18rem,62vh) auto}.reference-lightbox__copy{padding:1.4rem 1.5rem 1.8rem}.reference-lightbox__copy p:last-of-type{margin-top:.65rem}}
@media(max-width:560px){.reference-case-studies{padding-inline:1.25rem}.reference-gallery-tools{padding-inline:1.25rem}.reference-gallery-filters{display:grid;width:100%;grid-template-columns:repeat(2,1fr)}.reference-gallery-filters button{text-align:left}.reference-lightbox{width:100vw;height:100dvh;max-height:none;margin:0}.reference-lightbox__layout{min-height:100dvh;grid-template-rows:54vh 1fr}.reference-lightbox__copy{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.reference-case__image img{transition:none}}
