/* 09-gallery.css - gallery, lightbox and FAQ accordion */
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.gallery-item{aspect-ratio:4/3;border-radius:8px;cursor:pointer;display:flex;align-items:flex-end;padding:10px;color:#fff;font-weight:700;border:0;font:inherit;text-align:left;background:linear-gradient(135deg,var(--red),#3a0710);transition:transform .2s}
.gallery-item:nth-child(3n+2){background:linear-gradient(135deg,#2c2c30,var(--red-dark))}
.gallery-item:nth-child(3n){background:linear-gradient(135deg,var(--gold),var(--red))}
.gallery-item:hover{transform:scale(1.03)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.85);display:none;align-items:center;justify-content:center;z-index:100;padding:16px}
.lightbox.open{display:flex}
.lightbox-inner{width:min(800px,100%);aspect-ratio:16/10;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.6rem;font-weight:800;text-align:center;padding:16px;background:linear-gradient(135deg,var(--red),#3a0710)}
.lightbox button{position:absolute;background:none;border:0;color:#fff;font-size:2.2rem;cursor:pointer}
.lb-close{top:16px;right:20px}.lb-prev{left:8px}.lb-next{right:8px}
.faq-item{border:1px solid var(--line);border-radius:8px;margin-bottom:10px;background:#fff}
.faq-q{width:100%;text-align:left;background:none;border:0;padding:16px 18px;font:inherit;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;gap:12px}
.faq-q::after{content:"+";color:var(--red);font-size:1.3rem}
.faq-item.open .faq-q::after{content:"\2212"}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s;padding:0 18px}
.faq-item.open .faq-a{max-height:300px;padding-bottom:16px}
