:root{--black: #0f0f0f;--white: #ffffff;--text: #1f1f1f;--text-strong: #0f0f0f;--muted: #6b6b6b;--line: #ededed;--field-border: #d8d8d8;--bg: #ffffff;--bg-soft: #f5f5f3;--accent: #2563cc;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--fs-xs: 13px;--fs-sm: 14px;--fs-ui: 15px;--fs-md: 16px;--fs-body: 17px;--fs-prose: 18px;--fs-lead: 20px;--fs-h: 22px;--fs-h-lg: 24px;--lh-body: 1.7;--lh-tight: 1.25;--gutter: 24px;--max: 1400px;--max-prose: 820px;--max-readout: 620px;--max-search: 460px;--max-form: 278px;--radius: 2px;--radius-md: 3px;--radius-pill: 999px;--t: .2s ease;--t-slow: .4s ease}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--text);background:var(--bg);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;display:flex;flex-direction:column;min-height:100vh}.page-content{flex:1 0 auto}img{max-width:100%;display:block}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{color:var(--text-strong);font-weight:700;line-height:var(--lh-tight);margin:0 0 .5em}.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.narrow{max-width:var(--max-prose)}.site-header{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:50}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px var(--gutter);max-width:var(--max);margin:0 auto}.nav{display:flex;gap:28px;flex-wrap:wrap}.nav a{color:var(--text);text-transform:uppercase;letter-spacing:.06em;font-size:var(--fs-xs);font-weight:600}.nav a:hover,.nav a.active{color:var(--black);text-decoration:none}.wordmark{color:var(--black);font-weight:800;letter-spacing:.22em;text-transform:uppercase;font-size:clamp(19px,2.2vw,25px);white-space:nowrap}.wordmark:hover{text-decoration:none}.banner{width:100%;max-width:var(--max);margin:0 auto}.banner img{width:100%;height:auto;display:block}.listing{display:grid;grid-template-columns:220px minmax(0,1fr);gap:64px;margin:44px auto 72px;align-items:start}.rail{position:sticky;top:88px;min-width:0}.listing__main{min-width:0}.rail__tagline{font-size:var(--fs-ui);color:var(--muted);line-height:1.55;margin:0 0 22px}.rail__cats{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.rail__cat{all:unset;cursor:pointer;font-size:var(--fs-ui);color:var(--muted);padding:4px 0}.rail__cat:hover{color:var(--text)}.rail__cat.is-active{color:var(--text-strong);font-weight:600}.listing__empty{color:var(--muted);margin:24px 0}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:52px 60px}.pager{display:flex;align-items:center;gap:4px;margin-top:64px}.pager__num,.pager__arrow{min-width:34px;height:34px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-sm);color:var(--muted);border-radius:var(--radius-md);text-decoration:none}.pager__num:hover,.pager__arrow:hover{background:var(--bg-soft);color:var(--text);text-decoration:none}.pager__num.is-active{background:var(--text-strong);color:var(--white);font-weight:500}.pager__arrow.is-disabled{opacity:.35;pointer-events:none}.card{display:flex;flex-direction:column}.card__media{display:block;overflow:hidden;background:var(--bg-soft);border-radius:var(--radius-md)}.card__media img{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block;transition:transform var(--t-slow)}.card__media:hover img{transform:scale(1.02)}.card__body{padding:16px 0 0;display:flex;flex-direction:column;flex:1}.card__cat{display:inline-block;align-self:flex-start;font-size:var(--fs-sm);color:var(--muted);margin-bottom:7px}.card__cat:hover{color:var(--accent);text-decoration:none}.card__title{font-size:20px;line-height:1.3;letter-spacing:-.01em;margin:0 0 8px}.card__title a{color:var(--text-strong)}.card__title a:hover{color:var(--text-strong);text-decoration:none}.card__excerpt{color:var(--muted);font-size:var(--fs-ui);line-height:1.55;margin:0 0 16px}.card__author{display:flex;align-items:center;gap:10px;margin-top:auto}.card__avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex:none}.card__authormeta{display:flex;flex-direction:column;line-height:1.35}.card__name{font-size:var(--fs-sm);color:var(--text);font-weight:500}.card__date{font-size:var(--fs-xs);color:var(--muted)}.article{max-width:720px;margin:40px auto 24px;padding:0 var(--gutter)}.article__back{display:inline-block;font-size:var(--fs-sm);color:var(--muted);margin-bottom:28px}.article__back:hover{color:var(--text);text-decoration:none}.article__cat{display:block;font-size:var(--fs-sm);color:var(--muted);margin-bottom:12px}.article__title{font-size:clamp(30px,4.4vw,44px);line-height:1.15;letter-spacing:-.02em;margin:0 0 24px}.article__byline{display:flex;align-items:center;gap:12px;margin-bottom:32px}.article__avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:none}.article__author{font-size:var(--fs-ui);color:var(--text);font-weight:500;line-height:1.3}.article__meta{font-size:var(--fs-sm);color:var(--muted);line-height:1.3}.article__hero{margin:0 0 8px;border-radius:var(--radius-md);overflow:hidden}.article__hero img{width:100%;height:auto;display:block}.article__credit{color:var(--muted);font-size:var(--fs-sm);text-align:center;margin:10px 0 36px}.prose{font-size:var(--fs-prose);line-height:1.75;color:var(--text)}.prose p{margin:0 0 1.5em}.prose h2{font-size:26px;line-height:1.3;letter-spacing:-.01em;margin:1.8em 0 .6em}.prose h3{font-size:21px;line-height:1.3;margin:1.6em 0 .5em}.prose em{font-style:italic}.prose strong{font-weight:600}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.prose ul,.prose ol{margin:0 0 1.5em;padding-left:1.4em}.prose li{margin:0 0 .5em}.prose blockquote{margin:1.6em 0;padding-left:18px;border-left:3px solid var(--line);color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:44px 0 0;padding-top:28px;border-top:1px solid var(--line)}.tag{font-size:var(--fs-sm);color:var(--muted);background:var(--bg-soft);border-radius:var(--radius);padding:5px 12px}.tag:hover{color:var(--text);text-decoration:none}.more{margin:72px auto 8px}.more__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px}.more__head h2{font-size:var(--fs-h);margin:0;letter-spacing:-.01em}.more__seeall{font-size:var(--fs-sm);color:var(--accent)}.card-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid--3 .card__title{font-size:var(--fs-prose)}.card-grid--3 .card__excerpt{font-size:var(--fs-sm)}.page-title{font-size:clamp(30px,4vw,40px);font-weight:700;letter-spacing:-.02em;margin:8px 0 32px}.accent-heading{font-size:var(--fs-h);font-weight:600;letter-spacing:-.01em;color:var(--text-strong);margin:0 0 20px}.about-page{max-width:680px;margin:12px auto}.about__photo{display:block;width:168px;height:168px;object-fit:cover;border-radius:50%;margin:8px 0 32px;filter:grayscale(1)}.about-bio{font-size:var(--fs-md);line-height:1.7;margin-bottom:56px}.about-bio p{margin:0 0 1.2em}.about-bio p:first-child{margin-top:0}.contact-page{max-width:680px;margin:12px auto}.contact-intro{color:var(--muted);font-size:var(--fs-md);margin:0 0 32px}.contact-form{max-width:480px}.field{display:block;margin-bottom:18px}.field__label{display:block;font-size:var(--fs-sm);color:var(--text);margin-bottom:7px}.field__label em{color:var(--muted);font-style:normal}.contact-form .field input,.contact-form .field textarea{width:100%;border:1px solid var(--field-border);border-radius:var(--radius-md);background:var(--white);font-size:var(--fs-ui);color:var(--text);line-height:1.4}.contact-form .field input{height:42px;padding:0 12px}.contact-form .field textarea{padding:10px 12px;resize:vertical;min-height:130px}.contact-form .field input:focus,.contact-form .field textarea:focus{border-color:var(--text);outline:none}.contact-form button{padding:11px 22px;font-size:var(--fs-ui);border-width:1px}.subscribe{background:var(--bg-soft);border-top:1px solid var(--line);margin-top:64px}.subscribe__inner{max-width:var(--max-readout);margin:0 auto;padding:56px var(--gutter);text-align:center}.subscribe h2{font-size:var(--fs-lead);font-weight:600;letter-spacing:-.01em;margin-bottom:18px}.form-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}input[type=text],input[type=email],textarea{font-family:var(--font);font-size:var(--fs-md);color:var(--text-strong);background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;width:100%}input:focus,textarea:focus{outline:none;border-color:var(--accent)}.form-row input[type=email]{flex:1 1 240px;width:auto}button,.btn{font-family:var(--font);font-size:var(--fs-ui);font-weight:600;letter-spacing:.01em;color:var(--white);background:var(--black);border:2px solid var(--black);border-radius:var(--radius);padding:12px 22px;cursor:pointer;transition:background var(--t),color var(--t)}button:hover,.btn:hover{background:var(--white);color:var(--black);text-decoration:none}.form-note{font-size:var(--fs-xs);color:var(--muted);margin-top:14px}.form-status{margin-top:14px;font-size:var(--fs-sm);min-height:1.2em}.site-footer{border-top:1px solid var(--line);padding:36px var(--gutter);text-align:center;color:var(--muted);font-size:var(--fs-xs);flex-shrink:0}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--black);text-decoration:none}.site-footer .social{margin-bottom:10px;display:flex;gap:18px;justify-content:center}@media(max-width:940px){.listing{grid-template-columns:1fr;gap:28px;margin-top:28px}.rail{position:static}.rail__tagline{margin-bottom:18px}.rail__cats{flex-direction:row;flex-wrap:nowrap;gap:24px;overflow-x:auto;border-bottom:1px solid var(--line);-webkit-overflow-scrolling:touch;scrollbar-width:none}.rail__cats::-webkit-scrollbar{display:none}.rail__cat{flex:none;white-space:nowrap;padding:0 0 14px;position:relative}.rail__cat.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--text-strong)}.card-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.header-inner{flex-direction:column;gap:14px;padding:16px var(--gutter)}.nav{justify-content:center;gap:22px}.card-grid,.card-grid--3{grid-template-columns:1fr;gap:36px}.about-grid{grid-template-columns:1fr;gap:40px}body{font-size:var(--fs-md)}}
