.portrait img{width:11rem;border-radius:50%}.intro + h2{clear:right}.entry .title{font-weight:500}.entry .summary{font-style:italic}@media screen and (max-width: 860px) {.side.portrait{float:right;width:8rem;margin:0 0 0.6rem 1rem;padding:0;border:none}.portrait img{width:100%}.entry{display:flex;flex-direction:column}.entry br{display:none}.entry .title{order:1}.entry .meta{order:2}.entry .summary{order:3}}@font-face{font-family:"Alegreya";font-style:normal;font-weight:400 900;font-display:swap;src:url(/assets/res/fonts/alegreya-normal.woff2?etag=l6S_17PO) format("woff2")}@font-face{font-family:"Alegreya";font-style:italic;font-weight:400 900;font-display:swap;src:url(/assets/res/fonts/alegreya-italic.woff2?etag=rXnuKCBc) format("woff2")}@font-face{font-family:"Alegreya SC";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/res/fonts/alegreya-sc-500.woff2?etag=cL4ufo9R) format("woff2")}@font-face{font-family:"Alegreya SC";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/res/fonts/alegreya-sc-700.woff2?etag=QkRc2RrY) format("woff2")}@font-face{font-family:"Alegreya Sans";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/res/fonts/alegreya-sans-400.woff2?etag=3slkItm-) format("woff2")}@font-face{font-family:"IM Fell English";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/res/fonts/im-fell-english.woff2?etag=ckFWJs21) format("woff2")}@font-face{font-family:"Inconsolata";font-style:normal;font-weight:200 900;font-display:swap;src:url(/assets/res/fonts/inconsolata-normal.woff2?etag=T3fUqXFe) format("woff2")}:root{color-scheme:light dark;font-size:93.75%;--bg:#fcfcfc;--text:#111;--muted:#555;--selection-bg:#d8e8ff;--selection-text:#08111c;--link:#003366;--link-hover-bg:#f0f7ff;--accent:#660000;--border:#ccc;--input-border:dimgray;--button-bg:#f5f5f5;--button-hover-bg:#e8e8e8;--initial-bg:url(/assets/res/initial-light.svg?etag=0dW1gEkO);--font-body:"Alegreya", "Times New Roman", serif;--font-sc:"Alegreya SC", "Times New Roman", serif;--font-sans:"Alegreya Sans", "Liberation Sans", Arial, sans-serif;--font-mono:"Inconsolata", "Liberation Mono", "Courier New", monospace;--fs-body:1.4rem;--gutter:2rem}@media (prefers-color-scheme: dark) {:root{--bg:#16161a;--text:#d6d6d6;--muted:#9a9aa0;--selection-bg:#2a3a52;--selection-text:#eaf1ff;--link:#8cb4e8;--link-hover-bg:#1c2533;--accent:#e0928c;--border:#3a3a3a;--input-border:#555;--button-bg:#232327;--button-hover-bg:#2c2c30;--initial-bg:url(/assets/res/initial-dark.svg?etag=h9900PyC)}}html.night{color-scheme:dark;--initial-bg:url(/assets/res/initial-dark.svg?etag=h9900PyC);--bg:#16161a;--text:#d6d6d6;--muted:#9a9aa0;--selection-bg:#2a3a52;--selection-text:#eaf1ff;--link:#8cb4e8;--link-hover-bg:#1c2533;--accent:#e0928c;--border:#3a3a3a;--input-border:#555;--button-bg:#232327;--button-hover-bg:#2c2c30}body{margin:4rem auto;max-width:1080px;font-family:var(--font-body);font-weight:440;background-color:var(--bg);color:var(--text)}::selection{background:var(--selection-bg);color:var(--selection-text)}main,footer{margin-left:var(--gutter);margin-right:26rem}h1,h2,h3,.byline .author,.tags{font-family:var(--font-sc);text-transform:lowercase}h1{text-align:center;letter-spacing:0.06rem;font-weight:500;margin:0 auto 2.2rem;font-size:2.8rem;line-height:1;text-wrap:balance}h1::before{content:"";display:block;width:26rem;max-width:100%;aspect-ratio:200 / 27;margin:0 auto 1.25rem;background-color:var(--text);-webkit-mask:url(/assets/res/ornament.svg?etag=EIYCt-la) center / contain no-repeat;mask:url(/assets/res/ornament.svg?etag=EIYCt-la) center / contain no-repeat}h1:has(+ .subtitle){margin-bottom:0.65rem}h2{font-size:1.6rem;font-weight:700;letter-spacing:-0.02rem;line-height:1;margin:2.4rem 0 0.64rem}h3{font-size:1.35rem;font-weight:700;line-height:1;margin:2rem 0 0.6rem}.subtitle{display:block;font-style:italic;font-weight:400;font-size:var(--fs-body);text-align:center;text-wrap:balance}header{margin-bottom:2.8rem}.ornament{clear:both;width:7.5rem;aspect-ratio:48 / 23;margin:3.2rem auto 2.4rem;background-color:var(--text);-webkit-mask:url(/assets/res/ornament-divider.svg?etag=p-805gYF) center / contain no-repeat;mask:url(/assets/res/ornament-divider.svg?etag=p-805gYF) center / contain no-repeat}main :is(p,dd,li,blockquote){hyphens:auto;font-size:var(--fs-body);line-height:2rem;margin-top:0;margin-bottom:1.2rem}main li{margin-bottom:0.4rem}main :is(ul,ol){margin:0 0 1.2rem;padding-left:1.6rem}blockquote{margin-left:0;padding-left:1.2rem;border-left:3px solid var(--border);font-style:italic}main blockquote p{margin-bottom:0.6rem}.content > p:first-of-type{display:flow-root}.content .initial{float:left;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:7.6rem;height:7.6rem;margin:0.4rem 0.9rem 0 0;padding-top:0.45rem;font-family:"IM Fell English", var(--font-body);font-weight:400;font-size:5.3rem;line-height:1;color:var(--text);-webkit-text-stroke:0.4rem var(--bg);paint-order:stroke fill;border:2px solid var(--text);box-shadow:inset 0 0 0 2px var(--bg), inset 0 0 0 3px var(--text);background:var(--bg) var(--initial-bg) center / 86% no-repeat}a{color:var(--link);text-decoration:none}a:hover{background:var(--link-hover-bg);border-radius:4px;transition:background 0.2s}nav a:hover,.tags a:hover,.author a:hover,footer a.home:hover,a:has(img):hover{background:none}a[href^="http://"]::before{font-size:0.6em;content:"⚠️ "}main img{max-width:100%;height:auto}sup{color:var(--accent);line-height:0}code,kbd,pre{font-family:var(--font-mono);letter-spacing:-0.01rem}:is(code,kbd):not(pre code){font-weight:530;color:var(--accent);font-size:1.32rem;overflow-wrap:anywhere}pre{font-size:1.15rem;line-height:1.5;overflow-x:auto;padding:0.4rem 0.6rem;margin:0 0 1.4rem;border:1px solid var(--border);border-left:3px solid var(--border)}table{font-family:var(--font-sans);border-collapse:collapse;font-size:1.2rem;border-block:2px solid var(--text);margin:1.6rem auto}table th,table td{padding:0.5rem 1rem}table tbody tr:first-child td{border-top:1px solid var(--text)}hr{border:none;border-top:1px solid var(--border);margin:2rem 0}.side{float:right;clear:right;position:relative;width:21rem;margin-right:-24rem;margin-bottom:0.2rem;padding-top:0.2rem;font-size:1.1rem;line-height:1.54rem}.side img{display:block;margin-bottom:0.4rem}.date{display:block;font-weight:400}.tags{display:block;letter-spacing:0.02rem}.tags a{color:var(--text)}.tags a + a::before{content:"·";display:inline-block;margin:0 0.4rem;color:var(--text)}nav ul{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem;padding:0;margin:4rem 0 0.4rem}nav li{margin:0 !important}nav a{font-family:var(--font-body);font-size:1.2rem;font-weight:500;text-transform:uppercase;color:var(--text)}footer{border-top:1px solid var(--text)}footer a.home{color:var(--text)}footer p{font-size:1.1rem;line-height:1.5;margin:0.6rem 0}.badges{display:flex;flex-wrap:wrap;align-items:center;gap:1.6rem;margin:1rem 0}.badges img{display:block;height:3.2rem;width:auto}#message-box{margin:0 0 2.4rem;padding:0.6rem 1rem;border:1px solid var(--border);border-left:3px solid var(--accent);font-size:var(--fs-body);font-style:italic}.banner{display:flex;align-items:center;gap:1.5rem;margin:0 0 3.2rem;padding:1rem 1.2rem;border:1px solid var(--banner-color);border-left:3px solid var(--banner-color)}.banner-logo{flex:none;line-height:0}.banner-logo img{display:block;width:7rem;height:auto}.banner-text h2{margin:0 0 0.6rem;color:var(--banner-color)}.banner-text p{font-size:1.2rem;line-height:1.7rem;margin:0 0 0.4rem}.banner-text a{color:var(--banner-color)}#ilovefs{--banner-color:#b3123a}#earth-hour{--banner-color:#2e6b2e}@media (prefers-color-scheme: dark) {#ilovefs{--banner-color:#f08aa0}#earth-hour{--banner-color:#8fcf8f}}html.night #earth-hour{--banner-color:#9ec5ff}html.night img{filter:brightness(0.85)}@media screen and (max-width: 860px) {:root{font-size:87.5%;--gutter:1.2rem}body{margin:2.2rem auto;max-width:580px}main,footer{margin:0 var(--gutter)}h1{font-size:2.2rem;letter-spacing:0;hyphens:auto;overflow-wrap:break-word}.side{float:none;width:auto;margin:0.4rem 0 1.2rem;padding:0.4rem 0.5rem;border:1px solid var(--border);border-left:3px solid var(--border)}.side.meta{margin:0;padding:0;border:none}.side.meta .date,.side.meta .tags{display:inline}.side.meta .tags:not(:empty)::before{content:"·";margin:0 0.4rem}.banner{flex-direction:column;align-items:flex-start}}@media print {:root{font-size:75%;--gutter:1rem}main,footer{margin-right:18rem}.side{margin-right:-16.5rem;width:15rem}nav,.banner,form{display:none}}