@font-face {
    font-family: "EB Garamond";
    src: url("shrift/eb-garamond.woff2") format("woff2");
    font-weight: 400 600;
    font-style: normal;
    font-display: optional;
}
@font-face {
    font-family: "EB Garamond";
    src: url("shrift/eb-garamond-italic.woff2") format("woff2");
    font-weight: 400 600;
    font-style: italic;
    font-display: optional;
}

@font-face {
    font-family: "EB Garamond";
    src: url("shrift/eb-garamond-graeca.woff2") format("woff2");
    font-weight: 400 600;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0370-03FF, U+1F00-1FFF;
}
@font-face {
    font-family: "EB Garamond";
    src: url("shrift/eb-garamond-graeca-italic.woff2") format("woff2");
    font-weight: 400 600;
    font-style: italic;
    font-display: swap;
    unicode-range: U+0370-03FF, U+1F00-1FFF;
}

:root {
    color-scheme: light;

    --corpus-7: calc(var(--corpus-12) * 7 / 12);
    --corpus-8: calc(var(--corpus-12) * 8 / 12);
    --corpus-9: calc(var(--corpus-12) * 9 / 12);
    --corpus-10: calc(var(--corpus-12) * 10 / 12);
    --corpus-11: calc(var(--corpus-12) * 11 / 12);
    --corpus-12: clamp(1.125rem, 1.07rem + .25vw, 1.25rem);
    --corpus-14: clamp(1.291rem, 1.235rem + 0.248vw, 1.458rem);
    --corpus-16: clamp(1.45rem, 1.378rem + 0.321vw, 1.667rem);
    --corpus-18: clamp(1.603rem, 1.512rem + 0.403vw, 1.875rem);
    --corpus-20: clamp(1.75rem, 1.639rem + 0.494vw, 2.083rem);
    --corpus-24: clamp(2.025rem, 1.867rem + 0.704vw, 2.5rem);
    --corpus-28: clamp(2.275rem, 2.061rem + 0.951vw, 2.917rem);
    --corpus-36: clamp(2.7rem, 2.35rem + 1.556vw, 3.75rem);
    --corpus-48: clamp(3.15rem, 2.533rem + 2.741vw, 5rem);
    --corpus-60: clamp(3.438rem, 2.5rem + 4.167vw, 6.25rem);

    --spatium-1: clamp(12px, 1.2vw, 18px);
    --spatium-2: clamp(20px, 2.4vw, 36px);
    --spatium-3: clamp(32px, 4vw, 56px);
    --spatium-4: clamp(40px, 5vw, 72px);
    --spatium-5: clamp(56px, 7vw, 104px);
    --spatium-6: clamp(72px, 9vw, 136px);
    --spatium-7: clamp(96px, 12vw, 176px);

    --charta: #F6F5F1;
    --fundus: #ECEAE4;
    --atramentum: #1C1B19;
    --scriptura: #2E2D2A;
    --cinis: #4F4B44;
    --linea: #D3CEC3;
    --minium: #B4524C;
    --nox: #0E0E0D;
    --lux-nocturna: #ECE9E2;
    --littera: "EB Garamond", Garamond, "Times New Roman", serif;
    --latitudo: 1360px;
    --margo: clamp(20px, 5vw, 72px);
    --intervallum: clamp(20px, 2.6vw, 40px);
    --vestibulum: 76px;
    --sagitta: clamp(56px, 8vw, 128px);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: 24px; overflow-x: clip; }
body {
    margin: 0;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    background-color: var(--charta);
    color: var(--scriptura);
    font-family: var(--littera);
    font-size: var(--corpus-12);
    line-height: 1.55;
    font-kerning: normal;
    font-variant-numeric: oldstyle-nums proportional-nums;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    hanging-punctuation: first allow-end;
}
body > main { flex: 1 0 auto; }
img, svg { max-width: 100%; }

picture { display: contents; }
img { height: auto; }
h1, h2, h3 { font-weight: 400; color: var(--atramentum); margin: 0; }

p, li, dd, figcaption, blockquote { text-wrap: pretty; }
h1, h2, h3 { text-wrap: balance; }
p, figure, blockquote { margin: 0; }
a { color: inherit; text-decoration-line: underline; text-decoration-thickness: 1px; text-underline-offset: .22em; text-decoration-color: rgb(28 27 25 / .28); transition: text-decoration-color .2s; }
a:hover { text-decoration-color: currentColor; }
:focus-visible { outline: 1px solid var(--atramentum); outline-offset: 4px; }
::selection { background-color: rgb(180 82 76 / .18); }
.occultum { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

.ad-rem { position: absolute; left: 12px; top: -64px; z-index: 10; padding: 8px 14px; background: var(--atramentum); color: var(--charta); text-decoration: none; }
.ad-rem:focus { top: 12px; }
.nox .ad-rem { background: var(--lux-nocturna); color: #0E0E0D; }

sup.nota a { display: inline-block; min-width: 1.6em; padding: .35em .3em; margin: -.35em -.1em; text-align: center; }

.inscriptio, .iter a, .iter span, .notitia dt, .ordo :is(a, summary, button, .electum, .summa), .paginae [rel],
.actiones a, .deinde a, .verbum, .bulla, .monitum {
    font-size: var(--corpus-9);
    line-height: 1.45;
    letter-spacing: .16em;
    text-transform: uppercase;
    font-feature-settings: "case";
    font-variant-numeric: lining-nums;
}
.inscriptio { color: var(--cinis); }

.limen .officina, .inscriptio .officina { text-transform: none; letter-spacing: .06em; }
.inscriptio [lang=grc] { text-transform: none; letter-spacing: .02em; font-style: italic; font-size: 1.15em; }
[lang=grc] { hyphens: none; font-variant-numeric: normal; }

.inscriptio.signata { display: flex; align-items: center; gap: 14px; }
.inscriptio.signata::before { content: ""; flex: 0 0 28px; height: 2px; background-color: var(--color-expositionis, var(--minium)); }

.officina { font-variant-numeric: lining-nums; }

@supports (text-box: trim-both cap alphabetic) {
    .titulus h1, .vigilia h1, .nusquam h1 { text-box: trim-both cap alphabetic; }
}

@media (prefers-reduced-motion: no-preference) {
    @view-transition { navigation: auto; }
    ::view-transition-old(root), ::view-transition-new(root) { animation-duration: .24s; }
}

body.lux-surgit::after {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 50;
    background-color: rgb(24 22 19);
    opacity: 0;
    pointer-events: none;
    animation: lux-surgit 2.6s cubic-bezier(.4, 0, .2, 1) .2s backwards;
}
@keyframes lux-surgit { from { opacity: .34; } to { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { body.lux-surgit::after { display: none; } }

.crepusculum { position: fixed; inset: 0; z-index: 49; background-color: #0E0E0D; opacity: var(--crepusculum, 0); pointer-events: none; transition: opacity 10s linear; }
.crepusculum.nox { transition-duration: 4s; }

body.aurora { --charta: #F4F4F1; }
body.vesper { --charta: #F6F2EA; }
body.media-nox { --charta: #F1EEE7; }

body.paries-proprius, body.paries-proprius:has(.atmosphaera-camera) { --charta: color-mix(in srgb, var(--paries) 80%, #F6F5F1); --fundus: color-mix(in srgb, var(--paries) 88%, #8A857A); }

body.hospes-primus::after {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 50;
    background-color: rgb(24 22 19);
    opacity: 0;
    pointer-events: none;
    animation: lux-prima 4.2s cubic-bezier(.4, 0, .2, 1) .3s backwards;
}
@keyframes lux-prima { from { opacity: .62; } to { opacity: 0; } }
.primus-hodie { margin: 0; padding: 12px var(--margo) 0; text-align: center; font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--cinis); animation: apparitio-lenta 3s ease 2.4s backwards; }
@media (prefers-reduced-motion: reduce) { body.hospes-primus::after { display: none; } .primus-hodie { animation: none; } }

.praeparatio .peritia { margin-top: var(--spatium-2); border-top: 1px solid var(--linea); }
.praeparatio .peritia summary { padding: 14px 0 0; font-size: var(--corpus-9); letter-spacing: .14em; text-transform: uppercase; font-feature-settings: "case"; color: var(--atramentum); cursor: pointer; list-style: none; }
.praeparatio .peritia summary::-webkit-details-marker { display: none; }
.praeparatio .peritia summary::after { content: " +"; color: var(--cinis); }
.praeparatio .peritia[open] summary::after { content: " −"; }
.praeparatio .peritia code { font-family: ui-monospace, "SF Mono", Consolas, monospace; font-size: .86em; }

.ultimus-hospes { position: absolute; inset: 0; display: grid; place-items: center; margin: 0; font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--lux-nocturna); animation: apparitio-lenta 2.4s ease 1.6s backwards; }

body.dies-obitus, body.paries-proprius.dies-obitus { --charta: color-mix(in srgb, var(--paries, #F6F5F1) 80%, #3A3732); --fundus: color-mix(in srgb, var(--paries, #ECEAE4) 72%, #3A3732); }
body.dies-natalis, body.paries-proprius.dies-natalis { --charta: color-mix(in srgb, var(--paries, #F6F5F1) 55%, #FFFDF7); }
.dies-obitus .signum .quadratum { background-color: var(--atramentum); }
.dies-artificis { margin-top: var(--spatium-3); max-width: 36em; padding-left: 20px; border-left: 1px solid var(--atramentum); }
.dies-natalis .dies-artificis { border-left-color: var(--minium); }
.dies-artificis .data-diei { margin-top: 6px; color: var(--atramentum); font-variant-numeric: lining-nums; }
.dies-artificis blockquote { margin-top: 14px; font-size: var(--corpus-14); line-height: 1.45; color: var(--atramentum); }
.dies-artificis .versio { margin-top: 6px; font-style: italic; color: var(--scriptura); }

.praeconium { margin: 0; padding: 9px var(--margo); background-color: var(--atramentum); color: var(--charta); text-align: center; font-size: var(--corpus-9); letter-spacing: .02em; }
.praeconium time { font-variant-numeric: lining-nums; }

.vestibulum {
    width: 100%;
    max-width: var(--latitudo);
    min-height: var(--vestibulum);
    margin: 0 auto;
    padding: 0 var(--margo);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 24px;
}
.signum { display: inline-flex; align-items: baseline; gap: .3em; color: var(--atramentum); text-decoration: none; font-size: var(--corpus-10); line-height: 1.2; white-space: nowrap; font-variant-numeric: lining-nums; }
.signum .quadratum { align-self: center; width: 9px; height: 9px; margin-right: .45em; background-color: var(--minium); }
.signum .pinacotheca { color: var(--cinis); }
.signum .nomen-pinacothecae { color: var(--atramentum); }

.nomen-pinacothecae { font-size: .84em; letter-spacing: .14em; font-variant-numeric: lining-nums; }
.signum:hover .nomen-pinacothecae { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .22em; }
.iter { display: flex; align-items: baseline; gap: 22px; min-width: 0; }
.iter a, .iter span { color: var(--cinis); text-decoration: none; white-space: nowrap; }
.iter a { min-width: 0; overflow: hidden; text-overflow: ellipsis; }

.iter a, .ingressus a { padding-block: 12px; margin-block: -12px; }
.iter a, .iter [aria-current] { color: var(--atramentum); }
.iter a:hover { text-decoration: underline; }

.titulus { padding-top: var(--spatium-5); }
.titulus h1 {
    margin-top: .38em;
    font-size: var(--corpus-48);
    line-height: 1;
    letter-spacing: -.018em;
    text-wrap: balance;
    max-width: 15em;
}

.titulus-originalis { margin-top: .9em; max-width: 48em; }
.interpretatio .verba {
    font-size: var(--corpus-14);
    font-style: italic;
    line-height: 2.5;
    word-spacing: .22em;
    text-wrap: balance;
    color: var(--atramentum);
    text-decoration: underline dotted rgb(95 91 83 / .4) 1px;
    text-underline-offset: .3em;
    transition: text-decoration-color .4s;
    cursor: help;
    outline-offset: 6px;
    -webkit-tap-highlight-color: transparent;
}
.interpretatio .dictio { position: relative; }
.interpretatio .dictio[data-glossa]::after {
    content: attr(data-glossa);
    position: absolute;
    left: 50%;
    top: calc(100% + .28em);
    translate: -50% 0;
    font-size: .52em;
    font-style: normal;
    letter-spacing: 0;
    word-spacing: normal;
    line-height: 1;
    white-space: nowrap;
    color: var(--cinis);
    clip-path: inset(0 100% 0 0);
    opacity: 0;
}
.interpretatio .dictio.insigne::after { color: var(--minium); }
.interpretatio { display: grid; grid-template-rows: auto 0fr auto; }
.interpretatio.aperta { grid-template-rows: auto 1fr auto; }
.interpretatio .versio { min-height: 0; overflow: hidden; padding-top: 14px; font-size: var(--corpus-10); font-style: italic; line-height: 1.5; color: var(--scriptura); opacity: 0; }
.interpretatio .fons-verborum { margin-top: 6px; font-size: var(--corpus-9); letter-spacing: .04em; color: var(--cinis); font-variant-numeric: lining-nums; }
.interpretatio.aperta .verba { text-decoration-color: transparent; }
.interpretatio.aperta .dictio::after { clip-path: inset(0 0 0 0); opacity: 1; }
.interpretatio.aperta .versio { opacity: 1; }
@media (prefers-reduced-motion: no-preference) {
    .interpretatio .dictio::after { transition: clip-path .45s cubic-bezier(.4, 0, .2, 1), opacity .25s; transition-delay: calc(var(--ordo, 0) * 55ms); }
    .interpretatio { transition: grid-template-rows .5s cubic-bezier(.4, 0, .2, 1) .1s; }
    .interpretatio .versio { transition: opacity .6s ease; }
    .interpretatio.aperta .versio { transition-delay: .9s; }
    .interpretatio:not(.aperta) .dictio::after { transition-delay: 0s; transition-duration: .25s; }
}

.autographum { margin-top: 22px; max-width: 560px; }
.charta-epistulae { position: relative; display: block; line-height: 0; }
.charta-epistulae img {
    display: block;
    width: 100%;
    height: auto;
    -webkit-mask-image: linear-gradient(to right, transparent, #000 4%, #000 96%, transparent), linear-gradient(transparent, #000 10%, #000 90%, transparent);
    -webkit-mask-composite: source-in;
    mask-image: linear-gradient(to right, transparent, #000 4%, #000 96%, transparent), linear-gradient(transparent, #000 10%, #000 90%, transparent);
    mask-composite: intersect;
}
.charta-epistulae::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--charta);
    opacity: .74;
    mask: linear-gradient(#000 0 0), var(--fenestra-0, none), var(--fenestra-1, none), var(--fenestra-2, none), var(--fenestra-3, none), var(--fenestra-4, none);
    mask-composite: subtract, add, add, add, add;
    pointer-events: none;
}
.autographum.nudata .charta-epistulae::after { opacity: 0; transition: opacity .9s ease; }
.autographum figcaption { margin-top: 8px; font-size: var(--corpus-9); line-height: 1.45; color: var(--cinis); font-variant-numeric: lining-nums; }
@media (hover: hover) {
    .charta-epistulae::after { transition: opacity .9s ease; }
    .autographum:hover .charta-epistulae::after { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) { .charta-epistulae::after { transition: none; } }
.autographum.fulgor .charta-epistulae img { filter: brightness(1.16) saturate(.55) contrast(1.06); }
.autographum.fulgor .charta-epistulae::after {
    background: radial-gradient(ellipse 95% 130% at 60% 35%, #FFFFFD 0%, #FEFCF6 60%, #F8F3E6 100%);
    opacity: .88;
}
.autographum.fulgor .charta-epistulae::after, .autographum.fulgor .charta-epistulae img { transition: opacity 3.4s cubic-bezier(.3, .1, .3, 1), filter 3.4s cubic-bezier(.3, .1, .3, 1); }
.autographum.fulgor.nudata .charta-epistulae img { filter: none; }
.autographum.fulgor.nudata .charta-epistulae::after { opacity: 0; }
@media (hover: hover) {
    .autographum.fulgor:hover .charta-epistulae img { filter: none; }
    .autographum.fulgor:hover .charta-epistulae::after { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) { .autographum.fulgor .charta-epistulae::after, .autographum.fulgor .charta-epistulae img { transition: none; } }

body:has(.atmosphaera-camera) { --charta: #ECEAE5; --fundus: #E2DFD8; }
.atmosphaera-camera { position: relative; isolation: isolate; overflow-x: clip; }
.lux-fenestrae {
    position: absolute;
    z-index: -1;
    top: clamp(420px, 40vw, 640px);
    left: var(--sol-x, 70%);
    width: clamp(280px, 34vw, 540px);
    aspect-ratio: 2 / 3;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(3, 1fr);
    gap: 7%;
    transform: translateX(-50%) perspective(900px) rotateX(58deg) skewX(var(--sol-obliquitas, -24deg));
    transform-origin: top center;
    opacity: calc(var(--sol-vis, 0) * .55);
    filter: blur(9px);
    pointer-events: none;
}
.lux-fenestrae span { background-color: hsl(calc(42deg - var(--sol-calor, 0) * 16deg) 60% 98%); }
@media (prefers-reduced-motion: no-preference) {
    .lux-fenestrae { transition: left 4s ease, transform 4s ease, opacity 4s ease; }
}

.lumen-in-pagina .verba { font-size: var(--corpus-16); font-style: italic; line-height: 1.3; color: var(--atramentum); }
.lumen-in-pagina .versio { margin-top: 6px; font-size: var(--corpus-10); font-style: italic; color: var(--scriptura); }
.lumen-in-pagina .fons-verborum { margin-top: 6px; font-size: var(--corpus-9); letter-spacing: .04em; color: var(--cinis); }
.pagina-libri { margin-top: 22px; max-width: 620px; }
.charta-libri { position: relative; display: block; line-height: 0; overflow: hidden; }
.charta-libri img { display: block; width: 100%; height: auto; }
.umbra-camerae {
    position: absolute;
    inset: 0;
    background-color: rgb(40 36 30 / .34);
    mask: linear-gradient(#000 0 0), var(--fenestra-0, none), var(--fenestra-1, none);
    mask-composite: subtract, add;
    filter: blur(4px);
    pointer-events: none;
}
.charta-libri::after {

    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg, transparent 47.5%, rgb(46 40 30 / .16) 48%, rgb(46 40 30 / .16) 49.2%, transparent 49.7%);
    pointer-events: none;
}
.pagina-libri figcaption { margin-top: 8px; font-size: var(--corpus-9); line-height: 1.45; color: var(--cinis); }
@media (hover: hover) {
    .umbra-camerae, .charta-libri::after { transition: opacity 1.4s ease; }
    .pagina-libri:hover .umbra-camerae, .pagina-libri:hover .charta-libri::after { opacity: 0; }
}

@media (scripting: none) { .interpretatio { grid-template-rows: auto 1fr auto; } .interpretatio .versio { opacity: 1; } .interpretatio .verba { cursor: auto; } }
.verbum-prooemii { margin: 0 0 2em; max-width: 34em; }
.verbum-prooemii blockquote { margin: 0; font-size: 1.16em; line-height: 1.45; color: var(--atramentum); text-wrap: pretty; hanging-punctuation: first; }
.verbum-prooemii .versio { margin-top: 10px; font-style: italic; line-height: 1.55; color: var(--scriptura); }
.verbum-prooemii .fons-verborum { margin-top: 8px; }
.titulus .artifex { margin-top: .75em; font-size: var(--corpus-16); line-height: 1.3; color: var(--atramentum); }
.titulus .anni { color: var(--cinis); margin-left: .3em; }
.titulus .summa, .titulus .nomen-patrium { margin-top: 1em; color: var(--cinis); }
.titulus .summa { font-variant-numeric: lining-nums; }
.titulus .nomen-patrium { font-size: var(--corpus-16); font-style: italic; }

.expositio, .expositiones, .commentarius, .nusquam {
    width: 100%;
    max-width: var(--latitudo);
    margin: 0 auto;
    padding: 0 var(--margo);
}

.prooemium, .corpus {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: var(--intervallum);
    margin-top: var(--spatium-5);
}
.prooemium .textus { grid-column: 1 / span 6; grid-row: 1; }
.prooemium:not(:has(.opus-praecipuum)) .textus { grid-column: 1 / span 7; }
.opus-praecipuum { grid-column: 8 / -1; grid-row: 1; align-self: start; position: sticky; top: 32px; }
.opus-praecipuum > a { display: block; line-height: 0; }
.opus-praecipuum img { --alt: 76svh; width: min(100%, calc(var(--alt) * var(--r))); max-height: var(--alt); background-color: var(--fundus); }
.opus-praecipuum figcaption { margin-top: 12px; font-size: var(--corpus-9); line-height: 1.45; color: var(--cinis); }
.opus-praecipuum .nomen { font-style: italic; color: var(--scriptura); }
.opus-praecipuum .nota-operis { display: block; margin-top: 2px; font-size: var(--corpus-9); }

.paragraphus { max-width: 34em; margin: 0 0 1em; text-wrap: pretty; }

.paragraphus.citatio { margin: 1.6em 0 1.6em 1.25em; font-style: italic; text-indent: -.42em; color: var(--atramentum); }

@supports (initial-letter: 3) or (-webkit-initial-letter: 3) {
    .textus > .paragraphus:first-child::first-letter {
        -webkit-initial-letter: 3;
        initial-letter: 3;
        margin-right: .1em;
        color: var(--color-expositionis, var(--minium));
        font-weight: 400;
    }

    .textus > .paragraphus:first-child { min-height: 3lh; }
}

.notitia { margin: 2.25em 0 0; max-width: 34em; border-top: 1px solid var(--linea); }
.notitia > div { display: grid; grid-template-columns: 10em minmax(0, 1fr); column-gap: 20px; padding: 11px 0 12px; border-bottom: 1px solid var(--linea); }
.notitia dt { color: var(--cinis); padding-top: .3em; }
.notitia dd { margin: 0; font-size: var(--corpus-10); line-height: 1.45; color: var(--atramentum); }

.ordo {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px 32px;
    margin-top: var(--spatium-6);
    padding: 16px 0;
    border-top: 1px solid var(--atramentum);
}
.ordines { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px 26px; }
.ordo :is(a, summary, .electum) { color: var(--atramentum); text-decoration: none; }
.ordo a:hover { text-decoration: underline; }
.ordo .electum { box-shadow: inset 0 -1px 0 currentColor; }
.ordo .inscriptio, .ordo .summa { color: var(--cinis); }
.ordo details { position: relative; }
.ordo summary { cursor: pointer; list-style: none; }
.ordo summary::-webkit-details-marker { display: none; }

.ordo summary::after {
    content: "";
    display: inline-block;
    width: .4em;
    height: .4em;
    margin: 0 0 .2em .6em;
    border-right: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
    transform: rotate(45deg);
}
.ordo details[open] summary::after { transform: rotate(-135deg); margin-bottom: -.05em; }
.optiones {
    position: absolute;
    z-index: 2;
    top: calc(100% + 12px);
    left: -18px;
    min-width: 220px;
    padding: 14px 18px;
    background-color: var(--charta);
    border: 1px solid var(--linea);
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.paries {
    list-style: none;
    margin: var(--spatium-4) 0 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: clamp(20px, 4.4vw, 72px);
    row-gap: var(--spatium-6);
}
.tabella, .expositio-brevis { container-type: inline-size; scroll-margin-top: 32px; }
.tabella a, .expositio-brevis a { display: block; color: inherit; text-decoration: none; }
.locus { display: flex; align-items: flex-end; height: 340px; height: 88cqi; }
.locus picture { display: contents; }
.locus img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; background-color: var(--fundus); transition: opacity .3s; }
.lemma { display: block; margin-top: 16px; min-height: 4.1em; font-size: var(--corpus-10); line-height: 1.3; }
.lemma .nomen { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: var(--atramentum); text-wrap: balance; }
.lemma .annus { display: block; margin-top: 3px; font-size: var(--corpus-9); color: var(--cinis); }
:is(.tabella, .expositio-brevis) a:hover .nomen { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; text-decoration-color: rgb(28 27 25 / .35); }
.tabella a:focus-visible, .expositio-brevis a:focus-visible { outline-offset: 10px; }

.paginae {
    display: flex;
    justify-content: center;
    align-items: baseline;
    gap: 4px;
    margin-top: var(--spatium-5);
    font-variant-numeric: lining-nums;
}
.paginae a, .paginae span { padding: 6px 12px; text-decoration: none; }
.paginae a:hover { text-decoration: underline; }
.paginae [aria-current] { color: var(--atramentum); box-shadow: inset 0 -1px 0 currentColor; }

.planum { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0; margin-top: 8px; border-top: 1px solid var(--linea); }
.planum a { display: flex; flex-direction: column; gap: 2px; padding: 14px 16px 16px 0; border-bottom: 1px solid var(--linea); color: inherit; text-decoration: none; }
.planum .numerus-aulae { font-size: var(--corpus-12); line-height: 1; color: var(--color-expositionis, var(--minium)); font-variant-numeric: lining-nums; }
.planum .nomen { margin-top: 6px; font-size: var(--corpus-11); color: var(--atramentum); }
.planum .anni { font-size: var(--corpus-9); color: var(--cinis); font-variant-numeric: lining-nums; }
.planum a:hover .nomen { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.aula-expositionis { margin-top: var(--spatium-7); scroll-margin-top: 24px; }
.explicatio-aulae { display: grid; grid-template-columns: clamp(56px, 7vw, 96px) minmax(0, 5fr) minmax(0, 7fr); column-gap: var(--intervallum); align-items: start; padding-top: 18px; border-top: 1px solid var(--atramentum); }
.explicatio-aulae .numerus-aulae { font-size: var(--corpus-28); line-height: 1; color: var(--color-expositionis, var(--minium)); font-variant-numeric: lining-nums; }
.explicatio-aulae h2 { font-size: var(--corpus-28); line-height: 1.05; letter-spacing: -.01em; }
.loca-aulae { margin-top: 10px; color: var(--cinis); font-variant-numeric: lining-nums; }
.verba-aulae { margin: 0; padding-left: 18px; border-left: 1px solid var(--color-expositionis, var(--minium)); }
.verba-aulae blockquote { margin: 0; font-size: var(--corpus-12); line-height: 1.45; color: var(--atramentum); text-wrap: pretty; hanging-punctuation: first; }
.verba-aulae figcaption { margin-top: 10px; }
.verba-aulae .versio { display: block; font-style: italic; line-height: 1.5; color: var(--scriptura); text-wrap: pretty; }
.verba-aulae .fons-verborum { display: block; margin-top: 6px; }
.aula-expositionis .paries { margin-top: var(--spatium-4); }
@media (max-width: 999px) {
    .explicatio-aulae { grid-template-columns: clamp(48px, 9vw, 72px) minmax(0, 1fr); row-gap: 20px; }
    .verba-aulae { grid-column: 2; }
}

.mensura { padding: 0; border: 0; background: none; font: inherit; font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--atramentum); cursor: pointer; }
.mensura[aria-pressed="true"] { box-shadow: inset 0 -1px 0 currentColor; }
.paries.ad-mensuram {
    --k: clamp(1.1px, .24vw, 4px);
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 64px calc(40 * var(--k));
}
.ad-mensuram .tabella { flex: 0 0 auto; width: calc(var(--latitudo-operis) * var(--k)); container-type: normal; }
.ad-mensuram .tabella.sine-mensura { display: none; }
.ad-mensuram .locus { height: calc(var(--altitudo-operis) * var(--k)); }
.ad-mensuram .locus img { width: 100%; height: 100%; max-width: none; max-height: none; object-fit: contain; object-position: left bottom; }
.ad-mensuram .lemma { min-height: 0; font-size: var(--corpus-9); }
.ad-mensuram .lemma .nomen { -webkit-line-clamp: 3; }
.ad-mensuram::before {
    content: "50 см";
    flex: 0 0 auto;
    align-self: flex-end;
    width: calc(50 * var(--k));
    margin-bottom: 4.2em;
    padding-bottom: 4px;
    border-bottom: 1px solid var(--atramentum);
    background: linear-gradient(var(--atramentum), var(--atramentum)) left bottom / 1px 8px no-repeat, linear-gradient(var(--atramentum), var(--atramentum)) right bottom / 1px 8px no-repeat;
    font-size: var(--corpus-8);
    letter-spacing: .08em;
    color: var(--cinis);
    text-align: center;
}

.series {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: clamp(20px, 4.4vw, 72px);
    row-gap: var(--spatium-6);
    margin-top: var(--spatium-6);
}
.expositio-brevis .locus { height: 300px; height: 80cqi; }
.expositio-brevis .inscriptio { display: flex; align-items: center; gap: 12px; margin-top: 22px; }
.expositio-brevis .inscriptio::before { content: ""; flex: 0 0 20px; height: 2px; background-color: var(--color-expositionis, var(--minium)); }
.expositio-brevis .nomen { display: block; margin-top: 10px; font-size: var(--corpus-20); line-height: 1.1; letter-spacing: -.01em; text-wrap: balance; }
.expositio-brevis .auctor { display: block; margin-top: 8px; color: var(--cinis); }

.catalogus-expositionum { margin-top: var(--spatium-6); }
.catalogus-expositionum.officinae { margin-top: var(--spatium-7); }
.expositio-in-catalogo {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: var(--intervallum);
    align-items: start;
    padding: var(--spatium-2) 0 var(--spatium-5);
    border-top: 1px solid var(--atramentum);
    scroll-margin-top: 24px;
}
.margo-expositionis { grid-column: 1 / span 2; display: flex; flex-direction: column; gap: 10px; }
.margo-expositionis .annus { font-size: var(--corpus-28); line-height: 1; color: var(--atramentum); font-variant-numeric: oldstyle-nums; }
.margo-expositionis .genus { display: flex; align-items: center; gap: 10px; font-size: var(--corpus-8); letter-spacing: .16em; text-transform: uppercase; color: var(--cinis); }
.margo-expositionis .genus::before { content: ""; flex: 0 0 20px; height: 2px; background-color: var(--color-expositionis, var(--minium)); }
.imago-expositionis { grid-column: 3 / span 5; display: block; --alt: 56svh; width: min(100%, calc(var(--alt) * var(--r))); line-height: 0; }
.imago-expositionis picture { display: contents; }
.imago-expositionis img { display: block; width: 100%; height: auto; background-color: var(--fundus); }
.expositio-in-catalogo .verba-expositionis { grid-column: 8 / -1; padding-bottom: 0; }
.expositio-in-catalogo .nomen { margin: 0; font-size: var(--corpus-28); line-height: 1.05; letter-spacing: -.012em; text-wrap: balance; }
.expositio-in-catalogo .nomen a { text-decoration: none; }
.expositio-in-catalogo .nomen a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .12em; text-decoration-color: rgb(28 27 25 / .35); }
.expositio-in-catalogo .auctor { margin-top: 12px; font-size: var(--corpus-12); color: var(--atramentum); }
.epigraphe-expositionis { margin-top: 20px; padding-left: 16px; border-left: 1px solid var(--color-expositionis, var(--minium)); max-width: 30em; font-size: var(--corpus-10); font-style: italic; line-height: 1.45; color: var(--atramentum); }
.epigraphe-expositionis .versio { display: block; margin-top: 4px; font-size: var(--corpus-9); color: var(--cinis); }
.expositio-in-catalogo .summa { margin-top: 16px; color: var(--cinis); font-variant-numeric: lining-nums; }
.zophorus { list-style: none; display: flex; align-items: flex-end; gap: 10px; margin: 22px 0 0; padding: 0; isolation: isolate; }
.zophorus li { flex: 0 1 auto; min-width: 0; }
.zophorus a { display: block; line-height: 0; }
.zophorus img { display: block; width: auto; height: 64px; max-width: 100%; object-fit: contain; background-color: var(--fundus); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .zophorus img { transition: transform .4s ease; transform-origin: bottom center; }
    .zophorus a:hover img { transform: translateY(-3px); }
}
.expositio-in-catalogo .ingressus { margin-top: 28px; }
.expositio-in-catalogo .ingressus a { font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; color: var(--atramentum); }
.expositio-in-catalogo .ingressus::after { content: "→"; display: inline-block; margin-left: .45em; font-size: var(--corpus-9); letter-spacing: 0; color: var(--atramentum); }
@media (max-width: 999px) {
    .margo-expositionis { grid-column: 1 / -1; flex-direction: row; align-items: baseline; gap: 18px; margin-bottom: 18px; }
    .imago-expositionis, .expositio-in-catalogo .verba-expositionis { grid-column: 1 / -1; }
    .expositio-in-catalogo .verba-expositionis { margin-top: 24px; }
}

.vita { grid-column: 1 / span 4; }
.corpus .textus { grid-column: 6 / -1; }
.commentarius > .textus { margin-top: var(--spatium-5); }

.effigies { margin: 0 0 32px; }
.effigies > img, .effigies > picture img { display: block; width: 100%; max-width: 24rem; height: auto; max-height: 78svh; object-fit: contain; object-position: left top; }
.effigies img { background-color: var(--fundus); }
.effigies figcaption { margin-top: 12px; max-width: 22em; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); font-variant-numeric: lining-nums; }
.vita .notitia { margin-top: 0; }
.vita .notitia > div { grid-template-columns: 7.5em minmax(0, 1fr); }
.in-pinacotheca { margin-top: var(--spatium-7); padding-top: 16px; border-top: 1px solid var(--atramentum); }
.in-pinacotheca .series { margin-top: 40px; }

.corpus .testimonia { grid-column: 6 / -1; }
.testimonia > .inscriptio { margin-bottom: 8px; }
.testimonium { margin: 0; padding: 32px 0 36px; border-bottom: 1px solid var(--linea); }
.testimonium:first-of-type { border-top: 1px solid var(--linea); }
.testimonium .vox { margin: 0; }
.testimonium blockquote { margin: 0; font-size: var(--corpus-14); line-height: 1.45; color: var(--atramentum); text-wrap: pretty; hanging-punctuation: first; }
.testimonium .versio { margin-top: 16px; max-width: 38em; font-style: italic; font-size: var(--corpus-10); line-height: 1.55; color: var(--scriptura); text-wrap: pretty; }
.testimonium figcaption { margin-top: 18px; font-size: var(--corpus-9); line-height: 1.55; color: var(--cinis); font-variant-numeric: lining-nums; }
.testimonium .auctor { display: block; font-size: var(--corpus-9); letter-spacing: .14em; text-transform: uppercase; color: var(--atramentum); }
.testimonium .fons { margin-left: .4em; }
.nota-testimonii { display: block; margin-top: 8px; max-width: 42em; }

.responsum { margin: 28px 0 0 clamp(20px, 4vw, 56px); padding: 18px 0 0 22px; border-left: 1px solid var(--minium); }
.responsum > .inscriptio { margin-bottom: 12px; }
.responsum blockquote { font-size: var(--corpus-12); }
.testimonium blockquote p + p { margin-top: .75em; }
.epistula blockquote p + p { margin-top: .75em; }
.testimonium .versio + .versio { margin-top: 10px; }

.vita-vocabuli-partes { grid-column: 6 / -1; }
.vita-vocabuli-partes > .vita-vocabuli + .vita-vocabuli { margin-top: var(--spatium-5); }
.nomen-placitum .titulus .summa { max-width: 40em; font-size: var(--corpus-10); line-height: 1.6; color: var(--scriptura); }
.vita-vocabuli .annus { margin: 0 0 14px; font-size: var(--corpus-24); line-height: 1; letter-spacing: .02em; color: var(--cinis); font-variant-numeric: oldstyle-nums; }
.nomen-placitum .anni { white-space: nowrap; }
.lectiones { margin-top: 12px; max-width: 42em; font-size: var(--corpus-9); line-height: 1.55; color: var(--cinis); font-variant-numeric: lining-nums; }
.lectiones .inscriptio { margin-right: .5em; }
.lectiones i { color: var(--scriptura); }
.exemplar { margin: 26px 0 0; max-width: 560px; }
.exemplar figcaption { margin-top: 8px; font-size: var(--corpus-9); line-height: 1.45; color: var(--cinis); font-variant-numeric: lining-nums; }
.exemplar.nudata .charta-epistulae::after { opacity: 0; transition: opacity .9s ease; }
@media (hover: hover) { .exemplar:hover .charta-epistulae::after { opacity: 0; } }

.exordium-archon { margin-top: var(--spatium-5); max-width: 36em; }
.exordium-archon p { font-size: var(--corpus-14); line-height: 1.5; color: var(--atramentum); }

.exordium-archon p:first-child { font-size: var(--corpus-16); line-height: 1.42; }
.exordium-archon p + p, .textus-archae p + p { margin-top: .8em; }

.exordium-archon .ad-archetypum { margin-top: 1.4em; font-style: italic; }
.archa { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--intervallum); margin-top: var(--spatium-4); padding-top: 16px; border-top: 1px solid var(--linea); }
.exordium-archon + .archa { margin-top: var(--spatium-5); border-top-color: var(--atramentum); }
.archa > .inscriptio { grid-column: 1 / span 4; padding-top: .35em; }
.textus-archae { grid-column: 6 / -1; max-width: 36em; }
.textus-archae p { line-height: 1.6; color: var(--scriptura); }
@media (max-width: 999px) {
    .archa { display: block; }
    .textus-archae { margin-top: 12px; }
}

.archai { counter-reset: archa; }
.archai .archa { counter-increment: archa; }
.archai .archa > .inscriptio::before { content: counter(archa, upper-roman); display: inline-block; min-width: 3em; color: var(--minium); letter-spacing: .06em; }

.epigraphe-archon { width: min(25em, 100%); margin: var(--spatium-4) 0 0 auto; }
.epigraphe-archon blockquote p { font-size: var(--corpus-14); font-style: italic; line-height: 1.4; color: var(--atramentum); }
.epigraphe-archon figcaption { margin-top: 10px; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.epigraphe-archon cite, .gradus cite { font-style: normal; font-variant: small-caps; letter-spacing: .08em; white-space: nowrap; }
.epigraphe-archon cite::before { content: "— "; }

body.pagina-archon {
    --o: calc(var(--obscuritas, 0) * 100%);
    --i: calc(var(--inversio, 0) * 100%);
    --a: calc(var(--aurora, 0) * 100%);
    --r: calc(var(--reversio, 0) * 100%);
    --a1: calc(var(--aurora-prima, 0) * 100%);
    --a2: calc(var(--aurora-altera, 0) * 100%);
    --charta: color-mix(in oklab, color-mix(in oklab, color-mix(in oklab, var(--basis-charta, #F6F5F1), #0E0E0D var(--o)), #3B2C1F var(--a1)), #FBF5E8 var(--a2));
    --fundus: color-mix(in oklab, color-mix(in oklab, color-mix(in oklab, var(--basis-fundus, #ECEAE4), #161615 var(--o)), #45352A var(--a1)), #F3EAD6 var(--a2));
    --linea: color-mix(in oklab, color-mix(in oklab, color-mix(in oklab, var(--basis-linea, #D3CEC3), #2A2926 var(--o)), #5A4634 var(--a1)), #E2D4B6 var(--a2));
    --atramentum: color-mix(in oklab, color-mix(in oklab, var(--basis-atramentum, #1C1B19), #ECE9E2 var(--i)), #2A2218 var(--r));
    --scriptura: color-mix(in oklab, color-mix(in oklab, var(--basis-scriptura, #2E2D2A), #BEB9AF var(--i)), #3B3226 var(--r));
    --cinis: color-mix(in oklab, color-mix(in oklab, var(--basis-cinis, #4F4B44), #8E897F var(--i)), #75684F var(--r));
    --minium: color-mix(in oklab, color-mix(in oklab, var(--basis-minium, #B4524C), #8F3F3A var(--i)), #A8483F var(--r));
}

body.pagina-archon::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(130% 75% at 50% 112%, rgb(255 222 160 / .55), rgb(255 222 160 / 0) 70%); opacity: var(--aurora, 0); }
.limen-archon { margin: var(--spatium-7) auto 0; max-width: 30em; text-align: center; font-size: var(--corpus-12); font-style: italic; color: var(--cinis); }
.epekeina { padding: 0 0 clamp(160px, 30vh, 360px); }
.verbum-liminis { margin: clamp(96px, 20vh, 220px) 0 0; text-align: center; font-size: var(--corpus-10); letter-spacing: .3em; color: var(--cinis); }
.gradus { position: relative; isolation: isolate; max-width: 36rem; margin: 0 auto; padding-top: clamp(140px, 30vh, 320px); }
.gradus blockquote p { font-size: var(--corpus-16); line-height: 1.5; color: var(--atramentum); text-wrap: pretty; hanging-punctuation: first; }
.gradus.versus blockquote p { font-size: var(--corpus-14); line-height: 1.65; }
.gradus blockquote p + p { margin-top: .9em; }
.gradus .replica + .replica { margin-top: .5em; }
.persona { font-variant: small-caps; letter-spacing: .1em; color: var(--cinis); }
.gradus figcaption { margin-top: 20px; }
.gradus .versio p { font-size: var(--corpus-10); font-style: italic; line-height: 1.55; color: var(--cinis); }
.gradus .versio p + p { margin-top: .7em; }
.gradus cite { display: block; margin-top: 16px; font-size: var(--corpus-9); color: var(--cinis); }
.gradus cite i { font-variant: normal; letter-spacing: .02em; }

.gradus[data-actus="fons"] { max-width: 30rem; padding-top: clamp(200px, 46vh, 520px); text-align: center; }
.gradus[data-actus="fons"] blockquote p { font-size: var(--corpus-14); }

.fragmentum { display: inline-block; transform: translate(calc(var(--dx, 0) * var(--f, 0) * 1px), calc(var(--dy, 0) * var(--f, 0) * 1px)) rotate(calc(var(--dr, 0) * var(--f, 0) * 1deg)); opacity: calc(1 - var(--do, 0) * var(--f, 0)); }
.gradus[data-actus="fractura"] blockquote, .gradus[data-actus="restitutio"] blockquote { position: relative; isolation: isolate; }
.rimae, .suturae { position: absolute; z-index: -1; left: -9%; top: -30%; width: 118%; height: 152%; overflow: visible; pointer-events: none; }

.pagina-archon .colophon-signum .versus { transition: color 3.6s ease; }
.pagina-archon .colophon-signum .versus.aurata { color: #A9772F; }
.rimae path, .suturae path { fill: none; stroke-width: 1; vector-effect: non-scaling-stroke; stroke-dasharray: 1; stroke-linecap: round; }
.rimae path { stroke: rgb(236 233 226 / .38); stroke-dashoffset: calc(1 - clamp(0, var(--rima, 0) * 1.7 - var(--k, 0) * .7, 1)); }
.rimae path:nth-child(-n+3) { stroke: rgb(236 233 226 / .52); }
@keyframes ictus { 0% { transform: none; } 18% { transform: translate(-1.6px, .6px); } 38% { transform: translate(1.3px, -.7px); } 60% { transform: translate(-.6px, .3px); } 100% { transform: none; } }
.gradus.ictus blockquote > p { animation: ictus .42s ease-out; }
.suturae path { stroke: rgb(214 168 92 / .62); stroke-dashoffset: calc(1 - clamp(0, var(--sutura, 0) * 1.7 - var(--k, 0) * .7, 1)); }
.gradus[data-actus="dissolutio"] blockquote { filter: blur(calc(var(--solv, 0) * 2.4px)); opacity: calc(1 - var(--solv, 0) * .35); }
.gradus[data-actus="oculi"] blockquote { filter: blur(calc(var(--caligo, 0) * 3.4px)); }
.gradus[data-actus="lucerna"]::before { content: ""; position: absolute; z-index: -1; left: -22%; right: -22%; top: calc(clamp(140px, 30vh, 320px) - 18%); bottom: -18%; background: radial-gradient(closest-side, rgb(255 190 110 / .17), rgb(255 190 110 / 0)); opacity: var(--lux, 0); pointer-events: none; }

.pictura-gradus { max-width: min(44vw, 620px); }
.tabula-lucis { position: relative; }
.tabula-lucis img { display: block; width: 100%; height: auto; }
.tabula-lucis .visibilis { filter: brightness(calc(.035 + .965 * var(--visus, 1))) blur(calc((1 - var(--visus, 1)) * 2.2px)); }
.radii-tabulae img { position: absolute; inset: 0; opacity: var(--radii, 0); }
.pictura-gradus figcaption, .epekeina-viva .pictura-gradus figcaption, .epekeina-viva .pictura-gradus.visum figcaption { opacity: calc(var(--visus, 1) * 1.25 - .25); transition: none; }
.nomen-picturae { font-size: var(--corpus-10); font-style: italic; color: var(--atramentum); }
.pictura-gradus .versio { margin-top: 6px; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.radii-nota { height: 1.4em; margin-top: 8px; font-size: var(--corpus-8); letter-spacing: .14em; text-transform: uppercase; color: var(--cinis); opacity: var(--radii, 0); }
.pictura-gradus cite { font-variant: normal; letter-spacing: 0; font-size: var(--corpus-8); white-space: normal; }
.pictura-gradus cite a { color: inherit; }

.pulvis { position: fixed; inset: 0; z-index: -1; width: 100vw; height: 100vh; pointer-events: none; opacity: var(--pulvis, 0); }
@media (max-width: 719px) { .pictura-gradus { max-width: none; } }

.versus-epigraphes .versio { margin-top: 8px; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.versus-epigraphes + .versus-epigraphes { margin-top: 18px; }
.versus-epigraphes.latens { max-height: 0; overflow: hidden; opacity: 0; transition: max-height 2.6s ease, opacity 3.4s ease .9s; }
.versus-epigraphes.latens + .versus-epigraphes { margin-top: 0; transition: margin-top 2.6s ease; }
.versus-epigraphes.latens.revelata { max-height: 14em; opacity: 1; }
.versus-epigraphes.latens.revelata + .versus-epigraphes { margin-top: 18px; }

html:not(.epekeina-viva) .epekeina {
    --atramentum: #ECE9E2; --scriptura: #BEB9AF; --cinis: #8E897F; --linea: #2A2926;
    margin: var(--spatium-6) calc(50% - 50vw) 0;
    padding: var(--spatium-5) calc(50vw - 50%) clamp(160px, 36vh, 420px);
    background-color: #0E0E0D;
}
html:not(.epekeina-viva) .verbum-liminis { margin-top: 0; }

@media (prefers-reduced-motion: no-preference) {
    .epekeina-viva .gradus blockquote, .epekeina-viva .gradus figcaption { opacity: 0; transition: opacity 2.2s ease; }
    .epekeina-viva .gradus.visum blockquote { opacity: 1; }
    .epekeina-viva .gradus.visum figcaption { opacity: 1; transition-delay: 1.6s; }
}

@media (prefers-reduced-motion: reduce) {
    .fragmentum { transform: none; opacity: 1; }
    .gradus[data-actus] blockquote { filter: none; }
    .rimae path, .suturae path { stroke-dashoffset: 0; }
    .tabula-lucis .visibilis { filter: none; }
    .pictura-gradus figcaption { opacity: 1; }
    .gradus.ictus blockquote > p { animation: none; }
    .pulvis { display: none; }
    .versus-epigraphes.latens, .versus-epigraphes.latens + .versus-epigraphes { transition: none; }
}

@media print {
    body.pagina-archon { --o: 0% !important; --i: 0% !important; --a: 0% !important; --a1: 0% !important; --a2: 0% !important; --r: 0% !important; }
    body.pagina-archon::before, .rimae, .suturae, .gradus[data-actus="lucerna"]::before { display: none !important; }
    .epekeina { margin: 2em 0 0 !important; padding: 0 !important; background: none !important; }
    .epekeina .gradus blockquote, .epekeina .gradus figcaption { opacity: 1 !important; filter: none !important; }
    .fragmentum { transform: none !important; opacity: 1 !important; }
    .tabula-lucis .visibilis { filter: none !important; }
    .radii-tabulae, .pulvis, .radii-nota { display: none !important; }
    .pictura-gradus figcaption { opacity: 1 !important; }
    .gradus, .gradus[data-actus="fons"] { padding-top: 2.4em; break-inside: avoid; }
}
@media (max-width: 719px) {
    .gradus { padding-top: clamp(110px, 22vh, 200px); }
    .gradus blockquote p { font-size: var(--corpus-14); }
}

.libri-artificis { margin-top: var(--spatium-6); padding-top: 16px; border-top: 1px solid var(--atramentum); }
.libri-artificis + .libri-artificis { margin-top: var(--spatium-5); border-top-color: var(--linea); }
.libri { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--intervallum); margin: 22px 0 0; }
.liber { display: grid; grid-column: 1 / -1; grid-template-columns: subgrid; padding: 14px 0 15px; border-top: 1px solid var(--linea); }
.liber:last-child { border-bottom: 1px solid var(--linea); }
.liber .siglum { grid-column: 1 / span 4; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); font-variant-numeric: lining-nums; }
.liber .sigla { margin-right: .5em; letter-spacing: .06em; color: var(--atramentum); text-decoration: none; font-variant-numeric: lining-nums; }
.liber .descriptio { grid-column: 6 / -1; margin: 0; font-size: var(--corpus-10); line-height: 1.55; color: var(--atramentum); text-wrap: pretty; }
.liber .descriptio cite { font-style: italic; }
.numerus-libri { margin-left: .35em; font-size: var(--corpus-8); letter-spacing: .04em; color: var(--cinis); font-variant-numeric: lining-nums; }
.numerus-libri a { color: inherit; white-space: nowrap; }
.adnotatio-libri { margin-top: 4px; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.lingua-libri { display: block; margin-top: 2px; font-size: var(--corpus-8); font-style: italic; color: var(--cinis); }

.linguae-librorum { margin-top: var(--spatium-6); }
.linguae-librorum + .libri-artificis { margin-top: 0; border-top-color: var(--linea); }
.ordo button { padding: 0; border: 0; background: none; font-family: var(--littera); color: var(--atramentum); cursor: pointer; }
.ordo button:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .32em; }
.ordo button .numerus { letter-spacing: 0; color: var(--cinis); font-variant-numeric: lining-nums; }
.liber[hidden], .libri-artificis[hidden], .linguae-librorum[hidden] { display: none; }
abbr[title] { text-decoration: none; font-variant-numeric: lining-nums; }

.locus { position: relative; }
.locus::before {
    content: "";
    position: absolute;
    inset: -18% -14% -6%;
    z-index: -1;
    background: radial-gradient(closest-side, rgb(255 250 238 / .95), rgb(255 250 238 / 0));
    opacity: 0;
    pointer-events: none;
}
@media (hover: none) { .locus::before { display: none; } }

main { overflow-x: clip; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .locus::before { transition: opacity .7s ease; }
    :is(.tabella, .expositio-brevis) a:hover .locus::before { opacity: 1; }
}
.paries, .series { isolation: isolate; }

.titulus-praecipui { display: none; }
.paries:not(.ad-mensuram) .praecipua { grid-column: 1 / -1; container-type: normal; margin-block: var(--spatium-3); }
.paries:not(.ad-mensuram) .praecipua .titulus-praecipui { display: block; margin: 0 0 18px; text-align: center; }
.paries:not(.ad-mensuram) .praecipua .locus { width: fit-content; max-width: 100%; margin-inline: auto; height: min(64svh, 640px); }
.paries:not(.ad-mensuram) .praecipua .locus img { height: 100%; width: auto; object-fit: contain; }
.paries:not(.ad-mensuram) .praecipua .lemma { max-width: 34em; margin-inline: auto; text-align: center; }
.paries:not(.ad-mensuram) .praecipua .locus::before { inset: -12% -8% -5%; }

.tabella.reditus .locus::before { display: block; opacity: 1; transition: opacity .6s ease; }
.tabella.reditus-abit .locus::before { display: block; transition: opacity 1.8s ease; }

.imago-loci { margin: 16px 0 0; }
.imago-loci a { display: block; line-height: 0; }
.imago-loci img { display: block; width: 100%; height: auto; background-color: var(--fundus); }
.imago-loci figcaption { margin-top: 8px; font-size: var(--corpus-8); line-height: 1.45; color: var(--cinis); }
.imago-loci figcaption a { display: inline; position: static; color: inherit; }

.pinakes .quaestio { margin-top: 28px; }
.pinakes .quaestio { font-size: var(--corpus-9); }
.pinakes .quaestio input { width: min(100%, 26em); margin-left: 8px; padding: 6px 2px; border: 0; border-bottom: 1px solid var(--atramentum); background: none; font: inherit; color: var(--atramentum); }
.pinakes .quaestio input:focus { outline: none; border-bottom-width: 2px; }
.numerus-inventorum { margin-left: 12px; font-size: var(--corpus-9); color: var(--cinis); font-variant-numeric: lining-nums; }
.index-plenus { width: 100%; margin-top: var(--spatium-3); border-collapse: collapse; font-size: var(--corpus-9); line-height: 1.45; }
.index-plenus th { padding: 0 12px 10px 0; text-align: left; font-weight: normal; font-size: var(--corpus-8); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--cinis); border-bottom: 1px solid var(--linea); }
.index-plenus td { padding: 9px 12px 10px 0; vertical-align: baseline; border-bottom: 1px solid var(--linea); color: var(--scriptura); }
.index-plenus td:first-child { width: 34%; }
.index-plenus td.col-collectionis { width: 24%; }
.index-plenus td a { display: inline; color: var(--atramentum); text-decoration: none; }
.index-plenus td:first-child a:hover { text-decoration: underline; text-decoration-thickness: 1px; }
.index-plenus .nomen-originale { display: block; font-style: italic; color: var(--cinis); font-size: var(--corpus-9); }
.index-plenus .numeri { font-variant-numeric: lining-nums; white-space: nowrap; }
@media (max-width: 999px) { .index-plenus :is(.col-anni, .col-inventarii) { display: none; } }

body.solitudo :is(.vestibulum, .colophon, #res > :not(.catalogi)) { transition: opacity 1.2s ease; }
body.solitudo.solus :is(.vestibulum, .colophon, #res > :not(.catalogi, .reliqua)) { opacity: .3; }
.reliqua { margin-top: 32px; font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; }

.catalogi { list-style: none; margin: var(--spatium-5) 0 0; padding: 0; max-width: 1180px; }
.lemma-catalogi {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) clamp(160px, 18vw, 240px);
    column-gap: clamp(32px, 5vw, 72px);
    align-items: start;
    padding: 32px 0 36px clamp(56px, 7vw, 96px);
    border-top: 1px solid var(--linea);
    scroll-margin-top: 24px;
}
.lemma-catalogi > :not(.imago-lemmatis, .numerus-catalogi) { grid-column: 1; }
.imago-lemmatis { grid-column: 2; grid-row: 1 / span 6; justify-self: end; line-height: 0; }
.imago-lemmatis img { display: block; width: auto; height: auto; max-width: 100%; max-height: 240px; background-color: var(--fundus); }
.lemma-catalogi:last-child { border-bottom: 1px solid var(--linea); }
.numerus-catalogi { position: absolute; left: 0; top: 36px; font-size: var(--corpus-14); line-height: 1; font-variant-numeric: lining-nums tabular-nums; color: var(--cinis); }
.lemma-catalogi h2 { font-size: var(--corpus-16); line-height: 1.2; font-style: italic; }
.lemma-catalogi h2 a { text-decoration: none; }
.lemma-catalogi h2 a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .16em; }
.lemma-catalogi .nomen-originale { margin-top: 4px; font-style: italic; color: var(--cinis); }
.lemma-catalogi .notitia { margin-top: 18px; max-width: none; }
.lemma-catalogi .notitia > div { grid-template-columns: 8.5em minmax(0, 1fr); padding: 8px 0 9px; }
.notitia .numeri { font-variant-numeric: lining-nums; }

.notitia .raznochtenie dt { color: var(--minium); }

.nihil-emendatum { margin-top: 2.25em; font-size: var(--corpus-12); font-style: italic; color: var(--scriptura); }
.emendationes > .adnotatio { margin-top: 2em; }
.emendationes-omnes { margin-top: var(--spatium-6); }
.expositio-emendata { display: block; margin-bottom: 4px; font-size: var(--corpus-9); color: var(--cinis); }
.series-factorum { margin-top: 14px; }
.series-factorum summary, .imagines summary, .aestimatio summary { cursor: pointer; list-style: none; display: inline-flex; align-items: baseline; gap: 10px; font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--atramentum); }
.series-factorum summary::-webkit-details-marker, .imagines summary::-webkit-details-marker, .aestimatio summary::-webkit-details-marker { display: none; }
.series-factorum summary::after, .imagines summary::after, .aestimatio summary::after { content: ""; width: .38em; height: .38em; margin-left: .2em; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: translateY(-.15em) rotate(45deg); }
.series-factorum[open] summary::after, .imagines[open] summary::after, .aestimatio[open] summary::after { transform: translateY(.05em) rotate(-135deg); }
.series-factorum summary .numerus, .imagines summary .numerus { font-variant-numeric: lining-nums; letter-spacing: 0; color: var(--cinis); }
.series-factorum ol { margin: 12px 0 0; padding-left: 1.6em; font-size: var(--corpus-9); line-height: 1.55; color: var(--scriptura); }
.series-factorum li { padding: 2px 0; }
.series-factorum li::marker { font-variant-numeric: lining-nums; color: var(--cinis); font-size: var(--corpus-9); }
.series-factorum .genus { color: var(--cinis); }
.series-factorum .fons-seriei { margin-top: 8px; padding-left: 1.6em; font-size: var(--corpus-9); color: var(--cinis); }

.annales { margin-top: var(--spatium-5); }
.annales > .inscriptio { margin-bottom: 20px; }
.tempus { position: relative; overflow-x: auto; overscroll-behavior-x: contain; padding: 0 0 10px; scrollbar-width: thin; }
.tempus > ol { position: relative; list-style: none; margin: 0; padding: 0; min-width: 960px; }
.opera-in-annis { height: calc(var(--versus-operum) * 54px + 14px); }
.opera-in-annis > .opus { position: absolute; left: var(--x); bottom: calc(var(--versus) * 54px + 14px); transform: translateX(-50%); transition: opacity .45s ease; }
.opera-in-annis > .opus::after { content: ""; position: absolute; left: 50%; top: 100%; height: calc(var(--versus) * 54px + 14px); border-left: 1px solid var(--linea); }
.opera-in-annis > .opus a { display: block; line-height: 0; }
.opera-in-annis > .opus img { display: block; width: auto; height: 42px; max-width: 58px; background-color: var(--fundus); }
.opera-in-annis > .opus .titulus-operis { position: absolute; z-index: 2; bottom: calc(100% + 6px); left: 50%; transform: translateX(-50%); padding: 4px 8px; white-space: nowrap; font-size: var(--corpus-8); line-height: 1.3; color: var(--atramentum); background-color: var(--charta); opacity: 0; pointer-events: none; transition: opacity .25s ease; }
.opera-in-annis > .opus.ad-dextram .titulus-operis { left: 0; transform: none; }
.opera-in-annis > .opus.ad-sinistram .titulus-operis { left: auto; right: 0; transform: none; }
.opera-in-annis > .opus .numerus { color: var(--cinis); font-variant-numeric: lining-nums; }
.opera-in-annis > .opus a:is(:hover, :focus-visible) .titulus-operis { opacity: 1; }

.opera-in-annis > .opus:is(:hover, :focus-within) { z-index: 10; }
.domus-in-annis li:is(:hover, :focus-within) { z-index: 10; }
.opera-in-annis > .opus .titulus-operis, .domus-in-annis .nomen { box-shadow: 0 0 0 1px var(--linea); }
.domus-in-annis { height: 46px; border-top: 1px solid var(--atramentum); }
.domus-in-annis li { position: absolute; top: 0; bottom: 0; left: var(--x); width: var(--w); border-left: 1px solid var(--atramentum); transition: background-color .3s ease; }
.domus-in-annis a { display: block; height: 100%; padding: 7px 0 0 6px; text-decoration: none; }
.domus-in-annis .numerus { font-size: var(--corpus-8); letter-spacing: .1em; color: var(--atramentum); }
.domus-in-annis .nomen { position: absolute; z-index: 2; top: calc(100% + 4px); left: 0; padding: 3px 8px; white-space: nowrap; font-size: var(--corpus-8); color: var(--atramentum); background-color: var(--charta); opacity: 0; pointer-events: none; transition: opacity .25s ease; }
.domus-in-annis li:nth-last-child(-n+3) .nomen { left: auto; right: 0; }
.domus-in-annis li:is(:hover, :focus-within) { background-color: color-mix(in srgb, var(--color-expositionis, var(--linea)) 16%, transparent); }
.domus-in-annis li:is(:hover, :focus-within) .nomen { opacity: 1; }
.tempus:has(.domus-in-annis [data-domus="0"]:is(:hover, :focus-within)) .opera-in-annis > .opus:not([data-domus~="0"]),
.tempus:has(.domus-in-annis [data-domus="1"]:is(:hover, :focus-within)) .opera-in-annis > .opus:not([data-domus~="1"]),
.tempus:has(.domus-in-annis [data-domus="2"]:is(:hover, :focus-within)) .opera-in-annis > .opus:not([data-domus~="2"]),
.tempus:has(.domus-in-annis [data-domus="3"]:is(:hover, :focus-within)) .opera-in-annis > .opus:not([data-domus~="3"]),
.tempus:has(.domus-in-annis [data-domus="4"]:is(:hover, :focus-within)) .opera-in-annis > .opus:not([data-domus~="4"]),
.tempus:has(.domus-in-annis [data-domus="5"]:is(:hover, :focus-within)) .opera-in-annis > .opus:not([data-domus~="5"]),
.tempus:has(.domus-in-annis [data-domus="6"]:is(:hover, :focus-within)) .opera-in-annis > .opus:not([data-domus~="6"]),
.tempus:has(.domus-in-annis [data-domus="7"]:is(:hover, :focus-within)) .opera-in-annis > .opus:not([data-domus~="7"]) { opacity: .12; }
.eventa { height: calc(var(--versus-eventorum) * 22px + 16px); }
.eventa li { position: absolute; left: var(--x); top: calc(var(--versus) * 22px + 10px); padding-left: 6px; border-left: 1px solid var(--linea); white-space: nowrap; font-size: var(--corpus-8); line-height: 1.25; color: var(--cinis); }
.eventa li.ad-sinistram { padding: 0 6px 0 0; border-left: 0; border-right: 1px solid var(--linea); transform: translateX(-100%); }
.eventa time { color: var(--atramentum); font-variant-numeric: lining-nums; }
.scala-annorum { height: 22px; margin-top: 6px; border-top: 1px solid var(--linea); }
.scala-annorum li { position: absolute; top: 4px; left: var(--x); transform: translateX(-50%); font-size: var(--corpus-7); color: var(--cinis); font-variant-numeric: lining-nums; }
.scala-annorum li:first-child { transform: none; }
.scala-annorum li:last-child { transform: translateX(-100%); }
.fons-annorum { margin-top: 14px; max-width: 46em; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.domicilia .domus { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--intervallum); margin-top: var(--spatium-5); padding-top: 20px; border-top: 1px solid var(--linea); scroll-margin-top: 24px; }
.margo-domus { grid-column: 1 / span 4; }
.margo-domus .anni { margin: 0; font-size: var(--corpus-20); line-height: 1.1; color: var(--cinis); font-variant-numeric: oldstyle-nums; }
.numerus-domus { margin: 10px 0 0; font-size: var(--corpus-9); letter-spacing: .16em; color: var(--atramentum); }
.margo-domus h2 { margin: 8px 0 0; font-size: var(--corpus-18); font-weight: 400; line-height: 1.2; color: var(--atramentum); text-wrap: balance; }
.margo-domus .nomen-patrium { margin-top: 8px; font-style: italic; color: var(--cinis); }
.corpus-domus { grid-column: 6 / -1; }
.verba-bramseni { margin: 0; }
.verba-bramseni blockquote { margin: 0; font-size: var(--corpus-12); line-height: 1.5; color: var(--atramentum); text-wrap: pretty; hanging-punctuation: first; }
.verba-bramseni .versio { margin-top: 12px; max-width: 38em; font-style: italic; line-height: 1.55; color: var(--scriptura); }
.verba-bramseni .fons-verborum { margin-top: 10px; }
.imagines-domus { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 28px; margin-top: 36px; }
.imago-loci { flex: 1 1 240px; max-width: 420px; margin: 0; }
.imago-loci img { display: block; width: 100%; height: auto; background-color: var(--fundus); }
.imago-loci figcaption { margin-top: 10px; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.imago-loci figcaption > span { display: block; }
.imago-loci [lang="da"] { color: var(--atramentum); }
.imago-loci .versio { font-style: italic; }
.titulus-operum { margin: 36px 0 10px; }
.domicilia .titulus + .verbum-prooemii { margin-top: var(--spatium-3); }

@media (max-width: 719px) { .annales { display: none; } }
@media (max-width: 999px) {
    .domicilia .domus { display: block; }
    .corpus-domus { margin-top: 24px; }
}
@media (prefers-reduced-motion: reduce) { .opera-in-annis > .opus, .domus-in-annis li, .opera-in-annis > .opus .titulus-operis, .domus-in-annis .nomen { transition: none; } }

.index-operum { list-style: none; margin: 10px 0 0; padding: 0; border-top: 1px solid var(--linea); }
.index-operum li { border-bottom: 1px solid var(--linea); }
.index-operum a { display: grid; grid-template-columns: 60px 2em minmax(0, 1fr); column-gap: 12px; align-items: center; padding: 8px 0; text-decoration: none; color: var(--atramentum); font-size: var(--corpus-9); line-height: 1.3; }
.index-operum img { grid-row: 1 / span 3; display: block; width: auto; height: auto; max-width: 60px; max-height: 52px; background-color: var(--fundus); }
.index-operum .numerus { grid-row: 1 / span 3; color: var(--cinis); font-variant-numeric: lining-nums; }
.index-operum :is(.nomen, .nomen-originale, .numeri) { grid-column: 3; }
.index-operum .nomen-originale { font-size: var(--corpus-8); font-style: italic; color: var(--cinis); }
.index-operum .numeri { font-size: var(--corpus-8); color: var(--cinis); font-variant-numeric: lining-nums; }
.index-operum a:hover .nomen { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }

.tabula-locorum { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 340px); gap: var(--intervallum); margin-top: var(--spatium-4); align-items: start; }
.charta-urbis { position: relative; margin: 0; }
.charta-urbis > img { display: block; width: 100%; height: auto; aspect-ratio: var(--r); background-color: var(--charta); }
.viae-signatae { position: absolute; inset: 0; width: 100%; height: auto; aspect-ratio: var(--r); pointer-events: none; }
.viae-signatae path { fill: none; stroke: var(--atramentum); stroke-width: 5; stroke-linecap: round; opacity: .55; transition: opacity .25s ease, stroke .25s ease; }
.viae-signatae path.lucet { stroke: var(--minium); opacity: .9; }
.signa-locorum { position: absolute; inset: 0; list-style: none; margin: 0; padding: 0; aspect-ratio: var(--r); }
.signum-loci { position: absolute; left: var(--x); top: var(--y); transform: translate(calc(-50% + var(--dx, 0px)), calc(-50% + var(--dy, 0px))); }
.signum-loci a { display: grid; place-items: center; min-width: 26px; height: 26px; padding: 0 4px; text-decoration: none; font-size: var(--corpus-7); letter-spacing: .04em; line-height: 1; color: var(--charta); background-color: var(--atramentum); border-radius: 13px; font-variant-numeric: lining-nums; transition: background-color .2s ease, transform .2s ease; }
.signum-loci.opus a { border-radius: 0; background-color: var(--scriptura); }
.signum-loci a:is(:hover, :focus-visible), .signum-loci.lucet a { background-color: var(--minium); transform: scale(1.12); }
.signum-loci .titulus-loci { position: absolute; z-index: 3; left: 50%; bottom: calc(100% + 6px); transform: translateX(-50%); padding: 3px 8px; white-space: nowrap; font-size: var(--corpus-8); letter-spacing: 0; color: var(--atramentum); background-color: var(--charta); box-shadow: 0 0 0 1px var(--linea); opacity: 0; pointer-events: none; transition: opacity .2s ease; }
.signum-loci:is(:hover, :focus-within) { z-index: 5; }
.signum-loci:is(:hover, :focus-within) .titulus-loci { opacity: 1; }
.charta-urbis figcaption { margin-top: 10px; font-size: var(--corpus-8); line-height: 1.5; color: var(--cinis); }
.tabulae-index { max-height: min(78vh, 900px); overflow-y: auto; scrollbar-width: thin; border-top: 1px solid var(--linea); }

.tabulae-index .statio { padding: 16px 0 18px; border-bottom: 1px solid var(--linea); scroll-margin-top: 12px; transition: background-color .3s ease; }
.tabulae-index .statio.lucet, .tabulae-index .statio:target { background-color: color-mix(in srgb, var(--minium) 7%, transparent); }
.statio h2 { margin: 6px 0 0; font-size: var(--corpus-12); font-weight: 400; line-height: 1.25; color: var(--atramentum); }
.statio .accuratio { margin-top: 6px; font-size: var(--corpus-8); line-height: 1.45; color: var(--cinis); }
.statio blockquote { margin: 10px 0 0; font-size: var(--corpus-9); line-height: 1.5; color: var(--atramentum); }
.statio .versio { margin-top: 4px; font-size: var(--corpus-9); font-style: italic; line-height: 1.5; color: var(--scriptura); }
.statio .fons-verborum { font-style: normal; color: var(--cinis); }
.extra-urbem, .loca-ignota { margin-top: var(--spatium-5); max-width: 52em; }
.extra-urbem .nomen-loci { font-size: var(--corpus-10); color: var(--atramentum); }
.extra-urbem .numeri { font-size: var(--corpus-9); color: var(--cinis); }
@media (max-width: 999px) {
    .tabula-locorum { grid-template-columns: 1fr; }
    .tabulae-index { max-height: none; overflow: visible; }
    .signum-loci a { min-width: 20px; height: 20px; font-size: var(--corpus-7); }
}
.signum-loci.praesens a { background-color: var(--minium); }
.charta-temporis { position: relative; margin: 0; }
.folium-chartae { position: relative; line-height: 0; }
.folium-chartae img { display: block; width: 100%; height: auto; }
.signum-loci.anulus a { width: 30px; min-width: 0; height: 30px; padding: 0; color: transparent; background: none; border: 1.5px solid rgb(52 34 20 / .85); border-radius: 50% 46% 52% 48% / 48% 53% 47% 50%; box-shadow: 0 0 0 1px rgb(250 243 228 / .5); }
.signum-loci.anulus a:is(:hover, :focus-visible), .signum-loci.anulus.lucet a, .signum-loci.anulus.praesens a { background: none; border-width: 2.5px; border-color: rgb(40 24 12 / .95); }
.signum-loci.anulus .titulus-loci { color: var(--atramentum); }
.fenestra-chartae { position: absolute; left: var(--x); top: var(--y); width: var(--w); height: var(--h); }
.fenestra-chartae a { display: block; width: 100%; height: 100%; border: 1px dashed rgb(52 34 20 / .8); text-decoration: none; }
.fenestra-chartae span { position: absolute; left: 0; bottom: 100%; padding: 2px 6px; font-size: var(--corpus-7); line-height: 1.3; color: rgb(40 24 12); background-color: rgb(244 236 218 / .9); }
.charta-temporis figcaption { margin-top: 10px; font-size: var(--corpus-8); line-height: 1.5; color: var(--cinis); }
.index-partium ol { list-style: none; margin: 18px 0 0; padding: 0; }
.pars-locorum { margin-top: var(--spatium-5); }
.opera-loci { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 14px; }
.opus-loci { margin: 0; flex: 1 1 200px; }
.opus-loci img { display: block; max-width: 100%; height: auto; }
.opus-loci figcaption { margin-top: 6px; font-size: var(--corpus-8); color: var(--cinis); }
.opus-loci .nota-operis { display: block; }
.verbum-loci { margin-top: 14px; }
.imago-temporis img { max-width: 100%; height: auto; }
@media (prefers-reduced-motion: reduce) { .signum-loci a, .viae-signatae path, .tabulae-index .statio { transition: none; } }
.lemma-bramseni { margin: 12px 0 0; max-width: 46em; font-size: var(--corpus-9); line-height: 1.6; color: var(--atramentum); }
.lemma-bramseni .numerus { font-weight: 600; font-variant-numeric: lining-nums; }
.lemma-bramseni sup { font-size: .7em; }
.series-factorum .annus { display: inline-block; min-width: 3.2em; color: var(--cinis); font-variant-numeric: lining-nums; }

.apparatus { margin-top: var(--spatium-5); max-width: 46rem; padding-top: 16px; border-top: 1px solid var(--atramentum); }
.apparatus h3.inscriptio { margin: 36px 0 12px; font-weight: 400; }
.apparatus > p { max-width: 40rem; font-size: var(--corpus-9); line-height: 1.6; color: var(--scriptura); text-wrap: pretty; }
.apparatus .notitia { margin-top: 0; max-width: none; }
.apparatus .indicia { margin-top: 18px; }
.apparatus .notitia > div { grid-template-columns: 13rem minmax(0, 1fr); }
.apparatus .notitia dd { font-size: var(--corpus-9); line-height: 1.5; }

.bibliographia { margin: 0; padding: 0; list-style: none; font-size: var(--corpus-9); line-height: 1.55; color: var(--scriptura); }
.bibliographia li { padding-left: 1.6em; text-indent: -1.6em; text-wrap: pretty; }
.bibliographia li + li { margin-top: 7px; }
.bibliographia cite { font-style: italic; }
.imagines { margin-top: 36px; }
.imagines table { width: 100%; margin-top: 12px; border-collapse: collapse; font-size: var(--corpus-8); }
.imagines :is(th, td) { padding: 6px 10px 6px 0; border-bottom: 1px solid var(--linea); text-align: left; vertical-align: baseline; font-weight: 400; color: var(--scriptura); }
.imagines th { font-size: var(--corpus-7); letter-spacing: .12em; text-transform: uppercase; color: var(--cinis); }
.aestimatio { margin-top: 18px; }
.aestimatio p { max-width: 40rem; margin-top: 12px; font-size: var(--corpus-9); line-height: 1.6; color: var(--scriptura); text-wrap: pretty; }
.colophon-addendorum { margin-top: var(--spatium-5); max-width: 46em; }
.colophon-addendorum p { margin-top: 12px; font-size: var(--corpus-9); line-height: 1.6; color: var(--scriptura); }
@media (max-width: 719px) {
    .lemma-catalogi { padding-left: 0; grid-template-columns: minmax(0, 1fr) 96px; column-gap: 20px; }
    .imago-lemmatis img { max-height: 120px; }
    .numerus-catalogi { position: static; display: block; margin-bottom: 10px; font-size: var(--corpus-11); }
}

.opus .ad-expositionem { overflow: hidden; text-overflow: ellipsis; max-width: 42vw; }
.numerus-operis { font-variant-numeric: lining-nums tabular-nums; }
.aula {
    display: grid;
    grid-template-columns: var(--sagitta) minmax(0, 1fr) var(--sagitta);
    align-items: center;
    min-height: calc(100svh - var(--vestibulum));
    padding-bottom: 24px;
}
.tabula { justify-self: center; display: grid; width: fit-content; max-width: 100%; }
.amplificatio { display: block; line-height: 0; touch-action: pan-y pinch-zoom; -webkit-tap-highlight-color: transparent; }
a.amplificatio { cursor: zoom-in; }

.tabula img { display: block; --alt: calc(100svh - 300px); width: min(100%, calc(var(--alt) * var(--r))); max-height: var(--alt); height: auto; max-width: 100%; background-color: var(--fundus); }

.schedula {
    contain: inline-size;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    column-gap: 32px;
    margin-top: 24px;
    font-size: var(--corpus-9);
    line-height: 1.45;
}
.schedula.sine-catalogo { grid-template-columns: minmax(0, 1fr); }
.schedula .auctor { font-size: var(--corpus-11); color: var(--atramentum); }
.schedula .auctor a { text-decoration: none; }
.schedula .auctor a:hover { text-decoration: underline; }
.schedula .patria { color: var(--cinis); margin-bottom: 10px; }
.schedula .nomen { font-size: var(--corpus-14); font-style: italic; line-height: 1.25; text-wrap: balance; }
.schedula .nomen-originale { margin-top: 3px; font-style: italic; color: var(--cinis); }
.schedula .annus { margin-top: 4px; font-size: var(--corpus-10); }
.catalogus { padding-left: 24px; border-left: 1px solid var(--linea); color: var(--cinis); }
.catalogus :is(.materia, .custodia) { color: var(--scriptura); }
.catalogus p + p { margin-top: 3px; }
.catalogus .numeri { font-variant-numeric: lining-nums; letter-spacing: .02em; }

.interlinearis { display: flex; flex-wrap: wrap; column-gap: .55em; row-gap: 6px; align-items: flex-start; }
.interlinearis .vox { display: inline-flex; flex-direction: column; }
.interlinearis .vox::after { content: attr(data-glossa); content: attr(data-glossa) / ""; font-style: normal; font-size: .68em; letter-spacing: .03em; line-height: 1.3; color: var(--cinis); opacity: .85; user-select: none; -webkit-user-select: none; }
.catalogus .numerus-pinacothecae { margin-top: 3px; font-variant-numeric: lining-nums; letter-spacing: .02em; color: var(--cinis); }
.numerus-pinacothecae abbr { text-decoration: none; letter-spacing: .08em; }
.caput .numerus-pinacothecae { margin-top: 6px; font-size: var(--corpus-9); font-variant-numeric: lining-nums; color: var(--cinis); }
.catalogus .fons { display: block; margin-top: 8px; font-size: var(--corpus-9); color: var(--cinis); text-decoration: none; }
.catalogus a.fons:hover { text-decoration: underline; }

@media (min-width: 1100px) {
    .schedula-ad-latus { --latitudo-schedulae: clamp(260px, 16.5vw, 320px); grid-template-columns: auto var(--latitudo-schedulae); column-gap: 36px; align-items: end; }
    .schedula-ad-latus img { --alt: calc(100svh - 150px); max-width: calc(100vw - 2 * var(--sagitta) - var(--latitudo-schedulae) - 36px); }
    .schedula-ad-latus .schedula { display: block; margin-top: 0; padding-bottom: 2px; }
    .schedula-ad-latus .catalogus { margin-top: 18px; padding: 16px 0 0; border-left: 0; border-top: 1px solid var(--linea); }
}

.ad-mensuram-operis { display: block; margin-top: 2px; padding: 0; border: 0; background: none; font: inherit; color: var(--cinis); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; text-decoration-color: rgb(28 27 25 / .3); cursor: pointer; }
.ad-mensuram-operis:hover { color: var(--atramentum); }
.mensura-operis { width: 100vw; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background-color: var(--paries, var(--charta)); color: var(--scriptura); overflow: hidden; }
.mensura-operis::backdrop { background-color: var(--paries, var(--charta)); }
.mensura-operis[open] { display: grid; grid-template-rows: auto minmax(0, 1fr); grid-template-columns: minmax(0, 1fr); }
.mensura-operis .modi { display: flex; justify-content: center; gap: 36px; padding: 28px 72px 0; font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; }
.mensura-operis .modi[hidden] { display: none; }
.mensura-operis .modi button { padding: 0 0 4px; border: 0; background: none; font: inherit; letter-spacing: inherit; text-transform: inherit; color: var(--cinis); cursor: pointer; }
.mensura-operis .modi button[aria-pressed="true"] { color: var(--atramentum); box-shadow: inset 0 -1px 0 currentColor; }
.mensura-operis .claude { color: var(--cinis); background: none; }
.mensura-operis .claude:hover { color: var(--atramentum); }
.mensura-operis .scaena { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 0; padding: 20px; }
.area-homo { position: relative; flex: 0 0 auto; }
.area-homo .homo { position: absolute; left: 0; bottom: 0; fill: none; stroke: var(--cinis); stroke-width: 1; opacity: .7; overflow: visible; }
.area-homo .homo * { vector-effect: non-scaling-stroke; }
.area-homo .solum { position: absolute; left: -24px; right: -24px; bottom: 0; height: 1px; background-color: var(--linea); }
.tabula-ad-mensuram { display: block; object-fit: fill; background-color: var(--fundus); }
.area-homo .tabula-ad-mensuram { position: absolute; }
.signum-mensurae { margin-top: 18px; font-size: var(--corpus-9); color: var(--cinis); font-variant-numeric: lining-nums; text-align: center; }
.signum-mensurae .recalibrare { padding: 0; border: 0; background: none; font: inherit; color: inherit; text-decoration: underline; cursor: pointer; }
.campus-verus { max-width: 100%; max-height: calc(100% - 48px); overflow: auto; cursor: grab; overscroll-behavior: contain; }
.campus-verus.trahitur { cursor: grabbing; }
.campus-verus .tabula-ad-mensuram { max-width: none; max-height: none; }
:is(.campus img, .tabula-ad-mensuram, .imago-rari, .amplificatio img) { -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; }
.calibratio { display: flex; flex-direction: column; align-items: center; gap: 22px; max-width: 34em; text-align: center; }
.charta-argentaria { border: 1px solid var(--atramentum); border-radius: 3.18mm; }
.calibratio input { width: min(80vw, 420px); accent-color: var(--atramentum); }
.calibratio .factum { padding: 8px 18px; border: 1px solid var(--atramentum); background: none; font: inherit; font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--atramentum); cursor: pointer; }

.amplificatio { position: relative; }
@media (scripting: enabled) {
    .aula .amplificatio img { opacity: 0; background-color: transparent; animation: apparitio .6s ease 8s forwards; }
    .aula.parata .amplificatio img { opacity: 1; animation: none; transition: opacity .6s cubic-bezier(.25, .6, .3, 1); }
    .aula.abit .amplificatio img { opacity: 0; transition: opacity .32s ease-in; }
    .schedula-tarda .schedula { opacity: 0; animation: apparitio 1s ease 4s forwards; }
    .schedula-tarda.schedula-visa .schedula { opacity: 1; animation: none; transition: opacity 1.4s ease; }
    .aula.abit .schedula { opacity: 0; transition: opacity .25s ease-in; }
}

@media (scripting: enabled) {
    .ad-scribendum.tardum { opacity: 0; visibility: hidden; animation: apparitio-visibilis 1s ease 120s forwards; }
    .scribere-licet .ad-scribendum.tardum { opacity: 1; visibility: visible; animation: none; transition: opacity 1.4s ease; }
}
@keyframes apparitio-visibilis { to { opacity: 1; visibility: visible; } }

.aula.exspectat .amplificatio::after {
    content: "";
    position: absolute;
    top: 50%;
    left: calc(50% - 28px);
    width: 56px;
    height: 1px;
    background-color: var(--cinis);
    animation: spiritus 2.4s ease-in-out infinite;
}
@keyframes apparitio { to { opacity: 1; } }
@keyframes spiritus { 0%, 100% { opacity: .1; } 50% { opacity: .6; } }
@media (prefers-reduced-motion: reduce) {
    .aula .amplificatio img, .aula .schedula { transition: none !important; }
    .aula.exspectat .amplificatio::after { animation: none; opacity: .4; }
}

.epilogus .verbum-ultimum { justify-self: center; max-width: 36rem; margin: 0; padding: 0 0 6vh; }
.verbum-ultimum blockquote { margin: 0; font-size: var(--corpus-18); line-height: 1.45; color: var(--atramentum); text-wrap: balance; hanging-punctuation: first; }
.verbum-ultimum .versio { margin-top: 20px; font-style: italic; font-size: var(--corpus-11); line-height: 1.55; color: var(--scriptura); text-wrap: pretty; }
.verbum-ultimum .fons-verborum { margin-top: 18px; }
.sagitta.vacua { pointer-events: none; }
@media (prefers-reduced-motion: no-preference) {
    .verbum-ultimum blockquote { animation: apparitio-lenta 2.4s ease 1.2s backwards; }
    .verbum-ultimum figcaption { animation: apparitio-lenta 2s ease 4.2s backwards; }
    .exitus { animation: apparitio-lenta 1.6s ease 6.5s backwards; }
}
@keyframes apparitio-lenta { from { opacity: 0; } }
.exitus { display: flex; gap: 40px; margin-top: clamp(40px, 6vh, 64px); font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; }
.exitus a { color: var(--cinis); text-decoration: none; }
.exitus a:hover, .exitus a:focus-visible { color: var(--atramentum); }

.sagitta {
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--cinis);
    text-decoration: none;
    transition: color .2s;
}
.sagitta svg { fill: none; stroke: currentColor; stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; transition: transform .25s; }
.sagitta:hover, .sagitta:focus-visible { color: var(--atramentum); }
.sagitta.retro:hover svg { transform: translateX(-4px); }
.sagitta.porro:hover svg { transform: translateX(4px); }
.sagitta:focus-visible { outline-offset: -8px; }
.verbum { display: none; color: var(--atramentum); }
@media (prefers-reduced-motion: reduce) { .sagitta svg { transition: none; } .sagitta:hover svg { transform: none; } }

.verba-artificis { width: 100%; max-width: calc(760px + 2 * var(--margo)); margin: var(--spatium-5) auto 0; padding: 0 var(--margo); }
.verba-artificis > .inscriptio { padding-top: 16px; border-top: 1px solid var(--minium); }
.verba-artificis blockquote { margin: 22px 0 0; font-size: var(--corpus-14); line-height: 1.45; color: var(--atramentum); text-wrap: pretty; hanging-punctuation: first; }
.verba-artificis .versio { margin-top: 14px; font-style: italic; font-size: var(--corpus-10); line-height: 1.55; color: var(--scriptura); text-wrap: pretty; }
.fons-verborum { margin-top: 14px; font-size: var(--corpus-9); color: var(--cinis); font-variant-numeric: lining-nums; }
.nota-verborum { margin-top: 8px; max-width: 42em; font-size: var(--corpus-9); line-height: 1.55; color: var(--cinis); text-wrap: pretty; }

.archetypum { width: 100%; max-width: calc(1000px + 2 * var(--margo)); margin: var(--spatium-5) auto 0; padding: 0 var(--margo); }
.archetypum > .inscriptio { padding-top: 16px; border-top: 1px solid var(--linea); }
.archetypum figure { display: grid; grid-template-columns: minmax(0, 560px) minmax(0, 1fr); gap: 36px; align-items: end; margin: 22px 0 0; }
.imago-archetypi { display: block; line-height: 0; cursor: zoom-in; }
.imago-archetypi img { display: block; width: 100%; height: auto; background-color: var(--fundus); }
.archetypum figcaption { font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); font-variant-numeric: lining-nums; }
.archetypum .auctor { font-size: var(--corpus-10); color: var(--atramentum); }
.archetypum .nomen { font-style: italic; font-size: var(--corpus-11); color: var(--atramentum); }
.archetypum .nomen-originale { font-style: italic; margin-bottom: 8px; }
.archetypum figcaption p + p { margin-top: 2px; }
.archetypum .nota-verborum { margin-top: 12px; }
@media (max-width: 999px) { .archetypum figure { grid-template-columns: 1fr; gap: 16px; } }
.archetypum figure.sine-imagine { grid-template-columns: minmax(0, 40em); }

.inscriptiones-operis { width: 100%; max-width: calc(760px + 2 * var(--margo)); margin: var(--spatium-5) auto 0; padding: 0 var(--margo); }
.inscriptiones-operis > .inscriptio { padding-top: 16px; border-top: 1px solid var(--linea); }
.inscriptiones .inscriptum + .inscriptum { margin-top: 18px; }
.inscriptiones-operis .inscriptum:first-child { margin-top: 18px; }
.inscriptiones .verba-inscripta { font-size: var(--corpus-10); line-height: 1.55; color: var(--atramentum); font-variant-numeric: lining-nums; }
.inscriptiones .versio { margin-top: 8px; font-style: italic; font-size: var(--corpus-9); line-height: 1.55; color: var(--scriptura); font-variant-numeric: lining-nums; }
.inscriptiones .genus { margin-top: 2px; font-size: var(--corpus-9); color: var(--cinis); }

.appendices { margin-top: 2.25em; max-width: 34em; }
.appendices > .inscriptio { margin-bottom: 10px; }
.appendices ol { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--linea); }
.appendices li { display: grid; grid-template-columns: 2.4em minmax(0, 1fr); column-gap: 8px; padding: 12px 0 13px; border-bottom: 1px solid var(--linea); }
.appendices .numerus { grid-row: 1 / span 2; font-size: var(--corpus-9); letter-spacing: .08em; color: var(--color-expositionis, var(--cinis)); padding-top: .2em; }
.appendices a { font-size: var(--corpus-10); color: var(--atramentum); }
.appendices .argumentum { margin-top: 3px; font-size: var(--corpus-9); line-height: 1.45; color: var(--cinis); }

.titulus .delectus { margin-top: 22px; max-width: 46em; }
.titulus .delectus .inscriptio { margin: 0 0 8px; color: var(--cinis); }
.titulus .delectus p:not(.inscriptio) { font-size: var(--corpus-10); line-height: 1.6; color: var(--scriptura); text-wrap: pretty; }
.titulus .delectus p + p { margin-top: .55em; }
.titulus .delectus .gradus-delectus { padding-left: 1.2em; text-indent: -1.2em; }
.titulus .delectus a { color: var(--atramentum); text-decoration: none; background-image: linear-gradient(var(--linea), var(--linea)); background-size: 100% 1px; background-position: 0 92%; background-repeat: no-repeat; }
.titulus .delectus a:hover { background-image: linear-gradient(var(--atramentum), var(--atramentum)); }

.apparatus-operis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px var(--intervallum); width: 100%; max-width: var(--latitudo); margin: var(--spatium-5) auto 0; padding: 0 var(--margo); }
.apparatus-operis > section { margin: 0; padding: 16px 0 0; max-width: none; width: auto; border-top: 1px solid var(--linea); }
.apparatus-operis > section > .inscriptio { margin: 0 0 12px; padding: 0; border: 0; }
.apparatus-operis .forma-vidi button, .apparatus-operis .actiones a { padding: 0; border: 0; background: none; font-family: var(--littera); font-size: var(--corpus-9); letter-spacing: .14em; text-transform: uppercase; font-feature-settings: "case"; color: var(--atramentum); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .32em; text-decoration-color: rgb(28 27 25 / .3); cursor: pointer; }

.apparatus-operis .ad-contemplationem { display: flex; width: 100%; min-height: 48px; align-items: center; gap: 14px; padding: 12px 0; border: 0; border-block: 1px solid var(--linea); background: none; color: var(--atramentum); font-family: var(--littera); font-size: var(--corpus-10); letter-spacing: .14em; text-transform: uppercase; font-feature-settings: "case"; text-align: left; cursor: pointer; transition: border-color .4s ease; }
.apparatus-operis .ad-contemplationem:hover, .apparatus-operis .ad-contemplationem:focus-visible { border-color: var(--atramentum); }
.apparatus-operis .ad-contemplationem:focus-visible { outline: none; }
.apparatus-operis .ad-contemplationem .signum-contemplationis { flex: 0 0 auto; transform-origin: left center; transition: transform .4s ease, opacity .4s ease; }
.apparatus-operis .ad-contemplationem:is(:hover, :focus-visible) .signum-contemplationis { opacity: 1; transform: scale(1.35); }
@media (prefers-reduced-motion: reduce) { .apparatus-operis .ad-contemplationem, .apparatus-operis .ad-contemplationem .signum-contemplationis { transition: none; } }
.apparatus-operis .nota-contemplationis, .apparatus-operis .series-annorum { margin-top: 0; max-width: 30em; font-size: var(--corpus-9); line-height: 1.55; color: var(--cinis); }
.apparatus-operis .nota-contemplationis { margin-top: 12px; }
.apparatus-operis .forma-vidi { margin-top: 12px; font-size: var(--corpus-9); }
.apparatus-operis .actiones { margin-top: 0; gap: 10px 24px; }

.apparatus-operis .forma-vidi .po-kapcha { display: none; }
.apparatus-operis .forma-vidi:focus-within .po-kapcha { display: block; }
@media (max-width: 999px) { .apparatus-operis { grid-template-columns: 1fr; } }

.signum-contemplationis { width: 9px; height: 9px; border-radius: 50%; background-color: currentColor; opacity: .8; }
.nota-contemplationis { margin-top: 12px; max-width: 36em; font-size: var(--corpus-9); line-height: 1.55; color: var(--cinis); }
.contemplatio { position: fixed; inset: 0; z-index: 50; width: 100vw; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background-color: #0B0B0A; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3.5dvh; cursor: none; opacity: 0; transition: opacity 2.4s ease; }
.contemplatio[open] { opacity: 1; }

.contemplatio:not([open]) { display: none; }
@starting-style { .contemplatio[open] { opacity: 0; } }
.contemplatio::backdrop { background-color: #0B0B0A; }
.contemplatio.motus { cursor: default; }
.contemplatio picture { display: contents; }
.contemplatio img { max-width: 92vw; max-height: 86dvh; width: auto; height: auto; }
.contemplatio:has(.verba-tarda) img { max-height: 74dvh; }
.contemplatio .verba-tarda { width: min(760px, 86vw); min-height: 7.5em; text-align: center; color: #CFCAC0; opacity: 0; transition: opacity 12s ease; }
.contemplatio .verba-tarda.apparent { opacity: .82; }
.contemplatio .verba-tarda blockquote { margin: 0; font-size: var(--corpus-11); line-height: 1.5; }
.contemplatio .verba-tarda .versio { margin-top: 8px; font-size: var(--corpus-9); font-style: italic; color: #A9A499; }
@media (prefers-reduced-motion: reduce) { .contemplatio, .contemplatio .verba-tarda { transition: none; } }

.schedula .apparatus { margin-top: 14px; font-size: var(--corpus-8); letter-spacing: .12em; text-transform: uppercase; font-feature-settings: "case"; }
.schedula .apparatus a { color: var(--scriptura); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .32em; text-decoration-color: rgb(28 27 25 / .25); }
.schedula .apparatus a:hover { color: var(--atramentum); text-decoration-color: currentColor; }

.vidi { width: 100%; max-width: calc(640px + 2 * var(--margo)); margin: var(--spatium-5) auto 0; padding: 0 var(--margo); scroll-margin-top: 24px; }
.vidi > .inscriptio { padding-top: 16px; border-top: 1px solid var(--linea); }
.series-annorum { margin-top: 10px; font-size: var(--corpus-12); line-height: 1.5; color: var(--atramentum); font-variant-numeric: lining-nums; }
.series-annorum.vacuum { font-size: var(--corpus-10); font-style: italic; color: var(--cinis); }
.forma-vidi { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 16px; margin-top: 16px; font-size: var(--corpus-10); color: var(--scriptura); }
.forma-vidi select { font: inherit; padding: 0 2px 2px; border: 0; border-bottom: 1px solid var(--cinis); border-radius: 0; background: none; color: var(--atramentum); font-variant-numeric: lining-nums; cursor: pointer; }
.forma-vidi select:focus { outline: none; border-bottom-color: var(--atramentum); }
.forma-vidi button { padding: 0; border: 0; background: none; font: inherit; font-size: var(--corpus-9); letter-spacing: .14em; text-transform: uppercase; font-feature-settings: "case"; color: var(--atramentum); cursor: pointer; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .32em; text-decoration-color: rgb(28 27 25 / .3); }
.forma-vidi button:hover { text-decoration-color: currentColor; }
.forma-vidi .po-kapcha { flex-basis: 100%; margin: 0; font-size: var(--corpus-8); color: var(--cinis); }
.iter .conclave-operis { color: var(--atramentum); }

.liber-hospitum {
    width: 100%;
    max-width: calc(640px + 2 * var(--margo));
    margin: var(--spatium-6) auto 0;
    padding: 0 var(--margo);
}
.liber-hospitum > .inscriptio { padding-top: 16px; border-top: 1px solid var(--atramentum); }
.sententiae { list-style: none; margin: 40px 0 0; padding: 0; }
.sententiae li { padding: 22px 0; border-top: 1px solid var(--linea); }
.sententiae blockquote { font-style: italic; font-size: var(--corpus-11); line-height: 1.5; color: var(--atramentum); white-space: pre-line; overflow-wrap: anywhere; }
.sententiae .tempus { margin-top: 8px; font-size: var(--corpus-9); letter-spacing: .1em; font-variant-numeric: lining-nums; color: var(--cinis); }
.actiones { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 36px; }
.actiones a { color: var(--atramentum); }
.actiones a + a { color: var(--cinis); }

.spectaculum {
    width: 100vw;
    height: 100dvh;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 0;
    border: 0;
    background-color: var(--nox);
    color: #D9D5CC;
    overflow: hidden;
}
.spectaculum::backdrop { background-color: var(--nox); }
html:has(.spectaculum[open]) { overflow: hidden; }
.campus { width: 100%; height: 100%; display: flex; overflow: auto; overscroll-behavior: contain; scrollbar-width: none; cursor: zoom-out; }
.campus::-webkit-scrollbar { display: none; }

.campus:focus-visible { outline: 1px solid var(--lux-nocturna); outline-offset: -6px; }
.campus picture { display: contents; }
.campus img { margin: auto; flex: 0 0 auto; max-width: 100vw; max-height: 100dvh; width: auto; height: auto; cursor: zoom-in; user-select: none; -webkit-user-select: none; }
.vera-magnitudo .campus img { max-width: none; max-height: none; cursor: grab; }
.vera-magnitudo .campus img:active { cursor: grabbing; }
.claude {
    position: fixed;
    top: 12px;
    right: 12px;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    background: rgb(14 14 13 / .55);
    color: #D9D5CC;
    cursor: pointer;
}
.claude svg { fill: none; stroke: currentColor; stroke-width: 1.25; stroke-linecap: round; }
.claude:hover { color: #fff; }

.nexus-partis { position: fixed; left: 12px; bottom: 12px; min-height: 44px; padding: 12px 16px; border: 0; background: rgb(14 14 13 / .55); color: #D9D5CC; font-family: var(--littera); font-size: var(--corpus-8); letter-spacing: .14em; text-transform: uppercase; font-feature-settings: "case"; cursor: pointer; }
.nexus-partis:hover { color: #fff; }
.nexus-partis:focus-visible, .claude:focus-visible { outline: 1px solid var(--lux-nocturna); outline-offset: 2px; }
.spectaculum:not(.vera-magnitudo) .nexus-partis { display: none; }
.claude:focus-visible { outline: 1px solid #D9D5CC; outline-offset: -6px; }

.monitum { position: fixed; left: 0; right: 0; bottom: 0; padding: 48px 24px 18px; text-align: center; pointer-events: none; color: var(--lux-nocturna); background: linear-gradient(to top, rgb(14 14 13 / .6), rgb(14 14 13 / 0)); text-shadow: 0 0 2px rgb(14 14 13 / .85), 0 0 12px rgb(14 14 13 / .55); }
.monitum:empty { display: none; }
.subtilitas { position: fixed; left: 50%; bottom: 64px; z-index: 2; display: grid; justify-items: center; gap: 8px; min-width: 260px; padding: 12px 18px 14px; transform: translateX(-50%); background: rgb(14 14 13 / .62); color: #D9D5CC; font-size: var(--corpus-8); letter-spacing: .14em; text-transform: uppercase; font-feature-settings: "case"; font-variant-numeric: lining-nums tabular-nums; pointer-events: none; transition: opacity .6s ease; }
.subtilitas[hidden] { display: grid; opacity: 0; visibility: hidden; transition: opacity .6s ease, visibility 0s linear .6s; }
.linea-progressus { position: relative; width: 100%; height: 1px; background-color: rgb(217 213 204 / .22); }
.linea-progressus::after { content: ""; position: absolute; inset: 0; transform-origin: 0 50%; transform: scaleX(var(--progressus, 0)); background-color: #D9D5CC; transition: transform .2s linear; }
.subtilitas[data-status="paratum"] .linea-progressus::after { background-color: var(--lux-nocturna); }
@media (hover: none) { .subtilitas { bottom: 24px; } }
@media (prefers-reduced-motion: no-preference) {
    .campus img.subtilitas-adest { animation: subtilitas-adest .9s ease; }
}
@keyframes subtilitas-adest { from { filter: blur(3px); } to { filter: none; } }
@media (hover: none) { .monitum { display: none; } }

body.ad-imprimendum { display: block; background: #fff; color: #111; }
body.ad-imprimendum .ad-rem { display: none; }
.folium { max-width: 180mm; margin: 0 auto; padding: 12mm 0; }
.folium figure { margin: 0; }
.folium img { display: block; margin: 0 auto; max-width: 100%; max-height: 70vh; width: auto; height: auto; }
.folium figcaption { margin-top: 8mm; padding-top: 3mm; border-top: .3mm solid #111; font-size: 10.5pt; line-height: 1.45; }
.folium figcaption p + p { margin-top: 1mm; }
.folium .auctor { font-size: 12pt; }
.folium .nomen { font-size: 13pt; }
.folium .nomen-originale, .folium .patria { color: #555; }
.folium figcaption p:last-child { margin-top: 3mm; font-size: 9pt; color: #555; }
.colophon-folii { margin-top: 10mm; font-size: 8.5pt; letter-spacing: .06em; color: #555; font-variant-numeric: lining-nums; }
@page { margin: 14mm; }

.scriptio {
    width: 100%;
    max-width: calc(640px + 2 * var(--margo));
    margin: 0 auto;
    padding: var(--spatium-5) var(--margo) 0;
}
.scriptio .titulus { padding-top: 0; }
.scriptio .titulus h1 { font-size: var(--corpus-36); }
.de-opere { display: flex; align-items: flex-end; gap: 20px; margin-bottom: var(--spatium-4); padding-bottom: 24px; border-bottom: 1px solid var(--linea); color: inherit; text-decoration: none; }
.de-opere .locus { flex: 0 0 auto; justify-content: flex-start; width: 112px; height: 112px; }
.de-opere .verba { display: flex; flex-direction: column; font-size: var(--corpus-9); line-height: 1.45; color: var(--cinis); }
.de-opere .auctor { color: var(--scriptura); }
.de-opere .nomen { font-size: var(--corpus-11); font-style: italic; color: var(--atramentum); }
.de-opere:hover .nomen { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.quaestio { margin-top: 28px; font-size: 1.16em; line-height: 1.45; color: var(--atramentum); text-wrap: pretty; }
.scriptio textarea {
    display: block;
    width: 100%;
    min-height: 15em;
    margin-top: 28px;
    padding: 16px 18px;
    border: 1px solid var(--linea);
    border-radius: 0;
    background-color: #FBFAF7;
    color: var(--atramentum);
    font: inherit;
    font-size: var(--corpus-10);
    line-height: 1.55;
    resize: vertical;
    field-sizing: content;
    transition: border-color .2s;
}
.scriptio textarea:hover { border-color: #BDB8AC; }
.scriptio textarea:focus { outline: none; border-color: var(--atramentum); }
.adnotatio { margin-top: 12px; font-size: var(--corpus-9); line-height: 1.45; color: var(--cinis); }
.missio { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px 24px; margin-top: 32px; }
.missio .po-kapcha { margin: 0; font-size: var(--corpus-9); color: var(--cinis); }
.bulla {
    margin-left: auto;
    padding: 15px 34px 14px;
    border: 1px solid var(--atramentum);
    border-radius: 0;
    background: none;
    color: var(--atramentum);
    font-family: var(--littera);
    letter-spacing: .18em;
    cursor: pointer;
    transition: background-color .2s, color .2s;
}
.bulla:hover { background-color: var(--atramentum); color: var(--charta); }
.bulla:disabled { opacity: .4; cursor: progress; background: none; color: var(--atramentum); }
.erratum { margin-top: 24px; padding: 12px 0 12px 16px; border-left: 2px solid var(--minium); color: var(--atramentum); }
.explicatio { margin-top: 24px; font-size: 1.16em; color: var(--scriptura); }
.deinde { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 40px; }

.praeparatio { width: 100%; max-width: calc(1180px + 2 * var(--margo)); margin: 0 auto; padding: 0 var(--margo); }
.praeparatio > .telephonum-monitio, .praeparatio-plena { max-width: 820px; }

.tabula-praeparationis { margin-top: var(--spatium-3); }

.praeparatio > .titulus { padding-top: var(--spatium-3); }
@media (min-width: 1000px) {
    .praeparatio > .titulus { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); column-gap: calc(2 * var(--intervallum)); }
    .praeparatio > .titulus > * { grid-column: 1; }
    .praeparatio > .titulus > .exordium { grid-column: 2; grid-row: 2 / span 2; align-self: end; margin: 0; max-width: 30em; }
}
.stationes { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 26px var(--intervallum); }
.stationes > .statio { display: flex; flex-direction: column; padding-top: 14px; border-top: 1px solid var(--linea); }
.numerus-stationis { font-size: var(--corpus-9); letter-spacing: .08em; color: var(--color-expositionis, var(--minium)); }
.pictura-stationis { display: flex; align-items: center; height: 72px; margin: 10px 0 12px; }
.pictura-stationis svg, .pictura-stationis.schema-lucis svg { display: block; height: 72px; width: auto; overflow: visible; }
.pictura-stationis .linea-fortis { fill: none; stroke: var(--atramentum); stroke-width: 1.25; }
.pictura-stationis .linea-tenuis { fill: none; stroke: var(--cinis); stroke-width: 1; }
.pictura-stationis .linea-vetiti { fill: none; stroke: var(--minium); stroke-width: 1.5; }
.pictura-stationis .punctum { fill: var(--atramentum); }
.pictura-stationis.schema-lucis { width: auto; margin: 10px 0 12px; }
.scala-parva { flex-direction: column; align-items: stretch; justify-content: center; gap: 6px; }
.scala-parva .scala { height: 26px; margin: 0; max-width: none; }
.scala-parva .scala-extrema { height: 34px; margin: 0; max-width: none; }
.scala-parva .scala-extrema span { gap: 10px; }
.scala-parva .scala-extrema i { width: 16px; height: 16px; }
.claves { gap: 8px; font-size: var(--corpus-14); }
.claves kbd { min-width: 2.2em; padding: .2em .45em .25em; text-align: center; }
.stationes > .statio h2 { margin: 0; font-size: var(--corpus-9); font-weight: 400; letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--atramentum); }
.stationes > .statio > p { margin-top: 6px; font-size: var(--corpus-10); line-height: 1.45; color: var(--scriptura); text-wrap: pretty; }
.stationes > .statio > p.plenius { margin-top: auto; padding-top: 10px; font-size: var(--corpus-8); letter-spacing: .04em; color: var(--cinis); }
.stationes > .statio .plenius a { color: var(--cinis); }
.stationes > .statio .plenius a:hover { color: var(--atramentum); }

.stationes > .statio-ingressus { border-top-color: var(--atramentum); }
.stationes > .statio-ingressus .ingressus-in-aulam { flex-direction: column; flex-wrap: nowrap; align-items: stretch; gap: 10px; margin-top: 16px; padding-top: 0; border-top: 0; }
.stationes > .statio-ingressus .bulla { padding-inline: 10px; text-align: center; white-space: nowrap; letter-spacing: .12em; }
.stationes > .statio-ingressus .adnotatio { flex-basis: auto; margin-top: 4px; font-size: var(--corpus-8); line-height: 1.45; }
@media (max-width: 999px) { .stationes { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.praeparatio-plena { margin-top: var(--spatium-5); border-top: 1px solid var(--linea); }
.praeparatio-plena > summary { padding: 16px 0 0; font-size: var(--corpus-9); letter-spacing: .14em; text-transform: uppercase; font-feature-settings: "case"; color: var(--atramentum); cursor: pointer; list-style: none; }
.praeparatio-plena > summary::-webkit-details-marker { display: none; }
.praeparatio-plena > summary::after { content: " +"; color: var(--cinis); }
.praeparatio-plena[open] > summary::after { content: " −"; }
.praeparatio-plena .gradus-praeparationis { margin-top: var(--spatium-3); }
.praeparatio .exordium { margin-top: 1.4em; max-width: 36em; font-size: var(--corpus-12); line-height: 1.6; color: var(--atramentum); text-wrap: pretty; }
.gradus-praeparationis { list-style: none; counter-reset: gradus; margin: var(--spatium-5) 0 0; padding: 0; }
.gradus-praeparationis > li { counter-increment: gradus; position: relative; padding: 26px 0 30px clamp(56px, 8vw, 96px); border-top: 1px solid var(--linea); }
.gradus-praeparationis > li::before { content: counter(gradus, upper-roman); position: absolute; left: 0; top: 24px; font-size: var(--corpus-14); line-height: 1; color: var(--color-expositionis, var(--minium)); font-variant-numeric: lining-nums; }
.gradus-praeparationis h2 { font-size: var(--corpus-14); line-height: 1.2; margin-bottom: 12px; }
.gradus-praeparationis p { max-width: 38em; line-height: 1.6; color: var(--atramentum); text-wrap: pretty; }
.gradus-praeparationis p + p { margin-top: .7em; }
.gradus-praeparationis ul { margin: 10px 0 0; padding: 0; list-style: none; max-width: 40em; }
.gradus-praeparationis ul li { position: relative; padding-left: 1.2em; margin-top: .55em; line-height: 1.55; color: var(--scriptura); text-wrap: pretty; }
.gradus-praeparationis ul li::before { content: "—"; position: absolute; left: 0; color: var(--cinis); }
.gradus-praeparationis b { font-weight: 400; color: var(--atramentum); font-style: italic; }

.aspectus { margin: 16px 0 0; max-width: 40em; border-top: 1px solid var(--linea); }
.aspectus > div { display: grid; grid-template-columns: 10em minmax(0, 1fr); column-gap: 20px; padding: 10px 0 11px; border-bottom: 1px solid var(--linea); }
.aspectus dt { padding-top: .25em; font-size: var(--corpus-8); letter-spacing: .14em; text-transform: uppercase; color: var(--cinis); }
.aspectus dd { margin: 0; line-height: 1.5; color: var(--atramentum); text-wrap: pretty; }
.lux-cubiculi { margin-top: 8px; }
.lux-cubiculi .schema-lucis { width: 240px; margin-bottom: 20px; }
.schema-lucis { margin: 0; }
.schema-lucis svg { display: block; width: 100%; height: auto; }
.schema-lucis .murus-delineatus { fill: none; stroke: var(--linea); }
.schema-lucis .tabula-delineata { fill: var(--atramentum); }
.schema-lucis .spectator { fill: none; stroke: var(--atramentum); }
.schema-lucis .visus { stroke: var(--cinis); stroke-dasharray: 2 4; }
.schema-lucis .recte * { fill: none; stroke: #6E8B5E; stroke-width: 1.5; }
.schema-lucis .perperam * { fill: none; stroke: var(--minium); stroke-width: 1.5; }
.schema-lucis text { font-family: var(--littera); font-size: 11px; fill: var(--cinis); }
.schema-lucis figcaption { margin-top: 8px; font-size: var(--corpus-9); line-height: 1.45; color: var(--cinis); }
.ordo-actionum { margin: 12px 0 0; padding: 0; list-style: none; counter-reset: actio; max-width: 40em; }
.ordo-actionum li { counter-increment: actio; display: grid; grid-template-columns: 2.2em minmax(0, 1fr); padding: 10px 0 11px; border-bottom: 1px solid var(--linea); line-height: 1.5; color: var(--atramentum); }
.ordo-actionum li:first-child { border-top: 1px solid var(--linea); }
.ordo-actionum li::before { content: counter(actio); grid-row: span 2; font-size: var(--corpus-12); line-height: 1.2; color: var(--color-expositionis, var(--minium)); font-variant-numeric: lining-nums; }
.ordo-actionum b { font-weight: 400; font-style: italic; }
@media (max-width: 719px) {
    .aspectus > div { grid-template-columns: minmax(0, 1fr); row-gap: 4px; }
}

html[data-systema="mac"] [data-systema="win"], html[data-systema="win"] [data-systema="mac"] { display: none; }

html.telephonum .praeparatio > :not(.titulus, .telephonum-monitio), html.telephonum .praeparatio .exordium { display: none; }
.telephonum-monitio h2.inscriptio { margin: 0 0 14px; font-weight: 400; }
.iter-operis { margin-top: 1.2em; max-width: 34em; font-size: var(--corpus-10); line-height: 1.55; color: var(--scriptura); }
.in-telephono { margin-top: 32px; padding-top: 18px; border-top: 1px solid var(--linea); }
.in-telephono ul { list-style: none; margin: 10px 0 0; padding: 0; }
.in-telephono li { padding: 9px 0; border-bottom: 1px solid var(--linea); font-size: var(--corpus-10); line-height: 1.45; color: var(--cinis); }
.in-telephono a { color: var(--atramentum); }
.telephonum-monitio { margin-top: var(--spatium-4); padding: 22px 0 26px 18px; border-left: 2px solid var(--minium); }
.telephonum-monitio p + p { margin-top: .8em; }
.telephonum-monitio p:not(.inscriptio) { font-size: var(--corpus-10); line-height: 1.6; color: var(--atramentum); }
.telephonum-monitio .bulla { margin-left: 0; text-transform: uppercase; font-size: var(--corpus-9); }
kbd { font-family: var(--littera); font-size: .875em; padding: 0 .35em; border: 1px solid var(--linea); border-bottom-width: 2px; color: var(--atramentum); font-variant-numeric: lining-nums; }

.scala { display: grid; grid-template-columns: repeat(11, 1fr); height: 56px; margin: 18px 0 10px; max-width: 40em; }
.scala span:nth-child(1) { background: rgb(0 0 0); }
.scala span:nth-child(2) { background: rgb(26 26 26); }
.scala span:nth-child(3) { background: rgb(51 51 51); }
.scala span:nth-child(4) { background: rgb(77 77 77); }
.scala span:nth-child(5) { background: rgb(102 102 102); }
.scala span:nth-child(6) { background: rgb(128 128 128); }
.scala span:nth-child(7) { background: rgb(153 153 153); }
.scala span:nth-child(8) { background: rgb(179 179 179); }
.scala span:nth-child(9) { background: rgb(204 204 204); }
.scala span:nth-child(10) { background: rgb(230 230 230); }
.scala span:nth-child(11) { background: rgb(255 255 255); }
.scala-extrema { display: grid; grid-template-columns: 1fr 1fr; max-width: 40em; height: 72px; margin-bottom: 14px; }
.scala-extrema span { display: flex; align-items: center; justify-content: center; gap: 22px; }
.scala-extrema .nigra { background: rgb(0 0 0); }
.scala-extrema .alba { background: rgb(255 255 255); box-shadow: inset 0 0 0 1px var(--linea); }
.scala-extrema i { width: 34px; height: 34px; }
.scala-extrema .nigra i:first-child { background: rgb(5 5 5); }
.scala-extrema .nigra i:last-child { background: rgb(13 13 13); }
.scala-extrema .alba i:first-child { background: rgb(242 242 242); }
.scala-extrema .alba i:last-child { background: rgb(250 250 250); }
.ingressus-in-aulam { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 18px; margin-top: var(--spatium-5); padding-top: 28px; border-top: 1px solid var(--atramentum); }
.ingressus-in-aulam .bulla { margin-left: 0; text-decoration: none; text-transform: uppercase; font-size: var(--corpus-9); }
.ingressus-in-aulam .bulla.secunda { border-color: var(--linea); color: var(--scriptura); }
.ingressus-in-aulam .bulla.secunda:hover { border-color: var(--atramentum); color: var(--charta); }
.ingressus-in-aulam .adnotatio { flex-basis: 100%; }

.limen-ultimum { position: fixed; inset: 0; z-index: 60; display: grid; place-items: safe center; overflow-y: auto; padding: var(--margo); background-color: var(--color-expositionis, #7F6A00); color: #FBF7EF; opacity: 0; transition: opacity 1.2s ease; }
.limen-ultimum.apertum { opacity: 1; }
.limen-ultimum[hidden] { display: none; }
.limen-corpus { width: min(640px, 100%); }
.limen-ultimum .inscriptio { color: rgb(251 247 239 / .8); }
.limen-ultimum h2 { margin-top: 14px; font-size: var(--corpus-36); line-height: 1.05; color: #FBF7EF; text-wrap: balance; }
.limen-ultimum ul { margin: 28px 0 0; padding: 0; list-style: none; }
.limen-ultimum li { padding: 10px 0 11px; border-top: 1px solid rgb(251 247 239 / .28); font-size: var(--corpus-12); line-height: 1.45; }
.limen-ultimum li:last-child { border-bottom: 1px solid rgb(251 247 239 / .28); }
.limen-ultimum .consolatio { margin-top: 22px; font-style: italic; line-height: 1.55; color: rgb(251 247 239 / .88); }
.optiones-limitis { display: flex; flex-wrap: wrap; gap: 14px 18px; margin-top: 30px; }
.limen-ultimum .bulla { margin-left: 0; border-color: #FBF7EF; color: #FBF7EF; text-decoration: none; text-transform: uppercase; font-size: var(--corpus-8); }
.limen-ultimum .bulla.ingredi { background-color: #FBF7EF; color: var(--color-expositionis, #7F6A00); }
.limen-ultimum .bulla.ingredi:hover { background-color: #fff; }
.limen-ultimum .bulla.secunda { border-color: rgb(251 247 239 / .5); }
.limen-ultimum .bulla.secunda:hover { background-color: rgb(251 247 239 / .12); color: #FBF7EF; }
@media (prefers-reduced-motion: reduce) { .limen-ultimum { transition: none; } }

.citatio { max-width: 46rem; margin: var(--spatium-5) 0 0; padding-top: 16px; border-top: 1px solid var(--linea); }
.citatio .regula { margin-top: 8px; font-size: var(--corpus-9); font-style: italic; color: var(--cinis); }
.citatio dl { margin: 18px 0 0; }
.citatio dl > div { display: grid; grid-template-columns: 13rem minmax(0, 1fr); gap: 4px 20px; padding: 11px 0 12px; border-top: 1px solid var(--linea); }
.citatio dt { font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--cinis); padding-top: .3em; }
.citatio dd { margin: 0; font-size: var(--corpus-10); line-height: 1.55; color: var(--atramentum); overflow-wrap: anywhere; hanging-punctuation: first; }
.citatio .exscribe { margin-left: .4em; padding: 0; border: 0; background: none; font: inherit; font-size: var(--corpus-7); letter-spacing: .12em; text-transform: uppercase; color: var(--cinis); cursor: pointer; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .3em; text-decoration-color: transparent; transition: color .2s, text-decoration-color .2s; }
.citatio .exscribe:hover, .citatio .exscribe:focus-visible { color: var(--atramentum); text-decoration-color: currentColor; }
@media (max-width: 719px) { .citatio dl > div { grid-template-columns: 1fr; } }

.nusquam { padding-top: var(--spatium-5); }
.lacuna { display: grid; grid-template-columns: minmax(0, 1fr) 300px; column-gap: clamp(32px, 6vw, 96px); align-items: end; }
.murus { --x: 50%; --y: 42%; position: relative; display: grid; place-items: center; padding: var(--spatium-4) 0; }
.murus::after {
    content: "";
    position: absolute;
    inset: -6% -10%;
    background: radial-gradient(circle 340px at var(--x) var(--y), rgb(255 246 228 / .14), rgb(255 246 228 / 0) 40%, rgb(52 44 32 / .055) 70%, rgb(52 44 32 / .11) 100%);
    -webkit-mask-image: linear-gradient(to right, transparent, #000 18%, #000 82%, transparent), linear-gradient(transparent, #000 14%, #000 86%, transparent);
    -webkit-mask-composite: source-in;
    mask-image: linear-gradient(to right, transparent, #000 18%, #000 82%, transparent), linear-gradient(transparent, #000 14%, #000 86%, transparent);
    mask-composite: intersect;
    pointer-events: none;
}
.paries-vacuus { position: relative; display: flex; flex-direction: column; align-items: center; width: min(100%, calc(min(58svh, 560px) * var(--forma, .8))); }
.clavus { width: 7px; height: 7px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #A49E92, #4A4740 70%); box-shadow: 1px 2px 2px rgb(0 0 0 / .22); }
.vestigium {
    width: 100%;
    aspect-ratio: var(--forma, 4 / 5);
    margin-top: 26px;
    background-color: #FBFAF6;
    border-top: 1px solid rgb(60 55 45 / .12);
    box-shadow: 0 0 0 1px rgb(60 55 45 / .035), 0 0 26px 12px rgb(251 250 246 / .9), inset 0 2px 0 rgb(60 55 45 / .05);
}
.nusquam .schedula { display: block; margin: 0; padding-bottom: 4px; contain: none; font-size: var(--corpus-10); }
.nusquam .inscriptio { margin-bottom: 22px; }
.nusquam .auctor { font-size: var(--corpus-11); color: var(--atramentum); }
.nusquam h1 { margin-top: 6px; font-size: var(--corpus-10); line-height: 1.3; }
.nusquam h1 .nomen { display: block; font-size: var(--corpus-28); font-style: italic; line-height: 1.1; color: var(--atramentum); }
.nusquam h1 .sensus { display: block; margin-top: 4px; font-size: var(--corpus-10); font-style: italic; color: var(--cinis); }
.nusquam .catalogus { margin-top: 18px; padding: 14px 0 0; border-left: 0; border-top: 1px solid var(--linea); font-size: var(--corpus-9); }
.nusquam .nuntius { margin-top: 22px; color: var(--scriptura); text-wrap: pretty; }
.nusquam .deinde { margin-top: 28px; }
.nusquam .vestigia { margin-top: 10px; font-size: var(--corpus-9); color: var(--cinis); overflow-wrap: anywhere; }
.nusquam .vestigia code { font-family: var(--littera); font-style: italic; color: var(--scriptura); }
.epigraphe, .sententia { margin-top: var(--spatium-7); padding-top: 20px; border-top: 1px solid var(--linea); text-align: center; }
.epigraphe blockquote, .sententia blockquote { font-size: var(--corpus-20); line-height: 1.3; color: var(--atramentum); }
.epigraphe figcaption, .sententia figcaption { margin-top: 10px; font-size: var(--corpus-9); color: var(--cinis); font-variant-numeric: lining-nums; }
.epigraphe .versio, .sententia .versio { font-style: italic; color: var(--scriptura); margin-right: .5em; }

.musica { display: grid; grid-template-columns: 48px minmax(0, 1fr); column-gap: 18px; align-items: center; margin-top: 18px; }
.sonus { width: 48px; height: 48px; display: grid; place-items: center; padding: 0; border: 1px solid var(--cinis); border-radius: 50%; background: none; color: var(--atramentum); cursor: pointer; transition: border-color .2s, background-color .2s; }
.sonus:hover { border-color: var(--atramentum); }
.sonus svg { fill: currentColor; stroke: currentColor; stroke-width: 0; }
.sonus .siste { display: none; fill: none; stroke-width: 1.6; }
.sonans .sonus .lude { display: none; }
.sonans .sonus .siste { display: block; }
.musica figcaption { grid-column: 2; grid-row: 1; display: flex; flex-direction: column; line-height: 1.45; }
.musica .sonus { grid-column: 1; grid-row: 1; }
.musica .nomen { font-style: italic; font-size: var(--corpus-11); color: var(--atramentum); }
.musica .auctor { font-size: var(--corpus-9); color: var(--scriptura); }
.musica .res { font-size: var(--corpus-9); letter-spacing: .04em; color: var(--cinis); font-variant-numeric: lining-nums; }
.cursus { grid-column: 2; grid-row: 2; display: block; height: 9px; margin-top: 6px; padding: 4px 0; cursor: pointer; }
.cursus span { display: block; height: 1px; background-color: var(--atramentum); transform: scaleX(0); transform-origin: left; }
.cursus { background: linear-gradient(var(--linea), var(--linea)) center / 100% 1px no-repeat; }

.praemonitio {
    position: fixed;
    left: 50%;
    bottom: max(16px, env(safe-area-inset-bottom));
    z-index: 20;
    width: min(calc(100vw - 32px), 720px);
    transform: translateX(-50%);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px 24px;
    padding: 16px 22px 18px;
    background-color: #1C1B19;
    color: var(--lux-nocturna);
    border: 1px solid #34322E;
    font-size: var(--corpus-9);
    line-height: 1.45;
    transition: opacity .4s, transform .4s;
}
.praemonitio i { color: #F6F1E8; }
.praemonitio .numerus { font-variant-numeric: lining-nums tabular-nums; color: #F6F1E8; }
.praemonitio-actiones { display: flex; gap: 8px; }
.praemonitio button { padding: 9px 16px 8px; border: 1px solid #5A5650; background: none; color: var(--lux-nocturna); font-family: var(--littera); font-size: var(--corpus-8); letter-spacing: .16em; text-transform: uppercase; cursor: pointer; transition: border-color .2s, background-color .2s, color .2s; }
.praemonitio button:hover { border-color: var(--lux-nocturna); }
.praemonitio button.sic { background-color: var(--lux-nocturna); border-color: var(--lux-nocturna); color: #1C1B19; }
.praemonitio button.sic:hover { background-color: #fff; }
.praemonitio button:focus-visible { outline: 1px solid var(--lux-nocturna); outline-offset: 3px; }
.praemonitio-tempus { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background-color: #8F3F3A; transform-origin: left; animation: mora var(--mora, 0s) linear forwards; }
.praemonitio:not([style]) .praemonitio-tempus, .praemonitio.quiescens .praemonitio-tempus { display: none; }
@keyframes mora { from { transform: scaleX(1); } to { transform: scaleX(0); } }
.praemonitio.abiens { opacity: 0; transform: translate(-50%, 12px); }
@media (prefers-reduced-motion: reduce) { .praemonitio-tempus { animation: none; } .praemonitio { transition: none; } }

.musica-perpetua { position: fixed; left: max(16px, env(safe-area-inset-left)); bottom: max(16px, env(safe-area-inset-bottom)); z-index: 15; display: flex; align-items: center; gap: 10px; padding: 8px 14px 8px 8px; border: 1px solid var(--linea); background-color: var(--charta); color: var(--atramentum); font-family: var(--littera); font-size: var(--corpus-9); cursor: pointer; }
.musica-perpetua svg { width: 22px; height: 22px; fill: currentColor; }
.musica-perpetua .nomen { font-style: italic; }
.musica-perpetua:hover { border-color: var(--atramentum); }
.musica-perpetua .siste { display: none; }
.musica-perpetua.sonans .lude { display: none; }
.musica-perpetua.sonans .siste { display: inline; }

sup.nota { font-size: max(.6em, 12px); line-height: 0; vertical-align: .9em; margin-left: .15em; font-variant-numeric: lining-nums; letter-spacing: 0; text-transform: none; font-style: normal; }
sup.nota a { text-decoration: none; color: var(--cinis); }
sup.nota a:hover { color: var(--atramentum); }
.apparatus { margin-top: var(--spatium-6); padding-top: 16px; border-top: 1px solid var(--linea); }
.apparatus ol { list-style: none; margin: 18px 0 0; padding: 0; }
.apparatus li { position: relative; padding-left: 2em; margin-top: .9em; font-size: var(--corpus-9); line-height: 1.55; color: var(--scriptura); text-wrap: pretty; }
.apparatus .redi { position: absolute; left: 0; top: 0; font-variant-numeric: lining-nums; text-decoration: none; color: var(--cinis); }
.apparatus li:target { color: var(--atramentum); }

body.nox { background-color: var(--nox); color: #BEB9AF; --atramentum: var(--lux-nocturna); --scriptura: #BEB9AF; --cinis: #8E897F; --linea: #2A2926; --minium: #8F3F3A; }
.nox a { text-decoration-color: rgb(236 233 226 / .3); }
.vigilia { width: 100%; max-width: calc(760px + 2 * var(--margo)); margin: 0 auto; padding: clamp(56px, 12vh, 160px) var(--margo) 0; }
.carmen { margin-top: 40px; }
.carmen blockquote { font-size: var(--corpus-28); line-height: 1.25; color: var(--atramentum); letter-spacing: -.005em; }
.carmen blockquote span, .carmen .versio span { display: block; text-wrap: balance; }
.carmen blockquote span:nth-child(even), .carmen .versio span:nth-child(even) { padding-left: 1.6em; }
.carmen .versio { margin-top: 28px; font-style: italic; font-size: var(--corpus-11); line-height: 1.5; color: var(--scriptura); }
.carmen figcaption { margin-top: 16px; font-size: var(--corpus-9); letter-spacing: .04em; color: var(--cinis); font-variant-numeric: lining-nums; }
.vigilia h1 { margin-top: clamp(72px, 10vh, 112px); padding-top: 20px; border-top: 1px solid var(--linea); font-size: var(--corpus-24); line-height: 1.1; }
.vigilia .verba { margin-top: .8em; font-size: var(--corpus-11); }

.vigilia .exspectat-opus { margin-top: .4em; font-size: var(--corpus-11); color: var(--atramentum); }
.vigilia .hora { display: flex; align-items: baseline; gap: 18px; margin-top: 1.6em; }
.vigilia .hora time { font-size: var(--corpus-20); font-variant-numeric: lining-nums tabular-nums; color: var(--atramentum); }
.vigilia .sententia { text-align: left; }
.vigilia .lumen-noctis { color: inherit; text-decoration: none; border-radius: 2px; transition: color 1.6s ease, text-shadow 1.6s ease; }
.vigilia .lumen-noctis:is(:hover, :focus-visible) { color: #F4E6C4; text-shadow: 0 0 .5em rgb(226 178 98 / .55), 0 0 1.4em rgb(214 160 80 / .25); }
.vigilia .lumen-noctis:focus-visible { outline: 1px solid rgb(226 178 98 / .5); outline-offset: 4px; }
.musica-aulae { margin-top: 2.25em; max-width: 34em; padding-top: 14px; border-top: 1px solid var(--linea); }
.musica-aulae .musica { margin-top: 12px; }
.nota-musicae { margin-top: 14px; font-size: var(--corpus-9); line-height: 1.55; color: var(--cinis); text-wrap: pretty; }
.musica-noctis { margin-top: var(--spatium-5); padding-top: 20px; border-top: 1px solid var(--linea); }
.vigilia .submissa { margin-top: 1.6em; color: var(--cinis); }
.nox time { font-variant-numeric: lining-nums; }

body.atrii::before { content: ""; display: block; height: 5px; background-color: #A9483F; }
.hora-aperta { color: var(--cinis); }
.atrium { width: 100%; max-width: var(--latitudo); margin: 0 auto; padding: 0 var(--margo); }
.atrium time { font-variant-numeric: lining-nums; }

.limen-atrii {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: var(--intervallum);
    align-items: center;
    padding-top: var(--spatium-5);
}
.inscriptio-atrii { grid-column: 1 / span 5; }
.nomen-magnum {
    margin: .3em 0 .42em;
    font-size: var(--corpus-60);
    line-height: 1;
    letter-spacing: .07em;
    font-variant-numeric: lining-nums;
    color: var(--atramentum);
}
.nomen-magnum span { display: block; }
.inscriptio-atrii .titulus-originalis { margin-top: 0; }

.opus-diei { grid-column: 7 / -1; margin: 0; }
.opus-diei > .inscriptio { margin-bottom: 14px; }
.tabula-diei { display: block; --alt: 72svh; width: min(100%, calc(var(--alt) * var(--r))); line-height: 0; }
.tabula-diei picture { display: contents; }
.tabula-diei img { display: block; width: 100%; height: auto; background-color: var(--fundus); }
.opus-diei figcaption { display: flex; flex-wrap: wrap; align-items: baseline; margin-top: 14px; font-size: var(--corpus-9); line-height: 1.45; color: var(--cinis); }
.opus-diei figcaption .auctor { flex-basis: 100%; font-size: var(--corpus-10); color: var(--atramentum); }
.opus-diei figcaption .nomen { font-size: var(--corpus-12); font-style: italic; color: var(--atramentum); text-decoration: none; }
.opus-diei figcaption .nomen:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.opus-diei figcaption .annus { color: var(--scriptura); }
.opus-diei :is(.titulus-operis, .custodia, .expositio-operis) { flex-basis: 100%; }
.verba-diei { margin: 22px 0 0; padding-left: 18px; border-left: 1px solid var(--minium); max-width: 38em; font-size: var(--corpus-10); line-height: 1.5; color: var(--atramentum); text-wrap: pretty; }
.versio-diei { margin-top: 8px; padding-left: 19px; max-width: 38em; font-size: var(--corpus-9); font-style: italic; line-height: 1.55; color: var(--scriptura); text-wrap: pretty; }
.versio-diei .fons-verborum { display: block; margin-top: 6px; font-style: normal; }

.in-aulis { margin-top: var(--spatium-7); }

.in-officina { margin-top: var(--spatium-7); }
.limen {
    display: flex;
    align-items: center;
    gap: 18px;
    margin: 0 0 var(--spatium-3);
    font-size: var(--corpus-9);
    line-height: 1.45;
    letter-spacing: .2em;
    text-transform: uppercase;
    font-feature-settings: "case";
    color: var(--atramentum);
}
.limen::before, .limen::after { content: ""; flex: 1 1 0; border-top: 1px solid var(--linea); }
.expositio-praecipua a {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    column-gap: var(--intervallum);
    align-items: end;
    color: inherit;
    text-decoration: none;
}
.expositio-praecipua .locus { display: block; height: auto; line-height: 0; }
.expositio-praecipua .locus picture { display: contents; }
.expositio-praecipua img { display: block; --alt: 68svh; width: min(100%, calc(var(--alt) * var(--r))); max-height: var(--alt); height: auto; max-width: 100%; background-color: var(--fundus); }
.verba-expositionis { display: flex; flex-direction: column; padding-bottom: 4px; }
.verba-expositionis .inscriptio { display: flex; align-items: center; gap: 14px; }
.verba-expositionis .inscriptio::before { content: ""; flex: 0 0 28px; height: 2px; background-color: var(--color-expositionis, var(--minium)); }
.verba-expositionis .nomen { margin-top: 18px; font-size: var(--corpus-36); line-height: 1; letter-spacing: -.012em; color: var(--atramentum); text-wrap: balance; }
.verba-expositionis .auctor { margin-top: 14px; font-size: var(--corpus-12); color: var(--atramentum); }
.verba-expositionis .summa { margin-top: 6px; color: var(--cinis); font-variant-numeric: lining-nums; }
.verba-expositionis .ingressus { margin-top: 28px; font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; color: var(--atramentum); }
.verba-expositionis .ingressus::after { content: "→"; display: inline-block; margin-left: .45em; letter-spacing: 0; }
.expositio-praecipua a:hover .nomen { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .12em; text-decoration-color: rgb(28 27 25 / .35); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .verba-expositionis .ingressus::after { transition: transform .3s; }
    .expositio-praecipua a:hover .ingressus::after { transform: translateX(5px); }
}

.omnes { margin-top: var(--spatium-4); text-align: right; }
.omnes a { font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; color: var(--atramentum); }

.expositio-brevis .paries-aulae { position: relative; display: block; background-color: var(--paries, #E7E5DF); }
.tabula-in-pariete { position: absolute; inset: 13% 15%; display: flex; align-items: center; justify-content: center; line-height: 0; }
.tabula-in-pariete img { max-width: 100%; max-height: 100%; }
.tabula-in-pariete .prospectus { align-items: center; justify-content: center; }
.expositio-brevis .summa { display: block; margin-top: 6px; font-size: var(--corpus-9); color: var(--cinis); font-variant-numeric: lining-nums; }
.expositio-praecipua .locus { display: grid; place-items: center; padding: clamp(28px, 4vw, 64px); background-color: var(--paries, transparent); }

.apertura .locus { position: relative; }
.vacua-cedens { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; background-color: var(--paries, #E8E6E0); animation: vacua-cedit 1.6s ease 1.6s forwards; pointer-events: none; }
.vacua-cedens .vestigium { width: min(36%, 260px); margin-top: 18px; }
.apertura .locus img { animation: suspenditur 2.2s cubic-bezier(.3, .6, .3, 1) 2.2s backwards; }
.apertura.exspectat :is(.vacua-cedens, .locus img) { animation-play-state: paused; }
@keyframes vacua-cedit { to { opacity: 0; visibility: hidden; } }
@keyframes suspenditur { from { opacity: 0; transform: translateY(-6px); } }
@media (prefers-reduced-motion: reduce) { .vacua-cedens { display: none; } .apertura .locus img { animation: none; } }

.expositio-brevis .locus { position: relative; }
.prospectus { position: absolute; inset: 0; display: flex; align-items: flex-end; opacity: 0; pointer-events: none; }
.tabula-in-pariete .prospectus { background-color: var(--paries, #E7E5DF); }
.prospectus picture { display: contents; }
.prospectus img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; background-color: var(--fundus); }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .prospectus { transition: opacity 1.1s ease .15s; }
    .expositio-brevis a:hover .prospectus { opacity: 1; }
}

.de-pinacotheca { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--intervallum); margin-top: var(--spatium-7); padding-top: 18px; border-top: 1px solid var(--atramentum); }
.sermo { grid-column: 1 / span 5; }
.omnes-sermonis { margin-top: 1.2em; }

.aula-nova { display: flex; justify-content: center; align-items: baseline; gap: 14px; margin: calc(-1 * var(--spatium-2)) 0 var(--spatium-3); }
.aula-nova .inscriptio { color: var(--minium); }

.vestigium-statio { margin-top: 14px; font-size: var(--corpus-10); font-style: italic; color: var(--scriptura); animation: apparitio-lenta 2.4s ease .8s backwards; }
.vestigium-statio a { color: var(--atramentum); }
@media (prefers-reduced-motion: reduce) { .vestigium-statio { animation: none; } }
.aula-nova a { color: var(--atramentum); }
.fasti { grid-column: 7 / -1; }
.de-pinacotheca .inscriptio { margin-bottom: 18px; }
.sermo p { font-size: var(--corpus-10); line-height: 1.6; color: var(--atramentum); text-wrap: pretty; }
.sermo p + p { margin-top: .8em; }
.fasti ol { list-style: none; margin: 0; padding: 0; }
.fasti li { display: grid; grid-template-columns: 4.2em minmax(0, 1fr); column-gap: 18px; align-items: baseline; padding: 12px 0 13px; border-top: 1px solid var(--linea); }
.fasti li:last-child { border-bottom: 1px solid var(--linea); }
.fasti .annus { font-size: var(--corpus-14); line-height: 1; color: var(--cinis); font-variant-numeric: oldstyle-nums; }
.fasti ol:first-of-type li:first-child .annus { color: var(--minium); }
.fasti a { color: inherit; text-decoration: none; }
.fasti .nomen { font-size: var(--corpus-12); color: var(--atramentum); }
.fasti .auctor { margin-left: .5em; font-size: var(--corpus-9); color: var(--cinis); }
.fasti a:hover .nomen { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.fasti .anni-pinacothecae { margin: -4px 0 16px; font-size: var(--corpus-9); line-height: 1.55; color: var(--scriptura); text-wrap: pretty; }
.fasti h3.inscriptio { margin-top: 36px; }
.fasti .nuntius { grid-column: 2; margin-top: 6px; font-size: var(--corpus-9); line-height: 1.55; color: var(--scriptura); text-wrap: pretty; }

.in-aulis .programmata { margin-top: var(--spatium-6); }
.programmata { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 3vw, 44px); }

@media (min-width: 720px) {
    .in-aulis .programmata { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .in-aulis .programma { grid-column: span 2; }
    .in-aulis .programma:first-child:nth-last-child(2) { grid-column: 2 / span 2; }
    .in-aulis .programma:is(:only-child, :nth-child(4):last-child) { grid-column: 3 / span 2; }
    .programmata.studii { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .studii .programma { aspect-ratio: auto; grid-template-rows: auto 1fr; }
    .studii .particula { aspect-ratio: 1; }
}
@media (min-width: 720px) and (max-width: 999px) {
    .programmata.studii { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 66%; margin-inline: auto; }
}
.programma { display: grid; grid-template-rows: minmax(0, 1fr) minmax(136px, auto); aspect-ratio: 2 / 3; color: var(--atramentum); text-decoration: none; background-color: var(--paries); }
.particula { position: relative; overflow: hidden; line-height: 0; background-color: var(--fundus); }
.particula picture { display: contents; }
.particula img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: var(--fx) var(--fy); transform: scale(var(--amplitudo)); transform-origin: var(--fx) var(--fy); }
.programma.vacua { background-color: #E8E6E0; }
.programma.vacua .particula { display: flex; flex-direction: column; align-items: center; justify-content: center; background-color: #E8E6E0; }
.programma.vacua .vestigium { width: 42%; aspect-ratio: 4 / 5; margin-top: 16px; background-color: #F3F1EC; border-top: 1px solid rgb(60 55 45 / .10); box-shadow: 0 0 0 1px rgb(60 55 45 / .03), inset 0 2px 0 rgb(60 55 45 / .04); }
.programma.vacua .nomen { color: var(--cinis); }
.charta-programmatis .secretum { margin-top: 2px; font-size: var(--corpus-9); font-style: italic; color: var(--cinis); }
.charta-programmatis { display: flex; flex-direction: column; padding: 22px 24px 24px; }
.charta-programmatis .inscriptio { font-size: var(--corpus-7); color: var(--cinis); }
.charta-programmatis .nomen { margin-top: 0; font-size: var(--corpus-14); line-height: 1.1; letter-spacing: .12em; text-transform: uppercase; font-feature-settings: "case"; text-wrap: balance; }
.charta-programmatis .auctor { margin-top: 10px; font-style: italic; color: var(--scriptura); }
.charta-programmatis .summa { margin-top: 4px; font-size: var(--corpus-9); color: var(--cinis); font-variant-numeric: lining-nums; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .particula img { transition: transform 1.6s cubic-bezier(.2, .1, .2, 1); }
    .programma:hover .particula img { transform: scale(calc(var(--amplitudo) * .82)); }
}

.clausula { margin-top: var(--spatium-7); text-align: center; }
.clausula .titulus-originalis { max-width: none; justify-items: center; }
.clausula .interpretatio .verba { font-size: var(--corpus-28); font-style: normal; letter-spacing: .14em; line-height: 2.1; word-spacing: .3em; text-decoration: none; color: var(--atramentum); }
.clausula .interpretatio .dictio[data-glossa]::after { font-size: .34em; letter-spacing: .02em; top: calc(100% + .1em); font-style: italic; }
.clausula .interpretatio .versio { font-size: var(--corpus-11); }
.clausula .fons-verborum { margin-top: 10px; }
.clausula .interpretatio .verba::before, .clausula .interpretatio .verba::after { content: ""; display: block; width: 48px; margin: 0 auto .6em; border-top: 1px solid var(--minium); }
.clausula .interpretatio .verba::after { margin: .5em auto 0; }

.colophon { margin-top: var(--spatium-7); }
.colophon-corpus {
    position: relative;
    max-width: var(--latitudo);
    margin: 0 auto;
    padding: 32px var(--margo) 40px;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: var(--intervallum);
    row-gap: 28px;
    font-size: var(--corpus-9);
    line-height: 1.5;
    color: var(--cinis);
}
.colophon-corpus::before { content: ""; position: absolute; top: 0; left: var(--margo); right: var(--margo); border-top: 1px solid var(--atramentum); }
.colophon-signum { grid-column: 1 / span 5; }
.colophon-signum .versus { margin-top: 8px; font-style: italic; color: var(--scriptura); }
.colophon-horae { grid-column: 6 / span 4; }
.colophon-iter { grid-column: 10 / -1; display: flex; flex-direction: column; gap: 2px; }
.colophon .inscriptio { margin-bottom: 8px; }
.colophon-horae .status { margin-top: 6px; color: var(--atramentum); }
.colophon-horae .status::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 9px; border-radius: 50%; background-color: #6E8B5E; vertical-align: .08em; }
.colophon-horae .status.clausa::before { background-color: var(--minium); }
.colophon-iter a { color: var(--atramentum); text-decoration: none; }
.colophon-iter a:hover { text-decoration: underline; }
.colophon .dictum { grid-column: 1 / -1; font-style: italic; }
.colophon .anni { grid-column: 1 / -1; padding-top: 14px; border-top: 1px solid var(--linea); font-size: var(--corpus-9); letter-spacing: .04em; font-variant-numeric: lining-nums; }
.colophon .signum { font-size: var(--corpus-9); }
.colophon .quadratum { width: 7px; height: 7px; }

@media (max-width: 1099px) {
    .paries, .series { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 999px) {
    .limen-atrii { display: block; }
    .sermo, .fasti { grid-column: 1 / -1; }
    .fasti { margin-top: 48px; }
    .colophon-signum, .colophon-horae { grid-column: span 6; }
    .colophon-iter { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; gap: 6px 22px; }
    .opus-diei { margin-top: 48px; }
    .expositio-praecipua a { grid-template-columns: minmax(0, 1fr); row-gap: 24px; }
    .prooemium, .corpus { display: block; }
    .opus-praecipuum { position: static; margin: 0 0 40px; }
    .opus-praecipuum img { --alt: 70svh; }
    .vita { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 24px 32px; margin-bottom: 48px; }
    .vita .effigies { margin: 0; }
    .vita .notitia { flex: 1 1 280px; }
    .libri, .liber { display: block; }
    .liber .siglum { margin-bottom: 4px; }
}

@media (max-width: 719px) {
    :root { --vestibulum: 60px; }
    .signum { font-size: var(--corpus-10); }
    .iter { gap: 16px; }
    .notitia > div { grid-template-columns: 8.5em minmax(0, 1fr); }
    .ordo { flex-direction: column; gap: 10px; }
    .paries { column-gap: 16px; row-gap: 44px; }
    .locus { height: 96cqi; }
    .lemma { margin-top: 10px; font-size: var(--corpus-9); min-height: 3.8em; }
    .lemma .annus { font-size: var(--corpus-9); }
    .series { grid-template-columns: minmax(0, 1fr); }
    .expositio-brevis .locus { height: 72cqi; }
    .colophon-corpus > * { grid-column: 1 / -1; }

    .opus .vestibulum .signum { display: none; }
    .opus .iter { width: 100%; justify-content: space-between; }
    .opus .ad-expositionem { max-width: 70vw; }
    .aula { grid-template-columns: 1fr 1fr; min-height: 0; padding-bottom: 0; }
    .tabula { grid-column: 1 / -1; grid-row: 1; width: 100%; }
    .amplificatio { display: flex; justify-content: center; }
    .tabula img { --alt: 76svh; }
    .schedula { display: block; margin-top: 20px; padding: 0 var(--margo); }
    .catalogus { margin-top: 14px; padding: 12px 0 0; border-left: 0; border-top: 1px solid var(--linea); }
    .sagitta { grid-row: 2; justify-content: flex-start; gap: 10px; min-height: 64px; margin-top: 24px; padding: 0 var(--margo); border-top: 1px solid var(--linea); border-bottom: 1px solid var(--linea); }
    .sagitta.porro { justify-content: flex-end; flex-direction: row-reverse; border-left: 1px solid var(--linea); }
    .sagitta svg { width: 14px; height: 24px; }
    .sagitta:hover svg { transform: none; }
    .verbum { display: inline; }

    .de-pinacotheca > * { grid-column: 1 / -1; }
    .fasti { margin-top: 40px; }
    .programmata { grid-template-columns: minmax(0, 360px); justify-content: center; }
    .vestibulum .hora-aperta { display: none; }

    .lacuna { grid-template-columns: minmax(0, 1fr); row-gap: 40px; }
    .paries-vacuus { width: min(72%, 300px); }
    .murus { padding: 24px 0; }
    .de-opere .locus { width: 88px; height: 88px; }
    .bulla { width: 100%; }
}

@media print {
    body { background: #fff; color: #000; font-size: 11pt; }
    .vestibulum, .sagitta, .liber-hospitum, .colophon, .ad-rem, .ordo, .paginae { display: none; }

    .aula .amplificatio img, .schedula, .ad-scribendum { opacity: 1 !important; visibility: visible !important; animation: none !important; }
    body.lux-surgit::after, .crepusculum, .praemonitio, .musica-perpetua, .apparatus-operis, .ad-mensuram-operis, .aula.exspectat .amplificatio::after { display: none !important; }
    .aula { display: block; min-height: 0; }
    .tabula { display: block; width: auto; }
    .tabula img { --alt: 70vh; max-width: 100%; margin: 0 auto; }
    .schedula { margin-top: 16pt; }
    a { text-decoration: none; }
}

@media (max-width: 719px) { .programma { aspect-ratio: auto; grid-template-rows: 62vw auto; } }
.fasti .annus abbr { font-size: var(--corpus-9); letter-spacing: .04em; text-decoration: none; }
.margo-expositionis .annus abbr { font-size: var(--corpus-10); letter-spacing: .04em; text-decoration: none; }

:is(.paries-vacuus, .programma.vacua) a.clavus { position: relative; display: block; view-transition-name: clavus; transition: background .8s ease, box-shadow .8s ease, transform .8s ease; }
:is(.paries-vacuus, .programma.vacua) a.clavus::before { content: ""; position: absolute; inset: -14px; }
:is(.paries-vacuus, .programma.vacua) a.clavus:is(:hover, :focus-visible) { background: radial-gradient(circle at 32% 30%, #FFF6DF, #B59A62 45%, #4A4135 85%); box-shadow: 2px 3px 3px rgb(0 0 0 / .28), 0 0 9px 2px rgb(214 168 92 / .38); transform: scale(1.2); }
.paries-vacuus a.clavus:focus-visible { outline-offset: 6px; }

body.rariora, body.rariora.paries-proprius {
    --charta: var(--paries);
    --fundus: #2C2925;
    --atramentum: #ECE6DA;
    --scriptura: #CBC3B4;
    --cinis: #968E81;
    --linea: #3D3832;
    --charta-tabellae: #EDE7DB;
    --tabula: #14120F;
    --latitudo-rari: min(calc(100vw - 2 * var(--margo) - 64px), calc((100svh - var(--vestibulum) - 168px) * .70), 600px);
    background-color: var(--paries);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .46 0 0 0 0 .4 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E");
    color: var(--scriptura);
}
.rariora a { text-decoration-color: rgb(236 230 218 / .3); }
.rariora a:hover { text-decoration-color: currentColor; }
.rariora ::selection { background-color: rgb(236 230 218 / .2); }
.rariora .ad-rem { background: var(--atramentum); color: var(--paries); }
@media (prefers-reduced-motion: no-preference) {
    body.rariora::after { content: ""; position: fixed; inset: 0; z-index: 50; background-color: #0A0908; opacity: 0; pointer-events: none; animation: lux-cimelii 3.4s cubic-bezier(.45, 0, .2, 1) .15s backwards; }
}
@keyframes lux-cimelii { from { opacity: .92; } to { opacity: 0; } }

.cimeliarchium > section, .cimeliarchium > figure { width: min(100% - 2 * var(--margo), var(--latitudo)); margin-inline: auto; }
.rarum { display: grid; grid-template-columns: minmax(0, 1fr) 320px; column-gap: clamp(32px, 5vw, 88px); align-items: end; min-height: calc(100svh - var(--vestibulum)); padding-bottom: 28px; }
.rariora .murus { --x: 50%; --y: 40%; position: relative; display: grid; justify-items: center; padding: 14px 0 0; }
.rariora .murus::before { content: ""; position: absolute; inset: -14% -10% -6%; background: radial-gradient(closest-side at 50% 46%, rgb(255 236 204 / .08), rgb(255 236 204 / .045) 45%, rgb(255 236 204 / .015) 75%, rgb(255 236 204 / 0)); pointer-events: none; }
.rariora .murus::after { content: ""; position: absolute; inset: -12% -6% -4%; background: radial-gradient(circle 300px at var(--x) var(--y), rgb(255 238 208 / .05), rgb(255 238 208 / 0) 100%); pointer-events: none; }

.tabella-rari { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; perspective: 2600px; }
.tabella-rari .clavus { view-transition-name: clavus; background: radial-gradient(circle at 35% 35%, #CFC6B3, #575045 70%); box-shadow: 1px 2px 2px rgb(0 0 0 / .5); }
.versatile { position: relative; display: grid; margin-top: 30px; transform-style: preserve-3d; }
.versatile::before { content: ""; position: absolute; left: 50%; top: -30px; width: 72%; height: 30px; transform: translateX(-50%); background: linear-gradient(to bottom right, transparent calc(50% - .5px), rgb(150 142 129 / .45) 50%, transparent calc(50% + .5px)) left / 50% 100% no-repeat, linear-gradient(to bottom left, transparent calc(50% - .5px), rgb(150 142 129 / .45) 50%, transparent calc(50% + .5px)) right / 50% 100% no-repeat; pointer-events: none; }
.frons, .tergum { backface-visibility: hidden; -webkit-backface-visibility: hidden; box-shadow: 0 0 0 7px var(--tabula), 0 0 0 8px #3A342C, 0 26px 48px -14px rgb(0 0 0 / .7); }
.frons { padding: calc(var(--latitudo-rari) * .085); background-color: var(--charta-tabellae); }
.tergum { position: absolute; inset: 0; transform: rotateY(180deg); }
.frons .margo { position: relative; display: block; line-height: 0; }
.imago-rari { display: block; width: var(--latitudo-rari); height: auto; background-color: #D9CBB0; box-shadow: 0 0 0 1px rgb(255 255 255 / .55), 0 0 0 2px rgb(60 52 40 / .12); }

.tergum {
    --magnitudo: calc(var(--latitudo-rari) * .029);
    display: flex;
    flex-direction: column;
    gap: calc(var(--magnitudo) * .9);
    padding: calc(var(--latitudo-rari) * .06) calc(var(--latitudo-rari) * .07);
    overflow: hidden;
    background-color: #A8977B;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .32 0 0 0 0 .26 0 0 0 0 .18 0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E"), radial-gradient(120% 90% at 30% 20%, rgb(255 246 226 / .16), rgb(60 44 26 / .14));
    color: rgb(48 44 38 / .86);
    font-size: var(--magnitudo);
    font-style: italic;
    line-height: 1.28;
    hyphens: manual;
}
.tergum .linea { display: block; }
.manus-bramsen { transform: rotate(-.5deg); transform-origin: 0 0; }
.manus-bramsen .nota-scribae { font-style: normal; font-size: .78em; letter-spacing: .02em; color: rgb(48 44 38 / .55); }
.manus-tertia { margin-top: auto; font-size: .92em; color: rgb(48 44 38 / .62); }
.chartula { align-self: flex-end; display: grid; place-items: center; width: 44%; aspect-ratio: 2.8; padding: .5em .8em; background-color: #E6DECB; box-shadow: 0 1px 2px rgb(40 30 20 / .25); font-style: normal; font-size: .74em; line-height: 1.3; letter-spacing: .02em; text-align: center; color: rgb(80 72 60 / .75); transform: rotate(.6deg); }
.manus-mercatoris { color: rgb(48 44 38 / .78); }

.vertere { margin-top: 24px; text-align: center; }
.verte { min-height: 44px; padding: 10px 14px; border: 0; background: none; font: inherit; font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--scriptura); cursor: pointer; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .32em; text-decoration-color: rgb(236 230 218 / .28); transition: color .3s, text-decoration-color .3s; }
.verte:hover, .verte:focus-visible { color: var(--atramentum); text-decoration-color: currentColor; }
.verte .tergi, .versum .verte .frontis { display: none; }
.versum .verte .tergi { display: inline; }

.schedula-rari { position: relative; align-self: end; padding-bottom: 76px; font-size: var(--corpus-9); line-height: 1.45; }
.schedula-rari > .inscriptio { margin-bottom: 26px; transition: opacity .9s ease; }
.versum .schedula-rari > .inscriptio { opacity: 0; }
.schedula-frontis, .schedula-tergi { transition: opacity .45s ease, visibility 0s linear .45s; }
.schedula-tergi { position: absolute; left: 0; right: 0; bottom: 76px; }
.schedula-tergi { opacity: 0; visibility: hidden; }
.versum .schedula-frontis { opacity: 0; visibility: hidden; }
.versum .schedula-tergi { opacity: 1; visibility: visible; transition: opacity 1s ease .6s, visibility 0s; }
.rarum:not(.versum) .schedula-frontis { transition: opacity 1s ease .6s, visibility 0s; }
.schedula-frontis .auctor { font-size: var(--corpus-11); color: var(--atramentum); }
.schedula-frontis .auctor a { text-decoration: none; }
.schedula-frontis .auctor a:hover { text-decoration: underline; }
.schedula-frontis .nomen { margin-top: 6px; font-size: var(--corpus-16); font-style: italic; line-height: 1.2; color: var(--atramentum); }
.schedula-frontis .nomen-originale { margin-top: 6px; font-style: italic; color: var(--cinis); }
.schedula-frontis .annus { margin-top: 10px; font-size: var(--corpus-10); color: var(--scriptura); }
.schedula-frontis .catalogus { margin-top: 18px; padding: 14px 0 0; border-left: 0; border-top: 1px solid var(--linea); }
.genus-tergi { font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; color: var(--atramentum); }
.descriptio-tergi { margin-top: 10px; color: var(--cinis); text-wrap: pretty; }
.versio-tergi { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--linea); font-style: italic; line-height: 1.5; color: var(--scriptura); }
.versio-tergi .linea { display: inline; }
.versio-tergi .linea + .linea::before { content: " "; }
.versio-tergi .nota-scribae { font-style: normal; color: var(--cinis); }
.versio-mercatoris { margin-top: 10px; font-style: italic; color: var(--scriptura); }
.schedula-tergi .fons-verborum { margin-top: 14px; font-size: var(--corpus-8); letter-spacing: .03em; color: var(--cinis); }

.perspicillum { --d: clamp(180px, 15vw, 260px); position: absolute; left: 0; top: 0; width: var(--d); height: var(--d); border-radius: 50%; background-color: #D9CBB0; background-repeat: no-repeat; box-shadow: 0 0 0 1px rgb(20 18 15 / .55), 0 0 0 4px rgb(236 230 218 / .14), 0 14px 34px rgb(0 0 0 / .45), inset 0 0 12px rgb(40 30 18 / .14); opacity: 0; pointer-events: none; transition: opacity .35s ease; will-change: transform; }
.perspicillum::after { content: ""; position: absolute; inset: -4px; border-radius: 50%; background: conic-gradient(rgb(236 230 218 / .9) calc(var(--progressus, 0) * 360deg), rgb(236 230 218 / .14) 0); -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px)); mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px)); opacity: 0; transition: opacity .5s ease; }
.perspicillum.onerat::after { opacity: 1; }
.inspicitur { cursor: none; }
.inspicitur .perspicillum { opacity: 1; }

@media (prefers-reduced-motion: no-preference) {
    .versatile { transition: transform 1.5s cubic-bezier(.62, 0, .2, 1); }
}
.versum .versatile { transform: rotateY(180deg); }
@media (prefers-reduced-motion: reduce) {
    .frons, .tergum { transition: opacity .6s ease; }
    .versum .versatile { transform: none; }
    .tergum { transform: none; opacity: 0; visibility: hidden; }
    .versum .tergum { opacity: 1; visibility: visible; }
    .versum .frons { opacity: 0; }
}
@media (scripting: none) {
    .versatile { display: block; }
    .tergum { position: relative; transform: none; margin-top: 48px; height: calc(var(--latitudo-rari) * 1.42); }
    .schedula-tergi { position: static; opacity: 1; visibility: visible; margin-top: 40px; }
}

.notitia-rari { margin-top: var(--spatium-5); }
.secretum .notitia-rari + .rarum { margin-top: var(--spatium-6, 120px); }
.secretum .oleum .tabella-rari { --latitudo-rari: min(calc(100vw - 2 * var(--margo) - 480px), calc((100svh - var(--vestibulum) - 168px) * var(--forma)), 900px); }
.secretum .oleum .frons { padding: 0; background: none; }
.secretum .oleum .imago-rari { background-color: #1A1814; box-shadow: none; }
.notitia-rari .notitia { max-width: 46rem; }
.notitia-rari .notitia dd .genus { color: var(--cinis); }
.notitia-rari .notitia [lang=da] { font-style: italic; }
.notitia-rari .series-factorum { max-width: 46rem; margin-top: 18px; }

.dyas { margin-top: var(--spatium-7); }
.dyas-tabulae { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); grid-template-rows: auto auto; column-gap: clamp(40px, 7vw, 120px); margin-top: var(--spatium-3); }
.dyas-tabulae figure { display: grid; grid-template-rows: subgrid; grid-row: span 2; margin: 0; }
.dyas-tabulae figure > .margo, .dyas-tabulae figure > .pagina { align-self: end; }
.dyas .ida .margo { position: relative; display: block; width: fit-content; padding: clamp(14px, 2vw, 28px); background-color: var(--charta-tabellae); line-height: 0; box-shadow: 0 0 0 6px var(--tabula), 0 0 0 7px #3A342C, 0 22px 40px -14px rgb(0 0 0 / .7); }
.dyas .ida img { display: block; width: min(30vw, 420px); height: auto; }
.dyas .pagina { position: relative; display: block; line-height: 0; box-shadow: 0 24px 46px -18px rgb(0 0 0 / .75); }
.dyas .pagina img { display: block; width: 100%; height: auto; }
.dyas figcaption { margin-top: 26px; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.dyas figcaption p + p { margin-top: 2px; }
.dyas figcaption .auctor { color: var(--scriptura); }
.dyas figcaption .nomen { margin-top: 2px; font-size: var(--corpus-12); font-style: italic; line-height: 1.3; color: var(--atramentum); }
.dyas figcaption .nomen-originale { font-style: italic; }
.dyas figcaption .annus { margin-bottom: 8px; color: var(--scriptura); }
.dyas .testimonium-musei, .dyas .fons { margin-top: 10px !important; }
.dyas .testimonium-musei [lang=da] { font-style: italic; color: var(--scriptura); }
.lemma-bramsen { max-width: 46rem; margin: var(--spatium-5) 0 0; padding-top: 22px; border-top: 1px solid var(--linea); }
.lemma-bramsen blockquote { margin: 0; font-size: var(--corpus-10); line-height: 1.55; color: var(--atramentum); hanging-punctuation: first; }
.lemma-bramsen .versio { margin-top: 12px; font-size: var(--corpus-10); font-style: italic; line-height: 1.55; color: var(--scriptura); }
.lemma-bramsen .fons-verborum { margin-top: 12px; font-size: var(--corpus-8); letter-spacing: .03em; color: var(--cinis); }

.carmen-dyadis { display: grid; grid-template-columns: repeat(2, max-content); justify-content: center; column-gap: clamp(40px, 6vw, 96px); row-gap: 14px; }
.carmen-dyadis blockquote, .carmen-dyadis .versio { font-size: var(--corpus-12); font-style: italic; line-height: 1.5; text-align: left; }
.carmen-dyadis blockquote { color: var(--atramentum); }
.carmen-dyadis .versio { color: var(--cinis); }
.carmen-dyadis .linea { display: block; }
.carmen-dyadis figcaption { grid-column: 1 / -1; margin-top: 18px; }

@media (max-width: 1099px) {
    .rarum { grid-template-columns: minmax(0, 1fr); min-height: 0; padding-top: var(--spatium-3); }
    .schedula-rari { width: min(100%, 34rem); margin: 40px auto 0; padding-bottom: 0; }
    .schedula-tergi { position: static; display: none; margin-top: 0; }
    .versum .schedula-tergi { display: block; }
    .versum .schedula-frontis { display: none; }
    body.rariora { --latitudo-rari: min(calc(100vw - 2 * var(--margo) - 64px), 560px); }
    .secretum .oleum .tabella-rari { --latitudo-rari: min(calc(100vw - 2 * var(--margo) - 64px), calc((100svh - var(--vestibulum) - 120px) * var(--forma)), 900px); }
}
@media (max-width: 899px) {
    .dyas-tabulae { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; row-gap: var(--spatium-4); }
    .dyas-tabulae figure { display: block; }
    .dyas .ida img { width: min(calc(100vw - 2 * var(--margo) - 48px), 420px); }
}
@media (max-width: 719px) {
    .carmen-dyadis { grid-template-columns: minmax(0, 1fr); justify-content: start; }
    .carmen-dyadis blockquote, .carmen-dyadis .versio { text-align: center; }
}
.exitus-rari { animation: none; display: flex; justify-content: center; gap: 36px; margin-top: var(--spatium-6); font-size: var(--corpus-9); letter-spacing: .16em; text-transform: uppercase; font-feature-settings: "case"; }

.in-situ { margin-top: 3px; color: var(--cinis); font-variant-numeric: lining-nums; }
.in-situ::before { content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 8px; border-radius: 50%; box-shadow: inset 0 0 0 1px currentColor; vertical-align: .1em; opacity: .7; }
.in-situ.expositum { color: var(--scriptura); }
.in-situ.expositum::before { opacity: 1; background-color: #D2A257; box-shadow: 0 0 5px 1px rgb(222 172 92 / .5); }
.in-situ-nota { margin-top: 1px; padding-left: 14px; font-size: .9em; font-style: italic; line-height: 1.4; color: var(--cinis); }
.in-situ-nota a { color: inherit; text-decoration-color: rgb(120 112 100 / .45); }
.in-situ-nota a:hover, .in-situ-nota a:focus-visible { color: var(--scriptura); text-decoration-color: currentColor; }
dd .in-situ { margin-top: 6px; font-size: var(--corpus-9); }
dd .in-situ-nota { font-size: var(--corpus-8); }
@media (prefers-reduced-motion: no-preference) {
    .in-situ.expositum::before { animation: lumen-situs 5s ease-in-out infinite alternate; }
}
@keyframes lumen-situs { from { box-shadow: 0 0 4px 0 rgb(222 172 92 / .35); } to { box-shadow: 0 0 7px 2px rgb(222 172 92 / .6); } }

.fasciculus .titulus .summa { max-width: 46em; }
.opus-fasciculi { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--intervallum); margin-top: var(--spatium-4); }
.tabula-fasciculi { grid-column: 1 / span 5; margin: 0; }
.tabula-fasciculi img { display: block; width: 100%; height: auto; max-height: 86svh; object-fit: contain; object-position: left top; background-color: var(--fundus); }
.tabula-fasciculi figcaption { margin-top: 10px; font-size: var(--corpus-9); color: var(--cinis); }
.opus-fasciculi .notitia { grid-column: 7 / -1; margin-top: 0; max-width: none; align-self: start; }
.opus-fasciculi .notitia > div { grid-template-columns: 8.5em minmax(0, 1fr); }
.nota-notitiae { color: var(--cinis); font-size: var(--corpus-9); }
.pars-fasciculi { margin-top: var(--spatium-5); padding-top: 16px; border-top: 1px solid var(--linea); }
.pars-fasciculi > .inscriptio { margin-bottom: var(--spatium-2); }
.littera { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--intervallum); row-gap: 28px; }
.littera + .littera { margin-top: var(--spatium-4); }
.littera > .epistula { grid-column: 1 / span 6; }
.littera > .autographa { grid-column: 7 / -1; }
.littera > .pars-operis { grid-column: 7 / -1; }
.littera > .exemplar { grid-column: 7 / -1; margin-top: 0; max-width: none; }
.littera > .margo-litterae { grid-column: 7 / -1; display: grid; row-gap: 28px; align-content: start; }
.margo-litterae > .exemplar { margin-top: 0; max-width: none; }
.partes-operis { display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: 28px var(--intervallum); align-items: start; margin-top: 28px; }
.partes-operis .pars-operis { max-width: none; }
.epistula { margin: 0; max-width: 36em; }
.epistula blockquote { margin: 0; font-size: var(--corpus-12); line-height: 1.5; color: var(--atramentum); text-wrap: pretty; hanging-punctuation: first; }
.epistula .versio { margin-top: 12px; font-style: italic; line-height: 1.55; color: var(--scriptura); text-wrap: pretty; }
.autographa .autographum { max-width: none; margin-top: 0; }
.autographa .autographum + .autographum { margin-top: 18px; }
/* ПИСЬМА (litterae.php): строй — как «Словами художника» в досье; слова письма набором с подстрочником
   (interpretatio): строки выше обычного — под словом встаёт его смысл; '¶' — его перенос строки. */
.verba-litterae { margin-top: 0; max-width: 36em; }
.verba-litterae .verba { font-size: var(--corpus-12); font-style: normal; line-height: 2.75; text-wrap: pretty; }
.verba-litterae .dictio[data-glossa]::after { font-size: .6em; font-style: italic; }
.verba-litterae .linea-nova { display: block; }
.tempus-litterae { margin: 0 0 6px; }
.litterae .opera-loci { margin-top: 26px; }
.litterae .opus-loci { flex: 0 1 15rem; }
.aula-litterae { margin-top: 22px; font-size: var(--corpus-9); }
/* Письмо на двух листах — листы рядом, как разложенные на столе. */
.autographa:has(> .folium-litterae + .folium-litterae) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px; align-items: start; }
.autographa .folium-litterae + .folium-litterae { margin-top: 0; }
.pars-operis { margin: 0; max-width: 30rem; }
.pars-operis img { display: block; width: 100%; height: auto; background-color: var(--fundus); }
.pars-operis figcaption { margin-top: 10px; font-size: var(--corpus-9); line-height: 1.55; color: var(--cinis); text-wrap: pretty; }
.carmen > .inscriptio { margin-bottom: var(--spatium-2); }
.praefatio-carminis { max-width: 40em; }
.carmen-corpus { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--intervallum); margin-top: var(--spatium-4); }
.folium-carminis { grid-column: 1 / span 4; margin: 0; align-self: start; position: sticky; top: 24px; }
.folium-carminis img { display: block; width: 100%; height: auto; }
.folium-carminis figcaption { margin-top: 10px; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.versus-carminis { grid-column: 6 / -1; }
.versus-carminis h2 { margin: 0; font-size: var(--corpus-28); font-weight: 400; font-style: italic; line-height: 1.1; color: var(--atramentum); }
.auctor-carminis { margin-top: 10px; max-width: 30em; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.strofa { margin-top: 1.3em; }
.strofa .versus { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); column-gap: 28px; align-items: baseline; margin: 0; font-size: var(--corpus-10); line-height: 1.5; color: var(--atramentum); }
.strofa .versus + .versus { margin-top: 3px; }
.strofa .versus .versio { display: block; margin: 0; padding: 0; font-style: italic; font-size: var(--corpus-9); line-height: 1.5; color: var(--scriptura); }
.pars-carminis { margin-top: var(--spatium-4); }
.apparatus-carminis { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px var(--intervallum); margin-top: var(--spatium-3); max-width: 64rem; }
.apparatus-carminis figure { margin: 0; padding-top: 12px; border-top: 1px solid var(--linea); }
.apparatus-carminis blockquote { margin: 0; font-size: var(--corpus-10); line-height: 1.5; color: var(--atramentum); }
.apparatus-carminis .versio { margin-top: 8px; font-style: italic; font-size: var(--corpus-10); line-height: 1.5; color: var(--scriptura); }
:is(.testimonia-prima, .epistulae-spectatorum) .testimonium { max-width: 46rem; }
.status-operis .textus-status { grid-column: 1 / span 6; }
.status-operis .textus-status > .epistula { margin-top: 28px; }
.status-operis .textus-status > .exemplar { margin-top: 18px; max-width: none; }
.palimpsestus { margin: 0; }
.palimpsestus .tabulae-status { position: relative; display: block; }
.palimpsestus .tabulae-status img { display: block; width: 100%; height: auto; }
.palimpsestus .tabulae-status img.prior { position: absolute; inset: 0; height: 100%; opacity: 0; transition: opacity 3.4s cubic-bezier(.3, .1, .3, 1); }
.palimpsestus.prior .tabulae-status img.prior { opacity: 1; }
@media (hover: hover) { .palimpsestus .tabulae-status:hover img.prior { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .palimpsestus .tabulae-status img.prior { transition-duration: .6s; } }
.palimpsestus figcaption { margin-top: 10px; font-size: var(--corpus-9); line-height: 1.55; color: var(--cinis); }
.tempora-status { display: flex; align-items: baseline; gap: .7em; margin: 0; font-style: italic; }
.tempora-status button { padding: 12px 0; margin: -12px 0; border: 0; background: none; font: inherit; letter-spacing: .02em; color: inherit; cursor: pointer; transition: color .6s ease; }
.tempora-status button + button::before { content: "·"; display: inline-block; margin-right: .7em; font-style: normal; color: var(--linea); }
.tempora-status button:hover, .tempora-status button:focus-visible { color: var(--atramentum); }
.tempora-status [aria-pressed="true"] { color: var(--atramentum); cursor: default; }
.fons-status { margin: 6px 0 0; text-wrap: pretty; }
@media (scripting: none) { .tempora-status { display: none; } }
:is(.testimonia-prima, .epistulae-spectatorum) .annus { margin: 0 0 14px; font-size: var(--corpus-24); line-height: 1; color: var(--cinis); font-variant-numeric: oldstyle-nums; }
:is(.testimonia-prima, .epistulae-spectatorum) .exemplar { max-width: 46rem; }
.textus-fasciculi { max-width: 40em; }
.textus-fasciculi p { line-height: 1.6; color: var(--atramentum); text-wrap: pretty; }
.textus-fasciculi p + p { margin-top: .8em; }
.pars-fasciculi .epistula { margin-top: 28px; }
.pars-fasciculi > .notitia { margin-top: 0; max-width: 46rem; }
.titulus-ordinis { margin-top: 32px; margin-bottom: 12px; }
.series-fasciculi { margin: 0; padding: 0; list-style: none; max-width: 52rem; }
.series-fasciculi li { display: grid; grid-template-columns: 9em minmax(0, 1fr); column-gap: 20px; padding: 9px 0 10px; border-bottom: 1px solid var(--linea); font-size: var(--corpus-10); line-height: 1.5; color: var(--atramentum); }
.tempus-seriei { color: var(--cinis); font-variant-numeric: lining-nums; }
.series-fasciculi cite { font-style: italic; }
.numerus-seriei { margin-left: .4em; color: var(--cinis); }
.signum-catalogi { margin-left: .4em; font-size: var(--corpus-8); font-style: italic; color: var(--minium); white-space: nowrap; }
.series-fasciculi .liber-catalogi { color: var(--atramentum); }
.archetypum-notae { margin-top: 18px; max-width: 52rem; }
.archetypum-notae summary { cursor: pointer; font-size: var(--corpus-9); color: var(--cinis); }
.archetypum-notae p { margin-top: 10px; font-size: var(--corpus-9); line-height: 1.6; color: var(--scriptura); }
.cognata { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px var(--intervallum); margin: 0; padding: 0; list-style: none; }
.cognata li { padding-top: 12px; border-top: 1px solid var(--linea); }
.imago-cognati { margin: 0 0 14px; }
.imago-cognati img { display: block; width: 100%; max-width: 22rem; height: auto; }
.nomen-cognati { margin-top: 4px; font-size: var(--corpus-12); color: var(--atramentum); }
.in-aula { font-size: var(--corpus-9); color: var(--cinis); }
.de-cognato { margin-top: 6px; font-size: var(--corpus-9); line-height: 1.5; color: var(--scriptura); }
.cognata .nota-testimonii { font-size: var(--corpus-9); line-height: 1.5; color: var(--scriptura); }
.fasciculus .titulus .nomen-originale { margin-top: 8px; }
.cognata .numeri { font-size: var(--corpus-9); color: var(--cinis); font-variant-numeric: lining-nums; }
.regula-lectionum { max-width: 40em; margin-bottom: 18px; font-size: var(--corpus-9); color: var(--cinis); }
.lectiones-fasciculi { max-width: 52rem; }
.lectiones-fasciculi ul { margin: 0; padding: 0; list-style: none; }
.lectiones-fasciculi li + li { margin-top: 4px; }
.auctor-lectionis { color: var(--cinis); }
@media (max-width: 999px) {
    .tabula-fasciculi, .opus-fasciculi .notitia, .littera > .epistula, .littera > .autographa, .littera > .pars-operis, .littera > .exemplar, .littera > .margo-litterae, .status-operis .textus-status, .folium-carminis, .versus-carminis { grid-column: 1 / -1; }
    .opus-fasciculi .notitia { margin-top: 28px; }
    .folium-carminis { position: static; margin-bottom: 32px; }
    .cognata { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .apparatus-carminis { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 719px) {
    .strofa, .cognata { grid-template-columns: minmax(0, 1fr); }
    .strofa .versus { grid-template-columns: minmax(0, 1fr); }
    .strofa .versus .versio { margin-top: 2px; }
    .series-fasciculi li { grid-template-columns: minmax(0, 1fr); }
}
.croquis { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--intervallum); margin-top: var(--spatium-4); scroll-margin-top: 24px; }
.croquis > .epistula { grid-column: 1 / span 4; align-self: end; }
.folium-croquis { grid-column: 6 / -1; margin: 0; }
.folium-croquis img { display: block; width: 100%; height: auto; }
.folium-croquis figcaption, .imago-marginis figcaption, .tabula-exempli figcaption { margin-top: 10px; font-size: var(--corpus-9); line-height: 1.5; color: var(--cinis); }
.exemplum { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--intervallum); }
.exemplum + .exemplum { margin-top: var(--spatium-4); }
.tabula-exempli { grid-column: 1 / span 6; margin: 0; }
.tabula-exempli img { display: block; width: 100%; height: auto; max-height: 80svh; object-fit: contain; object-position: left top; }
.de-exemplo { grid-column: 8 / -1; }
.auctor-exempli { font-size: var(--corpus-9); letter-spacing: .14em; text-transform: uppercase; color: var(--atramentum); }
.de-exemplo h3 { margin: 6px 0 0; font-size: var(--corpus-16); font-weight: 400; line-height: 1.2; color: var(--atramentum); }
.de-exemplo .nomen-originale { margin-top: 4px; }
.notitia-exempli { margin-top: 12px; font-size: var(--corpus-9); line-height: 1.55; color: var(--scriptura); }
.de-exemplo .epistula { margin-top: 24px; }
.imago-marginis { margin: 28px 0 0; max-width: 22rem; }
.imago-marginis img { display: block; width: 100%; height: auto; }
.cognata li[id], .imago-cognati .miniatura { scroll-margin-top: 24px; }
.imago-cognati .miniatura { display: block; width: 100%; max-width: 22rem; height: auto; }
@media (max-width: 999px) {
    .croquis > .epistula, .folium-croquis, .tabula-exempli, .de-exemplo { grid-column: 1 / -1; }
    .folium-croquis, .de-exemplo { margin-top: 24px; }
}
.editio-princeps { margin-top: var(--spatium-4); max-width: 64rem; }
.editio-princeps > .inscriptio { margin-bottom: 6px; }
.exemplaria-editionis { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0 var(--intervallum); align-items: start; }
.exemplaria-editionis .exemplar { max-width: none; }
.lectiones-carminis { width: 100%; margin-top: 28px; border-collapse: collapse; font-size: var(--corpus-10); }
.lectiones-carminis :is(th, td) { padding: 7px 14px 7px 0; border-bottom: 1px solid var(--linea); text-align: left; vertical-align: baseline; font-weight: 400; color: var(--atramentum); }
.lectiones-carminis th { font-size: var(--corpus-8); letter-spacing: .12em; text-transform: uppercase; color: var(--cinis); }
.lectiones-carminis td:first-child { color: var(--cinis); width: 4.5em; }
@media (max-width: 719px) {
    .exemplaria-editionis { grid-template-columns: minmax(0, 1fr); }
    .lectiones-carminis { font-size: var(--corpus-9); }
}

@property --charta { syntax: "<color>"; inherits: true; initial-value: #F6F5F1; }
@property --fundus { syntax: "<color>"; inherits: true; initial-value: #ECEAE4; }
@property --atramentum { syntax: "<color>"; inherits: true; initial-value: #1C1B19; }
@property --scriptura { syntax: "<color>"; inherits: true; initial-value: #2E2D2A; }
@property --cinis { syntax: "<color>"; inherits: true; initial-value: #4F4B44; }
@property --linea { syntax: "<color>"; inherits: true; initial-value: #D3CEC3; }
@property --minium { syntax: "<color>"; inherits: true; initial-value: #B4524C; }

.lumina { display: flex; align-items: baseline; gap: .7em; font-size: var(--corpus-9); font-style: italic; line-height: 1.45; color: var(--cinis); white-space: nowrap; }
.vestibulum > .iter, .vestibulum > .signum + .lumina { margin-left: auto; }
.lumina button { padding: 12px 0; margin: -12px 0; border: 0; background: none; font: inherit; letter-spacing: .02em; color: inherit; cursor: pointer; transition: color .6s ease, text-shadow 1.2s ease; }
.lumina button + button::before { content: "·"; display: inline-block; margin-right: .7em; font-style: normal; color: var(--linea); }
.lumina button:hover, .lumina button:focus-visible { color: var(--atramentum); }
.lumina [aria-pressed="true"] { color: var(--atramentum); cursor: default; }
.lumina [data-lumen="lychni"]:hover { text-shadow: 0 0 .7em rgb(214 160 80 / .35); }
.lychni .lumina [data-lumen="lychni"][aria-pressed="true"] { color: #F1E3C2; text-shadow: 0 0 .5em rgb(226 178 98 / .45), 0 0 1.4em rgb(214 160 80 / .2); }
@media (scripting: none) { .lumina { display: none; } }

body { --color-umbrae: #1E1A14; }
body.paries-proprius { --color-umbrae: color-mix(in srgb, var(--paries) 35%, #0D0B09); }
:is(.tabula, .locus, .opus-praecipuum, .imago-expositionis, .tabula-diei) img {
    box-shadow:
        0 1px 1.5px color-mix(in srgb, var(--color-umbrae) 20%, transparent),
        0 6px 12px -4px color-mix(in srgb, var(--color-umbrae) 16%, transparent),
        0 26px 40px -22px color-mix(in srgb, var(--color-umbrae) 34%, transparent);
}

@media screen {
    :root.lychni { color-scheme: dark; }
    :root.lychni > body:not(.pagina-archon) {
        --charta: #191816;
        --fundus: #23211E;
        --atramentum: #ECE6DA;
        --scriptura: #CBC3B4;
        --cinis: #9A9285;
        --linea: #3A3631;
        --minium: #C8675F;
    }
    :root.lychni > body.paries-proprius:not(.pagina-archon) { --charta: oklch(from var(--paries) .215 calc(c * .8) h); --fundus: oklch(from var(--paries) .26 calc(c * .8) h); }
    :root.lychni > body.dies-obitus { --charta: oklch(from var(--paries, #F6F5F1) .17 calc(c * .6) h); }
    :root.lychni > body.dies-natalis { --charta: oklch(from var(--paries, #F6F5F1) .245 calc(c * .9) h); }
    :root.lychni > body { --color-umbrae: #000; }

    :root.lychni > body.pagina-archon {
        --basis-charta: #191816; --basis-fundus: #23211E; --basis-linea: #3A3631;
        --basis-atramentum: #ECE6DA; --basis-scriptura: #CBC3B4; --basis-cinis: #9A9285; --basis-minium: #C8675F;
    }

    .lychni a { text-decoration-color: rgb(236 230 218 / .3); }
    .lychni a:hover { text-decoration-color: currentColor; }
    .lychni :is(:is(.tabella, .expositio-brevis) a:hover .nomen, .expositio-in-catalogo .nomen a:hover, .expositio-praecipua a:hover .nomen, .schedula .apparatus a, .ad-mensuram-operis) { text-decoration-color: rgb(236 230 218 / .35); }
    .lychni .interpretatio .verba { text-decoration-color: rgb(203 195 180 / .4); }
    .lychni ::selection { background-color: rgb(236 230 218 / .2); }

    .lychni :is(.tabula, .opus-praecipuum, .tabula-diei) img {
        box-shadow:
            0 2px 3px rgb(0 0 0 / .5),
            0 18px 36px -10px rgb(0 0 0 / .62),
            0 -5vh 20vh 1vh rgb(255 232 196 / .05);
    }
    .lychni :is(.locus, .imago-expositionis) img {
        box-shadow:
            0 2px 3px rgb(0 0 0 / .45),
            0 12px 24px -8px rgb(0 0 0 / .55),
            0 -20px 80px 8px rgb(255 232 196 / .05);
    }
    .lychni .locus::before { background: radial-gradient(closest-side, rgb(255 234 200 / .07), rgb(255 234 200 / 0)); }

    .lychni .lux-fenestrae { opacity: 0; }
    .lychni .autographum.fulgor .charta-epistulae::after { background: var(--charta); opacity: .74; }
    .lychni .autographum.fulgor .charta-epistulae img { filter: none; }
    .lychni :is(.paries-aulae, .tabula-in-pariete .prospectus, .expositio-praecipua .locus, .vacua-cedens) { background-color: oklch(from var(--paries, #6B665E) .215 calc(c * .8) h); }
    .lychni .vestigium { --vestigium: color-mix(in oklab, var(--charta), #FFF4E0 5%); background-color: var(--vestigium); border-top-color: rgb(0 0 0 / .3); box-shadow: 0 0 0 1px rgb(255 240 215 / .02), 0 0 26px 12px var(--vestigium), inset 0 2px 0 rgb(0 0 0 / .18); }
    .lychni .programma.vacua, .lychni .programma.vacua .particula { background-color: #22201D; }
    .lychni .programma.vacua .vestigium { background-color: #2A2824; border-top-color: rgb(255 240 215 / .06); box-shadow: 0 0 0 1px rgb(255 240 215 / .03); }
    .lychni .programma:not(.vacua) {
        --atramentum: #1C1B19; --scriptura: #2E2D2A; --cinis: #4F4B44; --linea: #D3CEC3; --fundus: #ECEAE4;
        color-scheme: light;
        box-shadow: 0 2px 3px rgb(0 0 0 / .45), 0 16px 32px -10px rgb(0 0 0 / .55), 0 -20px 80px 8px rgb(255 232 196 / .05);
    }
    .lychni .scriptio textarea { background-color: var(--fundus); }
    .lychni .scriptio textarea:hover { border-color: #5A554D; }
    .lychni :is(.mensura-operis, .mensura-operis::backdrop) { background-color: var(--charta); }
}

@media (prefers-reduced-motion: no-preference) {
    :root.lumina-mutantur > body { transition: --charta 1.8s cubic-bezier(.4, 0, .2, 1), --fundus 1.8s cubic-bezier(.4, 0, .2, 1), --linea 1.8s ease, --atramentum 1.4s ease .2s, --scriptura 1.4s ease .2s, --cinis 1.4s ease .2s, --minium 1.4s ease .2s; }
    :root.lumina-mutantur > body :is(.tabula, .locus, .opus-praecipuum, .imago-expositionis, .tabula-diei) img { transition: box-shadow 1.6s cubic-bezier(.3, 0, .2, 1) var(--mora, 0s), opacity .6s ease; }
    :root.lumina-mutantur > body .programma { transition: box-shadow 1.6s ease var(--mora, 0s); }
}

@media print {
    .lumina { display: none; }
    :is(.tabula, .locus, .opus-praecipuum, .imago-expositionis, .tabula-diei) img { box-shadow: none; }
}

img.ovalis { clip-path: ellipse(49.2% 49.4% at 50.1% 50.1%); }
