:root{color-scheme:light;--bg:#f6f3ee;--surface:#fff;--surface-soft:#fbf9f5;--text:#252321;--muted:#79736c;--faint:#9a9188;--line:#e5ded5;--line-strong:#cfc5ba;--accent:#e79a72;--accent-deep:#c87554;--shell:min(1080px, calc(100% - 48px));--radius:14px;--ease:cubic-bezier(.22, 1, .36, 1)}:root[data-theme=dark]{color-scheme:dark;--bg:#171717;--surface:#20201f;--surface-soft:#242321;--text:#f2efe9;--muted:#a7a29a;--faint:#77726b;--line:#34322f;--line-strong:#4a4742;--accent:#e79a72;--accent-deep:#e79a72}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth;min-width:320px}body{background:var(--bg);min-width:320px;color:var(--text);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,PingFang SC,sans-serif;font-size:16px;line-height:1.7;transition:background-color .22s,color .22s;overflow-x:clip}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--accent);color:#252321}.site-shell{width:var(--shell);margin-inline:auto}.skip-link{z-index:20;background:var(--accent);color:#252321;padding:7px 11px;transition:transform .18s;position:fixed;top:12px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:2px solid var(--accent-deep);outline-offset:4px}.site-header{border-bottom:1px solid var(--line)}.site-header-inner{align-items:center;gap:25px;min-width:0;min-height:76px;display:flex}.site-brand{letter-spacing:.025em;white-space:nowrap;align-items:center;gap:9px;font-size:15px;font-weight:650;display:inline-flex}.site-brand small{color:var(--muted);letter-spacing:.22em;font-size:8px;font-weight:700}.brand-mark{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent);border-radius:50%;flex:none}.site-nav{flex:auto;align-items:center;gap:22px;min-width:0;margin-left:auto;display:flex}.site-nav a,.home-link{color:var(--muted);font-size:12px;transition:color .18s}.site-nav a:hover,.home-link:hover{color:var(--accent-deep)}.home-link{margin-left:3px}.theme-toggle{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;flex:none;place-items:center;padding:0;transition:color .18s,background-color .18s,border-color .18s;display:inline-grid}.theme-toggle:hover{border-color:var(--line);background:var(--surface);color:var(--text)}.theme-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:18px;height:18px}.theme-icon-moon,:root[data-theme=dark] .theme-icon-sun{display:none}:root[data-theme=dark] .theme-icon-moon{display:block}.page-shell{width:var(--shell);margin-inline:auto}.blog-home{padding-bottom:60px}.blog-hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(240px,.42fr);gap:80px;padding:100px 0 72px;display:grid}.eyebrow,.section-kicker,.post-source,.post-card-date,.article-meta,.archive-year,.tag-count{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;font-size:10px}.eyebrow{color:var(--accent-deep);align-items:center;gap:10px;margin:0 0 22px;display:flex}.eyebrow:before{background:var(--accent-deep);content:"";width:24px;height:1px}.blog-hero h1{overflow-wrap:anywhere;word-break:break-word;letter-spacing:-.09em;max-width:630px;margin:0;font-size:clamp(44px,6.2vw,78px);font-weight:540;line-height:1.03}.blog-hero h1 em{color:var(--muted);font-style:normal}.hero-description{max-width:470px;color:var(--muted);margin:26px 0 0;font-size:17px}.hero-note{border-left:1px solid var(--line-strong);color:var(--muted);align-self:end;padding-left:25px;font-size:13px}.hero-note strong{color:var(--text);margin-bottom:10px;font-size:15px;font-weight:600;display:block}.hero-note p{margin:0}.home-section{padding-top:55px}.section-heading{justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:16px;display:flex}.section-heading h2{letter-spacing:-.045em;margin:0;font-size:22px;font-weight:600}.section-heading a{color:var(--muted);font-size:12px;transition:color .18s}.section-heading a:hover{color:var(--accent-deep)}.post-list{border-top:1px solid var(--line)}.post-card{border-bottom:1px solid var(--line);transition:padding .18s var(--ease), color .18s ease;grid-template-columns:112px minmax(0,1fr) 25px;align-items:start;gap:24px;padding:23px 0 25px;display:grid}.post-card:hover{color:var(--accent-deep);padding-left:8px}.post-card-date{letter-spacing:.05em;padding-top:5px}.post-card-main h2{letter-spacing:-.04em;margin:0;font-size:20px;font-weight:580;line-height:1.3}.post-card-main h2 a{transition:color .18s}.post-card-main p{max-width:670px;color:var(--muted);margin:7px 0 0;font-size:14px}.post-meta{color:var(--muted);flex-wrap:wrap;gap:8px 13px;margin-top:10px;font-size:11px;display:flex}.post-meta a:hover{color:var(--accent-deep)}.post-arrow{color:var(--accent-deep);transition:transform .18s var(--ease);padding-top:4px;font-size:17px}.post-card:hover .post-arrow{transform:translate(3px,-3px)}.browse-strip{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.browse-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color .18s ease, transform .18s var(--ease);padding:18px 17px;display:block}.browse-item:hover{border-color:var(--line-strong);transform:translateY(-2px)}.browse-item strong{font-size:15px;font-weight:600;display:block}.browse-item span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.migration-note{color:var(--muted);margin:44px 0 0;font-size:12px}.content-page{padding:74px 0 100px}.content-page-header{max-width:700px;margin-bottom:52px}.content-page-header .eyebrow{margin-bottom:18px}.content-page-header h1{letter-spacing:-.085em;margin:0;font-size:clamp(40px,6vw,68px);font-weight:540;line-height:1.05}.content-page-header p:not(.eyebrow){max-width:500px;color:var(--muted);margin:20px 0 0;font-size:16px}.archive-list{border-top:1px solid var(--line)}.archive-group{border-bottom:1px solid var(--line);grid-template-columns:120px minmax(0,1fr);gap:28px;padding:25px 0;display:grid}.archive-year{color:var(--accent-deep);padding-top:5px}.archive-post{justify-content:space-between;align-items:baseline;gap:20px;padding:7px 0;display:flex}.archive-post a{font-size:15px;transition:color .18s}.archive-post a:hover{color:var(--accent-deep)}.archive-post time{color:var(--muted);flex:none;font-size:11px}.term-grid{flex-wrap:wrap;gap:10px;display:flex}.term-link{border:1px solid var(--line);background:var(--surface);transition:border-color .18s ease, color .18s ease, transform .18s var(--ease);border-radius:99px;align-items:baseline;gap:8px;padding:10px 13px;display:inline-flex}.term-link:hover{border-color:var(--accent-deep);color:var(--accent-deep);transform:translateY(-2px)}.term-link .tag-count{color:var(--muted);letter-spacing:.05em;font-size:9px}.term-posts{border-top:1px solid var(--line)}.about-copy{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:85px;max-width:850px;display:grid}.about-lead{letter-spacing:-.055em;margin:0;font-size:clamp(24px,3vw,36px);line-height:1.35}.about-body{color:var(--muted);font-size:15px}.about-body p{margin:0 0 20px}.about-signoff{color:var(--text);font-size:13px}.about-signoff span{color:var(--accent-deep);margin-right:9px}.article-page{padding:68px 0 110px}.article-shell{max-width:800px;margin-inline:auto}.article-header{border-bottom:1px solid var(--line);padding-bottom:38px}.article-header h1{letter-spacing:-.075em;max-width:780px;margin:15px 0 17px;font-size:clamp(38px,5vw,62px);font-weight:560;line-height:1.12}.article-description{max-width:650px;color:var(--muted);margin:0;font-size:17px}.article-meta{letter-spacing:.06em;flex-wrap:wrap;gap:10px 18px;display:flex}.article-meta a{color:var(--accent-deep)}.article-body{padding-top:45px;font-size:17px;line-height:1.95}.article-body>:first-child{margin-top:0}.article-body h2,.article-body h3,.article-body h4{color:var(--text);letter-spacing:-.04em;margin:2.2em 0 .65em;font-weight:620;line-height:1.35}.article-body h2{font-size:27px}.article-body h3{font-size:22px}.article-body h4{font-size:18px}.article-body p{margin:1.15em 0}.article-body a{color:var(--accent-deep);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--accent-deep) 45%, transparent);text-underline-offset:3px}.article-body img{border-radius:8px;max-width:100%;height:auto;margin:28px auto;display:block}.article-body blockquote{border-left:3px solid var(--accent);color:var(--muted);margin:25px 0;padding:5px 22px}.article-body ul,.article-body ol{padding-left:1.5em}.article-body li+li{margin-top:.35em}.article-body pre{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;max-width:100%;margin:25px 0;padding:18px 20px;font-size:14px;line-height:1.65;overflow-x:auto}.article-body code{background:var(--surface-soft);border-radius:4px;padding:.12em .32em;font-size:.88em}.article-body pre code{background:0 0;padding:0}.article-body table{border-collapse:collapse;white-space:nowrap;max-width:100%;margin:25px 0;display:block;overflow-x:auto}.article-body th,.article-body td{border:1px solid var(--line);text-align:left;padding:8px 12px}.article-body th{background:var(--surface-soft);font-weight:600}.article-toc{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin:30px 0 0;padding:18px 20px}.article-toc summary{cursor:pointer;color:var(--muted);font-size:13px}.article-toc ul{color:var(--muted);margin:12px 0 0;padding-left:18px;font-size:13px}.article-toc li+li{margin-top:4px}.article-toc a:hover{color:var(--accent-deep)}.article-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin-top:58px;padding-top:22px;font-size:12px;display:flex}.article-footer a:hover{color:var(--accent-deep)}.not-found{min-height:60vh}.not-found h1{font-size:clamp(60px,12vw,150px)}.not-found a{color:var(--accent-deep);margin-top:15px;font-size:14px;display:inline-block}.site-footer{border-top:1px solid var(--line)}.footer-inner{color:var(--faint);flex-wrap:wrap;justify-content:center;gap:7px 22px;padding:18px 0 25px;font-size:10px;display:flex}.footer-links{flex-wrap:wrap;justify-content:center;gap:7px 18px;display:inline-flex}.footer-links a{color:var(--muted);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--accent-deep) 50%, transparent);text-underline-offset:3px}.footer-links a:hover{color:var(--accent-deep)}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.blog-hero,.home-section,.content-page-header,.article-header{animation:rise-in .65s var(--ease) both}@media (width<=800px){.blog-hero{grid-template-columns:minmax(0,1fr);gap:30px;padding:74px 0 55px}.blog-hero>*{width:100%;min-width:0}.blog-hero h1,.hero-description{width:100%;max-width:100%}.blog-hero h1{word-break:break-all}.blog-hero h1 em{display:block}.hero-description{overflow-wrap:anywhere;word-break:break-all}.hero-note{align-self:start;max-width:460px}.about-copy{gap:45px}}@media (width<=640px){:root{--shell:calc(100% - 36px)}.site-header-inner{gap:12px;min-height:66px}.site-brand{gap:7px;font-size:13px}.site-nav{scrollbar-width:none;gap:13px;margin-left:auto;overflow-x:auto}.site-nav::-webkit-scrollbar{display:none}.site-nav a,.home-link{font-size:11px}.home-link{display:none}.theme-toggle{width:36px;height:36px}.blog-hero{padding:60px 0 45px}.blog-hero h1{font-size:clamp(42px,12vw,60px)}.blog-hero h1,.hero-description,.hero-note{max-width:330px}.hero-description{font-size:16px}.home-section{padding-top:40px}.section-heading{flex-direction:column;align-items:flex-start;gap:4px}.post-card{grid-template-columns:73px minmax(0,1fr) 17px;gap:10px;padding:18px 0 20px}.post-card-main h2{font-size:17px}.post-card-main p{font-size:13px}.post-card:hover{padding-left:3px}.browse-strip{grid-template-columns:1fr}.content-page{padding:48px 0 75px}.content-page-header{margin-bottom:37px}.content-page-header h1{font-size:clamp(40px,12vw,58px)}.archive-group{grid-template-columns:58px minmax(0,1fr);gap:12px}.archive-post{flex-direction:column;align-items:flex-start;gap:2px}.about-copy{grid-template-columns:1fr;gap:30px}.article-page{padding:45px 0 75px}.article-header h1{font-size:clamp(36px,10vw,52px)}.article-body{padding-top:32px;font-size:16px;line-height:1.85}.article-body h2{font-size:24px}.article-body h3{font-size:20px}.article-footer{flex-direction:column;align-items:flex-start;margin-top:42px}.footer-inner{justify-content:flex-start;gap:6px 14px;padding-bottom:20px;font-size:9px}.footer-links{justify-content:flex-start;gap:6px 12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation:none!important}}
