:root{--bg:#f7f5f0;--bg-elevated:#fbfaf7;--surface:#fff;--surface-muted:#f0f4f3;--text:#16191c;--muted:#5f676d;--muted-strong:#38424a;--line:#dedbd2;--line-strong:#c9c4b8;--accent:#d97a12;--accent-strong:#9d5309;--accent-soft:#f5dfc4;--cool:#21747a;--cool-soft:#dcebea;--radius:8px;--shadow-sm:0 1px 2px #16191c0a, 0 10px 24px #16191c0f;--shadow-md:0 20px 44px #16191c17}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{background:var(--bg);min-height:100%;color:var(--text);text-rendering:optimizelegibility;overflow-wrap:anywhere;margin:0;padding:0;font-family:Space Grotesk,Segoe UI,sans-serif;font-size:16px;line-height:1.65}body::selection{background:var(--accent-soft)}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--cool);outline-offset:4px}.skip-link{z-index:100;background:var(--text);color:var(--bg);padding:.6rem 1rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(calc(-100% - 1rem))}.skip-link:focus{transform:translateY(0)}#main-content{scroll-margin-top:5rem}img{max-width:100%;display:block}.container{width:min(1120px,100vw - 40px);margin:0 auto}.site-bg{pointer-events:none;z-index:-1;background:linear-gradient(#ffffffd1,#f7f5f0eb),linear-gradient(90deg,#16191c09 1px,#0000 1px) 0 0/80px 80px,linear-gradient(#16191c06 1px,#0000 1px) 0 0/80px 80px;position:fixed;inset:0}.topbar{z-index:20;backdrop-filter:blur(18px);background:#f7f5f0db;border-bottom:1px solid #dedbd2e6;justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 0;display:flex;position:sticky;top:0}.brand{align-items:center;font-family:Syne,sans-serif;font-size:1.2rem;font-weight:700;display:inline-flex}.topbar nav{gap:1rem;display:flex}.topbar nav a,a.accent-link{position:relative}.topbar nav a{color:var(--muted);padding:.15rem 0;font-size:.92rem;font-weight:600;line-height:1.2;transition:color .18s}.topbar nav a:after,a.accent-link:after{content:"";right:0;bottom:var(--link-underline-bottom,-.28rem);background:var(--accent);opacity:0;height:2px;transition:opacity .18s,transform .18s;position:absolute;left:0;transform:scaleX(.5)}.topbar nav a:hover,.topbar nav a:focus-visible,.topbar nav a[aria-current=page]{color:var(--text)}.topbar nav a[aria-current=page]:after,.topbar nav a:hover:after,.topbar nav a:focus-visible:after,a.accent-link:hover:after,a.accent-link:focus-visible:after{opacity:1;transform:scaleX(1)}main{padding-bottom:1.5rem}.hero{padding:clamp(3rem,7vw,5.5rem) 0 clamp(2rem,5vw,3.5rem);animation:1.2s both reveal}.hero--home{padding-bottom:clamp(1.5rem,4vw,3rem)}.hero__title-row{grid-template-columns:minmax(0,1fr) minmax(220px,1.17fr);align-items:center;gap:clamp(1rem,4vw,3rem);display:grid}.hero__media{width:100%;height:auto}.hero__heading{min-width:0;container-type:inline-size}.hero--home .hero__heading h1{max-width:none;font-size:calc(clamp(2rem,min(6vw,12cqw),5rem) + 4px)}.hero__topic{white-space:nowrap}.hero__content{max-width:850px}h1,h2,h3{color:var(--text);margin:0;font-family:Syne,sans-serif;line-height:1.08}h2{font-size:clamp(1.35rem,2.5vw,2rem)}.hero h1{max-width:18ch;font-size:clamp(2.5rem,6vw,5rem)}.lead{max-width:62ch;color:var(--muted-strong);margin:1.2rem 0 0;font-size:clamp(1.02rem,1.6vw,1.18rem);line-height:1.7}.grid{gap:1rem;display:grid}.content-section{margin:clamp(2.1rem,5vw,4rem) 0}.post-list.empty-list{display:block}.empty-state{color:var(--muted);border:1px dashed var(--line-strong);border-radius:var(--radius);background:#ffffff8c;margin:0;padding:1rem 1.05rem}.content-section>h2{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.content-section>h2:after{content:"";background:linear-gradient(90deg, var(--line), transparent);flex:1;height:1px}.cards{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin:1.25rem 0 2rem}.card,.post{border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#ffffffe0;border:1px solid #dedbd2eb}.card{padding:1rem;animation:1.2s both reveal}.card h3{font-size:1.1rem}.card p{color:var(--muted);margin:.65rem 0 0}.post h2,.post h3{font-size:clamp(1.14rem,2vw,1.5rem)}.post small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-top:.55rem;font-size:.78rem;font-weight:700;display:inline-flex}.tag-list{flex-wrap:wrap;gap:.7rem;margin:.7rem 0 0;padding:0;list-style:none;display:flex}.tag{color:var(--cool);align-items:center;font-size:.76rem;font-weight:700;line-height:1.2;display:inline-flex}.tag:before{content:"#"}.post-list{gap:1rem;margin-top:1.5rem;display:grid}.post{padding:1.2rem;transition:transform .18s,border-color .18s,box-shadow .18s;position:relative}.post:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.post--accent:hover{border-left-color:var(--accent)}.static-item-list .post:hover{box-shadow:var(--shadow-sm);border-color:#dedbd2eb;transform:none}.static-item-list .post--accent:hover{border-left-color:var(--accent)}.post--accent{border-left:3px solid var(--accent)}.post p{color:var(--muted-strong);margin:.55rem 0 0}.compact-item-list{gap:.85rem}.compact-item-list .post{padding:1rem}.compact-item-list .post h2,.compact-item-list .post h3{font-size:clamp(1.05rem,1.7vw,1.32rem)}.compact-item-list .post p{margin-top:.45rem}.post a{text-underline-offset:.2em;text-decoration:underline #0000;transition:color .18s,text-decoration-color .18s}.post a:hover,.post a:focus-visible{color:var(--accent-strong);text-decoration-color:var(--accent)}.post--long{max-width:760px;margin:0 auto;padding:clamp(1.2rem,3vw,2rem)}.post--long:hover{transform:none}.post--long p{color:var(--muted-strong);font-size:1.02rem;line-height:1.78}.article-hero{max-width:760px;margin:0 auto;padding-bottom:clamp(1.2rem,3vw,2rem)}.article-hero h1{max-width:14ch}.article-meta{color:var(--muted);margin:1rem 0 0;font-size:.84rem;line-height:1.5}.article-meta a{color:var(--accent-strong);text-underline-offset:.2em;text-decoration:underline}.article-meta time{white-space:nowrap}.article-body{box-shadow:none;background:0 0;border:0;border-radius:0}.article-body a{color:var(--accent-strong);text-underline-offset:.2em;text-decoration:underline}.article-body pre{overflow-wrap:normal;border-radius:var(--radius);max-width:100%;padding:1rem;overflow-x:auto}.article-body code{font-size:.9em}.article-body table{border-collapse:collapse;overflow-wrap:normal;max-width:100%;display:block;overflow-x:auto}.article-body th,.article-body td{border:1px solid var(--line-strong);text-align:left;padding:.5rem .75rem}.article-body :is(pre,table):focus-visible{outline:2px solid var(--cool);outline-offset:4px}.article-body :is(h2,h3,h4){margin-top:1.5em;scroll-margin-top:5rem}.article-body p:first-child{margin-top:.2rem}.article-body p:last-child,.article-body ul:last-child,.article-body ol:last-child{margin-bottom:0}.article-body ul,.article-body ol{color:var(--muted-strong);padding-left:1.35rem}.footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1.25rem;margin-top:clamp(2rem,5vw,4rem);padding:1.35rem 0 2rem;font-size:.9rem;display:flex}.footer p{margin:0}.footer__primary{color:var(--muted-strong);font-weight:600}.footer__credit{min-width:0;font-size:.84rem}.footer a{color:var(--muted-strong);text-underline-offset:.2em;font-weight:700;text-decoration:underline #d97a1273;transition:color .18s,text-decoration-color .18s}.footer .footer__rss{margin:0 .1rem}.footer a:hover,.footer a:focus-visible{color:var(--accent-strong);text-decoration-color:var(--accent)}a.accent-link{--link-underline-bottom:-.12rem;color:var(--accent-strong);text-decoration:none;transition:color .18s;display:inline-block}a.accent-link:hover,a.accent-link:focus-visible{color:var(--accent-strong);text-decoration:none}@keyframes reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=720px){.container{width:min(100vw - 28px,1120px)}.topbar{flex-direction:column;align-items:flex-start;gap:.8rem;position:relative}.topbar nav{width:100%;overflow-x:auto}.hero{padding-top:2.4rem}.hero h1{max-width:11ch}.hero__title-row{grid-template-columns:minmax(0,1fr);gap:.5rem}.hero__media{max-width:440px}.post{padding:1rem}.footer{flex-direction:column;align-items:flex-start;gap:.45rem}.footer__credit{flex-shrink:1}}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-grotesk-latin-400-normal.CJ-V5oYT.woff2)format("woff2"),url(/_astro/space-grotesk-latin-400-normal.BnQMeOim.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/space-grotesk-latin-500-normal.lFbtlQH6.woff2)format("woff2"),url(/_astro/space-grotesk-latin-500-normal.CNSSEhBt.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-grotesk-latin-700-normal.RjhwGPKo.woff2)format("woff2"),url(/_astro/space-grotesk-latin-700-normal.CwsQ-cCU.woff)format("woff")}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/syne-latin-600-normal.BiwQbQXw.woff2)format("woff2"),url(/_astro/syne-latin-600-normal.dRu9QuIh.woff)format("woff")}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/syne-latin-700-normal.AF3Rs61n.woff2)format("woff2"),url(/_astro/syne-latin-700-normal.Cd-_iCn5.woff)format("woff")}
