:root {
  --landing-blue: #1769e0;
  --landing-blue-dark: #0b4fb4;
  --landing-sky: #59afff;
  --landing-ink: #14253a;
  --landing-muted: #68788d;
  --landing-faint: #8a97a8;
  --landing-line: #dfe7f0;
  --landing-panel: #ffffff;
  --landing-ground: #f8fbff;
  --landing-wash: #edf6ff;
  --landing-max: 1180px;
  --landing-mono: "SF Mono", "Cascadia Mono", Consolas, monospace;
  --landing-sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Microsoft YaHei UI", "PingFang SC", sans-serif;
}

html { scroll-behavior: smooth; }
.landing-body, .auth-body { margin: 0; color: var(--landing-ink); background: var(--landing-ground); font-family: var(--landing-sans); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.landing-body { overflow-x: hidden; }
.landing-body *, .auth-body * { box-sizing: border-box; }
.landing-body a { color: inherit; text-decoration: none; }
.landing-body img { display: block; max-width: 100%; }
.landing-body [id] { scroll-margin-top: 82px; }
.landing-stage { position: fixed; inset: 0; z-index: -1; pointer-events: none; }
.landing-stage::before { content: ""; position: absolute; inset: 0; background: radial-gradient(900px 520px at 78% -4%, rgba(23,105,224,.12), transparent 66%), radial-gradient(720px 430px at 5% 25%, rgba(89,175,255,.08), transparent 62%); }
.landing-stage::after { content: ""; position: absolute; inset: 0; opacity: .5; background-image: linear-gradient(rgba(23,105,224,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(23,105,224,.045) 1px, transparent 1px); background-size: 56px 56px; -webkit-mask-image: radial-gradient(ellipse 88% 48% at 50% 0%, #000 10%, transparent 76%); mask-image: radial-gradient(ellipse 88% 48% at 50% 0%, #000 10%, transparent 76%); }

.landing-body .primary-button, .auth-body .primary-button, .landing-body .ghost-button, .auth-body .ghost-button { min-height: 44px; border-radius: 10px; font-weight: 750; }
.landing-body .primary-button, .auth-body .primary-button { border-color: var(--landing-blue); color: #fff; background: var(--landing-blue); box-shadow: 0 14px 34px -18px rgba(23,105,224,.7); }
.landing-body .primary-button:hover, .auth-body .primary-button:hover { background: var(--landing-blue-dark); transform: translateY(-1px); }
.landing-body .ghost-button, .auth-body .ghost-button { border-color: var(--landing-line); background: #fff; color: var(--landing-blue); }
.landing-body .ghost-button:hover, .auth-body .ghost-button:hover { border-color: #93bff0; background: var(--landing-wash); }
.landing-body a:focus-visible, .landing-body button:focus-visible, .auth-body a:focus-visible, .auth-body button:focus-visible { outline: 3px solid rgba(23,105,224,.34); outline-offset: 3px; }

.landing-header { position: sticky; z-index: 40; top: 0; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; min-height: 64px; padding: 0 max(28px, calc((100vw - 1320px) / 2)); border-bottom: 1px solid rgba(220,229,239,.88); background: rgba(248,251,255,.86); backdrop-filter: saturate(170%) blur(18px); -webkit-backdrop-filter: saturate(170%) blur(18px); }
.landing-brand { display: inline-flex; align-items: center; gap: 11px; width: max-content; }
.landing-brand img { width: 38px; height: 38px; border-radius: 10px; object-fit: cover; box-shadow: 0 8px 22px -12px rgba(23,105,224,.55); }
.landing-brand span { display: grid; gap: 1px; }
.landing-brand strong { color: #0d2540; font-size: 14px; }
.landing-brand small { color: #7b8b9e; font-size: 10px; letter-spacing: .08em; }
.landing-nav { display: flex; align-items: center; gap: 27px; }
.landing-nav a, .landing-footer a { color: #53667d; font-size: 12px; transition: color .2s; }
.landing-nav a:hover, .landing-footer a:hover { color: var(--landing-blue); }
.landing-actions { display: flex; justify-content: flex-end; align-items: center; gap: 10px; }
.landing-link { padding: 8px 10px; color: #52667d; font-size: 12px; }
.landing-login { padding: 9px 16px; border: 1px solid var(--landing-blue); border-radius: 9px; color: #fff; background: var(--landing-blue); font-size: 12px; font-weight: 750; box-shadow: 0 10px 24px -15px rgba(23,105,224,.8); }

.eyebrow { margin: 0; color: var(--landing-blue); font: 750 11px/1.4 var(--landing-mono); letter-spacing: .19em; }
.hero-eyebrow { display: inline-flex; align-items: center; gap: 12px; }
.hero-eyebrow span { width: 34px; height: 1px; background: linear-gradient(90deg, transparent, #78b7f7); }
.hero-eyebrow span:last-child { background: linear-gradient(90deg, #78b7f7, transparent); }

.landing-hero { width: min(var(--landing-max), calc(100% - 56px)); margin: 0 auto; padding: 88px 0 48px; text-align: center; }
.hero-copy { max-width: 900px; margin: 0 auto; }
.landing-hero h1 { margin: 22px 0 26px; color: #11243a; font-size: clamp(54px, 7vw, 82px); font-weight: 800; line-height: 1.03; letter-spacing: -.055em; }
.landing-hero h1 span, .landing-hero h1 em { display: block; white-space: nowrap; }
.landing-hero h1 em { color: var(--landing-blue); font-style: normal; }
.hero-lead { max-width: 760px; margin: 0 auto; color: var(--landing-muted); font-size: clamp(16px, 1.7vw, 19px); line-height: 1.9; text-wrap: balance; }
.hero-actions { display: flex; justify-content: center; gap: 12px; margin-top: 31px; }
.hero-actions > * { min-width: 158px; }
.hero-facts { display: grid; grid-template-columns: repeat(4, 1fr); max-width: 780px; margin: 44px auto 0; padding: 0; }
.hero-facts div { padding: 6px 24px; border-right: 1px solid var(--landing-line); }
.hero-facts div:last-child { border-right: 0; }
.hero-facts dt { color: var(--landing-blue); font: 800 28px/1.2 var(--landing-mono); }
.hero-facts dd { margin: 5px 0 0; color: #718197; font-size: 12px; }

.landing-body .primary-button, .auth-body .primary-button, .landing-body .landing-login { color: #fff !important; }

.trial-experience { display: grid; grid-template-columns: minmax(0,.88fr) minmax(420px,1.12fr); gap: 34px; max-width: 1040px; margin: 58px auto 0; padding: 34px; border: 1px solid #cfe0f1; border-radius: 20px; background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(238,247,255,.94)); text-align: left; box-shadow: 0 28px 70px -48px rgba(17,79,149,.62); }
.trial-intro { padding: 6px 10px; }
.trial-badge { display: inline-flex; margin-bottom: 18px; padding: 7px 11px; border: 1px solid #b9d8f7; border-radius: 999px; color: #0757ba; background: #eaf5ff; font-size: 12px; font-weight: 800; }
.trial-intro h2 { margin: 13px 0 14px; color: #102740; font-size: clamp(29px,3.3vw,42px); line-height: 1.18; letter-spacing: -.04em; }
.trial-intro > p:not(.eyebrow) { margin: 0; color: #667990; font-size: 14px; line-height: 1.82; }
.trial-intro ul { display: grid; gap: 8px; margin: 21px 0 0; padding: 0; color: #4f6b87; list-style: none; font-size: 13px; }
.trial-intro li::before { content: "✓"; margin-right: 9px; color: #1769e0; font-weight: 900; }
.trial-action { align-self: center; padding: 24px; border: 1px solid #dce8f4; border-radius: 16px; background: rgba(255,255,255,.96); }
.trial-form { display: grid; gap: 12px; }
.trial-form label { color: #183650; font-size: 13px; font-weight: 800; }
.trial-form textarea { width: 100%; min-height: 108px; resize: vertical; padding: 13px 14px; border: 1px solid #cfddec; border-radius: 11px; outline: 0; color: #142b43; background: #fbfdff; font: 14px/1.65 var(--landing-sans); transition: border-color .2s, box-shadow .2s; }
.trial-form textarea:focus { border-color: #5da4ea; box-shadow: 0 0 0 4px rgba(23,105,224,.1); }
.trial-form small { color: #8492a3; font-size: 11px; line-height: 1.65; text-align: center; }
.trial-state { display: grid; gap: 8px; margin-top: 14px; padding: 14px 15px; border: 1px solid #cfe3f6; border-radius: 11px; color: #315b82; background: #eff7ff; font-size: 12px; line-height: 1.65; }
.trial-state strong { color: #123c68; font-size: 14px; }
.trial-state.is-error { border-color: #efc8cf; color: #9a3443; background: #fff1f3; }
.trial-state.is-success { border-color: #bde1ce; color: #236a48; background: #eefaf4; }
.trial-report { grid-column: 1 / -1; overflow: hidden; margin-top: 4px; border: 1px solid #d6e4f2; border-radius: 17px; background: #fff; }
.trial-report-head { display: grid; grid-template-columns: 132px 1fr; gap: 22px; align-items: center; padding: 24px; background: linear-gradient(120deg,#eff7ff,#fff 68%); }
.trial-report-cover { display: grid; width: 132px; aspect-ratio: 9/16; overflow: hidden; border: 1px solid #d5e4f3; border-radius: 12px; background: #edf4fb; place-items: center; color: #71859c; font-size: 11px; }
.trial-report-cover img { width: 100%; height: 100%; object-fit: cover; }
.trial-report-head h3 { margin: 8px 0 8px; color: #102942; font-size: clamp(23px,3vw,34px); line-height: 1.25; letter-spacing: -.035em; }
.trial-report-head p { margin: 0; color: #657a90; font-size: 13px; line-height: 1.7; }
.trial-report-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 17px; }
.trial-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; padding: 20px 22px; border-top: 1px solid #e3ebf4; border-bottom: 1px solid #e3ebf4; background: #f7faff; }
.trial-metric { display: grid; grid-template-columns: 56px minmax(0,1fr); gap: 15px; align-items: center; min-width: 0; padding: 15px 16px; border: 1px solid #d7e4f2; border-radius: 11px; background: #fff; box-shadow: 0 5px 16px rgba(27,76,127,.04); }
.trial-metric-icon { display: grid; width: 56px; height: 56px; border-radius: 10px; color: white; place-items: center; }
.trial-metric-icon svg { width: 28px; height: 28px; }
.trial-metric-icon .fill-icon { fill: currentColor; stroke: none; }
.trial-metric-icon .stroke-icon { fill: none; stroke: currentColor; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.trial-metric.metric-play .trial-metric-icon { background: linear-gradient(145deg,#4b95ff,#1769e0); }
.trial-metric.metric-like .trial-metric-icon { background: linear-gradient(145deg,#cf67f4,#9b36e8); }
.trial-metric.metric-comment .trial-metric-icon { background: linear-gradient(145deg,#45b9f8,#168fe7); }
.trial-metric.metric-collect .trial-metric-icon { background: linear-gradient(145deg,#47d493,#17ad68); }
.trial-metric.metric-share .trial-metric-icon { background: linear-gradient(145deg,#ffb154,#ff871e); }
.trial-metric.metric-engagement .trial-metric-icon { background: linear-gradient(145deg,#43d6d0,#18aca8); }
.trial-metric-copy { min-width: 0; }
.trial-metric-copy small { display: block; color: #7a899b; font-size: 10px; }
.trial-metric-copy strong { display: block; overflow: hidden; margin-top: 5px; color: #183a5b; font: 800 22px/1.15 var(--landing-mono); text-overflow: ellipsis; white-space: nowrap; }
.trial-metric-copy em { display: block; overflow: hidden; margin-top: 5px; color: #8495a8; font-size: 9px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.trial-report-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.trial-report-section { min-width: 0; padding: 25px 26px; border-right: 1px solid #e8eef5; border-bottom: 1px solid #e8eef5; }
.trial-report-section:nth-child(2n) { border-right: 0; }
.trial-report-section.is-wide { grid-column: 1 / -1; border-right: 0; }
.trial-report-section h4 { margin: 8px 0 14px; color: #122c46; font-size: 20px; letter-spacing: -.02em; }
.trial-report-section p { margin: 0; color: #526b84; font-size: 14px; line-height: 1.82; white-space: pre-wrap; overflow-wrap: anywhere; }
.trial-report-section ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.trial-report-section li { padding: 11px 13px; border: 1px solid #e0e9f3; border-radius: 10px; color: #526b84; background: #f8fbff; font-size: 13px; line-height: 1.68; overflow-wrap: anywhere; }
.trial-section-kicker { display: inline-flex; margin: 0 0 5px !important; padding: 5px 9px; border-radius: 999px; color: #0f5fc5 !important; background: #eaf4ff; font-size: 11px !important; font-weight: 850; line-height: 1.2 !important; letter-spacing: .08em; }
.trial-field-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }
.trial-field { min-width: 0; padding: 14px; border: 1px solid #d8e6f4; border-radius: 12px; background: #f8fbff; }
.trial-field-label { display: inline-flex; max-width: 100%; margin-bottom: 9px; padding: 5px 9px; border-radius: 7px; color: #fff; background: #1769e0; font-size: 12px; font-weight: 850; line-height: 1.35; }
.trial-field-value > p { color: #425f7b; }
.trial-field-value .trial-field-grid { grid-template-columns: 1fr; }
.trial-field.tone-danger { border-color: #f1c3cc; background: #fff4f6; }
.trial-field.tone-danger > .trial-field-label { background: #d83b53; }
.trial-field.tone-danger > .trial-field-value > p { color: #8f2d3f; }
.trial-field.tone-warning { border-color: #efd59f; background: #fffaf0; }
.trial-field.tone-warning > .trial-field-label { background: #d98a14; }
.trial-field.tone-warning > .trial-field-value > p { color: #825614; }
.trial-field.tone-success { border-color: #bfe2cf; background: #f1fbf5; }
.trial-field.tone-success > .trial-field-label { background: #20955d; }
.trial-field.tone-success > .trial-field-value > p { color: #256d4a; }
.trial-list-object { padding: 0 !important; border: 0 !important; background: transparent !important; }
.trial-convert { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 26px; background: #f3f8fe; }
.trial-convert div strong { display: block; color: #153a5d; font-size: 17px; }
.trial-convert div span { display: block; margin-top: 5px; color: #6c8096; font-size: 12px; }
.trial-convert nav { display: flex; flex-wrap: wrap; gap: 9px; }
.product-shot { position: relative; margin: 0; border: 1px solid var(--landing-line); border-radius: 17px; background: #fff; box-shadow: 0 30px 80px -44px rgba(18,67,125,.52); }
.product-shot img { width: 100%; height: auto; border-radius: inherit; background: #f4f8fd; }
.hero-product-shot { max-width: 1040px; margin: 58px auto 0; padding-top: 38px; border-radius: 18px; overflow: hidden; }
.hero-product-shot img { border-radius: 0; }
.shot-browser-bar { position: absolute; top: 0; left: 0; z-index: 2; display: flex; align-items: center; gap: 7px; width: 100%; height: 38px; padding: 0 14px; border-bottom: 1px solid #e4ebf3; background: linear-gradient(#fbfdff, #f2f6fa); }
.shot-browser-bar i { width: 9px; height: 9px; border-radius: 50%; background: #cfdae7; }
.shot-browser-bar span { margin-left: 7px; color: #7b8a9e; font: 10px var(--landing-mono); letter-spacing: .05em; }
.hero-product-shot figcaption { display: flex; justify-content: space-between; padding: 11px 2px 0; color: #8390a1; font: 10px var(--landing-mono); letter-spacing: .1em; background: var(--landing-ground); }

.landing-section { width: min(var(--landing-max), calc(100% - 56px)); margin: 0 auto; padding: 104px 0; }
.section-heading { max-width: 770px; margin-bottom: 58px; }
.heading-rule { display: flex; align-items: center; gap: 16px; }
.heading-rule::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, rgba(23,105,224,.26), transparent); }
.section-heading h2 { margin: 14px 0 15px; color: #10243b; font-size: clamp(36px, 4.5vw, 52px); font-weight: 780; line-height: 1.12; letter-spacing: -.04em; text-wrap: balance; }
.section-heading > p:not(.eyebrow) { margin: 0; color: var(--landing-muted); font-size: 16px; line-height: 1.85; }

.flywheel-section { padding-top: 116px; }
.flywheel-overview { display: grid; grid-template-columns: minmax(360px, 450px) minmax(0, 1fr); gap: clamp(52px, 8vw, 104px); align-items: center; }
.landing-flywheel { display: block; width: 100%; max-width: 450px; height: auto; margin: 0 auto; overflow: visible; }
.wheel-ring-base, .wheel-ring-dash, .wheel-ring-glow { fill: none; }
.wheel-ring-base { stroke: rgba(23,105,224,.18); stroke-width: 1.5; }
.wheel-ring-dash { stroke: rgba(23,105,224,.42); stroke-width: 1.2; stroke-dasharray: 3 9; stroke-linecap: round; transform-box: view-box; transform-origin: 220px 220px; animation: wheel-spin-reverse 28s linear infinite; }
.wheel-runner { transform-box: view-box; transform-origin: 220px 220px; animation: wheel-spin 14s linear infinite; }
.wheel-ring-glow { stroke: url(#blue-arc); stroke-width: 4; stroke-linecap: round; stroke-dasharray: 150 680; filter: drop-shadow(0 0 7px rgba(23,105,224,.48)); }
.wheel-signal { fill: #1769e0; stroke: #fff; stroke-width: 3; filter: drop-shadow(0 0 7px rgba(23,105,224,.72)); }
.wheel-core-kicker, .wheel-core-title, .node-number, .node-label { text-anchor: middle; dominant-baseline: middle; }
.wheel-core-kicker { fill: #667991; font: 750 13px var(--landing-mono); letter-spacing: .08em; }
.wheel-core-title { fill: #0d4ea8; font-size: 21px; font-weight: 800; }
.node-halo { fill: rgba(23,105,224,0); stroke: rgba(89,175,255,0); stroke-width: 1; }
.node-circle { fill: #fff; stroke: #74aeea; stroke-width: 1.6; }
.node-number { fill: var(--landing-blue); font: 800 11px var(--landing-mono); }
.node-label { fill: #142b45; font-size: 16px; font-weight: 750; letter-spacing: .015em; }
.node-label-right { text-anchor: start; }
.node-label-left { text-anchor: end; }

.flywheel-node.is-active .node-halo { fill: rgba(23,105,224,.16); stroke: rgba(89,175,255,.82); stroke-width: 2; }
.flywheel-node.is-active .node-circle { fill: #1769e0; stroke: #1769e0; stroke-width: 2.2; }
.flywheel-node.is-active .node-number { fill: #fff; }
.flywheel-node.is-active .node-label { fill: #1769e0; font-weight: 850; }
.flywheel-copy { max-width: 580px; }
.flywheel-quote { margin: 0 0 20px; color: #10243b; font-size: clamp(30px, 4vw, 48px); font-weight: 800; line-height: 1.18; letter-spacing: -.04em; }
.flywheel-quote span, .flywheel-quote em { display: block; white-space: nowrap; }
.flywheel-quote em { color: var(--landing-blue); font-style: normal; }
.flywheel-copy > p:not(.flywheel-quote) { margin: 0; color: var(--landing-muted); font-size: 16px; line-height: 1.9; }
.flywheel-copy ul { display: grid; gap: 11px; margin: 26px 0 0; padding: 0; list-style: none; }
.flywheel-copy li { display: grid; grid-template-columns: 110px 1fr; gap: 14px; padding: 14px 17px; border: 1px solid #e3ebf4; border-radius: 12px; background: rgba(255,255,255,.86); }
.flywheel-copy li strong { color: #173654; font-size: 14px; }
.flywheel-copy li span { color: #738399; font-size: 13px; line-height: 1.6; }
.text-arrow { display: inline-flex; gap: 9px; align-items: center; margin-top: 24px; color: var(--landing-blue); font: 750 13px var(--landing-mono); letter-spacing: .04em; }

.system-section { padding-top: 118px; }
.system-steps { border-top: 1px dashed #dce6f0; }
.system-step { display: grid; grid-template-columns: .88fr 1.12fr; gap: clamp(44px, 7vw, 86px); align-items: start; padding: 82px 0; border-bottom: 1px dashed #dce6f0; }
.system-step:nth-child(even) .step-shot { order: -1; }
.step-copy { position: sticky; top: 96px; }
.step-number { display: block; color: transparent; background: linear-gradient(180deg, #8dccff 5%, #1769e0 88%); -webkit-background-clip: text; background-clip: text; font: 850 clamp(86px, 9vw, 126px)/.84 var(--landing-mono); letter-spacing: -.08em; }
.step-tag { margin: 24px 0 0; color: #73869d; font: 750 11px var(--landing-mono); letter-spacing: .2em; }
.step-copy h3 { margin: 11px 0 15px; color: #10263e; font-size: clamp(28px, 3vw, 38px); line-height: 1.2; letter-spacing: -.035em; }
.step-copy > p:not(.step-tag) { margin: 0; color: var(--landing-muted); font-size: 16px; line-height: 1.85; }
.step-copy ul { display: grid; gap: 10px; margin: 25px 0 0; padding: 0; list-style: none; }
.step-copy li { position: relative; padding: 13px 16px 13px 39px; border: 1px solid #e3ebf3; border-radius: 11px; color: #687a90; background: rgba(255,255,255,.8); font-size: 14px; line-height: 1.6; }
.step-copy li::before { content: "→"; position: absolute; left: 15px; top: 12px; color: var(--landing-blue); font-weight: 800; }
.step-shot { align-self: center; max-width: 650px; padding: 7px; border-radius: 18px; }
.step-shot img { border-radius: 12px; }
.step-shot .corner { position: absolute; z-index: 2; width: 21px; height: 21px; border: 2px solid #4d9ef2; }
.step-shot .c1 { top: -8px; left: -8px; border-right: 0; border-bottom: 0; }
.step-shot .c2 { top: -8px; right: -8px; border-left: 0; border-bottom: 0; }
.step-shot .c3 { bottom: -8px; left: -8px; border-right: 0; border-top: 0; }
.step-shot .c4 { right: -8px; bottom: -8px; border-left: 0; border-top: 0; }

.pain-section { padding-top: 118px; }
.pain-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.pain-grid article { position: relative; min-height: 310px; overflow: hidden; padding: 33px 30px; border: 1px solid var(--landing-line); border-radius: 17px; background: rgba(255,255,255,.92); transition: transform .3s, border-color .3s, box-shadow .3s; }
.pain-grid article::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, var(--landing-blue), var(--landing-sky), transparent 75%); }
.pain-grid article:hover { transform: translateY(-4px); border-color: #9fc8f1; box-shadow: 0 26px 55px -36px rgba(23,105,224,.55); }
.pain-grid article > span { color: var(--landing-blue); font: 750 11px var(--landing-mono); letter-spacing: .18em; }
.pain-grid h3 { margin: 36px 0 15px; color: #14283f; font-size: 22px; line-height: 1.5; letter-spacing: -.02em; }
.pain-grid p { margin: 0; color: var(--landing-muted); font-size: 14px; line-height: 1.85; }

.audience-section { padding-top: 118px; }
.audience-list { overflow: hidden; border: 1px solid var(--landing-line); border-radius: 16px; background: rgba(255,255,255,.9); }
.audience-list article { display: grid; grid-template-columns: 230px 1fr; border-top: 1px solid #e8eef5; }
.audience-list article:first-child { border-top: 0; }
.audience-list strong { display: flex; align-items: center; gap: 11px; padding: 21px 26px; border-right: 1px solid #e8eef5; color: var(--landing-blue); font-size: 16px; }
.audience-list strong::before { content: "◆"; font-size: 8px; opacity: .65; }
.audience-list p { margin: 0; padding: 21px 27px; color: var(--landing-muted); font-size: 15px; }
.audience-tags { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 22px; }
.audience-tags span { padding: 10px 14px; border: 1px solid #dbe8f5; border-radius: 999px; color: #496984; background: #f1f7fd; font-size: 12px; }

.pricing-section { padding-top: 118px; }
.offer-section { display: grid; grid-template-columns: minmax(0,1fr) 390px; gap: clamp(54px, 8vw, 100px); align-items: center; padding: 52px; border: 1px solid var(--landing-line); border-radius: 20px; background: rgba(255,255,255,.86); }
.offer-copy h3 { margin: 13px 0 15px; color: #112840; font-size: clamp(30px, 3.2vw, 42px); line-height: 1.2; letter-spacing: -.035em; }
.offer-copy > p:not(.eyebrow) { margin: 0; color: var(--landing-muted); font-size: 15px; line-height: 1.85; }
.offer-copy ul { display: grid; gap: 12px; margin: 27px 0 0; padding: 0; list-style: none; color: #526a83; }
.offer-copy li::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 11px; border-radius: 2px; background: var(--landing-blue); }
.offer-card { padding: 34px; border: 1px solid #cbdced; border-radius: 17px; background: #fff; box-shadow: 0 24px 60px -38px rgba(23,105,224,.5); }
.offer-card > span { color: #526a82; font-size: 12px; font-weight: 750; }
.offer-card > div { display: flex; align-items: start; margin: 22px 0 9px; color: #10263e; }
.offer-card > div small { margin: 12px 5px 0 0; font-size: 18px; }
.offer-card > div strong { font-size: 66px; line-height: 1; letter-spacing: -.055em; }
.offer-card > p { margin: 0 0 24px; color: #778699; font-size: 12px; line-height: 1.8; }
.offer-card .full + .full { margin-top: 9px; }
.package-head { display: flex; justify-content: space-between; align-items: end; margin: 64px 0 20px; }
.package-head h3 { margin: 0; color: #142b43; font-size: 26px; }
.package-head p { margin: 0; color: #7c8998; font-size: 12px; }
.package-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.package-grid article { padding: 29px; border: 1px solid var(--landing-line); border-radius: 16px; background: rgba(255,255,255,.9); }
.package-grid article.recommended { border-color: #83b8ec; background: #eff7ff; box-shadow: 0 24px 55px -40px rgba(23,105,224,.62); }
.package-grid article > span { color: #4d6680; font-size: 12px; font-weight: 780; }
.package-grid article > div { display: flex; align-items: start; margin: 24px 0 13px; color: #122940; }
.package-grid article > div small { margin: 9px 5px 0 0; font-size: 14px; }
.package-grid article > div strong { font-size: 48px; line-height: 1; letter-spacing: -.04em; }
.package-grid article > p { min-height: 58px; color: #6f8194; font-size: 12px; line-height: 1.9; }
.package-grid article > p b { color: var(--landing-blue); }
.trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 60px; border-top: 1px solid var(--landing-line); border-bottom: 1px solid var(--landing-line); }
.trust-grid article { padding: 24px 20px; border-right: 1px solid var(--landing-line); }
.trust-grid article:last-child { border-right: 0; }
.trust-grid strong { color: #203b58; font-size: 13px; }
.trust-grid p { margin: 9px 0 0; color: #7a899a; font-size: 11px; line-height: 1.75; }

.contact-section { position: relative; padding: 120px 28px 112px; text-align: center; }
.contact-section::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(680px 340px at 50% 56%, rgba(23,105,224,.13), transparent 72%); }
.contact-inner { width: min(900px, 100%); margin: 0 auto; }
.contact-section h2 { margin: 16px 0 17px; color: #10243b; font-size: clamp(38px, 5.4vw, 58px); line-height: 1.1; letter-spacing: -.045em; }
.contact-section h2 span { display: block; white-space: nowrap; }
.contact-section h2 span:last-child { color: var(--landing-blue); }
.contact-lead { max-width: 680px; margin: 0 auto; color: var(--landing-muted); font-size: 16px; line-height: 1.85; }
.direct-contact-card { display: grid; grid-template-columns: 300px 1fr; gap: 38px; align-items: center; max-width: 820px; margin: 48px auto 0; padding: 35px; border: 1px solid var(--landing-line); border-radius: 22px; background: #fff; text-align: left; box-shadow: 0 34px 80px -48px rgba(20,76,139,.58); }
.direct-qr { min-height: 300px; display: grid; place-items: center; padding: 10px; border: 1px solid #e2eaf2; border-radius: 16px; background: #fff; }
.direct-qr img { width: 100%; height: auto; object-fit: contain; border-radius: 9px; }
.direct-contact-copy h3 { margin: 10px 0 8px; color: #142a42; font-size: 25px; letter-spacing: -.025em; }
.direct-contact-copy > p:not(.eyebrow) { margin: 0; color: var(--landing-muted); font-size: 14px; line-height: 1.75; }
.direct-contact-copy ul { display: grid; gap: 8px; margin: 20px 0 23px; padding: 0; list-style: none; color: #536b83; font-size: 13px; }
.direct-contact-copy li::before { content: "✓"; margin-right: 9px; color: var(--landing-blue); font-weight: 850; }
.qr-fallback { color: #a13335; font-size: 12px; line-height: 1.7; text-align: center; }

.landing-footer { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; width: min(1320px, calc(100% - 56px)); margin: 0 auto; padding: 29px 0 38px; border-top: 1px solid var(--landing-line); }
.landing-footer > p { color: #8794a4; font-size: 11px; }
.landing-footer > div:last-child { display: flex; justify-content: flex-end; gap: 18px; }

.reveal-block { opacity: 0; transform: translateY(16px); transition: opacity .6s cubic-bezier(.16,1,.3,1), transform .6s cubic-bezier(.16,1,.3,1); }
.reveal-block.revealed { opacity: 1; transform: translateY(0); }

.auth-body .auth-screen { min-height: 100vh; background: #fff; }
.auth-body .auth-brand { justify-content: flex-start; overflow-y: auto; padding: 44px 6vw 38px; background: linear-gradient(145deg,#f1f7fe 0%,#eaf3fd 100%); }
.auth-body .auth-brand::before, .auth-body .auth-brand::after { display: none; }
.auth-back { align-self: flex-start; margin-bottom: 30px; color: #56708e; font-size: 12px; text-decoration: none; }
.auth-body .auth-avatar { width: 62px; height: 62px; margin-bottom: 18px; border: 4px solid rgba(255,255,255,.8); border-radius: 14px; box-shadow: none; }
.auth-body .auth-brand h1 { font-size: clamp(38px,3.4vw,54px); }
.auth-body .auth-lead { margin: 14px 0 16px; font-size: 15px; }
.auth-card-head { margin-bottom: 25px; }
.auth-card-head h2 { margin: 8px 0; color: #142a43; font-size: 27px; letter-spacing: -.03em; }
.auth-card-head p:not(.eyebrow) { margin: 0; color: #7a8797; font-size: 12px; line-height: 1.7; }
.auth-contact { width: 100%; margin-top: 16px; padding: 10px; border: 0; color: var(--landing-blue); background: transparent; font-size: 12px; }
.auth-body .auth-card { padding: 46px 0; }
.auth-mobile-flow { display: none; }
.auth-form input[aria-invalid="true"] { border-color: #d43f4d; box-shadow: 0 0 0 3px rgba(212,63,77,.10); }
.field-error { min-height: 0; margin-top: -3px; color: #b4233d; font-size: 11px; font-weight: 600; line-height: 1.45; }
.field-error:empty { display: none; }

@media (max-width: 900px) {
  .auth-body .auth-screen { grid-template-columns: 1fr; }
  .auth-body .auth-brand { min-height: auto; padding: 34px clamp(24px,7vw,58px) 44px; overflow: visible; }
  .auth-body .auth-brand h1 { font-size: clamp(36px,7vw,48px); }
  .auth-body .auth-card { width: min(480px,calc(100% - 48px)); padding: 48px 0 64px; }
}

@media (max-width: 900px) {
  .auth-body .orbit-auth { display: none; }
  .auth-mobile-flow { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin: 22px 0 0; color: #466683; font-size: 12px; font-weight: 700; line-height: 1.6; }
  .auth-mobile-flow span { color: var(--landing-blue); }
  .auth-body .auth-brand { padding-bottom: 30px; }
  .auth-body .auth-card { padding-top: 36px; }
}

.contact-dialog { width: min(520px, calc(100vw - 32px)); max-height: calc(100vh - 32px); padding: 0; border: 1px solid #dce8f5; border-radius: 20px; color: var(--landing-ink); background: #fff; box-shadow: 0 32px 90px -26px rgba(12,55,106,.52); overflow: auto; }
.contact-dialog::backdrop { background: rgba(21,42,66,.34); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }
.contact-card { position: relative; display: grid; justify-items: center; padding: 28px 30px 26px; text-align: center; }
.contact-card h2 { margin: 8px 0 9px; color: #10243b; font-size: 25px; letter-spacing: -.03em; }
.contact-card > p:not(.eyebrow) { margin: 0; color: #718197; font-size: 13px; line-height: 1.7; }
.contact-card > small { margin-top: 12px; color: #8a97a8; font-size: 11px; }
.dialog-close { position: absolute; top: 15px; right: 15px; display: grid; width: 34px; height: 34px; padding: 0; border: 1px solid #dce7f2; border-radius: 9px; color: #55708c; background: #f7fbff; place-items: center; cursor: pointer; }
.qr-frame { display: grid; width: min(320px, 100%); min-height: 160px; margin-top: 18px; place-items: center; }
.qr-frame img { display: block; width: 100%; height: auto; border-radius: 14px; }
.qr-frame .qr-fallback { padding: 26px; border: 1px dashed #a9c7e8; border-radius: 13px; color: #6f8195; background: #f4f9ff; font-size: 12px; line-height: 1.7; }

@keyframes wheel-spin { from { transform: rotate(-122.56deg); } to { transform: rotate(237.44deg); } }
@keyframes wheel-spin-reverse { to { transform: rotate(-360deg); } }

@media (max-width: 1100px) {
  .landing-header { grid-template-columns: 1fr auto; }
  .landing-nav { display: none; }
  .flywheel-overview { grid-template-columns: 420px 1fr; gap: 46px; }
  .system-step { grid-template-columns: 1fr; gap: 38px; }
  .system-step:nth-child(even) .step-shot { order: initial; }
  .step-copy { position: static; }
  .step-shot { width: min(800px, 100%); max-width: none; justify-self: center; }
  .offer-section { grid-template-columns: 1fr; }
  .offer-card { max-width: 430px; }
  .trust-grid { grid-template-columns: 1fr 1fr; }
  .trust-grid article:nth-child(2) { border-right: 0; }
  .trust-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--landing-line); }
}
@media (max-width: 860px) {
  .trial-experience { grid-template-columns: 1fr; }
  .trial-report-grid { grid-template-columns: 1fr; }
  .trial-report-section, .trial-report-section:nth-child(2n) { grid-column: 1; border-right: 0; }
  .flywheel-overview { grid-template-columns: 1fr; gap: 34px; }
  .flywheel-copy { margin: 0 auto; }
  .pain-grid, .package-grid { grid-template-columns: 1fr; }
  .pain-grid article { min-height: 0; }
  .audience-list article { grid-template-columns: 1fr; }
  .audience-list strong { padding-bottom: 7px; border-right: 0; }
  .audience-list p { padding-top: 5px; }
}
@media (max-width: 760px) {
  .landing-header { min-height: 60px; padding: 0 18px; }
  .landing-brand small, .landing-actions .landing-link { display: none; }
  .landing-login { padding: 9px 13px; }
  .landing-hero, .landing-section, .landing-footer { width: calc(100% - 36px); }
  .landing-hero { padding: 65px 0 30px; }
  .landing-hero h1 { margin-top: 18px; font-size: clamp(44px, 13vw, 58px); }
  .hero-lead { font-size: 15px; line-height: 1.8; }
  .hero-actions { align-items: stretch; flex-direction: column; max-width: 320px; margin-right: auto; margin-left: auto; }
  .hero-facts { grid-template-columns: 1fr 1fr; gap: 0; margin-top: 36px; }
  .hero-facts div { padding: 13px 10px; border-right: 1px solid var(--landing-line); border-bottom: 1px solid var(--landing-line); }
  .hero-facts div:nth-child(2n) { border-right: 0; }
  .hero-facts div:nth-last-child(-n+2) { border-bottom: 0; }
  .trial-experience { margin-top: 42px; padding: 23px 19px; }
  .trial-intro { padding: 2px; }
  .trial-action { padding: 19px 16px; }
  .trial-report-head { grid-template-columns: 88px 1fr; gap: 16px; padding: 19px; }
  .trial-report-cover { width: 88px; }
  .trial-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 14px 12px; }
  .trial-metric { grid-template-columns: 46px minmax(0,1fr); gap: 11px; padding: 12px; }
  .trial-metric-icon { width: 46px; height: 46px; }
  .trial-report-section { padding: 21px 19px; }
  .trial-field-grid { grid-template-columns: 1fr; }
  .trial-convert { align-items: stretch; flex-direction: column; padding: 20px; }
  .trial-convert nav { display: grid; }
  .hero-product-shot { margin-top: 42px; }
  .hero-product-shot figcaption { display: none; }
  .landing-section { padding: 78px 0; }
  .section-heading { margin-bottom: 40px; }
  .section-heading h2 { font-size: 36px; }
  .landing-flywheel { max-width: 430px; }
  .node-label { font-size: 14px; }
  .flywheel-quote { font-size: 34px; }
  .flywheel-copy li { grid-template-columns: 1fr; gap: 5px; }
  .system-step { padding: 56px 0; }
  .step-number { font-size: 82px; }
  .step-copy h3 { font-size: 29px; }
  .step-copy > p:not(.step-tag) { font-size: 15px; }
  .step-shot { padding: 4px; border-radius: 14px; }
  .pain-grid article, .package-grid article { padding: 26px 23px; }
  .offer-section { padding: 28px 22px; border-radius: 16px; }
  .offer-card { padding: 28px 22px; }
  .package-head { align-items: start; flex-direction: column; gap: 7px; margin-top: 50px; }
  .trust-grid { grid-template-columns: 1fr; }
  .trust-grid article { border-right: 0; border-bottom: 1px solid var(--landing-line); }
  .trust-grid article:last-child { border-bottom: 0; }
  .contact-section { padding: 88px 18px 82px; }
  .contact-section h2 { font-size: 40px; }
  .direct-contact-card { grid-template-columns: 1fr; gap: 26px; padding: 25px 21px; text-align: center; }
  .direct-qr { width: min(300px, 100%); min-height: 0; margin: 0 auto; }
  .direct-contact-copy ul { width: max-content; max-width: 100%; margin-right: auto; margin-left: auto; text-align: left; }
  .landing-footer { grid-template-columns: 1fr auto; }
  .landing-footer > p { display: none; }
  .landing-footer > div:last-child a:first-child { display: none; }
  .auth-body .auth-screen { grid-template-columns: 1fr; }
  .auth-body .auth-brand { min-height: auto; padding: 30px 24px 42px; }
  .auth-back { margin-bottom: 30px; }
  .auth-body .auth-card { width: calc(100% - 48px); padding: 44px 0 60px; }
}
@media (max-width: 420px) {
  .landing-brand strong { font-size: 13px; }
  .landing-flywheel { width: calc(100% + 12px); margin-left: -6px; }
  .node-label { font-size: 14px; }
  .wheel-core-kicker { font-size: 11px; }
  .wheel-core-title { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal-block { opacity: 1; transform: none; transition: none; }
  .wheel-ring-dash, .wheel-runner { animation: none; }
  .wheel-runner { transform: rotate(-122.56deg); }
}
