@charset "UTF-8";
:root{--paper:#fff;--ink:#242424;--text:#424242;--muted:#6b6b6b;--accent:#1a703b;--line:#eee;--wash:#f5f5f5;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;--mono:Consolas,'Courier New',monospace}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:2px}::selection{background:#dceadb}h1,h2,h3,p,figure{margin:0}p{line-height:1.7}.wrap{width:min(100%,1200px);margin-inline:auto;padding-inline:40px}.section-kicker{font-size:11px;font-weight:500;letter-spacing:.04em;line-height:1.7}.dot{width:5px;height:5px;border-radius:50%;background:#b84f2d;display:inline-block}.skip{position:absolute;top:-100px;left:20px;z-index:5;background:var(--ink);color:white;padding:12px 20px}.skip:focus{top:14px}.header{display:flex;align-items:center;gap:37px;height:76px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:24px;font-weight:600;letter-spacing:-1px;white-space:nowrap}.brand-domain{font-weight:400;color:var(--muted)}.brand svg{width:30px;height:30px;color:#b84f2d}.header nav{margin-left:auto;display:flex;align-items:center;gap:27px;font-size:13px}.header nav a{padding-block:14px;position:relative;color:var(--muted)}.header nav a[aria-current]{color:var(--ink)}.header nav a[aria-current]:after{content:'';height:1px;background:var(--ink);position:absolute;left:0;right:0;bottom:5px}.header nav a:hover,.text-link:hover,.sidebar-links a:hover,.footer a:hover,.about-links a:hover{color:var(--ink)}.languages{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.languages a{display:inline-flex;align-items:center;min-height:44px}.languages a[aria-current]{color:var(--ink);font-weight:600}.languages>span{color:#b4b4b4}.blog-intro{padding-top:39px;padding-bottom:28px}.blog-intro h1{font-size:35px;font-weight:700;line-height:1.25;letter-spacing:-1px}.intro-copy{font-size:16px;line-height:1.7;color:var(--muted);max-width:800px;margin-top:11px}.byline{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:14px;font-size:11px;line-height:1.7;color:var(--muted)}.byline-separator{color:#999}.blog-layout{padding-top:36px;display:grid;grid-template-columns:minmax(0,2.5fr) minmax(245px,1fr);gap:57px;padding-bottom:42px}.blog-feed{min-width:0}.feed-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:0}.feed-heading h1{font-size:18px;font-weight:600;line-height:1.4;letter-spacing:-.3px}.text-link{display:inline-flex;align-items:center;gap:10px;min-height:40px;font-size:12px;line-height:1.6;color:var(--muted)}.post-filters{position:relative;display:flex;align-items:center;gap:23px;border-bottom:1px solid var(--line);margin-top:7px;margin-bottom:0;min-height:49px}.post-filters button{display:inline-flex;align-items:center;min-height:49px;padding:0 1px;background:transparent;border:0;border-bottom:1px solid transparent;font-size:13px;color:var(--muted);cursor:pointer;margin-bottom:-1px}.post-filters button[aria-pressed=true]{border-bottom-color:var(--ink);color:var(--ink)}.post-filters button:hover{color:var(--ink)}.filter-result{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.posts{display:block}.post{padding:28px 0;border-bottom:1px solid var(--line)}.post-link{display:grid;grid-template-columns:minmax(0,1fr) 122px;align-items:center;gap:28px}.post-copy{min-width:0}.post-meta{display:flex;align-items:center;gap:13px;flex-wrap:wrap;font-size:11px;line-height:1.5;color:var(--muted)}.post-author{display:inline-flex;align-items:center;gap:8px;color:var(--ink)}.post-avatar{width:22px;height:22px;border-radius:50%;display:block;object-fit:cover;object-position:50% 30%;flex-shrink:0;background:#edf1e8}.post-source{font-size:10px}.post-copy h2,.post-copy h3{font-family:var(--sans);font-size:24px;font-weight:700;letter-spacing:-.65px;line-height:1.23;margin-top:12px}.post-link:hover h2,.post-link:hover h3{color:#111}.post-copy>p{font-size:15px;line-height:1.55;color:var(--muted);margin-top:10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-bottom{display:flex;align-items:center;gap:10px 13px;flex-wrap:wrap;font-size:10px;line-height:1.7;color:var(--muted);margin-top:20px}.post-topic{padding:3px 9px;border-radius:14px;background:#f2f2f2;color:#555;font-size:10px}.post-read{display:inline-flex;align-items:center;gap:7px;font-size:10px;color:var(--muted)}.post-cover{width:122px;height:96px;background:#e8eee6;display:flex;align-items:center;justify-content:center;overflow:hidden}.post-cover.security{background:#eeebe7}.cover-mark{font-family:var(--sans);font-size:44px;font-weight:600;letter-spacing:-1px;color:#315239}.security .cover-mark{font-size:36px;color:#735e48}.author-sidebar{align-self:start;border-left:1px solid var(--line);padding:6px 0 25px 32px;min-width:0}.author-avatar{width:64px;height:64px;border-radius:50%;display:block;object-fit:cover;object-position:50% 30%;background:#f0f2ec;margin-bottom:17px}.author-sidebar h2{font-size:20px;line-height:1.4;font-weight:700;letter-spacing:-.5px}.author-sidebar>p{font-size:14px;color:var(--muted);line-height:1.75;margin-top:12px;max-width:285px}.author-sidebar>.text-link{color:var(--accent);margin-top:9px;font-size:12px}.sidebar-topics{margin-top:27px}.sidebar-topics h3{font-size:14px;line-height:1.5;font-weight:600;margin-bottom:13px}.topic-tags{display:flex;gap:9px;flex-wrap:wrap}.topic-tags span{font-size:11px;line-height:1.6;background:#f2f2f2;border-radius:17px;padding:7px 11px;color:#555}.sidebar-links{display:flex;gap:17px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;margin-top:27px;font-size:11px;color:var(--muted)}.sidebar-links a{display:inline-flex;gap:7px;align-items:center}.footer{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:24px;padding-bottom:29px}.footer-brand{font-size:12px;font-weight:600}.footer p{font-size:10px;color:var(--muted);margin-top:5px}.footer-links{display:flex;gap:20px;flex-wrap:wrap;font-size:10px;color:var(--muted)}.archive-intro,.about-intro{padding-top:41px;padding-bottom:24px}.archive-intro .section-kicker,.about-intro .section-kicker{color:var(--muted);font-size:10px}.archive-intro h1,.about-intro h1{font-size:35px;font-weight:700;line-height:1.25;letter-spacing:-1px;margin-top:12px}.archive-intro>p{font-size:16px;line-height:1.75;color:var(--muted);margin-top:20px}.archive{max-width:870px;padding-bottom:48px}.archive>.post-filters{border-top:1px solid var(--line);padding-top:0;margin-top:0}.archive .post-link{grid-template-columns:minmax(0,1fr) 122px}.about-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:70px;padding-bottom:43px}.standfirst{font-family:var(--sans);font-size:22px;font-weight:600;line-height:1.5;letter-spacing:-.3px;max-width:68ch}.about-prose>p:not(.standfirst){font-family:var(--sans);font-size:17px;line-height:1.7;color:var(--text);margin-top:22px;max-width:68ch}.author-portrait{max-width:230px;width:100%;margin-top:4px}.author-portrait img{display:block;width:100%;height:auto;border-radius:3px}.background{margin-top:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.background summary{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:13px;padding:16px 0;cursor:pointer;list-style:none}.background summary::-webkit-details-marker{display:none}.background summary>span{font-size:20px;color:var(--muted);font-weight:400;transition:transform .15s}.background[open] summary>span{transform:rotate(45deg)}.background p{font-family:var(--sans);font-size:16px;line-height:1.7;color:var(--text);padding-bottom:20px;max-width:68ch}.about-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:20px}.about-links .text-link{color:var(--accent)}.focus-section{border-top:1px solid var(--line);padding-top:29px;padding-bottom:39px}.focus-section>.section-kicker{font-size:13px;font-weight:600;letter-spacing:0}.focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;margin-top:23px}.focus-grid h2{font-size:18px;font-weight:600;line-height:1.4;letter-spacing:-.3px}.focus-grid p{font-size:14px;line-height:1.75;color:var(--muted);margin-top:10px}.empty-posts{padding:30px 0}.empty-posts h2,.empty-posts h3{font-size:22px;font-weight:600}.empty-posts p{font-size:14px;color:var(--muted);margin-top:10px}.not-found{min-height:65svh}.not-found>.text-link{color:var(--accent);margin-top:20px}
@media(max-width:1050px){.wrap{padding-inline:32px}.blog-layout{gap:33px;grid-template-columns:minmax(0,2.4fr) minmax(230px,1fr)}.author-sidebar{padding-left:25px}.post-link{grid-template-columns:minmax(0,1fr) 106px;gap:22px}.post-cover{width:106px;height:92px}.post-copy h2,.post-copy h3{font-size:23px}.post-copy>p{font-size:14px}.author-sidebar>p{font-size:13px}.about-layout{gap:50px;grid-template-columns:minmax(0,1fr) 210px}}
@media(max-width:900px){.blog-intro,.blog-layout{max-width:830px}.blog-layout{display:block;padding-bottom:40px}.author-sidebar{display:block;border-left:0;border-top:1px solid var(--line);padding:28px 0 0;margin-top:32px}.post-link{grid-template-columns:minmax(0,1fr) 122px;gap:26px}.post-cover{width:122px;height:96px}.post-copy h2,.post-copy h3{font-size:24px}.post-copy>p{font-size:15px}.header{gap:29px}.about-layout{gap:35px}.focus-grid{gap:26px}.focus-grid h2{font-size:17px}.focus-grid p{font-size:13px}}
@media(max-width:620px){.wrap{padding-inline:23px}.header{height:67px;gap:14px}.brand{font-size:23px;gap:10px;letter-spacing:-.8px}.brand svg{width:26px;height:26px}.header nav{font-size:12px;gap:18px}.header nav a{padding-block:13px}.languages{font-size:10px;gap:6px}.languages a{min-height:40px}.blog-intro{padding-top:29px;padding-bottom:23px}.blog-intro h1{font-size:30px;letter-spacing:-.8px;line-height:1.3}.intro-copy{font-size:14px;line-height:1.65;margin-top:9px}.byline{font-size:10px;gap:8px;margin-top:12px}.feed-heading{padding-top:0;gap:17px}.feed-heading h1{font-size:16px;letter-spacing:-.2px}.feed-heading .text-link{font-size:11px;min-height:37px}.post-filters{gap:22px;min-height:47px;margin-top:4px}.post-filters button{font-size:12px;min-height:47px}.post{padding-block:24px}.post-link,.archive .post-link{grid-template-columns:minmax(0,1fr) 85px;gap:19px;align-items:center}.post-cover{width:85px;height:85px}.cover-mark{font-size:40px}.security .cover-mark{font-size:29px}.post-meta{font-size:10px;gap:5px 11px}.post-source{font-size:9px}.post-author{gap:6px}.post-avatar{width:19px;height:19px;font-size:7px}.post-copy h2,.post-copy h3{font-size:20px;letter-spacing:-.4px;line-height:1.25;margin-top:10px}.post-copy>p{font-size:14px;line-height:1.5;margin-top:8px;-webkit-line-clamp:2}.post-bottom{font-size:9px;gap:7px 10px;line-height:1.6;margin-top:15px}.post-topic{font-size:9px;padding:3px 8px}.post-read{font-size:9px;gap:5px;flex-basis:100%}.blog-layout{padding-top:26px;padding-bottom:29px}.footer{display:block;padding-top:22px;padding-bottom:25px}.footer-links{margin-top:18px;font-size:10px;gap:21px}.footer p{font-size:9px}.archive-intro,.about-intro{padding-top:29px;padding-bottom:23px}.archive-intro h1,.about-intro h1{font-size:31px;margin-top:10px;letter-spacing:-.8px}.archive-intro>p{font-size:15px}.archive{padding-bottom:33px}.about-layout{grid-template-columns:1fr;gap:28px;padding-bottom:33px}.standfirst{font-size:20px;line-height:1.5}.about-prose>p:not(.standfirst){font-size:16px;line-height:1.7;margin-top:20px}.author-portrait{max-width:190px;margin:0}.background{margin-top:24px}.background summary{font-size:13px}.background p{font-size:16px;line-height:1.7}.about-links{margin-top:15px;gap:24px}.text-link{font-size:12px}.focus-section{padding-top:25px;padding-bottom:30px}.focus-grid{grid-template-columns:1fr;gap:23px;margin-top:20px}.focus-grid h2{font-size:18px}.focus-grid p{font-size:14px;line-height:1.75;margin-top:9px}.not-found{min-height:65svh}}
@media(max-width:360px){.wrap{padding-inline:20px}.header{gap:10px}.brand{font-size:21px;gap:8px}.brand svg{width:22px;height:22px}.header nav{font-size:11px;gap:14px}.languages{font-size:9px;gap:5px}.blog-intro h1{font-size:28px}.intro-copy{font-size:13px}.byline{font-size:9px}.post-link,.archive .post-link{grid-template-columns:minmax(0,1fr) 72px;gap:15px}.post-cover{width:72px;height:78px}.cover-mark{font-size:36px}.security .cover-mark{font-size:26px}.post-copy h2,.post-copy h3{font-size:19px;line-height:1.27}.post-copy>p{font-size:13px}.post-meta{font-size:9px}.post-source{font-size:8px}.post-bottom{font-size:8px}.post-topic{font-size:8px}.post-read{font-size:8px}.post-filters{gap:20px}.post-filters button{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.article-page{width:min(100%,820px);padding:38px 40px 52px;margin-inline:auto}.article-heading{margin-bottom:31px}.article-heading>.text-link{margin-bottom:22px}.article-category{font-size:11px;font-weight:500;color:var(--muted);margin-bottom:14px}.article-heading h1{font-family:var(--sans);font-size:43px;line-height:1.15;letter-spacing:-1.3px;font-weight:700}.article-deck{font-size:19px;line-height:1.55;color:var(--muted);margin-top:18px}.article-byline{display:flex;gap:11px;align-items:center;flex-wrap:wrap;font-size:12px;line-height:1.6;color:var(--muted);margin-top:24px}.article-byline a{color:var(--ink)}.article-body{font-family:var(--sans);font-size:18px;line-height:1.75;color:var(--text)}.article-body p{line-height:1.75;margin:24px 0}.article-body h2,.article-body h3{font-family:var(--sans);font-weight:700;letter-spacing:-.5px;line-height:1.3;margin:36px 0 15px}.article-body h2{font-size:28px}.article-body h3{font-size:23px}.article-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.article-body ul,.article-body ol{padding-left:27px;margin-block:23px}.article-body li{padding-left:7px;margin-bottom:10px}.article-body blockquote{margin:26px 0;padding-left:24px;border-left:3px solid var(--ink);color:var(--muted);font-style:italic}.article-body blockquote p{margin:0}.article-body pre{font-family:var(--mono);font-size:14px;line-height:1.8;background:#f7f7f7;border:1px solid var(--line);padding:22px;overflow:auto;border-radius:3px;margin-block:25px;white-space:pre}.article-body code{font-family:inherit}.article-footer{border-top:1px solid var(--line);margin-top:39px;padding-top:18px}.article-audio{font-family:var(--sans);background:#f7f8f6;border:1px solid #e5e8e0;border-radius:6px;padding:20px 22px;margin:27px 0 32px}.article-audio h2{font-size:17px;font-weight:600;line-height:1.5;letter-spacing:-.2px}.audio-narrator{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.7}.article-audio audio{display:block;width:100%;height:50px;margin:15px 0 11px}.audio-options{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:11px;line-height:1.7;color:var(--muted)}.audio-options select{font:inherit;color:var(--ink);min-height:35px;padding:6px 9px;border:1px solid #d4d9cf;border-radius:3px;background:white}.audio-options select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.audio-download{margin-left:auto;text-decoration:underline;text-underline-offset:3px;min-height:35px;display:inline-flex;align-items:center}.audio-error{font-size:12px;line-height:1.7;color:#92442c;margin-top:12px}.audio-badge{font-size:10px;color:var(--accent)}
@media(max-width:620px){.article-page{padding:25px 23px 35px}.article-heading{margin-bottom:25px}.article-heading>.text-link{margin-bottom:18px}.article-heading h1{font-size:33px;line-height:1.2;letter-spacing:-.8px}.article-deck{font-size:17px;margin-top:15px}.article-byline{font-size:11px;gap:9px;margin-top:20px}.article-body{font-size:17px;line-height:1.75}.article-body p{margin-block:22px}.article-body h2{font-size:25px}.article-body h3{font-size:21px}.article-body pre{font-size:12px;padding:17px}.article-audio{padding:17px 15px;margin-block:23px 27px}.article-audio h2{font-size:16px}.audio-narrator{font-size:11px}.audio-options{font-size:10px;gap:8px}.audio-download{margin-left:0;flex-basis:100%}.audio-badge{font-size:9px}}
@media(max-width:360px){.article-page{padding-inline:20px}.article-heading h1{font-size:30px}.article-audio{padding-inline:12px}.audio-options{gap:7px}}
