:root {
  color-scheme: light;
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", SimHei, sans-serif;
  color: #10234a;
  background: #f7fbff;
  font-size: 16px;
  line-height: 1.72;
  --ink: #10234a;
  --muted: #5b6f91;
  --line: #dce8fb;
  --blue: #2468f2;
  --blue-strong: #164ee8;
  --violet: #6854f4;
  --cyan: #4bd7ff;
  --surface: #ffffff;
  --soft: #f4f8ff;
  --shadow: 0 20px 60px rgba(40, 92, 184, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body { margin: 0; min-width: 320px; background: #fff; color: var(--ink); }
body, button, input, textarea, select { font-family: inherit; }
a { color: #245fdf; text-decoration: none; }
a:hover { color: #164ee8; text-decoration: none; }
a:focus-visible, summary:focus-visible { outline: 3px solid #2979ff; outline-offset: 4px; border-radius: 6px; }
h1, h2, h3, p, ul { margin-top: 0; }
h1, h2, h3 { color: var(--ink); line-height: 1.28; letter-spacing: -.02em; }
h1 { font-size: clamp(42px, 5vw, 72px); }
h2 { margin-bottom: 18px; font-size: clamp(28px, 3vw, 42px); }
h3 { margin-bottom: 10px; font-size: 20px; }
p { color: var(--muted); }
img { max-width: 100%; }
.site-skip { position: fixed; left: 18px; top: -80px; z-index: 100; padding: 10px 18px; border-radius: 10px; background: var(--ink); color: #fff; font-weight: 700; }
.site-skip:focus { top: 14px; }

.site-nav {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 76px;
  padding: 12px max(4vw, 24px);
  border-bottom: 1px solid rgba(205, 220, 245, .82);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 8px 28px rgba(39, 82, 160, .05);
  backdrop-filter: blur(18px);
}
.site-brand { display: inline-flex; align-items: center; gap: 12px; flex: 0 0 auto; color: var(--ink); font-size: 24px; font-weight: 800; letter-spacing: .03em; }
.site-brand:hover { color: var(--ink); }
.site-brand img { width: 44px; height: 44px; border-radius: 10px; object-fit: contain; }
.site-mark {
  position: relative;
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 13px 13px 16px 16px;
  background: linear-gradient(145deg, #28a0ff 0%, #2859ef 58%, #7053f5 100%);
  box-shadow: 0 8px 20px rgba(44, 96, 238, .28);
  overflow: hidden;
}
.site-mark::after { content: ""; position: absolute; width: 7px; height: 28px; bottom: 7px; left: 50%; transform: translateX(-50%); border-radius: 6px; background: rgba(255, 255, 255, .78); }
.site-mark i { z-index: 1; width: 15px; height: 25px; margin-bottom: 7px; border: 2px solid #fff; background: rgba(255, 255, 255, .18); }
.site-mark i:first-child { border-radius: 10px 2px 2px 10px; transform: skewY(12deg); }
.site-mark i:last-child { border-radius: 2px 10px 10px 2px; transform: skewY(-12deg); }
.site-mark--small { width: 38px; height: 38px; }
.site-mark--small i { width: 12px; height: 21px; }
.site-nav nav { display: flex; align-items: center; justify-content: flex-end; gap: clamp(16px, 2.2vw, 34px); font-size: 15px; font-weight: 650; }
.site-nav nav > a:not(.site-button) { color: #405477; }
.site-nav nav > a:not(.site-button):hover { color: var(--blue); }
.site-nav-login { padding: 8px 16px; border: 1px solid #d5e1f4; border-radius: 10px; background: #fff; }
.site-button {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 24px;
  border: 1px solid transparent;
  border-radius: 11px;
  background: linear-gradient(115deg, #2485ff 0%, #2858ed 55%, #6b50f1 100%);
  box-shadow: 0 10px 26px rgba(37, 91, 232, .22);
  color: #fff;
  font-size: 15px;
  font-weight: 750;
  transition: transform .18s ease, box-shadow .18s ease;
}
.site-button:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 14px 32px rgba(37, 91, 232, .3); }
.site-button--large { min-height: 52px; padding: 13px 30px; font-size: 16px; }
.site-button--ghost { border-color: #b9cef3; background: rgba(255, 255, 255, .84); box-shadow: none; color: #173d9e; }
.site-button--ghost:hover { color: #164ee8; background: #fff; box-shadow: 0 10px 24px rgba(39, 95, 196, .12); }
.site-preview { position: relative; z-index: 30; padding: 11px 5%; border-bottom: 1px solid #f4d9a3; background: #fff6df; color: #745115; font-size: 14px; text-align: center; }

.site-home main { overflow: hidden; }
.site-home main > section { width: min(1440px, calc(100% - 48px)); margin: 0 auto; padding: 88px 0; }
.site-section-heading { max-width: 820px; margin-bottom: 42px; }
.site-section-heading > p:last-child { margin-bottom: 0; font-size: 18px; }
.site-section-heading--inline { display: flex; max-width: none; align-items: flex-start; gap: 16px; }
.site-section-heading--inline h2 { margin-bottom: 0; }
.site-section-number {
  display: inline-flex;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
  border: 2px solid #6489ff;
  border-radius: 9px;
  background: #f1f5ff;
  color: #315ddd;
  font-size: 14px;
  font-weight: 800;
}
.site-eyebrow, .site-card-tag { margin-bottom: 8px; color: #3868e5; font-size: 14px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }

.site-hero {
  display: grid;
  width: 100% !important;
  max-width: none !important;
  min-height: 680px;
  grid-template-columns: minmax(400px, .85fr) minmax(560px, 1.15fr);
  align-items: center;
  gap: 24px;
  margin: 0 !important;
  padding: 72px max(4.5vw, 28px) 64px !important;
  background:
    radial-gradient(circle at 82% 45%, rgba(95, 213, 255, .26), transparent 28%),
    radial-gradient(circle at 65% 10%, rgba(115, 98, 246, .12), transparent 24%),
    linear-gradient(120deg, #fff 0%, #f5f9ff 56%, #edf6ff 100%);
}
.site-hero-copy { position: relative; z-index: 2; max-width: 650px; margin-left: auto; padding-left: 1vw; }
.site-kicker { display: inline-block; margin-bottom: 20px; color: #2966eb; font-size: 17px; font-weight: 800; letter-spacing: .04em; }
.site-kicker::before { content: "✦"; margin-right: 9px; color: #6d51f2; }
.site-hero h1 { margin-bottom: 22px; color: #0c1c47; }
.site-hero-copy > p { max-width: 620px; margin-bottom: 28px; font-size: 20px; line-height: 1.8; }
.site-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; }
.site-hero-trust { display: flex; flex-wrap: wrap; gap: 10px 26px; margin: 26px 0 0; padding: 0; color: #506687; font-size: 14px; list-style: none; }
.site-hero-trust li::before { content: "✓"; display: inline-grid; width: 20px; height: 20px; place-items: center; margin-right: 7px; border-radius: 50%; background: #e9f7ff; color: #2683e9; font-weight: 900; }
.site-hero-visual { position: relative; z-index: 1; display: grid; min-height: 500px; place-items: center; }
.site-hero-visual::before { content: ""; position: absolute; inset: 16% 4% 9%; border-radius: 50%; background: radial-gradient(ellipse, rgba(94, 197, 255, .2), transparent 68%); filter: blur(12px); }
.site-hero-visual img { position: relative; z-index: 2; width: min(860px, 100%); height: auto; filter: drop-shadow(0 28px 36px rgba(56, 93, 197, .2)); }
.site-orbit { position: absolute; z-index: 1; width: 80%; height: 44%; border: 2px solid rgba(78, 184, 255, .26); border-radius: 50%; transform: rotate(-9deg); box-shadow: 0 0 28px rgba(58, 161, 255, .16); }
.site-orbit--two { width: 66%; height: 62%; border-color: rgba(110, 78, 244, .17); transform: rotate(20deg); }

.site-chain { padding-top: 72px !important; }
.site-chain-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.site-chain-grid article { position: relative; min-height: 155px; padding: 26px 25px 22px 78px; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: 0 12px 34px rgba(44, 85, 164, .07); }
.site-chain-grid article::before { position: absolute; left: 24px; top: 27px; display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; background: linear-gradient(145deg, #eaf4ff, #eceaff); color: #4168e9; font-size: 20px; font-weight: 900; }
.site-chain-grid article:nth-child(1)::before { content: "✎"; }
.site-chain-grid article:nth-child(2)::before { content: "◉"; }
.site-chain-grid article:nth-child(3)::before { content: "↶"; }
.site-chain-grid article:nth-child(4)::before { content: "⌁"; }
.site-chain-grid strong { display: block; margin-bottom: 8px; font-size: 18px; }
.site-chain-grid p { margin-bottom: 0; font-size: 14px; }
.site-capability-strip { display: grid; grid-template-columns: repeat(8, 1fr); margin: 24px 0 0; padding: 14px 20px; border: 1px solid #e1eafb; border-radius: 14px; background: linear-gradient(90deg, #fbfdff, #f5f8ff); color: #536989; font-size: 14px; list-style: none; text-align: center; }
.site-capability-strip li + li { border-left: 1px solid #dce7fa; }

.site-longform { width: 100% !important; max-width: none !important; padding-right: max(4.5vw, 28px) !important; padding-left: max(4.5vw, 28px) !important; background: linear-gradient(180deg, #f8fbff, #fff); }
.site-longform > * { width: min(1440px, 100%); margin-right: auto; margin-left: auto; }
.site-longform-layout { display: grid; grid-template-columns: minmax(520px, 1.18fr) minmax(460px, .82fr); gap: 28px; align-items: stretch; }
.site-story-board { overflow: hidden; min-height: 430px; border: 1px solid #ccddfa; border-radius: 22px; background: linear-gradient(145deg, #fff, #f4f8ff); box-shadow: var(--shadow); }
.site-board-tabs { display: flex; overflow-x: auto; gap: 8px; padding: 15px 18px; border-bottom: 1px solid #dfe9fa; background: rgba(255, 255, 255, .9); scrollbar-width: none; }
.site-board-tabs span { flex: 0 0 auto; padding: 7px 13px; border-radius: 8px; color: #53698e; font-size: 14px; }
.site-board-tabs .active { background: #eaf1ff; color: #285cd5; font-weight: 750; }
.site-board-body { display: grid; grid-template-columns: 1.2fr 1fr; grid-template-rows: 1fr 1fr; gap: 14px; padding: 22px; }
.site-board-card { min-height: 160px; padding: 22px; border: 1px solid #dce8fa; border-radius: 15px; background: rgba(255, 255, 255, .9); }
.site-board-story { grid-row: 1 / 3; padding: 28px; background: radial-gradient(circle at 10% 0, rgba(91, 183, 255, .12), transparent 40%), #fff; }
.site-board-card small { display: block; margin-bottom: 18px; color: #55719c; font-size: 13px; font-weight: 750; }
.site-board-card strong { display: block; margin-bottom: 12px; font-size: 18px; line-height: 1.45; }
.site-board-card p { font-size: 14px; }
.site-board-story > span { display: inline-flex; margin-top: 22px; padding: 8px 12px; border-radius: 9px; background: #edf7ff; color: #2771d9; font-size: 13px; font-weight: 700; }
.site-board-card ul { margin-bottom: 0; padding-left: 19px; color: #586d8c; font-size: 14px; }
.site-progress { height: 7px; margin: 16px 0; border-radius: 20px; background: #eaf0fb; overflow: hidden; }
.site-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #43b6ff, #5768f2); }
.site-progress--76 i { width: 76%; }
.site-progress--52 i { width: 52%; }
.site-progress--34 i { width: 34%; }
.site-feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.site-feature-grid article { display: flex; min-height: 132px; align-items: center; gap: 10px; padding: 16px; border: 1px solid #dce7fa; border-radius: 16px; background: #fff; box-shadow: 0 10px 26px rgba(41, 82, 157, .06); }
.site-feature-grid h3 { font-size: 17px; }
.site-feature-grid p { margin-bottom: 0; font-size: 14px; }

.site-sprite { display: block; width: 92px; height: 112px; flex: 0 0 92px; background-image: url("/site-media/mazijun-home-icons-v1.webp"); background-repeat: no-repeat; background-size: 400% auto; }
.sprite-longform { background-position: 0 0; }
.sprite-short { background-position: 33.333% 0; }
.sprite-screenplay { background-position: 66.666% 0; }
.sprite-document, .sprite-smartdoc { background-position: 100% 0; }
.sprite-world { background-position: 0 100%; }
.sprite-character { background-position: 33.333% 100%; }
.sprite-ai { background-position: 66.666% 100%; }
.sprite-recovery { background-position: 100% 100%; }

.site-solution-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.site-solution-grid > article { position: relative; display: grid; min-height: 390px; grid-template-columns: 130px 1fr; align-items: start; gap: 6px; padding: 30px 28px; border: 1px solid #d7e4fa; border-radius: 20px; background: linear-gradient(145deg, #fff 40%, #f2f7ff); box-shadow: 0 16px 44px rgba(38, 80, 160, .09); overflow: hidden; }
.site-solution-grid > article::after { content: ""; position: absolute; right: -45px; bottom: -50px; width: 180px; height: 180px; border-radius: 50%; background: radial-gradient(circle, rgba(90, 134, 255, .16), transparent 67%); }
.site-solution-grid .site-sprite { width: 122px; height: 145px; flex-basis: 122px; }
.site-solution-grid h3 { font-size: 26px; }
.site-solution-grid ul, .site-model-card ul { margin: 20px 0 0; padding: 0; color: #506684; font-size: 14px; list-style: none; }
.site-solution-grid li, .site-model-card li { margin: 8px 0; }
.site-solution-grid li::before, .site-model-card li::before { content: "✓"; margin-right: 8px; color: #3583ed; font-weight: 900; }
.site-card-tag { font-size: 13px; }

.site-workflow { width: 100% !important; max-width: none !important; padding-right: max(4.5vw, 28px) !important; padding-left: max(4.5vw, 28px) !important; background: #f7faff; }
.site-workflow > * { width: min(1440px, 100%); margin-right: auto; margin-left: auto; }
.site-workflow-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 12px; padding: 28px 20px; border: 1px solid #d7e4fa; border-radius: 20px; background: #fff; box-shadow: 0 16px 42px rgba(42, 83, 158, .07); }
.site-workflow-grid article { position: relative; padding: 8px 12px; text-align: center; }
.site-workflow-grid article:not(:last-child)::after { content: "→"; position: absolute; right: -12px; top: 17px; color: #80a2ed; font-size: 20px; }
.site-workflow-grid span { display: inline-grid; width: 46px; height: 46px; place-items: center; margin-bottom: 17px; border: 1px solid #bcd0f5; border-radius: 50%; background: #f5f8ff; color: #2e62db; font-size: 14px; font-weight: 800; }
.site-workflow-grid h3 { margin-bottom: 8px; font-size: 17px; }
.site-workflow-grid p { margin-bottom: 0; font-size: 14px; }

.site-assistant-layout { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(340px, .6fr); gap: 26px; }
.site-assistant-tools { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.site-assistant-tools article { min-height: 150px; padding: 25px; border: 1px solid #dce6fa; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(40, 82, 157, .07); }
.site-assistant-tools article::before { content: "✦"; display: grid; width: 36px; height: 36px; place-items: center; margin-bottom: 16px; border-radius: 11px; background: linear-gradient(145deg, #eaf6ff, #eceaff); color: #476bef; }
.site-assistant-tools b { display: block; margin-bottom: 7px; font-size: 17px; }
.site-assistant-tools p { margin-bottom: 0; font-size: 14px; }
.site-model-card { padding: 28px; border: 1px solid #cadcf9; border-radius: 20px; background: radial-gradient(circle at 80% 0, rgba(92, 204, 255, .22), transparent 34%), linear-gradient(145deg, #f9fcff, #eef3ff); box-shadow: var(--shadow); }
.site-model-card .site-sprite { float: right; margin: -12px -5px 0 10px; }
.site-model-card h3 { font-size: 24px; }

.site-security { width: 100% !important; max-width: none !important; padding-right: max(4.5vw, 28px) !important; padding-left: max(4.5vw, 28px) !important; background: linear-gradient(180deg, #f7fbff, #fff); }
.site-security > * { width: min(1440px, 100%); margin-right: auto; margin-left: auto; }
.site-security-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.site-security-grid article { min-height: 310px; padding: 28px; border: 1px solid #d8e5fa; border-radius: 20px; background: #fff; box-shadow: 0 14px 40px rgba(38, 81, 159, .08); }
.site-security-grid h3 { margin-top: 8px; font-size: 22px; }
.site-security-grid .site-sprite { width: 124px; height: 150px; margin: -20px auto -2px; }
.site-version-demo { display: flex; width: 100%; height: 135px; align-items: center; justify-content: center; gap: 11px; border-radius: 14px; background: #f5f8ff; }
.site-version-demo i { display: block; width: 15px; height: 15px; border: 4px solid #fff; border-radius: 50%; background: #6293ef; box-shadow: 0 0 0 2px #b7cef5; }
.site-version-demo i:nth-child(2) { background: #52b8ee; }
.site-version-demo i:nth-child(3) { background: #7765ed; }
.site-version-demo::before { content: ""; position: absolute; width: 180px; height: 3px; background: #bfd2f4; }
.site-version-demo { position: relative; }
.site-version-demo i { z-index: 1; }
.site-conflict-demo { display: grid; min-height: 135px; grid-template-columns: 1fr 1fr; gap: 12px; align-items: center; padding: 18px; border-radius: 14px; background: #f5f8ff; }
.site-conflict-demo i { display: grid; min-height: 70px; place-items: center; border: 1px solid #c7daf9; border-radius: 10px; background: #fff; color: #3665ce; font-size: 14px; font-style: normal; font-weight: 700; }
.site-conflict-demo i:last-child { border-color: #cbd0fa; color: #6754dc; }

.site-faq { display: grid; grid-template-columns: minmax(280px, .65fr) minmax(520px, 1.35fr); column-gap: 70px; }
.site-faq .site-section-heading { grid-row: 1 / 3; }
.site-faq-list { border-top: 1px solid #dce6f8; }
.site-faq details { border-bottom: 1px solid #dce6f8; }
.site-faq summary { position: relative; min-height: 68px; padding: 20px 46px 18px 0; color: #1b3158; font-size: 17px; font-weight: 750; cursor: pointer; list-style: none; }
.site-faq summary::-webkit-details-marker { display: none; }
.site-faq summary::after { content: "+"; position: absolute; right: 8px; top: 17px; color: #3569df; font-size: 26px; font-weight: 400; }
.site-faq details[open] summary::after { content: "−"; }
.site-faq details p { padding: 0 46px 20px 0; margin-bottom: 0; font-size: 15px; }
.site-faq-more { grid-column: 2; margin-top: 24px; font-size: 14px; }

.site-final-cta { position: relative; display: flex; width: min(1440px, calc(100% - 48px)) !important; min-height: 330px; align-items: center; justify-content: space-between; gap: 40px; margin-bottom: 70px !important; padding: 58px clamp(34px, 6vw, 92px) !important; border-radius: 28px; background:
  radial-gradient(circle at 80% 70%, rgba(67, 211, 255, .38), transparent 29%),
  radial-gradient(circle at 50% 0, rgba(140, 108, 255, .34), transparent 30%),
  linear-gradient(120deg, #114ee8, #3033d8 55%, #661ed0);
  box-shadow: 0 26px 65px rgba(35, 67, 196, .25);
  overflow: hidden;
}
.site-final-cta > div { position: relative; z-index: 2; max-width: 900px; }
.site-final-cta h2, .site-final-cta p, .site-final-cta .site-eyebrow { color: #fff; }
.site-final-cta > div > p:not(.site-eyebrow) { max-width: 720px; font-size: 17px; opacity: .88; }
.site-button--light { background: #fff; color: #1749d6; box-shadow: 0 12px 30px rgba(4, 22, 95, .2); }
.site-button--light:hover { color: #1749d6; }
.site-button--outline-light { border-color: rgba(255, 255, 255, .66); background: transparent; color: #fff; box-shadow: none; }
.site-final-book { position: relative; z-index: 1; width: 220px; height: 150px; flex: 0 0 220px; border: 2px solid rgba(255, 255, 255, .55); border-radius: 12px 12px 42px 42px; background: linear-gradient(150deg, rgba(255, 255, 255, .9), rgba(142, 210, 255, .25)); box-shadow: 0 0 40px rgba(98, 220, 255, .55); transform: perspective(500px) rotateX(56deg) rotateZ(-6deg); }
.site-final-book::before, .site-final-book::after { content: ""; position: absolute; top: -22px; width: 48%; height: 122px; border: 2px solid rgba(255, 255, 255, .55); background: linear-gradient(150deg, rgba(255, 255, 255, .9), rgba(195, 226, 255, .45)); }
.site-final-book::before { left: 0; border-radius: 14px 2px 4px 22px; transform: rotateY(-22deg); transform-origin: right; }
.site-final-book::after { right: 0; border-radius: 2px 14px 22px 4px; transform: rotateY(22deg); transform-origin: left; }

.site-content main { width: min(1120px, calc(100% - 40px)); min-height: 60vh; margin: 48px auto 76px; }
.site-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; color: #7587a5; font-size: 14px; }
.site-breadcrumb a { color: #4b6ea9; }
.site-article { overflow: hidden; border: 1px solid #dce6f7; border-radius: 20px; background: #fff; box-shadow: 0 18px 52px rgba(40, 79, 148, .09); }
.site-article header { padding: 42px clamp(26px, 6vw, 72px) 34px; border-bottom: 1px solid #e2eaf7; background: linear-gradient(145deg, #fff, #f4f8ff); }
.site-article h1, .site-help-hero h1 { margin-bottom: 18px; font-size: clamp(34px, 4vw, 52px); }
.site-summary { max-width: 800px; font-size: 18px; }
.site-updated { margin-bottom: 0; color: #7789a5; font-size: 14px; }
.site-answer { padding: 42px clamp(26px, 6vw, 72px); color: #293d61; font-size: 16px; line-height: 2; white-space: pre-wrap; overflow-wrap: anywhere; }
.site-help-hero { padding: 54px clamp(28px, 6vw, 70px); border: 1px solid #d7e4f8; border-radius: 22px; background: radial-gradient(circle at 80% 20%, rgba(82, 194, 255, .18), transparent 28%), linear-gradient(145deg, #fff, #f1f6ff); }
.site-help-hero .site-button { margin-top: 10px; }
.site-help-list { padding-top: 54px; }
.site-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.site-help article { min-height: 210px; padding: 26px; border: 1px solid #dce6f7; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(40, 78, 148, .06); }
.site-help h3 { font-size: 18px; }
.site-help p { font-size: 14px; }
.site-text-link { font-size: 14px; font-weight: 700; }

footer { display: grid; grid-template-columns: minmax(280px, 1.6fr) repeat(3, minmax(130px, .7fr)); gap: 42px; padding: 50px max(5vw, 28px) 26px; border-top: 1px solid #dae5f6; background: #f7faff; }
.site-footer-brand p { max-width: 360px; margin: 14px 0 0; font-size: 14px; }
footer nav, .site-footer-contact { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; font-size: 14px; }
footer strong { margin-bottom: 5px; color: var(--ink); font-size: 15px; }
footer nav a, .site-footer-contact a, .site-footer-contact span { color: #5d708e; }
.site-footer-bottom { display: flex; grid-column: 1 / -1; align-items: center; justify-content: center; flex-wrap: wrap; gap: 12px 24px; padding-top: 22px; border-top: 1px solid #dfe8f6; color: #7586a0; font-size: 13px; }
.site-footer-bottom a { color: #657895; }

@media (max-width: 1180px) {
  .site-nav nav { gap: 14px; }
  .site-nav nav a[href^="#"], .site-nav nav a[href^="/#"] { display: none; }
  .site-hero { min-height: 620px; grid-template-columns: minmax(370px, .9fr) minmax(480px, 1.1fr); }
  .site-hero-copy { padding-left: 0; }
  .site-chain-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .site-capability-strip { grid-template-columns: repeat(4, 1fr); row-gap: 12px; }
  .site-capability-strip li:nth-child(5) { border-left: 0; }
  .site-longform-layout { grid-template-columns: 1fr; }
  .site-feature-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .site-feature-grid article { flex-direction: column; align-items: flex-start; min-height: 230px; }
  .site-solution-grid > article { grid-template-columns: 1fr; }
  .site-workflow-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .site-workflow-grid article::after { display: none; }
}

@media (max-width: 900px) {
  html { scroll-padding-top: 74px; }
  .site-nav { min-height: 68px; padding: 10px 20px; }
  .site-brand { font-size: 21px; }
  .site-brand img, .site-mark { width: 40px; height: 40px; }
  .site-nav-login { display: none; }
  .site-nav-cta { padding: 9px 15px; }
  .site-hero { grid-template-columns: 1fr; padding-top: 58px !important; text-align: center; }
  .site-hero-copy { max-width: 720px; margin: 0 auto; }
  .site-hero-copy > p { margin-right: auto; margin-left: auto; }
  .site-actions, .site-hero-trust { justify-content: center; }
  .site-hero-visual { min-height: 380px; }
  .site-solution-grid { grid-template-columns: 1fr; }
  .site-solution-grid > article { min-height: 280px; grid-template-columns: 150px 1fr; }
  .site-assistant-layout { grid-template-columns: 1fr; }
  .site-faq { grid-template-columns: 1fr; }
  .site-faq .site-section-heading { grid-row: auto; }
  .site-faq-more { grid-column: auto; }
  .site-final-book { display: none; }
  footer { grid-template-columns: 1.4fr 1fr 1fr; }
  .site-footer-contact { grid-column: 2 / 4; }
}

@media (max-width: 680px) {
  h1 { font-size: clamp(36px, 11vw, 48px); }
  h2 { font-size: 29px; }
  h3 { font-size: 18px; }
  .site-nav { gap: 10px; }
  .site-brand { gap: 8px; font-size: 19px; }
  .site-brand img, .site-mark { width: 36px; height: 36px; }
  .site-brand .site-mark i { width: 11px; height: 19px; }
  .site-nav nav { gap: 8px; }
  .site-nav nav > a[href="/help"] { display: none; }
  .site-nav-cta { min-height: 42px; padding: 8px 12px; font-size: 14px; }
  .site-home main > section { width: min(100% - 28px, 1440px); padding: 62px 0; }
  .site-hero { width: 100% !important; min-height: auto; padding: 48px 18px 30px !important; }
  .site-kicker { font-size: 15px; }
  .site-hero-copy > p { font-size: 17px; }
  .site-button--large { width: 100%; }
  .site-hero-trust { display: grid; gap: 10px; text-align: left; }
  .site-hero-visual { min-height: 260px; }
  .site-chain-grid { grid-template-columns: 1fr; }
  .site-chain-grid article { min-height: 135px; }
  .site-capability-strip { grid-template-columns: repeat(2, 1fr); }
  .site-capability-strip li:nth-child(odd) { border-left: 0; }
  .site-capability-strip li:nth-child(5) { border-left: 0; }
  .site-longform, .site-workflow, .site-security { padding-right: 14px !important; padding-left: 14px !important; }
  .site-section-heading--inline { gap: 12px; }
  .site-story-board { min-height: auto; }
  .site-board-body { grid-template-columns: 1fr; grid-template-rows: auto; }
  .site-board-story { grid-row: auto; }
  .site-feature-grid { grid-template-columns: 1fr; }
  .site-feature-grid article { min-height: 130px; flex-direction: row; align-items: center; }
  .site-solution-grid > article { min-height: auto; grid-template-columns: 112px 1fr; padding: 24px 18px; }
  .site-solution-grid .site-sprite { width: 104px; height: 130px; }
  .site-solution-grid h3 { font-size: 23px; }
  .site-workflow-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 18px 10px; }
  .site-assistant-tools { grid-template-columns: 1fr; }
  .site-assistant-tools article { min-height: 132px; }
  .site-security-grid { grid-template-columns: 1fr; }
  .site-security-grid article { min-height: auto; }
  .site-faq summary { font-size: 16px; }
  .site-final-cta { width: calc(100% - 28px) !important; min-height: auto; margin-bottom: 42px !important; padding: 40px 24px !important; border-radius: 20px; }
  .site-content main { width: calc(100% - 28px); margin-top: 30px; }
  .site-grid { grid-template-columns: 1fr; }
  .site-article header, .site-answer { padding-right: 22px; padding-left: 22px; }
  footer { grid-template-columns: 1fr 1fr; gap: 30px 22px; }
  .site-footer-brand { grid-column: 1 / -1; }
  .site-footer-contact { grid-column: 1 / -1; }
}

@media (max-width: 430px) {
  .site-brand > span:last-child { max-width: 82px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .site-section-number { width: 30px; height: 30px; flex-basis: 30px; }
  .site-solution-grid > article { grid-template-columns: 1fr; }
  .site-solution-grid .site-sprite { margin: -14px auto -12px; }
  .site-workflow-grid { grid-template-columns: 1fr; }
  footer { grid-template-columns: 1fr; }
  footer nav, .site-footer-contact { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
