/* Visual refinement based on the deployed PMI Congress site.
   Existing content order, component markup and application behavior stay in place. */
:root {
  --ink: #181228;
  --ink-2: #2A1234;
  --body: #5A5165;
  --muted: #6E6579;
  --line: #E2DDD8;
  --line-2: #D0C8C0;
  --bg: #ffffff;
  --bg-soft: #F5F2EE;
  --bg-soft-2: #EDE8E0;
  --dark: #120A24;
  --dark-2: #200F3B;
  --on-dark: #F1ECF7;
  --on-dark-muted: #C6BCD4;
  --accent: #4F17A7;
  --accent-ink: #371075;
  --accent-tint: #F1ECFA;
  --brand-violet: #4F17A7;
  --brand-plum: #2A0C5A;
  --brand-teal: #056A7B;
  --brand-mint: #ACF5F8;
  --brand-mint-deep: #6DEDAC;
  --brand-gold: #FFD225;
  --brand-gradient: linear-gradient(100deg, #4F17A7, #371075);
  --radius-sm: 8px;
  --radius: 14px;
  --radius-lg: 20px;
  --shadow-sm: 0 1px 2px rgb(24 18 40 / 6%), 0 8px 20px -18px rgb(24 18 40 / 18%);
  --shadow-md: 0 1px 2px rgb(24 18 40 / 5%), 0 22px 44px -30px rgb(24 18 40 / 26%);
  --container: 1280px;
  --gutter: clamp(22px, 4vw, 48px);
  --section-y: clamp(72px, 8.5vw, 124px);
}

::selection { background: #E7DDF6; color: #181228; }
html { scrollbar-color: #B7A7D3 #F5F2EE; }
input, textarea { caret-color: var(--accent); }
h1, h2, h3 { text-wrap: balance; }
h2 { font-size: clamp(1.9rem, 3.7vw, 3rem); font-weight: 700; line-height: 1.16; letter-spacing: -.015em; }
h3 { font-weight: 700; }
.eyebrow { color: var(--accent); font-weight: 600; letter-spacing: .14em; }
.eyebrow.light { color: #D3C8E4; }
.section-head { max-width: 850px; }
.section-copy p, .section-lede { font-size: clamp(1rem, 1.35vw, 1.125rem); line-height: 1.82; color: var(--body); }
.text-link, .pass-text-btn { text-decoration-color: rgb(79 23 167 / 35%); font-weight: 650; }
.pill-button {
  min-height: 48px;
  padding-inline: 26px;
  border-radius: var(--radius-pill);
  background: var(--accent);
  color: #fff;
  border: 1px solid transparent;
  box-shadow: 0 10px 24px -16px rgb(79 23 167 / 45%);
  font-weight: 600;
  letter-spacing: .01em;
  transition: background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.pill-button:hover { background: var(--accent-ink); transform: translateY(-1px); }
.pill-button:active { transform: translateY(0); }
.pill-button.small { border-radius: var(--radius-pill); min-height: 38px; padding-inline: 18px; font-weight: 600; }
.pill-button.pass-ghost { box-shadow: none; background: #fff; color: var(--accent); border-color: var(--line-2); }
.pill-button.pass-ghost:hover { background: var(--accent-tint); border-color: var(--accent); }
.pill-button:disabled, .pill-button[disabled] { transform: none; box-shadow: none; }
:focus-visible { outline-color: #6B3BC0; outline-offset: 4px; }

/* Same transparent dark navigation treatment as the deployed version. */
.site-header, .site-header.scrolled {
  color: #fff;
  background: rgb(18 10 36 / 84%);
  border-bottom-color: rgb(255 255 255 / 12%);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: none;
}
.site-header.scrolled { background: rgb(18 10 36 / 95%); }
.brand img { height: 36px; }
.site-header.scrolled .brand img { filter: none; }
.desktop-nav a { font-weight: 600; opacity: .85; }
.desktop-nav a.is-current, .desktop-nav a:hover { color: #fff; opacity: 1; }
.site-header .pill-button.small,
.site-header:not(.scrolled) .pill-button.small,
.site-header.scrolled .pill-button.small { background: var(--accent); color: #fff; box-shadow: 0 8px 20px -14px rgb(79 23 167 / 60%); }
.site-header .pill-button.small:hover { background: var(--accent-ink); }
.lang-switch { border-color: rgb(255 255 255 / 35%); opacity: .95; }
.menu-toggle { border-radius: 50%; width: 40px; height: 40px; }
.mobile-panel { background: #190D2E; border-color: rgb(255 255 255 / 16%); }
.mobile-panel nav a { color: #fff; border-color: rgb(255 255 255 / 15%); }
.mobile-panel .lang-switch { color: #e3d6f4; }

/* Existing local video supplies the atmospheric hero, with a still fallback. */
.hero { position: relative; isolation: isolate; overflow: hidden; min-height: min(900px, 100svh); background: #120A24; padding-block: calc(var(--header-h) + 88px) 88px; }
.hero-video-layer { position: absolute; inset: -24px; z-index: -2; pointer-events: none; background: var(--dark) url('assets/about-congress-poster.jpg') center / cover no-repeat; }
.hero-video-layer video { width: 100%; height: 100%; object-fit: cover; filter: saturate(.95); opacity: 1; }
.hero::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(100deg, rgb(5 7 22 / 92%), rgb(20 6 44 / 70%) 52%, rgb(5 7 22 / 40%)); pointer-events: none; }
.hero-inner { min-height: 0; max-width: 1160px; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); align-items: start; gap: clamp(32px, 4vw, 56px); }
.hero-copy > .eyebrow { font-size: clamp(2.2rem, 4.2vw, 3.6rem); line-height: 1.18; letter-spacing: -.03em; }
.hero-copy h1 { font-size: clamp(1.25rem, 1.8vw, 1.6rem); font-weight: 800; line-height: 1.5; margin-bottom: 24px; letter-spacing: .05em; }
.hero-sub { color: #f0ebf7; max-width: 40ch; line-height: 1.8; }
html[lang="zh-CN"] .hero-sub { max-width: 100%; text-indent: 0; text-align: left; line-height: 1.85; text-wrap: pretty; }
.hero-sub-line { display: block; }
.hero-facts { color: #eee7f7; gap: 12px 22px; font-weight: 550; }
.hero-facts .icon { color: #d8bcff; }
.hero-actions { margin-top: 34px; gap: 18px 26px; }
.hero .pill-button { background: var(--accent); color: #fff; }
.hero .pill-button:hover { background: linear-gradient(100deg, #371075, #371075 72%, #2A0C5A); }
.hero-copy::after { content: ''; display: block; width: 112px; height: 62px; margin-top: 34px; background: url('assets/built-to-move-mark.png') left center / contain no-repeat; opacity: .9; }
.hero-card { align-self: start; width: 100%; background: rgb(14 10 32 / 78%); border: 1px solid rgb(255 255 255 / 20%); padding: 30px; border-radius: 12px; box-shadow: 0 24px 64px -34px rgb(0 0 0 / 60%); }
.hero-card-label { color: #C6BCD4; letter-spacing: .1em; }
.countdown { margin: 26px 0; }
.countdown span { font-size: clamp(3.4rem, 5vw, 4.8rem); font-weight: 750; }
.countdown small, .hero-card-list dt { color: #C6BCD4; }
.hero-card-list { padding-top: 22px; gap: 14px; }
.hero-card-link { line-height: 1.6; }

/* Light sections use the deployed site's white / lavender rhythm. */
.summary-section { background: #F5F2EE; }
.summary-grid { gap: 24px; }
.summary-grid li { border: 0; border-radius: 0; box-shadow: none; padding: 24px 24px 26px; background: #fff; border-top: 3px solid #4F17A7; }
.summary-grid li:nth-child(2) { border-top-color: #c044c1; }
.summary-grid li:nth-child(3) { border-top-color: #ed526c; }
.summary-grid h3 { font-size: 1.3rem; }
.summary-index { color: var(--accent); }
.about-section, .speakers-section, .venue-section { background: #fff; }
.image-panel, .video-stage { border: 0; border-radius: 16px; box-shadow: 0 20px 52px -32px rgb(24 18 40 / 30%); }
.metrics-row { margin-top: 56px; }
.metrics-row dt { color: var(--accent); font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 750; }
.metrics-row dd { color: var(--body); }
/* Overview: keep the original 16:9 frame, with a single glass data band. */
#about .image-panel.landscape { aspect-ratio: 16 / 9; }
#about .image-panel .video-stage { width: 100%; height: 100%; aspect-ratio: auto; box-shadow: none; }
#about .overview-video, #about .video-fallback { object-fit: contain; object-position: center; }
#about .metrics-row {
  border: 0;
  border-radius: 16px;
  overflow: hidden;
  background: linear-gradient(96deg, #3d0779 0%, #8e1f66 20%, #d92a58 40%, #fb4648 62%, #b7276a 82%, #43097c 100%);
  backdrop-filter: blur(18px) saturate(125%);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 24%), 0 16px 36px -22px rgb(62 18 104 / 45%);
}
#about .metrics-row > div { padding: 26px 20px; text-align: center; border-left: 1px solid rgb(255 255 255 / 15%); }
#about .metrics-row > div:first-child { border-left: 0; padding-left: 20px; }
#about .metrics-row dt { color: #fff; font-weight: 800; font-variant-numeric: lining-nums tabular-nums; }
#about .metrics-row dd { color: #fff; margin-top: 10px; line-height: 1.6; }
@media (max-width: 900px) {
  #about .metrics-row > div { padding: 22px 14px; }
  #about .metrics-row > div:first-child { padding-left: 14px; }
  #about .metrics-row > div:nth-child(3) { border-left: 0; }
  #about .metrics-row > div:nth-child(n+3) { border-top: 1px solid rgb(255 255 255 / 15%); }
}
.framework-section { background: #FBFAF7; }
.framework-grid li { border: 0; border-radius: 0; border-top: 1px solid #cdb8eb; padding: 24px 20px; background: rgb(255 255 255 / 90%); }
.framework-grid li > span { color: var(--accent); font-weight: 750; }
.framework-grid h3 { font-size: 1.2rem; }
.journey-section { background: #FBFAF7; }
.journey-rail { gap: 28px; }
.journey-rail li { border-top-color: var(--accent); padding-top: 24px; }
.journey-rail li > span { color: var(--accent); font-size: .85rem; }
.journey-rail h3 { font-size: 1.25rem; }

/* Restore the dark, immersive brand passages without changing their order. */
.why-section { background: linear-gradient(125deg, #120A24, #200F3B 65%, #120A24); border: 0; position: relative; overflow: hidden; color: var(--on-dark); }
.why-section::before { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .1; background: url('assets/shapes-violet/two-triangles-stacked.svg') right 5% center / 380px auto no-repeat; }
.why-section .container { position: relative; }
.why-section h2, .why-list strong { color: #fff; }
.why-section .eyebrow { color: #ACF5F8; }
.why-section .section-copy p, .why-list p { color: #C6BCD4; }
.why-section .text-link { color: #ACF5F8; text-decoration-color: #6DEDAC; }
.why-list, .why-list li { border-color: rgb(255 255 255 / 18%); }
.why-list li { padding-block: 24px; }
.why-list > li > span { color: #ACF5F8; }
.why-list strong { font-size: 1.15rem; }
.agenda-section { background: var(--bg-soft); color: var(--ink); border-block: 1px solid var(--line); }
.agenda-section h2, .agenda-section h3 { color: var(--ink); }
.agenda-section .section-lede { color: var(--body); }
.agenda-section > .container > .section-head { max-width: none; margin-bottom: 40px; }
#agenda-title { margin: 0 0 24px; font-size: clamp(2.4rem, 4.6vw, 4.2rem); line-height: 1.1; font-weight: 750; letter-spacing: -.025em; text-align: left; color: var(--ink); }
.agenda-section > .container > .section-head .section-lede { margin: 0; max-width: 44em; font-size: clamp(1.05rem, 1.6vw, 1.25rem); line-height: 1.65; color: var(--body); }
.agenda-disclaimer { margin: 18px 0 0; color: var(--muted); font-size: .8125rem; line-height: 1.6; }
@media (max-width: 600px) {
  #agenda-title { margin-bottom: 20px; }
  .agenda-intro-break { display: none; }
  .agenda-section > .container > .section-head .section-lede { text-wrap: pretty; }
}
.agenda-section .eyebrow { color: var(--accent); }
.agenda-board { background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow-sm); border-radius: var(--radius-lg); }
.agenda-meta, .agenda-close { background: var(--bg-soft); border-color: var(--line); color: var(--muted); }
.agenda-block + .agenda-block, .agenda-list > div { border-color: var(--line); }
.agenda-list > div, .agenda-close strong { color: var(--ink); }
.agenda-list time, .agenda-list .agenda-pause, .agenda-close time { color: var(--muted); }
.agenda-block-heading p, .forum-index, .agenda-close small { color: var(--accent); }
.forum-grid > li { background: #fff; border-color: var(--line); border-radius: var(--radius); }
.forum-grid h4 { color: var(--ink); font-size: 1.05rem; }
.forum-grid > li > span { color: var(--accent); }
.forum-grid > li > p:not(.forum-index), .forum-grid ul li { color: var(--body); }

/* Use the same four local concept images as the live speaker direction cards. */
.speaker-grid { gap: 22px; }
.speaker-grid li { display: block; padding: 0 0 26px; border: 0; border-radius: 0; background: #F5F2EE; overflow: hidden; }
.speaker-grid li::before { content: ''; display: block; height: 200px; margin-bottom: 22px; background: var(--speaker-art) center 25% / cover no-repeat; }
.speaker-grid li:nth-child(1) { --speaker-art: url('assets/speaker-ai-governance.png'); }
.speaker-grid li:nth-child(2) { --speaker-art: url('assets/speaker-transformation.png'); }
.speaker-grid li:nth-child(3) { --speaker-art: url('assets/speaker-standards.png'); }
.speaker-grid li:nth-child(4) { --speaker-art: url('assets/speaker-china-practice.png'); }
.speaker-grid li > * { margin-inline: 20px; }
.speaker-grid h3 { font-size: 1.1rem; margin-block: 10px; }
.speaker-status { color: var(--accent); }
.people-section { background: #F5F2EE; border: 0; }
.identity-card { border: 0; background: #fff; padding: 20px; }
.identity-card span { font-weight: 750; }
.crew-card { background: #E7E0F3; }
.venue-note { color: var(--body); }

/* Form states and overlays share the restored purple palette. */
.register-section { background: var(--bg-soft); color: var(--ink); border-block: 1px solid var(--line); }
.register-section .register-layout { grid-template-columns: minmax(0, 800px); justify-content: center; gap: 0; }
.register-content { border: 1px solid var(--line); border-radius: var(--radius-lg); padding: clamp(20px, 3vw, 36px); box-shadow: var(--shadow-md); }
.register-lede { color: var(--body); }
.register-steps p, .register-note { color: var(--muted); }
.register-steps li > span { border-color: var(--line-2); background: var(--accent-tint); color: var(--accent); }
.register-z { gap: 16px; }
.pass-form input:focus, .pass-form select:focus, .pass-form textarea:focus, .pass-modal input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgb(79 23 167 / 13%); }
.pass-form input::placeholder, .pass-modal input::placeholder { color: #8B8295; opacity: 1; }
.pass-form input, .pass-form select, .pass-modal input:not([type]), .pass-modal input[type='text'], .pass-modal input[type='tel'] { min-height: 46px; }
.pass-form input[type='radio'], .pass-form input[type='checkbox'] { min-height: 0; accent-color: var(--accent); }
.pass-discount-card { border: 1px solid #d8c4f1; background: #F5F1EC; padding: 16px; }
.pass-discount-card:hover { background: #EDE9E2; }
.pass-discount-icon { background: #E4DCF4; color: var(--accent); border: 0; border-radius: 12px; width: 42px; height: 42px; }
.pass-modal-overlay { background: rgb(18 10 36 / 70%); }
.pass-modal { border-radius: var(--radius-lg); }
.pass-opt { background: #FBF9F6; padding: 16px; }
.pass-modal-x { color: var(--ink); }
.pass-text-btn { text-decoration-color: rgb(79 23 167 / 35%); }
.faq-section { background: #FBFAF7; }
.faq-list summary { padding-block: 22px; font-size: 1.05rem; font-weight: 650; }
.faq-list summary::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234F17A7' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); }
.site-footer { background: #120A24; }
.footer-brand p, .footer-col a, .footer-contact a, .footer-legal, .qr-card p { color: #C0B4CE; }
.footer-brand { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; text-align: left; }
.footer-brand img { width: 280px; max-width: 100%; height: auto; margin: 0 0 14px; }
.footer-brand p:not(.footer-legal) { margin: 0; font-size: clamp(1rem, 1.4vw, 1.15rem); line-height: 1.5; }
.footer-brand .footer-legal { margin: 24px 0 0; max-width: 34ch; font-size: .75rem; line-height: 1.6; }
.footer-grid { grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr) minmax(0, .8fr) minmax(214.4px, 1fr); gap: clamp(24px, 3vw, 40px); }
.footer-col { justify-items: start; text-align: left; }
.footer-col > strong, .footer-col > a { font-size: .9375rem; }
.footer-contact { justify-self: start; gap: 18px; }
.footer-contact > strong { margin: 0; }
.footer-contact .qr-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 16px; margin: 0; max-width: 232px; }
.footer-contact .qr-card { gap: 10px; align-content: start; }
.footer-contact .qr-tile { width: 100%; height: auto; aspect-ratio: 1; padding: 6.8px; }
.footer-contact .qr-card p { margin: 0; font-size: .6875rem; line-height: 1.45; letter-spacing: 0; }
.footer-policy { display: grid; gap: 8px; min-width: 0; align-content: start; }
.footer-policy > strong, .footer-contact > strong { font-size: .9375rem; font-weight: 600; color: #fff; line-height: 1.7; }
.footer-policy > strong { margin-bottom: 10px; }
.footer-policy-item { min-width: 0; }
.footer-policy-item summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 32px; padding: 2px 0; list-style: none; color: #C0B4CE; font-size: .875rem; line-height: 1.6; cursor: pointer; }
.footer-policy-item summary::-webkit-details-marker { display: none; }
.footer-policy-item summary::after { content: ''; flex: 0 0 6px; width: 6px; height: 6px; margin-right: 3px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
.footer-policy-item[open] summary::after { transform: rotate(225deg); }
.footer-policy-item summary:hover { color: #fff; }
.footer-policy-item summary:focus-visible { outline: 2px solid #ACF5F8; outline-offset: 4px; }
.footer-policy-copy { padding: 8px 0 16px; color: #C6BCD4; font-size: .8125rem; line-height: 1.8; overflow-wrap: anywhere; }
.footer-policy-copy p { margin: 0; }
.footer-policy-copy p + p { margin-top: 12px; }
@media (max-width: 900px) {
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-contact { grid-column: auto; justify-self: start; }
}
@media (max-width: 600px) {
  .footer-grid { grid-template-columns: minmax(0, 1fr); row-gap: 32px; }
  .footer-contact .qr-cards { gap: 20px; }
}
.to-top { background: #fff; color: var(--accent); }

@media (max-width: 1080px) {
  .hero-inner { grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); gap: 32px; }
  .hero-card { padding: 24px; }
  .hero-copy > .eyebrow { font-size: clamp(2.2rem, 4.2vw, 3.2rem); }
}
@media (max-width: 900px) {
  .hero { min-height: auto; padding-block: calc(var(--header-h) + 62px) 64px; }
  .hero-inner { min-height: 0; grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .hero-card { width: 100%; max-width: 520px; }
  .hero-copy::after { width: 96px; height: 54px; margin-top: 28px; }
  .hero-copy > .eyebrow { font-size: clamp(2.2rem, 5.6vw, 3.2rem); }
  .countdown { margin-block: 18px; }
  .hero-video-layer video { filter: saturate(.95); }
}
@media (max-width: 600px) {
  .brand img { height: 30px; }
  .header-actions { gap: 8px; }
  .hero { padding-top: calc(var(--header-h) + 46px); }
  .hero-copy > .eyebrow { font-size: clamp(1.8rem, 7.2vw, 2.4rem); }
  .hero-copy h1 { font-size: 1.25rem; letter-spacing: .05em; margin-bottom: 20px; }
  .hero-sub { font-size: 1rem; line-height: 1.85; }
  html[lang="zh-CN"] .hero-sub { text-wrap: balance; }
  .hero-sub-line { display: inline; }
  .hero-facts { font-size: .85rem; gap: 12px; }
  .hero-facts li { width: 100%; }
  .hero-actions { gap: 16px 22px; }
  .hero-card { padding: 22px; }
  .hero-card-list dd { font-size: .82rem; }
  .summary-grid { gap: 16px; }
  .summary-grid li { padding: 22px; }
  .speaker-grid li::before { height: 180px; }
  .speaker-grid li > * { margin-inline: 18px; }
  .metrics-row { margin-top: 36px; }
  .register-content { padding: 20px 16px; }
  .faq-list summary { font-size: 1rem; }
  .pass-modal-overlay { padding: 16px; }
  .pass-modal { padding: 24px 20px; max-height: calc(100dvh - 32px); }
  .pass-discount-card { gap: 10px; padding: 14px 12px; }
  .pass-discount-sub { line-height: 1.6; }
  .pass-form input, .pass-form select, .pass-form textarea, .pass-modal input { font-size: 16px; }
}
@media (max-width: 380px) {
  .brand img { height: 26px; }
  .header-actions { gap: 6px; }
  .header-actions .lang-switch { font-size: .6875rem; padding-inline: 8px; }
  .site-header .pill-button.small { padding-inline: 12px; font-size: .75rem; min-height: 36px; }
  .menu-toggle { width: 36px; height: 36px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-video-layer video { display: none; }
  .pill-button:hover { transform: none; }
}

/* Confirmed programme: readable bilingual schedules at every width. */
.agenda-location { color:var(--muted); margin:0 0 20px; }
.agenda-list strong { font-size:1rem; line-height:1.6; font-weight:600; }
.agenda-list .session-detail { display:block; margin-top:6px; color:var(--muted); line-height:1.65; font-size:.9rem; max-width:72ch; }
.agenda-list time { white-space:nowrap; font-variant-numeric:tabular-nums; }
.forum-schedule { border-top:1px solid var(--line); }
.forum-schedule:last-child { border-bottom:1px solid var(--line); }
.forum-schedule > summary { display:flex; flex-wrap:wrap; align-items:center; gap:10px 24px; padding:25px 44px 25px 0; cursor:pointer; position:relative; list-style:none; }
.forum-schedule > summary::-webkit-details-marker { display:none; }
.forum-schedule > summary::after { content:'+'; position:absolute; right:8px; font-size:28px; color:var(--accent); }
.forum-schedule[open] > summary::after { content:'−'; }
.forum-summary-title { font-size:1.2rem; line-height:1.5; font-weight:650; color:var(--ink); }
.forum-summary-meta { font-size:.9rem; color:var(--muted); }
.forum-body { padding:0 0 24px; }
.forum-body > p { color:var(--body); max-width:72ch; }
.forum-body .forum-host { color:var(--muted); font-size:.9rem; }
.forum-body .agenda-list { margin-top:24px; }
.forum-schedule > summary:hover .forum-summary-title { color:var(--accent); }
.forum-schedule > summary:focus-visible { outline:2px solid var(--accent); outline-offset:5px; }
#speakers { scroll-margin-top:110px; }
@media (max-width:640px) {
 .agenda-list > div { grid-template-columns:1fr; gap:8px; padding:18px 0; }
 .forum-summary-title { font-size:1.05rem; }
 .forum-summary-meta { flex-basis:100%; }
 .agenda-list .session-detail { font-size:.875rem; }
}

/* --- Summit 质感补充：紫 / 沙 / 薄荷，扁平按钮，大圆角留白 --- */
.summary-section { background: var(--bg-soft); }
.summary-grid li { border: 1px solid var(--line); border-top: 3px solid var(--accent); border-radius: var(--radius-lg); box-shadow: none; }
.summary-grid li:nth-child(2) { border-top-color: var(--brand-teal); }
.summary-grid li:nth-child(3) { border-top-color: var(--brand-gold); }
.summary-grid h3 { letter-spacing: -.01em; }
.image-panel, .video-stage { border-radius: var(--radius-lg); box-shadow: var(--shadow-md); }
.speaker-grid li { border-radius: var(--radius-lg); background: var(--bg-soft); }
.identity-card { border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
.crew-card { background: #E7E0F3; }
.register-content { border-radius: var(--radius-lg); }
.pass-modal { border-radius: var(--radius-lg); }
.pass-discount-card { border-radius: var(--radius); }
#about .metrics-row {
  background: linear-gradient(112deg, #2A0C5A 0%, #371075 55%, #200F3B 100%);
  box-shadow: inset 0 1px 0 rgb(172 245 248 / 28%), 0 18px 40px -24px rgb(42 12 90 / 45%);
}
.hero::before { background: linear-gradient(100deg, rgb(18 10 36 / 92%), rgb(42 12 90 / 72%) 52%, rgb(18 10 36 / 42%)); }
.pass-modal-overlay { background: rgb(18 10 36 / 70%); }
.site-footer { border-top: 1px solid rgb(255 255 255 / 10%); }
.footer-policy-item summary:hover { color: var(--brand-mint); }
.forum-schedule > summary:hover .forum-summary-title { color: var(--accent); }
.forum-schedule > summary:focus-visible { outline-color: var(--accent); }
.agenda-block-heading p, .forum-index, .agenda-close small { letter-spacing: .08em; }
:focus-visible { outline-color: #6B3BC0; }
html { scrollbar-color: #B7A7D3 #F5F2EE; }
::selection { background: #E7DDF6; color: #181228; }

/* --- 参会价值 / Make the case --- */
.makecase-section { background: #fff; border-block: 1px solid var(--line); }
.makecase-head { max-width: 780px; }
.makecase-grid {
  list-style: none;
  margin: 44px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.makecase-grid li { background: #fff; padding: 26px clamp(22px, 2.6vw, 32px) 30px; display: grid; gap: 10px; align-content: start; }
.makecase-grid li > span { font-size: .8125rem; letter-spacing: .12em; color: var(--accent); font-weight: 600; font-variant-numeric: tabular-nums; }
.makecase-grid h3 { font-size: 1.15rem; letter-spacing: -.01em; }
.makecase-grid p { margin: 0; color: var(--body); font-size: .9375rem; line-height: 1.75; }
.makecase-foot { margin-top: 30px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px; }
.makecase-facts { display: flex; flex-wrap: wrap; gap: 14px 36px; }
.makecase-facts strong { display: block; font-size: 1rem; font-weight: 650; color: var(--ink); }
.makecase-facts span { font-size: .8125rem; color: var(--muted); }
.makecase-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; }
.makecase-cta p { margin: 0; max-width: 32ch; font-size: .8125rem; line-height: 1.6; color: var(--muted); }
@media (max-width: 820px) {
  .makecase-grid { grid-template-columns: minmax(0, 1fr); }
  .makecase-foot { flex-direction: column; align-items: flex-start; }
}

/* PMI events visual alignment — presentation only, 2026-10-22. */
:root {
 --ink:#261039; --ink-2:#36184d; --body:#56465f; --muted:#6b5b74;
 --line:#e5dfea; --line-2:#c6b8d1; --bg-soft:#f6f3f8; --bg-soft-2:#eee8f3;
 --dark:#270d3d; --dark-2:#35134f; --accent:#681bc5; --accent-ink:#4d1396;
 --accent-tint:#f0e8fa; --brand-violet:#681bc5; --brand-plum:#270d3d;
 --on-dark:#fff; --on-dark-muted:#dfd0eb; --radius-lg:16px;
 --shadow-md:0 18px 40px -26px rgb(39 13 61 / 24%);
}
h2 { color:var(--ink); font-weight:750; line-height:1.22; }
h3 { line-height:1.45; }
.section-copy p,.section-lede { font-weight:400; }
.eyebrow { letter-spacing:.06em; font-size:.8125rem; }
.pill-button { background:var(--accent); box-shadow:none; transition:background-color 180ms ease-out,transform 180ms ease-out; }
.pill-button:hover { background:var(--accent-ink); box-shadow:none; }
.pill-button:disabled,.pill-button[disabled] { opacity:.55; cursor:not-allowed; }
:focus-visible { outline:3px solid #8746d1; outline-offset:4px; }
.site-header,.site-header.scrolled { background:#270d3d; backdrop-filter:none; -webkit-backdrop-filter:none; border-bottom:1px solid #604474; }
.desktop-nav a { opacity:1; color:#e6dcee; font-weight:500; }
.desktop-nav a:hover,.desktop-nav a.is-current { color:#fff; }
.desktop-nav a.is-current::after { background:#fff; height:3px; border-radius:0; }
.site-header .pill-button.small,.site-header:not(.scrolled) .pill-button.small,.site-header.scrolled .pill-button.small { background:#fff; color:#35134f; box-shadow:none; }
.site-header .pill-button.small:hover { background:#eaddf5; }
.lang-switch:hover { background:rgb(255 255 255 / 10%); }
.mobile-panel { background:#270d3d; }
.summary-section,.framework-section,.faq-section { background:#fff; }
.journey-section,.people-section,.agenda-section,.register-section { background:var(--bg-soft); }
.summary-grid li,.summary-grid li:nth-child(2),.summary-grid li:nth-child(3) { border:0; border-top:1px solid #cbb7dc; background:transparent; border-radius:0; padding:26px 20px 12px; }
.summary-index { font-size:.875rem; font-weight:600; color:var(--accent); }
.summary-grid h3 { font-size:1.4rem; margin-top:18px; }
.summary-grid p { color:var(--body); line-height:1.85; }
.image-panel { border-radius:16px 64px 16px 16px; box-shadow:none; }
.video-stage { box-shadow:none; }
#about .metrics-row { background: linear-gradient(90deg, #3d0779 0%, #8e1f66 20%, #d92a58 42%, #fb4648 62%, #b7276a 82%, #43097c 100%); box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; border-radius:16px; }
#about .metrics-row dd { color:#e5d8ed; font-weight:400; }
.why-section { background:#270d3d; }
.why-section::before { background:none; }
.why-section .section-copy p,.why-list p { color:#dfd0eb; font-weight:400; line-height:1.85; }
.why-section .eyebrow,.why-list > li > span { color:#dfc5f5; }
.why-section .text-link { color:#fff; text-decoration-color:#c29ce2; }
.framework-grid li { border-top-color:#cbb7dc; background:transparent; padding-inline:16px; }
.journey-rail li { border-top-width:1px; border-top-color:#bba1d1; }
.agenda-board { box-shadow:none; border-radius:16px; }
.agenda-meta { background:#35134f; color:#fff; }
.agenda-block-heading h3 { font-size:clamp(1.3rem,2vw,1.75rem); }
.agenda-list time { color:#645170; font-variant-numeric:tabular-nums; }
.forum-schedule > summary { transition:background-color 180ms ease-out; }
.forum-schedule > summary:hover { background:#f6f0fc; }
.forum-schedule[open] > summary .forum-summary-title { color:var(--accent); }
.register-content { background:#fff; box-shadow:none; }
.pass-discount-card { background:#f6f0fc; border-color:#d7c6e8; }
.pass-discount-card:hover { background:#eee2fa; }
.pass-form input::placeholder,.pass-modal input::placeholder { color:#75657f; }
.pass-form input,.pass-form select,.pass-form textarea { border-color:#b9abc3; }
.pass-form input:focus,.pass-form select:focus,.pass-form textarea:focus { border-color:var(--accent); box-shadow:0 0 0 3px #eee1fa; }
.faq-list summary { color:var(--ink); transition:color 180ms ease-out; }
.faq-list summary:hover,.faq-list details[open] summary { color:var(--accent); }
.faq-list details p { font-weight:400; color:var(--body); line-height:1.85; }
.makecase-grid { box-shadow:none; }
.site-footer { background:#270d3d; }
.footer-brand p,.footer-col a,.footer-contact a,.footer-legal,.qr-card p,.footer-policy-item summary { color:#dfd0eb; }
.site-footer :focus-visible,.site-header :focus-visible,.why-section :focus-visible { outline-color:#cfa8f0; }
::selection { background:#e4d1f6; color:#270d3d; }
html { scrollbar-color:#9e7bb8 #f6f3f8; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* Compact conference footer: existing content and interaction retained. */
.site-footer { padding-block:48px 32px; border-top:1px solid #654a78; }
.site-footer .footer-grid { max-width:1120px; grid-template-columns:minmax(220px,1.35fr) minmax(120px,.65fr) minmax(140px,.75fr) minmax(220px,1fr); column-gap:32px; row-gap:32px; }
.footer-brand { padding-right:20px; }
.footer-brand img { width:224px; margin-bottom:20px; }
.footer-brand p:not(.footer-legal) { font-size:.9375rem; line-height:1.7; }
.footer-brand .footer-legal { margin-top:24px; font-size:.6875rem; color:#c5b0d4; }
.footer-col,.footer-policy,.footer-contact { padding-top:4px; }
.footer-col > strong,.footer-policy > strong,.footer-contact > strong { width:100%; margin:0 0 14px; padding-bottom:14px; border-bottom:1px solid #624773; font-size:1rem; line-height:1.5; letter-spacing:0; font-weight:700; color:#fff; }
.footer-col { gap:0; }
.footer-col > a { min-height:36px; display:flex; align-items:center; font-size:.875rem; line-height:1.6; color:#e6d9ef; text-underline-offset:5px; }
.footer-col > a:hover { color:#fff; text-decoration:underline; }
.footer-policy { gap:0; }
.footer-policy-item summary { min-height:36px; padding:6px 0; color:#e6d9ef; font-size:.875rem; }
.footer-policy-copy { color:#dfd0eb; font-size:.8125rem; line-height:1.85; }
.footer-contact { justify-self:stretch; gap:0; }
.footer-contact .qr-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:4px; }
.footer-contact .qr-card { justify-items:start; gap:10px; }
.footer-contact .qr-tile { width:96px; height:96px; padding:7px; border:0; border-radius:8px; }
.footer-contact .qr-card p { font-size:.6875rem; text-align:left; color:#dfd0eb; white-space:nowrap; }
@media(max-width:1100px) and (min-width:901px) {
 .site-footer .footer-grid { grid-template-columns:minmax(180px,1.1fr) minmax(100px,.65fr) minmax(110px,.75fr) 204px; column-gap:24px; }
 .footer-brand img { width:200px; }
 .footer-brand { padding-right:0; }
 .footer-contact .qr-cards { gap:12px; }
}
@media(max-width:900px) {
 .site-footer .footer-grid { max-width:680px; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
 .footer-brand { padding-right:0; }
 .footer-contact .qr-cards { grid-template-columns:repeat(2,96px); gap:20px; }
}
@media(max-width:600px) {
 .site-footer { padding-block:36px 28px; }
 .site-footer .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; row-gap:28px; }
 .footer-brand,.footer-contact { grid-column:1 / -1; }
 .footer-brand img { width:208px; margin-bottom:14px; }
 .footer-brand .footer-legal { margin-top:14px; }
 .footer-col > strong,.footer-policy > strong,.footer-contact > strong { font-size:.9375rem; margin-bottom:10px; padding-bottom:12px; }
 .footer-col > a,.footer-policy-item summary { min-height:40px; }
 .footer-contact .qr-cards { gap:24px; }
}

/* --- 备案信息与合规提示 --- */
.footer-legal-link { color: #C0B4CE; font-size: .875rem; line-height: 1.9; text-decoration: none; }
.footer-legal-link:hover { color: #fff; text-decoration: underline; }
.footer-icp { display: flex; flex-wrap: wrap; gap: 2px 12px; margin: 10px 0 0; color: #A99CBC; font-size: .75rem; line-height: 1.7; }
.footer-icp a { color: #C0B4CE; text-decoration: none; }
.footer-icp a:hover { color: #fff; text-decoration: underline; }
.legal-consent { margin: 10px 0 0; color: var(--muted); font-size: .8125rem; line-height: 1.7; }
.legal-consent a { color: var(--accent); font-weight: 600; text-decoration: none; }
.legal-consent a:hover { text-decoration: underline; }

/* Reference-led event atmosphere and agenda timeline. Presentation only. */
.agenda-section { position:relative; isolation:isolate; overflow:hidden; background:#090511; color:#fff; border:0; }
.agenda-section::before { content:''; position:absolute; z-index:-1; top:180px; left:-15%; width:125%; height:1400px; background:linear-gradient(140deg,#281540 10%,#39204f 48%,#431d32 72%,#140923 90%); clip-path:polygon(40% 0,100% 64%,68% 100%,0 36%); opacity:.75; pointer-events:none; }
.agenda-section::after { content:''; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,transparent 45%,rgb(17 3 39 / 65%)); pointer-events:none; }
.agenda-section h2,.agenda-section h3,#agenda-title { color:#fff; }
.agenda-section > .container > .section-head .section-lede { color:#d4c8df; }
.agenda-section .agenda-disclaimer { color:#bcaec9; }
.agenda-board { background:transparent; border:0; border-radius:0; overflow:visible; box-shadow:none; padding-left:32px; border-left:1px solid #665674; }
.agenda-meta { padding:4px 0 28px; gap:16px 28px; background:transparent; border:0; color:#f3eaf9; font-size:1.05rem; font-weight:650; }
.agenda-meta > span { padding-left:14px; border-left:3px solid #ff4268; }
.agenda-block { padding:38px 0 28px; }
.agenda-block + .agenda-block { border:0; padding-top:56px; }
.agenda-block-heading { display:flex; flex-direction:column; align-items:flex-start; gap:8px; margin-bottom:14px; }
.agenda-block-heading p { color:#f15cbd; font-size:1rem; letter-spacing:0; }
.agenda-block-heading h3 { font-size:clamp(1.6rem,2.5vw,2.25rem); line-height:1.35; }
.agenda-location { color:#bcaec9; margin-bottom:28px; }
.agenda-list > div { position:relative; grid-template-columns:152px minmax(0,1fr); gap:24px; padding:24px 0; border:0; color:#eee5f5; }
.agenda-list > div::before { content:''; position:absolute; left:-39px; top:34px; width:13px; height:13px; border-radius:50%; background:#963aff; box-shadow:0 0 0 6px rgb(150 58 255 / 17%); }
.agenda-list > div:has(.agenda-pause)::before { background:#ff4268; box-shadow:0 0 0 6px rgb(255 66 104 / 16%); }
.agenda-list time { color:#c8b8d5; font-size:1.05rem; padding-top:1px; font-weight:600; }
.agenda-list strong { color:#f2eaf7; font-size:1.125rem; font-weight:650; line-height:1.6; }
.agenda-list .session-detail { color:#baacc8; font-size:.9375rem; line-height:1.8; margin-top:8px; max-width:68ch; }
.agenda-list .agenda-pause { color:#ed9dc4; }
.agenda-list > div:last-child { padding-bottom:24px; }
.forum-schedule,.forum-schedule:last-child { border-color:#503b62; }
.forum-schedule > summary { padding:24px 42px 24px 0; }
.forum-summary-title { color:#eadef4; font-size:1.2rem; }
.forum-summary-meta,.forum-body .forum-host { color:#bcaec9; }
.forum-schedule > summary::after { color:#ed71c7; }
.forum-schedule > summary:hover { background:rgb(127 52 192 / 13%); }
.forum-schedule[open] > summary .forum-summary-title,.forum-schedule > summary:hover .forum-summary-title { color:#f58bd4; }
.forum-body > p { color:#d9cce5; }
.agenda-close { background:transparent; border-color:#503b62; padding:30px 0; }
.agenda-close strong { color:#f4eafb; font-size:1.2rem; }
.agenda-close time { color:#f176c7; font-size:1rem; }
.agenda-close small { color:#c6b5d4; }
.agenda-section :focus-visible { outline-color:#e6a4f3; }
/* Broader rhythm: distinct light, plum and midnight passages. */
.summary-section { background:#f6f2fa; }
.summary-index { font-size:2.5rem; letter-spacing:-.03em; color:#7b24d2; line-height:1.1; }
.summary-grid li { padding-top:24px; border-top-color:#b894d6; }
.summary-grid h3 { margin-top:20px; }
.why-section { background:linear-gradient(125deg,#10091d,#2c103f 62%,#40132f); }
.why-section::before { background:linear-gradient(135deg,transparent 50%,rgb(161 79 216 / 12%) 50%); }
.journey-section { background:#251037; color:#fff; }
.journey-section h2,.journey-rail h3 { color:#fff; }
.journey-section .eyebrow { color:#e49be0; }
.journey-section .section-lede,.journey-rail p { color:#d5c6e0; }
.journey-rail li { border-color:#78518e; }
.journey-rail li > span { color:#f07acb; font-size:1.05rem; }
.framework-grid li:nth-child(even) { background:#f5eefb; }
.makecase-section { background:#f8f4fb; }
.makecase-grid li:nth-child(2),.makecase-grid li:nth-child(3) { background:#f3eaf9; }
.hero-home .hero-card { background:linear-gradient(145deg,rgb(48 18 75 / 86%),rgb(24 9 41 / 94%)),url('assets/kv-square-prism.png') center / cover; }
@media(min-width:1100px) {
 .agenda-section > .container { display:grid; grid-template-columns:260px minmax(0,1fr); gap:64px; align-items:start; }
 .agenda-section > .container > .section-head { position:sticky; top:calc(var(--header-h) + 40px); margin:0; }
 #agenda-title { font-size:3.25rem; }
 .agenda-section > .container > .section-head .section-lede { font-size:1.05rem; line-height:1.9; }
 .agenda-intro-break { display:none; }
}
@media(max-width:700px) {
 .agenda-board { padding-left:24px; }
 .agenda-meta { font-size:.875rem; gap:12px 18px; }
 .agenda-list > div { grid-template-columns:1fr; gap:8px; padding:22px 0; }
 .agenda-list > div::before { left:-31px; top:29px; }
 .agenda-list time { font-size:.9375rem; }
 .agenda-list strong { font-size:1rem; }
 .agenda-list .session-detail { font-size:.875rem; }
 .agenda-block-heading h3 { font-size:1.5rem; }
 .forum-summary-title { font-size:1.05rem; }
 .agenda-section::before { width:200%; left:-80%; }
}

/* Existing plenary breaks: tea and lunch receive coral timeline markers. */
#speakers > .agenda-list > div:nth-child(9)::before,
#speakers > .agenda-list > div:nth-child(14)::before { background:#ff4268; box-shadow:0 0 0 6px rgb(255 66 104 / 16%); }

.agenda-section { overflow:clip; }

/* Registration reference: white canvas, centered heading, pale form surface. */
.register-section { background:#fff; border:0; color:#211346; padding-block:clamp(56px,7vw,100px); }
.register-reference-head { text-align:center; margin:0 auto 36px; max-width:1000px; }
.register-reference-head h2 { color:#211346; font-size:clamp(2rem,3.7vw,3.5rem); font-weight:750; line-height:1.25; letter-spacing:-.02em; margin:0; }
.register-reference-head p { margin:56px 0 0; color:#79648c; font-size:1.0625rem; line-height:1.8; }
.register-section .register-layout { grid-template-columns:minmax(0,800px); justify-content:center; }
.register-section .register-content { background:#fff; color:#211346; border:1px solid #e2e6f1; border-radius:18px; padding:28px; box-shadow:0 12px 44px -22px rgb(55 33 92 / 16%); }
.register-section .pass-block-title { color:#211346; font-size:1.75rem; line-height:1.4; font-weight:750; margin:0 0 12px; }
.register-section .pass-lede { color:#79648c; font-size:.9375rem; line-height:1.8; }
.register-section .pass-inline-msg { color:#79648c; line-height:1.8; }
.register-section .register-z-fields { gap:14px; }
.register-section .pass-grid { gap:14px 16px; align-items:start; }
.register-section .pass-form label { color:#211346; font-size:.875rem; font-weight:650; gap:6px; align-content:start; }
.register-section .pass-form input:not([type='checkbox']):not([type='radio']),
.register-section .pass-form select,.register-section .pass-form textarea { border:1px solid #dce1ef; border-radius:9px; min-height:46px; padding:10px 14px; background:#fff; color:#211346; font-size:1rem; box-shadow:none; }
.register-section .pass-form input:focus,.register-section .pass-form select:focus,.register-section .pass-form textarea:focus { border-color:#8d65ba; outline:none; box-shadow:0 0 0 3px #f1eaf8; }
.register-section .pass-form input::placeholder { color:#81708f; }
.register-section .pass-form label em { color:#bd354a; }
.register-section .pass-field-error, .register-section .pass-form .pass-field-error { margin:2px 0 0; font-size:.8125rem; line-height:1.5; }
.register-section .legal-consent { color:#79648c; font-size:.8125rem; line-height:1.8; }
@media(max-width:600px) {
 .register-reference-head { margin-bottom:28px; }
 .register-reference-head h2 { font-size:1.9rem; }
 .register-reference-head p { margin-top:24px; font-size:.9375rem; }
 .register-section .register-content { border-radius:14px; padding:22px 16px; }
 .register-section .pass-grid { grid-template-columns:minmax(0,1fr); gap:14px; }
 .register-section .pass-block-title { font-size:1.5rem; }
}

/* 支付门槛提示：可点击定位缺项 */
.pass-gate-hint { cursor: pointer; color: var(--accent); text-decoration: underline dotted; text-underline-offset: 3px; }
.pass-gate-hint:hover { color: var(--accent-ink); }

/* 联系我们：2×2 二维码网格（四码同尺寸、间距对齐） */
.footer-contact .qr-cards { display: grid; grid-template-columns: repeat(2, 96px); gap: 14px; margin: 4px 0 0; padding: 0; }
.footer-contact .qr-card { display: grid; gap: 8px; justify-items: stretch; align-content: start; }
.footer-contact .qr-tile { width: 96px; height: 96px; padding: 6px; border: 0; border-radius: 8px; background: #fff; }
.footer-contact .qr-card p { margin: 0; font-size: .6875rem; line-height: 1.4; text-align: center; color: #dfd0eb; white-space: nowrap; }
.footer-contact .qr-tile.is-missing { background: rgb(255 255 255 / 8%); border: 1px dashed rgb(255 255 255 / 35%); display: grid; place-items: center; }
.footer-contact .qr-tile.is-missing img { display: none; }
.footer-contact .qr-tile.is-missing::after { content: "待上传"; font-size: .625rem; letter-spacing: .05em; color: #c9bcd8; }
@media (max-width: 600px) {
  .footer-contact .qr-cards { grid-template-columns: repeat(2, minmax(0, 84px)); gap: 12px; }
  .footer-contact .qr-tile { width: 84px; height: 84px; }
}


/* Restore only WHY, FRAMEWORK and PEOPLE from production design. */
.restored-live { --midnight:#050716; --navy:#25004f; --ink:#1c1047; --blue:#5f1cff; --white:#fff; --paper:#fbf8ff; --muted:#6f5a86; --soft-line:rgb(28 16 71 / 12%); --dark-line:rgb(255 255 255 / 16%); --ember:#ff8b3d; --content:1280px; --radius:8px; --shadow:0 24px 70px rgb(5 7 22 / 16%); padding:124px 0; border:0; }
.restored-live .layout-grid { width:min(var(--content),calc(100% - 48px)); margin:0 auto; display:grid; gap:80px; align-items:center; }
.restored-live .section-copy { position:relative; z-index:1; }
.restored-live .section-copy.narrow { max-width:520px; }
.restored-live .section-copy h2 { margin:0 0 20px; font-size:48px; line-height:1.05; font-weight:750; letter-spacing:-.02em; color:var(--ink); }
.restored-live .section-copy p { margin:0 0 26px; color:var(--muted); font-size:18px; line-height:1.55; font-weight:400; }
.restored-live .section-copy .eyebrow { margin:0 0 12px; font-size:12px; font-weight:750; line-height:1.55; letter-spacing:0; color:var(--blue); }
.restored-live.why-section::before { content:none; }
.restored-live.why-section .section-copy h2,.restored-live.why-section .why-list strong { color:#fff; }
.restored-live.why-section .section-copy p { color:rgb(255 255 255 / 72%); }
.restored-live.why-section .section-copy .eyebrow { color:rgb(255 255 255 / 68%); }
.restored-live .text-link { font-size:16px; font-weight:750; color:var(--blue); text-decoration:none; }
.restored-live .text-link::after { content:' →'; }
.restored-live.why-section .text-link { color:#fff; }
.restored-live .why-list { padding:0; margin:0; border:0; }
.restored-live .image-panel { overflow:hidden; border-radius:8px; box-shadow:var(--shadow); background:#fff; }
.restored-live .framework-grid { padding:0; position:relative; z-index:1; }
.restored-live .framework-grid p { font-size:16px; line-height:1.55; font-weight:400; }
.restored-live .framework-grid h3 { color:var(--ink); font-weight:750; }
.restored-live .identity-panel .identity-card { border:0; box-shadow:none; }
.restored-live .identity-card p { color:#fff; font-weight:400; }
.restored-live .identity-card span { color:#fff; }
.restored-live .video-stage { position:relative; overflow:hidden; border-radius:8px; box-shadow:none; }
.restored-live .video-stage video,.restored-live .video-fallback { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }

.restored-live .image-panel img { width:100%;height:100%;object-fit:cover; }
.restored-live .video-stage .video-fallback { z-index:0; }
.restored-live .video-stage video { z-index:1; }
.restored-live .why-list strong { margin:0;line-height:1.55; }
.restored-live .why-list p { font-size:16px;line-height:1.55; }
.restored-live.why-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #050716 0%, #25004f 56%, #050716 100%);
  min-height: 720px;
  display: flex;
  align-items: center;
}
.restored-live.why-section .layout-grid {
  position: relative;
  z-index: 1;
  grid-template-columns: minmax(0, 0.78fr) minmax(460px, 1.22fr);
}
.restored-live .why-base {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 46%;
  background:
    linear-gradient(180deg, rgba(5, 7, 22, 0) 0%, rgba(5, 7, 22, 0.58) 42%, rgba(5, 7, 22, 0.88) 100%),
    url("assets/hero-main-visual-original.png") center bottom / cover no-repeat;
  opacity: 0.72;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 34%, #000 100%);
  mask-image: linear-gradient(180deg, transparent 0%, #000 34%, #000 100%);
}
.restored-live .why-shape {
  position: absolute;
  z-index: 0;
  pointer-events: none;
}
.restored-live .why-shape-glow {
  right: max(6vw, calc((100vw - var(--content)) / 2 - 24px));
  top: 68px;
  width: min(360px, 34vw);
  opacity: 0.42;
  filter:
    drop-shadow(0 0 28px rgba(125, 45, 255, 0.72))
    drop-shadow(0 0 72px rgba(230, 79, 182, 0.52));
}
.restored-live .why-shape-line {
  right: max(18vw, calc((100vw - var(--content)) / 2 + 180px));
  bottom: 72px;
  width: min(260px, 24vw);
  opacity: 0.34;
  filter:
    drop-shadow(0 0 22px rgba(255, 64, 76, 0.58))
    drop-shadow(0 0 48px rgba(255, 139, 61, 0.3));
}
.restored-live .why-list {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 16px;
}
.restored-live .why-list div {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 8px 16px;
  padding: 20px 0;
  border-top: 1px solid var(--dark-line);
}
.restored-live .why-list span {
  color: var(--ember);
  font-weight: 900;
}
.restored-live .why-list strong {
  font-size: 22px;
}
.restored-live .why-list p {
  grid-column: 2;
  margin: 0;
  color: rgba(255, 255, 255, 0.68);
}
.restored-live.framework-section {
  position: relative;
  overflow: hidden;
  background: var(--white);
}
.restored-live.framework-section .layout-grid {
  grid-template-columns: minmax(0, 0.72fr) minmax(520px, 1.28fr);
}
.restored-live .section-shape {
  position: absolute;
  z-index: 0;
  pointer-events: none;
  opacity: 0.1;
}
.restored-live .section-shape-left {
  left: max(-72px, calc((100vw - var(--content)) / 2 - 150px));
  top: 70px;
  width: 260px;
  transform: rotate(-12deg);
}
.restored-live .section-shape-right {
  right: max(-42px, calc((100vw - var(--content)) / 2 - 130px));
  bottom: 34px;
  width: 240px;
  transform: rotate(18deg);
}
.restored-live .value-photo {
  justify-self: end;
  width: min(620px, 100%);
  aspect-ratio: 16 / 10;
}
.restored-live .value-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(1.04);
}
.restored-live .framework-grid {
  width: min(var(--content), calc(100% - 48px));
  margin: 68px auto 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.restored-live .framework-grid article {
  border-radius: var(--radius);
  background: var(--white);
  border: 1px solid var(--soft-line);
}
.restored-live .framework-grid article {
  min-height: 196px;
  padding: 28px;
}
.restored-live .framework-grid span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.restored-live .framework-grid h3 {
  margin: 14px 0 10px;
  font-size: 21px;
  line-height: 1.2;
}
.restored-live .framework-grid p {
  margin: 0;
  color: var(--muted);
}


.restored-live.people-section {
  background: linear-gradient(180deg, #ffffff, var(--paper));
}
.restored-live.people-section .layout-grid {
  grid-template-columns: minmax(0, 0.68fr) minmax(560px, 1.32fr);
}
.restored-live .identity-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}
.restored-live .identity-panel > .identity-video {
  grid-column: 1 / -1;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  min-height: 0;
  object-fit: cover;
  border-radius: var(--radius);
  filter: saturate(1.12);
  background: var(--midnight);
}
.restored-live .identity-panel .identity-card {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 156px;
  padding: 24px;
  border-radius: var(--radius);
  color: var(--white);
  overflow: hidden;
  background-position: center;
  background-size: cover;
}
.restored-live .identity-panel .passenger-card {
  background-image:
    linear-gradient(180deg, rgba(5, 7, 22, 0.05) 8%, rgba(5, 7, 22, 0.9) 100%),
    url("assets/passenger-audience-group.png");
}
.restored-live .identity-panel .crew-card {
  background-image:
    linear-gradient(180deg, rgba(5, 7, 22, 0.05) 8%, rgba(5, 7, 22, 0.9) 100%),
    url("assets/crew-audience-group.png");
}
.restored-live .identity-panel span {
  font-size: 12px;
  font-weight: 900;
}
.restored-live .identity-panel p {
  margin: 12px 0 0;
  font-size: 22px;
  line-height: 1.2;
}


@media(max-width:1000px) {
 .restored-live { padding:80px 0; }
 .restored-live .layout-grid { grid-template-columns:minmax(0,1fr); gap:36px; }
 .restored-live .value-photo { justify-self:start; width:100%; max-width:740px; }
 .restored-live .framework-grid { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:44px; }
 .restored-live .section-copy h2 { font-size:38px; }
}
@media(max-width:600px) {
 .restored-live { padding:60px 0; }
 .restored-live .layout-grid,.restored-live .framework-grid { width:calc(100% - 40px); }
 .restored-live .section-copy h2 { font-size:32px; line-height:1.2; }
 .restored-live .section-copy p { font-size:16px; }
 .restored-live .framework-grid { grid-template-columns:minmax(0,1fr); }
 .restored-live .framework-grid article { min-height:0; padding:24px; }
 .restored-live .identity-panel { grid-template-columns:minmax(0,1fr); }
 .restored-live .identity-panel .identity-card { min-height:150px; }
 .restored-live .why-list div { grid-template-columns:28px minmax(0,1fr); gap:8px 12px; }
}

/* ==========================================================================
   移动端适配补丁：why / framework / people 三段固定最小列宽导致窄屏溢出
   1. 双列塌陷规则提升到与原始双列声明同等特异性
   2. 手机端字号、间距、装饰图形收敛
   3. about 指标条 2×2 时左右内边距对齐
   ========================================================================== */

@media (max-width: 1000px) {
  .restored-live.why-section .layout-grid,
  .restored-live.framework-section .layout-grid,
  .restored-live.people-section .layout-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }
  .restored-live.why-section {
    min-height: 0;
    display: block;
  }
  .restored-live .value-photo { justify-self: stretch; max-width: 100%; }
  .restored-live .layout-grid > *,
  .restored-live .framework-grid > * { min-width: 0; }
}

@media (max-width: 600px) {
  .restored-live .layout-grid { gap: 28px; }
  .restored-live .section-copy h2 { font-size: clamp(1.6rem, 7.6vw, 2rem); line-height: 1.24; }
  .restored-live .section-copy p { font-size: 1rem; line-height: 1.75; }
  .restored-live .section-copy.narrow { max-width: none; }
  .restored-live .section-copy .eyebrow { margin-bottom: 10px; }

  .restored-live .why-list div { padding: 16px 0; }
  .restored-live .why-list strong { font-size: 1.125rem; }
  .restored-live .why-list p { font-size: .9375rem; line-height: 1.7; }
  .restored-live .why-base { height: 58%; opacity: .55; }
  .restored-live .why-shape-glow { top: 16px; width: 168px; opacity: .28; }
  .restored-live .why-shape-line { display: none; }

  .restored-live.framework-section .value-photo { aspect-ratio: 4 / 3; }
  .restored-live.framework-section .framework-grid { margin-top: 40px; gap: 14px; }
  .restored-live .framework-grid article { min-height: 0; padding: 24px 20px; }
  .restored-live .framework-grid h3 { margin-top: 10px; }

  .restored-live .identity-panel { gap: 14px; }
  .restored-live .identity-panel .identity-card { min-height: 140px; padding: 20px; }
  .restored-live .identity-panel p { font-size: 1.125rem; }
}

@media (max-width: 900px) {
  #about .metrics-row > div { padding: 20px 10px; }
  #about .metrics-row > div:nth-child(odd) { padding-left: 0; border-left: 0; }
  #about .metrics-row > div:nth-child(even) { padding-right: 0; }
}

/* VENUE：图片卡下方的地点说明 */
.venue-figure { margin: 0; display: grid; gap: 14px; width: 100%; justify-self: end; }
.venue-caption { margin: 0; color: var(--muted); font-size: .9375rem; line-height: 1.6; letter-spacing: .02em; }
.venue-caption strong { color: var(--ink); font-weight: 700; letter-spacing: .04em; }
@media (max-width: 760px) { .venue-caption { text-align: center; } }

/* 注册区：主标题下的小字副行 */
.register-reference-head .register-kicker { margin: 12px 0 0; color: var(--ink); font-size: clamp(1rem, 1.35vw, 1.125rem); font-weight: 600; letter-spacing: .01em; line-height: 1.6; }
.register-reference-head .register-kicker + p { margin-top: 18px; }

/* 页脚二维码：名字变长后允许换行、卡片自适应宽度 */
.footer-contact .qr-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; max-width: 232px; }
.footer-contact .qr-tile { width: 100%; height: auto; aspect-ratio: 1; }
.footer-contact .qr-card p { white-space: normal; text-wrap: balance; font-size: .65625rem; line-height: 1.45; letter-spacing: 0; min-height: 2.9em; }
@media (max-width: 1100px) { .footer-contact .qr-card p { font-size: .625rem; } }
