:root {
  --ink: #17233a;
  --muted: #617084;
  --line: #d9e0e8;
  --paper: #ffffff;
  --surface: #f4f7fa;
  --soft-blue: #e9f1fb;
  --blue: #2f6fb9;
  --navy: #112d5b;
  --soft-lilac: #f1edfb;
  --lilac: #7656c9;
  --soft-green: #eaf6ef;
  --green: #23724d;
  --shadow: 0 18px 44px rgba(24, 42, 70, .12);
}

* { box-sizing: border-box; }

img { display: block; max-width: 100%; height: auto; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  letter-spacing: 0;
}

a { color: inherit; text-decoration: none; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  border-bottom: 1px solid rgba(217, 224, 232, .88);
  background: rgba(255, 255, 255, .92);
  backdrop-filter: blur(16px);
}

.nav, .container {
  width: min(1160px, calc(100% - 48px));
  margin: 0 auto;
}

.nav {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
}

.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 760; font-size: 19px; }
.brand img { width: 34px; height: 34px; border-radius: 9px; }
.nav-links { display: flex; align-items: center; gap: 22px; color: #425167; font-size: 14px; font-weight: 650; }
.nav-links a:hover { color: var(--blue); }

.nav-cta, .button {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0 17px;
  border: 1px solid var(--blue);
  border-radius: 6px;
  background: var(--blue);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
}

.nav-cta:hover, .button:hover { background: #235b9e; border-color: #235b9e; }
.button.secondary { background: #fff; color: var(--navy); border-color: #bcc9d8; }
.button.secondary:hover { background: #f7f9fb; border-color: #91a7bf; }

.hero { overflow: hidden; background: var(--surface); border-bottom: 1px solid var(--line); }
.hero-grid { min-height: 688px; display: grid; grid-template-columns: minmax(0, .9fr) minmax(540px, 1.1fr); align-items: center; gap: 40px; padding: 76px 0 48px; }
.eyebrow { margin: 0 0 15px; color: var(--blue); font-size: 13px; font-weight: 800; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1 { max-width: 600px; margin-bottom: 21px; font-size: clamp(45px, 5.2vw, 68px); line-height: 1.03; font-weight: 760; }
.hero-copy > p:not(.eyebrow) { max-width: 550px; margin-bottom: 28px; color: var(--muted); font-size: 18px; line-height: 1.55; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-note { margin: 17px 0 0; color: var(--muted); font-size: 12px; }

.hero-screenshot { width: 100%; max-width: 100%; min-width: 0; margin: 0; padding: 9px; overflow: hidden; border: 1px solid #c3cedb; border-radius: 9px; background: #fff; box-shadow: var(--shadow); }
.hero-screenshot img { width: 100%; max-width: 100%; height: auto; border-radius: 5px; }
.hero-screenshot figcaption { padding: 11px 5px 2px; color: var(--muted); font-size: 12px; font-weight: 650; }

.product-window {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #bdc9d8;
  border-radius: 8px;
  background: #eaf0f6;
  box-shadow: var(--shadow);
}

.window-titlebar { height: 42px; display: flex; align-items: center; gap: 7px; padding: 0 14px; background: #f7f9fb; border-bottom: 1px solid #d5dfe9; }
.dot { width: 10px; height: 10px; border-radius: 50%; background: #ee6b65; }
.dot:nth-child(2) { background: #edbe4a; }.dot:nth-child(3) { background: #57c169; }
.window-title { margin-left: 9px; color: #526176; font-size: 12px; font-weight: 700; }
.window-body { display: grid; grid-template-columns: 135px minmax(0, 1fr); min-height: 420px; }
.editor-sidebar { padding: 17px 12px; background: #f5f8fb; border-right: 1px solid #d5dfe9; }
.editor-brand { display: flex; align-items: center; gap: 7px; margin-bottom: 21px; color: var(--navy); font-size: 12px; font-weight: 800; }.editor-brand img { width: 22px; height: 22px; border-radius: 6px; }
.side-label { margin: 18px 0 8px; color: #79879a; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.side-item { padding: 7px 8px; border-radius: 4px; color: #4f5e70; font-size: 11px; font-weight: 650; }.side-item.active { background: #dfeafa; color: var(--blue); }
.editor-main { min-width: 0; background: #e8eef4; }
.ribbon { height: 47px; display: flex; align-items: center; gap: 6px; padding: 0 13px; background: #fff; border-bottom: 1px solid #d5dfe9; }
.ribbon-tab { padding: 6px 7px; color: #738195; font-size: 10px; font-weight: 800; }.ribbon-tab.active { color: var(--blue); border-bottom: 2px solid var(--blue); }
.ribbon-tool { width: 24px; height: 24px; margin-left: 4px; border: 1px solid #d7e0e9; border-radius: 4px; background: #fbfcfd; }.ribbon-tool::after { content: ""; display: block; width: 10px; height: 2px; margin: 10px auto; background: #8090a3; }.ribbon-tool.color::after { height: 10px; margin-top: 6px; background: #3976bc; }.ribbon-tool.highlight::after { height: 10px; margin-top: 6px; background: #f3d34e; }
.document-canvas { height: 373px; padding: 21px 28px; overflow: hidden; }.document-sheet { width: 70%; min-height: 400px; margin: 0 auto; padding: 18px; background: #fff; box-shadow: 0 3px 12px rgba(25, 47, 75, .13); }.document-sheet img { display: block; width: 100%; height: auto; }

.trust-row { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 1px solid var(--line); }.trust-item { padding: 27px 20px; border-right: 1px solid var(--line); text-align: center; color: #536276; font-size: 14px; font-weight: 700; }.trust-item:last-child { border-right: 0; }.trust-item strong { display: block; margin-bottom: 4px; color: var(--navy); font-size: 17px; }

section { scroll-margin-top: 88px; }.band { padding: 104px 0; }.band.alt { background: var(--surface); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.section-heading { max-width: 690px; margin-bottom: 46px; }.section-heading h2 { margin-bottom: 14px; font-size: clamp(30px, 3.7vw, 45px); line-height: 1.1; }.section-heading p { margin: 0; color: var(--muted); font-size: 17px; line-height: 1.58; }

.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; }.feature { min-height: 212px; padding: 25px; border: 1px solid var(--line); border-radius: 7px; background: #fff; }.feature-mark { width: 38px; height: 38px; display: grid; place-items: center; margin-bottom: 22px; border-radius: 6px; background: var(--soft-blue); color: var(--blue); font-size: 20px; font-weight: 800; }.feature:nth-child(2) .feature-mark, .feature:nth-child(5) .feature-mark { background: var(--soft-lilac); color: var(--lilac); }.feature:nth-child(3) .feature-mark, .feature:nth-child(6) .feature-mark { background: var(--soft-green); color: var(--green); }.feature h3 { margin-bottom: 8px; font-size: 18px; }.feature p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.55; }

.workflow { display: grid; grid-template-columns: .9fr 1.1fr; gap: 60px; align-items: center; }.workflow-copy h2 { margin-bottom: 16px; font-size: clamp(30px, 3.7vw, 45px); line-height: 1.1; }.workflow-copy > p { color: var(--muted); font-size: 17px; line-height: 1.58; }.steps { margin: 29px 0 0; padding: 0; list-style: none; counter-reset: steps; }.steps li { position: relative; min-height: 64px; padding: 0 0 18px 56px; color: #4f5e70; font-size: 15px; line-height: 1.5; }.steps li::before { content: counter(steps, decimal-leading-zero); counter-increment: steps; position: absolute; left: 0; top: -2px; color: var(--blue); font-size: 14px; font-weight: 800; }.steps li::after { content: ""; position: absolute; left: 12px; top: 25px; bottom: 0; width: 1px; background: #c8d6e5; }.steps li:last-child::after { display: none; }.steps strong { display: block; color: var(--navy); font-size: 16px; }
.document-card { overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: #fff; box-shadow: var(--shadow); }.document-card-header { display: flex; align-items: center; justify-content: space-between; padding: 15px 18px; border-bottom: 1px solid var(--line); }.document-card-header span { color: var(--muted); font-size: 12px; font-weight: 700; }.document-card-header strong { color: var(--navy); font-size: 13px; }.document-card img { display: block; width: 100%; max-height: 470px; object-fit: cover; object-position: top; }

.format-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }.format-cell { min-height: 138px; padding: 25px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #fff; }.format-cell h3 { margin: 0 0 8px; font-size: 18px; }.format-cell p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.55; }.format-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 15px; }.format-tags span { padding: 5px 8px; border: 1px solid #cad7e5; border-radius: 4px; color: #536276; background: #f9fbfc; font-size: 11px; font-weight: 800; }

.final-band { padding: 84px 0; background: var(--navy); color: #fff; }.final-band .container { display: flex; align-items: center; justify-content: space-between; gap: 36px; }.final-band h2 { margin: 0 0 10px; font-size: clamp(30px, 3.7vw, 43px); }.final-band p { margin: 0; max-width: 650px; color: #c7d6eb; font-size: 17px; line-height: 1.55; }.final-band .button { flex: none; color: var(--navy); border-color: #fff; background: #fff; }.final-band .button:hover { background: #e7eef8; }

.legal-page { background: var(--surface); }.legal-main { width: min(860px, calc(100% - 48px)); margin: 0 auto; padding: 72px 0 96px; }.legal-panel { padding: clamp(28px, 5vw, 60px); border: 1px solid var(--line); border-radius: 8px; background: #fff; box-shadow: 0 8px 28px rgba(24,42,70,.06); }.legal-panel h1 { max-width: none; margin-bottom: 12px; font-size: clamp(38px, 5vw, 56px); }.legal-panel h2 { margin: 36px 0 10px; font-size: 20px; }.legal-panel p, .legal-panel li { color: #4e5c6e; font-size: 15px; line-height: 1.7; }.legal-panel ul { padding-left: 20px; }.legal-kicker { margin-bottom: 14px; color: var(--blue); font-size: 13px; font-weight: 800; text-transform: uppercase; }.legal-back { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 34px; color: var(--blue); font-size: 14px; font-weight: 750; }

.site-footer { padding: 30px 0; background: #0f1f3c; color: #b6c5d9; }.footer-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; font-size: 13px; }.footer-row .brand { color: #fff; font-size: 16px; }.footer-row a:hover { color: #fff; }.footer-links { display: flex; gap: 18px; }

@media (max-width: 860px) {
  .nav { min-height: 64px; }.nav-links { display: none; }.nav-cta { min-height: 38px; padding: 0 13px; }
  .hero-grid { min-height: auto; grid-template-columns: 1fr; gap: 43px; padding: 63px 0 38px; }.hero-copy > p:not(.eyebrow) { font-size: 17px; }.hero-screenshot { width: min(650px, 100%); margin: 0 auto; }
  .trust-row { grid-template-columns: repeat(2, 1fr); }.trust-item:nth-child(2) { border-right: 0; }.trust-item:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .feature-grid { grid-template-columns: repeat(2, 1fr); }.workflow { grid-template-columns: 1fr; gap: 35px; }.final-band .container { display: block; }.final-band .button { margin-top: 24px; }.format-grid { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .nav, .container, .legal-main { width: min(100% - 32px, 1160px); }.brand { font-size: 18px; }.brand img { width: 31px; height: 31px; }.nav-cta { font-size: 12px; }.hero-grid { padding-top: 46px; }.hero-actions { display: grid; grid-template-columns: 1fr; }.hero-actions .button { width: 100%; }.hero-screenshot figcaption { font-size: 10px; }
  .band { padding: 70px 0; }.section-heading { margin-bottom: 30px; }.feature-grid { grid-template-columns: 1fr; }.feature { min-height: 0; }.trust-item { padding: 20px 10px; font-size: 12px; }.trust-item strong { font-size: 15px; }.format-cell { min-height: 0; padding: 21px; }.footer-row { align-items: flex-start; flex-direction: column; }.legal-main { padding: 44px 0 60px; }.legal-panel { padding: 26px 21px; }
}
