:root {
  --ink: #111315;
  --dark: #1b1e21;
  --paper: #f7f7f4;
  --white: #ffffff;
  --photo: #e9e9e9;
  --line: #e5e5df;
  --muted: #686c70;
  --light-muted: #b5b8ba;
  --red: #ce2029;
  --red-hover: #ae1720;
  --warm: #f1eee7;
  --error: #a33b15;
  --dark-line: rgba(255,255,255,.2);
  --glass: rgba(17,19,21,.64);
  --scrim: linear-gradient(transparent,rgba(17,19,21,.8));
  --stage-shadow: 0 24px 64px rgba(17,19,21,.08);
  --dialog-shadow: 0 24px 80px rgba(17,19,21,.24);
  --hero-a: radial-gradient(ellipse at 76% 44%, #34383a 0%, var(--dark) 32%, var(--ink) 66%);
  --hero-b: radial-gradient(ellipse at 60% 50%, rgba(206,32,41,.15), transparent 55%);
  --hero-c: radial-gradient(ellipse at 75% 45%, var(--white), var(--warm) 80%);
  --hero-letter: rgba(255,255,255,.055);
  --hero-letter-dark: rgba(17,19,21,.05);
  --sales-hero-shade: linear-gradient(90deg,rgba(17,19,21,.45),transparent 66%);
  --sales-hero-light-shade: linear-gradient(90deg,rgba(247,247,244,.2),transparent 66%);
  --sales-mobile-shade: linear-gradient(90deg,var(--ink) 0%,rgba(17,19,21,.9) 28%,transparent 66%);
  --consumer-mobile-shade: linear-gradient(180deg,var(--ink) 0%,transparent 22%,transparent 49%,var(--ink) 63%);
  --hero-edge-mask: linear-gradient(90deg,transparent 12%,var(--ink) 42%);
  --section-copy-shade: linear-gradient(90deg,var(--ink),rgba(17,19,21,.64) 38%,transparent 72%);
  --section-mobile-shade: linear-gradient(180deg,var(--ink),rgba(17,19,21,.8) 40%,transparent 80%);
  --sales-mobile-light-shade: linear-gradient(90deg,var(--paper) 0%,rgba(247,247,244,.9) 28%,transparent 66%);
  --sans: 'Hiragino Kaku Gothic ProN', 'Yu Gothic', Meiryo, sans-serif;
  --serif: 'Hiragino Mincho ProN', 'Yu Mincho', serif;
  --text: var(--ink);
  --surface: var(--white);
  --subtle: var(--paper);
  --border: var(--line);
  --secondary: var(--muted);
  --radius: 0px;
  --section-space: 96px;
  --gutter: 48px;
}
.theme-b {
  --text: var(--white);
  --surface: var(--ink);
  --subtle: var(--dark);
  --border: var(--dark-line);
  --secondary: var(--light-muted);
}
.theme-c {
  --surface: var(--paper);
  --subtle: var(--warm);
  --radius: 24px;
}
@media (max-width: 700px) {
  :root { --section-space: 64px; --gutter: 24px; }
}
