#work .thumb a[aria-haspopup="dialog"] { cursor: zoom-in; }
#work .is-collapsed .thumb:nth-child(n+9) { display: none; }
#work .thumb img { object-fit: contain; }
.ad-gallery__more { text-align: center; margin-top: 28px; }
#ad-see-more { cursor: pointer; font: inherit; min-width: 160px; }
#ad-see-more[hidden] { display: none; }
#ad-see-more:focus-visible { outline: 2px solid #c7a4ff; outline-offset: 4px; }
@media (max-width: 960px) { #work .is-collapsed .thumb:nth-child(n+5) { display: none; } }
#work .thumb a:focus-visible { outline: 3px solid #b88aff; outline-offset: -4px; }
.ad-gallery {
  width: min(1000px, calc(100vw - 32px)); max-width: none;
  max-height: calc(100dvh - 32px); padding: 0;
  color: #fff; background: #121016; border: 1px solid #ffffff24;
  border-radius: 22px; box-shadow: 0 28px 100px #0009;
  font-family: system-ui, sans-serif;
}
.ad-gallery::backdrop { background: #08060de0; backdrop-filter: blur(12px); }
.ad-gallery[open] { animation: ad-gallery-in 180ms ease-out; }
.ad-gallery__header, .ad-gallery__footer {
  display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px;
}
.ad-gallery__title { margin: 0; font-size: 16px; font-weight: 600; }
.ad-gallery__eyebrow { margin: 0 0 4px; color: #c7a4ff; font-size: 10px; letter-spacing: .16em; }
.ad-gallery button {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 44px; min-height: 44px; padding: 8px 14px;
  border: 1px solid #ffffff26; border-radius: 12px; background: #ffffff09;
  color: #fff; font: inherit; cursor: pointer; transition: background 150ms;
}
.ad-gallery button:hover { background: #9b5cff30; }
.ad-gallery button:focus-visible { outline: 2px solid #c7a4ff; outline-offset: 3px; }
.ad-gallery__close { font-size: 26px !important; }
.ad-gallery__stage { display: grid; place-items: center; background: #09080b; padding: 12px; }
.ad-gallery__image { display: block; max-width: 100%; height: min(65dvh, 780px); object-fit: contain; }
.ad-gallery__status { margin: 0; color: #c8c2d1; font-size: 13px; text-align: center; }
@keyframes ad-gallery-in { from { opacity: 0; transform: translateY(8px) scale(.985); } to { opacity: 1; transform: none; } }
@media (max-width: 600px) {
  .ad-gallery { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); border-radius: 16px; }
  .ad-gallery__header, .ad-gallery__footer { padding: 12px; gap: 8px; }
  .ad-gallery__image { height: 58dvh; }
  .ad-gallery__stage { padding: 6px; }
}
@media (prefers-reduced-motion: reduce) { .ad-gallery[open] { animation: none; } .ad-gallery button { transition: none; } }
