@view-transition{navigation:auto}:root{color-scheme:dark;--canvas:#100f0e;--panel:#1b1916;--line:#3e372b;--ink:#f6f1e7;--muted:#c0b8ab;--accent:#e5c786;--body:var(--font-atkinson,system-ui), sans-serif;--display:system-ui, sans-serif;--mono:ui-monospace, "Cascadia Code", Consolas, monospace;--gutter:clamp(1.125rem, 4.7vw, 4.5rem);--section:clamp(3.75rem, 8vw, 7rem);--radius:1.125rem;--ease:cubic-bezier(.2, .75, .25, 1)}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{background:radial-gradient(ellipse 82rem 48rem at 77% 0%, #2b2a28, transparent 88%), var(--canvas);min-height:100vh;color:var(--ink);font:1.0625rem/1.65 var(--body);flex-direction:column;margin:0;display:flex}main{flex:1;min-width:0}main:focus{outline:none}h1,h2,h3{font-family:var(--display);letter-spacing:-.045em;text-wrap:balance;margin:0;line-height:1.08}h1{font-size:clamp(3rem,7.5vw,6.25rem);font-weight:650}h2{font-size:clamp(1.8rem,4vw,3.2rem);font-weight:630}h3{font-size:clamp(1.3rem,2.3vw,1.75rem);font-weight:630}p{color:var(--muted);margin:0}a{color:inherit;text-underline-offset:.22em}a,button{-webkit-tap-highlight-color:transparent}button{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{color:var(--canvas);background:var(--accent)}img{max-width:100%;height:auto;display:block}figure{margin:0}.shell{width:min(100% - var(--gutter) * 2, 76rem);margin-inline:auto}.skip-link{z-index:5;background:var(--ink);color:var(--canvas);padding:.6rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.masthead{z-index:2;border-bottom:1px solid var(--line);background:#151412eb;position:relative}.masthead-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.75rem;display:flex}.brand{font:650 1.125rem var(--display);letter-spacing:-.04em;align-items:center;gap:.65rem;text-decoration:none;display:inline-flex}.brand img{flex:none}.masthead nav{align-items:center;gap:clamp(.25rem,1.5vw,1.15rem);display:flex}.masthead nav a{color:var(--muted);border-radius:.45rem;padding:.65rem .75rem;font-size:.95rem;text-decoration:none;transition:color .2s,background .2s;position:relative}.masthead nav a:after{content:"";background:var(--accent);transform-origin:0;height:1px;transition:transform .24s var(--ease);position:absolute;inset:auto .75rem .36rem;transform:scaleX(0)}.masthead nav a:is(:hover,.active){color:var(--ink)}.masthead nav a:is(:hover,.active):after{transform:scaleX(1)}.menu-toggle{color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:.5rem;min-height:44px;padding:.4rem .7rem;display:none}.menu-toggle span{color:var(--accent);margin-inline-start:.3rem}.eyebrow{color:var(--muted);font:500 .72rem/1.5 var(--mono);letter-spacing:.13em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.eyebrow span{color:var(--accent)}.lede{max-width:37ch;font-size:clamp(1.13rem,2vw,1.45rem);line-height:1.5}.actions{flex-wrap:wrap;gap:.7rem;margin-top:1.85rem;display:flex}.button{border:1px solid var(--line);background:var(--panel);min-height:46px;color:var(--ink);transition:background .2s, border-color .2s, transform .24s var(--ease);border-radius:.55rem;justify-content:space-between;align-items:center;gap:.8rem;padding:.62rem 1rem;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex}.button span,.text-link span,.footer-links span{color:var(--accent)}.button:hover{background:#332b20;border-color:#9f8250;transform:translateY(-2px)}.button.primary{background:var(--accent);color:#1c170d;border-color:#0000}.button.primary:hover{background:#f3dba3}.button.primary span{color:inherit}.project-visual{isolation:isolate;background:#211e19;position:relative;overflow:hidden}.orbit-art{width:100%;height:100%;position:absolute;inset:0}.visual-index{color:#cdbb97;font:500 .66rem/1.2 var(--mono);letter-spacing:.12em;position:absolute;bottom:.85rem;left:.85rem}.section{padding-block:clamp(1.85rem, 4vw, 3.25rem) var(--section);border-top:1px solid var(--line)}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:.65rem 1.25rem;margin-bottom:1.5rem;display:flex}.section-heading h2{margin-top:.38rem}.text-link{min-height:44px;color:var(--ink);align-items:center;gap:.6rem;font-weight:700;text-decoration-color:#0000;transition:text-decoration-color .2s;display:inline-flex}.text-link:hover{text-decoration-color:var(--accent)}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2.5vw,1.65rem);display:grid}.project-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s, box-shadow .25s, transform .3s var(--ease);overflow:hidden}.project-card:hover{border-color:#8e754e;transform:translateY(-3px);box-shadow:0 1.2rem 2.5rem #07060555}.project-visual{aspect-ratio:2.05;border-bottom:1px solid var(--line)}.project-visual .orbit-art{transition:transform .45s var(--ease)}.project-card:hover .orbit-art,.post-card:hover .orbit-art{transform:scale(1.045)}.project-copy{padding:clamp(1.1rem,3vw,1.6rem)}.project-copy h3{margin-block:.6rem .45rem}.page-intro{padding-block:clamp(3rem,7.5vw,7rem) clamp(2.5rem,6vw,5rem)}.page-intro h1{margin-block:.65rem 1rem}.page-intro .lede{max-width:50ch}.post-list{gap:1rem;display:grid}.post-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);grid-template-columns:minmax(0,.55fr) minmax(0,1fr);transition:border-color .25s;display:grid;overflow:hidden}.post-card:hover,.post-card:focus-within{border-color:#a88a55}.post-card>.project-visual{aspect-ratio:auto;border:0;border-right:1px solid var(--line);min-height:11rem}.post-copy{align-content:center;gap:.6rem;padding:clamp(1.15rem,3.5vw,2.5rem);display:grid}.post-title{text-decoration-color:#0000;transition:text-decoration-color .2s}.post-title:hover{text-decoration-color:var(--accent)}.tags{flex-wrap:wrap;gap:.35rem;margin:.2rem 0 0;padding:0;list-style:none;display:flex}.tags li{color:#e9d3a7;font:.72rem/1.35 var(--mono);background:#2a231a;border:1px solid #4b3e2a;border-radius:100px;padding:.25rem .5rem}.article{padding-block:clamp(2rem, 5vw, 4.5rem) var(--section)}.article-header,.prose{width:min(100%,44rem);margin-inline:auto}.article-header{margin-block:1.55rem 2.5rem}.article-header h1{overflow-wrap:anywhere;margin-block:.8rem;font-size:clamp(2.65rem,6.2vw,5rem)}.article-header .tags{margin-top:1rem}.article-cover{border:1px solid var(--line);border-radius:var(--radius);width:100%;height:auto;margin:0 auto 2.5rem}.prose{border-top:1px solid var(--line);color:#e3dacb;overflow-wrap:anywhere;padding-top:2rem;font-size:clamp(1.1rem,1.6vw,1.2rem)}.prose p{color:inherit}.prose>*+*{margin-top:1.15em}.prose :is(h2,h3){color:var(--ink);margin-top:1.35em}.prose h2{font-size:clamp(1.65rem,3.5vw,2.35rem)}.prose a{color:var(--accent)}.prose blockquote{border-inline-start:2px solid var(--accent);background:var(--panel);margin-inline:0;padding:.65rem 1rem}.prose code{font:.86em/1.6 var(--mono)}.prose :not(pre)>code{color:#f0d39d;background:#33291e;border-radius:.25rem;padding:.12em .3em}.prose pre{border:1px solid var(--line);tab-size:2;border-radius:.7rem;padding:1.1rem;overflow-x:auto}.prose table{border-collapse:collapse;display:block;overflow-x:auto}.prose :is(th,td){border:1px solid var(--line);text-align:start;padding:.4rem .65rem}.prose hr{border:0;border-top:1px solid var(--line)}.site-footer{border-top:1px solid var(--line);background:#161411}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;padding-block:2.25rem;display:flex}.footer-inner p{margin-top:.5rem;font-size:.94rem}.footer-links{flex-wrap:wrap;gap:1.1rem;display:flex}.footer-links a{align-items:center;gap:.45rem;min-height:44px;font-size:.94rem;text-decoration-color:#0000;transition:text-decoration-color .2s;display:flex}.footer-links a:hover{text-decoration-color:var(--accent)}.entrance{animation:arrive .65s var(--ease) both}@keyframes arrive{0%{opacity:.3;transform:translateY(.65rem)}to{opacity:1;transform:none}}@supports (animation-timeline:view()){.reveal{animation:linear both arrive view();animation-range:entry entry 25%}}@media (width<=620px){.masthead-inner{flex-wrap:wrap;gap:.4rem;min-height:4.25rem;padding-block:.65rem}.masthead nav{flex-wrap:wrap;flex-basis:100%}.masthead nav a{text-align:center;flex:1}.has-menu .menu-toggle{display:inline-block}.has-menu nav{padding:.65rem var(--gutter) .85rem;border-block-end:1px solid var(--line);visibility:hidden;opacity:0;background:#191714;gap:.15rem;display:grid;position:absolute;inset:100% 0 auto;transform:translateY(-.5rem);box-shadow:0 1rem 2rem #07060580}.menu-interacted nav{transition:opacity .22s, transform .25s var(--ease), visibility .25s}.has-menu nav a{text-align:start}.has-menu nav a.active{background:#30271a}.has-menu nav a:after{width:1.2rem;right:auto}.menu-toggle[aria-expanded=true]+nav{visibility:visible;opacity:1;transform:none}.project-grid,.post-card{grid-template-columns:minmax(0,1fr)}.post-card>.project-visual{aspect-ratio:2.45;border-right:0;border-bottom:1px solid var(--line);min-height:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.button:hover,.project-card:hover,.project-card:hover .orbit-art,.post-card:hover .orbit-art{transform:none}}
