:root {
  --ink: #2e2e38;
  --ink-2: #202027;
  --blue: #1999fa;
  --blue-dark: #0873bd;
  --gray: #70707c;
  --line: #ccccd4;
  --paper: #ffffff;
  --mist: #f2f5f8;
  --pale: #e9f5fb;
  --quiet: #f7f8fa;
  --text: #17171d;
  --muted: #656571;
  --topbar: 58px;
  --radius: 4px;
}

* { box-sizing: border-box; }
html { scroll-behavior: auto; scroll-padding-top: calc(var(--topbar) + 8px); }
body {
  margin: 0;
  color: var(--text);
  background: var(--paper);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;
  font-size: 17px;
  line-height: 1.65;
  letter-spacing: 0;
  overflow-x: hidden;
}
button, a { font: inherit; }
button { letter-spacing: 0; }
a { color: inherit; }
.wrap { width: min(1180px, calc(100% - 64px)); margin: 0 auto; }
.nowrap { white-space: nowrap; }

.site-nav {
  position: sticky;
  top: 0;
  z-index: 100;
  height: var(--topbar);
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid #dedee4;
  backdrop-filter: blur(14px);
}
.topnav {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  overflow-x: auto;
  scrollbar-width: none;
  padding: 0 20px;
}
.topnav::-webkit-scrollbar { display: none; }
.topnav a {
  flex: 0 0 auto;
  padding: 8px 13px;
  color: #5f5f69;
  font-size: 14px;
  line-height: 1;
  text-decoration: none;
  border-bottom: 2px solid transparent;
}
.topnav a.active { color: var(--blue-dark); border-bottom-color: var(--blue); font-weight: 700; }
.progress { position: fixed; z-index: 110; top: var(--topbar); left: 0; right: 0; height: 2px; pointer-events: none; }
.progress span { display: block; width: 0; height: 100%; background: var(--blue); }

.hero {
  position: relative;
  height: calc(100vh - var(--topbar) - 34px);
  min-height: 650px;
  max-height: 900px;
  overflow: hidden;
  color: #fff;
  background: var(--ink);
}
.hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-shade { position: absolute; inset: 0; background: rgba(18,18,24,.56); }
.hero-inner { position: relative; z-index: 2; height: 100%; display: flex; align-items: center; padding: 48px 0 96px; }
.hero-copy { width: min(860px, 72%); }
.hero-brand { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 700; margin-bottom: 18px; }
.hero-brand i { width: 10px; height: 10px; background: var(--blue); border-radius: 50%; box-shadow: 0 0 0 5px rgba(25,153,250,.18); }
.hero-topic { margin: 0 0 8px; color: #79c8ff; font-weight: 800; font-size: 22px; }
.hero h1 { margin: 0; font-size: 51px; line-height: 1.14; font-weight: 850; letter-spacing: 0; }
.hero h1 span { color: #fff; white-space: nowrap; }
.hero-lead { max-width: 650px; margin: 22px 0 0; color: rgba(255,255,255,.9); font-size: 18px; line-height: 1.8; }
.hero-voice { position: relative; margin: 26px 0 0; max-width: 560px; padding: 16px 20px; color: var(--ink); background: #fff; border: 0; border-radius: var(--radius); }
.hero-voice::after { content: ""; position: absolute; left: 22px; bottom: -10px; border-width: 10px 10px 0 0; border-style: solid; border-color: #fff transparent transparent transparent; }
.hero-voice span { display: block; font-weight: 700; }
.hero-voice small { display: block; margin-top: 5px; color: var(--blue-dark); font-size: 12px; font-weight: 700; }
.hero-route { position: absolute; z-index: 2; left: 50%; bottom: 22px; transform: translateX(-50%); width: min(1180px, calc(100% - 64px)); display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; font-size: 14px; font-weight: 700; }
.hero-route i { height: 2px; background: rgba(255,255,255,.75); position: relative; }
.hero-route i::after { content: ""; position: absolute; right: 0; top: -4px; width: 8px; height: 8px; border-top: 2px solid #fff; border-right: 2px solid #fff; transform: rotate(45deg); }

.copyright { background: #f0f1f3; color: #777781; font-size: 11px; line-height: 1.5; padding: 9px 0; }
.band { position: relative; padding: 94px 0; scroll-margin-top: calc(var(--topbar) + 4px); }
.band.white { background: #fff; }
.band.mist { background: var(--mist); }
.band.pale { background: var(--pale); }
.band.ink { color: #fff; background: var(--ink); }
.section-head { display: block; margin-bottom: 38px; }
.section-head .section-kicker { display: table; margin: 0 0 13px; padding: 6px 11px; color: var(--blue-dark); border: 1px solid rgba(25,153,250,.55); font-size: 13px; line-height: 1.2; font-weight: 800; }
.section-head h2 { margin: 0; max-width: 1080px; font-size: 37px; line-height: 1.24; font-weight: 850; letter-spacing: 0; text-wrap: balance; }
.section-head h2 br { display: none; }
.section-head .summary { max-width: 900px; margin: 14px 0 0; color: var(--muted); line-height: 1.8; }
.section-head.compact h2, .section-head.narrow h2 { max-width: 1080px; }
.section-head.inverse .section-kicker { color: #9bd7ff; border-color: rgba(155,215,255,.55); }
.section-head.inverse h2 { color: #fff; }
.section-head.inverse .summary { color: rgba(255,255,255,.72); }

.first-choice { display: grid; grid-template-columns: 1fr 220px 1.25fr; align-items: stretch; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.choice-not-yet, .choice-can { padding: 28px 30px; }
.choice-not-yet { background: var(--quiet); }
.choice-not-yet small, .choice-can small { color: var(--muted); font-weight: 700; }
.choice-not-yet h3, .choice-can h3 { margin: 8px 0 10px; font-size: 25px; line-height: 1.35; }
.choice-not-yet p { margin: 0 0 16px; color: var(--muted); }
.choice-not-yet > span { display: inline-block; margin: 4px 4px 0 0; padding: 5px 8px; color: var(--muted); font-size: 13px; border: 1px solid var(--line); background: #fff; }
.choice-turn { display: grid; place-content: center; padding: 24px; color: #fff; text-align: center; background: var(--ink); }
.choice-turn small { color: rgba(255,255,255,.66); }
.choice-turn b { margin: 13px 0 8px; color: #8ed1ff; font-size: 26px; line-height: 1.35; }
.choice-turn i { color: #8ed1ff; font-style: normal; font-size: 28px; }
.choice-can { border-left: 4px solid var(--blue); background: #fff; }
.choice-can ul { display: grid; gap: 10px; margin: 16px 0 0; padding: 0; list-style: none; }
.choice-can li { padding-top: 10px; border-top: 1px solid var(--line); }
.choice-can li b, .choice-can li span { display: block; }
.choice-can li span { color: var(--muted); font-size: 14px; }

.confirm-strip { display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #fff; }
.confirm-strip article { min-height: 166px; padding: 22px 18px; border-right: 1px solid var(--line); }
.confirm-strip article:last-child { border-right: 0; }
.confirm-strip small { display: block; color: var(--blue-dark); font-weight: 800; }
.confirm-strip b { display: block; margin-top: 18px; line-height: 1.45; }
.confirm-strip p { margin: 8px 0 0; color: var(--muted); font-size: 14px; line-height: 1.6; }

.before-meeting { display: grid; grid-template-columns: 1fr 40px 1fr 40px 1fr 180px; gap: 8px; align-items: stretch; }
.before-meeting article { padding: 24px; border-top: 3px solid var(--blue); background: var(--quiet); }
.before-meeting article span { color: var(--blue-dark); font-size: 13px; font-weight: 800; }
.before-meeting article small { display: block; color: var(--muted); margin-top: 16px; }
.before-meeting article b { display: block; margin-top: 5px; font-size: 20px; }
.before-meeting article p { margin: 10px 0 0; color: var(--muted); font-size: 14px; line-height: 1.6; }
.before-meeting > i { align-self: center; color: var(--blue); font-style: normal; text-align: center; font-size: 26px; }
.meeting-door { display: grid; place-content: center; padding: 20px; color: #fff; text-align: center; font-size: 28px; font-weight: 800; background: var(--ink); border-left: 5px solid var(--blue); }
.meeting-door small { display: block; margin-top: 6px; color: rgba(255,255,255,.7); font-size: 12px; font-weight: 500; }

.invisible-routes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.invisible-routes article { min-height: 190px; padding: 28px; border-top: 3px solid #6d6d78; background: #24242d; }
.invisible-routes article.visible { border-color: #69c5ff; }
.invisible-routes article.lost { color: var(--ink); border-color: var(--blue); background: #dff2ff; }
.invisible-routes small { display: block; opacity: .66; }
.invisible-routes b { display: block; margin: 18px 0 6px; font-size: 27px; }
.invisible-routes span { display: block; opacity: .75; }

.problem-band { background: #eef0f3; }
.problem-workbench { display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 16px; align-items: start; }
.problem-tabs { display: grid; gap: 5px; }
.problem-tab { width: 100%; min-height: 54px; display: grid; grid-template-columns: 32px 1fr; align-items: center; gap: 8px; padding: 11px 13px; text-align: left; color: var(--text); background: #fff; border: 1px solid #d8d9df; border-radius: var(--radius); cursor: pointer; }
.problem-tab span:first-child { color: var(--blue-dark); font-size: 12px; font-weight: 800; }
.problem-tab.active { color: #fff; border-color: var(--blue-dark); background: var(--blue-dark); }
.problem-tab.active span:first-child { color: #fff; }
.problem-panel { min-height: 510px; padding: 30px; background: #fff; border-top: 4px solid var(--blue); }
.problem-panel > small { color: var(--blue-dark); font-weight: 800; }
.problem-panel h3 { margin: 8px 0 6px; font-size: 30px; line-height: 1.35; }
.problem-panel > p { margin: 0 0 24px; color: var(--muted); }
.problem-list { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); }
.problem-item { min-height: 132px; padding: 20px 18px; border-bottom: 1px solid var(--line); }
.problem-item:nth-child(odd) { border-right: 1px solid var(--line); }
.problem-item b { display: block; margin-bottom: 5px; }
.problem-item span { color: var(--muted); font-size: 14px; }

.empty-booking { display: grid; grid-template-columns: 1.2fr auto .85fr; align-items: center; gap: 26px; }
.question-note, .booking-slip { min-height: 190px; padding: 30px; display: flex; flex-direction: column; justify-content: center; background: var(--quiet); border-top: 3px solid var(--blue); }
.question-note small, .booking-slip small { color: var(--muted); }
.question-note b { margin-top: 14px; font-size: 27px; line-height: 1.45; }
.generic-answers { display: grid; gap: 7px; }
.generic-answers span { padding: 10px 15px; color: #696974; background: #eeeef1; text-align: center; text-decoration: line-through; }
.booking-slip { color: #fff; background: var(--ink); border-top-color: var(--gray); }
.booking-slip small, .booking-slip span { color: rgba(255,255,255,.62); }
.booking-slip b { margin: 12px 0 4px; font-size: 28px; }
.scene-facts { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 22px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.scene-facts article { padding: 20px 22px; border-right: 1px solid var(--line); }
.scene-facts article:last-child { border-right: 0; }
.scene-facts b, .scene-facts span { display: block; }
.scene-facts span { margin-top: 7px; color: var(--muted); font-size: 14px; line-height: 1.6; }

.version-band { background: #f2f7fa; }
.version-table { background: #fff; border-top: 4px solid var(--blue); }
.version-head, .version-table > div:not(.version-head) { display: grid; grid-template-columns: 120px 1fr 1fr 1fr; align-items: center; }
.version-head { padding: 0 20px; color: #fff; background: var(--ink); }
.version-head span { padding: 15px 18px; font-size: 14px; font-weight: 700; }
.version-table > div:not(.version-head) { min-height: 82px; padding: 0 20px; border-bottom: 1px solid var(--line); }
.version-table > div:not(.version-head) > * { padding: 18px; }
.version-table > div:not(.version-head) > span { color: var(--muted); }
.version-table strong { color: var(--blue-dark); }

.conversation-ledger { display: grid; grid-template-columns: 1fr 130px 1fr; gap: 0; align-items: stretch; }
.client-asks, .agency-replies { padding: 30px; background: #fff; border-top: 4px solid var(--blue); }
.client-asks small, .agency-replies small { font-size: 16px; font-weight: 850; }
.client-asks small { color: var(--blue-dark); }
.agency-replies small { color: #b83b31; }
.client-asks p, .agency-replies p { margin: 14px 0 0; padding-bottom: 10px; border-bottom: 1px solid var(--line); }
.ledger-line { display: grid; place-items: center; position: relative; }
.ledger-line::before { content: ""; position: absolute; width: 1px; height: 100%; background: var(--gray); }
.ledger-line span { z-index: 1; padding: 8px 10px; color: #fff; background: var(--gray); font-size: 13px; writing-mode: vertical-rl; }
.agency-replies { border-top-color: var(--gray); }
.agency-replies strong { display: block; margin-top: 22px; color: var(--blue-dark); }

.ai-entry { color: #fff; background: var(--ink-2); }
.ai-dialogue { display: grid; grid-template-columns: 1.05fr 1fr .8fr; gap: 16px; align-items: stretch; }
.ai-query { padding: 30px; font-size: 23px; line-height: 1.55; font-weight: 750; border-left: 4px solid var(--blue); background: #292934; }
.ai-followups { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.ai-followups span { display: grid; place-items: center; min-height: 88px; padding: 14px; color: var(--ink); text-align: center; font-weight: 700; background: #dff2ff; }
.meeting-list { display: grid; align-content: center; padding: 28px; color: var(--ink); background: #fff; }
.meeting-list small { color: var(--blue-dark); }
.meeting-list b { margin-top: 12px; font-size: 23px; line-height: 1.4; }

.source-mixer { display: grid; grid-template-columns: 1fr 150px 1fr; gap: 20px; align-items: center; }
.source-cloud { display: flex; flex-wrap: wrap; gap: 8px; align-content: center; padding: 22px; min-height: 220px; background: var(--quiet); border: 1px solid var(--line); }
.source-cloud span { padding: 8px 10px; background: #fff; border: 1px solid #d9dae0; }
.mixer-core { display: grid; place-content: center; width: 150px; height: 150px; color: #fff; text-align: center; font-size: 38px; font-weight: 850; background: var(--ink); border: 5px solid var(--blue); border-radius: 50%; }
.mixer-core small { font-size: 11px; font-weight: 500; }
.current-questions { min-height: 220px; padding: 25px; background: var(--pale); border-left: 4px solid var(--blue); }
.current-questions small { display: block; margin-bottom: 16px; color: var(--muted); }
.current-questions b { display: inline-block; width: calc(50% - 5px); padding: 10px 0; }
.misread-row { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 24px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.misread-row span { padding: 17px; text-align: center; border-right: 1px solid var(--line); font-weight: 700; }
.misread-row span:last-child { border-right: 0; }

.reject-band { color: #fff; background: #24242d; }
.reject-route { display: grid; grid-template-columns: 1fr 30px 1fr 30px 1fr 30px 1.2fr 30px 1fr; align-items: center; }
.reject-route span, .reject-route strong { min-height: 92px; display: grid; place-items: center; padding: 14px; text-align: center; background: #30303a; border-top: 3px solid #6f707b; }
.reject-route strong { color: var(--ink); background: #9bd7ff; border-top-color: var(--blue); }
.reject-route i { color: #7fcaff; text-align: center; font-style: normal; }
.truth-states { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 24px; }
.truth-states article { padding: 22px; background: #2e2e38; }
.truth-states small { color: #8ed1ff; }
.truth-states b, .truth-states span { display: block; }
.truth-states b { margin: 8px 0 3px; font-size: 21px; }
.truth-states span { color: rgba(255,255,255,.65); }

.boundary-split { display: grid; grid-template-columns: 1fr 150px 1fr; align-items: stretch; }
.boundary-split > div:not(.boundary-gate) { display: grid; grid-template-columns: 1fr 1fr; padding: 28px; background: var(--quiet); border-top: 4px solid var(--blue); }
.boundary-split > div:last-child { border-top-color: var(--ink); }
.boundary-split small { grid-column: 1 / -1; margin-bottom: 14px; color: var(--blue-dark); font-size: 16px; font-weight: 850; }
.boundary-split > div:last-child small { color: #b83b31; }
.boundary-split span { padding: 9px 0; }
.boundary-gate { display: grid; place-content: center; text-align: center; color: #fff; background: var(--ink); }
.boundary-gate b { color: #8ed1ff; font-size: 20px; }

.categories-intro { background: #edf6fb; }
.category-routes { display: grid; grid-template-columns: repeat(6, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #fff; }
.category-routes article { min-height: 160px; padding: 22px 16px; border-right: 1px solid var(--line); }
.category-routes article:last-child { border-right: 0; }
.category-routes small { color: var(--blue-dark); font-weight: 800; }
.category-routes b, .category-routes span { display: block; }
.category-routes b { margin: 17px 0 4px; font-size: 19px; }
.category-routes span { color: var(--muted); font-size: 14px; }

.category { min-height: 0; }
.category:nth-of-type(even) { background: var(--quiet); }
.category-notes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 22px; }
.category-notes span { padding: 14px; color: var(--muted); text-align: center; border: 1px solid var(--line); background: #fff; }
.category-facts { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 24px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.72); }
.category-facts article { min-height: 155px; padding: 20px 18px; border-right: 1px solid var(--line); }
.category-facts article:last-child { border-right: 0; }
.category-facts b, .category-facts span { display: block; }
.category-facts b { line-height: 1.45; }
.category-facts span { margin-top: 8px; color: var(--muted); font-size: 14px; line-height: 1.65; }
.health { background: #fff; }
.health-path { display: grid; grid-template-columns: .75fr 50px 1.5fr 50px 1fr; align-items: center; }
.symptom, .confirm-end { min-height: 170px; display: grid; place-content: center; padding: 22px; text-align: center; font-size: 27px; font-weight: 850; border-top: 4px solid var(--blue); background: var(--pale); }
.symptom small, .confirm-end small { display: block; margin-top: 7px; color: var(--muted); font-size: 13px; font-weight: 500; }
.health-path > i { color: var(--blue); text-align: center; font-style: normal; font-size: 25px; }
.health-branches { display: grid; gap: 8px; }
.health-branches span { padding: 13px 18px; background: var(--quiet); border-left: 3px solid var(--blue); }
.confirm-end { color: #fff; background: var(--ink); border-top-color: var(--gray); }
.confirm-end small { color: rgba(255,255,255,.65); }

.home { background: #f4f5f7; }
.delivery-chain { display: grid; grid-template-columns: repeat(11, auto); align-items: center; justify-content: stretch; }
.delivery-chain span { min-width: 0; min-height: 130px; display: grid; place-content: center; padding: 14px; text-align: center; font-size: 20px; font-weight: 800; background: #fff; border-top: 3px solid var(--blue); }
.delivery-chain small { display: block; color: var(--muted); font-size: 12px; font-weight: 500; }
.delivery-chain i { color: var(--blue-dark); padding: 0 8px; font-style: normal; }
.category-warning { margin: 24px 0 0; padding: 17px 20px; color: #fff; font-weight: 700; background: var(--ink); border-left: 5px solid var(--blue); }

.legal { background: #fff; }
.legal-map { display: grid; grid-template-columns: 220px 1fr 1.15fr; gap: 20px; align-items: stretch; }
.case-origin { display: grid; place-content: center; color: #fff; text-align: center; font-size: 25px; font-weight: 850; background: var(--ink); border-left: 5px solid var(--blue); }
.case-factors { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.case-factors span { display: grid; place-content: center; padding: 15px; text-align: center; background: var(--pale); border-top: 2px solid var(--blue); }
.lawyer-pair { display: grid; grid-template-columns: 1fr 95px 1fr; align-items: center; }
.lawyer-pair article { min-height: 150px; display: grid; place-content: center; text-align: center; background: var(--quiet); }
.lawyer-pair small, .lawyer-pair b { display: block; }
.lawyer-pair b { margin-top: 7px; font-size: 24px; }
.lawyer-pair i { color: var(--blue-dark); text-align: center; font-size: 12px; font-style: normal; font-weight: 800; }

.match { background: #eef1f4; }
.privacy-flow { display: grid; grid-template-columns: 1fr 34px 1fr 34px 1fr 34px 1fr; align-items: stretch; }
.privacy-flow article { min-height: 180px; padding: 25px; background: #fff; border-top: 3px solid var(--blue); }
.privacy-flow article span { color: var(--blue-dark); font-size: 13px; font-weight: 800; }
.privacy-flow article b, .privacy-flow article small { display: block; }
.privacy-flow article b { margin: 22px 0 6px; font-size: 22px; }
.privacy-flow article small { color: var(--muted); }
.privacy-flow > i { align-self: center; color: var(--blue); text-align: center; font-style: normal; }

.immigration { background: #fff; }
.policy-timeline { display: grid; grid-template-columns: 1fr 100px 1fr 100px 1fr; align-items: center; }
.policy-timeline > div { min-height: 175px; display: grid; align-content: center; padding: 25px; background: var(--quiet); border-top: 3px solid var(--gray); }
.policy-timeline > div.today { background: var(--pale); border-top-color: var(--blue); }
.policy-timeline small, .policy-timeline b, .policy-timeline span { display: block; }
.policy-timeline small { color: var(--blue-dark); }
.policy-timeline b { margin: 8px 0; font-size: 22px; }
.policy-timeline span { color: var(--muted); }
.policy-timeline i { color: var(--muted); text-align: center; font-size: 12px; font-style: normal; }

.wealth { background: #f3f5f7; }
.wealth-bridge { display: grid; grid-template-columns: 1fr 90px 1.2fr 90px 1fr; align-items: center; }
.wealth-bridge > div { min-height: 180px; display: grid; align-content: center; padding: 26px; background: #fff; border-top: 3px solid var(--gray); }
.wealth-bridge > div.planning { background: var(--ink); color: #fff; border-top-color: var(--blue); }
.wealth-bridge small, .wealth-bridge b, .wealth-bridge span { display: block; }
.wealth-bridge small { color: var(--muted); }
.wealth-bridge .planning small, .wealth-bridge .planning span { color: rgba(255,255,255,.65); }
.wealth-bridge b { margin: 8px 0; font-size: 22px; }
.wealth-bridge > i { color: var(--blue-dark); text-align: center; font-size: 12px; font-style: normal; font-weight: 800; }

.solution-band { background: #eaf4fa; }
.solution-tree { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.solution-tree article { min-height: 210px; padding: 25px; background: #fff; border-top: 4px solid var(--gray); }
.solution-tree article:nth-child(2), .solution-tree article:nth-child(4) { border-top-color: var(--blue); }
.solution-tree small { color: var(--muted); }
.solution-tree h3 { margin: 18px 0 8px; font-size: 22px; }
.solution-tree p { margin: 0; color: var(--muted); font-size: 15px; }
.boundary-row { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 18px; color: rgba(255,255,255,.78); background: var(--ink); }
.boundary-row span { padding: 13px; text-align: center; border-right: 1px solid rgba(255,255,255,.18); font-size: 14px; }
.boundary-row span:last-child { border-right: 0; }

.capability { padding-top: 74px; }
.group-nav { display: flex; width: 100%; gap: 0; margin-bottom: 45px; border-bottom: 1px solid var(--line); }
.group-nav a { padding: 12px 18px; color: var(--muted); font-size: 14px; text-decoration: none; border-bottom: 3px solid transparent; }
.group-nav a.active { color: var(--blue-dark); border-bottom-color: var(--blue); font-weight: 800; }
.group-nav.inverse { border-color: rgba(255,255,255,.25); }
.group-nav.inverse a { color: rgba(255,255,255,.65); }
.group-nav.inverse a.active { color: #fff; border-bottom-color: #8ed1ff; }
.capability-heading { display: grid; grid-template-columns: 1.2fr 1fr; gap: 70px; align-items: end; }
.capability-heading img { display: block; height: 44px; width: auto; margin-bottom: 22px; }
.capability-heading h2 { margin: 0; font-size: 42px; line-height: 1.25; }
.capability-heading > p { margin: 0; color: var(--muted); line-height: 1.85; }
.strength-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 45px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.strength-grid article { padding: 28px 24px; border-right: 1px solid var(--line); }
.strength-grid article:last-child { border-right: 0; }
.strength-grid strong { display: block; color: var(--blue-dark); font-size: 40px; line-height: 1.1; }
.strength-grid sup { font-size: .55em; }
.strength-grid span { display: block; margin-top: 10px; color: var(--muted); }
.intent-path { display: grid; grid-template-columns: 1fr 34px 1fr 34px 1fr 34px 1fr; align-items: center; margin-top: 22px; background: var(--quiet); }
.intent-path span { padding: 18px; text-align: center; font-weight: 700; }
.intent-path i { color: var(--blue); text-align: center; font-style: normal; }

.tech-band { color: #fff; background: var(--ink); }
.tech-stack { display: grid; gap: 8px; }
.tech-layer { display: grid; grid-template-columns: 180px 1fr; min-height: 118px; border: 1px solid rgba(255,255,255,.18); }
.tech-label { display: grid; align-content: center; padding: 20px; background: rgba(255,255,255,.06); }
.tech-label small { color: #93d5ff; }
.tech-label b { font-size: 23px; }
.tech-modules { display: grid; grid-template-columns: repeat(3, 1fr); }
.tech-modules span { display: grid; place-content: center; min-height: 58px; text-align: center; border-left: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); }
.tech-modules span:nth-last-child(-n+3) { border-bottom: 0; }
.tech-link { color: #8ed1ff; text-align: center; font-size: 13px; }

.agent-layout, .knowledge-layout { display: grid; grid-template-columns: 1.1fr 1fr; gap: 24px; align-items: stretch; }
.image-button { appearance: none; padding: 0; overflow: hidden; color: #fff; background: #24242d; border: 1px solid rgba(255,255,255,.25); border-radius: var(--radius); cursor: zoom-in; }
.image-button.light { color: var(--text); background: #fff; border-color: var(--line); }
.image-button img { display: block; width: 100%; height: 220px; object-fit: contain; background: #fff; }
.image-button.interface-shot img { height: 100%; min-height: 360px; object-fit: contain; }
.image-button > span { display: block; padding: 11px 13px; font-size: 14px; font-weight: 700; }
.agent-tasks { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.agent-tasks article { padding: 18px; background: var(--quiet); border-top: 2px solid var(--blue); }
.agent-tasks b { display: block; }
.agent-tasks p { margin: 6px 0 0; color: var(--muted); font-size: 14px; }
.human-boundary { margin: 20px 0 0; padding: 14px 18px; color: #fff; font-weight: 700; background: var(--ink); border-left: 5px solid var(--blue); }

.knowledge-band { background: var(--pale); }
.knowledge-list { background: #fff; border-top: 4px solid var(--blue); }
.knowledge-list > small { display: block; padding: 18px 22px; color: var(--blue-dark); font-weight: 800; border-bottom: 1px solid var(--line); }
.knowledge-list p { display: grid; grid-template-columns: 150px 1fr; gap: 15px; margin: 0; padding: 14px 22px; border-bottom: 1px solid var(--line); }
.knowledge-list p:last-child { border-bottom: 0; }
.knowledge-list span { color: var(--muted); }
.tracking-topics { display: grid; grid-template-columns: repeat(4, 1fr); margin-bottom: 24px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.tracking-topics span { padding: 18px; color: var(--muted); border-right: 1px solid var(--line); }
.tracking-topics span:last-child { border-right: 0; }
.tracking-topics b { display: block; color: var(--text); }
.dashboard-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }

.cert-band { color: var(--text); background: #fff; }
.cert-feature { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.cert-feature .image-button img { height: 265px; }
.security-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 9px; }
.security-grid .image-button img { height: 190px; }

.cta { padding: 76px 0 24px; color: #fff; background: var(--ink-2); border-bottom: 3px solid var(--blue); }
.cta-grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: 80px; align-items: center; }
.cta-grid small { color: #8ed1ff; font-weight: 800; }
.cta-grid h2 { margin: 12px 0 0; font-size: 44px; line-height: 1.25; text-wrap: balance; }
.cta-action ol { margin: 0 0 22px; padding-left: 22px; color: rgba(255,255,255,.78); }
.cta-action li { padding: 4px 0; }
.cta-action button { width: min(420px, 100%); min-height: 52px; color: #fff; font-weight: 800; background: var(--blue-dark); border: 0; border-radius: var(--radius); cursor: pointer; }
.cta-action button:hover { background: var(--blue); }
.contact-note { width: min(1180px, calc(100% - 64px)); margin: 46px auto 0; padding-top: 18px; color: rgba(255,255,255,.58); font-size: 14px; border-top: 1px solid rgba(255,255,255,.16); }

dialog { border: 0; padding: 0; border-radius: var(--radius); box-shadow: 0 20px 70px rgba(0,0,0,.35); }
dialog::backdrop { background: rgba(15,15,20,.76); }
.dialog-close { position: absolute; z-index: 2; right: 12px; top: 10px; width: 36px; height: 36px; padding: 0; color: inherit; background: transparent; border: 0; font-size: 28px; line-height: 1; cursor: pointer; }
.lightbox { width: min(1180px, 94vw); max-height: 92vh; color: #fff; background: #1c1c22; }
.lightbox img { display: block; max-width: 100%; max-height: 82vh; margin: 0 auto; object-fit: contain; background: #fff; }
.lightbox p { margin: 0; padding: 10px 16px; }
.brief-dialog { width: min(760px, 92vw); padding: 38px; color: var(--text); background: #fff; border-top: 5px solid var(--blue); }
.brief-dialog > small { color: var(--blue-dark); font-weight: 800; }
.brief-dialog h2 { margin: 8px 0 24px; font-size: 34px; }
.brief-dialog > div { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.brief-dialog p { margin: 0; padding: 16px; background: var(--quiet); }
.brief-dialog b, .brief-dialog span { display: block; }
.brief-dialog span { margin-top: 5px; color: var(--muted); font-size: 14px; }
.brief-dialog strong { display: block; margin-top: 18px; padding: 14px; color: #fff; background: var(--ink); border-left: 5px solid var(--blue); }

@media (max-width: 980px) {
  body { font-size: 16px; }
  .wrap { width: min(100% - 40px, 860px); }
  .hero-route, .contact-note { width: min(100% - 40px, 860px); }
  .hero-copy { width: 76%; }
  .hero h1 { font-size: 45px; }
  .section-head h2, .capability-heading h2 { font-size: 35px; }
  .first-choice { grid-template-columns: 1fr 190px 1.15fr; }
  .confirm-strip { grid-template-columns: repeat(3, 1fr); }
  .confirm-strip article { border-bottom: 1px solid var(--line); }
  .before-meeting { grid-template-columns: 1fr 28px 1fr 28px 1fr; }
  .meeting-door { grid-column: 1 / -1; min-height: 90px; }
  .category-routes { grid-template-columns: repeat(3, 1fr); }
  .category-routes article:nth-child(3) { border-right: 0; }
  .category-routes article:nth-child(-n+3) { border-bottom: 1px solid var(--line); }
  .delivery-chain { grid-template-columns: repeat(6, 1fr); gap: 8px; }
  .delivery-chain i { display: none; }
  .legal-map { grid-template-columns: 180px 1fr; }
  .lawyer-pair { grid-column: 1 / -1; }
  .solution-tree { grid-template-columns: 1fr 1fr; }
  .category-facts { grid-template-columns: 1fr 1fr; }
  .category-facts article:nth-child(2) { border-right: 0; }
  .category-facts article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .security-grid { grid-template-columns: repeat(3, 1fr); }
  .security-grid .image-button:nth-child(n+4) { grid-column: span 1; }
}

@media (max-width: 680px) {
  :root { --topbar: 52px; }
  .topnav { justify-content: flex-start; padding: 0 12px; }
  .topnav a { padding: 8px 10px; font-size: 13px; }
  .wrap { width: calc(100% - 32px); }
  .hero { min-height: 720px; max-height: none; }
  .hero-image { object-position: 67% center; }
  .hero-shade { background: rgba(20,20,27,.7); }
  .hero-inner { min-height: 720px; max-height: none; padding: 44px 0 110px; align-items: flex-start; }
  .hero-copy { width: 100%; }
  .hero-brand { font-size: 13px; }
  .hero-topic { font-size: 17px; }
  .hero h1 { font-size: 36px; line-height: 1.2; }
  .hero h1 span { white-space: normal; }
  .hero-lead { margin-top: 18px; font-size: 16px; line-height: 1.7; }
  .hero-voice { margin-top: 20px; padding: 14px 16px; font-size: 15px; }
  .hero-route { width: calc(100% - 32px); bottom: 18px; gap: 9px; font-size: 12px; }
  .copyright { font-size: 10px; }
  .band { padding: 68px 0; }
  .section-head { margin-bottom: 30px; }
  .section-head .section-kicker { display: table; margin-bottom: 13px; }
  .section-head h2, .capability-heading h2 { font-size: 29px; line-height: 1.3; }
  .section-head h2 br { display: none; }
  .section-head .summary { margin-top: 15px; font-size: 15px; line-height: 1.72; }
  .first-choice { grid-template-columns: 1fr; }
  .choice-turn { min-height: 135px; }
  .choice-turn i { transform: rotate(90deg); }
  .confirm-strip { grid-template-columns: 1fr; }
  .confirm-strip article { min-height: 120px; display: grid; grid-template-columns: 42px 1fr; align-content: center; padding: 16px; border-right: 0; }
  .confirm-strip b { margin: 0; }
  .confirm-strip p { grid-column: 2; }
  .before-meeting { grid-template-columns: 1fr; gap: 7px; }
  .before-meeting > i { transform: rotate(90deg); }
  .meeting-door { grid-column: auto; min-height: 100px; }
  .invisible-routes { grid-template-columns: 1fr; }
  .invisible-routes article { min-height: 145px; }
  .problem-workbench { grid-template-columns: 1fr; }
  .problem-tabs { display: flex; overflow-x: auto; padding-bottom: 5px; scrollbar-width: thin; }
  .problem-tab { flex: 0 0 190px; }
  .problem-panel { min-height: 0; padding: 22px 18px; }
  .problem-panel h3 { font-size: 25px; }
  .problem-list { grid-template-columns: 1fr; }
  .problem-item:nth-child(odd) { border-right: 0; }
  .empty-booking { grid-template-columns: 1fr; gap: 12px; }
  .question-note, .booking-slip { min-height: 145px; }
  .generic-answers { grid-template-columns: repeat(3, 1fr); }
  .generic-answers span { padding: 8px 4px; font-size: 13px; }
  .scene-facts { grid-template-columns: 1fr; }
  .scene-facts article { border-right: 0; border-bottom: 1px solid var(--line); }
  .scene-facts article:last-child { border-bottom: 0; }
  .version-head { display: none; }
  .version-table > div:not(.version-head) { grid-template-columns: 1fr; padding: 18px; }
  .version-table > div:not(.version-head) > * { padding: 6px 0; }
  .version-table > div:not(.version-head) span:first-of-type::before { content: "旧说法｜"; color: var(--muted); font-weight: 700; }
  .version-table > div:not(.version-head) span:last-of-type::before { content: "现在｜"; color: var(--muted); font-weight: 700; }
  .version-table strong::before { content: "确认｜"; color: var(--muted); }
  .conversation-ledger { grid-template-columns: 1fr; }
  .ledger-line { min-height: 64px; }
  .ledger-line::before { width: 100%; height: 1px; }
  .ledger-line span { writing-mode: horizontal-tb; }
  .ai-dialogue { grid-template-columns: 1fr; }
  .ai-query { font-size: 20px; }
  .source-mixer { grid-template-columns: 1fr; }
  .mixer-core { margin: 0 auto; }
  .misread-row { grid-template-columns: 1fr 1fr; }
  .misread-row span:nth-child(2) { border-right: 0; }
  .misread-row span:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .reject-route { grid-template-columns: 1fr; gap: 5px; }
  .reject-route i { transform: rotate(90deg); }
  .reject-route span, .reject-route strong { min-height: 70px; }
  .truth-states { grid-template-columns: 1fr; }
  .boundary-split { grid-template-columns: 1fr; }
  .boundary-gate { min-height: 82px; }
  .category-routes { grid-template-columns: 1fr 1fr; }
  .category-routes article { min-height: 132px; border-bottom: 1px solid var(--line); }
  .category-routes article:nth-child(odd) { border-right: 1px solid var(--line); }
  .category-routes article:nth-child(even) { border-right: 0; }
  .category { min-height: 0; }
  .health-path { grid-template-columns: 1fr; gap: 7px; }
  .health-path > i { transform: rotate(90deg); }
  .health-branches { order: 2; }
  .confirm-end { order: 4; }
  .category-notes, .category-facts { grid-template-columns: 1fr; }
  .category-facts article { min-height: 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .category-facts article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .category-facts article:last-child { border-bottom: 0; }
  .delivery-chain { grid-template-columns: 1fr 1fr; }
  .delivery-chain span { min-height: 105px; }
  .legal-map { grid-template-columns: 1fr; }
  .case-origin { min-height: 110px; }
  .lawyer-pair { grid-column: auto; grid-template-columns: 1fr 65px 1fr; }
  .privacy-flow { grid-template-columns: 1fr; gap: 6px; }
  .privacy-flow article { min-height: 128px; }
  .privacy-flow > i { transform: rotate(90deg); }
  .policy-timeline, .wealth-bridge { grid-template-columns: 1fr; gap: 6px; }
  .policy-timeline > i, .wealth-bridge > i { padding: 7px; }
  .policy-timeline > div, .wealth-bridge > div { min-height: 135px; }
  .solution-tree { grid-template-columns: 1fr; }
  .solution-tree article { min-height: 170px; }
  .boundary-row { grid-template-columns: 1fr 1fr; }
  .boundary-row span:nth-child(2) { border-right: 0; }
  .boundary-row span:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.18); }
  .group-nav { overflow-x: auto; }
  .group-nav a { flex: 0 0 auto; padding: 10px 14px; }
  .capability-heading { grid-template-columns: 1fr; gap: 20px; }
  .capability-heading img { height: 38px; }
  .strength-grid { grid-template-columns: 1fr 1fr; }
  .strength-grid article:nth-child(2) { border-right: 0; }
  .strength-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .strength-grid strong { font-size: 32px; }
  .intent-path { grid-template-columns: 1fr; }
  .intent-path i { transform: rotate(90deg); }
  .tech-layer { grid-template-columns: 1fr; }
  .tech-label { min-height: 90px; }
  .tech-modules { grid-template-columns: 1fr 1fr; }
  .tech-modules span { border-left: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); }
  .agent-layout, .knowledge-layout { grid-template-columns: 1fr; }
  .image-button.interface-shot img { min-height: 250px; height: 250px; }
  .agent-tasks { grid-template-columns: 1fr; }
  .knowledge-list p { grid-template-columns: 1fr; gap: 3px; }
  .tracking-topics { grid-template-columns: 1fr 1fr; }
  .tracking-topics span:nth-child(2) { border-right: 0; }
  .tracking-topics span:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .dashboard-grid, .cert-feature { grid-template-columns: 1fr; }
  .security-grid { grid-template-columns: 1fr 1fr; }
  .security-grid .image-button:last-child { grid-column: 1 / -1; }
  .security-grid .image-button img { height: 175px; }
  .cta-grid { grid-template-columns: 1fr; gap: 30px; }
  .cta-grid h2 { font-size: 30px; }
  .contact-note { width: calc(100% - 32px); margin-top: 34px; }
  .brief-dialog { padding: 28px 20px; }
  .brief-dialog > div { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior: auto !important; }
}
