.gallery-section{padding-bottom:5rem}.gallery-section-intro{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;display:flex}.gallery-section-intro h2{max-width:700px;font-size:clamp(2rem,4vw,3.6rem)}.gallery-section-intro>p{max-width:230px}.gallery-grid{columns:3;column-gap:1.5rem}.gallery-item{break-inside:avoid;background:#f9eeff;border:1px solid #6a397d;border-radius:1rem;margin:0 0 1.5rem;overflow:hidden}.gallery-open{cursor:zoom-in;background:#28152f;border:0;width:100%;padding:0;display:block;position:relative}.gallery-open img{width:100%;height:auto;display:block}.gallery-open:focus-visible{outline-offset:-5px;outline:4px solid #ffc107}.gallery-enlarge{color:#fff;background:#261335ef;border-radius:2rem;align-items:center;gap:.4rem;padding:.35rem .7rem;font-size:.875rem;display:flex;position:absolute;bottom:.7rem;right:.7rem}.gallery-item figcaption{color:#261335;padding:1rem 1.15rem;font-size:1rem;font-weight:600}.gallery-dialog{color:#fff;background:#201128;border:1px solid #af92b8;border-radius:1rem;width:min(1100px,95vw);max-width:95vw;max-height:94dvh;margin:auto;padding:1rem;position:fixed;inset:0;overflow:auto}.gallery-dialog::backdrop{background:#100b17ed}.gallery-dialog-top,.gallery-dialog-controls{justify-content:space-between;align-items:center;gap:1rem;display:flex}.gallery-dialog button{color:#fff;cursor:pointer;background:#40244c;border:1px solid #cbb3d9;border-radius:.5rem;align-items:center;gap:.5rem;min-height:44px;padding:.45rem .8rem;display:inline-flex}.gallery-dialog button:focus-visible{outline:3px solid #ffc107}.gallery-dialog figure{margin:1rem 0}.gallery-dialog figure img{object-fit:contain;width:100%;height:calc(94dvh - 210px);min-height:120px;display:block}.gallery-dialog figcaption{text-align:center;padding-top:.8rem}.gallery-section+.contact-banner .text-link{margin:1rem;display:inline-flex}@media (max-width:900px){.gallery-grid{columns:2}.gallery-section-intro{display:block}.gallery-section-intro>p{max-width:none;margin-top:1rem}}@media (max-width:580px){.gallery-grid{columns:1}.gallery-dialog{padding:.75rem}.gallery-dialog-top{font-size:.9rem}}
