/* ORIMERA typography — shared roles, locally hosted Latin variable fonts. */
@font-face{font-family:'Source Serif 4';src:url('/assets/fonts/SourceSerif4-Roman.woff2') format('woff2');font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:'Source Serif 4';src:url('/assets/fonts/SourceSerif4-Italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('/assets/fonts/SourceSans3-Upright.woff2') format('woff2');font-weight:400 600;font-style:normal;font-display:swap}
:root{--serif:'Source Serif 4',Georgia,serif;--sans:'Source Sans 3','Segoe UI',Arial,sans-serif;font-family:var(--sans);font-size:17px;font-weight:400;line-height:1.6;font-synthesis:none}
body{font-size:18px}
button,nav,.edition,.text-link,.youtube-link,.play-track,.index-toggle,.channel-entry,.selection-link,.catalogue-filters,.collection-index,.language-controls,.copy-link{font-family:var(--sans);font-size:16px;font-weight:600;line-height:1.4;letter-spacing:normal;text-transform:none}
h1,h2,h3,.next-chapter strong{font-family:var(--serif);font-style:normal;font-weight:450;letter-spacing:-.02em;text-wrap:balance;overflow-wrap:normal}
h1{font-size:clamp(56px,5.5vw,72px);line-height:1.1}
h2,.path-heading p{font-family:var(--serif);font-size:clamp(36px,3.4vw,44px);font-weight:450;line-height:1.15;letter-spacing:-.02em}
h3,.next-chapter strong{font-size:clamp(26px,2.4vw,30px);line-height:1.2}
h1 em,h2 em,h3 em{font-style:normal;font-weight:inherit}
.cover h1{font-size:clamp(72px,6.8vw,88px);font-weight:400;line-height:1.1;display:block}
.prose p,.opening p,.world .prose p,.remains p,.human-statement p,.narrative-cover-copy,.catalogue-lyrics p{font-family:var(--serif);font-size:20px;font-weight:400;line-height:1.7;letter-spacing:normal;max-width:65ch;text-align:left}
.prose{max-width:65ch}
.chapter-intro,.essay-page .prose p:first-child{font-family:var(--serif);font-size:24px;font-weight:400;line-height:1.5;letter-spacing:normal}
.identity-caption.narrative-entry p,.catalogue-row p,.track-info p,.selection-work p,.home-album-copy p,.listening-path p,.section-heading p,.cover-bottom p,.channel-finale>p{font-family:var(--sans);font-size:18px;font-weight:400;line-height:1.6;letter-spacing:normal}
.identity-caption.narrative-entry h2{font-size:clamp(30px,2.7vw,40px);line-height:1.15}
.narrative-entry h2>span{display:block}
.identity-motto{font-family:var(--serif);font-size:clamp(25px,3vw,40px);font-weight:400;line-height:1.3;letter-spacing:normal}
.identity-motto em{font-style:italic}
.eyebrow,.edition,.small,.asset-note,.editorial-label,.chapter-art figcaption,.chapter-top,.identity-kicker,.identity-foot,.seal-label,.seal-bottom,.channel-entry small,.listening-note,.copy-status,footer,.next-chapter>span,.lyric-section-label,.lyrics-column-headings{font-family:var(--sans);font-size:14px;font-weight:400;line-height:1.6;letter-spacing:normal}
.eyebrow,.lyric-section-label,.lyrics-column-headings,.channel-entry small{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.edition{font-weight:600}
.track-number{font-family:var(--serif);font-size:30px;font-weight:400;line-height:1.2}
.brand{font-family:'Segoe UI',Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.6;letter-spacing:.25em}
.identity-hero h1{font-family:'Segoe UI',Arial,sans-serif;font-size:clamp(42px,12.8vw,220px);font-weight:400;line-height:1.15;letter-spacing:.25em}
.lyrics,.lyrics[data-reading=both]{display:block}
.lyrics .stanza{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5vw;margin-bottom:32px}
.lyrics:not([data-reading=both]) .stanza{grid-template-columns:minmax(0,1fr)}
.lyrics .stanza>div,.lyrics[data-reading=both] .stanza>div,.lyrics:not([data-reading=both]) .stanza>div{font-family:var(--serif);font-size:clamp(20px,1.7vw,22px);font-weight:400;font-style:normal;line-height:1.7;letter-spacing:normal;min-width:0}
.lyric-line{display:block;overflow-wrap:normal;word-break:normal}
.translation-notes{font-family:var(--sans);font-size:17px;line-height:1.6}
.lyrics-column-headings{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5vw}
.language-controls button,.chapter-listening .youtube-link,.chapter-listening .album-listening-link,.cover-actions .youtube-link,.cover-actions .text-link,.identity-stage .channel-entry,.identity-stage .channel-entry small,.identity-caption>.text-link,.unified-intro .text-link{font-family:var(--sans);font-size:16px;font-weight:600;line-height:1.4;letter-spacing:normal}
.identity-stage .channel-entry small{font-size:13px;font-weight:400}
.language-controls button,.index-toggle{min-height:44px}
.human-question h2{font-style:normal;line-height:1.2}
.selection-work h3{min-height:0}
@media(max-width:800px){
 body{font-size:17px}
 h1{font-size:clamp(36px,6.5vw,42px)}
 h2,.path-heading p{font-size:clamp(28px,5vw,32px)}
 h3,.next-chapter strong{font-size:clamp(24px,4vw,26px)}
 .cover h1{font-size:clamp(44px,7.5vw,52px);line-height:1.1}
 .prose p,.opening p,.world .prose p,.remains p,.human-statement p,.narrative-cover-copy,.catalogue-lyrics p{font-size:19px;line-height:1.7}
 .chapter-intro,.essay-page .prose p:first-child{font-size:21px;line-height:1.5}
 .identity-caption.narrative-entry p,.catalogue-row p,.track-info p,.selection-work p,.home-album-copy p,.listening-path p,.section-heading p,.cover-bottom p,.channel-finale>p{font-size:17px}
 .identity-caption.narrative-entry h2{font-size:30px}
 .identity-motto{font-size:26px}
 .brand{font-size:14px}
 .identity-hero h1{font-size:12.8vw}
 .eyebrow,.small,.asset-note,.editorial-label,.chapter-art figcaption,.chapter-top,.identity-kicker,.identity-foot,.seal-label,.seal-bottom,.channel-entry small,.listening-note,.copy-status,footer,.next-chapter>span,.lyric-section-label,.lyrics-column-headings{font-size:13px;letter-spacing:normal}
 .lyrics .stanza,.lyrics[data-reading=both] .stanza{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid #cbc3b6}
 .lyrics .stanza>div,.lyrics[data-reading=both] .stanza>div,.lyrics:not([data-reading=both]) .stanza>div{font-size:19px;line-height:1.7;margin-bottom:0}
 .lyrics .stanza .translation{padding-left:14px;border-left:2px solid #b99e76}
 .lyrics-column-headings{display:none}
 .lyrics-section>.section-heading{grid-template-columns:minmax(0,1fr);align-items:start}
 .selection-work{grid-template-columns:minmax(0,1fr)}
 .selection-work p{max-width:65ch}
 .chapter-listening .youtube-link,.cover-actions .youtube-link{white-space:normal}
 .chapter-top{flex-wrap:wrap}
}
