* { box-sizing: border-box; }
body { margin: 0; background: var(--bg-canvas); color: var(--text-primary); font-family: var(--font-sans); font-size: var(--size-lg); line-height: var(--leading-normal); }
a { color: inherit; text-decoration: none; display: inline-flex; align-items: center; min-block-size: var(--touch-min); }
a:focus-visible { outline: var(--space-1) solid var(--accent); outline-offset: var(--space-1); }
.page { width: 100%; min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; padding: 0 var(--space-8); }
.page > main { flex: 1; min-width: 0; }
header { display: flex; justify-content: space-between; align-items: center; gap: var(--space-6); padding: var(--space-8) 0; border-bottom: calc(var(--space-1) / 4) solid var(--border-strong); }
.brand { font-family: var(--font-serif); font-size: var(--size-2xl); font-weight: var(--weight-medium); letter-spacing: var(--tracking-wide); }
header span, .eyebrow { color: var(--text-secondary); font-size: var(--size-sm); letter-spacing: var(--tracking-wide); }
.hero { padding: calc(var(--space-12) * 2) 0; }
.rule { width: var(--space-12); height: var(--space-1); background: var(--accent); margin-bottom: var(--space-8); }
h1 { font-family: var(--font-serif); font-size: clamp(var(--size-4xl), 6vw, calc(var(--size-5xl) * 1.4)); font-weight: var(--weight-regular); line-height: var(--leading-tight); letter-spacing: var(--tracking-wide); margin: 0 0 var(--space-8); }
.intro { max-width: calc(var(--space-12) * 12); color: var(--text-secondary); font-size: var(--size-xl); line-height: var(--leading-relaxed); margin: 0; }
.about { display: grid; grid-template-columns: 1fr 3fr; gap: var(--space-8); padding: var(--space-12) 0; border-top: calc(var(--space-1) / 4) solid var(--border-strong); }
.eyebrow { margin: var(--space-2) 0 0; }
h2 { font-family: var(--font-serif); font-size: var(--size-3xl); font-weight: var(--weight-regular); margin: 0 0 var(--space-5); }
.about div p { max-width: calc(var(--space-12) * 13); margin: 0; color: var(--text-secondary); line-height: var(--leading-relaxed); }
.services { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-10); padding: var(--space-6) 0 calc(var(--space-12) * 1.5); }
article { border-top: calc(var(--space-1) / 4) solid var(--border-hairline); padding-top: var(--space-6); }
h3 { font-size: var(--size-xl); font-weight: var(--weight-medium); margin: 0 0 var(--space-3); }
article p { margin: 0; color: var(--text-secondary); font-size: var(--size-md); line-height: var(--leading-relaxed); }
footer { border-top: calc(var(--space-1) / 4) solid var(--border-strong); padding: var(--space-8) 0; color: var(--text-secondary); font-size: var(--size-sm); }
.footer-brand { display: flex; justify-content: space-between; gap: var(--space-4); }
.footer-brand strong { font-weight: var(--weight-medium); color: var(--text-primary); }
.entity { text-align: center; }
.filing { text-align: center; margin-top: var(--space-6); }
.filing a { text-decoration: underline; text-underline-offset: var(--space-1); }
@media (width < 768px) {
  .page { padding: 0 var(--space-6); }
  header { padding: var(--space-6) 0; }
  .hero { padding: calc(var(--space-12) * 1.5) 0; }
  .about { grid-template-columns: 1fr; gap: var(--space-6); }
  .services { grid-template-columns: 1fr; gap: var(--space-8); }
}

@media (prefers-color-scheme: dark) { :root:not([data-theme]) {
  color-scheme: dark;
  --bg-canvas: #0B0A09;
  --bg-subtle: #1A1715;
  --surface-card: #29241F;
  --surface-raised: #36302B;
  --surface-inverse: #45352A;
  --on-inverse: #F1EBE3;
  --on-inverse-muted: #C9BBAC;
  --inverse-accent: #EEC88E;
  --text-primary: #F1EBE3;
  --text-secondary: #B5ABA1;
  --text-tertiary: #A09992;
  --text-on-accent: #1A1714;
  --border-hairline: #433B35;
  --border-strong: #62564B;
  --line-accent: #A0814F;
  --accent: #DCAE6F;
  --accent-soft: #4A3720;
  --accent-ink: #EEC88E;
  --success: #8FC47F;
  --success-soft: #243A1F;
  --warning: #E8AE4C;
  --warning-soft: #48351A;
  --danger: #EE8A71;
  --danger-soft: #4C2820;
  --info: #8CBFE3;
  --info-soft: #1C3648;
  --success-ink: #8FC47F;
  --warning-ink: #E8AE4C;
  --danger-ink: #EE8A71;
  --info-ink: #8CBFE3;
  --focus-ring: rgba(220,174,111,.4);
  --overlay: rgba(0,0,0,.6);
  --shadow-card: 0 1px 0 rgba(255,255,255,.05) inset, 0 0 0 1px rgba(255,255,255,.02), 0 18px 40px -24px rgba(0,0,0,.8);
  --shadow-float: 0 18px 40px -18px rgba(0,0,0,.8);
  --skeleton: #332D29;
  --live-bg: #0B0A09;
  --live-surface: #29241F;
  --live-border: #A0814F;
  --live-text: #F1EBE3;
  --live-text-muted: #C9BBAC;
  --live-accent: #EEC88E;
  --hint-activity: #EEC88E;
  --hint-concern: #A9B6F2;
  --hint-competitor: #D9A6E6;
  --hint-budget: #74CFD4;
  --hint-health: #EE7186;
  --hint-companion: #A6CF7C;
  --chart-1: #DCAE6F;
  --chart-2: #6CCBC9;
  --chart-3: #9AA8F0;
  --chart-4: #EE8A71;
  --chart-5: #9DCB7F;
  --chart-6: #D3A0E0;
  --chart-muted: #8E857B;
  --chart-grid: #3A332D;
  --chart-seq-1: #332C26;
  --chart-seq-2: #5A4630;
  --chart-seq-3: #8C6A40;
  --chart-seq-4: #C2914F;
  --chart-seq-5: #EEC88E;
  --chart-glow: rgba(220,174,111,.28);
  --fill-muted: #302A25;
  --fill-strong: #36302B;
} }
