:root{--studio-900:#0e0e12;--studio-800:#17171e;--studio-700:#1f1f2b;--studio-600:#2c2c3a;--studio-500:#3a3a4a;--ink-100:#eeeaf2;--ink-300:#b9b3c8;--ink-400:#9990b0;--ink-600:#5a5370;--navy-900:#102444;--navy-700:#1b3a6b;--navy-500:#2e5596;--navy-300:#6e8fc4;--navy-100:#c5d4ec;--orange-600:#d86f00;--orange-500:#f5820a;--orange-400:#ff9a33;--orange-glow:rgba(245,130,10,.28);--warm-500:#c89b6e;--warm-300:#dcbe9c;--green-500:#5fc97e;--amber-500:#e8a63c;--red-500:#e86b6b;--bg-base:var(--studio-900);--bg-surface:var(--studio-800);--bg-elevated:var(--studio-700);--bg-card:var(--studio-800);--border-subtle:var(--studio-600);--border-strong:var(--studio-500);--text-primary:var(--ink-100);--text-secondary:var(--ink-400);--text-muted:var(--ink-600);--brand:var(--navy-700);--brand-on-dark:var(--navy-300);--on-brand:#fff;--action:var(--orange-500);--action-hover:var(--orange-400);--action-press:var(--orange-600);--on-action:#fff;--action-glow:var(--orange-glow);--accent-warm:var(--warm-500);--success:var(--green-500);--warning:var(--amber-500);--error:var(--red-500);--focus-ring:rgba(245,130,10,.55);--overlay:rgba(8,8,12,.62);color-scheme:dark}[data-theme=light]{--bg-base:#fafafa;--bg-surface:#fff;--bg-elevated:#fff;--bg-card:#f3f4f6;--border-subtle:#e6e8ec;--border-strong:#d3d7de;--text-primary:#16223a;--text-secondary:#5a6478;--text-muted:#9aa1b0;--brand:var(--navy-700);--brand-on-dark:var(--navy-700);--on-brand:#fff;--action:var(--orange-500);--action-hover:var(--orange-600);--action-press:var(--orange-600);--on-action:#fff;--action-glow:rgba(245,130,10,.2);--accent-warm:#a9743f;--success:#3fa85e;--warning:#c98517;--error:#d24f4f;--focus-ring:rgba(27,58,107,.45);--overlay:rgba(20,26,40,.38);color-scheme:light}:root{--font-display:"DM Serif Display","Noto Sans JP",Georgia,serif;--font-ui:"Inter","Noto Sans JP",system-ui,-apple-system,sans-serif;--font-jp:"Noto Sans JP","Inter",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",monospace;--display-xl-size:40px;--display-lg-size:28px;--heading-md-size:20px;--heading-sm-size:16px;--body-lg-size:16px;--body-md-size:14px;--body-sm-size:12px;--label-size:11px;--script-size:15px;--display-xl-line:1.15;--display-lg-line:1.2;--heading-md-line:1.3;--heading-sm-line:1.4;--body-lg-line:1.6;--body-md-line:1.6;--body-sm-line:1.5;--label-line:1.2;--script-line:1.8;--display-xl-weight:400;--display-lg-weight:400;--heading-md-weight:600;--heading-sm-weight:600;--body-weight:400;--label-weight:500;--label-tracking:0.01em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-8:48px;--space-10:64px;--card-pad-x:var(--space-5);--card-pad-y:var(--space-4);--tap-min:44px;--tap-play:56px;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 8px 24px rgba(0,0,0,.35);--shadow-lg:0 20px 48px rgba(0,0,0,.45);--shadow-sheet:0 -12px 40px rgba(0,0,0,.45);--glow-action:0 0 0 1px rgba(245,130,10,.25),0 8px 32px var(--action-glow);--motion-fast:0.15s ease-out;--motion-default:0.35s ease-out;--motion-slow:0.6s ease-in-out;--ease-out:cubic-bezier(0.16,1,0.3,1)}@import url("https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;600;700&display=swap");[data-theme=light]{--shadow-sm:0 1px 2px rgba(16,36,68,.06);--shadow-md:0 8px 24px rgba(16,36,68,.08);--shadow-lg:0 20px 48px rgba(16,36,68,.12);--shadow-sheet:0 -12px 40px rgba(16,36,68,.12)}@media (prefers-reduced-motion:reduce){:root{--motion-fast:0.001s linear;--motion-default:0.001s linear;--motion-slow:0.001s linear}}:root{--lp-max-w:1080px;--lp-gutter:var(--space-5);--lp-gutter-sm:20px;--lp-section-y:96px;--lp-section-y-sm:64px;--lp-breakpoint:640px}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;padding:0;background:var(--bg-base);color:var(--text-primary);font-family:var(--font-ui);font-weight:var(--body-weight);line-height:var(--body-lg-line);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}img,svg{display:block}button{font-family:inherit}.nav-link{transition:color var(--motion-fast)}.nav-link:hover{color:var(--text-primary)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}