.detail-page .site-header { padding-left: max(13vw, calc((100vw - 1220px) / 2)); padding-right: max(13vw, calc((100vw - 1220px) / 2)); }
.case-page { padding-top: clamp(42px, 6vw, 96px); }
.case-hero,
.case-lead-image,
.case-intro,
.case-gallery,
.back-to-top-row { width: min(74vw, 1220px); margin-inline: auto; }
.case-hero { aspect-ratio: 1816 / 1000; background: #eef2f5; overflow: hidden; }
.case-hero video { display: block; width: 100%; height: 100%; object-fit: cover; }
.case-hero__mobile-motion { display: none; width: 100%; height: 100%; object-fit: cover; }
.case-hero--image { aspect-ratio: auto; }
.case-hero--image img { width: 100%; height: auto; }
.case-lead-image { margin-top: 0; margin-bottom: clamp(25px, 3vw, 48px); background: #eef2f5; }
.case-lead-image img { width: 100%; height: auto; }
.case-intro { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(50px, 8vw, 140px); padding: clamp(45px, 5.5vw, 88px) 0 clamp(90px, 10vw, 165px); }
.case-intro h1 { margin: 0; font-size: clamp(1.5rem, 2.25vw, 2.7rem); line-height: 1.25; font-weight: 400; letter-spacing: -.035em; }
.case-intro p { margin: 0; color: #555; font-size: clamp(.78rem, .9vw, 1rem); line-height: 2; text-align: justify; }
.case-copy { display: flex; flex-direction: column; gap: 1em; }
.case-gallery { display: flex; flex-direction: column; gap: clamp(25px, 3vw, 48px); }
.case-gallery figure { margin: 0; overflow: hidden; background: #f3f5f7; }
.case-gallery img { width: 100%; height: auto; }
.case-image--trim-top img { transform: translateY(-2px); margin-bottom: -2px; }
.case-gallery-pair { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; align-items: start; }
.case-gallery-pair--nanshan { grid-template-columns: 3277fr 2694fr; }
.case-gallery-pair--xiangjiang figure { aspect-ratio: 2400 / 1342; }
.case-gallery-pair--xiangjiang img { height: 100%; object-fit: cover; }
.case-gallery-pair--xiangjiang figure:first-child img { object-position: center bottom; }
.back-to-top-row { padding: clamp(85px, 10vw, 160px) 0 24px; }
.back-to-top-row a { display: inline-block; font-size: 12px; transition: opacity .2s ease; }
.back-to-top-row a:hover { opacity: .5; }
.detail-page .contact { min-height: 100svh; display: flex; }
.detail-page .contact .content-shell { width: min(74vw, 1220px); min-height: calc(100svh - 94px); display: flex; flex-direction: column; }
.detail-page .footer-logo { padding-block: 24px 44px; }

.news-case-page,
.news-video-page { width: 72vw; margin-inline: auto; padding-top: 28px; border-top: 1px solid #a9a9a9; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(48px, 5vw, 96px); align-items: start; }
.news-case-intro { display: contents; font-family: "Glow Sans", "PingFang SC", sans-serif; }
.news-case-intro h1 { grid-column: 1; grid-row: 1; margin: 0; padding-right: 32px; white-space: nowrap; font-size: clamp(1.35rem, 1.55vw, 2rem); line-height: 1.35; font-weight: 400; letter-spacing: -.025em; }
.news-case-intro p { position: sticky; top: 82px; grid-column: 2; grid-row: 1 / span 2; align-self: start; margin: 0; color: #222; font-size: clamp(.82rem, .92vw, 1.05rem); line-height: 1.9; font-weight: 400; text-align: justify; }
.news-case-gallery { grid-column: 1; grid-row: 2; width: 100%; margin: clamp(140px, 10vw, 210px) 0 0; display: flex; flex-direction: column; gap: clamp(28px, 3vw, 56px); }
.news-case-gallery figure { margin: 0; overflow: hidden; background: #f3f5f7; }
.news-case-gallery img { width: 100%; height: auto; }
.news-case-page .back-to-top-row,
.news-video-page .back-to-top-row { grid-column: 1 / -1; grid-row: 3; width: 100%; margin-inline: 0; }
.news-video-player { grid-column: 1; grid-row: 2; width: 100%; margin: clamp(140px, 10vw, 210px) 0 0; overflow: hidden; }
.news-video-player video { display: block; width: 100%; height: auto; border: 0; }

@media (max-width: 780px) {
  .detail-page .site-header { padding-inline: var(--header-inline); }
  .case-page { padding-top: 18px; }
  .case-hero,
  .case-lead-image,
  .case-intro,
  .case-gallery,
  .back-to-top-row { width: calc(100vw - 36px); }
  .case-intro { grid-template-columns: 1fr; gap: 28px; padding: 42px 0 90px; }
  .case-intro h1 { font-size: 1.7rem; }
  .case-intro p { font-size: .82rem; line-height: 1.9; }
  .case-gallery { gap: 14px; }
  .case-gallery-pair { gap: 5px; }
  .case-hero:has(.case-hero__mobile-motion) video { display: none; }
  .case-hero__mobile-motion { display: block; }
  .back-to-top-row { padding: 76px 0 20px; }
  .detail-page .contact .content-shell { width: calc(100vw - 36px); }
  .detail-page .footer-logo { padding-block: 28px 36px; }
  .news-case-page,
  .news-video-page { width: calc(100vw - 36px); padding-top: 26px; grid-template-columns: 1fr; column-gap: 0; }
  .news-case-intro h1 { grid-column: 1; grid-row: auto; font-size: 1.7rem; }
  .news-case-intro p { position: static; grid-column: 1; grid-row: auto; margin-top: 28px; font-size: .82rem; line-height: 1.9; }
  .news-case-gallery,
  .news-video-player { grid-column: 1; grid-row: auto; width: 100%; margin-top: 72px; }
  .news-case-gallery { gap: 14px; }
  .news-case-page .back-to-top-row,
  .news-video-page .back-to-top-row { grid-column: 1; grid-row: auto; width: 100%; }
}
