:root{--bg:#ece2d0;--ink:#1c1812;--ink-soft:#4a4033;--rule:#d4c9b0;--accent:#a87d3a;--accent-hot:#9a4628;--paper:#faf6ed;--font-display:"Playfair Display", Georgia, "Times New Roman", serif;--font-body:"Sarabun", system-ui, -apple-system, "Segoe UI", sans-serif;--font-ui:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6;animation:.24s ease-out brand-fade-in}@keyframes brand-fade-in{0%{opacity:.6}to{opacity:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}body{animation:none}*,:before,:after{transition:none!important}}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.display{font-family:var(--font-display);letter-spacing:-.015em;font-size:clamp(2rem,5vw,3.2rem);font-style:italic;font-weight:700;line-height:1.05}.section-heading{font-family:var(--font-display);font-size:1.25rem;font-style:italic;font-weight:700}.label{font-family:var(--font-ui);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft);font-size:.72rem;font-weight:600}.body-muted{color:var(--ink-soft)}.rule{background:var(--rule);border:0;height:1px}.brand{color:var(--ink);align-items:center;gap:.5rem;display:inline-flex}.brand .kbd-icon{color:currentColor;width:1.4em;height:.8em;display:inline-block}.brand .wordmark{font-family:var(--font-display);letter-spacing:-.02em;font-size:1em;font-style:italic;font-weight:700}.lang-toggle{font-family:var(--font-ui);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft);-webkit-user-select:none;user-select:none;gap:.4rem;font-size:.72rem;font-weight:600;display:inline-flex}.lang-toggle button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.lang-toggle button[aria-pressed=true]{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.door{border:1px solid var(--ink);font-family:var(--font-ui);color:var(--ink);background:0 0;border-radius:2px;padding:.55rem 1rem;font-size:.85rem;font-weight:600;transition:background .15s,color .15s;display:inline-block}.door:hover,.door.primary{background:var(--ink);color:var(--bg)}.door.primary:hover{background:var(--ink-soft);color:var(--bg)}
