:root {
  color-scheme: light;
  --ink: #252a34;
  --muted: #68707e;
  --faint: #9097a4;
  --line: #dfe3eb;
  --paper: #fff;
  --mist: #f2f4f8;
  --mist-deep: #e8ecf3;
  --slate: #373b45;
  --slate-light: #454a56;
  --blue: #5279b8;
  --blue-dark: #42649d;
  --cyan: #63c3e2;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; color: var(--ink); background: var(--paper); font-size: 16px; line-height: 1.6; }
img { max-width: 100%; }
a { color: inherit; }
a, button { -webkit-tap-highlight-color: transparent; }
a:focus-visible, summary:focus-visible { outline: 3px solid var(--cyan); outline-offset: 4px; }
.section-shell, .nav-shell { width: min(1200px, calc(100% - 56px)); margin-inline: auto; }

/* Simple, persistent navigation */
.site-header { position: sticky; z-index: 20; top: 0; color: var(--ink); background: #fff; border-bottom: 1px solid #e7e9ef; }
.nav-shell { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--ink); text-decoration: none; font-size: 19px; font-weight: 680; letter-spacing: -.045em; }
.brand img { width: 38px; height: 38px; display: block; border-radius: 10px; object-fit: cover; }
.main-nav { display: flex; align-items: center; gap: 32px; margin-left: auto; }
.main-nav a, .nav-download { color: #626a78; font-size: 13px; text-decoration: none; transition: color .18s ease, background .18s ease, border-color .18s ease; }
.main-nav a:hover { color: var(--ink); }
.nav-download { display: inline-flex; align-items: center; gap: 12px; padding: 10px 15px; color: var(--ink); border: 1px solid #d4d9e3; border-radius: 8px; font-weight: 600; }
.nav-download:hover { color: var(--blue-dark); border-color: #aebbd1; background: #f8f9fc; }
.nav-download span { color: var(--blue); font-size: 17px; line-height: 1; }

/* Above-the-fold product story */
.hero { position: relative; display: flex; flex-direction: column; align-items: center; gap: 46px; padding-top: 78px; padding-bottom: 67px; text-align: center; isolation: isolate; }
.hero::before { position: absolute; z-index: -2; inset: 0 auto 0 50%; width: 100vw; transform: translateX(-50%); content: ""; background: radial-gradient(ellipse at 76% 44%, rgba(112, 153, 217, .2), transparent 34%), radial-gradient(ellipse at 15% 8%, rgba(105, 195, 225, .11), transparent 28%), linear-gradient(135deg, #f3f5fa, #e9edf5 75%, #e5eaf3); }
.hero-copy { position: relative; z-index: 1; width: 100%; max-width: 920px; display: flex; flex-direction: column; align-items: center; padding-bottom: 0; }
.eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 20px; color: #64799e; font-size: 10px; font-weight: 760; letter-spacing: .15em; line-height: 1.5; text-transform: uppercase; }
.eyebrow-dot, .caption-dot { width: 7px; height: 7px; display: inline-block; flex: 0 0 auto; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 13px rgba(99,195,226,.48); }
.hero h1 { max-width: 100%; margin: 0; color: #242934; font-size: clamp(50px, 6.2vw, 78px); font-weight: 640; letter-spacing: -.078em; line-height: .99; }
.hero h1 span { color: #737b89; }
.hero-intro { max-width: 650px; margin: 24px 0 27px; color: #626b79; font-size: 16px; line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; }
.button { min-height: 47px; display: inline-flex; align-items: center; justify-content: center; gap: 15px; padding: 0 19px; border: 1px solid transparent; border-radius: 8px; font-size: 13px; font-weight: 650; text-decoration: none; transition: transform .18s ease, background .18s ease, border-color .18s ease; }
.button:hover { transform: translateY(-1px); }
.button-primary { color: #fff; background: var(--blue); box-shadow: 0 5px 16px rgba(67,100,158,.14); }
.button-primary:hover { background: var(--blue-dark); }
.button-primary span { font-size: 17px; line-height: 1; }
.button-quiet { color: #414957; border-color: #ccd2dd; background: rgba(255,255,255,.52); }
.button-quiet:hover { border-color: #9daac0; background: #fff; }
.hero-meta { display: flex; flex-wrap: wrap; justify-content: center; gap: 18px 23px; margin-top: 27px; color: #707987; font-size: 11px; }
.meta-check { margin-right: 6px; color: #4c83bd; font-style: normal; }
.hero-product { position: relative; width: min(100%, 980px); margin: 0; padding: 0; }
.product-glow { position: absolute; z-index: -1; inset: 2% 2% 12%; border-radius: 50%; background: rgba(109,153,218,.27); filter: blur(56px); }
.product-frame { position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.78); border-radius: 23px; background: #d8dce5; box-shadow: 0 25px 72px rgba(38,48,68,.2), 0 4px 13px rgba(38,48,68,.08); }
.product-frame img { width: 100%; display: block; }
.product-frame .product-logo { position: absolute; z-index: 1; top: 5.1%; left: 4.8%; width: 5%; aspect-ratio: 1; border-radius: 50%; background: #fff; object-fit: cover; }
.hero-product figcaption { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 17px; color: #727a88; font-size: 10px; letter-spacing: .02em; }
.hero-product .caption-dot { width: 6px; height: 6px; box-shadow: none; }

/* Compact product facts */
.trust-strip { background: #e9edf4; border-block: 1px solid #dce1e9; }
.trust-inner { min-height: 67px; display: flex; align-items: center; justify-content: space-between; gap: 16px; color: #626b7a; font-size: 9px; font-weight: 720; letter-spacing: .11em; }
.trust-inner b { width: 4px; height: 4px; flex: 0 0 auto; border-radius: 50%; background: #9ba8bb; }

/* Meeting context feature */
.assistant-feature { position: relative; overflow: hidden; color: #f3f4f7; background: var(--slate); }
.assistant-feature::after { position: absolute; top: -240px; right: -130px; width: 600px; height: 600px; border: 1px solid rgba(99,195,226,.12); border-radius: 50%; content: ""; pointer-events: none; }
.assistant-feature-inner { position: relative; z-index: 1; min-height: 510px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: clamp(38px, 6vw, 78px); padding-top: 83px; padding-bottom: 83px; }
.eyebrow-light { color: #8ccbe1; }
.section-heading .eyebrow-light, .privacy-copy .eyebrow-light, .faq-heading .eyebrow-light { color: #60769b; }
.assistant-feature h2, .section-heading h2, .knowledge-copy h2, .privacy-copy h2, .faq-heading h2 { margin: 0; font-size: clamp(38px, 4.6vw, 57px); font-weight: 620; letter-spacing: -.07em; line-height: 1.04; }
.assistant-feature h2 { color: #f5f6f8; }
.assistant-feature h2 { font-size: clamp(38px, 4.2vw, 51px); }
.assistant-feature h2 span { color: #b5bbc7; }
.assistant-feature-copy > p:not(.eyebrow) { max-width: 610px; margin: 20px 0 0; color: #c5cad3; font-size: 13px; line-height: 1.85; }
.assistant-feature .assistant-note { max-width: 610px; margin-top: 22px; padding: 11px 14px; border-left: 2px solid var(--cyan); color: #d5d9e0; background: #414651; font-size: 11px; }
.assistant-showcase-grid { display: grid; gap: 14px; }
.assistant-showcase-grid .screen-awareness-card { padding: 19px; }
.screen-awareness-card, .sharing-card { position: relative; overflow: hidden; padding: 14px; border: 1px solid rgba(255,255,255,.13); border-radius: 14px; background: linear-gradient(145deg, #464c58, #323640); box-shadow: 0 14px 35px rgba(16,19,27,.16); }
.screen-window { overflow: hidden; border: 1px solid #cbd2de; border-radius: 9px; color: #313846; background: #f5f6f8; box-shadow: 0 5px 18px rgba(12,16,24,.15); }
.screen-toolbar { height: 28px; display: grid; grid-template-columns: 38px 1fr 20px; align-items: center; gap: 9px; padding: 0 10px; border-bottom: 1px solid #dce1e8; color: #6c7481; background: #e8ebf0; font-size: 8px; }
.screen-toolbar .window-dots { gap: 3px; }
.screen-toolbar .window-dots i { width: 5px; height: 5px; }
.screen-toolbar-icon { color: #7c8798; text-align: right; }
.slide-content { min-height: 155px; padding: 15px 18px 13px; background: linear-gradient(120deg, #fff, #f7f9fc); }
.slide-kicker { margin: 0 0 3px; color: #6980a5; font-size: 7px; font-weight: 750; letter-spacing: .15em; }
.slide-content h3 { margin: 0; color: #303644; font-size: 18px; font-weight: 640; letter-spacing: -.045em; line-height: 1.3; }
.slide-content > p:not(.slide-kicker) { margin: 2px 0 9px; color: #7b8390; font-size: 7px; }
.slide-chart { height: 56px; display: flex; align-items: end; gap: 9px; padding: 0 8px; border-bottom: 1px solid #dfe3ea; background: repeating-linear-gradient(to bottom, transparent 0, transparent 18px, #e9edf2 19px, transparent 20px); }
.slide-chart i { width: 9%; height: var(--bar); border-radius: 3px 3px 0 0; background: linear-gradient(180deg, #72c5df, #6482bd); }
.chart-labels { display: flex; justify-content: space-between; padding: 4px 7px 0; color: #9aa1ad; font-size: 6px; }
.screen-answer { position: relative; width: 92%; margin: -37px auto 0; padding: 10px 12px; border: 1px solid #d2d9e4; border-radius: 10px; color: #343946; background: rgba(255,255,255,.97); box-shadow: 0 8px 22px rgba(18,24,36,.25); }
.answer-heading { display: flex; align-items: center; gap: 6px; color: #363c48; font-size: 8px; font-weight: 670; }
.answer-heading img { width: 17px; height: 17px; border-radius: 50%; object-fit: cover; }
.answer-context { margin-left: auto; padding: 3px 5px; border-radius: 4px; color: #4d769d; background: #eaf1f8; font-size: 5px; font-weight: 750; letter-spacing: .06em; }
.screen-answer > p { margin: 7px 0 8px; color: #68717f; font-size: 8px; line-height: 1.55; }
.answer-prompt { padding: 6px 8px; border: 1px solid #e1e4ea; border-radius: 5px; color: #89909c; background: #f8f9fb; font-size: 7px; }
.visual-caption { display: flex; align-items: center; gap: 7px; margin: 11px 1px 0; color: #c5cad3; font-size: 8px; }
.visual-caption .caption-dot { width: 5px; height: 5px; }
.sharing-card { padding: 14px; }
.sharing-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.sharing-card-head > div { display: grid; gap: 3px; }
.visual-kicker { color: #8ccbe1; font-size: 6px; font-weight: 760; letter-spacing: .14em; }
.sharing-card-head strong { color: #f4f5f7; font-size: 10px; font-weight: 650; }
.toggle-on { width: 28px; height: 16px; display: flex; align-items: center; justify-content: end; padding: 2px; border-radius: 99px; background: #4d9ec0; }
.toggle-on i { width: 12px; height: 12px; border-radius: 50%; background: #fff; }
.sharing-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.sharing-preview { min-width: 0; }
.preview-label { display: block; margin-bottom: 5px; color: #aeb5c0; font-size: 6px; font-weight: 750; letter-spacing: .1em; }
.preview-desktop { position: relative; height: 77px; overflow: hidden; padding: 8px; border: 1px solid rgba(255,255,255,.12); border-radius: 6px; background: linear-gradient(145deg, #e9edf3, #dce2eb); }
.preview-slide { width: 67%; height: 100%; padding: 7px; border: 1px solid #dce1e8; border-radius: 3px; background: #fff; }
.preview-slide b { display: block; margin-bottom: 5px; color: #596275; font-size: 6px; }
.preview-slide i { height: 3px; display: block; margin-top: 4px; border-radius: 3px; background: #dce4ef; }
.preview-slide i:nth-of-type(1) { width: 88%; }
.preview-slide i:nth-of-type(2) { width: 72%; }
.preview-slide i:nth-of-type(3) { width: 80%; }
.preview-assistant { position: absolute; top: 29px; right: 5px; width: 72px; height: 28px; display: flex; align-items: center; gap: 4px; padding: 4px; border: 1px solid #d3d9e3; border-radius: 6px; color: #4e5664; background: #fff; box-shadow: 0 3px 9px rgba(30,38,52,.2); font-size: 5px; }
.preview-assistant img { width: 16px; height: 16px; border-radius: 50%; }
.share-hidden { position: absolute; right: 6px; bottom: 6px; padding: 4px 6px; border-radius: 4px; color: #dce6ef; background: #4a6073; font-size: 6px; }
.share-hidden span { margin-right: 3px; color: #84d1e6; }
.sharing-caption { margin: 9px 0 0; color: #bbc2cd; font-size: 7px; line-height: 1.5; }
.sharing-feature { background: #edf1f6; }
.sharing-feature-inner { min-height: 480px; display: grid; grid-template-columns: .84fr 1.16fr; align-items: center; gap: clamp(40px, 7vw, 88px); padding-top: 77px; padding-bottom: 77px; }
.sharing-feature-copy h2 { margin: 0; color: #252a34; font-size: clamp(38px, 4.2vw, 51px); font-weight: 620; letter-spacing: -.07em; line-height: 1.04; }
.sharing-feature-copy h2 span { color: #737b89; }
.sharing-feature-copy > p:not(.eyebrow) { margin: 18px 0 0; color: #626b79; font-size: 13px; line-height: 1.8; }
.sharing-feature-note { padding: 10px 12px; border-left: 2px solid var(--cyan); color: #556274 !important; background: #e2e8f0; font-size: 10px !important; }
.sharing-feature .sharing-card { padding: 20px; background: linear-gradient(145deg, #464c58, #323640); }
.sharing-feature .preview-desktop { height: 125px; padding: 12px; }
.sharing-feature .preview-slide { padding: 11px; }
.sharing-feature .preview-slide b { margin-bottom: 8px; font-size: 8px; }
.sharing-feature .preview-slide i { height: 5px; margin-top: 6px; }
.sharing-feature .preview-assistant { top: 48px; right: 9px; width: 104px; height: 39px; gap: 6px; padding: 6px; font-size: 7px; }
.sharing-feature .preview-assistant img { width: 23px; height: 23px; }
.sharing-feature .share-hidden { right: 10px; bottom: 10px; padding: 6px 8px; font-size: 8px; }
.sharing-feature .sharing-caption { font-size: 9px; }

/* How it works */
.section-block { padding-top: 105px; padding-bottom: 112px; }
.section-heading { max-width: 650px; margin-bottom: 41px; }
.section-heading h2 { color: var(--ink); }
.section-heading h2 span { color: #79818d; }
.section-heading > p:last-child { max-width: 520px; margin: 18px 0 0; color: var(--muted); font-size: 14px; line-height: 1.8; }
.steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.step-card { min-height: 340px; padding: 20px; border: 1px solid #e1e4eb; border-radius: 12px; background: #fff; box-shadow: 0 5px 20px rgba(35,43,58,.035); }
.step-number { color: #8b93a0; font-size: 10px; font-weight: 700; letter-spacing: .08em; }
.step-visual { min-height: 142px; margin: 15px 0 18px; padding: 13px; border: 1px solid #e2e6ed; border-radius: 9px; color: #4c5563; background: linear-gradient(145deg, #f7f8fa, #eef1f6); }
.recording-status { display: flex; align-items: center; gap: 5px; color: #677385; font-size: 6px; font-weight: 730; letter-spacing: .1em; }
.recording-status i { width: 5px; height: 5px; border-radius: 50%; background: #55a9c9; }
.recording-status b { margin-left: auto; color: #697587; font-size: 7px; letter-spacing: 0; }
.recording-wave { height: 61px; display: flex; align-items: center; justify-content: space-between; gap: 2px; margin: 5px 0 9px; }
.recording-wave i { width: 3px; height: 15%; border-radius: 4px; background: linear-gradient(180deg, #6bc3dd, #6382b9); }
.recording-wave i:nth-child(5n + 1) { height: 40%; }
.recording-wave i:nth-child(5n + 2) { height: 68%; }
.recording-wave i:nth-child(5n + 3) { height: 32%; }
.recording-wave i:nth-child(7n + 4) { height: 88%; }
.recording-wave i:nth-child(11n + 6) { height: 55%; }
.source-pills { display: flex; gap: 5px; }
.source-pills span { padding: 4px 6px; border: 1px solid #dfe4ec; border-radius: 4px; color: #687689; background: #fff; font-size: 5px; font-weight: 740; letter-spacing: .07em; }
.transcript-visual { display: grid; align-content: center; gap: 10px; }
.transcript-visual > div:not(.transcript-footer) { display: grid; grid-template-columns: 30px 43px 1fr; gap: 6px; align-items: start; }
.transcript-visual time { color: #8992a0; font-size: 6px; }
.transcript-visual b { color: #4d617f; font-size: 7px; }
.transcript-visual > div > span { color: #66707e; font-size: 7px; line-height: 1.4; }
.transcript-footer { display: flex; justify-content: space-between; margin-top: 3px; padding-top: 8px; border-top: 1px solid #dfe3ea; color: #8290a2; font-size: 5px; font-weight: 740; letter-spacing: .09em; }
.transcript-footer i { color: #6384b8; font-style: normal; letter-spacing: .13em; }
.notes-visual { display: grid; align-content: center; gap: 7px; }
.notes-top { display: flex; justify-content: space-between; margin-bottom: 3px; color: #758199; font-size: 6px; font-weight: 740; letter-spacing: .09em; }
.notes-top span:last-child { color: var(--blue); font-size: 10px; }
.notes-visual > b { color: #394150; font-size: 10px; }
.notes-visual > p { margin: 0; color: #6d7684; font-size: 7px; line-height: 1.5; }
.note-task { display: grid; grid-template-columns: 10px 1fr auto; align-items: center; gap: 6px; margin-top: 3px; padding: 7px; border: 1px solid #e1e5ec; border-radius: 5px; background: #fff; }
.note-task i { width: 8px; height: 8px; border: 1px solid #7994bd; border-radius: 3px; }
.note-task span { color: #606b7b; font-size: 6px; }
.note-task small { color: #8490a1; font-size: 5px; }
.step-card h3 { margin: 0 0 8px; color: #292e38; font-size: 15px; font-weight: 660; letter-spacing: -.025em; }
.step-card p { margin: 0; color: #68707d; font-size: 11px; line-height: 1.75; }

/* Knowledge Bank */
.knowledge-section { overflow: hidden; color: #f3f4f7; background: var(--slate); }
.knowledge-layout { min-height: 560px; display: grid; grid-template-areas: "visual copy"; grid-template-columns: 1.12fr .88fr; align-items: center; gap: 74px; padding-top: 86px; padding-bottom: 86px; }
.bank-demo { grid-area: visual; }
.knowledge-copy { grid-area: copy; }
.knowledge-copy h2 { color: #f5f6f8; }
.knowledge-copy > p:not(.eyebrow) { max-width: 470px; margin: 20px 0 0; color: #c7cbd3; font-size: 13px; line-height: 1.8; }
.check-list { display: grid; gap: 12px; margin: 22px 0 25px; padding: 0; color: #e1e3e8; font-size: 11px; list-style: none; }
.check-list span { margin-right: 9px; color: var(--cyan); }
.text-link { color: #8bcde5; font-size: 12px; font-weight: 650; text-decoration: none; }
.text-link:hover { color: #c2edfa; }
.text-link span { margin-left: 5px; font-size: 16px; vertical-align: -1px; }
.bank-demo { position: relative; }
.demo-window { position: relative; z-index: 1; padding: 20px; border: 1px solid rgba(255,255,255,.65); border-radius: 14px; color: var(--ink); background: #fff; box-shadow: 0 20px 56px rgba(15,19,27,.24); }
.demo-window-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; color: #737b88; font-size: 9px; font-weight: 730; letter-spacing: .12em; }
.window-dots { display: flex; gap: 4px; }
.window-dots i { width: 5px; height: 5px; border-radius: 50%; background: #d4d8df; }
.window-dots i:first-child { background: #d99e9a; }
.demo-plus { color: var(--blue); font-size: 18px; font-weight: 400; }
.bank-row { display: grid; grid-template-columns: 34px 1fr 15px; align-items: center; gap: 10px; padding: 11px 9px; border: 1px solid transparent; border-radius: 8px; }
.bank-active { border-color: #dce3ef; background: #f1f4f9; }
.bank-icon { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; font-size: 14px; }
.bank-purple, .bank-green, .bank-orange { color: #566e9c; background: #edf1f7; }
.bank-row strong, .reference-chip strong { display: block; color: #303640; font-size: 11px; font-weight: 650; }
.bank-row small, .reference-chip small { display: block; margin-top: 1px; color: #7c828e; font-size: 9px; }
.row-chevron { color: #9298a2; font-size: 20px; text-align: right; }
.demo-divider { height: 1px; margin: 14px 0; background: #e7e9ed; }
.reference-chip { display: grid; grid-template-columns: 34px 1fr 17px; align-items: center; gap: 10px; padding: 10px; border-radius: 8px; background: #f5f6f8; }
.file-glyph { width: 28px; height: 31px; display: grid; place-items: center; border: 1px solid #dfe5ed; border-radius: 5px; color: #586f9a; background: #edf1f7; font-size: 7px; font-weight: 760; }
.ref-check { color: var(--blue); font-size: 13px; }
.demo-note { margin: 12px 2px 0; color: #757c88; font-size: 9px; line-height: 1.6; }

/* Local-first privacy and installation */
.privacy-section { min-height: 520px; display: grid; grid-template-columns: 1.05fr minmax(290px, .95fr); align-items: center; gap: clamp(38px, 7vw, 84px); padding-top: 86px; padding-bottom: 86px; }
.privacy-copy { max-width: 720px; }
.privacy-copy h2 { color: var(--ink); }
.privacy-copy > p:not(.eyebrow) { margin: 15px 0 0; color: var(--muted); font-size: 12px; line-height: 1.8; }
.privacy-copy > p strong { color: #3f4857; }
.privacy-copy .text-link { display: inline-block; margin-top: 19px; color: var(--blue); }
.privacy-visual { padding: 17px; border: 1px solid #e0e5ed; border-radius: 15px; background: linear-gradient(145deg, #f6f8fa, #edf1f6); box-shadow: 0 16px 42px rgba(34,45,62,.09); }
.local-data-card { padding: 13px; border: 1px solid #e0e5ec; border-radius: 9px; background: #fff; box-shadow: 0 5px 16px rgba(38,48,65,.045); }
.data-card-head { display: grid; grid-template-columns: 33px 1fr 18px; align-items: center; gap: 8px; padding-bottom: 10px; border-bottom: 1px solid #e9ecf0; }
.privacy-lock { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: #5279b8; background: #edf2f8; font-size: 15px; }
.data-card-head > div, .provider-card > div { display: grid; gap: 2px; }
.data-card-head > div > span, .provider-card > div > span { color: #8791a0; font-size: 6px; font-weight: 750; letter-spacing: .1em; }
.data-card-head strong, .provider-card strong { color: #3b4351; font-size: 10px; font-weight: 660; }
.data-check { color: #5484a8; font-size: 12px; text-align: center; }
.local-file { display: grid; grid-template-columns: 27px 1fr; align-items: center; gap: 8px; margin-top: 8px; padding: 7px; border-radius: 6px; background: #f7f8fa; }
.local-file-icon { width: 24px; height: 24px; display: grid; place-items: center; border: 1px solid #e1e6ed; border-radius: 5px; color: #607ba6; background: #fff; font-size: 10px; }
.local-file b, .local-file small { display: block; }
.local-file b { color: #4c5462; font-size: 8px; font-weight: 650; }
.local-file small { margin-top: 1px; color: #89919d; font-size: 6px; }
.ai-flow { position: relative; height: 50px; display: flex; align-items: center; gap: 8px; padding-left: 20px; }
.flow-line { position: absolute; top: 0; bottom: 0; left: 32px; border-left: 1px dashed #9eb1ca; }
.flow-node { z-index: 1; width: 25px; height: 25px; display: grid; place-items: center; border: 1px solid #cdd9e7; border-radius: 50%; color: #5279b8; background: #f1f4f8; font-size: 7px; font-weight: 750; }
.flow-label { color: #778398; font-size: 6px; font-weight: 750; letter-spacing: .1em; }
.provider-card { display: grid; grid-template-columns: 32px 1fr; align-items: center; gap: 9px; padding: 12px; border: 1px solid #dce3ec; border-radius: 8px; background: rgba(255,255,255,.74); }
.provider-symbol { width: 29px; height: 29px; display: grid; place-items: center; border: 1px solid #dce3ef; border-radius: 8px; color: #557caf; background: #f4f6fa; font-size: 15px; }
.download-section { position: relative; overflow: hidden; background: linear-gradient(125deg, #e9edf4, #e2e8f1); }
.download-section::before, .download-section::after { position: absolute; width: 430px; height: 430px; border: 1px solid rgba(81,120,183,.14); border-radius: 50%; content: ""; }
.download-section::before { top: -280px; left: -90px; }
.download-section::after { right: -120px; bottom: -320px; width: 540px; height: 540px; }
.download-inner { position: relative; z-index: 1; min-height: 475px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding-top: 70px; padding-bottom: 70px; text-align: center; }
.download-inner > img { width: 64px; height: 64px; margin-bottom: 19px; border-radius: 15px; box-shadow: 0 9px 26px rgba(42,52,73,.15); }
.download-inner .eyebrow { margin-bottom: 9px; }
.download-inner h2 { margin: 0; color: #262b35; font-size: clamp(43px, 5.7vw, 65px); font-weight: 630; letter-spacing: -.075em; line-height: 1.05; }
.download-inner > p:not(.eyebrow) { max-width: 510px; margin: 14px auto 22px; color: #66707e; font-size: 13px; }
.button-large { min-height: 48px; padding-inline: 22px; }
.download-version { margin: 13px 0 0 !important; color: #77808e !important; font-size: 10px !important; }
.download-version span { padding-inline: 5px; color: #9da5b1; }
.download-help { max-width: 610px !important; margin: 19px auto 0 !important; color: #707987 !important; font-size: 10px !important; line-height: 1.7; }
.download-help strong { color: #4e5663; }
.download-help a { color: var(--blue-dark); }

/* Frequently asked questions and footer */
.faq-section { display: grid; grid-template-columns: .76fr 1.24fr; gap: 75px; padding-top: 100px; padding-bottom: 112px; }
.faq-heading h2 { color: var(--ink); font-size: clamp(34px, 4vw, 45px); }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list details:first-child { border-top: 1px solid var(--line); }
.faq-list summary { position: relative; padding: 18px 36px 18px 0; color: #303641; font-size: 13px; font-weight: 650; cursor: pointer; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { position: absolute; top: 12px; right: 5px; color: var(--blue); content: "+"; font-size: 21px; font-weight: 400; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { margin: -1px 25px 19px 0; color: #6b7280; font-size: 12px; line-height: 1.8; }
.site-footer { color: #c4c9d2; background: #30343d; }
.footer-main { min-height: 138px; display: grid; grid-template-columns: 180px 1fr auto; align-items: center; gap: 24px; border-bottom: 1px solid rgba(255,255,255,.12); }
.footer-brand { color: #f4f5f7; font-size: 16px; }
.footer-brand img { width: 34px; height: 34px; border-radius: 9px; }
.footer-main > p { max-width: 370px; margin: 0; color: #abb2bf; font-size: 11px; }
.footer-main nav { display: flex; flex-wrap: wrap; gap: 18px; }
.footer-main nav a, .footer-bottom a { color: #c7cbd3; font-size: 10px; text-decoration: none; }
.footer-main nav a:hover, .footer-bottom a:hover { color: var(--cyan); }
.footer-bottom { min-height: 55px; display: flex; align-items: center; justify-content: space-between; gap: 14px; color: #959daa; font-size: 9px; }

/* Legal pages */
.legal-main { min-height: 70vh; padding-top: 92px; padding-bottom: 105px; }
.legal-main .eyebrow { margin-bottom: 14px; }
.legal-main h1 { margin: 0 0 18px; color: var(--ink); font-size: clamp(40px, 6vw, 58px); font-weight: 630; letter-spacing: -.07em; line-height: 1.05; }
.legal-main h2 { margin: 36px 0 8px; color: #303640; font-size: 19px; letter-spacing: -.03em; }
.legal-main p, .legal-main li { color: #656d7a; font-size: 14px; line-height: 1.85; }
.legal-main ul { padding-left: 21px; }
.legal-main .updated { color: #9097a4; font-size: 11px; }

@media (max-width: 1000px) {
  .hero { gap: 38px; }
  .hero h1 { font-size: clamp(52px, 6vw, 68px); }
  .knowledge-layout { gap: 42px; }
  .assistant-feature-inner { gap: 42px; }
  .sharing-feature-inner { grid-template-columns: .9fr 1.1fr; gap: 40px; }
  .privacy-section { grid-template-columns: 1fr .9fr; gap: 38px; }
}
@media (max-width: 760px) {
  .section-shell, .nav-shell { width: min(100% - 38px, 600px); }
  .nav-shell { min-height: 68px; gap: 12px; }
  .main-nav { gap: 15px; }
  .main-nav a { font-size: 11px; }
  .nav-download { gap: 7px; padding: 9px 10px; font-size: 11px; white-space: nowrap; }
  .brand { gap: 8px; font-size: 17px; }
  .brand img { width: 34px; height: 34px; }
  .hero { gap: 37px; padding-top: 68px; padding-bottom: 54px; }
  .hero-copy { max-width: 620px; }
  .hero h1 { max-width: 600px; font-size: clamp(48px, 9vw, 68px); }
  .hero-intro { margin: 20px 0 23px; font-size: 15px; }
  .hero-product { max-width: 620px; margin-inline: auto; }
  .hero-product figcaption { margin-top: 13px; }
  .trust-inner { min-height: 65px; justify-content: center; flex-wrap: wrap; gap: 9px 13px; padding-block: 12px; font-size: 8px; }
  .trust-inner b { width: 3px; height: 3px; }
  .assistant-feature-inner { min-height: 0; grid-template-columns: 1fr; gap: 35px; padding-top: 66px; padding-bottom: 68px; }
  .assistant-showcase-grid { max-width: 600px; }
  .sharing-feature-inner { min-height: 0; grid-template-columns: 1fr; gap: 25px; padding-top: 62px; padding-bottom: 66px; }
  .sharing-feature-copy { order: 2; }
  .sharing-feature .sharing-card { order: 1; }
  .section-block { padding-top: 76px; padding-bottom: 80px; }
  .section-heading { margin-bottom: 29px; }
  .section-heading h2, .knowledge-copy h2, .privacy-copy h2 { font-size: 42px; }
  .steps-grid { grid-template-columns: 1fr; gap: 10px; }
  .step-card { min-height: 0; display: flex; flex-direction: column; padding: 17px; }
  .step-visual { margin-block: 11px 15px; }
  .knowledge-layout { min-height: 0; grid-template-areas: "visual" "copy"; grid-template-columns: 1fr; gap: 38px; padding-top: 68px; padding-bottom: 70px; }
  .knowledge-copy { max-width: 570px; }
  .demo-window { padding: 15px; }
  .privacy-section { min-height: 0; grid-template-columns: 1fr; gap: 28px; padding-top: 68px; padding-bottom: 70px; }
  .privacy-copy .eyebrow { margin-bottom: 13px; }
  .download-inner { min-height: 430px; padding-top: 62px; padding-bottom: 62px; }
  .faq-section { grid-template-columns: 1fr; gap: 30px; padding-top: 76px; padding-bottom: 84px; }
  .footer-main { grid-template-columns: 1fr auto; gap: 13px 20px; padding-block: 25px; }
  .footer-main > p { grid-column: 1; grid-row: 2; }
  .footer-main nav { grid-column: 2; grid-row: 1 / span 2; justify-content: end; gap: 12px; }
}
@media (max-width: 520px) {
  html { scroll-padding-top: 76px; }
  .section-shell, .nav-shell { width: calc(100% - 32px); }
  .main-nav { display: none; }
  .nav-download { margin-left: auto; }
  .hero { padding-top: 57px; gap: 30px; }
  .hero h1 { font-size: clamp(43px, 12vw, 58px); }
  .hero-intro { font-size: 14px; }
  .hero-meta { gap: 10px 15px; font-size: 10px; }
  .product-frame { border-radius: 15px; }
  .hero-product figcaption { font-size: 9px; }
  .assistant-feature-inner { padding-top: 57px; padding-bottom: 59px; }
  .assistant-feature h2, .section-heading h2, .knowledge-copy h2, .privacy-copy h2 { font-size: 38px; }
  .sharing-feature-copy h2 { font-size: 38px; }
  .assistant-feature-copy > p:not(.eyebrow) { font-size: 12px; }
  .privacy-section { grid-template-columns: 1fr; gap: 24px; }
  .download-inner h2 { font-size: 46px; }
  .download-help { font-size: 9px !important; }
  .footer-main { grid-template-columns: 1fr; }
  .footer-main > p, .footer-main nav { grid-column: auto; grid-row: auto; }
  .footer-main nav { justify-content: start; }
  .footer-bottom { min-height: 54px; flex-wrap: wrap; padding-block: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}
