.categorized-gallery-section{padding:60px 0;background:var(--color-background)}.categorized-gallery-header{text-align:center;margin-bottom:64px}.categorized-gallery-title{font-size:40px;font-weight:400;color:var(--color-black);margin:0 0 12px;letter-spacing:-.02em}.categorized-gallery-description{font-size:16px;color:#0009;margin:0}.categorized-gallery-pills{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:48px}.categorized-gallery-pill{display:inline-block;padding:10px 20px;background:#0000000a;color:#0000005c;border:none;border-radius:100px;font-size:14px;font-weight:300;font-family:var(--font-sans);letter-spacing:.02em;cursor:pointer;transition:background .25s ease,color .25s ease;white-space:nowrap;box-shadow:none}.categorized-gallery-pill:hover:not(.active){background:#0001;color:#00000080}.categorized-gallery-pill:focus-visible{outline:2px solid rgba(0,0,0,.25);outline-offset:3px}.categorized-gallery-pill.active{background:#3a3633;color:#ffffffe6;font-weight:300}.categorized-gallery-pill.active:hover{background:#322e2b;color:#fffffff2}.categorized-gallery-pill.active:focus-visible{outline-color:#ffffff73}.categorized-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.categorized-gallery-item{position:relative;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(0,0,0,.06);background:transparent;opacity:0;transform:translateY(16px);animation:fadeInUp .5s ease forwards}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.categorized-gallery-item img{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;transition:transform .5s ease;cursor:pointer}.categorized-gallery-item:hover img{transform:scale(1.03)}.categorized-gallery-load-more{display:flex;justify-content:center;margin-top:24px}.categorized-gallery-load-more .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px}.categorized-gallery-load-more .btn-loader{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.categorized-gallery-load-more .btn:disabled{opacity:.6;cursor:not-allowed}.categorized-lightbox{position:fixed;inset:0;display:grid;place-items:center;background:#0009;opacity:0;pointer-events:none;transition:opacity .25s ease;z-index:1000}.categorized-lightbox.open{opacity:1;pointer-events:auto}.categorized-lightbox-backdrop{position:absolute;inset:0}.categorized-lightbox-dialog{position:relative;max-width:min(1000px,90vw);max-height:90vh;width:100%;background:#111111eb;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);overflow:hidden}.categorized-lightbox-content{width:100%;height:100%;display:grid;place-items:center;background:#111}.categorized-lightbox-content img{width:100%;height:auto;max-height:80vh;object-fit:contain}.categorized-lightbox-close{position:absolute;top:8px;right:8px;width:36px;height:36px;border-radius:50%;border:none;background:#fffffff2;color:#111;cursor:pointer;box-shadow:0 4px 16px #00000059;display:flex;align-items:center;justify-content:center;font-size:20px}.categorized-lightbox-prev,.categorized-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:none;background:#fffffff2;color:#111;cursor:pointer;display:grid;place-items:center;box-shadow:0 4px 16px #00000059}.categorized-lightbox-prev{left:10px}.categorized-lightbox-next{right:10px}.categorized-lightbox-counter{position:absolute;bottom:8px;right:12px;color:#ffffffe6;font-size:12px;font-weight:500}@media (max-width: 1024px){.categorized-gallery-grid{grid-template-columns:repeat(2,1fr);gap:14px}}@media (max-width: 768px){.categorized-gallery-section{padding:40px 0}.categorized-gallery-header{margin-bottom:48px}.categorized-gallery-title{font-size:32px}.categorized-gallery-pills{margin-bottom:32px}.categorized-gallery-pill{font-size:13px;padding:8px 16px}.categorized-gallery-grid{grid-template-columns:repeat(2,1fr);gap:12px}}@media (max-width: 370px){.categorized-gallery-grid{grid-template-columns:1fr}}
