.hero__links { margin-top: 10px; font-size: 14px; }

.album-section { margin: 0 0 28px; }
.album-section h2 { font-size: 18px; color: var(--accent); margin: 0 0 10px; }
.grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.grid button {
  padding: 0; border: 1px solid var(--border); border-radius: 10px; overflow: hidden;
  background: var(--panel); cursor: pointer; aspect-ratio: 1;
}
.grid img { width: 100%; height: 100%; object-fit: cover; display: block; }

.lightbox {
  position: fixed; inset: 0; z-index: 100; background: rgba(10, 8, 20, 0.96);
  display: grid; grid-template-rows: 1fr auto; place-items: center; padding: 12px;
}
.lightbox[hidden] { display: none; }
.lightbox img { max-width: 100%; max-height: calc(100vh - 80px); object-fit: contain; border-radius: 8px; }
.lb-cap { color: var(--muted); margin: 8px 0 0; font-size: 14px; text-align: center; }
.lb-close, .lb-prev, .lb-next {
  position: fixed; background: rgba(255,255,255,0.1); color: var(--text); border: none;
  font-size: 32px; line-height: 1; width: 48px; height: 48px; border-radius: 50%; cursor: pointer;
}
.lb-close { top: 14px; right: 14px; }
.lb-prev { left: 8px; top: 50%; transform: translateY(-50%); }
.lb-next { right: 8px; top: 50%; transform: translateY(-50%); }

.videos { display: grid; gap: 16px; }
.video { background: var(--panel); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px; }
.video h3 { margin: 0 0 4px; font-size: 16px; }
.video p { margin: 0 0 10px; color: var(--muted); font-size: 14px; }
.video .frame { position: relative; aspect-ratio: 16 / 9; background: var(--panel-2); border-radius: 10px; overflow: hidden; }
.video .frame.is-portrait { aspect-ratio: 9 / 16; max-width: 360px; }
.video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.video .pending { position: absolute; inset: 0; display: grid; place-items: center; color: var(--muted); font-size: 14px; }
