.gallery-page{min-height:100vh}.g-container{max-width:1280px;margin:0 auto;padding:0 1.5rem}.g-hero{padding:9.5rem 0 5rem;text-align:center;position:relative;overflow:hidden}.g-hero-glow{position:absolute;inset:0;background:radial-gradient(ellipse 90% 65% at 50% -5%,rgba(90,50,70,.45) 0%,transparent 68%),radial-gradient(ellipse 40% 40% at 10% 90%,rgba(50,28,14,.28) 0%,transparent 60%),radial-gradient(ellipse 40% 40% at 90% 90%,rgba(50,28,14,.28) 0%,transparent 60%);pointer-events:none}.g-hero-orb{position:absolute;border-radius:50%;filter:blur(88px);pointer-events:none;opacity:.2}.g-orb-l{width:560px;height:560px;background:radial-gradient(circle,#6b3550 0%,transparent 68%);top:-160px;left:-130px;animation:gOrbFloat 9s ease-in-out infinite}.g-orb-r{width:480px;height:480px;background:radial-gradient(circle,#5a3010 0%,transparent 68%);top:-80px;right:-110px;animation:gOrbFloat 11s ease-in-out infinite reverse}@keyframes gOrbFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-22px) scale(1.04)}}.g-hero-body{position:relative;z-index:1}.g-eyebrow-row{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.1rem}.g-rule{display:block;height:1px;width:52px;background:linear-gradient(90deg,transparent,rgba(212,152,99,.5))}.g-eyebrow-row .g-rule:last-child{background:linear-gradient(270deg,transparent,rgba(212,152,99,.5))}.g-eyebrow{font-size:.63rem;font-weight:900;text-transform:uppercase;letter-spacing:.22em;color:#d49863}.g-title{font-size:clamp(2.6rem,6vw,4.4rem);font-weight:900;text-transform:uppercase;letter-spacing:-.03em;line-height:1.08;color:#f4ece7;margin:0 0 1.25rem}.g-title-accent{font-style:normal;background:linear-gradient(118deg,#f2c96a,#d49863 52%,#b87a45);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.g-subtitle{max-width:46ch;margin:0 auto 2rem;font-size:1rem;color:#b9a49b;line-height:1.75}@media(max-width:640px){.g-subtitle-br{display:none}}.g-hero-pills{display:flex;justify-content:center}.g-hero-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.3rem .9rem;border-radius:99px;border:1px solid rgba(212,152,99,.28);background:#d4986312;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#d49863}.g-pill-dot{width:6px;height:6px;border-radius:50%;background:#d49863;box-shadow:0 0 6px #d49863;animation:pillPulse 2s ease-in-out infinite}@keyframes pillPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.72)}}.g-hero-divider{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:220px;height:1px;background:linear-gradient(90deg,transparent,rgba(212,152,99,.45),transparent)}.g-filters{padding:.8rem 0 1.3rem}.g-filter-row{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.g-filter-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.36rem .9rem;border-radius:99px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#b9a49b;font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.g-filter-btn:hover{background:#d498631a;border-color:#d498634d;color:#f4ece7}.g-filter-btn.is-active{background:#d4986324;border-color:#d498637a;color:#d49863}.g-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 .28rem;border-radius:99px;background:#ffffff14;font-size:.63rem;font-weight:900}.g-filter-btn.is-active .g-filter-count{background:#d4986333}.g-section{padding:1.5rem 0 7rem}.g-grid{columns:3 360px;column-gap:1.25rem}.g-item{break-inside:avoid;margin-bottom:1.1rem;border-radius:14px;overflow:hidden;position:relative;cursor:pointer;background:#0e0b16;border:1px solid rgba(255,255,255,.065);transition:transform .38s cubic-bezier(.16,1,.3,1),box-shadow .38s ease,border-color .38s ease}.g-item:hover{transform:translateY(-6px) scale(1.012);box-shadow:0 22px 55px #000000bf,0 0 0 1px #d4986359 inset,0 0 32px #d498630f;border-color:#d4986338}.g-item:focus-visible{outline:2px solid #d49863;outline-offset:3px}.g-img-wrap{position:relative;overflow:hidden}.g-img{display:block;width:100%;height:auto;transition:transform .5s cubic-bezier(.16,1,.3,1)}.g-item:hover .g-img{transform:scale(1.07)}.g-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:.75rem;background:linear-gradient(to bottom,rgba(4,2,10,.6) 0%,transparent 30%,transparent 50%,rgba(4,2,10,.9) 100%);opacity:0;transition:opacity .28s ease}.g-item:hover .g-overlay{opacity:1}.g-overlay-top{display:flex;justify-content:flex-end}.g-zoom-btn{display:flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:50%;background:#d4986324;border:1px solid rgba(212,152,99,.35);color:#d49863;transform:scale(.65);transition:transform .28s cubic-bezier(.16,1,.3,1)}.g-item:hover .g-zoom-btn{transform:scale(1)}.g-overlay-bottom{transform:translateY(7px);transition:transform .28s ease}.g-item:hover .g-overlay-bottom{transform:translateY(0)}.g-overlay-caption{font-size:.78rem;font-weight:700;color:#f4ece7;line-height:1.4;margin:0 0 .3rem;text-shadow:0 1px 8px rgba(0,0,0,.8)}.g-overlay-date{font-size:.6rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#d49863}.g-empty{text-align:center;padding:9rem 1rem}.g-empty-glyph{display:block;font-size:2.8rem;margin-bottom:1.5rem;color:#d4986338}.g-empty-title{font-size:1.5rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#f4ece7;margin:0 0 .75rem}.g-empty-sub{color:#b9a49b;font-size:.95rem;max-width:36ch;margin:0 auto}.lb{position:fixed;inset:0;z-index:9000;flex-direction:column}.lb-scrim{position:absolute;inset:0;background:#04020af7;backdrop-filter:blur(20px) saturate(.55)}.lb-header{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;padding:.85rem 5rem;border-bottom:1px solid rgba(255,255,255,.05);flex-shrink:0}.lb-counter{font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.16em;color:#f4ece761}.lb-close{position:absolute;right:1.25rem;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#f4ece7;cursor:pointer;transition:background .2s,border-color .2s}.lb-close:hover{background:#d2414138;border-color:#d2414173}.lb-stage{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;padding:1.5rem 5rem;min-height:0;overflow:hidden}.lb-img-wrap{display:flex;align-items:center;justify-content:center;max-width:min(88vw,980px);max-height:100%}.lb-image{max-width:100%;max-height:calc(100vh - 195px);object-fit:contain;border-radius:10px;box-shadow:0 30px 80px #000000d9,0 0 0 1px #ffffff0e;transition:opacity .22s ease}.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#f4ece7;cursor:pointer;z-index:2;transition:background .2s,border-color .2s,transform .2s}.lb-nav:hover{background:#d4986326;border-color:#d4986361;transform:translateY(-50%) scale(1.07)}.lb-prev{left:1.2rem}.lb-next{right:1.2rem}.lb-footer{position:relative;z-index:1;border-top:1px solid rgba(255,255,255,.05);padding:.6rem 1.5rem .85rem;flex-shrink:0}.lb-info-row{display:flex;align-items:baseline;gap:.7rem;justify-content:center;margin-bottom:.6rem;min-height:1.4rem}.lb-caption{font-size:.86rem;font-weight:600;color:#f4ece7}.lb-date{font-size:.61rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#d49863}.lb-thumbs{display:flex;gap:.45rem;overflow-x:auto;scrollbar-width:none;padding:.2rem .5rem;justify-content:safe center}.lb-thumbs::-webkit-scrollbar{display:none}.lb-thumb{flex-shrink:0;width:54px;height:38px;border-radius:6px;overflow:hidden;border:2px solid rgba(255,255,255,.07);opacity:.42;cursor:pointer;transition:opacity .2s,border-color .2s,transform .2s;padding:0;background:none}.lb-thumb img{width:100%;height:100%;object-fit:cover;display:block}.lb-thumb:hover{opacity:.75;transform:scale(1.07)}.lb-thumb.is-active{opacity:1;border-color:#d49863;box-shadow:0 0 10px #d4986366}@media(max-width:640px){.g-grid{columns:2 180px}.lb-stage{padding:1rem 3.5rem}.lb-nav{width:38px;height:38px}.lb-prev{left:.5rem}.lb-next{right:.5rem}.lb-thumb{width:42px;height:30px}}
