/* Compact two-column closing panel; scoped to the simplified contact section. */
.contact-panel.contact-panel--simple { padding:0; margin:0; background:#f0f6f9; }
.contact-panel--simple .contact-panel__inner {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
  grid-template-areas:"copy visual";
  grid-template-rows:1fr; min-height:clamp(620px,45vw,820px);
  padding:0; background:#f0f6f9; border-radius:0;
}
.contact-panel--simple .contact-panel__inner::after { content:none; }
.contact-panel--simple .contact-panel__visual {
  position:absolute; grid-area:auto; inset:0 0 0 38%; height:auto; min-width:0;
  background-position:center; background-size:cover;
}
@media(min-width:981px) {
  .contact-panel--simple .contact-panel__inner::after {
    content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
    background:linear-gradient(90deg,#f0f6f9 0 38%,rgba(240,246,249,.9) 42%,rgba(240,246,249,.18) 49%,transparent 54%);
  }
}
.contact-panel--simple .contact-panel__copy {
  position:relative; grid-area:copy; top:auto; left:auto; right:auto;
  width:auto; min-width:0; margin:0;
  padding:clamp(36px,4vw,72px) clamp(24px,4vw,72px) 36px;
  display:flex; flex-direction:column; justify-content:center;
}
.contact-panel--simple .contact-panel__copy::before { content:none; }
.contact-panel--simple h2 { margin:0; display:grid; justify-items:start; row-gap:18px; }
.contact-panel--simple h2 .c-quiet {
  margin:0; color:#465a66;
  font:500 clamp(14px,1vw,18px)/1.6 'Microsoft YaHei UI',Arial,sans-serif;
  letter-spacing:.16em;
}
.contact-panel--simple h2 .c-logo {
  width:min(86%,360px); height:auto; aspect-ratio:auto; margin:0;
}
.contact-panel--simple h2 .c-logo img {
  width:100%; height:auto; object-fit:contain; display:block;
}
.contact-panel--simple h2 .c-together {
  margin:0; padding-top:14px; width:100%;
  border-top:1px solid rgba(7,29,51,.16);
  font:400 clamp(32px,2.8vw,50px)/1.3 'Songti SC','SimSun',serif;
  letter-spacing:.04em; white-space:normal; text-wrap:balance;
}
html[lang="en"] .contact-panel--simple h2 .c-quiet {
  font:500 clamp(14px,1vw,18px)/1.6 Arial,sans-serif;
  text-transform:uppercase; letter-spacing:.14em;
}
html[lang="en"] .contact-panel--simple h2 .c-logo { width:min(86%,360px); }
html[lang="en"] .contact-panel--simple h2 .c-together {
  margin:0; font:400 clamp(34px,3.1vw,56px)/1.12 Georgia,'Times New Roman',serif;
  letter-spacing:-.035em; white-space:normal;
}
.contact-panel--simple .contact-panel__links {
  position:relative; top:auto; bottom:auto; left:auto; right:auto;
  display:block; width:100%; margin:clamp(32px,3vw,52px) 0 0;
}
html[lang="en"] .contact-panel--simple .contact-panel__links { width:100%; }
.contact-panel--simple .contact-panel__links .contact-panel__primary {
  display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; align-content:center;
  container-type:inline-size;
  gap:10px 16px; min-height:148px; padding:30px 32px; color:#fff;
  border:1px solid #26323a; border-radius:24px; background:#11181e;
  box-shadow:none; backdrop-filter:none; transform:none;
  transition:border-color .3s ease;
}
.contact-panel--simple .contact-panel__links .contact-panel__primary:hover {
  transform:none; box-shadow:none; border-color:rgba(237,0,28,.5);
}
.contact-panel--simple .contact-action__title,
html[lang="en"] .contact-panel--simple .contact-action__title {
  padding:0; font-family:'Microsoft YaHei UI','PingFang SC','Microsoft YaHei',sans-serif;
  font-size:clamp(30px,3.4vw,64px); font-size:clamp(30px,13cqi,64px); font-weight:600;
  line-height:1.1; letter-spacing:.025em; text-align:left;
  white-space:nowrap; overflow-wrap:normal; word-break:normal;
}
html[lang="en"] .contact-panel--simple .contact-action__title {
  font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;
  font-weight:600; letter-spacing:.015em;
}
.contact-panel--simple .contact-action__arrow {
  position:static; flex:none; align-self:center; font-size:32px; line-height:1;
}
.contact-panel--simple .contact-action__email {
  display:block; grid-column:1 / -1; min-width:0; margin:0;
  color:#bfc7cd; font:400 clamp(14px,3.8cqi,18px)/1.45 Arial,sans-serif;
  letter-spacing:.01em; text-align:left; text-transform:none; overflow-wrap:anywhere;
}
.contact-panel--simple .card-spotlight:focus-visible { outline-color:#ed001c; }
.contact-panel--simple .footer {
  position:relative; grid-area:footer; left:auto; bottom:auto;
  margin:0; padding:0 clamp(24px,4vw,72px) 28px;
}
@media(max-width:980px) {
  .contact-panel--simple .contact-panel__inner {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:"copy" "visual"; grid-template-rows:auto auto;
    min-height:0; padding:0;
  }
  html[lang="en"] .contact-panel--simple .contact-panel__copy,
  .contact-panel--simple .contact-panel__copy { width:auto; padding:36px 24px; }
  .contact-panel--simple h2 .c-logo,
  html[lang="en"] .contact-panel--simple h2 .c-logo { width:min(86%,320px); }
  .contact-panel--simple .contact-panel__visual {
    position:relative; grid-area:visual; inset:auto; height:clamp(260px,65vw,480px);
    mask-image:linear-gradient(180deg,transparent,#000 16%,#000 88%,transparent);
  }
  .contact-panel--simple .contact-panel__links .contact-panel__primary { min-height:120px; padding:24px; }
  .contact-panel--simple .footer { padding:24px; }
}
@media(prefers-reduced-motion:reduce) {
  .contact-panel--simple .contact-panel__links .contact-panel__primary { transition:none; }
}
/* Shared contact + original Instagram QR layout. */
.contact-panel--social .contact-panel__copy { padding:44px clamp(24px,3.5vw,64px); }
.contact-panel--social h2 .c-logo,
html[lang="en"] .contact-panel--social h2 .c-logo { width:min(70%,280px); }
.contact-panel--social .contact-panel__links { margin:30px 0 0; }
.contact-panel--social .contact-panel__links .contact-panel__primary { min-height:100px; padding:20px 24px; border-radius:14px; gap:8px 14px; }
.contact-panel.contact-panel--social .contact-panel__links .contact-action__title { font-size:28px; line-height:1.2; font-weight:500; white-space:normal; }
.contact-panel--social .contact-action__arrow { font-size:25px; }
.contact-panel--social .contact-action__email { font-size:14px; }
.contact-social { display:grid; grid-template-columns:200px minmax(0,1fr); gap:22px; align-items:center; margin-top:24px; }
.contact-social__qr { display:block; background:#fff; border:1px solid rgba(7,29,51,.1); border-radius:8px; overflow:hidden; }
.contact-social__qr img { display:block; width:100%; height:auto; }
.contact-social__copy { min-width:0; color:#0a2739; font-family:Arial,'Microsoft YaHei',sans-serif; }
.contact-social__copy strong { font-size:14px; letter-spacing:.12em; }
.contact-panel--social .contact-social__copy p { margin:12px 0 8px; font-size:16px; line-height:1.6; color:#314e5d; }
.contact-social__copy span { display:block; font-size:13px; overflow-wrap:anywhere; line-height:1.6; }
.contact-social__copy small { display:block; margin-top:16px; color:#627580; font-size:12px; line-height:1.6; }
.contact-social__qr:focus-visible { outline:2px solid #087fc6; outline-offset:4px; }
@media(min-width:981px) and (max-width:1200px) {
  .contact-social { grid-template-columns:180px minmax(0,1fr); gap:14px; }
}
@media(max-width:600px) {
  .contact-social { grid-template-columns:180px minmax(0,1fr); gap:16px; }
  .contact-panel.contact-panel--social .contact-panel__links .contact-action__title { font-size:26px; }
}
@media(max-width:380px) {
  .contact-social { grid-template-columns:1fr; }
  .contact-social__qr { width:200px; }
}
/* Partner artwork keeps the original full-height photo and soft edge treatment. */
.contact-panel.contact-panel--social .contact-panel__visual {
  background-image:url('../images/mega-partner-display-centered-20260921.webp');
  background-position:center; background-size:cover; background-repeat:no-repeat;
}
@media(max-width:980px) {
  .contact-panel.contact-panel--social .contact-panel__visual {
    height:auto; aspect-ratio:1448 / 1086;
    mask-image:linear-gradient(180deg,transparent,#000 5%,#000 94%,transparent);
  }
}
/* Approved F: two equal white squares, with the wordmark spanning both. */
@media(max-width:980px) {
  body .contact-panel.contact-panel--social .contact-panel__copy { justify-content:center; }
}
.contact-panel.contact-panel--social .contact-heading {
  display:block; position:relative; z-index:1; box-sizing:border-box;
  width:100%; padding:0 20px; color:#173747;
  font:500 42px/1.15 Arial,sans-serif;
  letter-spacing:.055em; white-space:nowrap; text-align:center;
}
.contact-panel.contact-panel--social .contact-panel__copy {
  display:grid; grid-template-columns:repeat(2,minmax(0,240px));
  align-content:center; align-items:start; justify-content:start;
  column-gap:20px; row-gap:20px;
}
.contact-panel.contact-panel--social h2 {
  grid-column:1 / -1; width:100%; min-width:0; margin:0; padding:0;
  box-sizing:border-box; height:120px; position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  border:1px solid #a9bec9; border-radius:16px;
  background:linear-gradient(115deg,#d5e0e5 0%,#faffff 30%,#d8e2e7 52%,#f6fafc 76%,#ccd9e0);
  box-shadow:inset 0 1px 0 white,inset 0 -3px 0 #b7c8d2;
}
.contact-panel.contact-panel--social h2::before,
.contact-panel.contact-panel--social h2::after {
  content:''; position:absolute; top:calc(50% - 5px); width:8px; height:8px;
  background:linear-gradient(135deg,#fff,#95aab6);
  border:1px solid #9bafba; border-radius:50%;
}
.contact-panel.contact-panel--social h2::before { left:17px; }
.contact-panel.contact-panel--social h2::after { right:17px; }
.contact-panel.contact-panel--social h2 .c-logo,
html[lang="en"] .contact-panel.contact-panel--social h2 .c-logo { display:block; width:100%; max-width:none; }
.contact-panel.contact-panel--social h2 .c-logo img { display:block; width:100%; max-width:none; height:auto; }
.contact-panel.contact-panel--social .contact-panel__links { width:100%; min-width:0; margin:0; }
.contact-panel.contact-panel--social .contact-panel__primary {
  position:relative; display:flex; flex-direction:column; justify-content:center;
  align-items:center; width:100%; aspect-ratio:1; min-height:0; box-sizing:border-box;
  padding:22px; gap:0; background:#fff; color:#0a2b3e;
  border:1px solid #c9d9e2; border-radius:16px; text-align:center;
}
.contact-panel.contact-panel--social .contact-action__title {
  font-size:clamp(22px,2vw,30px); font-weight:500; line-height:1.4;
  text-align:center; letter-spacing:0;
}
.contact-panel.contact-panel--social .contact-action__title::before {
  content:''; display:block; width:36px; height:3px; background:#0995ce; margin:0 auto 20px;
}
.contact-panel.contact-panel--social .contact-action__arrow {
  position:absolute; right:20px; top:18px; color:#078ccc; font-size:24px;
}
.contact-panel.contact-panel--social .contact-action__email {
  width:100%; max-width:155px; margin-top:14px; font:13px/1.55 Arial,sans-serif;
  color:#607583; text-align:center; overflow-wrap:anywhere;
}
.contact-panel.contact-panel--social .contact-social { display:block; min-width:0; margin:0; }
.contact-panel.contact-panel--social .contact-social__copy { display:none; }
.contact-panel.contact-panel--social .contact-social__qr {
  display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:1;
  padding:8px; box-sizing:border-box; border-radius:16px;
  background:#fff; border:1px solid #dfe5e8; box-shadow:0 12px 30px #12354909;
}
.contact-panel.contact-panel--social .contact-social__qr img { width:100%; height:100%; object-fit:contain; }
@media(max-width:600px) {
  .contact-panel.contact-panel--social .contact-panel__copy { column-gap:14px; row-gap:20px; }
  .contact-panel.contact-panel--social h2 { height:96px; }
  .contact-panel.contact-panel--social .contact-heading { font-size:clamp(24px,7vw,36px); }
  .contact-panel.contact-panel--social .contact-panel__primary { padding:12px; }
  .contact-panel.contact-panel--social .contact-action__title { font-size:20px; }
  .contact-panel.contact-panel--social .contact-action__title::before { width:28px; height:2px; margin-bottom:12px; }
  .contact-panel.contact-panel--social .contact-action__arrow { right:12px; top:10px; font-size:20px; }
  .contact-panel.contact-panel--social .contact-action__email { font-size:11px; margin-top:10px; }
  .contact-panel.contact-panel--social .contact-social__qr { padding:5px; }
}
