.gallery{padding:88px 0}.gallery--white{background:var(--bg-2)}.gallery--tint{background:var(--edai-green-50)}.gallery--light{background:var(--bg-1)}.gallery__head{margin:0 0 48px;max-width:720px}.gallery__head .section-title{max-width:24ch}.gallery__head p{color:var(--fg-2);font-size:17px;line-height:1.65;margin:16px 0 0}.gallery__grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0;padding:0}.gallery__item{aspect-ratio:4/3;background:var(--edai-ink-100);border:0;border-radius:var(--radius-lg);cursor:zoom-in;display:block;overflow:hidden;padding:0;position:relative;width:100%}.gallery__item img{display:block;height:100%;object-fit:cover;transition:transform var(--dur-4) var(--ease-out);width:100%}.gallery__item:hover img{transform:scale(1.03)}.gallery__cap{background:rgba(4,26,63,.62);bottom:0;color:var(--edai-off-white);font:600 14px/1.3 var(--font-sans);left:0;padding:28px 16px 12px;position:absolute;right:0;text-align:left}.gallery__dialog{background:transparent;border:0;color:var(--edai-off-white);max-width:min(1100px,94vw);overflow:visible;padding:0;width:100%}.gallery__dialog::backdrop{background:rgba(4,26,63,.88)}.gallery__dialog[open]{align-items:center;display:grid;gap:8px;grid-template-columns:48px minmax(0,1fr) 48px}.gallery__dialog figure{margin:0;text-align:center}.gallery__dialog img{border-radius:var(--radius-lg);display:inline-block;max-height:80vh;max-width:100%;width:auto}.gallery__dialog-cap{color:var(--edai-ink-200);font-size:14px;margin-top:12px}.gallery__close,.gallery__nav{background:rgba(247,251,248,.14);border:0;border-radius:var(--radius-pill);color:var(--edai-off-white);cursor:pointer;font-size:26px;height:44px;line-height:1;width:44px}.gallery__close:hover,.gallery__nav:hover{background:rgba(247,251,248,.28)}.gallery__close{position:absolute;right:0;top:-56px}@media (max-width:1023px){.gallery{padding:64px 0}.gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:559px){.gallery__grid{gap:12px}.gallery__dialog[open]{grid-template-columns:minmax(0,1fr)}.gallery__nav{display:none}}