:root{--bg: #14110e;--bg-deep: #0c0a08;--paper: #1a1612;--ink: #ece3d4;--ink-soft: #b8ad9a;--muted: #7a7163;--rule: rgba(236, 227, 212, .1);--rule-strong: rgba(236, 227, 212, .2);--copper: #c47a4d;--gild: #d9b87a;--terracotta: #b65a3a;--accent: var(--copper);--accent-glow: rgba(217, 184, 122, .55);--font-display: "Cormorant Garamond", "EB Garamond", Georgia, serif;--font-body: "EB Garamond", "Cormorant Garamond", Georgia, serif;--font-ui: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--reader-size: 19px;--reader-leading: 1.78;--measure: 780px;--column-pad: 32px;--topbar-h: 56px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg);color:var(--ink);font-size:var(--reader-size);line-height:var(--reader-leading);font-feature-settings:"kern","liga","onum";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background .35s,color .35s}button{font:inherit;color:inherit;cursor:pointer;background:transparent;border:0;padding:0}a{color:inherit}img{display:block;max-width:100%}.topbar{position:sticky;top:0;z-index:40;height:var(--topbar-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 28px;background:color-mix(in oklab,var(--bg) 88%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--rule);font-family:var(--font-ui);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.topbar .brand{font-family:var(--font-display);font-size:18px;font-style:italic;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);text-align:center;text-decoration:none}.topbar .brand .dot{display:inline-block;width:5px;height:5px;margin:0 8px 3px;border-radius:50%;background:var(--accent);vertical-align:middle;box-shadow:0 0 10px var(--accent-glow)}.topbar .left,.topbar .right{display:flex;align-items:center;gap:18px}.topbar .right{justify-content:flex-end}.topbar a,.topbar button{color:var(--ink-soft);transition:color .2s;text-decoration:none}.topbar a:hover,.topbar button:hover{color:var(--ink)}.topbar .lang{font-feature-settings:"tnum"}.topbar .lang b{color:var(--ink);font-weight:600}.topbar .lang-sep{opacity:.4;margin:0 4px}.topbar .lang-en,.topbar .lang-fr{opacity:.55;transition:opacity .2s,color .2s}.topbar .lang-en:hover,.topbar .lang-fr:hover{opacity:1;color:var(--ink)}.progress{position:fixed;left:0;right:0;top:var(--topbar-h);height:1.5px;z-index:41;background:transparent;pointer-events:none}.progress>i{display:block;height:100%;background:var(--accent);width:var(--p, 0%);box-shadow:0 0 10px var(--accent-glow);transition:width .12s linear}.hero{position:relative;width:100%;background:var(--bg-deep);overflow:hidden}.hero-banner{position:relative;width:100%;height:clamp(260px,38vh,420px);overflow:hidden;cursor:zoom-in}.hero-banner img{width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block;filter:saturate(.95) contrast(1.05);transition:transform .8s ease-out}.hero-banner:hover img{transform:scale(1.02)}.hero-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15) 0%,transparent 30%,transparent 60%,var(--bg) 100%);pointer-events:none}.hero-banner .zoom-hint{position:absolute;right:16px;bottom:16px;font-family:var(--font-ui);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:#ffffffb3;background:#0006;padding:6px 12px;border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(6px);pointer-events:none;opacity:0;transition:opacity .25s}.hero-banner:hover .zoom-hint{opacity:1}.hero-meta{position:relative;z-index:2;text-align:center;padding:56px 24px 8px;color:var(--ink);max-width:1180px;margin:0 auto}.hero-eyebrow{font-family:var(--font-ui);font-size:11px;letter-spacing:.4em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;opacity:.95}.hero h1{font-family:var(--font-display);font-weight:400;font-style:italic;font-size:clamp(36px,6vw,76px);line-height:1.05;letter-spacing:-.005em;margin:0 0 14px;text-shadow:0 2px 30px rgba(0,0,0,.5);text-wrap:balance;white-space:nowrap}@media(max-width:880px){.hero h1{white-space:normal}}.hero .setting{font-family:var(--font-display);font-size:clamp(16px,1.6vw,22px);color:var(--ink-soft);font-style:italic;margin-bottom:28px}.hero-meta .filet{display:inline-flex;align-items:center;gap:14px;color:var(--accent);font-family:var(--font-ui);font-size:11px;letter-spacing:.3em;text-transform:uppercase}.hero-meta .filet:before,.hero-meta .filet:after{content:"";width:60px;height:1px;background:var(--accent);opacity:.6}.hero-scroll{text-align:center;font-family:var(--font-ui);font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--ink-soft);opacity:.7;padding:20px 0 28px;animation:float 2.6s ease-in-out infinite}.hero-scroll .rule{display:inline-block;width:80px;height:1px;background:var(--rule-strong);opacity:.7}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.column{max-width:var(--measure);margin:0 auto;padding:0 var(--column-pad);position:relative}.story-meta{text-align:center;padding:56px 0 48px;font-family:var(--font-ui);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.story-meta b{color:var(--ink-soft);font-weight:500}.story-meta .sep{display:inline-block;margin:0 14px;opacity:.5}.scene{padding-top:12px}.scene h2{font-family:var(--font-display);font-weight:500;font-style:italic;font-size:clamp(26px,3.2vw,36px);line-height:1.2;margin:44px 0 8px;color:var(--ink);text-align:center}.scene-num{display:none;text-align:center;font-family:var(--font-ui);font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.scene-rule{display:flex;align-items:center;justify-content:center;gap:14px;margin:18px auto 24px;color:var(--muted)}.scene-rule:before,.scene-rule:after{content:"";height:1px;width:70px;background:var(--rule-strong)}.scene-rule .glyph{font-family:var(--font-display);font-size:14px;letter-spacing:.4em;color:var(--accent);opacity:.85}.scene p{margin:0 0 1.2em;text-align:justify;hyphens:auto;text-wrap:pretty}.scene.has-dropcap>.column>p:first-of-type:first-letter{font-family:var(--font-display);font-weight:500;font-size:4.4em;line-height:.9;float:left;padding:.05em .1em 0 0;color:var(--accent);font-style:normal}.scene blockquote{margin:1.6em 0;padding:14px 20px 14px 24px;border-left:2px solid var(--accent);background:color-mix(in oklab,var(--ink) 4%,transparent);font-style:italic;color:var(--ink);font-size:calc(var(--reader-size) * .98);line-height:1.65}.scene blockquote p{margin:0 0 .6em;text-align:left}.scene blockquote p:last-child{margin:0}figure.inline-img{margin:8px 0 14px;width:45%;aspect-ratio:4/5;overflow:hidden;border-radius:1px;box-shadow:0 12px 40px #0006;cursor:zoom-in;background:var(--bg-deep)}figure.inline-img picture{width:100%;height:100%;display:block}figure.inline-img picture img{width:100%;height:100%;object-fit:cover;transition:transform .6s}figure.inline-img:hover picture img{transform:scale(1.03)}figure.inline-img.right{float:right;margin-left:28px;clear:right}figure.inline-img.left{float:left;margin-right:28px;clear:left}figure.full-bleed{width:100vw;margin-left:calc(50% - 50vw);margin-top:56px;margin-bottom:56px;aspect-ratio:21/9;overflow:hidden;cursor:zoom-in;background:var(--bg-deep);position:relative}figure.full-bleed img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease-out}figure.full-bleed:hover img{transform:scale(1.02)}.chapter-end{max-width:920px;margin:100px auto 60px;padding:0 24px}.chapter-end .closing{text-align:center;font-family:var(--font-display);font-style:italic;color:var(--muted);margin:0 auto 60px;font-size:16px}.chapter-end .ornament{display:flex;align-items:center;justify-content:center;gap:18px;margin:60px 0;color:var(--accent)}.chapter-end .ornament:before,.chapter-end .ornament:after{content:"";width:100px;height:1px;background:var(--rule-strong)}.chapter-end .ornament .star{font-size:11px;letter-spacing:.6em}.chapter-nav{display:grid;grid-template-columns:1fr 1fr;gap:16px}.chapter-nav .card{display:block;padding:28px 30px;border:1px solid var(--rule);background:color-mix(in oklab,var(--ink) 2.5%,transparent);text-decoration:none;text-align:left;color:inherit;transition:border-color .2s,background .2s,transform .2s}.chapter-nav a.card:hover{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 6%,transparent)}.chapter-nav .card.disabled{opacity:.4;pointer-events:none}.chapter-nav .label{font-family:var(--font-ui);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.chapter-nav .card.next .label,.chapter-nav .card.next{text-align:right}.chapter-nav .title{font-family:var(--font-display);font-style:italic;font-size:22px;color:var(--ink);line-height:1.2;margin-bottom:4px}.chapter-nav .setting{font-family:var(--font-ui);font-size:11px;color:var(--muted);letter-spacing:.06em}footer.colophon{padding:60px 24px 80px;font-family:var(--font-ui);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--rule);display:flex;flex-direction:column;align-items:center;gap:22px}footer.colophon .colophon-row{display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:center}footer.colophon a{color:var(--ink-soft);margin:0 6px;text-decoration:none}footer.colophon a:hover{color:var(--accent)}footer.colophon .colophon-faint{opacity:.4}footer.colophon .colophon-sep{margin:0 8px;opacity:.5}.lightbox{position:fixed;inset:0;z-index:70;background:#000000eb;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s}.lightbox.show{opacity:1;pointer-events:auto}.lightbox img{max-width:92vw;max-height:92vh;object-fit:contain;box-shadow:0 30px 80px #000c;transform:scale(.97);transition:transform .3s}.lightbox.show img{transform:scale(1)}.lightbox .close{position:absolute;top:24px;right:28px;color:#ffffffb3;font-family:var(--font-ui);font-size:11px;letter-spacing:.24em;text-transform:uppercase}.resume{position:fixed;left:0;right:0;top:var(--topbar-h);z-index:38;display:flex;align-items:center;justify-content:center;gap:14px;padding:8px 16px;background:color-mix(in oklab,var(--bg-deep) 94%,transparent);border-bottom:1px solid var(--accent);font-family:var(--font-ui);font-size:12px;color:var(--ink);opacity:0;transform:translateY(-100%);pointer-events:none;transition:opacity .3s,transform .3s;backdrop-filter:blur(12px)}.resume.show{opacity:1;transform:translateY(0);pointer-events:auto}.resume .resume-text{color:var(--muted)}.resume button.go{color:var(--accent);border:1px solid var(--accent);padding:4px 12px;letter-spacing:.12em;text-transform:uppercase;font-size:10px}.resume button.dismiss{color:var(--muted);font-size:18px}@media(min-width:769px)and (max-width:1024px){:root{--measure: 720px}}@media(max-width:720px){:root{--reader-size: 17.5px;--reader-leading: 1.7;--column-pad: 22px;--topbar-h: 52px}.topbar{padding:0 16px}.topbar .left,.topbar .right{gap:10px}.topbar .lang,.topbar .menu-text{display:none}.topbar .brand{font-size:14px}.hero-banner{height:clamp(180px,28vh,280px)}.hero-meta{padding:36px 16px 4px}.hero h1{font-size:clamp(30px,9vw,44px)}figure.inline-img,figure.inline-img.left,figure.inline-img.right{width:100%;float:none;margin:28px 0}figure.full-bleed{margin-top:36px;margin-bottom:36px;aspect-ratio:16/10}.scene h2{font-size:clamp(22px,6vw,28px);margin:40px 0 8px}.chapter-nav{grid-template-columns:1fr}.chapter-nav .card.next,.chapter-nav .card.next .label{text-align:left}}
