/* Full-bleed contact film, with compact color-coded details above the picture. */
.section-shell.contact-panel {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: clamp(640px,43vw,800px);
  grid-template-columns: minmax(0,1fr) minmax(350px,480px);
  align-items: center;
  gap: clamp(35px,6vw,140px);
  margin: 0;
  padding-top: 110px;
  padding-bottom: 110px;
  background: #091020;
}
.contact-video { position: absolute; z-index: -2; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 50%; }
.contact-video-shade { position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg,#080b16d9 0%,#080b1655 20%,#080b1650 65%,#080b16ed 100%),linear-gradient(90deg,#080b16d6 0%,#080b1688 29%,#080b164a 53%,#080b16ad 100%); pointer-events: none; }
.contact-intro,.contact-actions { position: relative; z-index: 1; }
.contact-intro { align-self: center; max-width: 650px; }
.contact-panel p { color: #e3e8f8; text-shadow: 0 2px 16px #050714c9; }
.contact-actions { justify-self: end; justify-items: stretch; width: min(100%,440px); gap: 13px; }
.contact-link,.wechat-card { width: 100%; min-height: 68px; padding: 12px 18px; border: 1px solid #ffffff38; border-radius: 12px; color: #fff; box-shadow: 0 14px 34px #0206166e, inset 0 1px #ffffff32; text-align: left; backdrop-filter: blur(12px); transition: transform .3s cubic-bezier(.22,1,.36,1),filter .3s,border-color .3s; }
.contact-link:nth-child(1) { background: linear-gradient(125deg,#143caee8,#345febbb); }
.contact-link:nth-child(2) { background: linear-gradient(125deg,#6627a8e8,#ae50d9c4); }
.contact-link:nth-child(3) { background: linear-gradient(125deg,#046c80e8,#22a7aabf); }
.wechat-card { background: linear-gradient(125deg,#a44264e8,#e58865c4); }
.contact-link:hover,.wechat-card:hover,.wechat-card:focus-visible { transform: translateX(-7px); filter: brightness(1.16); border-color: #fff9; }
.contact-link small,.wechat-card > span { color: #f3f6ffdf; font-size: 10px; font-weight: 700; }
.contact-link strong,.wechat-card strong { color: #fff; font-size: clamp(14px,1vw,17px); font-weight: 680; letter-spacing: .01em; }
.wechat-card:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
@media(max-width:920px) {
  .section-shell.contact-panel { min-height: 910px; grid-template-columns: 1fr; align-content: end; gap: 42px; padding-top: 90px; padding-bottom: 100px; }
  .contact-intro { align-self: end; }
  .contact-actions { justify-self: start; }
  .contact-video-shade { background: linear-gradient(180deg,#080b16aa 0%,#080b165a 23%,#080b16a8 55%,#080b16f5 100%); }
}
@media(max-width:640px) {
  .section-shell.contact-panel { min-height: 840px; gap: 29px; padding: 84px 20px 86px; }
  .contact-video { object-position: center center; }
  .contact-actions { width: 100%; }
  .contact-link,.wechat-card { min-height: 64px; padding: 10px 15px; }
  .contact-link strong,.wechat-card strong { font-size: 14px; }
}
@media(prefers-reduced-motion:reduce) { .contact-link,.wechat-card { transition: none; } }
