/* V4.1 presentation only. V4 layout and interaction remain the baseline. */
:root {
  --bg: #0e1115;
  --surface: #1a2026;
  --deep: #0a0d11;
  --text: #f2f5f8;
  --muted: #bdc6cf;
  --dim: #9aa9b5;
  --line: #333d46;
  --green: #24e0c3;
  --green-light: #6af5dc;
  --ink: #052723;
  --silver: #dce3ec;
  --metal: linear-gradient(112deg, #a5fae9 0%, #28dfc0 29%, #77ffe1 47%, #20c7ad 51%, #38edce 73%, #a1f5e8 100%);
}
body { background: var(--bg); }
.hero { isolation: isolate; }
.hero:before {
  z-index: -1; width: 80%; height: 110%; top: -40px; right: 0;
  background: radial-gradient(ellipse at 72% 38%, #21e0c00b 0%, transparent 57%),
              radial-gradient(ellipse at 30% 40%, #a0b5da08 0%, transparent 68%);
}
.hero-word {
  background-image: linear-gradient(155deg, #ffffff 7%, #dce4ee 31%, #a3aeba 43%, #f8fcff 47%, #e0e8f2 51%, #939fad 68%, #cbd6df 86%, #a8e6db 100%);
}
.hero .eyebrow {
  font-size: 15px; line-height: 1.8; letter-spacing: 1.2px;
  color: #dce3ec; font-weight: 500; margin-bottom: 24px;
  text-wrap: balance;
}
.eyebrow { font-size: 12px; color: #aab9c5; line-height: 1.9; }
.header nav { font-size: 14px; gap: 22px; }
.nav-actions { gap: 22px; }
.nav-cta { border-color: #73838f; }
.nav-more>div { background: #1a2229; border-color: #52616e; }
.primary {
  font-size: 14px; border-color: #a8ffe966;
  box-shadow: inset 0 1px #edfffcaa, inset 0 -1px #0b715f66, 0 4px 20px #1bd5b515;
}
.secondary { font-size: 14px; border-color: #596976; }
.quiet-link, .text-link { font-size: 14px; }
.text-link { text-decoration-color: #7b949f; }
.hero-lead, .lead, .closing p { color: var(--silver); }
.work-preview {
  background: linear-gradient(145deg, #34414b66 0%, #1c252c 27%, #161d24 66%, #172927 100%);
  border-color: #7d929855;
  box-shadow: 0 30px 80px #0005, inset 0 1px #e7f4ff21;
}
.work-preview:before {
  left: 18%; right: 8%;
  background: linear-gradient(90deg, transparent, #b2c4d399 23%, #f0f7ffba 49%, #42e3c99c 80%, transparent);
}
.tiny, .preview-label { font-size: 12px; color: #a8bac7; }
.preview-label { letter-spacing: 1px; }
.accent { color: var(--green-light); }
.request-line { color: #edf2f7; border-bottom-color: #65768140; }
.work-answer p { font-size: 15px; line-height: 1.9; }
.work-answer span, .attachment { font-size: 13px; line-height: 1.9; }
.mini-result { background: #0b1118a6; border-color: #748a9640; }
.mini-result dl>div { font-size: 13px; line-height: 1.9; }
.preview-bottom { font-size: 14px; }
.home-stripe { font-size: 13px; }
.body-copy p, p.sublead, .feature-list p, .three-col p, .evidence p,
.workflow p, .workspace-entry p, .faq p, .legal-body p, .legal-body li {
  font-size: 16px; line-height: 1.95;
}
.status, .caption { font-size: 12px; line-height: 1.95; }
.status { border-color: #408276; }
.status.neutral { border-color: #66737e; }
.notice { color: #ccd7df; font-size: 14px; background: #30434333; border-left-color: #5ab8aa; }
.demo-tabs button[aria-pressed=true] { background: #25daba0c; }
.result-rows { font-size: 15px; }
.field label { font-size: 15px; }
.field input, .field textarea, .field select {
  font-size: 16px; border-color: #5c6d7b; background: #19222b;
}
.field input::placeholder, .field textarea::placeholder { color: #a8b8c6; }
.form-layout aside p, .demo-content details, .error { font-size: 14px; }
.legal-links span { font-size: 12px; }
.footer-top p, .footer-links h2, .footer-links a { font-size: 13px; }
.footer-bottom { font-size: 12px; border-top-color: #65778340; }
.review .logo-dark { background: #141b23; }
.review .logo-light { background: #edf1f6; color: #1a2838; }
.review .logo-grid section { border-color: #52616d; }
.review .logo-grid p, .review>.section>p { font-size: 15px; color: #bdc6cf; }
.review .logo-light p { color: #435465; }
@media(max-width:1200px) {
  .header nav { font-size: 13px; gap: 16px; }
  .nav-actions { gap: 16px; }
}
@media(max-width:1040px) {
  .header nav { background: #161e26; border-color: #526474; }
  .hero .primary, .hero .secondary { font-size: 13px; }
}
@media(max-width:760px) {
  .hero .eyebrow { font-size: 14px; line-height: 1.9; letter-spacing: .8px; }
  .hero .primary, .hero .secondary { font-size: 14px; }
  .home-stripe { font-size: 12px; }
  .result-rows>div { font-size: 14px; }
  .notice { font-size: 14px; }
  .demo-content .work-answer p { font-size: 16px; }
  .footer-bottom { font-size: 12px; }
}
@media(max-width:360px) {
  .hero .eyebrow { font-size: 13px; line-height: 1.9; letter-spacing: .5px; }
  .hero .primary, .hero .secondary { font-size: 13px; }
  .preview-label { font-size: 11px; }
  .mini-result dl>div { font-size: 12px; }
  .footer-links a { font-size: 12px; }
  .home-stripe { font-size: 12px; }
}
@media(prefers-reduced-motion:reduce) {
  .hero:before { background: radial-gradient(ellipse, #a0b5da07, transparent 70%); }
}
