:root{--color-bg:#0e0d0c;--color-surface:#171513;--color-surface-raised:#221f1b;--color-hairline:#2c2824;--color-border:#7a7166;--color-text:#f2ede5;--color-text-muted:#b0a79c;--color-accent:#e5b53b;--color-on-accent:#14110a;--color-error:#f2907b;--font-body:"Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Instrument Serif", Georgia, "Times New Roman", serif;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-6:4rem;--space-7:6rem;--gutter:1.25rem;--header-height:4rem;--touch-target:2.75rem;--radius-sm:.125rem;--radius-md:.75rem;--ease-out:cubic-bezier(.2, .7, .2, 1);--duration-fast:.18s;--duration-base:.4s;--duration-slow:.8s;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width>=768px){:root{--gutter:2rem;--header-height:5rem}}@media (width>=1024px){:root{--gutter:3rem}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}img,picture,video{max-width:100%;display:block}button{color:inherit;font:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}h1,h2,h3{font-family:var(--font-display);margin:0;font-weight:400;line-height:1.1}p{margin:0}.meta{color:var(--color-text-muted);letter-spacing:.1em;font-size:.875rem;font-variant-caps:all-small-caps;font-weight:500;line-height:1rem}::view-transition-group(*){animation-duration:var(--duration-slow);animation-timing-function:var(--ease-out)}::view-transition-old(root){animation:none}::view-transition-new(root){animation:iris-open var(--duration-slow) var(--ease-out) both}@keyframes iris-open{0%{clip-path:circle(0% at 50% 45%)}to{clip-path:circle(150% at 50% 45%)}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}.btn{--frame-color:var(--color-text);--frame-length:.875rem;--frame-thickness:2px;border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:var(--space-2);min-height:3rem;padding-inline:var(--space-4);transition:border-color var(--duration-fast) var(--ease-out), filter var(--duration-fast) var(--ease-out);background:0 0;border:1px solid #0000;justify-content:center;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.btn:focus-visible{outline:none}.btn:after{background:linear-gradient(var(--frame-color), var(--frame-color)) left top / var(--frame-length) var(--frame-thickness) no-repeat, linear-gradient(var(--frame-color), var(--frame-color)) left top / var(--frame-thickness) var(--frame-length) no-repeat, linear-gradient(var(--frame-color), var(--frame-color)) right top / var(--frame-length) var(--frame-thickness) no-repeat, linear-gradient(var(--frame-color), var(--frame-color)) right top / var(--frame-thickness) var(--frame-length) no-repeat, linear-gradient(var(--frame-color), var(--frame-color)) left bottom / var(--frame-length) var(--frame-thickness) no-repeat, linear-gradient(var(--frame-color), var(--frame-color)) left bottom / var(--frame-thickness) var(--frame-length) no-repeat, linear-gradient(var(--frame-color), var(--frame-color)) right bottom / var(--frame-length) var(--frame-thickness) no-repeat, linear-gradient(var(--frame-color), var(--frame-color)) right bottom / var(--frame-thickness) var(--frame-length) no-repeat;content:"";opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out), transform var(--duration-base) var(--ease-out);position:absolute;inset:-.625rem;transform:scale(1.12)}.btn:focus-visible:after{opacity:1;transform:none}@media (hover:hover){.btn:hover:after{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.btn:after{transform:none}}.btn--primary{--frame-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}.btn--primary:hover{filter:brightness(1.08)}.btn--ghost{--frame-color:var(--color-text);border-color:var(--color-border);color:var(--color-text)}.btn--ghost:hover{border-color:var(--color-text)}.link-grow{transition:color var(--duration-base) var(--ease-out);position:relative}.link-grow:after{background-color:var(--color-accent);content:"";transform-origin:0;height:2px;transition:transform var(--duration-base) var(--ease-out);width:100%;position:absolute;bottom:-.125rem;left:0;transform:scaleX(0)}:is(a,button):focus-visible>.link-grow,.link-grow--current{color:var(--color-accent)}:is(:is(a,button):focus-visible>.link-grow,.link-grow--current):after{transform:scaleX(1)}@media (hover:hover){:is(a,button):hover>.link-grow{color:var(--color-accent)}:is(a,button):hover>.link-grow:after{transform:scaleX(1)}}.reveal{opacity:0;transition:opacity var(--duration-slow) var(--ease-out), transform var(--duration-slow) var(--ease-out);transition-delay:var(--reveal-delay,0s);transform:translateY(1.5rem)}.reveal--in{opacity:1;transform:none}.reveal--frame{clip-path:inset(10%);opacity:1;transition:clip-path var(--duration-slow) var(--ease-out);transition-delay:var(--reveal-delay,0s);transform:none}.reveal--frame.reveal--in{clip-path:inset(0)}
