.project-gallery{background:#0c2233;color:#f7fafc;padding:88px 24px}.project-gallery__inner{max-width:1120px;margin:auto}.project-gallery__inner:focus-visible{outline:2px solid #7dd3fc;outline-offset:8px}.project-gallery__heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:32px}.project-gallery__eyebrow{color:#7dd3fc;text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:700;margin-bottom:12px}.project-gallery h2{font-size:clamp(32px,5vw,52px);line-height:1.1;font-weight:700;letter-spacing:-.03em}.project-gallery__intro{max-width:320px;color:#b8c8d4;font-size:16px;line-height:1.7}.project-gallery__stage{border-radius:18px;overflow:hidden;background:#071722;border:1px solid #ffffff18}.project-gallery figure{margin:0}.project-gallery [hidden]{display:none}.project-gallery__stage img{display:block;width:100%;height:clamp(300px,47vw,580px);object-fit:contain}.project-gallery figcaption{padding:22px 28px;background:#102b40;border-top:1px solid #ffffff12}.project-gallery figcaption span{color:#90a9bb;font-size:11px;text-transform:uppercase;letter-spacing:.14em}.project-gallery h3{font-size:20px;font-weight:600;margin-top:6px}.project-gallery__toolbar{display:flex;align-items:center;justify-content:space-between;padding:20px 0;color:#b8c8d4;font-size:13px}.project-gallery__arrows{display:flex;gap:10px}.project-gallery__arrows button{width:46px;height:46px;border:1px solid #ffffff30;border-radius:50%;font-size:24px;background:#ffffff08;color:white;cursor:pointer}.project-gallery__arrows button:hover{background:#164966;border-color:#7dd3fc}.project-gallery__thumbnails{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.project-gallery__thumbnails button{position:relative;padding:3px;border:2px solid transparent;border-radius:10px;overflow:hidden;cursor:pointer;opacity:.6;background:transparent;transition:opacity .15s,border-color .15s}.project-gallery__thumbnails button:hover,.project-gallery__thumbnails button[aria-current=true]{opacity:1}.project-gallery__thumbnails button[aria-current=true]{border-color:#7dd3fc}.project-gallery__thumbnails img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:5px}.project-gallery__thumbnails span{position:absolute;bottom:9px;left:10px;background:#071722cc;color:white;font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px}.project-gallery button:focus-visible{outline:2px solid #7dd3fc;outline-offset:3px}@media(max-width:640px){.project-gallery{padding:56px 20px}.project-gallery__heading{display:block;margin-bottom:24px}.project-gallery__intro{margin-top:16px}.project-gallery__stage img{height:360px}.project-gallery figcaption{padding:18px 20px}.project-gallery h3{font-size:18px}.project-gallery__thumbnails{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}}@media(prefers-reduced-motion:reduce){.project-gallery__thumbnails button{transition:none}}

/* Trim the camera rim from the first three photos without modifying the files. */
.project-gallery__photo-frame{height:clamp(300px,47vw,580px);display:flex;align-items:center;justify-content:center}
.project-gallery__crop{position:relative;overflow:hidden;height:100%;max-width:100%}
.project-gallery__crop--1{aspect-ratio:832/720}
.project-gallery__crop--2{aspect-ratio:1380/1200}
.project-gallery__crop--3{aspect-ratio:520/740}
.project-gallery__crop img{position:absolute;top:0;height:auto;max-width:none;object-fit:initial}
.project-gallery__crop--1 img{width:115.385%;left:-7.692%}
.project-gallery__crop--2 img{width:115.942%;left:-7.971%}
.project-gallery__crop--3 img{width:115.385%;left:-7.692%}
@media(max-width:640px){.project-gallery__photo-frame{height:360px}.project-gallery__crop{height:auto;width:100%;max-height:100%}.project-gallery__crop--3{height:100%;width:auto}}
