/* ===== Galeri ===== */
.gal-main{padding-bottom:0}
.gal-hero{background:radial-gradient(1200px 500px at 50% -10%,rgba(212,168,83,.22),transparent 60%),linear-gradient(180deg,var(--navy) 0%,var(--navy2) 100%);color:#fff;padding:56px 0 34px;text-align:center}
.crumbs{display:flex;gap:10px;justify-content:center;font-size:13px;color:rgba(255,255,255,.6);margin-bottom:14px}.crumbs a{color:rgba(255,255,255,.75)}.crumbs b{color:var(--gold2);font-weight:600}
.gal-hero h1{font-size:clamp(34px,5vw,58px);line-height:1.05;margin:0 0 12px}
.gal-hero h1::after{content:"";display:block;width:64px;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold2));margin:16px auto 0;border-radius:2px}
.gal-hero p{max-width:640px;margin:0 auto 26px;color:rgba(255,255,255,.75);font-size:16px;line-height:1.6}
.gal-filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.gf{appearance:none;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;padding:9px 16px;border-radius:999px;font:600 13.5px/1 var(--font);cursor:pointer;transition:.25s;display:inline-flex;gap:8px;align-items:center;backdrop-filter:blur(6px)}
.gf span{font-size:11px;background:rgba(255,255,255,.12);padding:3px 7px;border-radius:999px;color:rgba(255,255,255,.8)}
.gf:hover{border-color:var(--gold);color:var(--gold2)}
.gf.on{background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);border-color:transparent;box-shadow:0 8px 24px -8px rgba(212,168,83,.8)}.gf.on span{background:rgba(11,18,32,.15);color:var(--navy)}
/* masonry via grid rows */
.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;grid-auto-flow:dense;gap:14px;padding:34px 0 10px}
.gi{position:relative;display:block;overflow:hidden;border-radius:16px;background:#e5e7eb;grid-row:span 2;box-shadow:0 10px 30px -18px rgba(11,18,32,.5);transform:translateY(0);transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s,opacity .35s}
.gi.land{grid-column:span 2;grid-row:span 1}
.gi:nth-child(1){grid-column:span 2;grid-row:span 2}
.gi img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.01);transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s}
.gi:hover{transform:translateY(-4px);box-shadow:0 24px 50px -20px rgba(11,18,32,.6)}.gi:hover img{transform:scale(1.07)}
.gi::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(11,18,32,.85));opacity:.7;transition:opacity .4s}.gi:hover::after{opacity:1}
.gcap{position:absolute;left:16px;right:16px;bottom:14px;z-index:2;color:#fff;font-size:13.5px;line-height:1.35;font-weight:600;text-shadow:0 2px 8px rgba(0,0,0,.5);transform:translateY(6px);opacity:.92;transition:.4s}.gi:hover .gcap{transform:none;opacity:1}
.gcap em{display:block;font-style:normal;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold2);margin-bottom:4px}
.gi.hide{display:none}
.gi.in{animation:gin .5s cubic-bezier(.2,.7,.2,1) both}@keyframes gin{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.gal-cta{margin-top:50px;background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;text-align:center;padding:60px 0}
.gal-cta h2{font-size:clamp(24px,3.4vw,36px);margin:0 0 22px}.gal-cta .btn{margin:6px}.btn-lg{padding:15px 30px;font-size:16px}
.gal-cta .btn-ghost{border-color:rgba(255,255,255,.35);color:#fff}
.gal-body footer{margin-top:0}
/* lightbox */
.lb{position:fixed;inset:0;z-index:9000;background:rgba(5,9,18,.94);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;animation:lbin .3s}
@keyframes lbin{from{opacity:0}to{opacity:1}}
.lb figure{margin:0;max-width:min(1400px,94vw);max-height:92vh;display:flex;flex-direction:column;align-items:center;gap:14px}
.lb img{max-width:94vw;max-height:80vh;border-radius:12px;box-shadow:0 40px 100px -20px rgba(0,0,0,.8);object-fit:contain;animation:lbimg .35s cubic-bezier(.2,.7,.2,1)}
@keyframes lbimg{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
.lb figcaption{color:#fff;font-size:14.5px;text-align:center;display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap}
.lb figcaption #lbN{font-size:12px;color:var(--gold2);letter-spacing:.14em;font-weight:700}
.lb-x,.lb-btn{position:absolute;appearance:none;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;width:48px;height:48px;border-radius:50%;font-size:26px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:.25s}
.lb-x{top:18px;right:18px;font-size:18px}.lb-btn{top:50%;transform:translateY(-50%)}.lb-prev{left:18px}.lb-next{right:18px}
.lb-x:hover,.lb-btn:hover{background:var(--gold);color:var(--navy);border-color:var(--gold)}
@media(max-width:1100px){.gal-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:200px}}
@media(max-width:760px){.gal-hero{padding:38px 0 24px}.gal-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px;gap:10px;padding-top:22px}.gi:nth-child(1){grid-column:span 2;grid-row:span 2}.gi.land{grid-column:span 2;grid-row:span 1}.gcap{font-size:12px;left:10px;right:10px;bottom:10px}.gcap em{display:none}.gf{padding:8px 12px;font-size:12.5px}.lb-btn{width:40px;height:40px;top:auto;bottom:16px;transform:none}.lb-prev{left:calc(50% - 52px)}.lb-next{right:calc(50% - 52px)}.lb img{max-height:70vh}}
.gal-body footer{padding:70px 0 0}
