/* R68 商务邀请函 · 深空商务 P0 */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Inter', sans-serif;
  background: var(--bg, #0A0E17); color: var(--text, #E8ECF1); line-height: 1.55;
  padding-bottom: calc(9.5rem + env(safe-area-inset-bottom));
}
button, input, select, textarea { font: inherit; }
a { color: inherit; text-decoration: none; }

body[data-theme='deep-space'] { --primary:#1E3A5F; --accent:#C9A96E; --bg:#0A0E17; --bg-card:#1A2332; --text:#E8ECF1; --text-muted:#8892A4; --border:#1E2D42; }
body[data-theme='black-gold'] { --primary:#1A1A1A; --accent:#D4A843; --bg:#0D0D0D; --bg-card:#1C1C1C; --text:#F5F0E8; --text-muted:#B8B0A0; --border:#2A2A2A; }
body[data-theme='tech-blue'] { --primary:#1A56DB; --accent:#10B981; --bg:#0B1120; --bg-card:#162240; --text:#E2E8F0; --text-muted:#94A3B8; --border:#1E3A5F; }
body[data-theme='china-red'] { --primary:#C41E3A; --accent:#D4A843; --bg:#1A0A0A; --bg-card:#2D1515; --text:#FFF5E6; --text-muted:#D4B896; --border:#3D1A1A; }

body[data-theme='minimal-light'] { --primary:#1E293B; --accent:#2563EB; --bg:#F8FAFC; --bg-card:#FFFFFF; --text:#0F172A; --text-muted:#64748B; --border:#E2E8F0; }

.header { position: sticky; top: 0; z-index: 200; background: rgba(10,14,23,.92); backdrop-filter: blur(10px); border-bottom: 1px solid var(--border); }
.header__inner { max-width: 1100px; margin: 0 auto; padding: .65rem 1rem; display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.header__logo { font-weight: 900; color: var(--accent); font-size: .95rem; }
.header__nav { display: flex; flex-wrap: wrap; gap: .5rem; flex: 1; }
.header__link { font-size: .75rem; color: var(--text-muted); padding: .35rem .5rem; border-radius: 6px; }
.header__link:hover { color: var(--accent); }
.theme-switch { display: flex; gap: .3rem; }
.theme-dot { width: 22px; height: 22px; border-radius: 50%; border: 2px solid transparent; cursor: pointer; }
.theme-dot.active { border-color: var(--accent); }

.page { max-width: 1100px; margin: 0 auto; }
.section { padding: 2rem 1rem; scroll-margin-top: 4rem; }
.section__title { font-size: 1.2rem; font-weight: 900; margin-bottom: .35rem; }
.section__sub { font-size: .82rem; color: var(--text-muted); margin-bottom: 1rem; }

.btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: .7rem 1.2rem; border-radius: 10px; font-weight: 600; font-size: .88rem;
  border: none; cursor: pointer; min-height: 44px;
}
.btn-primary { background: var(--accent); color: #0A0E17; }
.btn-outline { background: transparent; border: 1.5px solid color-mix(in srgb, var(--accent) 50%, var(--border)); color: var(--text); }
.btn-block { width: 100%; margin-top: .4rem; }
.btn[disabled] { opacity: .5; pointer-events: none; }

.hero { position: relative; min-height: 92vh; display: flex; align-items: center; overflow: hidden; }
.hero__particles { position: absolute; inset: 0; z-index: 0; }
.hero__gradient { position: absolute; inset: 0; background: radial-gradient(ellipse 80% 60% at 50% 0%, color-mix(in srgb, var(--primary) 35%, transparent), var(--bg)); z-index: 1; }
.hero__content { position: relative; z-index: 2; padding: 2rem 1.25rem; width: 100%; text-align: center; }
.hero__badge { color: var(--accent); font-weight: 700; font-size: .78rem; margin-bottom: .5rem; }
.hero__title { font-size: clamp(1.4rem, 5vw, 2.4rem); font-weight: 900; line-height: 1.2; margin-bottom: .35rem; }
.hero__subtitle { font-size: .85rem; color: var(--text-muted); margin-bottom: .5rem; }
.hero__tagline { font-size: 1rem; color: var(--accent); font-weight: 600; margin-bottom: 1rem; }
.hero__greeting { font-size: .88rem; color: var(--accent); margin-bottom: .5rem; font-weight: 600; }
.hero__meta { display: flex; flex-direction: column; gap: .35rem; font-size: .82rem; color: var(--text-muted); margin-bottom: 1.25rem; }
.hero__btns { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; margin-bottom: 1.5rem; }
.hero__scroll { font-size: 1.2rem; opacity: .5; animation: bounce 2s infinite; margin-top: 1rem; }
@keyframes bounce { 0%,100%{transform:translateY(0)} 50%{transform:translateY(8px)} }

.countdown { margin-top: 1rem; padding: 1rem; background: color-mix(in srgb, var(--bg-card) 80%, transparent); border: 1px solid var(--border); border-radius: 14px; max-width: 420px; margin-left: auto; margin-right: auto; }
.countdown__label { font-size: .72rem; color: var(--accent); margin-bottom: .5rem; }
.countdown__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .5rem; }
.countdown__item span { display: block; font-size: 1.5rem; font-weight: 900; color: var(--accent); font-variant-numeric: tabular-nums; }
.countdown__item em { font-size: .65rem; color: var(--text-muted); font-style: normal; }
.countdown__expired { font-size: 1rem; color: var(--accent); font-weight: 700; }

.stats-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .65rem; margin-bottom: 1.25rem; }
@media (min-width:640px){ .stats-grid { grid-template-columns: repeat(4,1fr); } }
.stat-card { padding: 1rem; background: var(--bg-card); border: 1px solid var(--border); border-radius: 12px; text-align: center; }
.stat-card__val { font-size: 1.4rem; font-weight: 900; color: var(--accent); }
.stat-card__lbl { font-size: .72rem; color: var(--text-muted); margin-top: .25rem; }

.highlights-grid { display: grid; gap: .65rem; }
@media (min-width:640px){ .highlights-grid { grid-template-columns: repeat(2,1fr); } }
.highlight-card { padding: 1rem; background: var(--bg-card); border: 1px solid var(--border); border-radius: 12px; }
.highlight-card__icon { font-size: 1.5rem; }
.highlight-card h3 { font-size: .9rem; margin: .35rem 0; }
.highlight-card p { font-size: .78rem; color: var(--text-muted); }

.tickets-grid { display: grid; gap: .75rem; }
@media (min-width:768px){ .tickets-grid { grid-template-columns: repeat(3,1fr); } }
.ticket-card { position: relative; padding: 1rem; background: var(--bg-card); border: 1.5px solid var(--border); border-radius: 14px; cursor: pointer; transition: border-color .2s, transform .2s; }
.ticket-card.active { border-color: var(--accent); transform: translateY(-2px); }
.ticket-card__badge { position: absolute; top: .65rem; right: .65rem; font-size: .62rem; padding: .2rem .45rem; background: var(--accent); color: #0A0E17; border-radius: 999px; font-weight: 700; }
.ticket-card h3 { font-size: .95rem; margin-bottom: .35rem; }
.ticket-card__price { font-size: 1.1rem; font-weight: 900; color: var(--accent); margin-bottom: .5rem; }
.ticket-card__price s { font-size: .75rem; color: var(--text-muted); font-weight: 400; margin-left: .35rem; }
.ticket-card ul { list-style: none; font-size: .72rem; color: var(--text-muted); }
.ticket-card li { margin: .2rem 0; }
.ticket-card__remain { font-size: .68rem; color: var(--accent); margin-top: .5rem; }

.venue-card { padding: 1rem; background: var(--bg-card); border: 1px solid var(--border); border-radius: 14px; font-size: .82rem; }
.venue-card p { margin-bottom: .45rem; }
.venue-card__addr { color: var(--text-muted); }
.venue-extra { margin-top: .75rem; font-size: .78rem; color: var(--text-muted); }
.venue-extra summary { cursor: pointer; color: var(--accent); font-weight: 600; }

.agenda-tabs { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: 1rem; position: sticky; top: 3.5rem; z-index: 10; background: var(--bg); padding: .35rem 0; }
.agenda-tab { padding: .5rem .75rem; border-radius: 999px; border: 1px solid var(--border); background: var(--bg-card); color: var(--text); font-size: .72rem; cursor: pointer; }
.agenda-tab.active { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 12%, var(--bg-card)); font-weight: 700; }
.agenda-timeline { position: relative; padding-left: 1rem; border-left: 2px solid var(--border); }
.agenda-item { position: relative; padding: 0 0 1rem 1rem; }
.agenda-item.featured .agenda-item__body { border-left: 3px solid var(--accent); }
.agenda-item__dot { position: absolute; left: -1.35rem; top: .25rem; width: 10px; height: 10px; border-radius: 50%; }
.agenda-item__time { font-size: .72rem; color: var(--accent); font-weight: 700; margin-bottom: .25rem; }
.agenda-item__type { font-size: .65rem; font-weight: 700; }
.agenda-item h4 { font-size: .88rem; margin: .15rem 0; }
.agenda-item p { font-size: .72rem; color: var(--text-muted); }

.speakers-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .65rem; }
@media (min-width:640px){ .speakers-grid { grid-template-columns: repeat(4,1fr); } }
.speaker-card { text-align: center; padding: 1rem .65rem; background: var(--bg-card); border: 1px solid var(--border); border-radius: 12px; cursor: pointer; color: inherit; width: 100%; transition: transform .2s, border-color .2s; }
.speaker-card:hover { border-color: var(--accent); transform: translateY(-2px); }
.speaker-card.featured { grid-column: span 2; }
@media (min-width:640px){ .speaker-card.featured { grid-column: span 1; } }
.speaker-card__avatar { width: 56px; height: 56px; border-radius: 50%; margin: 0 auto .5rem; background: linear-gradient(135deg, var(--primary), var(--accent)); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 1.2rem; }
.speaker-card h3 { font-size: .85rem; }
.speaker-card p { font-size: .72rem; color: var(--text-muted); }
.speaker-card__co { margin-top: .15rem; }

.sponsor-tier { margin-bottom: 1rem; }
.sponsor-tier__label { font-size: .78rem; color: var(--accent); margin-bottom: .45rem; }
.sponsor-tier--diamond .sponsor-tier__label { color: #C9A96E; }
.sponsor-tier--platinum .sponsor-tier__label { color: #C0C0C0; }
.sponsor-tier--gold .sponsor-tier__label { color: #CD7F32; }
.sponsor-logos-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem; }
@media (min-width:640px){ .sponsor-logos-grid { grid-template-columns: repeat(4,1fr); } }
.sponsor-logo {
  display: flex; align-items: center; gap: .5rem; padding: .65rem .75rem;
  background: color-mix(in srgb, #fff 8%, var(--bg-card)); border: 1px solid var(--border);
  border-radius: 10px; transition: filter .3s, transform .25s, border-color .25s;
}
a.sponsor-logo { text-decoration: none; color: inherit; }
.sponsor-logo--gray { filter: grayscale(100%); opacity: .72; }
.sponsor-logo:hover { filter: none; opacity: 1; transform: translateY(-2px); border-color: var(--accent); }
.sponsor-logo__mark {
  width: 36px; height: 36px; border-radius: 8px; display: flex; align-items: center; justify-content: center;
  font-size: .72rem; font-weight: 800; color: #fff; background: var(--logo-color, var(--primary)); flex-shrink: 0;
}
.sponsor-logo__name { font-size: .72rem; font-weight: 600; }
.sponsor-swiper { padding-bottom: 1.75rem; }
.sponsor-swiper .swiper-pagination-bullet { background: var(--accent); opacity: .4; }
.sponsor-swiper .swiper-pagination-bullet-active { opacity: 1; }
.organizer { font-size: .72rem; color: var(--text-muted); margin-top: 1rem; text-align: center; }

/* P1 · M10 数据看板 */
.stats-dashboard { margin-bottom: 1rem; padding: 1rem; background: var(--bg-card); border: 1px solid var(--border); border-radius: 14px; }
.stats-dashboard__head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .35rem; margin-bottom: .65rem; font-size: .82rem; font-weight: 700; }
.stats-dashboard__head small { font-weight: 400; font-size: .68rem; color: var(--text-muted); }
.stats-progress { height: 8px; background: color-mix(in srgb, var(--border) 80%, transparent); border-radius: 999px; overflow: hidden; }
.stats-progress__bar { height: 100%; background: linear-gradient(90deg, var(--primary), var(--accent)); border-radius: 999px; transition: width 1.2s ease; }
.stats-progress__lbl { font-size: .68rem; color: var(--text-muted); margin: .4rem 0 .65rem; }
.stats-grid--p1 { margin-top: .25rem; }

/* P1 · M11 往期回顾 */
.past-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .65rem; }
@media (min-width:768px){ .past-grid { grid-template-columns: repeat(4,1fr); } }
.past-card { background: var(--bg-card); border: 1px solid var(--border); border-radius: 12px; overflow: hidden; cursor: pointer; transition: transform .25s; }
.past-card:hover { transform: translateY(-3px); }
.past-card__visual { position: relative; height: 100px; display: flex; align-items: flex-end; padding: .5rem; }
.past-card__year { font-size: .72rem; font-weight: 800; color: #fff; text-shadow: 0 1px 4px rgba(0,0,0,.4); }
.past-card__play { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 36px; height: 36px; border-radius: 50%; background: rgba(0,0,0,.45); color: #fff; display: flex; align-items: center; justify-content: center; font-size: .75rem; }
.past-card h3 { font-size: .82rem; padding: .55rem .65rem .15rem; }
.past-card p { font-size: .68rem; color: var(--text-muted); padding: 0 .65rem .45rem; }
.past-card a { display: block; font-size: .68rem; color: var(--accent); padding: 0 .65rem .65rem; }

/* P1 · M12 弹幕墙 */
.barrage-panel {
  position: fixed; left: 0; right: 0; bottom: calc(4.8rem + env(safe-area-inset-bottom)); z-index: 150;
  background: rgba(10,14,23,.88); backdrop-filter: blur(8px); border-top: 1px solid var(--border);
  padding: .45rem .75rem .55rem;
}
.barrage-panel__toolbar { display: flex; justify-content: space-between; align-items: center; font-size: .72rem; margin-bottom: .35rem; }
.barrage-panel__toggle { padding: .2rem .55rem; border-radius: 999px; border: 1px solid var(--border); background: var(--bg-card); color: var(--text); font-size: .65rem; cursor: pointer; }
.barrage-track { position: relative; height: 32px; overflow: hidden; margin-bottom: .4rem; }
.barrage-item-v2 {
  position: absolute; left: 100%; top: 50%; transform: translateY(-50%);
  display: inline-flex; align-items: center; gap: .35rem; white-space: nowrap;
  padding: .25rem .55rem; border-radius: 999px; font-size: .68rem;
  background: color-mix(in srgb, var(--accent) 15%, var(--bg-card)); border: 1px solid color-mix(in srgb, var(--accent) 35%, var(--border));
  animation: barrageSlide var(--barrage-speed, 9s) linear forwards;
}
.barrage-item-v2.highlight { border-color: var(--accent); box-shadow: 0 0 12px color-mix(in srgb, var(--accent) 40%, transparent); z-index: 2; }
.barrage-item-v2__av { width: 22px; height: 22px; border-radius: 50%; background: var(--accent); color: #0A0E17; display: inline-flex; align-items: center; justify-content: center; font-size: .62rem; font-weight: 800; }
@keyframes barrageSlide { from { left: 100%; } to { left: -120%; } }
.barrage-form { display: flex; gap: .35rem; flex-wrap: wrap; }
.barrage-form input { flex: 1; min-width: 100px; padding: .4rem .55rem; border-radius: 8px; border: 1px solid var(--border); background: var(--bg-card); color: var(--text); font-size: .72rem; min-height: 36px; }
.barrage-form .btn { padding: .4rem .65rem; min-height: 36px; font-size: .72rem; }

/* P2 · 路演 / 直播 / 翻页 / 集成 */
.mp-banner {
  position: sticky; top: 3.2rem; z-index: 190;
  padding: .4rem 1rem; text-align: center; font-size: .72rem; font-weight: 600;
  background: color-mix(in srgb, var(--accent) 18%, var(--bg-card));
  border-bottom: 1px solid var(--border);
}
.section--pitch { border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); background: color-mix(in srgb, var(--primary) 8%, var(--bg)); }
.pitch-projects { display: grid; gap: .75rem; margin-bottom: 1rem; }
@media (min-width:768px){ .pitch-projects { grid-template-columns: repeat(3,1fr); } }
.pitch-card { padding: 1rem; background: var(--bg-card); border: 1px solid var(--border); border-radius: 12px; }
.pitch-card h3 { font-size: .95rem; margin-bottom: .25rem; }
.pitch-card__tag { font-size: .78rem; color: var(--text-muted); margin-bottom: .5rem; }
.pitch-card__metrics { display: flex; flex-wrap: wrap; gap: .35rem; margin-bottom: .65rem; }
.pitch-card__metrics span { font-size: .65rem; padding: .2rem .45rem; border-radius: 999px; background: color-mix(in srgb, var(--accent) 12%, var(--bg)); border: 1px solid var(--border); }
.pitch-team h3, .pitch-schedule h3 { font-size: .88rem; margin: 1rem 0 .5rem; color: var(--accent); }
.pitch-team-grid { display: grid; gap: .5rem; }
@media (min-width:640px){ .pitch-team-grid { grid-template-columns: repeat(3,1fr); } }
.pitch-team-card { padding: .75rem; background: var(--bg-card); border: 1px solid var(--border); border-radius: 10px; text-align: center; font-size: .78rem; }
.pitch-team-card__av { width: 40px; height: 40px; border-radius: 50%; margin: 0 auto .35rem; background: var(--accent); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 800; }
.pitch-team-card span { display: block; color: var(--text-muted); font-size: .68rem; margin: .15rem 0; }
.pitch-team-card p { font-size: .65rem; color: var(--text-muted); }
.pitch-schedule ul { list-style: none; font-size: .78rem; }
.pitch-schedule li { padding: .45rem 0; border-bottom: 1px solid var(--border); }
.pitch-schedule li span { color: var(--accent); font-weight: 700; margin-right: .35rem; }

.live-embed { width: 100%; height: 220px; border: 1px solid var(--border); border-radius: 12px; background: #000; }
@media (min-width:768px){ .live-embed { height: 360px; } }
.live-placeholder { height: 220px; border-radius: 12px; border: 1px dashed var(--border); display: flex; flex-direction: column; align-items: center; justify-content: center; background: var(--bg-card); margin-bottom: .65rem; }
.live-placeholder span { font-size: 2rem; color: var(--accent); margin-bottom: .35rem; }
.live-placeholder p { font-size: .85rem; }
.live-placeholder__sub { font-size: .72rem; color: var(--text-muted); }

body.mode-swipe { overflow: hidden; height: 100vh; }
body.mode-swipe .page--swipe { height: calc(100vh - 8rem); overflow-y: auto; scroll-snap-type: y mandatory; scroll-behavior: smooth; }
body.mode-swipe .page--swipe > .hero,
body.mode-swipe .page--swipe > .section { scroll-snap-align: start; scroll-snap-stop: always; min-height: calc(100vh - 8rem); }
.swipe-hint { position: fixed; top: 4.5rem; left: 50%; transform: translateX(-50%); z-index: 220; display: flex; align-items: center; gap: .5rem; padding: .35rem .65rem; background: rgba(10,14,23,.9); border: 1px solid var(--border); border-radius: 999px; font-size: .68rem; }
.swipe-hint button { padding: .2rem .45rem; border-radius: 999px; border: 1px solid var(--border); background: var(--bg-card); color: var(--text); font-size: .62rem; cursor: pointer; }

.calendly-modal .modal__box--wide { max-width: 520px; width: 100%; }
.calendly-iframe-wrap { position: relative; width: 100%; min-height: 480px; border-radius: 10px; overflow: hidden; border: 1px solid var(--border); }
.calendly-iframe-wrap iframe { width: 100%; height: 480px; border: 0; }

.share-page { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 2rem 1.25rem; }
.rsvp-steps { display: flex; gap: .5rem; margin-bottom: 1rem; font-size: .78rem; }
.rsvp-steps span.active { border-color: var(--accent); color: var(--accent); font-weight: 700; }
.rsvp-steps span.done { opacity: .6; }
.rsvp-form label { display: block; font-size: .78rem; font-weight: 600; margin-bottom: .65rem; }
.rsvp-form input, .rsvp-form select { width: 100%; margin-top: .3rem; padding: .55rem .7rem; border-radius: 8px; border: 1px solid var(--border); background: color-mix(in srgb, var(--bg-card) 90%, #000); color: var(--text); min-height: 44px; }
.rsvp-success { text-align: center; padding: 2rem 1rem; background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; }
.rsvp-success__icon { width: 64px; height: 64px; border-radius: 50%; background: var(--accent); color: #0A0E17; font-size: 2rem; display: flex; align-items: center; justify-content: center; margin: 0 auto .75rem; font-weight: 900; }

.modal { position: fixed; inset: 0; z-index: 500; display: flex; align-items: center; justify-content: center; padding: 1rem; }
.modal[hidden] { display: none; }
.modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.65); }
.modal__box { position: relative; z-index: 1; width: 100%; max-width: 400px; background: var(--bg-card); border: 1px solid var(--border); border-radius: 14px; padding: 1.25rem; max-height: 85vh; overflow-y: auto; }
.modal__close { position: absolute; top: .5rem; right: .65rem; background: none; border: none; font-size: 1.5rem; color: var(--text-muted); cursor: pointer; }
.speaker-modal__avatar { width: 72px; height: 72px; border-radius: 50%; margin: 0 auto .65rem; background: var(--accent); color: #0A0E17; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; font-weight: 900; }
.speaker-modal__bio { font-size: .82rem; color: var(--text-muted); margin: .75rem 0 1rem; line-height: 1.6; }

.floating-cta {
  position: fixed; left: 0; right: 0; bottom: calc(4.5rem + env(safe-area-inset-bottom)); z-index: 180;
  display: flex; align-items: center; justify-content: space-between; gap: .75rem;
  padding: .55rem 1rem; background: rgba(10,14,23,.95); border-top: 1px solid var(--border);
  backdrop-filter: blur(10px); transition: transform .3s, opacity .3s;
}
.floating-cta.hidden { transform: translateY(120%); opacity: 0; pointer-events: none; }
.floating-cta__info { font-size: .78rem; }
.floating-cta__info strong { color: var(--accent); }

.rsvp-steps span { padding: .35rem .65rem; border-radius: 999px; background: var(--bg-card); border: 1px solid var(--border); color: var(--text-muted); }
.share-card { max-width: 420px; width: 100%; padding: 1.5rem; background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; text-align: center; }
.share-card h1 { font-size: 1.15rem; font-weight: 900; margin-bottom: .5rem; }
.share-card__desc { font-size: .85rem; color: var(--text-muted); margin-bottom: 1rem; }
.poster-wrap { margin: .75rem 0; overflow: auto; max-height: 50vh; }
.poster-wrap canvas { max-width: 100%; height: auto; border-radius: 10px; border: 1px solid var(--border); }

.contact-footer {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 300;
  padding: .65rem 1rem calc(.65rem + env(safe-area-inset-bottom));
  background: rgba(10,14,23,.95); backdrop-filter: blur(12px); border-top: 1px solid var(--border);
}
.contact-footer__btns { display: flex; gap: .5rem; max-width: 480px; margin: 0 auto .35rem; }
.contact-footer__cta, .contact-footer__btn {
  flex: 1; text-align: center; padding: .55rem .4rem; border-radius: 8px;
  font-size: .78rem; font-weight: 600; min-height: 44px; display: flex; align-items: center; justify-content: center;
}
.contact-footer__cta { background: #c41e1e !important; color: #fff !important; }
.contact-footer__btn { background: var(--bg-card); color: var(--text); border: 1px solid var(--border); cursor: pointer; }
.contact-footer__brand { text-align: center; font-size: .62rem; color: var(--text-muted); }
