:root {
  --ink: #281251;
  --ink-2: #34215a;
  --purple: #7136e6;
  --purple-bright: #8b53f6;
  --purple-pale: #eee6ff;
  --lavender: #f4f0ff;
  --pink: #fff0f8;
  --paper: #ffffff;
  --surface: #f8f7fb;
  --line: rgba(40, 18, 81, 0.12);
  --muted: #6e6780;
  --green: #1c9a6c;
  --amber: #d88328;
  --red: #bf596a;
  --shadow: 0 24px 70px rgba(51, 25, 100, 0.14);
  --shadow-soft: 0 12px 34px rgba(51, 25, 100, 0.1);
  --display: "Manrope", "Avenir Next", Arial, sans-serif;
  --body: "DM Sans", Inter, Arial, sans-serif;
  --container: 1200px;
  --gutter: clamp(20px, 4vw, 48px);
  --section-radius: clamp(32px, 4vw, 58px);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: #fff; font-family: var(--body); font-size: 16px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
button { color: inherit; }
::selection { background: #ddccff; color: var(--ink); }

.skip-link { position: fixed; left: 16px; top: 12px; z-index: 5000; padding: 10px 14px; background: #fff; border-radius: 8px; transform: translateY(-160%); transition: transform .2s ease; }
.skip-link:focus { transform: translateY(0); }

.section-container { width: min(calc(100% - var(--gutter) * 2), var(--container)); margin-inline: auto; }
.section-rounded { margin: 16px; border-radius: var(--section-radius); overflow: hidden; }
.centered { max-width: 790px; text-align: center; }

.site-header { position: fixed; z-index: 1000; top: 22px; left: 0; width: 100%; padding-inline: var(--gutter); pointer-events: none; transition: transform .3s ease; }
.site-header.is-hidden { transform: translateY(-140%); }
.nav-shell { width: max-content; min-width: 620px; max-width: 100%; height: 62px; margin: 0 auto; padding: 7px 10px 7px 14px; display: flex; align-items: center; gap: 24px; background: rgba(255,255,255,.88); border: 1px solid rgba(88,54,145,.08); border-radius: 18px; box-shadow: 0 14px 34px rgba(39,18,81,.13); backdrop-filter: blur(18px); pointer-events: auto; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-family: var(--display); font-size: 21px; font-weight: 700; letter-spacing: -.04em; white-space: nowrap; }
.brand-mark { width: 38px; height: 38px; flex: none; }
.nav-links { padding-left: 22px; border-left: 1px solid var(--line); display: flex; align-items: center; gap: 24px; }
.nav-links a { position: relative; color: #3e2a5d; font-size: 14px; font-weight: 500; white-space: nowrap; }
.nav-links a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 1.5px; background: var(--purple); transition: right .22s ease; }
.nav-links a:hover::after, .nav-links a:focus-visible::after { right: 0; }
.nav-cta { margin-left: auto; }
.menu-toggle { display: none; }

.button { min-height: 48px; padding: 0 20px; display: inline-flex; justify-content: center; align-items: center; gap: 9px; border: 1px solid transparent; border-radius: 9px; cursor: pointer; font-weight: 500; line-height: 1; transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease, border-color .2s ease; }
.button svg { width: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.button:hover { transform: translateY(-2px); }
.button:active { transform: translateY(0); }
.button-primary { color: #fff; background: linear-gradient(180deg, #35126b 0%, #28104f 100%); border-color: #4c2782; box-shadow: 0 10px 22px rgba(47, 15, 99, .28), inset 0 1px rgba(255,255,255,.18); }
.button-primary:hover { background: linear-gradient(180deg, #6f34dc, #4c1e9f); box-shadow: 0 13px 26px rgba(67, 24, 137, .3); }
.button-secondary, .button-ghost { color: var(--ink); background: rgba(255,255,255,.82); border-color: rgba(82, 54, 132, .18); box-shadow: 0 6px 14px rgba(51,25,100,.1); }
.button-secondary:hover, .button-ghost:hover { border-color: rgba(82,54,132,.35); background: #fff; }
.button-small { min-height: 43px; padding-inline: 15px; font-size: 14px; }

.hero { position: relative; margin: 16px 16px 0; padding: 142px var(--gutter) 92px; min-height: 1020px; border-radius: var(--section-radius); overflow: hidden; background: linear-gradient(180deg, #f3f1ff 0%, #fcf1fb 48%, #fff 94%); }
.hero::before, .hero::after { content: ""; position: absolute; top: -10%; width: 19%; height: 88%; background: linear-gradient(180deg, rgba(255,255,255,.22), rgba(223,198,255,.35) 60%, rgba(255,206,235,.2)); transform: skewX(-14deg); pointer-events: none; }
.hero::before { left: -5%; }.hero::after { right: -5%; transform: skewX(14deg); }
.hero-grid { position: absolute; top: 130px; left: 50%; width: 820px; height: 450px; transform: translateX(-50%); opacity: .14; background-image: linear-gradient(rgba(100,56,180,.14) 1px, transparent 1px), linear-gradient(90deg, rgba(100,56,180,.14) 1px, transparent 1px); background-size: 36px 36px; mask-image: radial-gradient(ellipse at center, #000, transparent 72%); }
.hero-glow { --mx: 50%; --my: 42%; position: absolute; inset: 0; background: radial-gradient(circle at var(--mx) var(--my), rgba(147,93,255,.18), transparent 20%), radial-gradient(ellipse at 50% 48%, rgba(243,139,220,.28), transparent 36%); filter: blur(10px); pointer-events: none; }
.hero-copy { position: relative; z-index: 2; max-width: 890px; margin: 0 auto; text-align: center; }
.eyebrow { width: max-content; margin: 0 auto 20px; padding: 7px 12px; display: flex; align-items: center; gap: 8px; color: #56318c; background: rgba(255,255,255,.56); border: 1px solid rgba(93,57,154,.12); border-radius: 100px; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; backdrop-filter: blur(8px); }
.pulse-dot { position: relative; width: 7px; height: 7px; border-radius: 50%; background: #7e43ff; box-shadow: 0 0 0 4px rgba(126,67,255,.12); }
.pulse-dot::after { content: ""; position: absolute; inset: -4px; border: 1px solid #8b53f6; border-radius: inherit; animation: pulse 2.2s ease-out infinite; }
@keyframes pulse { 70%, 100% { transform: scale(2); opacity: 0; } }
.hero h1, h2, h3 { font-family: var(--display); margin: 0; letter-spacing: -.055em; }
.hero h1 { font-size: clamp(52px, 6.1vw, 82px); line-height: 1.04; font-weight: 600; }
.hero h1 span { color: var(--purple); }
.hero-copy > p { max-width: 690px; margin: 24px auto 0; color: #594d6b; font-size: clamp(17px, 1.5vw, 20px); line-height: 1.55; }
.hero-actions { margin-top: 30px; display: flex; justify-content: center; gap: 12px; }
.hero-assurances { margin-top: 22px; display: flex; justify-content: center; flex-wrap: wrap; gap: 11px 22px; color: #686076; font-size: 12.5px; }
.hero-assurances span { display: flex; align-items: center; gap: 6px; }.hero-assurances i { color: var(--green); font-style: normal; font-weight: 600; }

.product-stage { position: relative; z-index: 3; max-width: 1240px; margin: 64px auto 0; perspective: 1400px; }
.stage-halo { position: absolute; z-index: -1; inset: -45px -70px; background: radial-gradient(ellipse at 50% 0%, rgba(135,75,246,.35), transparent 60%), radial-gradient(ellipse at 75% 30%, rgba(255,118,203,.25), transparent 43%); filter: blur(30px); }
.app-window { position: relative; min-height: 585px; background: rgba(255,255,255,.96); border: 1px solid rgba(57,29,100,.09); border-radius: 28px 28px 10px 10px; box-shadow: 0 45px 90px rgba(45,20,88,.18), 0 0 0 10px rgba(255,255,255,.38); overflow: hidden; transform: rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)); transition: transform .18s ease-out; transform-origin: 50% 50%; }
.app-topbar { height: 58px; padding: 0 18px; display: flex; align-items: center; border-bottom: 1px solid #e9e6ee; color: #5e586b; font-size: 12px; }
.app-mini-brand { display: flex; align-items: center; gap: 8px; color: var(--ink); }.mini-mark, .board-logo { width: 28px; height: 28px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, #8c54f5, #35116d); border-radius: 7px; font-family: var(--display); font-weight: 700; }.top-divider { width: 1px; height: 22px; margin-left: 8px; background: #dfdce4; }
.app-tabs { margin-left: 18px; display: flex; align-items: center; gap: 5px; }.app-tabs span { padding: 8px 11px; border-radius: 7px; }.app-tabs .active { color: var(--ink); background: #f1eef6; font-weight: 600; }
.app-user { margin-left: auto; display: flex; align-items: center; gap: 14px; }.source-health { display: flex; align-items: center; gap: 6px; }.source-health i { width: 7px; height: 7px; border-radius: 50%; background: #20a875; }.avatar { width: 30px; height: 30px; display: grid; place-items: center; color: #3d285c; background: #e5dbfb; border-radius: 50%; font-size: 10px; font-weight: 600; }
.app-workspace { min-height: 527px; display: grid; grid-template-columns: 190px minmax(380px, 1fr) 270px; }
.project-panel { padding: 22px 16px; border-right: 1px solid #ebe8ef; background: #fbfafc; }
.panel-kicker { color: #9a94a3; font-size: 9px; font-weight: 600; letter-spacing: .13em; }.project-name { margin-top: 5px; font-size: 15px; font-weight: 600; }.project-meta { color: #8a8394; font-size: 10px; }
.progress-block { margin: 17px 0 22px; }.progress-label { display: flex; justify-content: space-between; color: #777080; font-size: 9px; }.progress-label strong { color: var(--purple); }.progress-track { height: 4px; margin-top: 7px; background: #e7e2ec; border-radius: 10px; overflow: hidden; }.progress-track i { display: block; width: 70%; height: 100%; background: linear-gradient(90deg, #7340de, #a16afa); }
.side-heading { margin: 16px 7px 7px; color: #a49eaa; font-size: 8px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.side-row { width: 100%; padding: 7px 7px; display: flex; align-items: center; gap: 7px; color: #615a6a; background: transparent; border: 0; border-radius: 7px; text-align: left; font-size: 10px; cursor: default; }.side-row:hover { background: #f1edf7; }.side-row > i { margin-left: auto; width: 16px; height: 16px; display: grid; place-items: center; color: #a76f16; background: #fff3dc; border-radius: 50%; font-size: 8px; font-style: normal; }.side-row.is-complete > i { color: #118259; background: #ddf5eb; }.row-icon { width: 16px; text-align: center; color: #725c94; font-size: 14px; }
.side-note { margin-top: 18px; padding: 9px; display: flex; align-items: center; gap: 7px; color: #80778c; background: #f2eef7; border-radius: 8px; font-size: 9px; }.side-note span { width: 17px; height: 17px; display: grid; place-items: center; color: #fff; background: #8d58ed; border-radius: 5px; }
.map-panel { position: relative; overflow: hidden; background: #f3f0f6; }.map-toolbar { position: absolute; z-index: 3; top: 13px; left: 14px; right: 14px; padding: 10px 12px; display: flex; align-items: center; background: rgba(255,255,255,.9); border: 1px solid rgba(61,35,97,.1); border-radius: 10px; box-shadow: 0 5px 14px rgba(40,18,81,.08); backdrop-filter: blur(10px); }.map-toolbar > div:first-child { display: grid; }.map-toolbar strong { font-size: 11px; }.map-toolbar span { color: #85808c; font-size: 8px; }.map-tools { margin-left: auto; display: flex; gap: 5px; }.map-tools button { width: 26px; height: 26px; display: grid; place-items: center; background: #fff; border: 1px solid #e3dee8; border-radius: 6px; cursor: pointer; }
.map-canvas { width: 100%; height: 100%; object-fit: cover; }.map-caveat { position: absolute; right: 12px; bottom: 10px; padding: 7px 9px; display: flex; align-items: center; gap: 6px; color: #726a7d; background: rgba(255,255,255,.9); border-radius: 7px; font-size: 8px; }.map-caveat span { width: 14px; height: 14px; display: grid; place-items: center; color: #fff; background: #7b47df; border-radius: 50%; font-weight: 600; }
.evidence-panel { padding: 18px 14px; background: #fff; border-left: 1px solid #ebe8ef; }.evidence-head { margin-bottom: 14px; display: flex; align-items: center; }.evidence-head > div { display: grid; }.evidence-head span { color: #9a94a3; font-size: 8px; letter-spacing: .12em; }.evidence-head strong { font-size: 14px; }.evidence-head button { margin-left: auto; background: transparent; border: 0; color: #918b9b; }
.finding-card { margin-bottom: 9px; padding: 12px; border: 1px solid #e9e5ed; border-radius: 9px; box-shadow: 0 5px 14px rgba(40,18,81,.035); }.finding-state { margin-bottom: 7px; display: flex; align-items: center; gap: 5px; color: #777080; font-size: 8px; text-transform: uppercase; letter-spacing: .04em; }.finding-state i { width: 6px; height: 6px; border-radius: 50%; }.finding-state span { margin-left: auto; padding: 2px 4px; color: #766988; background: #f0edf4; border-radius: 4px; letter-spacing: 0; }.finding-card strong { font-size: 11px; }.finding-card p { margin: 4px 0 0; color: #8b8494; font-size: 8px; line-height: 1.45; }.finding-card.supported .finding-state i { background: var(--green); }.finding-card.verify .finding-state i { background: var(--amber); }.finding-card.unknown .finding-state i { background: var(--red); }
.report-button { width: 100%; margin-top: 6px; padding: 10px; display: flex; justify-content: space-between; color: #fff; background: #2e1258; border: 0; border-radius: 8px; font-size: 9px; text-decoration: none; }
.floating-proof { position: absolute; padding: 11px 13px; display: flex; align-items: center; gap: 10px; background: rgba(255,255,255,.94); border: 1px solid rgba(74,38,129,.12); border-radius: 12px; box-shadow: var(--shadow-soft); backdrop-filter: blur(12px); }.proof-left { left: -22px; bottom: 56px; }.proof-right { right: -18px; top: 98px; }.proof-icon { width: 29px; height: 29px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, #a46cf9, #5d2bc3); border-radius: 8px; }.floating-proof div { display: grid; }.floating-proof small { color: #8b8495; font-size: 8px; }.floating-proof strong { font-size: 10px; }.floating-proof > i { margin-left: 8px; color: var(--green); font-style: normal; }
.source-ribbon { position: relative; z-index: 2; max-width: 980px; margin: 70px auto 0; text-align: center; }.source-ribbon p { margin: 0; color: #777080; font-size: 12px; }.source-list { margin-top: 22px; display: flex; justify-content: center; align-items: center; gap: 22px; color: #392258; font-family: var(--display); font-weight: 600; }.source-list i { width: 1px; height: 20px; background: #d9d2e0; }.source-ribbon small { display: block; margin-top: 20px; color: #a19aa8; font-size: 9px; }

.problem-section { position: relative; padding: clamp(85px, 10vw, 140px) 0; color: #fff; background: #29134c; }
.problem-section::before { content: ""; position: absolute; inset: 0; opacity: .45; background: radial-gradient(circle at 70% 45%, rgba(163,89,255,.42), transparent 26%), radial-gradient(circle at 85% 65%, rgba(252,102,190,.19), transparent 23%); }
.problem-layout { position: relative; display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: clamp(60px, 8vw, 120px); }
.section-label { width: max-content; margin-bottom: 18px; padding: 6px 10px; color: #6732ca; background: #eee6ff; border-radius: 100px; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; }.section-label.light { color: #d5c3ff; background: rgba(168,114,255,.16); border: 1px solid rgba(207,181,255,.16); }
.problem-copy h2, .feature-copy h2, .centered h2, .stats-copy h2, .audience-title h2, .cta-copy h2 { font-size: clamp(38px, 4.5vw, 60px); line-height: 1.06; font-weight: 600; }
.problem-copy > p { max-width: 500px; margin: 24px 0 34px; color: #c8bdd8; font-size: 17px; }
.problem-list { margin: 0; padding: 0; list-style: none; }.problem-list li { padding: 15px 0; display: flex; gap: 14px; border-top: 1px solid rgba(255,255,255,.1); color: #ddd4e8; }.problem-list span { color: #a979ff; font-size: 11px; font-weight: 600; }
.source-chaos { position: relative; min-height: 520px; }.chaos-orbit { position: absolute; top: 50%; left: 50%; border: 1px solid rgba(190,153,255,.13); border-radius: 50%; transform: translate(-50%,-50%); }.orbit-one { width: 430px; height: 430px; }.orbit-two { width: 290px; height: 290px; }
.chaos-card { position: absolute; width: 230px; padding: 13px; display: flex; align-items: center; gap: 10px; background: rgba(255,255,255,.95); color: var(--ink); border-radius: 12px; box-shadow: 0 20px 45px rgba(0,0,0,.25); animation: float 5s ease-in-out infinite; }.chaos-card div:nth-child(2) { display: grid; }.chaos-card small { color: #90879b; font-size: 9px; }.chaos-card strong { font-size: 11px; }.chaos-card > span { margin-left: auto; width: 23px; height: 23px; display: grid; place-items: center; color: #7d4ddd; background: #eee6ff; border-radius: 50%; font-size: 11px; }.chaos-card > span.warning { color: #a9630b; background: #fff0d9; }
.file-icon { width: 38px; height: 38px; display: grid; place-items: center; color: #fff; background: #7e43ff; border-radius: 9px; font-size: 9px; font-weight: 600; }.file-icon.map { background: #18a47a; }.file-icon.law { background: #e078a9; font-family: Georgia, serif; font-size: 19px; }.file-icon.date { background: #e29a3d; font-size: 17px; }
.card-pdf { top: 45px; left: 12px; transform: rotate(-5deg); }.card-map { top: 70px; right: 0; transform: rotate(5deg); animation-delay: -.9s; }.card-law { bottom: 60px; left: 0; transform: rotate(4deg); animation-delay: -1.7s; }.card-date { right: 15px; bottom: 45px; transform: rotate(-4deg); animation-delay: -2.8s; }
@keyframes float { 0%,100% { translate: 0 0; } 50% { translate: 0 -10px; } }
.chaos-center { position: absolute; z-index: 2; top: 50%; left: 50%; width: 190px; height: 190px; padding: 25px; display: flex; flex-direction: column; justify-content: center; align-items: center; color: #fff; background: radial-gradient(circle at 35% 25%, #8e55ef, #3b176f 70%); border: 8px solid rgba(255,255,255,.06); border-radius: 50%; box-shadow: 0 0 50px rgba(149,86,255,.35); transform: translate(-50%,-50%); text-align: center; }.chaos-center svg { width: 44px; margin-bottom: 12px; fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; }.chaos-center strong { font-family: var(--display); }.chaos-center span { margin-top: 5px; color: #d6c9e7; font-size: 10px; }

.solution-intro { padding: clamp(90px, 11vw, 150px) 0 100px; }.centered .section-label { margin-inline: auto; }.centered h2 span { color: var(--purple); }.centered > p { max-width: 640px; margin: 22px auto 0; color: var(--muted); font-size: 18px; }
.workflow { margin-top: 65px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }.workflow-card { position: relative; min-height: 390px; padding: 30px; background: #faf9fc; border: 1px solid #ece8f1; border-radius: 24px; overflow: hidden; transition: transform .25s ease, box-shadow .25s ease; }.workflow-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-soft); }.workflow-number { position: absolute; top: 24px; right: 27px; color: #c4bdcb; font-size: 11px; font-weight: 600; }.workflow-icon { width: 48px; height: 48px; margin-bottom: 70px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, #9d68f7, #6730d1); border-radius: 14px; box-shadow: 0 12px 22px rgba(108,48,215,.22); font-size: 22px; }.workflow-icon.resolve { background: linear-gradient(145deg, #f28abe, #b94c86); }.workflow-icon.document { background: linear-gradient(145deg, #49bea0, #168766); }
.workflow-card h3 { font-size: 26px; }.workflow-card > p { margin: 10px 0 28px; color: var(--muted); font-size: 14px; }.micro-ui { position: absolute; left: 22px; right: 22px; bottom: 22px; min-height: 78px; padding: 14px; background: #fff; border: 1px solid #e7e3ec; border-radius: 12px; box-shadow: 0 8px 20px rgba(47,25,81,.06); }.location-ui { display: grid; gap: 8px; }.location-ui span { padding: 8px; color: #51485e; border: 1px solid #e5e1e9; border-radius: 7px; font-size: 11px; }.location-ui i { color: var(--green); font-size: 9px; font-style: normal; }.timeline-ui { display: flex; justify-content: space-around; align-items: flex-end; }.timeline-line { position: absolute; top: 31px; left: 24px; right: 24px; height: 2px; background: #e0dae8; }.node { position: absolute; top: 25px; width: 13px; height: 13px; background: #fff; border: 3px solid #8c55ed; border-radius: 50%; }.node.a { left: 20%; }.node.b { left: 49%; border-color: #d36b9f; }.node.c { right: 18%; border-color: #c7bfcd; }.timeline-ui small { color: #9991a2; font-size: 9px; }.document-ui { display: grid; gap: 8px; }.document-ui span { display: flex; align-items: center; gap: 7px; color: #6e6678; font-size: 10px; }.document-ui i { width: 7px; height: 7px; background: #24a177; border-radius: 50%; }

.feature-section { padding: 90px 0 150px; }.feature-row { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: clamp(65px, 9vw, 130px); }.feature-copy > p { margin: 24px 0 28px; color: var(--muted); font-size: 17px; }.feature-checks { display: grid; gap: 10px; color: #5e546d; font-size: 14px; }.feature-checks span { display: flex; align-items: center; gap: 9px; }.feature-checks i { width: 20px; height: 20px; display: grid; place-items: center; color: var(--green); background: #e0f4ed; border-radius: 50%; font-size: 10px; font-style: normal; }
.time-visual { position: relative; min-height: 520px; padding: 44px; background: linear-gradient(145deg, #f1ecff, #fff3fa); border-radius: 34px; box-shadow: inset 0 0 0 1px rgba(102,55,182,.06); }.time-card { position: relative; padding: 22px; background: rgba(255,255,255,.94); border: 1px solid #e6e0ed; border-radius: 15px; box-shadow: var(--shadow-soft); }.current-plan { width: 82%; }.adopted-plan { width: 82%; margin: 24px 0 0 auto; }.time-card-head { display: flex; align-items: center; justify-content: space-between; }.time-card-head > span { color: #8f869a; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }.time-card-head i { padding: 4px 7px; border-radius: 100px; font-size: 8px; font-style: normal; }.state-live { color: #147c59; background: #def4eb; }.state-later { color: #8a630d; background: #fff1d2; }.time-card > strong { display: block; margin-top: 14px; font-family: var(--display); font-size: 17px; }.time-card > small { color: #8b8395; }.date-range { position: relative; height: 32px; margin-top: 22px; display: flex; justify-content: space-between; color: #7b7384; font-size: 9px; }.date-range::before { content: ""; position: absolute; top: 4px; left: 0; right: 0; height: 4px; background: #ddd5e7; border-radius: 10px; }.date-range i { position: absolute; z-index: 1; top: 1px; left: 0; width: 72%; height: 10px; background: linear-gradient(90deg, #8a52ed, #c595ff); border-radius: 10px; }.date-range span { align-self: end; }.date-range.muted i { left: 58%; width: 42%; background: #e8b75c; }
.time-connector { position: absolute; z-index: 3; top: 214px; left: 50%; width: 76px; height: 76px; display: grid; place-items: center; color: #fff; background: #31135e; border: 7px solid #f4edfb; border-radius: 50%; transform: translateX(-50%); text-align: center; font-size: 8px; line-height: 1.2; box-shadow: 0 10px 25px rgba(48,18,93,.22); }.resolution-pill { position: absolute; left: 50%; bottom: 31px; width: 310px; padding: 12px 14px; display: flex; align-items: center; gap: 10px; background: #fff; border: 1px solid #dfd7e8; border-radius: 12px; box-shadow: var(--shadow-soft); transform: translateX(-50%); }.resolution-pill > i { width: 30px; height: 30px; display: grid; place-items: center; color: #fff; background: #20a475; border-radius: 9px; font-style: normal; }.resolution-pill div { display: grid; }.resolution-pill small { color: #948a9e; font-size: 8px; }.resolution-pill strong { font-size: 11px; }

.evidence-section { padding: clamp(90px, 10vw, 140px) 0; color: #fff; background: linear-gradient(145deg, #32175b, #211039); }.evidence-layout { display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: clamp(60px, 8vw, 120px); }.evidence-visual { position: relative; padding: 34px; background: radial-gradient(circle at 30% 20%, rgba(153,84,247,.34), transparent 42%), rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.08); border-radius: 30px; }.evidence-browser { background: #fff; color: var(--ink); border-radius: 15px; box-shadow: 0 35px 70px rgba(0,0,0,.25); overflow: hidden; }.browser-bar { height: 44px; padding: 0 14px; display: flex; align-items: center; gap: 6px; color: #8b8294; background: #f5f2f7; border-bottom: 1px solid #e3dfe7; font-size: 9px; }.browser-bar i { width: 8px; height: 8px; background: #d3ccd9; border-radius: 50%; }.browser-bar span { margin-left: auto; margin-right: auto; }.evidence-record { padding: 25px; }.record-top { display: flex; justify-content: space-between; }.record-id { padding: 5px 8px; color: #6b35d3; background: #eee6ff; border-radius: 6px; font-size: 10px; font-weight: 600; }.record-state { padding: 5px 8px; color: #14815d; background: #def5ec; border-radius: 100px; font-size: 9px; }.evidence-record h3 { margin: 19px 0; font-size: 19px; }.record-row { padding: 10px 0; display: grid; grid-template-columns: 90px 1fr; border-top: 1px solid #eeeaf1; font-size: 10px; }.record-row span { color: #918a99; }.hash-row { margin-top: 12px; padding: 11px; display: flex; align-items: center; gap: 10px; background: #f5f3f7; border-radius: 8px; font-size: 9px; }.hash-row span { color: #918a99; }.hash-row code { color: #51475f; }.hash-row i { margin-left: auto; color: var(--green); font-style: normal; }.citation-pop { position: absolute; right: -28px; bottom: 12px; width: 245px; padding: 13px; display: grid; color: var(--ink); background: #fff; border-radius: 11px; box-shadow: var(--shadow); }.citation-pop span { color: #998fa3; font-size: 8px; text-transform: uppercase; }.citation-pop strong { font-size: 11px; }.citation-pop i { position: absolute; top: 16px; right: 14px; color: #7a43df; font-style: normal; }.light-copy > p { color: #c9bed6; }.text-link { display: inline-flex; align-items: center; gap: 9px; margin-top: 5px; color: #fff; font-weight: 500; border-bottom: 1px solid rgba(255,255,255,.25); }.text-link span { color: #b88cff; }

.assessment-section { padding: 140px 0 110px; }.assessment-board { margin-top: 65px; background: #fff; border: 1px solid #e7e2eb; border-radius: 24px; box-shadow: var(--shadow); overflow: hidden; }.board-header { height: 80px; padding: 0 24px; display: flex; align-items: center; border-bottom: 1px solid #e9e5ed; }.board-header > div:first-child { display: flex; align-items: center; gap: 10px; }.board-header > div:first-child > div { display: grid; }.board-header strong { font-size: 13px; }.board-header small { color: #8d8596; font-size: 9px; }.board-actions { margin-left: auto; display: flex; gap: 8px; }.board-actions button, .board-actions a { padding: 9px 12px; color: #5d536b; background: #fff; border: 1px solid #ded8e3; border-radius: 7px; font-size: 9px; }.board-actions a { color: #fff; background: #32135f; border-color: #32135f; }
.board-summary { padding: 18px 24px; display: grid; grid-template-columns: repeat(4, 1fr); background: #f8f7fa; border-bottom: 1px solid #e9e5ed; }.board-summary > div { padding-left: 18px; display: grid; border-left: 1px solid #e1dde5; }.board-summary > div:first-child { padding-left: 0; border-left: 0; }.board-summary small { color: #9991a1; font-size: 8px; letter-spacing: .07em; }.board-summary strong { margin-top: 3px; font-size: 11px; }.review-state i { display: inline-block; width: 6px; height: 6px; margin-right: 4px; background: var(--amber); border-radius: 50%; }.board-summary .seal { color: var(--green); }
.board-content { display: grid; grid-template-columns: 1fr 280px; }.findings-table { padding: 24px; }.table-head { padding: 0 14px 9px; display: grid; grid-template-columns: 1fr 120px 75px; color: #a098a6; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }.table-row { min-height: 68px; padding: 11px 14px; display: grid; grid-template-columns: 1fr 120px 75px; align-items: center; border-top: 1px solid #ebe7ee; }.table-row > div { display: flex; align-items: center; gap: 10px; }.table-row > div > span { display: grid; }.table-row strong { font-size: 11px; }.table-row small { color: #918997; font-size: 8px; }.status-dot { width: 8px; height: 8px; border-radius: 50%; }.status-dot.supported { background: var(--green); }.status-dot.verify { background: var(--amber); }.status-dot.unknown { background: var(--red); }.status-tag { width: max-content; padding: 5px 8px; border-radius: 100px; font-size: 8px; }.status-tag.supported { color: #147c59; background: #def4eb; }.status-tag.verify { color: #9b650e; background: #fff0d1; }.status-tag.unknown { color: #a14e5c; background: #fae3e7; }.evidence-link { color: #6f39d7; font-size: 9px; font-weight: 600; }.next-actions { padding: 24px 20px; background: #faf9fb; border-left: 1px solid #ebe7ee; }.next-head { margin-bottom: 12px; display: flex; align-items: center; justify-content: space-between; font-size: 11px; font-weight: 600; }.next-head strong { width: 20px; height: 20px; display: grid; place-items: center; color: #6e3bcf; background: #ebe1ff; border-radius: 6px; font-size: 9px; }.next-actions label { padding: 11px 0; display: flex; gap: 8px; color: #625969; border-top: 1px solid #ebe7ee; font-size: 9px; }.next-actions input { margin: 1px 0 0; accent-color: #7136e6; }.boundary-note { margin-top: 14px; padding: 11px; display: flex; gap: 8px; color: #746a7b; background: #f0ecf4; border-radius: 8px; font-size: 8px; }.boundary-note i { width: 16px; height: 16px; flex: none; display: grid; place-items: center; color: #fff; background: #7440d7; border-radius: 50%; font-style: normal; }.boundary-note p { margin: 0; }

.stats-section { padding: 85px 0; color: #fff; background: #7b43e5; }.stats-grid { display: grid; grid-template-columns: 2fr repeat(3, 1fr); align-items: end; gap: 40px; }.stats-copy h2 { font-size: clamp(34px, 4vw, 52px); }.stats-copy p { max-width: 520px; margin: 20px 0 0; color: #e5d9fb; }.stat { padding-left: 22px; display: grid; border-left: 1px solid rgba(255,255,255,.25); }.stat strong { font-family: var(--display); font-size: clamp(42px, 5vw, 64px); letter-spacing: -.06em; }.stat span { color: #e3d5fa; font-size: 12px; }

.audience-section { padding: 140px 0; }.audience-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 90px; }.audience-title { position: sticky; top: 130px; align-self: start; }.audience-title > p { color: var(--muted); font-size: 17px; }.audience-cards { display: grid; gap: 14px; }.audience-card { min-height: 165px; padding: 28px; display: grid; grid-template-columns: 52px 1fr auto; gap: 22px; align-items: start; background: #f8f7fa; border: 1px solid #ebe7ef; border-radius: 20px; transition: transform .22s ease, background-color .22s ease; }.audience-card:hover { transform: translateX(8px); background: #f2edff; }.audience-icon { width: 50px; height: 50px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, #9b65f4, #6230c8); border-radius: 14px; font-size: 22px; }.audience-card h3 { font-size: 22px; }.audience-card p { max-width: 470px; margin: 8px 0 0; color: var(--muted); font-size: 14px; }.audience-card > i { color: #c3bcc9; font-size: 10px; font-style: normal; }

.cta-section { position: relative; padding: 105px 0; background: linear-gradient(135deg, #f2edff, #fff0f8); }.cta-glow { position: absolute; inset: 0; background: radial-gradient(circle at 23% 60%, rgba(147,79,247,.25), transparent 30%), radial-gradient(circle at 76% 30%, rgba(245,119,191,.2), transparent 27%); }.cta-layout { position: relative; display: grid; grid-template-columns: 1fr .8fr; align-items: center; gap: 100px; }.cta-copy .eyebrow { margin-left: 0; }.cta-copy h2 span { color: var(--purple); }.cta-copy p { max-width: 550px; color: var(--muted); font-size: 17px; }.access-form { padding: 28px; background: rgba(255,255,255,.82); border: 1px solid rgba(81,44,139,.12); border-radius: 18px; box-shadow: var(--shadow-soft); backdrop-filter: blur(12px); }.access-form label { display: block; margin-bottom: 9px; font-size: 11px; font-weight: 600; }.form-row { display: flex; gap: 8px; }.form-row input { width: 100%; min-width: 0; padding: 0 13px; color: var(--ink); background: #fff; border: 1px solid #dad4df; border-radius: 9px; outline: none; }.form-row input:focus { border-color: #8c55e9; box-shadow: 0 0 0 3px rgba(126,67,255,.12); }.form-row .button { white-space: nowrap; }.form-note { min-height: 18px; margin: 10px 0 0; color: #8a8192; font-size: 9px; }.form-note.success { color: var(--green); }

.footer { padding: 80px 0 26px; color: #d9d4e0; background: #0f0d14; }.footer-top { padding-bottom: 65px; display: grid; grid-template-columns: 2fr repeat(3, 1fr); gap: 50px; }.footer .brand { color: #fff; }.footer-brand p { max-width: 260px; margin: 18px 0; color: #8f8998; font-size: 13px; }.footer-brand > a:last-child { color: #bba3e8; font-size: 13px; }.footer-col { display: grid; align-content: start; gap: 11px; font-size: 12px; }.footer-col strong { margin-bottom: 6px; color: #fff; font-size: 12px; }.footer-col a, .footer-col span { color: #918b9a; }.footer-col a:hover { color: #fff; }.footer-bottom { padding-top: 22px; display: grid; grid-template-columns: auto 1fr auto; gap: 35px; color: #77727e; border-top: 1px solid #29262e; font-size: 10px; }.footer-bottom p { max-width: 650px; margin: 0 auto; text-align: center; }

.reveal { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s cubic-bezier(.22,.72,.2,1); }.reveal.is-visible { opacity: 1; transform: translateY(0); }.workflow-card:nth-child(2), .audience-card:nth-child(2) { transition-delay: .09s; }.workflow-card:nth-child(3), .audience-card:nth-child(3) { transition-delay: .18s; }
.footer-brand > span { color: #bba3e8; font-size: 13px; }

/* Alternate palette: Mediterranean mineral
   The original purple palette remains the unmodified base theme. */
html[data-theme="mineral"] {
  --ink: #17343a;
  --ink-2: #214a4d;
  --purple: #0b6f6c;
  --purple-bright: #15958d;
  --purple-pale: #dcefe9;
  --lavender: #e9f3ef;
  --pink: #f8e8df;
  --paper: #fffdf8;
  --surface: #f6f5ef;
  --line: rgba(23,52,58,.14);
  --muted: #647477;
  --shadow: 0 24px 70px rgba(19,62,64,.15);
  --shadow-soft: 0 12px 34px rgba(19,62,64,.11);
  color-scheme: light;
}

html[data-theme="mineral"] body { background: #fffdf8; }
html[data-theme="mineral"] .brand-mark stop:first-child { stop-color: #35b4a7; }
html[data-theme="mineral"] .brand-mark stop:nth-child(2) { stop-color: #0b7772; }
html[data-theme="mineral"] .brand-mark stop:last-child { stop-color: #17343a; }

html[data-theme="mineral"] .nav-shell { background: rgba(255,253,248,.9); border-color: rgba(21,91,90,.09); box-shadow: 0 14px 34px rgba(17,55,59,.14); }
html[data-theme="mineral"] .nav-links a { color: #29484c; }
html[data-theme="mineral"] .button-primary { color: #fff; background: linear-gradient(180deg,#1d4b4e,#17343a); border-color: #315e60; box-shadow: 0 10px 22px rgba(15,65,66,.26),inset 0 1px rgba(255,255,255,.18); }
html[data-theme="mineral"] .button-primary:hover { background: linear-gradient(180deg,#0d7e78,#095d5a); box-shadow: 0 13px 26px rgba(9,91,87,.27); }
html[data-theme="mineral"] .button-secondary,
html[data-theme="mineral"] .button-ghost { background: rgba(255,253,248,.88); border-color: rgba(23,52,58,.18); box-shadow: 0 6px 14px rgba(22,62,63,.09); }

html[data-theme="mineral"] .hero { background: linear-gradient(180deg,#e9f3ef 0%,#f8e8df 50%,#fffdf8 94%); }
html[data-theme="mineral"] .hero::before,
html[data-theme="mineral"] .hero::after { background: linear-gradient(180deg,rgba(255,255,255,.25),rgba(188,224,215,.46) 60%,rgba(235,171,147,.2)); }
html[data-theme="mineral"] .hero-grid { opacity: .19; background-image: linear-gradient(rgba(10,111,108,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(10,111,108,.15) 1px,transparent 1px); }
html[data-theme="mineral"] .hero-glow { background: radial-gradient(circle at var(--mx) var(--my),rgba(35,171,159,.21),transparent 20%),radial-gradient(ellipse at 50% 48%,rgba(224,113,85,.21),transparent 36%); }
html[data-theme="mineral"] .hero-copy > p { color: #5f7072; }
html[data-theme="mineral"] .hero-assurances { color: #667679; }
html[data-theme="mineral"] .eyebrow { color: #0a6663; background: rgba(255,253,248,.62); border-color: rgba(11,111,108,.15); }
html[data-theme="mineral"] .pulse-dot { background: #d7664f; box-shadow: 0 0 0 4px rgba(215,102,79,.12); }
html[data-theme="mineral"] .pulse-dot::after { border-color: #d7664f; }
html[data-theme="mineral"] .stage-halo { background: radial-gradient(ellipse at 50% 0%,rgba(17,146,137,.33),transparent 60%),radial-gradient(ellipse at 75% 30%,rgba(224,113,85,.25),transparent 43%); }
html[data-theme="mineral"] .app-window { border-color: rgba(22,67,68,.1); box-shadow: 0 45px 90px rgba(21,63,65,.2),0 0 0 10px rgba(255,253,248,.45); }
html[data-theme="mineral"] .mini-mark,
html[data-theme="mineral"] .board-logo { background: linear-gradient(145deg,#23a99f,#17343a); }
html[data-theme="mineral"] .app-tabs .active { background: #e6f1ed; }
html[data-theme="mineral"] .avatar { color: #214a4d; background: #d2e9e3; }
html[data-theme="mineral"] .progress-track i { background: linear-gradient(90deg,#0b6f6c,#39aca2); }
html[data-theme="mineral"] .side-note span,
html[data-theme="mineral"] .map-caveat span { background: #0b6f6c; }
html[data-theme="mineral"] .map-canvas path[fill="#8753ef"] { fill: #24a89f; stroke: #0b6f6c; }
html[data-theme="mineral"] .map-canvas circle[stroke="#6430d1"] { stroke: #0b6f6c; }
html[data-theme="mineral"] .map-canvas g[transform="translate(361 124)"] rect,
html[data-theme="mineral"] .map-canvas g[transform="translate(361 124)"] path { fill: #17343a; }
html[data-theme="mineral"] .map-canvas circle[fill="#8753ef"] { fill: #d7664f; }
html[data-theme="mineral"] .proof-icon { background: linear-gradient(145deg,#e58a70,#c75542); }

html[data-theme="mineral"] .problem-section { background: #17343a; }
html[data-theme="mineral"] .problem-section::before { background: radial-gradient(circle at 70% 45%,rgba(19,161,150,.4),transparent 26%),radial-gradient(circle at 85% 65%,rgba(224,113,85,.25),transparent 23%); }
html[data-theme="mineral"] .section-label { color: #075b59; background: #dcefe9; }
html[data-theme="mineral"] .section-label.light { color: #bce8df; background: rgba(49,169,158,.15); border-color: rgba(188,232,223,.17); }
html[data-theme="mineral"] .problem-list span { color: #67c7bd; }
html[data-theme="mineral"] .chaos-orbit { border-color: rgba(104,205,193,.16); }
html[data-theme="mineral"] .file-icon { background: #0b7b76; }
html[data-theme="mineral"] .file-icon.map { background: #238c87; }
html[data-theme="mineral"] .file-icon.law { background: #d7664f; }
html[data-theme="mineral"] .file-icon.date { background: #d69a42; }
html[data-theme="mineral"] .chaos-center { isolation: isolate; background: radial-gradient(circle at 35% 25%,#2caf9f,#17343a 72%); border: 0; box-shadow: 0 18px 50px rgba(5,36,39,.38); }
html[data-theme="mineral"] .chaos-center::before { content: ""; position: absolute; z-index: -1; inset: -12px; border: 7px solid rgba(72,190,179,.62); border-radius: 50%; box-shadow: 0 0 38px rgba(35,170,157,.2); pointer-events: none; }

html[data-theme="mineral"] .workflow-card { background: #f6f6f1; border-color: #e2e5dd; }
html[data-theme="mineral"] .workflow-icon { background: linear-gradient(145deg,#34b5a8,#08716d); box-shadow: 0 12px 22px rgba(10,111,108,.2); }
html[data-theme="mineral"] .workflow-icon.resolve { background: linear-gradient(145deg,#ed987f,#c95743); }
html[data-theme="mineral"] .workflow-icon.document { background: linear-gradient(145deg,#55a998,#217565); }
html[data-theme="mineral"] .node { border-color: #15958d; }
html[data-theme="mineral"] .node.b { border-color: #d7664f; }
html[data-theme="mineral"] .time-visual { background: linear-gradient(145deg,#e3f1ec,#f8e8df); box-shadow: inset 0 0 0 1px rgba(11,111,108,.07); }
html[data-theme="mineral"] .date-range i { background: linear-gradient(90deg,#0b6f6c,#43b2a7); }
html[data-theme="mineral"] .date-range.muted i { background: #d7664f; }
html[data-theme="mineral"] .time-connector { background: #17343a; border-color: #edf2e9; box-shadow: 0 10px 25px rgba(23,52,58,.23); }

html[data-theme="mineral"] .evidence-section { background: linear-gradient(145deg,#17343a,#0d2529); }
html[data-theme="mineral"] .evidence-visual { background: radial-gradient(circle at 30% 20%,rgba(28,167,155,.35),transparent 42%),rgba(255,255,255,.035); }
html[data-theme="mineral"] .record-id { color: #08635f; background: #dcefe9; }
html[data-theme="mineral"] .citation-pop i,
html[data-theme="mineral"] .evidence-link { color: #0b7772; }
html[data-theme="mineral"] .text-link span { color: #79d3c8; }
html[data-theme="mineral"] .board-actions a,
html[data-theme="mineral"] .report-button { background: #17343a; border-color: #17343a; }
html[data-theme="mineral"] .next-head strong { color: #0b6966; background: #dcefe9; }
html[data-theme="mineral"] .boundary-note i { background: #0b6f6c; }
html[data-theme="mineral"] .stats-section { background: #0b6f6c; }
html[data-theme="mineral"] .stats-copy p,
html[data-theme="mineral"] .stat span { color: #d4eee8; }
html[data-theme="mineral"] .audience-card { background: #f6f6f1; border-color: #e2e5dd; }
html[data-theme="mineral"] .audience-card:hover { background: #e5f2ee; }
html[data-theme="mineral"] .audience-icon { background: linear-gradient(145deg,#2aab9f,#0a6764); }
html[data-theme="mineral"] .cta-section { background: linear-gradient(135deg,#e5f2ed,#f8e8df); }
html[data-theme="mineral"] .cta-glow { background: radial-gradient(circle at 23% 60%,rgba(31,163,151,.24),transparent 30%),radial-gradient(circle at 76% 30%,rgba(224,113,85,.2),transparent 27%); }
html[data-theme="mineral"] .access-form { background: rgba(255,253,248,.84); border-color: rgba(14,102,99,.13); }
html[data-theme="mineral"] .footer { background: #0d2024; }
html[data-theme="mineral"] .footer-brand > span { color: #82c9c1; }

html, body, .hero, .problem-section, .evidence-section, .stats-section, .cta-section, .nav-shell, .workflow-card, .audience-card { transition: color .28s ease,background-color .28s ease,background .28s ease,border-color .28s ease,box-shadow .28s ease; }

@media (max-width: 1050px) {
  .nav-shell { min-width: 0; width: 100%; }.nav-links { gap: 14px; }.nav-links a { font-size: 13px; }
  .app-workspace { grid-template-columns: 165px minmax(350px,1fr) 230px; }.product-stage { width: 112%; margin-left: -6%; }.floating-proof { display: none; }
  .problem-layout, .feature-row, .evidence-layout { gap: 55px; }.source-chaos { transform: scale(.88); }.stats-grid { grid-template-columns: 1.6fr repeat(3, .7fr); gap: 22px; }.audience-layout { gap: 55px; }.cta-layout { gap: 55px; }
}

@media (max-width: 820px) {
  :root { --gutter: 22px; }.section-rounded { margin: 10px; }
  .site-header { top: 14px; }.nav-shell { height: 58px; padding: 6px 7px 6px 10px; border-radius: 16px; }.brand-mark { width: 36px; height: 36px; }.brand { font-size: 20px; }
  .nav-links { position: absolute; top: 68px; left: 0; right: 0; padding: 12px; display: grid; gap: 3px; background: rgba(255,255,255,.97); border: 1px solid var(--line); border-radius: 15px; box-shadow: var(--shadow-soft); opacity: 0; transform: translateY(-8px); pointer-events: none; transition: opacity .2s ease, transform .2s ease; }.nav-links.is-open { opacity: 1; transform: translateY(0); pointer-events: auto; }.nav-links a { padding: 11px; border-radius: 8px; }.nav-links a:hover { background: #f3eff9; }.nav-links a::after { display: none; }.nav-cta { margin-left: auto; }
  .menu-toggle { width: 42px; height: 42px; padding: 0; display: grid; place-content: center; gap: 5px; background: transparent; border: 0; cursor: pointer; }.menu-toggle span { width: 20px; height: 1.5px; background: var(--ink); transition: transform .2s ease; }.menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.25px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.25px) rotate(-45deg); }
  .hero { min-height: 0; margin: 10px 10px 0; padding: 122px var(--gutter) 75px; }.hero h1 { font-size: clamp(43px, 10vw, 64px); }.hero-copy > p { font-size: 17px; }.product-stage { width: 145%; margin-left: -22.5%; }.app-window { min-height: 510px; }.app-workspace { min-height: 452px; grid-template-columns: 150px 1fr 210px; }.app-topbar { height: 51px; }.source-ribbon { margin-top: 60px; }.source-list { flex-wrap: wrap; row-gap: 10px; }.source-list i { display: none; }
  .problem-layout, .feature-row, .evidence-layout, .audience-layout, .cta-layout { grid-template-columns: 1fr; }.source-chaos { max-width: 600px; width: 100%; margin-inline: auto; transform: none; }.problem-layout { gap: 40px; }.workflow { grid-template-columns: 1fr; }.workflow-card { min-height: 310px; }.workflow-icon { margin-bottom: 28px; }.feature-row { gap: 50px; }.evidence-layout { gap: 70px; }.evidence-visual { order: 2; }.citation-pop { right: -8px; }.board-content { grid-template-columns: 1fr; }.next-actions { border-top: 1px solid #ebe7ee; border-left: 0; }.stats-grid { grid-template-columns: repeat(3,1fr); }.stats-copy { grid-column: 1 / -1; margin-bottom: 15px; }.audience-title { position: static; }.footer-top { grid-template-columns: 1.5fr repeat(2,1fr); }.footer-col:last-child { grid-column: 2 / -1; }.footer-bottom { grid-template-columns: 1fr auto; }.footer-bottom p { grid-column: 1 / -1; grid-row: 2; text-align: left; margin: 0; }
}

@media (max-width: 560px) {
  :root { --gutter: 18px; }.site-header { padding-inline: 18px; }.nav-shell { gap: 8px; }.nav-cta { display: none; }
  .hero { padding-top: 112px; }.hero h1 { font-size: 43px; line-height: 1.06; }.hero h1 br { display: none; }.hero-copy > p { margin-top: 20px; }.hero-actions { flex-direction: column; align-items: stretch; }.hero-assurances { align-items: center; flex-direction: column; gap: 6px; }.product-stage { width: 210%; margin-top: 50px; margin-left: -55%; }.app-window { border-radius: 18px 18px 6px 6px; }.source-ribbon { margin-top: 52px; }.source-list { gap: 10px 18px; font-size: 14px; }.source-ribbon small { padding-inline: 15px; }
  .problem-section, .solution-intro, .assessment-section, .audience-section { padding-top: 90px; padding-bottom: 90px; }.problem-copy h2, .feature-copy h2, .centered h2, .stats-copy h2, .audience-title h2, .cta-copy h2 { font-size: 38px; }.source-chaos { min-height: 500px; transform: scale(.78); transform-origin: center; margin: -35px 0; }.chaos-card { width: 210px; }.orbit-one { width: 390px; height: 390px; }
  .workflow { margin-top: 40px; }.workflow-card { padding: 24px; }.time-visual { min-height: 520px; padding: 25px 18px; }.current-plan, .adopted-plan { width: 94%; }.time-connector { top: 210px; }.resolution-pill { width: calc(100% - 34px); }.evidence-visual { padding: 17px; }.evidence-record { padding: 18px; }.record-row { grid-template-columns: 72px 1fr; }.citation-pop { position: relative; right: auto; bottom: auto; width: calc(100% - 22px); margin: -5px auto 0; }
  .assessment-board { width: calc(100% - 18px); }.board-header { height: auto; padding: 16px; gap: 14px; }.board-actions button { display: none; }.board-summary { grid-template-columns: repeat(2,1fr); gap: 15px 0; }.board-summary > div:nth-child(3) { padding-left: 0; border-left: 0; }.findings-table { padding: 14px 10px; overflow-x: auto; }.table-head, .table-row { min-width: 610px; }.stats-section { padding: 65px 0; }.stats-grid { gap: 24px 10px; }.stat { padding-left: 11px; }.stat strong { font-size: 42px; }.stat span { font-size: 10px; }.audience-card { padding: 22px; grid-template-columns: 45px 1fr; }.audience-card > i { display: none; }.audience-icon { width: 44px; height: 44px; }.cta-section { padding: 80px 0; }.form-row { flex-direction: column; }.form-row input { min-height: 50px; }.footer { padding-top: 60px; }.footer-top { grid-template-columns: repeat(2,1fr); }.footer-brand { grid-column: 1 / -1; }.footer-col:last-child { grid-column: 1 / -1; }.footer-bottom { gap: 16px; }
}

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