Commit c1d89102 authored by santiago duque's avatar santiago duque

fonts now local

parent 84f2293f
......@@ -36,6 +36,19 @@
"rFN" : 0,
"uCM" : 0
},
"\/src\/css\/_fonts.scss" : {
"aP" : 1,
"bl" : 0,
"co" : 0,
"ec" : 1,
"ft" : 4,
"ma" : 1,
"oA" : 1,
"oAP" : "\/www\/assets\/css\/_fonts.css",
"oF" : 0,
"oS" : 3,
"pg" : 0
},
"\/src\/css\/_mixins.scss" : {
"aP" : 1,
"bl" : 0,
......
// Cormorant Garamond for headlines
/* cormorant-garamond-300 - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "Cormorant Garamond";
font-style: normal;
font-weight: 300;
src:
url("../fonts/cormorant-garamond-v21-latin-300.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
url("../fonts/cormorant-garamond-v21-latin-300.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* cormorant-garamond-300italic - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "Cormorant Garamond";
font-style: italic;
font-weight: 300;
src:
url("../fonts/cormorant-garamond-v21-latin-300italic.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
url("../fonts/cormorant-garamond-v21-latin-300italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* cormorant-garamond-regular - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "Cormorant Garamond";
font-style: normal;
font-weight: 400;
src:
url("../fonts/cormorant-garamond-v21-latin-regular.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
url("../fonts/cormorant-garamond-v21-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* cormorant-garamond-italic - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "Cormorant Garamond";
font-style: italic;
font-weight: 400;
src:
url("../fonts/cormorant-garamond-v21-latin-italic.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
url("../fonts/cormorant-garamond-v21-latin-italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* cormorant-garamond-600 - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "Cormorant Garamond";
font-style: normal;
font-weight: 600;
src:
url("../fonts/cormorant-garamond-v21-latin-600.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
url("../fonts/cormorant-garamond-v21-latin-600.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* cormorant-garamond-600italic - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "Cormorant Garamond";
font-style: italic;
font-weight: 600;
src:
url("../fonts/cormorant-garamond-v21-latin-600italic.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
url("../fonts/cormorant-garamond-v21-latin-600italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
// EB Garamond for copy
/* eb-garamond-regular - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "EB Garamond";
font-style: normal;
font-weight: 400;
src:
url("../fonts/eb-garamond-v32-latin-regular.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ url("../fonts/eb-garamond-v32-latin-regular.ttf")
format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* eb-garamond-italic - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "EB Garamond";
font-style: italic;
font-weight: 400;
src:
url("../fonts/eb-garamond-v32-latin-italic.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ url("../fonts/eb-garamond-v32-latin-italic.ttf")
format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* eb-garamond-600 - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "EB Garamond";
font-style: normal;
font-weight: 600;
src:
url("../fonts/eb-garamond-v32-latin-600.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ url("../fonts/eb-garamond-v32-latin-600.ttf")
format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* eb-garamond-600italic - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "EB Garamond";
font-style: italic;
font-weight: 600;
src:
url("../fonts/eb-garamond-v32-latin-600italic.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
url("../fonts/eb-garamond-v32-latin-600italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
// Mono
/* jetbrains-mono-regular - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "JetBrains Mono";
font-style: normal;
font-weight: 400;
src:
url("../fonts/jetbrains-mono-v24-latin-regular.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
url("../fonts/jetbrains-mono-v24-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
// Sans if needed
/* inter-tight-regular - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "Inter Tight";
font-style: normal;
font-weight: 400;
src:
url("../fonts/inter-tight-v9-latin-regular.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ url("../fonts/inter-tight-v9-latin-regular.ttf")
format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* inter-tight-600 - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: "Inter Tight";
font-style: normal;
font-weight: 600;
src:
url("../fonts/inter-tight-v9-latin-600.woff2") format("woff2"),
/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */ url("../fonts/inter-tight-v9-latin-600.ttf")
format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
......@@ -2,6 +2,7 @@
Shared styles — atmospheric horror scrollytelling
=================================================================== */
@use 'vars';
@use 'fonts';
@use 'mixins' as m;
// ===== Reset =====
......@@ -89,7 +90,7 @@ body {
.wordmark {
font-family: var(--font-display);
font-weight: 500;
font-weight: 400;
font-size: 17px;
letter-spacing: 0.18em;
text-transform: uppercase;
......
......@@ -272,7 +272,7 @@
}
p {
@include m.display-italic(22px);
//@include m.display-italic(22px, 600);
color: var(--ink-dim);
max-width: 520px;
margin: 0 auto;
......
:root{--bg: #0a0707;--bg-2: #120c0c;--paper: #e8e2d6;--ink: #d8d2c4;--ink-dim: #8a847a;--ink-faint: #4a4540;--accent: #b91c1c;--accent-bright: #ef2b2b;--accent-deep: #5a0e0e;--rule: #1f1616;--vignette: rgba(0, 0, 0, 0.85);--section-margin-bottom: 80px;--font-display: "Cormorant Garamond", "EB Garamond", Georgia, serif;--font-body: "EB Garamond", Georgia, "Times New Roman", serif;--font-mono: "JetBrains Mono", ui-monospace, "Courier New", monospace;--font-sans: "Inter Tight", system-ui, sans-serif}:root[data-mode=dim]{--bg: #1a1414;--bg-2: #221919;--ink: #e8e2d6;--ink-dim: #a8a298;--ink-faint: #5a5550;--rule: #2f2222;--vignette: rgba(0, 0, 0, 0.55)}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:19px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}body{min-height:100vh;position:relative}.grain{position:fixed;inset:0;pointer-events:none;z-index:9000;opacity:var(--grain-opacity, 0.18);mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.6 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.vignette{position:fixed;inset:0;pointer-events:none;z-index:8500;background:radial-gradient(ellipse at center, transparent 40%, var(--vignette) 100%);animation:vignette-pulse 9s ease-in-out infinite}@keyframes vignette-pulse{0%,100%{opacity:.85}50%{opacity:1}}.flicker{position:fixed;inset:0;pointer-events:none;z-index:8000;background:rgba(255,240,230,.02);animation:flicker 7s steps(2, end) infinite}@keyframes flicker{0%,92%,100%{opacity:0}93%{opacity:1}94%{opacity:.2}95%{opacity:.9}96%{opacity:0}}[data-effects=off] .grain,[data-effects=off] .vignette,[data-effects=off] .flicker{display:none}[data-effects=off] .reveal{opacity:1;transform:none}[data-effects=off] .glitch::before,[data-effects=off] .glitch::after{display:none}.topbar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:28px 40px;pointer-events:none}.topbar>*{pointer-events:auto}.wordmark{font-family:var(--font-display);font-weight:500;font-size:17px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:12px}.wordmark::before{content:"";width:8px;height:8px;background:var(--accent);border-radius:50%;box-shadow:0 0 12px var(--accent)}.menu-btn{background:rgba(0,0,0,0);border:none;color:var(--ink);cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;align-items:flex-end}.menu-btn:hover{color:var(--accent-bright)}.menu-btn-lines{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.menu-btn-lines span{display:block;height:1px;background:currentColor}.menu-btn-lines span:nth-child(1){width:28px}.menu-btn-lines span:nth-child(2){width:20px}.menu-btn-lines span:nth-child(3){width:28px}.menu-overlay{position:fixed;inset:0;background:var(--bg);z-index:1500;opacity:0;pointer-events:none;transition:opacity .5s ease}.menu-overlay.open{opacity:1;pointer-events:auto}.menu-overlay::before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.6 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");opacity:.15;mix-blend-mode:overlay;pointer-events:none}.menu-close{position:absolute;top:28px;right:40px;background:rgba(0,0,0,0);border:none;color:var(--ink);font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:10px;z-index:10}.menu-close:hover{color:var(--accent-bright)}.menu-inner{position:absolute;inset:0;display:grid;grid-template-columns:1fr 360px;grid-template-rows:auto 1fr;grid-template-areas:"head head" "list side";padding:90px 64px 48px;gap:0 64px;max-height:100vh}.menu-head{grid-area:head;display:flex;align-items:center;gap:32px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--rule);flex-wrap:wrap}.menu-filter{flex:1;min-width:220px;background:rgba(0,0,0,0);border:1px solid var(--rule);color:var(--ink);padding:12px 16px;font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;outline:none;transition:border-color .2s}.menu-filter:focus{border-color:var(--accent)}.menu-filter::-moz-placeholder{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.15em;font-size:11px}.menu-filter::placeholder{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.15em;font-size:11px}.menu-section-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:12px;white-space:nowrap}.menu-section-label::after{content:"";width:80px;height:1px;background:var(--accent-deep)}.menu-list{grid-area:list;overflow-y:auto;padding-right:24px;scrollbar-width:thin;scrollbar-color:var(--accent-deep) rgba(0,0,0,0)}.menu-list::-webkit-scrollbar{width:6px}.menu-list::-webkit-scrollbar-thumb{background:var(--accent-deep)}.menu-list::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.menu-list.is-empty .menu-empty{display:block}.menu-list.is-empty .menu-part{display:none}.menu-part{margin-bottom:40px}.menu-part-head{position:-webkit-sticky;position:sticky;top:0;background:linear-gradient(to bottom, var(--bg) 70%, transparent);padding:8px 0 14px;display:flex;align-items:baseline;gap:16px;border-bottom:1px solid var(--rule);margin-bottom:8px;z-index:2}.menu-part-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent)}.menu-part-sub{font-family:var(--font-display);font-size:18px;font-style:italic;font-weight:400;color:var(--ink-dim);letter-spacing:0}.menu-chapters{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.menu-chapters li{border-bottom:1px solid var(--rule);transition:opacity .2s}.menu-chapters li.hidden{display:none}.menu-chapters li.current{position:relative}.menu-chapters li.current a{color:var(--accent-bright)}.menu-chapters li.current .num{color:var(--accent-bright)}.menu-chapters li.current a::before{width:2px;background:var(--accent-bright)}.menu-chapters li.current::after{content:"READING";position:absolute;right:0;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:var(--accent);padding:4px 8px;border:1px solid var(--accent-deep)}.menu-chapters a{display:grid;grid-template-columns:36px 1fr;gap:20px;align-items:baseline;padding:14px 0 14px 14px;text-decoration:none;color:var(--ink);font-family:var(--font-display);font-size:22px;font-style:italic;font-weight:400;font-weight:400;transition:color .25s,padding .25s,background .25s;position:relative;text-wrap:balance}.menu-chapters a:hover{color:var(--accent-bright);padding-left:22px;background:rgba(185,28,28,.04)}.menu-chapters a:hover::before{width:2px}.menu-chapters a::before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--accent);transition:width .25s}.menu-chapters .num{font-family:var(--font-mono);font-style:normal;font-size:11px;letter-spacing:.2em;color:var(--ink-faint);align-self:center}.menu-chapters .title{line-height:1.2}.menu-side{grid-area:side;align-self:stretch;border-left:1px solid var(--rule);padding-left:40px;display:flex;flex-direction:column;gap:24px}.menu-about{font-family:var(--font-display);font-size:19px;font-style:italic;font-weight:400;color:var(--ink-dim);line-height:1.5}.menu-progress{margin-top:auto;padding-top:24px;border-top:1px solid var(--rule)}.menu-progress-bar{height:2px;background:var(--rule);margin-bottom:12px;position:relative}.menu-progress-bar span{position:absolute;left:0;top:0;bottom:0;background:var(--accent);box-shadow:0 0 8px var(--accent)}.menu-progress-meta{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-dim)}.menu-progress-meta .accent{color:var(--accent-bright)}.menu-empty{padding:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);text-align:center;display:none}.chapter-footer{position:relative;padding:120px 40px 80px;border-top:1px solid var(--rule);display:grid;grid-template-columns:1fr 1fr;gap:40px;background:var(--bg)}.chapter-footer::before{content:"";position:absolute;top:-1px;left:50%;transform:translateX(-50%);width:12px;height:12px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px var(--bg),0 0 20px var(--accent)}.nav-card{text-decoration:none;color:var(--ink);display:block;padding:28px;border:1px solid var(--rule);transition:border-color .3s,background .3s,transform .4s;position:relative;overflow:hidden;min-height:180px}.nav-card:hover{border-color:var(--accent);background:rgba(185,28,28,.05)}.nav-card:hover .arrow{color:var(--accent-bright)}.nav-card.disabled{opacity:.3;pointer-events:none}.nav-card.prev .arrow{left:28px}.nav-card.prev:hover .arrow{transform:translateX(-6px)}.nav-card.next{text-align:right}.nav-card.next .arrow{right:28px}.nav-card.next:hover .arrow{transform:translateX(6px)}.nav-card .label,.nav-card .num-big,.nav-card .title{display:block}.nav-card .label{font-family:var(--font-mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:16px;display:flex;align-items:center;gap:10px}.nav-card .num-big{font-family:var(--font-display);font-size:14px;letter-spacing:.2em;color:var(--accent);margin-bottom:8px}.nav-card .title{font-family:var(--font-display);font-size:28px;font-style:italic;font-weight:400;line-height:1.2}.nav-card .arrow{position:absolute;bottom:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);transition:color .3s,transform .3s}.brush-divider{width:100%;height:24px;margin:80px 0;opacity:.7}.reveal{opacity:0;transform:translateY(30px);transition:opacity 1.2s ease,transform 1.2s ease}.reveal.in{opacity:1;transform:translateY(0)}.glitch{position:relative;display:inline-block;color:var(--ink)}.glitch::before,.glitch::after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;pointer-events:none;opacity:.7}.glitch::before{color:var(--accent-bright);transform:translate(-1.5px, 0);mix-blend-mode:screen;animation:glitch-shift 4s infinite steps(2, end)}.glitch::after{color:#1ea7c4;transform:translate(1.5px, 0);mix-blend-mode:screen;animation:glitch-shift 4.3s infinite steps(2, end) reverse}@keyframes glitch-shift{0%,88%,100%{transform:translate(0, 0);opacity:0}90%{transform:translate(-2px, 0.5px);opacity:.8}92%{transform:translate(2px, -0.5px);opacity:.6}94%{transform:translate(-1px, 0);opacity:.4}}.progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);z-index:200;width:0%;transition:width .1s linear;box-shadow:0 0 8px var(--accent)}.mono{font-family:var(--font-mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase}.dim{color:var(--ink-dim)}.faint{color:var(--ink-faint)}::-moz-selection{background:var(--accent);color:var(--paper)}::selection{background:var(--accent);color:var(--paper)}@media(max-width: 1100px){.menu-inner{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;grid-template-areas:"head" "list" "side";padding:80px 32px 24px;gap:16px}.menu-list{min-height:50vh;padding-right:8px}.menu-side{border-left:none;border-top:1px solid var(--rule);padding-left:0;padding-top:16px;gap:12px;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap}.menu-side .menu-section-label{display:none}.menu-about{display:none}.menu-progress{margin-top:0;padding-top:0;border-top:none;flex:1;min-width:200px}.menu-chapters{grid-template-columns:1fr}}@media(max-width: 600px){.menu-close{top:18px;right:20px}.menu-inner{padding:70px 20px 24px}.menu-list{min-height:55vh}.menu-chapters a{font-size:19px;padding:12px 0 12px 10px}.menu-chapters .current::after{display:none}.menu-head{gap:16px}}
:root{--bg: #0a0707;--bg-2: #120c0c;--paper: #e8e2d6;--ink: #d8d2c4;--ink-dim: #8a847a;--ink-faint: #4a4540;--accent: #b91c1c;--accent-bright: #ef2b2b;--accent-deep: #5a0e0e;--rule: #1f1616;--vignette: rgba(0, 0, 0, 0.85);--section-margin-bottom: 80px;--font-display: "Cormorant Garamond", "EB Garamond", Georgia, serif;--font-body: "EB Garamond", Georgia, "Times New Roman", serif;--font-mono: "JetBrains Mono", ui-monospace, "Courier New", monospace;--font-sans: "Inter Tight", system-ui, sans-serif}:root[data-mode=dim]{--bg: #1a1414;--bg-2: #221919;--ink: #e8e2d6;--ink-dim: #a8a298;--ink-faint: #5a5550;--rule: #2f2222;--vignette: rgba(0, 0, 0, 0.55)}@font-face{font-display:swap;font-family:"Cormorant Garamond";font-style:normal;font-weight:300;src:url("../fonts/cormorant-garamond-v21-latin-300.woff2") format("woff2"),url("../fonts/cormorant-garamond-v21-latin-300.ttf") format("truetype")}@font-face{font-display:swap;font-family:"Cormorant Garamond";font-style:italic;font-weight:300;src:url("../fonts/cormorant-garamond-v21-latin-300italic.woff2") format("woff2"),url("../fonts/cormorant-garamond-v21-latin-300italic.ttf") format("truetype")}@font-face{font-display:swap;font-family:"Cormorant Garamond";font-style:normal;font-weight:400;src:url("../fonts/cormorant-garamond-v21-latin-regular.woff2") format("woff2"),url("../fonts/cormorant-garamond-v21-latin-regular.ttf") format("truetype")}@font-face{font-display:swap;font-family:"Cormorant Garamond";font-style:italic;font-weight:400;src:url("../fonts/cormorant-garamond-v21-latin-italic.woff2") format("woff2"),url("../fonts/cormorant-garamond-v21-latin-italic.ttf") format("truetype")}@font-face{font-display:swap;font-family:"Cormorant Garamond";font-style:normal;font-weight:600;src:url("../fonts/cormorant-garamond-v21-latin-600.woff2") format("woff2"),url("../fonts/cormorant-garamond-v21-latin-600.ttf") format("truetype")}@font-face{font-display:swap;font-family:"Cormorant Garamond";font-style:italic;font-weight:600;src:url("../fonts/cormorant-garamond-v21-latin-600italic.woff2") format("woff2"),url("../fonts/cormorant-garamond-v21-latin-600italic.ttf") format("truetype")}@font-face{font-display:swap;font-family:"EB Garamond";font-style:normal;font-weight:400;src:url("../fonts/eb-garamond-v32-latin-regular.woff2") format("woff2"),url("../fonts/eb-garamond-v32-latin-regular.ttf") format("truetype")}@font-face{font-display:swap;font-family:"EB Garamond";font-style:italic;font-weight:400;src:url("../fonts/eb-garamond-v32-latin-italic.woff2") format("woff2"),url("../fonts/eb-garamond-v32-latin-italic.ttf") format("truetype")}@font-face{font-display:swap;font-family:"EB Garamond";font-style:normal;font-weight:600;src:url("../fonts/eb-garamond-v32-latin-600.woff2") format("woff2"),url("../fonts/eb-garamond-v32-latin-600.ttf") format("truetype")}@font-face{font-display:swap;font-family:"EB Garamond";font-style:italic;font-weight:600;src:url("../fonts/eb-garamond-v32-latin-600italic.woff2") format("woff2"),url("../fonts/eb-garamond-v32-latin-600italic.ttf") format("truetype")}@font-face{font-display:swap;font-family:"JetBrains Mono";font-style:normal;font-weight:400;src:url("../fonts/jetbrains-mono-v24-latin-regular.woff2") format("woff2"),url("../fonts/jetbrains-mono-v24-latin-regular.ttf") format("truetype")}@font-face{font-display:swap;font-family:"Inter Tight";font-style:normal;font-weight:400;src:url("../fonts/inter-tight-v9-latin-regular.woff2") format("woff2"),url("../fonts/inter-tight-v9-latin-regular.ttf") format("truetype")}@font-face{font-display:swap;font-family:"Inter Tight";font-style:normal;font-weight:600;src:url("../fonts/inter-tight-v9-latin-600.woff2") format("woff2"),url("../fonts/inter-tight-v9-latin-600.ttf") format("truetype")}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:19px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}body{min-height:100vh;position:relative}.grain{position:fixed;inset:0;pointer-events:none;z-index:9000;opacity:var(--grain-opacity, 0.18);mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.6 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.vignette{position:fixed;inset:0;pointer-events:none;z-index:8500;background:radial-gradient(ellipse at center, transparent 40%, var(--vignette) 100%);animation:vignette-pulse 9s ease-in-out infinite}@keyframes vignette-pulse{0%,100%{opacity:.85}50%{opacity:1}}.flicker{position:fixed;inset:0;pointer-events:none;z-index:8000;background:rgba(255,240,230,.02);animation:flicker 7s steps(2, end) infinite}@keyframes flicker{0%,92%,100%{opacity:0}93%{opacity:1}94%{opacity:.2}95%{opacity:.9}96%{opacity:0}}[data-effects=off] .grain,[data-effects=off] .vignette,[data-effects=off] .flicker{display:none}[data-effects=off] .reveal{opacity:1;transform:none}[data-effects=off] .glitch::before,[data-effects=off] .glitch::after{display:none}.topbar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:28px 40px;pointer-events:none}.topbar>*{pointer-events:auto}.wordmark{font-family:var(--font-display);font-weight:400;font-size:17px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:12px}.wordmark::before{content:"";width:8px;height:8px;background:var(--accent);border-radius:50%;box-shadow:0 0 12px var(--accent)}.menu-btn{background:rgba(0,0,0,0);border:none;color:var(--ink);cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;align-items:flex-end}.menu-btn:hover{color:var(--accent-bright)}.menu-btn-lines{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.menu-btn-lines span{display:block;height:1px;background:currentColor}.menu-btn-lines span:nth-child(1){width:28px}.menu-btn-lines span:nth-child(2){width:20px}.menu-btn-lines span:nth-child(3){width:28px}.menu-overlay{position:fixed;inset:0;background:var(--bg);z-index:1500;opacity:0;pointer-events:none;transition:opacity .5s ease}.menu-overlay.open{opacity:1;pointer-events:auto}.menu-overlay::before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.6 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");opacity:.15;mix-blend-mode:overlay;pointer-events:none}.menu-close{position:absolute;top:28px;right:40px;background:rgba(0,0,0,0);border:none;color:var(--ink);font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:10px;z-index:10}.menu-close:hover{color:var(--accent-bright)}.menu-inner{position:absolute;inset:0;display:grid;grid-template-columns:1fr 360px;grid-template-rows:auto 1fr;grid-template-areas:"head head" "list side";padding:90px 64px 48px;gap:0 64px;max-height:100vh}.menu-head{grid-area:head;display:flex;align-items:center;gap:32px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--rule);flex-wrap:wrap}.menu-filter{flex:1;min-width:220px;background:rgba(0,0,0,0);border:1px solid var(--rule);color:var(--ink);padding:12px 16px;font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;outline:none;transition:border-color .2s}.menu-filter:focus{border-color:var(--accent)}.menu-filter::-moz-placeholder{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.15em;font-size:11px}.menu-filter::placeholder{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.15em;font-size:11px}.menu-section-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:12px;white-space:nowrap}.menu-section-label::after{content:"";width:80px;height:1px;background:var(--accent-deep)}.menu-list{grid-area:list;overflow-y:auto;padding-right:24px;scrollbar-width:thin;scrollbar-color:var(--accent-deep) rgba(0,0,0,0)}.menu-list::-webkit-scrollbar{width:6px}.menu-list::-webkit-scrollbar-thumb{background:var(--accent-deep)}.menu-list::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.menu-list.is-empty .menu-empty{display:block}.menu-list.is-empty .menu-part{display:none}.menu-part{margin-bottom:40px}.menu-part-head{position:-webkit-sticky;position:sticky;top:0;background:linear-gradient(to bottom, var(--bg) 70%, transparent);padding:8px 0 14px;display:flex;align-items:baseline;gap:16px;border-bottom:1px solid var(--rule);margin-bottom:8px;z-index:2}.menu-part-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent)}.menu-part-sub{font-family:var(--font-display);font-size:18px;font-style:italic;font-weight:400;color:var(--ink-dim);letter-spacing:0}.menu-chapters{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.menu-chapters li{border-bottom:1px solid var(--rule);transition:opacity .2s}.menu-chapters li.hidden{display:none}.menu-chapters li.current{position:relative}.menu-chapters li.current a{color:var(--accent-bright)}.menu-chapters li.current .num{color:var(--accent-bright)}.menu-chapters li.current a::before{width:2px;background:var(--accent-bright)}.menu-chapters li.current::after{content:"READING";position:absolute;right:0;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:var(--accent);padding:4px 8px;border:1px solid var(--accent-deep)}.menu-chapters a{display:grid;grid-template-columns:36px 1fr;gap:20px;align-items:baseline;padding:14px 0 14px 14px;text-decoration:none;color:var(--ink);font-family:var(--font-display);font-size:22px;font-style:italic;font-weight:400;font-weight:400;transition:color .25s,padding .25s,background .25s;position:relative;text-wrap:balance}.menu-chapters a:hover{color:var(--accent-bright);padding-left:22px;background:rgba(185,28,28,.04)}.menu-chapters a:hover::before{width:2px}.menu-chapters a::before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--accent);transition:width .25s}.menu-chapters .num{font-family:var(--font-mono);font-style:normal;font-size:11px;letter-spacing:.2em;color:var(--ink-faint);align-self:center}.menu-chapters .title{line-height:1.2}.menu-side{grid-area:side;align-self:stretch;border-left:1px solid var(--rule);padding-left:40px;display:flex;flex-direction:column;gap:24px}.menu-about{font-family:var(--font-display);font-size:19px;font-style:italic;font-weight:400;color:var(--ink-dim);line-height:1.5}.menu-progress{margin-top:auto;padding-top:24px;border-top:1px solid var(--rule)}.menu-progress-bar{height:2px;background:var(--rule);margin-bottom:12px;position:relative}.menu-progress-bar span{position:absolute;left:0;top:0;bottom:0;background:var(--accent);box-shadow:0 0 8px var(--accent)}.menu-progress-meta{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-dim)}.menu-progress-meta .accent{color:var(--accent-bright)}.menu-empty{padding:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);text-align:center;display:none}.chapter-footer{position:relative;padding:120px 40px 80px;border-top:1px solid var(--rule);display:grid;grid-template-columns:1fr 1fr;gap:40px;background:var(--bg)}.chapter-footer::before{content:"";position:absolute;top:-1px;left:50%;transform:translateX(-50%);width:12px;height:12px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px var(--bg),0 0 20px var(--accent)}.nav-card{text-decoration:none;color:var(--ink);display:block;padding:28px;border:1px solid var(--rule);transition:border-color .3s,background .3s,transform .4s;position:relative;overflow:hidden;min-height:180px}.nav-card:hover{border-color:var(--accent);background:rgba(185,28,28,.05)}.nav-card:hover .arrow{color:var(--accent-bright)}.nav-card.disabled{opacity:.3;pointer-events:none}.nav-card.prev .arrow{left:28px}.nav-card.prev:hover .arrow{transform:translateX(-6px)}.nav-card.next{text-align:right}.nav-card.next .arrow{right:28px}.nav-card.next:hover .arrow{transform:translateX(6px)}.nav-card .label,.nav-card .num-big,.nav-card .title{display:block}.nav-card .label{font-family:var(--font-mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:16px;display:flex;align-items:center;gap:10px}.nav-card .num-big{font-family:var(--font-display);font-size:14px;letter-spacing:.2em;color:var(--accent);margin-bottom:8px}.nav-card .title{font-family:var(--font-display);font-size:28px;font-style:italic;font-weight:400;line-height:1.2}.nav-card .arrow{position:absolute;bottom:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);transition:color .3s,transform .3s}.brush-divider{width:100%;height:24px;margin:80px 0;opacity:.7}.reveal{opacity:0;transform:translateY(30px);transition:opacity 1.2s ease,transform 1.2s ease}.reveal.in{opacity:1;transform:translateY(0)}.glitch{position:relative;display:inline-block;color:var(--ink)}.glitch::before,.glitch::after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;pointer-events:none;opacity:.7}.glitch::before{color:var(--accent-bright);transform:translate(-1.5px, 0);mix-blend-mode:screen;animation:glitch-shift 4s infinite steps(2, end)}.glitch::after{color:#1ea7c4;transform:translate(1.5px, 0);mix-blend-mode:screen;animation:glitch-shift 4.3s infinite steps(2, end) reverse}@keyframes glitch-shift{0%,88%,100%{transform:translate(0, 0);opacity:0}90%{transform:translate(-2px, 0.5px);opacity:.8}92%{transform:translate(2px, -0.5px);opacity:.6}94%{transform:translate(-1px, 0);opacity:.4}}.progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);z-index:200;width:0%;transition:width .1s linear;box-shadow:0 0 8px var(--accent)}.mono{font-family:var(--font-mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase}.dim{color:var(--ink-dim)}.faint{color:var(--ink-faint)}::-moz-selection{background:var(--accent);color:var(--paper)}::selection{background:var(--accent);color:var(--paper)}@media(max-width: 1100px){.menu-inner{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;grid-template-areas:"head" "list" "side";padding:80px 32px 24px;gap:16px}.menu-list{min-height:50vh;padding-right:8px}.menu-side{border-left:none;border-top:1px solid var(--rule);padding-left:0;padding-top:16px;gap:12px;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap}.menu-side .menu-section-label{display:none}.menu-about{display:none}.menu-progress{margin-top:0;padding-top:0;border-top:none;flex:1;min-width:200px}.menu-chapters{grid-template-columns:1fr}}@media(max-width: 600px){.menu-close{top:18px;right:20px}.menu-inner{padding:70px 20px 24px}.menu-list{min-height:55vh}.menu-chapters a{font-size:19px;padding:12px 0 12px 10px}.menu-chapters .current::after{display:none}.menu-head{gap:16px}}
/*# sourceMappingURL=shared.css.map */
\ No newline at end of file
{"version":3,"sources":["../../../src/css/_vars.scss","../../../src/css/shared.scss","../../../src/css/_mixins.scss"],"names":[],"mappings":"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","file":"shared.css"}
\ No newline at end of file
{"version":3,"sources":["../../../src/css/_vars.scss","../../../src/css/_fonts.scss","../../../src/css/shared.scss","../../../src/css/_mixins.scss"],"names":[],"mappings":"AAEA,MACE,aAAA,CACA,eAAA,CACA,gBAAA,CACA,cAAA,CACA,kBAAA,CACA,oBAAA,CACA,iBAAA,CACA,wBAAA,CACA,sBAAA,CACA,eAAA,CACA,+BAAA,CACA,6BAAA,CAEA,mEAAA,CACA,6DAAA,CACA,qEAAA,CACA,iDAAA,CAGF,qBACE,aAAA,CACA,eAAA,CACA,cAAA,CACA,kBAAA,CACA,oBAAA,CACA,eAAA,CACA,+BAAA,CC1BF,WACI,iBAAA,CACA,gCAAA,CACA,iBAAA,CACA,eAAA,CACA,kJACI,CAKR,WACI,iBAAA,CACA,gCAAA,CACA,iBAAA,CACA,eAAA,CACA,8JACI,CAKR,WACI,iBAAA,CACA,gCAAA,CACA,iBAAA,CACA,eAAA,CACA,0JACI,CAKR,WACI,iBAAA,CACA,gCAAA,CACA,iBAAA,CACA,eAAA,CACA,wJACI,CAKR,WACI,iBAAA,CACA,gCAAA,CACA,iBAAA,CACA,eAAA,CACA,kJACI,CAKR,WACI,iBAAA,CACA,gCAAA,CACA,iBAAA,CACA,eAAA,CACA,8JACI,CAQR,WACI,iBAAA,CACA,yBAAA,CACA,iBAAA,CACA,eAAA,CACA,4IACI,CAKR,WACI,iBAAA,CACA,yBAAA,CACA,iBAAA,CACA,eAAA,CACA,0IACI,CAKR,WACI,iBAAA,CACA,yBAAA,CACA,iBAAA,CACA,eAAA,CACA,oIACI,CAKR,WACI,iBAAA,CACA,yBAAA,CACA,iBAAA,CACA,eAAA,CACA,gJACI,CAQR,WACI,iBAAA,CACA,4BAAA,CACA,iBAAA,CACA,eAAA,CACA,kJACI,CAQR,WACI,iBAAA,CACA,yBAAA,CACA,iBAAA,CACA,eAAA,CACA,0IACI,CAKR,WACI,iBAAA,CACA,yBAAA,CACA,iBAAA,CACA,eAAA,CACA,kIACI,CC9IR,EAAA,qBAAA,CAAA,QAAA,CAAA,SAAA,CAEA,UACE,oBAAA,CACA,gBAAA,CACA,4BAAA,CACA,cAAA,CACA,eAAA,CACA,kCAAA,CACA,iCAAA,CACA,eAAA,CAGF,KACE,gBAAA,CACA,iBAAA,CAIF,OACE,cAAA,CACA,OAAA,CACA,mBAAA,CACA,YAAA,CACA,kCAAA,CACA,sBAAA,CACA,yWAAA,CAGF,UACE,cAAA,CACA,OAAA,CACA,mBAAA,CACA,YAAA,CACA,oFAAA,CACA,gDAAA,CAGF,0BACE,QAAA,WAAA,CACA,IAAA,SAAA,CAAA,CAGF,SACE,cAAA,CACA,OAAA,CACA,mBAAA,CACA,YAAA,CACA,gCAAA,CACA,2CAAA,CAGF,mBACE,YAAA,SAAA,CACA,IAAA,SAAA,CACA,IAAA,UAAA,CACA,IAAA,UAAA,CACA,IAAA,SAAA,CAAA,CAIA,mFAAA,YAAA,CACA,2BAAA,SAAA,CAAA,cAAA,CAEE,qEAAA,YAAA,CAKJ,QACE,cAAA,CACA,KAAA,CAAA,MAAA,CAAA,OAAA,CACA,WAAA,CACA,YAAA,CACA,kBAAA,CACA,6BAAA,CACA,iBAAA,CACA,mBAAA,CAEA,UAAA,mBAAA,CAGF,UACE,+BAAA,CACA,eAAA,CACA,cAAA,CACA,oBAAA,CACA,wBAAA,CACA,gBAAA,CACA,oBAAA,CACA,YAAA,CACA,kBAAA,CACA,QAAA,CAEA,kBACE,UAAA,CACA,SAAA,CACA,UAAA,CACA,wBAAA,CACA,iBAAA,CACA,iCAAA,CAKJ,UACE,wBAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,YAAA,CACA,qBAAA,CACA,OAAA,CACA,YAAA,CC3GA,4BAAA,CACA,cD2GsB,CC1GtB,mBD0G4B,CCzG5B,wBAAA,CD0GA,oBAAA,CAEA,gBAAA,0BAAA,CAEA,gBACE,YAAA,CACA,qBAAA,CACA,OAAA,CACA,oBAAA,CAEA,qBACE,aAAA,CACA,UAAA,CACA,uBAAA,CAEA,kCAAA,UAAA,CACA,kCAAA,UAAA,CACA,kCAAA,UAAA,CAMN,cACE,cAAA,CACA,OAAA,CACA,oBAAA,CACA,YAAA,CACA,SAAA,CACA,mBAAA,CACA,2BAAA,CAEA,mBAAA,SAAA,CAAA,mBAAA,CAEA,sBACE,UAAA,CACA,iBAAA,CACA,OAAA,CACA,yWAAA,CACA,WAAA,CACA,sBAAA,CACA,mBAAA,CAIJ,YACE,iBAAA,CACA,QAAA,CACA,UAAA,CACA,wBAAA,CACA,WAAA,CACA,gBAAA,CChKA,4BAAA,CACA,cDgKsB,CC/JtB,mBD+J4B,CC9J5B,wBAAA,CD+JA,cAAA,CACA,YAAA,CACA,UAAA,CAEA,kBAAA,0BAAA,CAGF,YACE,iBAAA,CACA,OAAA,CACA,YAAA,CACA,+BAAA,CACA,2BAAA,CACA,2CAAA,CACA,sBAAA,CACA,UAAA,CACA,gBAAA,CAGF,WACE,cAAA,CACA,YAAA,CACA,kBAAA,CACA,QAAA,CACA,mBAAA,CACA,kBAAA,CACA,mCAAA,CACA,cAAA,CAGF,aACE,MAAA,CACA,eAAA,CACA,wBAAA,CACA,4BAAA,CACA,gBAAA,CACA,iBAAA,CACA,4BAAA,CACA,cAAA,CACA,mBAAA,CACA,YAAA,CACA,2BAAA,CAEA,mBAAA,0BAAA,CAEA,+BACE,sBAAA,CACA,wBAAA,CACA,oBAAA,CACA,cAAA,CAJF,0BACE,sBAAA,CACA,wBAAA,CACA,oBAAA,CACA,cAAA,CAIJ,oBCvNE,4BAAA,CACA,cDuNsB,CCtNtB,oBDsN4B,CCrN5B,wBAAA,CDsNA,mBAAA,CACA,YAAA,CACA,kBAAA,CACA,QAAA,CACA,kBAAA,CAEA,2BACE,UAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAIJ,WACE,cAAA,CACA,eAAA,CACA,kBAAA,CACA,oBAAA,CACA,gDAAA,CAEA,8BAAA,SAAA,CACA,oCAAA,6BAAA,CACA,oCAAA,wBAAA,CAGE,gCAAA,aAAA,CACA,+BAAA,YAAA,CAIJ,WACE,kBAAA,CAEA,gBACE,uBAAA,CAAA,eAAA,CACA,KAAA,CACA,iEAAA,CACA,kBAAA,CACA,YAAA,CACA,oBAAA,CACA,QAAA,CACA,mCAAA,CACA,iBAAA,CACA,SAAA,CAGF,iBCxQA,4BAAA,CACA,cDwQwB,CCvQxB,mBDuQ8B,CCtQ9B,wBAAA,CDuQE,mBAAA,CAGF,eCrQA,+BAAA,CACA,cDqQ4B,CCpQ5B,iBAAA,CACA,eAJoC,CDwQlC,oBAAA,CACA,gBAAA,CAIJ,eACE,eAAA,CACA,YAAA,CACA,6BAAA,CACA,UAAA,CAEA,kBACE,mCAAA,CACA,sBAAA,CAEA,yBAAA,YAAA,CAEA,0BACE,iBAAA,CAEA,4BAAA,0BAAA,CACA,+BAAA,0BAAA,CACA,oCACE,SAAA,CACA,+BAAA,CAGF,iCACE,iBAAA,CACA,iBAAA,CACA,OAAA,CACA,OAAA,CACA,0BAAA,CC/SN,4BAAA,CACA,aD+S4B,CC9S5B,oBD8SiC,CC7SjC,wBAAA,CD8SM,mBAAA,CACA,eAAA,CACA,mCAAA,CAKN,iBACE,YAAA,CACA,8BAAA,CACA,QAAA,CACA,oBAAA,CACA,wBAAA,CACA,oBAAA,CACA,gBAAA,CCvTF,+BAAA,CACA,cDuT4B,CCtT5B,iBAAA,CACA,eAJoC,CD0TlC,eAAA,CACA,kDAAA,CACA,iBAAA,CACA,iBAAA,CAEA,uBACE,0BAAA,CACA,iBAAA,CACA,8BAAA,CAEA,+BAAA,SAAA,CAGF,yBACE,UAAA,CACA,iBAAA,CACA,MAAA,CACA,KAAA,CACA,QAAA,CACA,OAAA,CACA,wBAAA,CACA,qBAAA,CAIJ,oBACE,4BAAA,CACA,iBAAA,CACA,cAAA,CACA,mBAAA,CACA,sBAAA,CACA,iBAAA,CAGF,sBAAA,eAAA,CAGF,WACE,cAAA,CACA,kBAAA,CACA,iCAAA,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,QAAA,CAGF,YCxWE,+BAAA,CACA,cDwW0B,CCvW1B,iBAAA,CACA,eAJoC,CD2WpC,oBAAA,CACA,eAAA,CAGF,eACE,eAAA,CACA,gBAAA,CACA,gCAAA,CAEA,mBACE,UAAA,CACA,sBAAA,CACA,kBAAA,CACA,iBAAA,CAEA,wBACE,iBAAA,CACA,MAAA,CACA,KAAA,CACA,QAAA,CACA,wBAAA,CACA,gCAAA,CAIJ,oBACE,YAAA,CACA,6BAAA,CC7YF,4BAAA,CACA,cD6YwB,CC5YxB,oBD4Y8B,CC3Y9B,wBAAA,CD4YE,oBAAA,CAEA,4BAAA,0BAAA,CAIJ,YACE,YAAA,CCtZA,4BAAA,CACA,cDsZsB,CCrZtB,mBDqZ4B,CCpZ5B,wBAAA,CDqZA,sBAAA,CACA,iBAAA,CACA,YAAA,CAIF,gBACE,iBAAA,CACA,uBAAA,CACA,gCAAA,CACA,YAAA,CACA,6BAAA,CACA,QAAA,CACA,oBAAA,CAEA,wBACE,UAAA,CACA,iBAAA,CACA,QAAA,CACA,QAAA,CACA,0BAAA,CACA,UAAA,CACA,WAAA,CACA,wBAAA,CACA,iBAAA,CACA,qDAAA,CAIJ,UACE,oBAAA,CACA,gBAAA,CACA,aAAA,CACA,YAAA,CACA,4BAAA,CACA,wDAAA,CACA,iBAAA,CACA,eAAA,CACA,gBAAA,CAEA,gBACE,0BAAA,CACA,8BAAA,CAEA,uBAAA,0BAAA,CAGF,mBACE,UAAA,CACA,mBAAA,CAIA,sBAAA,SAAA,CACA,4BAAA,0BAAA,CAGF,eACE,gBAAA,CACA,sBAAA,UAAA,CACA,4BAAA,yBAAA,CAGF,qDAAA,aAAA,CAEA,iBCzdA,4BAAA,CACA,cDydwB,CCxdxB,oBDwd8B,CCvd9B,wBAAA,CDwdE,sBAAA,CACA,kBAAA,CACA,YAAA,CACA,kBAAA,CACA,QAAA,CAGF,mBACE,+BAAA,CACA,cAAA,CACA,mBAAA,CACA,mBAAA,CACA,iBAAA,CAGF,iBCleA,+BAAA,CACA,cDke4B,CCje5B,iBAAA,CACA,eAJoC,CDqelC,eAAA,CAGF,iBACE,iBAAA,CACA,WAAA,CCjfF,4BAAA,CACA,cDifwB,CChfxB,mBDgf8B,CC/e9B,wBAAA,CDgfE,sBAAA,CACA,kCAAA,CAKJ,eACE,UAAA,CACA,WAAA,CACA,aAAA,CACA,UAAA,CAIF,QACE,SAAA,CACA,0BAAA,CACA,gDAAA,CAEA,WACE,SAAA,CACA,uBAAA,CAKJ,QACE,iBAAA,CACA,oBAAA,CACA,gBAAA,CAEA,+BAEE,uBAAA,CACA,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,mBAAA,CACA,UAAA,CAGF,gBACE,0BAAA,CACA,8BAAA,CACA,qBAAA,CACA,gDAAA,CAGF,eACE,aAAA,CACA,6BAAA,CACA,qBAAA,CACA,0DAAA,CAIJ,wBACE,YAAA,yBAAA,CAAA,SAAA,CACA,IAAA,gCAAA,CAAA,UAAA,CACA,IAAA,gCAAA,CAAA,UAAA,CACA,IAAA,4BAAA,CAAA,UAAA,CAAA,CAIF,UACE,cAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,wBAAA,CACA,WAAA,CACA,QAAA,CACA,2BAAA,CACA,gCAAA,CAIF,MCjkBE,4BAAA,CACA,cDgkB4B,CC/jB5B,oBD+jBkC,CC9jBlC,wBAAA,CD+jBF,KAAA,oBAAA,CACA,OAAA,sBAAA,CAEA,iBACE,wBAAA,CACA,kBAAA,CAFF,YACE,wBAAA,CACA,kBAAA,CC9kBA,0BDmlBA,YACE,yBAAA,CACA,gCAAA,CACA,wCAAA,CACA,sBAAA,CACA,QAAA,CAGF,WAAA,eAAA,CAAA,iBAAA,CAEA,WACE,gBAAA,CACA,gCAAA,CACA,cAAA,CACA,gBAAA,CACA,QAAA,CACA,kBAAA,CACA,kBAAA,CACA,6BAAA,CACA,cAAA,CAEA,+BAAA,YAAA,CAGF,YAAA,YAAA,CAEA,eACE,YAAA,CACA,aAAA,CACA,eAAA,CACA,MAAA,CACA,eAAA,CAGF,eAAA,yBAAA,CAAA,CCrnBA,yBDynBA,YAAA,QAAA,CAAA,UAAA,CACA,YAAA,sBAAA,CACA,WAAA,eAAA,CAGE,iBAAA,cAAA,CAAA,wBAAA,CACA,+BAAA,YAAA,CAGF,WAAA,QAAA,CAAA","file":"shared.css"}
\ No newline at end of file
.chapter-page{position:relative}.chapter-hero{height:100vh;min-height:700px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.chapter-hero-bg{position:absolute;inset:-10%;background:radial-gradient(ellipse at 30% 40%, rgba(90, 14, 14, 0.6) 0%, transparent 50%),radial-gradient(ellipse at 70% 60%, rgba(20, 8, 8, 0.8) 0%, transparent 60%),var(--bg);will-change:transform}.chapter-hero-grain{position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='400' height='400'><filter id='n'><feTurbulence type='turbulence' baseFrequency='0.02' numOctaves='3' seed='3'/><feColorMatrix values='0 0 0 0 0.4 0 0 0 0 0.05 0 0 0 0 0.05 0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");opacity:.4;mix-blend-mode:multiply}.chapter-hero-content{position:relative;z-index:2;text-align:center;max-width:800px;padding:0 40px}.chapter-numeral-frame{position:relative;width:280px;height:280px;margin:0 auto 48px;display:flex;align-items:center;justify-content:center}.chapter-numeral-frame svg.ring{position:absolute;inset:0;width:100%;height:100%;animation:slow-rotate 120s linear infinite}.chapter-numeral{font-family:var(--font-display);font-size:180px;font-weight:300;font-style:italic;color:var(--accent);line-height:1;letter-spacing:-0.02em;text-shadow:0 0 40px rgba(185,28,28,.4);position:relative;z-index:2}@keyframes slow-rotate{to{transform:rotate(360deg)}}.chapter-kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.4em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:16px}.chapter-kicker .accent{color:var(--accent)}.chapter-title{font-family:var(--font-display);font-size:clamp(48px,7vw,96px);font-style:italic;font-weight:400;font-weight:400;line-height:1.05;letter-spacing:-0.02em;color:var(--paper);margin-bottom:32px}.chapter-title .typed-cursor{display:inline-block;width:.5ch;background:var(--accent);animation:blink .8s steps(2, end) infinite;margin-left:4px;height:.9em;vertical-align:-0.1em}@keyframes blink{50%{opacity:0}}.chapter-meta{display:flex;align-items:center;justify-content:center;gap:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-faint)}.chapter-meta .dot{color:var(--accent)}.scroll-cue{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);font-family:var(--font-mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-faint);display:flex;flex-direction:column;align-items:center;gap:10px;animation:bob 2.5s ease-in-out infinite}.scroll-cue::after{content:"";width:1px;height:32px;background:linear-gradient(to bottom, var(--accent), transparent)}@keyframes bob{0%,100%{transform:translate(-50%, 0);opacity:.6}50%{transform:translate(-50%, 6px);opacity:1}}.chapter-body{margin:0 auto;position:relative}.chapter-body .column-container{margin:0 auto;padding:0 40px;max-width:680px}.chapter-body p{font-family:var(--font-body);font-size:21px;line-height:1.75;color:var(--ink);margin-bottom:1.6em;text-wrap:pretty;position:relative}.chapter-body .pull{font-family:var(--font-display);font-size:38px;font-style:italic;font-weight:400;font-weight:400;line-height:1.25;color:var(--paper);margin:80px -40px;padding:0 40px;position:relative;text-wrap:balance}.chapter-body .pull::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent)}.chapter-body .key-line,.chapter-body em{font-style:italic;color:var(--accent-bright)}.prose.capitalise{padding-top:120px}.prose.capitalise p:first-of-type::first-letter{font-family:var(--font-display);font-size:5.5em;font-style:italic;font-weight:400;font-weight:400;float:left;line-height:.85;margin:.05em .12em 0 -0.05em;color:var(--accent)}.pinned-text-section{height:250vh;position:relative;margin:var(--section-margin-bottom) 0}.pinned-text-stage{position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--bg-2)}.pinned-text-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5;filter:contrast(1.2) brightness(0.5)}.pinned-text-bg.t1{background:radial-gradient(circle at 20% 80%, rgba(185, 28, 28, 0.3), transparent 40%),radial-gradient(circle at 80% 20%, rgba(40, 12, 12, 0.8), transparent 50%),linear-gradient(180deg, #0a0707 0%, #1a0a0a 50%, #0a0707 100%)}.pinned-text-overlay{position:absolute;inset:0;background-image:repeating-linear-gradient(90deg, transparent 0, transparent 80px, rgba(232, 226, 214, 0.02) 80px, rgba(232, 226, 214, 0.02) 81px)}.pinned-text-copy{position:relative;z-index:2;max-width:800px;padding:0 40px;text-align:center}.pinned-text-copy h2{font-family:var(--font-display);font-size:clamp(40px,6vw,72px);font-style:italic;font-weight:400;font-weight:400;line-height:1.1;color:var(--paper);margin-bottom:32px;text-wrap:balance}.pinned-text-copy p{font-family:var(--font-display);font-size:22px;font-style:italic;font-weight:400;color:var(--ink-dim);max-width:520px;margin:0 auto;line-height:1.5}.pinned-image-section{position:relative;-webkit-clip-path:inset(0);clip-path:inset(0);margin:var(--section-margin-bottom) 0}.pinned-image-stage{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden;margin-bottom:-100vh}.pinned-image-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(0.5)}.pinned-image-overlay{position:absolute;inset:0;background:linear-gradient(to bottom, transparent 30%, rgba(10, 7, 7, 0.85) 100%)}.pinned-image-content{position:relative;z-index:1;padding:50vh 40px 50vh;max-width:680px;margin:0 auto}.pinned-image-content p{font-family:var(--font-body);font-size:21px;line-height:1.75;color:var(--ink);margin-bottom:1.6em;text-wrap:pretty}.section-label{display:flex;align-items:center;gap:16px;max-width:680px;margin:0 auto 40px;padding:0 40px;font-family:var(--font-mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent)}.section-label::before{content:"";width:24px;height:1px;background:var(--accent)}.texture-slot{width:100%;height:60vh;margin:var(--section-margin-bottom) 0;position:relative;overflow:hidden}.texture-slot.t-rust{background:radial-gradient(ellipse at 30% 50%, rgba(120, 30, 20, 0.4), transparent 60%),radial-gradient(ellipse at 70% 30%, rgba(40, 10, 10, 0.6), transparent 50%),linear-gradient(135deg, #1a0a0a, #0a0707)}.texture-slot.t-concrete{background:radial-gradient(circle at 20% 80%, rgba(60, 40, 35, 0.3), transparent 50%),radial-gradient(circle at 80% 20%, rgba(20, 14, 14, 0.8), transparent 60%),#0d0908}.texture-slot::after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='400' height='400'><filter id='n'><feTurbulence type='turbulence' baseFrequency='0.015' numOctaves='4'/><feColorMatrix values='0 0 0 0 0.3 0 0 0 0 0.1 0 0 0 0 0.05 0 0 0 0.7 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");mix-blend-mode:multiply;opacity:.6}.texture-slot .texture-caption{position:absolute;bottom:20px;left:24px;font-family:var(--font-mono);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-dim);z-index:2}.note{margin:60px auto;padding:32px 40px;border-left:2px solid var(--accent-deep);background:rgba(185,28,28,.04)}.note,.note p{font-family:var(--font-mono);font-size:13px;line-height:1.7;color:var(--ink-dim);letter-spacing:.02em}.note .note-label{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
.chapter-page{position:relative}.chapter-hero{height:100vh;min-height:700px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.chapter-hero-bg{position:absolute;inset:-10%;background:radial-gradient(ellipse at 30% 40%, rgba(90, 14, 14, 0.6) 0%, transparent 50%),radial-gradient(ellipse at 70% 60%, rgba(20, 8, 8, 0.8) 0%, transparent 60%),var(--bg);will-change:transform}.chapter-hero-grain{position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='400' height='400'><filter id='n'><feTurbulence type='turbulence' baseFrequency='0.02' numOctaves='3' seed='3'/><feColorMatrix values='0 0 0 0 0.4 0 0 0 0 0.05 0 0 0 0 0.05 0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");opacity:.4;mix-blend-mode:multiply}.chapter-hero-content{position:relative;z-index:2;text-align:center;max-width:800px;padding:0 40px}.chapter-numeral-frame{position:relative;width:280px;height:280px;margin:0 auto 48px;display:flex;align-items:center;justify-content:center}.chapter-numeral-frame svg.ring{position:absolute;inset:0;width:100%;height:100%;animation:slow-rotate 120s linear infinite}.chapter-numeral{font-family:var(--font-display);font-size:180px;font-weight:300;font-style:italic;color:var(--accent);line-height:1;letter-spacing:-0.02em;text-shadow:0 0 40px rgba(185,28,28,.4);position:relative;z-index:2}@keyframes slow-rotate{to{transform:rotate(360deg)}}.chapter-kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.4em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:16px}.chapter-kicker .accent{color:var(--accent)}.chapter-title{font-family:var(--font-display);font-size:clamp(48px,7vw,96px);font-style:italic;font-weight:400;font-weight:400;line-height:1.05;letter-spacing:-0.02em;color:var(--paper);margin-bottom:32px}.chapter-title .typed-cursor{display:inline-block;width:.5ch;background:var(--accent);animation:blink .8s steps(2, end) infinite;margin-left:4px;height:.9em;vertical-align:-0.1em}@keyframes blink{50%{opacity:0}}.chapter-meta{display:flex;align-items:center;justify-content:center;gap:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-faint)}.chapter-meta .dot{color:var(--accent)}.scroll-cue{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);font-family:var(--font-mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-faint);display:flex;flex-direction:column;align-items:center;gap:10px;animation:bob 2.5s ease-in-out infinite}.scroll-cue::after{content:"";width:1px;height:32px;background:linear-gradient(to bottom, var(--accent), transparent)}@keyframes bob{0%,100%{transform:translate(-50%, 0);opacity:.6}50%{transform:translate(-50%, 6px);opacity:1}}.chapter-body{margin:0 auto;position:relative}.chapter-body .column-container{margin:0 auto;padding:0 40px;max-width:680px}.chapter-body p{font-family:var(--font-body);font-size:21px;line-height:1.75;color:var(--ink);margin-bottom:1.6em;text-wrap:pretty;position:relative}.chapter-body .pull{font-family:var(--font-display);font-size:38px;font-style:italic;font-weight:400;font-weight:400;line-height:1.25;color:var(--paper);margin:80px -40px;padding:0 40px;position:relative;text-wrap:balance}.chapter-body .pull::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent)}.chapter-body .key-line,.chapter-body em{font-style:italic;color:var(--accent-bright)}.prose.capitalise{padding-top:120px}.prose.capitalise p:first-of-type::first-letter{font-family:var(--font-display);font-size:5.5em;font-style:italic;font-weight:400;font-weight:400;float:left;line-height:.85;margin:.05em .12em 0 -0.05em;color:var(--accent)}.pinned-text-section{height:250vh;position:relative;margin:var(--section-margin-bottom) 0}.pinned-text-stage{position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--bg-2)}.pinned-text-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5;filter:contrast(1.2) brightness(0.5)}.pinned-text-bg.t1{background:radial-gradient(circle at 20% 80%, rgba(185, 28, 28, 0.3), transparent 40%),radial-gradient(circle at 80% 20%, rgba(40, 12, 12, 0.8), transparent 50%),linear-gradient(180deg, #0a0707 0%, #1a0a0a 50%, #0a0707 100%)}.pinned-text-overlay{position:absolute;inset:0;background-image:repeating-linear-gradient(90deg, transparent 0, transparent 80px, rgba(232, 226, 214, 0.02) 80px, rgba(232, 226, 214, 0.02) 81px)}.pinned-text-copy{position:relative;z-index:2;max-width:800px;padding:0 40px;text-align:center}.pinned-text-copy h2{font-family:var(--font-display);font-size:clamp(40px,6vw,72px);font-style:italic;font-weight:400;font-weight:400;line-height:1.1;color:var(--paper);margin-bottom:32px;text-wrap:balance}.pinned-text-copy p{color:var(--ink-dim);max-width:520px;margin:0 auto;line-height:1.5}.pinned-image-section{position:relative;-webkit-clip-path:inset(0);clip-path:inset(0);margin:var(--section-margin-bottom) 0}.pinned-image-stage{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden;margin-bottom:-100vh}.pinned-image-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(0.5)}.pinned-image-overlay{position:absolute;inset:0;background:linear-gradient(to bottom, transparent 30%, rgba(10, 7, 7, 0.85) 100%)}.pinned-image-content{position:relative;z-index:1;padding:50vh 40px 50vh;max-width:680px;margin:0 auto}.pinned-image-content p{font-family:var(--font-body);font-size:21px;line-height:1.75;color:var(--ink);margin-bottom:1.6em;text-wrap:pretty}.section-label{display:flex;align-items:center;gap:16px;max-width:680px;margin:0 auto 40px;padding:0 40px;font-family:var(--font-mono);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent)}.section-label::before{content:"";width:24px;height:1px;background:var(--accent)}.texture-slot{width:100%;height:60vh;margin:var(--section-margin-bottom) 0;position:relative;overflow:hidden}.texture-slot.t-rust{background:radial-gradient(ellipse at 30% 50%, rgba(120, 30, 20, 0.4), transparent 60%),radial-gradient(ellipse at 70% 30%, rgba(40, 10, 10, 0.6), transparent 50%),linear-gradient(135deg, #1a0a0a, #0a0707)}.texture-slot.t-concrete{background:radial-gradient(circle at 20% 80%, rgba(60, 40, 35, 0.3), transparent 50%),radial-gradient(circle at 80% 20%, rgba(20, 14, 14, 0.8), transparent 60%),#0d0908}.texture-slot::after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='400' height='400'><filter id='n'><feTurbulence type='turbulence' baseFrequency='0.015' numOctaves='4'/><feColorMatrix values='0 0 0 0 0.3 0 0 0 0 0.1 0 0 0 0 0.05 0 0 0 0.7 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");mix-blend-mode:multiply;opacity:.6}.texture-slot .texture-caption{position:absolute;bottom:20px;left:24px;font-family:var(--font-mono);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-dim);z-index:2}.note{margin:60px auto;padding:32px 40px;border-left:2px solid var(--accent-deep);background:rgba(185,28,28,.04)}.note,.note p{font-family:var(--font-mono);font-size:13px;line-height:1.7;color:var(--ink-dim);letter-spacing:.02em}.note .note-label{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
/*# sourceMappingURL=chapter.css.map */
\ No newline at end of file
{"version":3,"sources":["../../../../src/css/templates/chapter.scss","../../../../src/css/_mixins.scss"],"names":[],"mappings":"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","file":"chapter.css"}
\ No newline at end of file
{"version":3,"sources":["../../../../src/css/templates/chapter.scss","../../../../src/css/_mixins.scss"],"names":[],"mappings":"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","file":"chapter.css"}
\ No newline at end of file
......@@ -34,7 +34,7 @@ Part-name: Below the Surface
----
Sections: [{"content":{"section_label":"THE DESCENT","text":"<p>Rain hissed softly above the manhole cover, the sound filtered through layers of wet concrete and dripping steel. Markus Neumann wiped a gloved hand across his forehead and adjusted his helmet light. <em>Here we go again.</em> He muttered under his breath, the words echoing along the tunnel like a prayer no one would answer. Another leak complaint — it was the third this week.</p><p>The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him.</p>","capitalise":"true","content":"<p>Rain hissed softly above the manhole cover, the sound filtered through layers of wet concrete and dripping steel. Markus Neumann wiped a gloved hand across his forehead and adjusted his helmet light. <em>Here we go again.</em> He muttered under his breath, the words echoing along the tunnel like a prayer no one would answer. Another leak complaint — it was the third this week.</p><p>The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him.</p>"},"id":"afb489ff-98c5-4ed9-b5be-095e64f99183","isHidden":false,"type":"prose"},{"content":{"text":"The Kanalwerk Friedrichshof Station always smelled like rot. Not the sharp, animal kind, but the slow decay of infrastructure — oil, rust, moss, time."},"id":"62113cb8-a5c7-49cb-aa78-0ebd30cd329a","isHidden":false,"type":"pull"},{"content":{"image":["file://mvgubc51yumjedpl"],"text":"<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p><p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p><p>Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.</p>"},"id":"6937651a-c8c6-40d1-819a-4e953bb9d3ff","isHidden":false,"type":"pinned-image"},{"content":{"section_label":"THE DESCENT","text":"<p>Rain hissed softly above the manhole cover, the sound filtered through layers of wet concrete and dripping steel. Markus Neumann wiped a gloved hand across his forehead and adjusted his helmet light. <em>Here we go again.</em> He muttered under his breath, the words echoing along the tunnel like a prayer no one would answer. Another leak complaint — it was the third this week.</p><p>The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him.</p>","capitalise":"true","content":"<p>Rain hissed softly above the manhole cover, the sound filtered through layers of wet concrete and dripping steel. Markus Neumann wiped a gloved hand across his forehead and adjusted his helmet light. <em>Here we go again.</em> He muttered under his breath, the words echoing along the tunnel like a prayer no one would answer. Another leak complaint — it was the third this week.</p><p>The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him.</p>"},"id":"43ce2c42-9c9f-4997-96fa-fa1caefe4de6","isHidden":false,"type":"prose"},{"content":{"section_label":"","text":"<p>And tonight, something else. Not strong, but present. Chemical. Artificial.</p><p>He exhaled sharply through his nose and switched on his helmet lamp. The beam cut across the curved concrete, catching glints of water droplets and age-darkened moss. Thin roots dangled from a crack above his head like hair from a wound.</p>","capitalise":"false"},"id":"d698b583-5131-41b6-904b-01f159d8d023","isHidden":false,"type":"prose"},{"content":{"style":"t-rust","caption":"The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him."},"id":"06a5dd57-cc95-4159-bc27-5c57aa90ecf9","isHidden":false,"type":"texture"},{"content":{"heading":"<h2>He took a step.<br>Then another.</h2>","body":"<p>His knees ached more than usual — long shifts, poor sleep. He was pushing fifty and felt every year of it in weather like this.</p>","image":["file://gtg5lx76p316mdyd"]},"id":"557fb97e-e0c7-4f7d-8681-ef9bbb3c9b55","isHidden":false,"type":"pinned-text"},{"content":{"section_label":"II · THE NAMED TUNNELS","text":"<p>He had worked these tunnels for over a decade, knew them better than the apartment where he barely slept anymore. Some stretches had earned nicknames: <em>The Cathedral</em>, <em>The Gut</em>, <em>The Dead Loop</em>.</p>","capitalise":"true"},"id":"cd4cbadc-ba12-43af-8be3-c319dbf088c1","isHidden":false,"type":"prose"},{"content":{"text":"Friedrichshof didn't get a name. It didn't really deserve one. It just dragged on and got worse with time."},"id":"2a2b5830-645c-4a89-ba77-b06159b220d3","isHidden":false,"type":"pull"},{"content":{"section_label":"","text":"<p>The chemical smell strengthened the further he walked, settling on the back of his tongue. He stopped, let the lamp sweep slowly along the right-hand wall, and listened to the way the silence had begun to organize itself — into something less like absence and more like attention.</p>","capitalise":"false"},"id":"6fb69dee-68a1-427e-a1f7-5b724318ab6a","isHidden":false,"type":"prose"},{"content":{"note_label":"FIELD LOG · MARKUS N.","text":"<p>Note for shift report — odor at K-FH between marker 14 and 17, sharp, possibly solvent. Not in the daily release schedule. Recommend retest before sign-off. Will check again on the way back. <em>(He would not check again on the way back.)</em></p>","content":"<p>Hallo capiditio</p>"},"id":"536e8771-b5e7-4346-9002-852f24aa917b","isHidden":false,"type":"note"}]
Sections: [{"content":{"section_label":"THE DESCENT","capitalise":"true","text":"<p>Rain hissed softly above the manhole cover, the sound filtered through layers of wet concrete and dripping steel. Markus Neumann wiped a gloved hand across his forehead and adjusted his helmet light. <em>Here we go again.</em> He muttered under his breath, the words echoing along the tunnel like a prayer no one would answer. Another leak complaint — it was the third this week.</p><p>The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him.</p>","content":"<p>Rain hissed softly above the manhole cover, the sound filtered through layers of wet concrete and dripping steel. Markus Neumann wiped a gloved hand across his forehead and adjusted his helmet light. <em>Here we go again.</em> He muttered under his breath, the words echoing along the tunnel like a prayer no one would answer. Another leak complaint — it was the third this week.</p><p>The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him.</p>"},"id":"afb489ff-98c5-4ed9-b5be-095e64f99183","isHidden":false,"type":"prose"},{"content":{"text":"The Kanalwerk Friedrichshof Station always smelled like rot. Not the sharp, animal kind, but the slow decay of infrastructure — oil, rust, moss, time."},"id":"62113cb8-a5c7-49cb-aa78-0ebd30cd329a","isHidden":false,"type":"pull"},{"content":{"image":["file://mvgubc51yumjedpl"],"text":"<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p><p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p><p>Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.</p>"},"id":"6937651a-c8c6-40d1-819a-4e953bb9d3ff","isHidden":false,"type":"pinned-image"},{"content":{"section_label":"THE DESCENT","capitalise":"true","text":"<p>Rain hissed softly above the manhole cover, the sound filtered through layers of wet concrete and dripping steel. Markus Neumann wiped a gloved hand across his forehead and adjusted his helmet light. <em>Here we go again.</em> He muttered under his breath, the words echoing along the tunnel like a prayer no one would answer. Another leak complaint — it was the third this week.</p><p>The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him.</p>","content":"<p>Rain hissed softly above the manhole cover, the sound filtered through layers of wet concrete and dripping steel. Markus Neumann wiped a gloved hand across his forehead and adjusted his helmet light. <em>Here we go again.</em> He muttered under his breath, the words echoing along the tunnel like a prayer no one would answer. Another leak complaint — it was the third this week.</p><p>The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him.</p>"},"id":"43ce2c42-9c9f-4997-96fa-fa1caefe4de6","isHidden":false,"type":"prose"},{"content":{"section_label":"","capitalise":"false","text":"<p>And tonight, something else. Not strong, but present. Chemical. Artificial.</p><p>He exhaled sharply through his nose and switched on his helmet lamp. The beam cut across the curved concrete, catching glints of water droplets and age-darkened moss. Thin roots dangled from a crack above his head like hair from a wound.</p>"},"id":"d698b583-5131-41b6-904b-01f159d8d023","isHidden":false,"type":"prose"},{"content":{"style":"t-rust","caption":"The tunnel swallowed him in the way they always did — quietly, without acknowledgment. He climbed down the iron ladder steps, each one slick with condensation. His boots hit the ground with a soft splash. For a second, he just stood there. Letting his eyes adjust. Letting the place settle around him."},"id":"06a5dd57-cc95-4159-bc27-5c57aa90ecf9","isHidden":false,"type":"texture"},{"content":{"heading":"<h2>He took a step.<br>Then another.</h2>","body":"<p>His <strong><em>knees ached more than</em></strong> usual — long shifts, poor sleep. He was pushing fifty and felt every year of it in weather like this.</p>","image":["file://gtg5lx76p316mdyd"]},"id":"557fb97e-e0c7-4f7d-8681-ef9bbb3c9b55","isHidden":false,"type":"pinned-text"},{"content":{"section_label":"II · THE NAMED TUNNELS","capitalise":"true","text":"<p>He had worked these tunnels for over a decade, knew them better than the apartment where he barely slept anymore. Some stretches had earned nicknames: <em>The Cathedral</em>, <em>The Gut</em>, <em>The Dead Loop</em>.</p>"},"id":"cd4cbadc-ba12-43af-8be3-c319dbf088c1","isHidden":false,"type":"prose"},{"content":{"text":"Friedrichshof didn't get a name. It didn't really deserve one. It just dragged on and got worse with time."},"id":"2a2b5830-645c-4a89-ba77-b06159b220d3","isHidden":false,"type":"pull"},{"content":{"section_label":"","capitalise":"false","text":"<p>The chemical smell strengthened the further he walked, settling on the back of his tongue. He stopped, let the lamp sweep slowly along the right-hand wall, and listened to the way the silence had begun to organize itself — into something less like absence and more like attention.</p>"},"id":"6fb69dee-68a1-427e-a1f7-5b724318ab6a","isHidden":false,"type":"prose"},{"content":{"note_label":"FIELD LOG · MARKUS N.","text":"<p>Note for shift report — odor at K-FH between marker 14 and 17, sharp, possibly solvent. Not in the daily release schedule. Recommend retest before sign-off. Will check again on the way back. <em>(He would not check again on the way back.)</em></p>","content":"<p>Hallo capiditio</p>"},"id":"536e8771-b5e7-4346-9002-852f24aa917b","isHidden":false,"type":"note"}]
----
......
......@@ -16,9 +16,8 @@
<?php if ($page->seo_description()->isNotEmpty()): ?>
<meta name="description" content="<?= $page->seo_description()->html() ?>">
<?php endif ?>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=EB+Garamond:ital,wght@0,400;0,500;1,400;1,500&family=JetBrains+Mono:wght@300;400;500&family=Inter+Tight:wght@400;500&display=swap" rel="stylesheet">
<?= css('assets/css/shared.css') ?>
<?= css('@auto') ?>
<?php foreach ($extraCss ?? [] as $stylesheet): ?>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment