:root{--sidebar-width:288px;--toolbar-height:68px;--reading-toolbar-height:47px;--document-title-inset:53px;--prototype-ink:#252a25;--prototype-line:#deded4}
html,body.sidebar-prototype{height:100%;overflow:hidden;scroll-behavior:auto}
body.sidebar-prototype{margin:0;background:#f5f3ec;color:var(--prototype-ink);font-family:Manrope,sans-serif}
button{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
.prototype-sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);display:flex;flex-direction:column;z-index:30;background:#171d19;color:#eceee2;border-right:1px solid #333c32}
.sidebar-identity{height:calc(var(--toolbar-height) + var(--reading-toolbar-height));padding:18px 24px;border-bottom:1px solid #ffffff12;flex:none;display:flex;align-items:center}
.sidebar-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.sidebar-brand img{width:56px;height:56px;flex:none;object-fit:cover;border-radius:50%;filter:grayscale(1)}
.sidebar-brand strong{display:block;font-size:12px;letter-spacing:.05em;white-space:nowrap;font-weight:700}
.sidebar-brand small{display:block;color:#859381;font-size:7px;letter-spacing:.14em;margin-top:5px;white-space:nowrap}
.sidebar-document{padding:25px 27px 0;flex:none}
.sidebar-document>.eyebrow{display:block;font-size:8px;letter-spacing:.2em;color:#a4ac98}
.sidebar-document h1,.preview-pane .intro-copy h2{font:700 35px/1.08 Oswald,sans-serif;letter-spacing:.015em}
.sidebar-document h1{margin:calc(var(--document-title-inset) - 37px) 0 18px;color:#e8ebdc}
.document-rule{display:block;width:32px;height:2px;background:#b26d55;margin-bottom:15px}
.sidebar-navigation{padding:0 13px 12px;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#44503e transparent;overscroll-behavior:contain;flex:1}
.sidebar-navigation a{display:grid;grid-template-columns:26px minmax(0,1fr) 30px;gap:9px;align-items:center;min-height:35px;padding:7px 12px;margin:2px 0;color:#c0c6b8;text-decoration:none;font-size:11px;font-weight:400;line-height:1.45;border-left:2px solid transparent}
.sidebar-navigation a:hover{background:#ffffff07;color:#fff}
.sidebar-navigation a[aria-current="page"]{background:#d5dfbb11;border-left-color:#bb8061;color:#f0f1e7}
.nav-number{font:400 11px/1 Manrope,sans-serif;color:#788572;letter-spacing:.04em}
.sidebar-navigation a[aria-current="page"] .nav-number{color:#dcb896}
.nav-active-mark{opacity:0;color:#d2b18a;display:flex;align-items:center;justify-content:flex-end}
.nav-bullet{display:block;flex:none;width:24px;height:8px}
.sidebar-navigation a[aria-current="page"] .nav-active-mark{opacity:1}
.sidebar-foundation{padding-bottom:10px;border-bottom:1px solid #ffffff12}
.nav-group-label{font:400 8px/1.5 Manrope,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#74816d;padding:13px 14px 4px;margin:0}
.sidebar-footer{flex:none;margin:0 26px;padding:14px 0 19px;border-top:1px solid #ffffff16}
.sidebar-footer-line{display:flex;gap:8px;align-items:center;font-size:8px;letter-spacing:.16em;color:#b2b9a6}
.status-dot{width:5px;height:5px;background:#a8b490;border-radius:50%;display:inline-block}
.sidebar-footer p{font-size:9px;line-height:1.7;color:#75816e;margin:7px 0 0}
.prototype-workspace{position:fixed;inset:0 0 0 var(--sidebar-width);display:flex;flex-direction:column;min-width:0}
.prototype-toolbar{height:var(--toolbar-height);flex:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 38px;background:#f6f4ed;border-bottom:1px solid var(--prototype-line)}
.toolbar-location{display:flex;align-items:center;gap:13px;font-size:10px;min-width:0;white-space:nowrap}
.toolbar-category{font-weight:700;color:#41483b;flex:none}
.toolbar-divider{color:#b6baab}
#current-section-label{color:#6f7767;overflow:hidden;text-overflow:ellipsis}
.toolbar-actions{display:flex;align-items:center;gap:20px;flex:none}
.language-switch{display:flex;align-items:center;gap:4px;flex:none;font-size:10px;font-weight:700;letter-spacing:.08em}
.language-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:30px;width:30px;min-height:36px;height:36px;line-height:1;color:#929987;position:relative}
.language-switch a:hover{color:#7d5142}
.language-switch a[aria-current="page"]{color:#343d2e}
.language-switch a[aria-current="page"]:after{content:'';position:absolute;bottom:5px;left:7px;right:7px;height:2px;background:#b26d55}
.theme-switch>span,.language-switch>span{display:inline-flex;align-items:center;justify-content:center;width:6px;flex:none;font:400 10px/1 Manrope,sans-serif;letter-spacing:0;color:#c3c7b8}
.theme-switch{display:flex;align-items:center;gap:4px;flex:none}
.theme-switch button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:36px;padding:0;position:relative;border:0;background:none;color:#6f7767;cursor:pointer}
.theme-switch svg{display:block;flex:none}
.theme-switch button:hover{color:#7d5142}
.theme-switch button[aria-pressed="true"]{color:#343d2e}
.theme-switch button[aria-pressed="true"]:after{content:'';position:absolute;bottom:5px;left:7px;right:7px;height:2px;background:#b26d55}
.theme-preview-note{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sidebar-toggle{flex:none}
.sidebar-toggle svg{display:block;flex:none}
.prototype-badge{font-size:7px;letter-spacing:.15em;border:1px solid #d5d8c8;padding:5px 7px;color:#6c755d}
.compare-link{font-size:9px;text-decoration:none;color:#7d5142;white-space:nowrap}
.reading-toolbar{height:var(--reading-toolbar-height);flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 38px;background:#eeeee5;border-bottom:1px solid #deded3}
#section-position{font:700 8px/1 Manrope,sans-serif;letter-spacing:.18em;color:#69735b}
.chapter-controls{display:flex;align-items:center;gap:13px}
.chapter-controls button{font-size:10px;border:0;padding:7px 0;background:transparent;color:#626b57;cursor:pointer;display:flex;gap:12px;align-items:center}
.chapter-controls button:hover{color:#963e35}
.chapter-controls button:disabled{opacity:.35;cursor:default}
.control-divider{height:12px;width:1px;background:#cbd0be}
.preview-pane{min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-color:#9ea48d #f0efe7;scrollbar-width:thin;flex:1;container-type:inline-size;background:#faf9f4}
.preview-pane>.reader-nav,.preview-pane>#contents{display:none!important}
.preview-pane:not([data-ready])>section:not(#manifesto),.preview-pane>section[hidden]{display:none!important}
.preview-pane .chapter{border:0;padding:0 0 56px;background:#faf9f4;color:#252a25;min-height:100%}
.preview-pane .chapter .image-heading{min-height:278px;align-items:center}
.preview-pane .chapter .image-heading-inner{--chapter-heading-size:clamp(30px,4.5cqw,53px);max-width:100%;padding:55px 55px 60px;display:grid;grid-template-columns:max-content minmax(0,1fr);gap:24px;align-items:start}
.preview-pane .chapter .image-heading-inner>div{min-width:0}
.preview-pane .chapter .image-heading .chapter-number,.preview-pane .chapter .image-heading h2{font:700 var(--chapter-heading-size)/1.14 var(--display);letter-spacing:.005em;margin:0;transform:none}
.preview-pane .chapter .image-heading .chapter-number{white-space:nowrap}
.preview-pane .chapter .image-heading h2{max-width:none;width:100%;text-wrap:wrap;overflow-wrap:anywhere}
/* Desktop chapter numbers and first title lines share the sidebar title's top inset. */
@media(min-width:901px){.preview-pane .chapter .image-heading{align-items:flex-start}.preview-pane .chapter .image-heading-inner{margin:0 auto;padding-top:var(--document-title-inset)}}
.preview-pane .chapter .image-heading-shade{background:linear-gradient(90deg,#101713de,#10171372 70%,#10171340),linear-gradient(0deg,#10171375,transparent 80%)}
.preview-pane .chapter .image-heading>img,.preview-pane .hero-photo,.preview-pane .manifesto-victory>img,.preview-pane .principle-section>img{object-position:var(--image-position,50% 50%)}
.preview-pane .image-credit{font-size:6px;letter-spacing:.12em;right:25px;bottom:17px}
.preview-pane .chapter .page-grid{display:block;width:100%;max-width:870px;margin:0 auto;padding:38px 55px 0}
.preview-pane .chapter-marker{display:none!important}
.preview-pane .reading-column{width:100%;max-width:870px;margin:0 auto;padding:38px 55px 0}
.preview-pane .chapter-copy{min-width:0}
.preview-pane .chapter-lead,.preview-pane .reading-column>p:first-child{font-size:17px;line-height:1.85;margin-bottom:32px}
.preview-pane .chapter h3{font-size:28px;line-height:1.3;margin-top:30px;margin-bottom:24px}
.preview-pane .chapter p,.preview-pane .chapter li{font-size:16px;line-height:1.8}
.preview-pane .chapter-copy>h3:first-child{margin-top:0}
.preview-pane .chapter-copy>:last-child{margin-bottom:0}
.preview-pane #chapter-2 .status-path>li:last-child{border-bottom:0}
/* Oswald: match digits' cap height to the heading's lowercase body (578/810).
   With 1.3 heading line height, first-line baseline is 1.102em from its top;
   the counter's 1.0 line box baseline is .952em. Keep existing text layout. */
.preview-pane .editorial-goals>li{--inline-title-size:25px;--inline-title-offset:30px;--inline-counter-padding:0px}
.preview-pane .match-phase{--inline-title-size:28px;--inline-title-offset:0px;--inline-counter-padding:2px}
.preview-pane .editorial-goals>li::before,.preview-pane .match-phase>.phase-number{--inline-counter-size:calc(var(--inline-title-size) * .713580247);font-size:var(--inline-counter-size);line-height:1;top:calc(var(--inline-title-offset) + var(--inline-title-size) * 1.102 - var(--inline-counter-size) * .952 - var(--inline-counter-padding))}
@media(max-width:760px){.preview-pane .editorial-goals>li{--inline-title-size:24px;--inline-title-offset:26px}}
@media(max-width:520px){.preview-pane .match-phase{--inline-title-size:26px}}
.preview-pane .principle-section{margin-top:45px}
.preview-pane .principle-inner{padding:55px;max-width:870px}
.preview-pane .principle-inner>h3::before{content:none}
.preview-pane .principle-inner blockquote p{font-size:26px}
.preview-pane .motto{padding-top:24px}
.preview-pane .manifesto{--manifesto-gutter:55px;container-type:inline-size;padding:48px 55px;background:#faf9f4}
.preview-pane .manifesto-title{margin-bottom:34px;padding-bottom:30px}
.preview-pane .manifesto-title h2{font-size:45px}
.preview-pane .manifesto-mission{grid-template-columns:minmax(0,1fr);gap:36px;margin-bottom:40px}
.preview-pane .manifesto-mission p{font-size:16px;line-height:1.8}
.preview-pane .manifesto-victory{--banner-width:calc(100cqw + var(--manifesto-gutter)*2);position:relative;isolation:isolate;display:flex;align-items:center;width:var(--banner-width);min-height:278px;margin:0 0 44px calc((100% - var(--banner-width))/2);background:#101713;color:#f0f0e5}
.preview-pane .manifesto-victory>img{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:center 44%}
.preview-pane .manifesto-victory-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#101713e6,#101713a3 68%,#10171373),linear-gradient(0deg,#10171375,transparent 75%)}
.preview-pane .manifesto-victory-inner{width:calc(100% - var(--manifesto-gutter)*2);max-width:1120px;margin:0 auto;padding:52px 0 60px}
.preview-pane .manifesto-victory .manifesto-thesis{font:700 clamp(28px,3.8cqw,44px)/1.35 var(--display);color:inherit;border:0;padding:0;margin:0;max-width:850px;text-wrap:balance}
.preview-pane .manifesto-victory .image-credit{right:var(--manifesto-gutter);bottom:17px;color:#d2d5c8}
.preview-pane .manifesto h3{font-size:27px}
.preview-pane .manifesto-principles>ol{column-gap:35px}
.preview-pane .manifesto-principles h4{font-size:15px}
.preview-pane .manifesto-principles p{font-size:14px}
.preview-pane .introduction{padding:53px 55px 60px}
.preview-pane .introduction .page-grid{display:block;width:100%;max-width:760px;margin:0 auto;padding:0}
.preview-pane .intro-copy{width:100%;min-width:0}
.preview-pane .intro-marker{display:none}
.preview-pane .hero{min-height:100%}
.preview-pane .hero-inner{padding:70px 55px;min-height:650px;max-width:100%;grid-template-columns:.8fr 1.2fr}
.preview-pane .hero-content{min-width:0}
.preview-pane .hero h1{font-size:clamp(44px,6.4cqw,96px);line-height:1.08;letter-spacing:-.025em;margin:0 0 28px;text-wrap:balance}
.preview-pane .hero-description{font-size:16px}
.preview-pane .hero-reading-links{display:flex;flex-direction:column;align-items:flex-start;gap:0;margin-top:24px}
.preview-pane .hero-reading-links .read-link{width:100%;max-width:280px;min-width:0;margin-top:0;gap:24px;padding:16px 0 13px}
.preview-pane h1:focus,.preview-pane h2:focus{outline:none}
.sidebar-prototype :focus-visible{outline:2px solid #bc8064;outline-offset:4px}
.sidebar-toggle,.sidebar-close{display:none}
.drawer-scrim[hidden]{display:none}
@media(max-width:900px){.preview-pane .manifesto{--manifesto-gutter:38px}}
@media(max-width:520px){.preview-pane .manifesto{--manifesto-gutter:25px}.preview-pane .manifesto-victory{min-height:260px}.preview-pane .manifesto-victory-inner{padding:40px 0 48px}}
@media(max-width:900px){:root{--toolbar-height:62px}}
@media(max-width:520px){:root{--reading-toolbar-height:43px}}
@media(min-height:880px){.sidebar-navigation a{min-height:39px;font-size:12px}.sidebar-document{padding-bottom:6px}}
@media(max-width:1100px) and (min-width:901px){:root{--sidebar-width:262px}.prototype-toolbar,.reading-toolbar{padding-left:28px;padding-right:28px}.preview-pane .chapter .image-heading-inner{padding-left:38px;padding-right:38px}.preview-pane .chapter .page-grid,.preview-pane .reading-column{padding-left:38px;padding-right:38px}.prototype-badge{display:none}}
@media(max-width:900px){:root{--sidebar-width:288px}.prototype-workspace{left:0}.prototype-sidebar{transform:translateX(-100%);visibility:hidden}.sidebar-prototype[data-drawer="open"] .prototype-sidebar{transform:none;visibility:visible;box-shadow:16px 0 65px #0005}.prototype-toolbar{height:62px;padding:0 23px}.toolbar-location{gap:10px}.toolbar-category{display:none}.toolbar-divider{display:none}.prototype-badge{display:none}.reading-toolbar{padding:0 23px}.sidebar-toggle,.sidebar-close{display:block;border:0;background:none;cursor:pointer}.sidebar-toggle{font-size:21px;color:#4d5843;padding:3px 5px 4px 0;margin-right:5px}.sidebar-close{color:#aab49c;font-size:25px;padding:0 0 0 14px;line-height:1}.sidebar-identity{justify-content:space-between}.drawer-scrim{position:fixed;inset:0;border:0;border-radius:0;background:#111b14a8;z-index:25}.preview-pane .chapter .image-heading-inner{padding:46px 38px 55px}.preview-pane .chapter .page-grid,.preview-pane .reading-column{padding-left:38px;padding-right:38px}.preview-pane .manifesto{padding:38px}.preview-pane .hero-inner{padding:150px 38px 70px;min-height:620px}.preview-pane .hero h1{font-size:clamp(48px,9.5cqw,86px)}.sidebar-navigation a{font-size:12px;min-height:37px}}
@media(max-width:520px){.toolbar-actions{gap:8px}.compare-link{font-size:8px}#current-section-label{font-size:9px;max-width:170px}.prototype-toolbar{gap:10px}.reading-toolbar{height:43px}.chapter-controls button{font-size:10px;gap:7px}.preview-pane .chapter .image-heading{min-height:265px}.preview-pane .chapter .image-heading-inner{padding:34px 25px 46px;gap:16px}.preview-pane .image-credit{font-size:5px;right:20px}.preview-pane .chapter .page-grid,.preview-pane .reading-column{padding:30px 25px 0}.preview-pane .chapter-lead,.preview-pane .reading-column>p:first-child{font-size:16px;line-height:1.8}.preview-pane .chapter h3{font-size:26px}.preview-pane .chapter p,.preview-pane .chapter li{font-size:15px}.preview-pane .manifesto{padding:32px 25px}.preview-pane .manifesto-title h2{font-size:34px}.preview-pane .manifesto-mission,.preview-pane .manifesto-principles>ol{display:block}.preview-pane .manifesto-mission>div+div{margin-top:32px}.preview-pane .introduction{padding:53px 25px 35px}.preview-pane .principle-inner{padding:40px 25px}.preview-pane .principle-inner blockquote p{font-size:23px}.preview-pane .hero-inner{padding-left:25px;padding-right:25px}.preview-pane .hero h1{font-size:clamp(40px,12cqw,62px)}}
/* Keep the number on the same centerline for single- and multi-line mobile titles. */
@media(max-width:900px){.preview-pane .chapter .image-heading-inner{align-items:center;padding:46px 38px}}
@media(max-width:520px){.preview-pane .chapter .image-heading-inner{padding:34px 25px}}
/* One shared mobile row, independent of platform-specific text-glyph metrics. */
@media(max-width:900px){
  .sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;width:30px;height:36px;padding:0;margin:0;line-height:1}
  .toolbar-location{height:36px;flex:1}
  .toolbar-actions{height:36px}
  #current-section-label{height:36px;line-height:36px}
  .toolbar-actions .compare-link{display:none}
}

/* Art direction uses source-specific focal points, independently of text layout. */
.preview-pane .manifesto-victory>img{object-position:var(--image-position,50% 50%)}
@media(max-width:900px){
  .preview-pane .chapter .image-heading>img,.preview-pane .hero-photo,.preview-pane .manifesto-victory>img,.preview-pane .principle-section>img{object-position:var(--image-position-mobile,50% 50%)}
}

/* Reserve overflow below the existing mobile alignment area, never above its number.
   Keep this after responsive banner heights so the extra bottom room stays additive. */
@media(max-width:900px){.preview-pane .chapter .image-heading h2{transform:translateY(var(--heading-line-offset,0px))}.preview-pane .chapter .image-heading{--heading-base:278px;min-height:calc(var(--heading-base) + var(--heading-room,0px));padding-bottom:var(--heading-room,0px)}}
@media(max-width:520px){.preview-pane .chapter .image-heading{--heading-base:265px}}
@media(max-width:900px){.preview-pane{touch-action:pan-y pinch-zoom}}

/* Site-wide night theme. Day styles and photo-heading colors remain unchanged. */
html[data-theme="night"] body.sidebar-prototype{background:#171717}
html[data-theme="night"] .prototype-toolbar{background:#1b1b1b;border-color:#383834}
html[data-theme="night"] .reading-toolbar{background:#222222;border-color:#383834}
html[data-theme="night"] :is(.toolbar-category,#current-section-label,#section-position,.chapter-controls button,.sidebar-toggle){color:#f4f1e5}
html[data-theme="night"] :is(.toolbar-divider,.theme-switch>span,.language-switch>span){color:#d7d6bf}
html[data-theme="night"] :is(.language-switch a,.theme-switch button){color:#e2dfcb}
html[data-theme="night"] :is(.language-switch a[aria-current="page"],.theme-switch button[aria-pressed="true"]){color:#fffbed}
html[data-theme="night"] :is(.language-switch a:hover,.theme-switch button:hover,.chapter-controls button:hover,.compare-link){color:#e2be98}
html[data-theme="night"] :is(.theme-switch button[aria-pressed="true"],.language-switch a[aria-current="page"]):after{background:#dcb896}
html[data-theme="night"] .control-divider{background:#605d52}
html[data-theme="night"] .preview-pane{background:#171717;scrollbar-color:#706c5f #171717}
html[data-theme="night"] .preview-pane :is(.chapter,.manifesto,.introduction){--line:#383834;background:#171717;color:#f4f1e5}
html[data-theme="night"] .preview-pane :is(.intro-copy p:last-child,.manifesto-principles p,.values-list strong,.role-block>p strong,.motto h3){color:#f4f1e5}
html[data-theme="night"] .preview-pane :is(.document-label,.phase-number),
html[data-theme="night"] .preview-pane :is(.status-path,.participation-list,.process-list,.editorial-goals)>li::before,
html[data-theme="night"] .preview-pane .manifesto-principles li::before,
html[data-theme="night"] .preview-pane .status-path>li:not(:last-child)::after{color:#d2b18a}
html[data-theme="night"] .preview-pane :is(.norm-list,.values-list)>li::before{background:#c0bc8e}
html[data-theme="night"] .preview-pane .status-path>li:not(:last-child)::after,
html[data-theme="night"] .preview-pane .phase-number{background:#171717}
html[data-theme="night"] .preview-pane :is(.sanction-note,.authority-note){background:#222222;color:#f4f1e5}
html[data-theme="night"] .preview-pane :is(.status-path,.status-path>li,.status-secondary>li,.decision-block,.severity-heading){border-color:#383834}
html[data-theme="night"] .skip-link{background:#222222;color:#f4f1e5}
/* Neutral 30% shade affects only photo layers, never the overlaid text. */
html[data-theme="night"] .preview-pane :is(.image-heading-shade,.hero-shade,.manifesto-victory-shade),
html[data-theme="night"] .preview-pane .principle-section::after{background:rgb(0 0 0 / 30%)}
html[data-theme="night"] .preview-pane .principle-section>img{opacity:1;filter:none}
html[data-theme="night"] .preview-pane :is(.image-heading-inner,.hero-content,.manifesto-victory-inner,.principle-inner){text-shadow:0 2px 4px #000b}

/* Selected homepage: mirror only the photo, with neutral shading in BOTH themes. */
.preview-pane #overview{background:#171717;overflow:hidden}
.preview-pane #overview .hero-photo[data-mirror="horizontal"]{transform:scaleX(-1)}
.preview-pane #overview .hero-content{grid-column:1;padding-left:0;max-width:520px;text-shadow:0 2px 4px #000b}
@media(min-width:901px){.preview-pane #overview h1{width:max-content;max-width:calc(100cqw - 110px)}}
.preview-pane #overview .hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;padding-top:var(--document-title-inset)}
.preview-pane #overview .hero-shade,
html[data-theme="night"] .preview-pane #overview .hero-shade{background:linear-gradient(90deg,rgb(0 0 0 / 68%),rgb(0 0 0 / 52%) 48%,rgb(0 0 0 / 40%))}
/* Keep the title on the shared top line even when the sidebar becomes a drawer. */
@media(max-width:900px){
  .preview-pane #overview .hero-inner{display:block;min-height:620px;padding-top:var(--document-title-inset);padding-bottom:50px}
  .preview-pane #overview .hero-shade,
  html[data-theme="night"] .preview-pane #overview .hero-shade{background:linear-gradient(0deg,rgb(0 0 0 / 68%),rgb(0 0 0 / 55%) 60%,rgb(0 0 0 / 45%))}
  .preview-pane #overview .hero-content{max-width:620px}
}

/* One-shot reading-completion cue. Pseudo-elements never change toolbar geometry. */
@property --fd-next-cue-angle{syntax:'<angle>';inherits:false;initial-value:0deg}
.chapter-controls button[data-step="1"]{position:relative;isolation:isolate;--cue-surface:#eeeee5;--cue-fire:#a66525;--cue-hot:#f1bd70;--cue-ember:#a3532c;--cue-line:#c4baa5;--cue-glow:.25}
html[data-theme="night"] .chapter-controls button[data-step="1"]{--cue-surface:#222222;--cue-fire:#c88e50;--cue-hot:#edc58a;--cue-ember:#8e4d2b;--cue-line:#62503c;--cue-glow:.2}
.chapter-controls button .next-arrow{display:inline-block;transition:color .8s ease}
/* Visible rim is 70% of its former height; the click target stays unchanged. */
.chapter-controls button[data-reading-cue]:not(:disabled)::before{content:'';position:absolute;inset:calc(15% - 2.1px) -8px;z-index:-1;pointer-events:none;border:1px solid transparent;border-radius:4px;background:linear-gradient(var(--cue-surface),var(--cue-surface)) padding-box,linear-gradient(var(--cue-fire),var(--cue-fire)) border-box}
.chapter-controls button[data-reading-cue]:not(:disabled)::after{content:'';position:absolute;inset:calc(15% - 2.8px) -9px;z-index:-2;pointer-events:none;border:1px solid var(--cue-fire);border-radius:5px;opacity:var(--cue-glow);filter:blur(4px)}
.chapter-controls button[data-reading-cue]:not(:disabled) .next-arrow{color:var(--cue-fire)}
.chapter-controls button[data-reading-cue="playing"]:not(:disabled)::before{background:linear-gradient(var(--cue-surface),var(--cue-surface)) padding-box,conic-gradient(from var(--fd-next-cue-angle),var(--cue-ember),var(--cue-fire) 36deg,var(--cue-hot) 58deg,var(--cue-fire) 76deg,var(--cue-ember) 110deg,var(--cue-line) 180deg,var(--cue-ember)) border-box;animation:fd-next-cue-orbit 2.8s linear 1 both}
.chapter-controls button[data-reading-cue="playing"]:not(:disabled)::after{animation:fd-next-cue-glow 2.8s ease-in-out 1}
.chapter-controls button[data-reading-cue="playing"]:not(:disabled) .next-arrow{animation:fd-next-cue-arrow 2.8s ease-out 1}
@keyframes fd-next-cue-orbit{from{--fd-next-cue-angle:0deg;opacity:0}30%{opacity:1}to{--fd-next-cue-angle:360deg;opacity:1}}
@keyframes fd-next-cue-glow{0%{opacity:0}40%{opacity:.6;box-shadow:0 0 10px 1px var(--cue-ember)}100%{opacity:var(--cue-glow)}}
@keyframes fd-next-cue-arrow{0%,100%{transform:translateX(0)}40%{transform:translateX(3px)}70%{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.chapter-controls button .next-arrow{transition:none}.chapter-controls button[data-reading-cue]::before,.chapter-controls button[data-reading-cue]::after,.chapter-controls button[data-reading-cue] .next-arrow{animation:none;transition:none}}

/* Wide reading layout: keep the shared heading coordinates and grow photos downward.
   1440px is the lower crop reference; 1920px reveals 47.5% more banner height. */
@media(min-width:1440px){
  .preview-pane{--wide-banner-height:clamp(278px,calc(27.5vw - 118px),410px)}
  .preview-pane .chapter .image-heading,.preview-pane .manifesto-victory{min-height:var(--wide-banner-height)}
  .preview-pane #chapter-4 .image-heading>img{object-position:50% 30%}
  .preview-pane .chapter .page-grid,.preview-pane .reading-column,
  .preview-pane .introduction .page-grid,.preview-pane .principle-inner{margin-left:0;margin-right:0}
  .preview-pane .manifesto-inner{width:100%;margin-left:0;margin-right:0}
  .preview-pane .manifesto-mission{max-width:760px}
  .preview-pane .manifesto-victory{margin-left:calc(-1 * var(--manifesto-gutter))}
  .preview-pane .manifesto-victory-inner{margin-left:var(--manifesto-gutter);margin-right:var(--manifesto-gutter)}
}
/* Keep the source reading order intact: 3.1 on the left, 3.2 on the right.
   Explicit rows align both headings and lists; narrower screens retain normal flow. */
@media(min-width:1600px){
  .preview-pane #chapter-3 .page-grid{max-width:1686px}
  .preview-pane #chapter-3 .chapter-copy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px;align-items:start}
  .preview-pane #chapter-3 .chapter-lead{grid-area:1 / 1 / 2 / -1;max-width:760px;margin:0 0 32px}
  .preview-pane #chapter-3 [data-source-block="37"]{grid-area:2 / 1}
  .preview-pane #chapter-3 [data-source-block="45"]{grid-area:2 / 2}
  .preview-pane #chapter-3 [data-source-block="38"]{grid-area:3 / 1}
  .preview-pane #chapter-3 [data-source-block="46"]{grid-area:3 / 2}
  .preview-pane #chapter-3 .norm-list:first-of-type{grid-area:4 / 1}
  .preview-pane #chapter-3 .norm-list:last-of-type{grid-area:4 / 2}
  .preview-pane #chapter-3 .chapter-copy>h3{margin:0 0 24px}
  .preview-pane #chapter-3 .chapter-copy>p:not(.chapter-lead){margin:0 0 26px}
  .preview-pane #chapter-3 .norm-list{margin:0}
}

/* Desktop cap line: preserve the sidebar's painted position, not just its box.
   Bundled Oswald at 35px/1.08 has 6.37px above its cap edge (UPM 1000,
   ascent 1193, descent 289, cap height 810). Mobile rules stay untouched. */
@media(min-width:901px){
  @supports(text-box-trim:trim-start){
    :root{--desktop-heading-cap-inset:calc(var(--document-title-inset) + 6.37px)}
    .preview-pane .chapter .image-heading-inner,
    .preview-pane #overview .hero-inner,
    .preview-pane .manifesto,
    .preview-pane .introduction{padding-top:var(--desktop-heading-cap-inset)}
    .preview-pane .chapter .image-heading .chapter-number,
    .preview-pane .chapter .image-heading h2,
    .preview-pane #overview h1,
    .preview-pane .manifesto-title h2,
    .preview-pane .intro-copy h2{text-box-trim:trim-start;text-box-edge:cap alphabetic}
    .preview-pane .chapter:is(.chapter-7,.chapter-8,.chapter-12) .image-heading h2{transform:none}
  }
}
