@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{color:#252722;font-synthesis:none;text-rendering:optimizelegibility;--paper:#f6f5f1;--ink:#252722;--muted:#60645d;--subtle:#858880;--line:#dcdcd4;--accent:#6f7968;--accent-dark:#55604f;--accent-ink:#fffefa;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--radius-control:4px;--max-width:1080px;background:#f6f5f1;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{color:var(--accent-ink);background:var(--accent)}.section-wrap{width:min(calc(100% - 56px), var(--max-width));margin-inline:auto}.eyebrow{color:var(--muted);font-family:var(--font-mono);letter-spacing:.1em;margin:0 0 20px;font-size:9px;font-weight:600;line-height:1.5}.hero{align-items:center;width:min(100% - 56px,680px);min-height:calc(100svh - 64px);padding-block:80px;display:flex;position:relative}.hero-copy{width:100%;max-width:680px}.hero h1,.not-found h1{letter-spacing:-.065em;max-width:690px;margin:0;font-size:clamp(44px,5.2vw,68px);font-weight:600;line-height:.98}.hero h1 em,.not-found h1 em{color:var(--accent);font-style:normal;font-weight:600}.hero-intro{max-width:430px;color:var(--muted);margin:25px 0 0;font-size:16px;line-height:1.75}.language-switch{color:var(--subtle);font-family:var(--font-mono);letter-spacing:.06em;align-items:center;gap:8px;font-size:10px;display:flex;position:absolute;top:24px;right:0}.language-switch a{padding:5px 2px}.language-switch a[aria-current=page]{color:var(--accent-dark);font-weight:700}.language-switch a:hover{color:var(--accent-dark)}.links-block{margin-top:31px}.links-block .eyebrow{margin-bottom:10px}.link-groups{grid-template-columns:1fr;gap:24px;display:grid}.link-group-title{border-top:1px solid var(--line);color:var(--muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin:0;padding:11px 0 4px;font-size:9px;font-weight:600}.links-list{grid-template-columns:1fr;display:grid}.external-link{border-bottom:1px solid var(--line);min-height:58px;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;font-size:13px;transition:color .18s;display:flex}.external-link>span:last-child{color:var(--subtle);font-size:15px;transition:color .18s,transform .18s}.external-link:hover,.external-link:hover>span:last-child{color:var(--accent-dark)}.external-link:hover>span:last-child{transform:translate(2px,-2px)}.profile-links{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));place-items:center;min-height:58px;display:grid}.profile-link{width:42px;height:42px;color:var(--muted);border-radius:50%;place-items:center;transition:color .18s,transform .18s;display:grid}.profile-link:hover{color:var(--accent-dark);transform:translateY(-2px)}.profile-link svg{fill:currentColor;width:20px;height:20px;display:block}.threads-mark{font-size:24px;font-weight:500;line-height:1;display:block;transform:translateY(-2px)}.about{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr);gap:clamp(34px,7vw,90px);padding-top:76px;padding-bottom:82px;scroll-margin-top:24px;display:grid}.about .eyebrow{margin-bottom:10px}.about h2{letter-spacing:-.05em;margin:0 0 20px;font-size:clamp(28px,3.4vw,42px);font-weight:600;line-height:1.08}.about h3{letter-spacing:-.02em;margin:0 0 13px;font-size:15px;font-weight:600}.about-copy>p:not(.eyebrow),.about-details>p{color:var(--muted);margin:0;font-size:14px;line-height:1.8}.about-copy>p+p{margin-top:15px}.about-details{align-self:end}.about-details ul{color:var(--muted);gap:9px;margin:0 0 24px;padding-left:19px;font-size:13px;line-height:1.65;display:grid}.about a{color:var(--accent-dark);text-underline-offset:3px;text-decoration:underline}.bookshelf{padding-top:20px;padding-bottom:100px}.bookshelf>.eyebrow{margin-bottom:10px}.bookshelf h2{letter-spacing:-.045em;margin:0;font-size:clamp(25px,3vw,34px);font-weight:600;line-height:1.15}.bookshelf-intro{color:var(--muted);margin:12px 0 27px;font-size:14px;line-height:1.65}.bookshelves{background:linear-gradient(90deg,#6d6e67 0%,#85867f 2.5%,#90918a 50%,#85867f 97.5%,#6d6e67 100%);border:16px solid #eeede8;border-width:19px 16px 20px;gap:0;width:100%;padding:0 15px 6px;display:grid;box-shadow:inset 0 0 20px #00000029,0 3px 10px #25272224}.bookshelf-level{padding-top:14px}.bookshelf-level+.bookshelf-level{padding-top:18px}.bookshelf-level-title{color:#ffffffe0;font-family:var(--font-mono);letter-spacing:.1em;text-shadow:0 1px 2px #0003;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:600}.book-row{background:repeating-linear-gradient(#0000 0 240px,#d0cfc8 240px 242px,#f4f3ed 242px 251px,#fff 251px 254px,#d2d1c9 254px 260px,#696a63 260px 263px,#0000 263px 265px) content-box content-box;grid-template-columns:repeat(auto-fill,1px);grid-auto-rows:240px;grid-auto-flow:row;row-gap:25px;width:100%;margin-bottom:15px;padding:8px 2px 0;display:grid;position:relative}.book-row:after{content:"";pointer-events:none;background:linear-gradient(#f8f7f1 0 4px,#eeede8 4px 10px,#d4d3cb 10px 13px,#696a63 13px 15px);height:15px;position:absolute;bottom:-15px;left:-15px;right:-15px;box-shadow:0 5px 8px #00000038}.book-card{grid-column:span var(--spine-units);width:var(--spine-width);height:240px;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-content:flex-start;align-items:flex-end;padding:0;transition:transform .18s;display:flex}.book-card:hover{transform:translateY(-5px)}.book-card:focus-visible,.book-dialog-close:focus-visible{outline:2px solid var(--accent-dark);outline-offset:4px}.book-spine{width:100%;height:var(--spine-height);background:linear-gradient(90deg, color-mix(in srgb, var(--spine-color) 82%, var(--spine-accent)) 0 2px, var(--spine-color) 2px calc(100% - 2px), #0000001c calc(100% - 2px));border-left:1px solid #ffffff61;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:relative;box-shadow:inset 3px 0 6px #0000001a,2px 4px 6px #2527222e}.book-spine:before{content:"";pointer-events:none;border-left:1px solid #ffffff24;border-right:1px solid #ffffff24;position:absolute;inset:8px 2px}.book-spine-title,.book-spine-author{z-index:1;color:var(--spine-ink);writing-mode:vertical-rl;white-space:nowrap;transform:rotate(180deg)}.book-spine-title{font-family:Georgia,serif;font-size:var(--spine-title-size);letter-spacing:.02em}.book-spine-author{font-family:var(--font-mono);letter-spacing:.08em;font-size:7px}.book-dialog{background:var(--accent-dark);width:min(800px,100vw - 30px);max-width:none;max-height:calc(100svh - 30px);color:var(--ink);border:1px solid #465041;border-radius:7px;padding:9px 9px 12px;position:fixed;overflow:auto;box-shadow:0 22px 70px #00000052}.book-dialog[open]{transform-origin:8%;animation:.56s cubic-bezier(.18,.78,.22,1) both book-open}.book-dialog::backdrop{background:#181a1785;animation:.26s ease-out both backdrop-in}.book-dialog-content{background:linear-gradient(90deg,#0000 calc(50% - 20px),#5d4f391a calc(50% - 1px),#ffffff9e 50%,#5d4f3914 calc(50% + 1px),#0000 calc(50% + 20px)),linear-gradient(90deg,#fffdf7 0%,#f8f4e9 49.7%,#e9e3d6 50%,#fffdf7 50.3%,#faf6ec 100%);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:0;min-height:410px;padding:clamp(30px,5vw,48px);display:grid;position:relative;box-shadow:inset 0 0 0 1px #4f46361f}.book-dialog-cover{object-fit:contain;border-left:4px solid #0000002e;justify-self:center;width:min(78%,220px);max-height:46svh;display:block;box-shadow:5px 7px 14px #2527223d}.book-dialog-cover[hidden],.book-dialog-cover-fallback[hidden]{display:none}.book-dialog-cover-fallback{width:min(78%,220px);height:min(46svh,360px);color:var(--muted);text-align:center;border:1px dashed #55604f66;justify-self:center;place-items:center;margin:0;padding:20px;font-size:13px;display:grid}.book-dialog-copy{padding:0 8px 0 28px}.book-dialog-copy .eyebrow{margin-bottom:10px}.book-dialog-copy h2{letter-spacing:-.035em;margin:0;font-family:Georgia,serif;font-size:clamp(26px,3.6vw,38px);font-weight:500;line-height:1.12}.book-dialog-author{color:var(--muted);margin:12px 0 24px;font-family:Georgia,serif;font-size:14px;font-style:italic}#book-dialog-summary{color:var(--ink);border-top:1px solid #5d4f3933;margin:0;padding-top:15px;font-size:14px;line-height:1.75}.book-dialog-source{color:var(--accent-dark);border-bottom:1px solid #55604f59;align-items:center;gap:6px;margin-top:21px;padding-bottom:3px;font-size:12px;font-weight:600;display:inline-flex}.book-dialog-source:hover{text-underline-offset:3px;text-decoration:underline}.book-dialog-close{z-index:1;border:1px solid var(--line);background:var(--paper);width:38px;height:38px;color:var(--muted);cursor:pointer;font:inherit;border-radius:50%;place-items:center;font-size:25px;line-height:1;display:grid;position:absolute;top:12px;right:12px}.book-dialog-close:hover{color:var(--ink)}@keyframes book-open{0%{opacity:0;transform:perspective(1200px)rotateY(-64deg)scale(.94)}68%{opacity:1;transform:perspective(1200px)rotateY(3deg)scale(1.01)}to{opacity:1;transform:perspective(1200px)rotateY(0)scale(1)}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.site-footer{border-top:1px solid var(--line);color:var(--muted);font-size:10px}.footer-inner{justify-content:space-between;align-items:center;gap:20px;min-height:64px;display:flex}.footer-inner>div{gap:18px;display:flex}.footer-inner a:hover{color:var(--accent-dark)}.not-found{align-content:center;justify-items:start;min-height:69vh;padding-top:85px;padding-bottom:100px;display:grid}.not-found [hidden]{display:none!important}.not-found h1{font-size:clamp(55px,8vw,85px)}.not-found>p:not(.eyebrow){color:var(--muted);margin:20px 0 27px;font-size:15px}.home-link{color:var(--accent-dark);align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}@media (width<=650px){.section-wrap{width:min(calc(100% - 38px), var(--max-width))}.hero{width:min(100% - 38px,680px);min-height:calc(100svh - 59px);padding-block:58px}.language-switch{top:12px}.hero h1{max-width:520px;font-size:clamp(40px,10vw,62px)}.hero-intro{max-width:430px;margin-top:20px;font-size:15px}.links-block{margin-top:25px}.link-groups{gap:21px}.about{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:53px;padding-bottom:60px}.about h2{font-size:clamp(27px,7vw,36px)}.bookshelf{padding-top:10px;padding-bottom:72px}.bookshelf-intro{margin-bottom:21px}.bookshelves{border-width:14px 10px 16px;padding-inline:8px}.bookshelf-level{padding-top:11px}.bookshelf-level+.bookshelf-level{padding-top:15px}.book-dialog{padding:7px 7px 10px}.book-dialog[open]{transform-origin:50% 0;animation-name:book-open-mobile}.book-dialog-content{background:linear-gradient(#fffdf7,#faf6ec);grid-template-columns:minmax(0,1fr);gap:22px;min-height:0;padding:56px 22px 28px}.book-dialog-cover{width:auto;max-width:min(58vw,190px);max-height:26svh}.book-dialog-cover-fallback{width:auto;max-width:min(58vw,190px);height:min(26svh,260px)}.book-dialog-copy{justify-self:center;width:100%;max-width:440px;padding:0}.book-dialog-copy h2{font-size:clamp(25px,7vw,32px)}.book-dialog-author{margin-bottom:16px}#book-dialog-summary{font-size:14px}.book-dialog-content:before{display:none}.footer-inner{min-height:59px;font-size:9px}.footer-inner>div{gap:12px}.not-found{min-height:65vh}}@media (width<=380px){.section-wrap,.hero{width:calc(100% - 30px)}.book-dialog-content{gap:18px;padding:52px 16px 22px}.book-dialog-cover{max-width:min(52vw,160px);max-height:23svh}.book-dialog-cover-fallback{max-width:min(52vw,160px);height:min(23svh,220px)}.book-dialog-copy h2{font-size:23px}.book-dialog-source{margin-top:16px;font-size:11px}}@keyframes book-open-mobile{0%{opacity:0;transform:perspective(900px)rotateX(-28deg)scale(.97)}70%{opacity:1;transform:perspective(900px)rotateX(2deg)scale(1.01)}to{opacity:1;transform:perspective(900px)rotateX(0)scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
