:root{--paper:#f6f4ed;--ink:#24392f;--muted:#5f6b62;--line:#cbd0c4;--accent:#24594b;--wash:#e4e6da}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 system-ui,sans-serif}body.dark{--paper:#18261f;--ink:#f0f0df;--muted:#b6c3b6;--line:#48584b;--accent:#c0d7a7;--wash:#304336}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--accent)}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b07c46;outline-offset:5px}.container{max-width:1180px;width:calc(100% - 64px);margin:auto}header{border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:30px;min-height:94px}.brand{font-size:25px;letter-spacing:-1.3px;font-weight:750;text-decoration:none}.brand span{color:#91664f}nav{display:flex;gap:32px;margin-left:auto;font-size:14px}nav a{text-decoration:none}nav a[aria-current]{text-decoration:underline;text-decoration-thickness:2px}button{color:var(--ink);background:none;border:1px solid var(--line);border-radius:50%;min-width:44px;min-height:44px}#menu{display:none}.eyebrow,.meta{font-size:12px;letter-spacing:.13em}.eyebrow{color:var(--muted);font-weight:650;margin-bottom:24px}.meta{letter-spacing:.04em;color:var(--muted)}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.06;letter-spacing:-.045em}h1{font-size:clamp(44px,5.8vw,82px);margin:20px 0 30px}h2{font-size:clamp(36px,4vw,55px);margin:12px 0 24px}h3{font-size:29px;line-height:1.18;letter-spacing:-.025em;margin:12px 0}p{color:var(--muted)}.intro{font-size:18px;max-width:580px;line-height:1.8}.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:center;padding:100px 0}.hero>.art{height:490px;border-radius:48% 48% 3px 3px}.actions{display:flex;align-items:center;gap:28px;margin-top:36px}.btn{display:inline-block;background:var(--ink);color:var(--paper);padding:13px 22px;text-decoration:none;font-size:14px;border-radius:3px}.btn:hover{background:var(--accent);color:var(--paper)}.text-link{font-size:14px;font-weight:600}.art{height:235px;display:grid;place-items:center;position:relative;overflow:hidden;background:#d9dfce;color:#24392f}.art:before{content:'';position:absolute;width:76%;aspect-ratio:1;border:1px solid #ffffff70;border-radius:50%;transform:translate(8%,12%)}.art:after{content:'';position:absolute;width:44%;aspect-ratio:1;border-radius:50%;background:#d5c99e99;right:3%;bottom:5%}.art span{font:italic 34px/1.12 Georgia,serif;text-align:center;max-width:70%;z-index:1}.tone-1{background:linear-gradient(145deg,#d1d8bd,#4c6a5a);color:#fffce7}.tone-2{background:#e2d2bf}.tone-0{background:#d9dfce}.section{border-top:1px solid var(--line);padding:66px 0 80px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}.section-head a{font-size:14px;margin-bottom:22px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.card{text-decoration:none;display:block}.card .meta{margin-top:22px}.card p{font-size:14px;line-height:1.7}.card:hover h3{text-decoration:underline;text-decoration-thickness:1px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.page-hero{padding:80px 0 45px;max-width:900px}.page-hero h1{font-size:clamp(44px,5.5vw,72px)}.toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border-block:1px solid var(--line);padding:22px 0}.toolbar input,.toolbar select{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:10px;max-width:100%;border-radius:3px}.toolbar label{font-size:14px}#count{font-size:13px}.notice{padding:18px 22px;background:var(--wash);font-size:14px;border-left:2px solid var(--accent)}.reading{max-width:720px;margin:70px auto 110px}.reading .page-hero{padding-top:40px}.reading>p{font:20px/1.95 Georgia,serif;color:var(--ink)}.reading .meta{font:13px system-ui;color:var(--muted)}.reading hr{border:0;border-top:1px solid var(--line);margin:45px 0}.product-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:80px 0}.product-layout>.art{height:580px}.product-layout .page-hero{padding:25px 0 0}.product-layout h1{font-size:52px}.monogram{font:italic 230px Georgia,serif;background:var(--wash);display:grid;place-items:center;min-height:400px}.about p{margin:26px 0}footer{border-top:1px solid var(--line);padding:45px 0;margin-top:70px!important;display:grid;grid-template-columns:1fr auto;gap:12px}footer p{font-size:13px;margin:0}footer nav{grid-column:2;grid-row:1/3}footer small{font-size:12px;color:var(--muted)}.skip{position:absolute;left:15px;top:-100px;background:var(--paper);padding:12px;z-index:10}.skip:focus{top:10px}[hidden]{display:none!important}@media(max-width:900px){.hero{gap:32px;padding:70px 0}.hero>.art{height:380px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split,.product-layout{gap:35px}.actions{flex-wrap:wrap}.product-layout h1{font-size:42px}}@media(max-width:600px){.container{width:calc(100% - 36px)}.header-inner{min-height:78px;gap:12px;flex-wrap:wrap;padding:12px 0}.brand{margin-right:auto}#menu{display:block;font-size:13px;border-radius:4px;padding:0 12px}header nav{display:none;order:4;width:100%;margin:0;padding:12px 0;gap:24px;flex-wrap:wrap}header nav.open{display:flex}.hero,.split,.product-layout{grid-template-columns:1fr}.hero{padding:48px 0;gap:40px}.hero>.art{height:310px;max-width:400px;width:100%;margin:auto}.grid{grid-template-columns:1fr;gap:40px}.section{padding:45px 0}.section-head{align-items:start;flex-direction:column;gap:0}.section-head a{margin:0}.page-hero{padding-top:50px}h1{font-size:49px}.reading{margin-top:40px}.reading .page-hero h1{font-size:42px}.product-layout{padding-top:40px}.product-layout>.art{height:340px}.toolbar{align-items:stretch;flex-direction:column;gap:8px}footer{grid-template-columns:1fr}footer nav{grid-column:1;grid-row:auto;margin:12px 0}.monogram{min-height:300px}}@media(prefers-reduced-motion:no-preference){a,button{transition:color .15s,background .15s}}
/* Comfortable mobile navigation targets, including footer links. */
@media(max-width:600px){nav a{display:inline-flex;align-items:center;min-height:44px}header nav{gap:8px 24px}footer nav{gap:8px 24px;flex-wrap:wrap}}
@media(max-width:360px){.header-inner{gap:8px}.header-inner .brand{font-size:22px}#menu{font-size:12px;padding:0 8px}}
/* Editorial design tokens: warm paper, restrained forest accent, measured rhythm. */
:root{--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-5:4rem;--radius:4px;--measure:68ch}
main{min-height:60vh}h1,h2,h3,p,a{overflow-wrap:anywhere}.hero{position:relative;padding-block:80px}.hero .eyebrow::before{content:'';display:inline-block;width:24px;height:1px;background:currentColor;vertical-align:middle;margin-right:12px}.hero>.art{border-radius:50% 50% 3px 3px;height:450px}.hero>.art span{font-size:clamp(36px,4vw,56px);max-width:65%}.section-head{border-bottom:1px solid var(--line);padding-bottom:16px}.section-head h2{margin-bottom:8px}.card{padding-bottom:24px;border-bottom:1px solid var(--line);min-width:0}.card .art,.card .cover{height:auto;aspect-ratio:3/2}.cover{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);background:var(--wash)}.reading{max-width:var(--measure)}.reading .page-hero{padding-bottom:16px}.reading>.cover{margin:32px 0}.prose{font:20px/1.9 Georgia,serif;color:var(--ink)}.prose p{color:inherit;margin:1.4em 0}.prose h2{font-size:36px;margin-top:1.6em}.prose h3{font-size:28px}.prose blockquote{border-left:3px solid var(--accent);margin:2em 0;padding:4px 0 4px 24px;font-style:italic}.prose li{padding-left:5px;margin:8px 0}.prose a{text-decoration-thickness:1px}.product-layout>.cover{align-self:start}.product-layout .page-hero{padding-bottom:16px}figure{margin:0;min-width:0}figcaption{font-size:13px;color:var(--muted);margin-top:10px}.toolbar{background:var(--wash);border-radius:var(--radius);padding:20px}.toolbar input{flex:1;min-width:120px}.btn{min-height:44px}.grid{row-gap:42px}body.dark .tone-2{color:#24392f}body.dark .tone-0{color:#24392f}@media(max-width:900px){.hero{gap:32px}.hero>.art{height:370px}}@media(max-width:600px){.hero{padding-block:46px}.hero>.art{height:310px}.prose{font-size:19px}.reading .page-hero h1{font-size:clamp(34px,10vw,42px)}.toolbar input{width:100%}.section-head{gap:18px}.product-layout h1{font-size:40px}.hero .intro{font-size:17px}.section{padding-block:48px}}
@media(prefers-reduced-motion:no-preference){.card .cover{transition:filter .2s}.card:hover .cover{filter:brightness(.95)}}

.interests{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;padding:0;gap:0 32px}.interests li{border-bottom:1px solid var(--line);padding:20px 0;font:24px Georgia,serif}@media(max-width:600px){.interests{grid-template-columns:1fr}}

/* Keep uploaded media inside its editorial column. */
.cover{max-width:100%}.reading{max-width:720px}.reading>.cover{max-height:480px;object-fit:cover}
/* Rich article blocks keep their content inside the reading column. */
.prose{min-width:0}.prose .inline-media{display:block;max-width:100%;width:auto;height:auto;margin:24px auto;border-radius:var(--radius)}.prose pre{max-width:100%;overflow:auto;background:var(--wash);padding:20px;border:1px solid var(--line);border-radius:var(--radius);font:14px/1.7 ui-monospace,monospace}.prose :not(pre)>code{font:.85em ui-monospace,monospace;background:var(--wash);padding:2px 5px}.prose ul,.prose ol{padding-left:1.5em}.prose .table-scroll{max-width:100%;overflow-x:auto;margin:28px 0;border:1px solid var(--line)}.prose table{width:100%;border-collapse:collapse;font:15px/1.6 system-ui,sans-serif}.prose th,.prose td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--line);min-width:120px}.prose th{background:var(--wash);font-weight:650}.prose h4{font:600 23px/1.4 Georgia,serif;margin:1.5em 0 .6em}
