/* Bildansicht für die Referenzen: Vergrößerung auf volle Größe mit Pfeilen links/rechts (Hopf-Wunsch 04.11.2026) */
.grid button.frame{display:block;position:relative;width:100%;margin:0;padding:0;border:0;font:inherit;color:inherit;text-align:inherit;cursor:zoom-in;appearance:none;-webkit-appearance:none}
.grid button.frame::after{content:"";position:absolute;right:12px;bottom:12px;width:40px;height:40px;border-radius:50%;background:rgba(0,22,32,.72) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f4f4f4' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='5.5'/%3E%3Cpath d='M15 15l5 5M10.5 8v5M8 10.5h5'/%3E%3C/svg%3E") center/22px no-repeat;opacity:0;transform:scale(.9);transition:opacity .25s,transform .35s var(--ease);pointer-events:none}
.grid figure:hover button.frame::after,.grid button.frame:focus-visible::after{opacity:1;transform:none}
@media (hover:none){.grid button.frame::after{opacity:.9;transform:none;width:36px;height:36px;right:10px;bottom:10px}}
.ref-more{margin-top:40px}
.ref-more[hidden]{display:none}

.lb{border:0;padding:0;margin:0;max-width:none;max-height:none;width:100vw;height:100vh;height:100dvh;background:#00141e;color:var(--ink);overflow:hidden}
.lb::backdrop{background:#00141e}
.lb[open]{display:block;animation:lbin .28s var(--ease)}
@keyframes lbin{from{opacity:0}to{opacity:1}}
.lb-box{position:absolute;left:clamp(60px,8vw,128px);right:clamp(60px,8vw,128px);top:64px;bottom:96px;display:grid;place-items:center;touch-action:pan-y}
.lb-img{display:block;max-width:none;background:var(--surface);user-select:none;-webkit-user-drag:none}
.lb-top{position:absolute;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 var(--pad)}
.lb-count{font:300 14px/1 var(--mono);letter-spacing:.04em;color:var(--ink-2)}
.lb-btn{z-index:2;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:rgba(0,40,58,.78);color:var(--ink);cursor:pointer;transition:background-color .2s,border-color .2s,transform .2s var(--ease)}
.lb-btn:hover{background:var(--surface-2);border-color:rgba(244,244,244,.4)}
.lb-btn:active{transform:scale(.94)}
.lb-btn svg{width:22px;height:22px}
.lb-prev,.lb-next{position:absolute;top:50%;margin-top:-24px}
.lb-prev{left:clamp(8px,2vw,32px)}
.lb-next{right:clamp(8px,2vw,32px)}
.lb-cap{pointer-events:none;position:absolute;left:0;right:0;bottom:0;height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0 var(--pad);text-align:center}
.lb-cap b{font-weight:500;font-size:18px;letter-spacing:-.01em}
.lb-cap span{font:300 13.5px/1.3 var(--mono);color:var(--ink-3)}
html.lb-open{overflow:hidden}
@media (max-width:700px){
  .lb-box{left:0;right:0;top:56px;bottom:calc(112px + env(safe-area-inset-bottom))}
  .lb-top{height:56px}
  .lb-prev,.lb-next{top:auto;bottom:calc(30px + env(safe-area-inset-bottom));margin:0;width:52px;height:52px}
  .lb-prev{left:var(--pad)}.lb-next{right:var(--pad)}
  .lb-cap{height:calc(112px + env(safe-area-inset-bottom));padding:0 calc(var(--pad) + 68px) env(safe-area-inset-bottom);justify-content:center;bottom:0}
  .lb-cap b{font-size:16px}
}
@media (prefers-reduced-motion:reduce){.lb[open]{animation:none}.lb-btn,.grid button.frame::after{transition:none}}
