 .gallery{ margin: 0;} .gallery-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;} .gallery--cols-3 .gallery-grid{ grid-template-columns: repeat(3, 1fr);} @media (max-width: 900px){ .gallery--cols-3 .gallery-grid{ grid-template-columns: repeat(2, 1fr);}} @media (max-width: 600px){ .gallery--cols-3 .gallery-grid{ grid-template-columns: 1fr;}} .gallery-item{ margin: 0; border-radius: var(--radius-md, 8px); overflow: hidden; background: var(--color-neutral-100, #e2e8f0); aspect-ratio: 4 / 3;} .gallery-item img{ display: block; width: 100%; height: 100%; object-fit: cover;} .gallery-item--zoomable{ cursor: zoom-in;} .gallery-item--zoomable:hover img{ filter: brightness(1.06);} .gallery-lightbox{ display: none; position: fixed; inset: 0; z-index: 1000; background: rgba(10, 14, 18, 0.88); padding: 24px;} .gallery-lightbox--open{ display: flex; flex-direction: column; align-items: center; justify-content: center;} .gallery-lightbox-img{ max-width: min(1100px, 92vw); max-height: 78vh; border-radius: var(--radius-md, 8px); box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);} .gallery-lightbox-caption{ margin: 12px 0 0; color: #ffffff; font-size: 0.95rem; text-align: center; max-width: 92vw;} .gallery-lightbox-close{ position: absolute; top: 14px; right: 18px; background: none; border: 0; color: #ffffff; font-size: 2rem; line-height: 1; cursor: pointer; padding: 8px;} .gallery--cols-4 .gallery-grid{ grid-template-columns: repeat(4, 1fr);} @media (max-width: 900px){ .gallery--cols-4 .gallery-grid{ grid-template-columns: repeat(2, 1fr);}} @media (max-width: 600px){ .gallery--cols-4 .gallery-grid{ grid-template-columns: 1fr;}} .section:has(> .container > .heading--h2 + .gallery) .heading--h2{ text-align: center;} .section:has(> .container > .heading--h2 + .gallery) .heading--h2::after{ content: ""; display: block; width: 130px; height: 3px; margin: 14px auto 0; background: #e8b514; border-radius: 2px;} .gallery--cols-4 .gallery-item{ border-radius: 10px;} @media (min-width: 901px){ .gallery--cols-4 .gallery-grid{ gap: 36px 35px;} .gallery--cols-4 .gallery-item{ aspect-ratio: 4 / 3;}}