/* Gallery reuses the approved album and kinetic grid, without the old Vision video. */
.gallery-page .web-round { min-height: 1280px; }
.gallery-page .web-round-heading { top: 116px; right: 152px; max-width: none; gap: 12px; }
.gallery-page .web-round-heading h1 { display: block; font-size: clamp(3.7rem, 6.8vw, 6rem); line-height: 1.04; letter-spacing: -.035em; }
.gallery-page .web-round-heading h1::after { display: none; }
.gallery-page .web-round-heading p { max-width: 36rem; }
.gallery-page .web-round-controls { top: 122px; }
/* The tilted rear arc extends above the untransformed card box. Keep the
   album's vertical projection visible; the outer stage still clips its sides. */
.gallery-page .web-round-viewport { inset: 280px 0 208px; overflow: visible; }
.gallery-page .web-round-tilt { transform: rotateX(-11deg); }
.gallery-page .web-round-story { left: var(--round-pad); bottom: 94px; grid-template-columns: minmax(160px, .6fr) minmax(0, 1.4fr); gap: 40px; }
.gallery-page .web-round-title h2 { line-height: 1.02; letter-spacing: -.035em; }
.gallery-page .web-round-summary a { min-height: 56px; font-size: .88rem; }
.gallery-page .web-round-position { bottom: 28px; }
.gallery-page .gallery-index { width: 100%; margin: 0; padding: 56px clamp(20px, 2.8vw, 44px); color: #172d32; background: #d8e6e6; }
.gallery-page .gallery-index > p { max-width: 75ch; }
.gallery-page .gallery-index details { margin-top: 32px; border-top: 1px solid #849b9f; }
.gallery-page .gallery-index h2 { max-width: 32ch; }
.gallery-page .footer-business-note { color: #bfdbd8; }
.gallery-page .web-round-summary a:focus-visible, .gallery-page .web-round-controls button:focus-visible { outline: 3px solid #f1efe8; outline-offset: 5px; }
html[lang^="zh"] .gallery-page .web-round-heading h1 { font-size: clamp(2.8rem, 4.8vw, 4.2rem); line-height: 1.22; }
@media (max-width: 980px) {
  .gallery-page .web-round-story { gap: 24px; }
  .gallery-page .web-round-summary { gap: 20px; }
}
@media (max-width: 680px) {
  .gallery-page .web-round { height: auto; min-height: 1120px; padding-bottom: 100px; }
  .gallery-page .web-round-heading { top: 106px; right: 120px; gap: 12px; }
  .gallery-page .web-round-heading h1 { font-size: clamp(2.8rem, 11vw, 3.8rem); }
  html[lang^="zh"] .gallery-page .web-round-heading h1 { font-size: clamp(2rem, 8.7vw, 2.8rem); }
  .gallery-page .web-round-heading p { width: calc(100vw - 40px); max-width: 30ch; font-size: .92rem; }
  .gallery-page .web-round-controls { top: 112px; }
  .gallery-page .web-round-viewport { inset: 248px 0 auto; height: 560px; }
  .gallery-page .web-round-story { position: relative; inset: auto; display: block; margin: 840px 20px 0; }
  .gallery-page .web-round-title h2 { font-size: clamp(2rem, 9vw, 3rem); }
  .gallery-page .web-round-summary { grid-template-columns: 1fr; gap: 16px; margin-top: 18px; }
  .gallery-page .web-round-summary p { display: block; font-size: .9rem; -webkit-line-clamp: unset; }
  .gallery-page .web-round-summary a { width: fit-content; min-height: 50px; padding: 0 20px; font-size: .84rem; }
  .gallery-page .gallery-index { padding-top: 40px; padding-bottom: 40px; }
}
