:root{--font-sans:var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-serif:var(--font-cormorant),Georgia,serif;--bone:#f5f1ed;--oat:#e8e1d8;--warm-stone:#ccc5ba;--espresso:#3d3228;--soft-charcoal:#5a524a;--cinnamon:#a97155;--caramel:#c89a6b;--fawn:#d4b896;--ivory-glow:#fffbf7;--surface:#fff;--surface-veil:hsla(0,0%,100%,.75);--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:24px;--r-pill:999px;--shadow-soft:0 4px 16px rgba(61,50,40,.08);--shadow-md:0 8px 24px rgba(61,50,40,.12);--shadow-glow:0 0 24px hsla(33,42%,71%,.4);--t-fast:200ms;--t-std:400ms;--t-slow:800ms;--ease:cubic-bezier(.4,0,.2,1);--container:72rem;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--space-6:64px;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bone:#12100f;--oat:#1a1715;--warm-stone:#3a342e;--espresso:#e9e3dc;--soft-charcoal:#cfc7be;--surface:#0f0d0c;--surface-veil:rgba(20,18,16,.5);--shadow-soft:0 6px 20px rgba(0,0,0,.35);--shadow-md:0 12px 28px rgba(0,0,0,.45);color-scheme:dark}}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;text-wrap:pretty;scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--espresso);background:radial-gradient(1200px 600px at 50% -200px,var(--ivory-glow) 0,transparent 60%),linear-gradient(180deg,var(--bone) 0,var(--oat) 100%);line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:400;line-height:1.2;letter-spacing:-.01em}h1{font-size:clamp(2rem,1.6rem + 2vw,3rem)}h2{font-size:clamp(1.5rem,1.3rem + 1vw,2rem)}h3{font-size:clamp(1.25rem,1.1rem + .6vw,1.5rem)}p{margin:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}::-moz-selection{background:var(--fawn);color:var(--espresso)}::-moz-selection,::selection{background:var(--fawn);color:var(--espresso)}:focus-visible{outline:2px solid var(--cinnamon);outline-offset:2px;border-radius:var(--r-sm)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--oat)}::-webkit-scrollbar-thumb{background:var(--cinnamon);border-radius:var(--r-pill)}::-webkit-scrollbar-thumb:hover{background:var(--caramel)}.container{max-width:var(--container);margin-inline:auto;padding-inline:1.5rem}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}.text-center{text-align:center}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;clip-path:inset(50%)}.card{background:var(--surface-veil);backdrop-filter:blur(6px);border:1px solid color-mix(in oklab,var(--warm-stone),transparent 60%);border-radius:var(--r-xl);box-shadow:var(--shadow-soft)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:12px 28px;border-radius:var(--r-pill);border:0;cursor:pointer;font-weight:600;transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.btn-primary{color:#fff;background:var(--caramel);box-shadow:0 6px 18px -6px hsla(30,46%,60%,.55)}.btn-primary:hover{transform:translateY(-2px)}.btn-ghost{color:var(--espresso);background:transparent;border:2px solid color-mix(in oklab,var(--oat),transparent 20%)}.prose p{margin:0 0 1em}.prose h2{margin:1.4em 0 .6em}.prose h3{margin:1.2em 0 .5em}.prose ol,.prose ul{margin:.5em 0 1em;padding-left:1.25rem}.prose hr{border:0;border-top:1px solid var(--warm-stone);margin:1.25em 0}.prose blockquote{margin:1em 0;padding:.7em 1em;border-left:3px solid var(--caramel);background:color-mix(in oklab,var(--surface),transparent 85%)}.palette{display:flex;gap:.75rem;align-items:center;justify-content:center}.palette-dot{width:48px;height:48px;border-radius:50%;box-shadow:0 4px 12px rgba(0,0,0,.08),inset 0 1px 2px hsla(0,0%,100%,.35);ring:1px solid rgba(0,0,0,.04);animation:breath 4s var(--ease) infinite;will-change:transform,opacity}.palette-dot.sm{width:32px;height:32px}.palette-dot.lg{width:56px;height:56px}@keyframes breath{0%,to{transform:scale(1);opacity:.92}50%{transform:scale(1.12);opacity:1}}@media (prefers-reduced-motion:reduce){.palette-dot{animation:none!important}}:root{--scroll-pad:72px}html{scroll-padding-top:var(--scroll-pad)}