.modal,.lightbox{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:clamp(.8rem,2vw,1.5rem);background:rgba(0,0,0,.72);backdrop-filter:blur(18px)}.modal[hidden],.lightbox[hidden]{display:none}.modal-panel{width:min(980px,96vw);max-height:min(88vh,900px);display:flex;flex-direction:column;border:1px solid rgba(242,234,223,.24);border-radius:28px;background:linear-gradient(180deg,rgba(18,15,12,.98),rgba(7,6,5,.98));box-shadow:0 45px 110px rgba(0,0,0,.74);overflow:hidden}.modal-panel.wide{width:min(1220px,96vw)}.modal-panel.full{width:min(1540px,97vw);max-height:92vh}.modal-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:1.1rem clamp(1rem,2vw,1.6rem);border-bottom:1px solid var(--line);background:rgba(5,4,3,.64)}.modal-header h2{font-size:clamp(2.1rem,4vw,4.5rem)}.modal-close,.lightbox-close,.lightbox-prev,.lightbox-next{border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--ivory);border-radius:50%;display:grid;place-items:center}.modal-close{width:44px;height:44px;font-size:1.5rem;flex:0 0 auto}.modal-body{padding:clamp(1rem,2vw,1.6rem);overflow:auto;scrollbar-color:var(--bronze) rgba(255,255,255,.06);scrollbar-width:thin}.modal-body::-webkit-scrollbar{width:10px;height:10px}.modal-body::-webkit-scrollbar-track{background:rgba(255,255,255,.055);border-radius:999px}.modal-body::-webkit-scrollbar-thumb{background:linear-gradient(var(--bronze),var(--bronze-2));border-radius:999px;border:2px solid #100c09}.tab-panel[hidden]{display:none}.lightbox-panel{position:relative;width:min(1200px,96vw);height:min(86vh,820px);display:grid;place-items:center}.lightbox-panel figure{max-width:100%;max-height:100%;display:grid;gap:.75rem;place-items:center}.lightbox-panel img{max-width:100%;max-height:78vh;border-radius:18px;border:1px solid var(--line);box-shadow:var(--shadow);object-fit:contain}.lightbox-panel figcaption{color:var(--ivory);text-align:center;background:rgba(5,4,3,.75);border:1px solid var(--line);border-radius:999px;padding:.5rem .8rem}.lightbox-close{position:absolute;right:0;top:0;width:46px;height:46px;font-size:1.6rem}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:2rem}.lightbox-prev{left:0}.lightbox-next{right:0}.modal-enter{animation:modalEnter .28s var(--ease)}@keyframes modalEnter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}.tour-frame{aspect-ratio:16/9;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#070605}.tour-frame iframe{width:100%;height:100%;border:0}
