.gallery-module__JbMRwa__page{--navy-deep:#0a0e27;--navy-mid:#131a3d;--teal:#3fd9d1;--orange:#ff8f6b;--coral:#ff5f7e;--paper:#f6f7fb;--ink:#10142c;--text-light:#e8ecf5;--text-muted:#a9afc9;background:var(--paper);font-family:Inter,Segoe UI,system-ui,sans-serif}.gallery-module__JbMRwa__heroBand{text-align:center;color:var(--text-light);background:linear-gradient(115deg,#0a0e27 0%,#131a3d 35%,#1c1f4a 60%,#0f2a3d 100%);padding:72px 20px 48px}.gallery-module__JbMRwa__heroBand h1{letter-spacing:-.02em;margin:0;font-family:Space Grotesk,Segoe UI,system-ui,sans-serif;font-size:clamp(2rem,4vw,2.8rem)}.gallery-module__JbMRwa__heroBand p{max-width:52ch;color:var(--text-muted);margin:14px auto 0;line-height:1.6}.gallery-module__JbMRwa__galleryGrid{columns:3 320px;column-gap:28px;max-width:1280px;margin:0 auto;padding:56px 24px 88px}.gallery-module__JbMRwa__galleryItem{break-inside:avoid;border-radius:6px;margin:0 0 28px;position:relative;overflow:hidden;box-shadow:0 10px 28px #0a0e272e}.gallery-module__JbMRwa__galleryItem img{width:100%;height:auto;transition:transform .5s;display:block}.gallery-module__JbMRwa__galleryItem:hover img{transform:scale(1.05)}.gallery-module__JbMRwa__caption{color:var(--text-light);opacity:0;background:linear-gradient(#0a0e2700 0%,#0a0e27eb 100%);padding:18px 16px 14px;transition:opacity .25s,transform .25s;position:absolute;inset:auto 0 0;transform:translateY(8px)}.gallery-module__JbMRwa__galleryItem:hover .gallery-module__JbMRwa__caption{opacity:1;transform:translateY(0)}.gallery-module__JbMRwa__caption h3{background:linear-gradient(90deg, var(--teal), var(--orange));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-family:Space Grotesk,Segoe UI,system-ui,sans-serif;font-size:1rem}.gallery-module__JbMRwa__caption p{color:var(--text-muted);margin:4px 0 0;font-size:.85rem;line-height:1.4}@media (max-width:640px){.gallery-module__JbMRwa__galleryGrid{columns:1;padding:40px 20px 64px}.gallery-module__JbMRwa__caption{opacity:1;background:var(--navy-deep);position:static;transform:none}}
