.gallery-page{background:var(--rb-cream);min-height:100vh;overflow-x:hidden}.gallery-toolbar{position:sticky;top:0;z-index:40;background:hsla(42,39%,94%,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--rb-sand)}.gallery-toolbar-inner{max-width:1200px;margin:0 auto;padding:.85rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.gallery-toolbar-title{display:flex;align-items:baseline;gap:.6rem;flex-shrink:0}.gallery-toolbar-h1{font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:var(--rb-dark);line-height:1}.gallery-toolbar-count{font-family:var(--font-body);font-size:.75rem;color:var(--rb-text-muted);letter-spacing:.02em}.gallery-toolbar-filters{display:flex;gap:.4rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:2px}.gallery-toolbar-filters::-webkit-scrollbar{display:none}.gallery-filter-pill{display:flex;align-items:center;gap:.35rem;padding:.35rem .85rem;border-radius:2px;border:1px solid var(--rb-sand);background:#fff;cursor:pointer;white-space:nowrap;transition:all .2s ease}.gallery-filter-pill:hover{border-color:var(--rb-gold);background:var(--rb-gold-muted)}.gallery-filter-pill.active{background:var(--rb-gold);border-color:var(--rb-gold)}.gallery-filter-pill-label{font-family:var(--font-body);font-size:.8rem;font-weight:500;color:var(--rb-text-muted);transition:color .2s}.gallery-filter-pill.active .gallery-filter-pill-label{color:var(--rb-dark)}.gallery-filter-pill:hover .gallery-filter-pill-label{color:var(--rb-gold)}.gallery-filter-pill.active:hover .gallery-filter-pill-label{color:var(--rb-dark)}.gallery-filter-pill-count{font-family:var(--font-body);font-size:.65rem;font-weight:600;color:var(--rb-text-muted);background:var(--rb-sand);padding:.05rem .4rem;border-radius:2px;transition:all .2s}.gallery-filter-pill.active .gallery-filter-pill-count{color:var(--rb-dark);background:hsla(0,0%,100%,.92)}.gallery-grid-section{max-width:1200px;margin:0 auto;padding:.75rem 1rem 4rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:dense;gap:.5rem}@media (max-width:1024px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-card-wide{grid-column:span 2!important}}@media (max-width:640px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.35rem}.gallery-card-wide{grid-column:span 2!important}}.gallery-card{grid-column:span 1;cursor:pointer}.gallery-card-wide{grid-column:span 2}.gallery-card-inner{position:relative;width:100%;padding-bottom:75%;border-radius:2px;overflow:hidden;background:var(--rb-sand);transition:box-shadow .3s ease}.gallery-card:hover .gallery-card-inner{box-shadow:0 6px 20px rgba(0,0,0,.12)}.gallery-card-wide .gallery-card-inner{padding-bottom:50%}.gallery-card-img{object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}.gallery-card:hover .gallery-card-img{transform:scale(1.04)}.gallery-card-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:.65rem;background:linear-gradient(180deg,rgba(12,26,26,0),rgba(12,26,26,0) 50%,rgba(12,26,26,.6));opacity:0;transition:opacity .3s ease}.gallery-card:hover .gallery-card-overlay{opacity:1}.gallery-card-overlay-top{justify-content:flex-start}.gallery-card-badge{font-family:var(--font-body);font-size:.55rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-dark);background:var(--rb-gold);padding:.15rem .5rem;border-radius:2px;transform:translateY(-3px);opacity:0;transition:all .3s cubic-bezier(.22,1,.36,1)}.gallery-card:hover .gallery-card-badge{transform:translateY(0);opacity:1}.gallery-card-featured{display:flex;align-items:center;gap:.25rem;background:linear-gradient(135deg,#f59e0b,#d97706);margin-left:.35rem}.gallery-card-overlay-top{display:flex;gap:.35rem}.gallery-card-overlay-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:.4rem;transform:translateY(4px);opacity:0;transition:all .3s cubic-bezier(.22,1,.36,1)}.gallery-card:hover .gallery-card-overlay-bottom{transform:translateY(0);opacity:1}.gallery-card-alt{font-family:var(--font-body);font-size:.75rem;color:hsla(0,0%,100%,.85);font-weight:500;line-height:1.3}.gallery-card-expand{flex-shrink:0;width:16px;height:16px;color:hsla(0,0%,100%,.6)}.gallery-card-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}.gallery-card:hover .gallery-card-video{transform:scale(1.04)}.gallery-card-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(12,26,26,.3);transition:background .3s ease;pointer-events:none}.gallery-card:hover .gallery-card-play{background:rgba(12,26,26,.5)}.gallery-card-play svg{color:#fff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));transition:transform .3s ease}.gallery-card:hover .gallery-card-play svg{transform:scale(1.15)}.gallery-empty{text-align:center;padding:5rem 2rem;font-family:var(--font-body);font-size:1rem;color:var(--rb-text-muted)}.gallery-lightbox{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:rgba(12,26,26,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:2rem}.gallery-lightbox-content{position:relative;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;align-items:center}.gallery-lightbox-img{object-fit:contain}.gallery-lightbox-img,.gallery-lightbox-video{max-width:100%;max-height:78vh;width:auto;height:auto;border-radius:2px;box-shadow:0 20px 60px rgba(0,0,0,.4)}.gallery-lightbox-video{background:#000}.gallery-lightbox-info{display:flex;align-items:center;gap:.85rem;margin-top:.75rem;padding:.4rem 0}.gallery-lightbox-badge{font-family:var(--font-body);font-size:.6rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-dark);background:var(--rb-gold);padding:.2rem .65rem;border-radius:2px}.gallery-lightbox-alt{font-family:var(--font-body);font-size:.9rem;color:hsla(0,0%,100%,.75);font-weight:400}.gallery-lightbox-counter{font-family:var(--font-body);font-size:.8rem;color:hsla(0,0%,100%,.4);margin-left:auto}.gallery-lightbox-nav{position:fixed;top:50%;transform:translateY(-50%);z-index:110;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.12);border-radius:50%;color:#fff;cursor:pointer;transition:all .25s ease}.gallery-lightbox-nav:hover{background:var(--rb-gold);border-color:var(--rb-gold);color:#fff}.gallery-lightbox-prev{left:1.5rem}.gallery-lightbox-next{right:1.5rem}.gallery-lightbox-close{position:fixed;top:1.5rem;right:1.5rem;z-index:110;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.12);border-radius:50%;color:#fff;cursor:pointer;transition:all .25s ease}.gallery-lightbox-close:hover{background:rgba(239,68,68,.2);border-color:rgba(239,68,68,.35);color:#fca5a5}@media (max-width:640px){.gallery-toolbar-inner{padding:.65rem .75rem;flex-direction:column;align-items:flex-start;gap:.5rem}.gallery-filter-pill{padding:.3rem .65rem}.gallery-grid-section{padding:.5rem .5rem 3rem}.gallery-lightbox{padding:1rem}.gallery-lightbox-prev{left:.5rem}.gallery-lightbox-next{right:.5rem}.gallery-lightbox-nav{width:38px;height:38px}.gallery-lightbox-info{flex-wrap:wrap;gap:.5rem}}