/*
Theme Name: Griot Booklet
Theme URI: https://griot.musiata.com/
Author: MUSIATA
Description: The dedicated editorial and cinematic album booklet for MUSIATA — THE GRIOT. Requires Griot Core.
Version: 0.6.0
Requires at least: 6.9
Requires PHP: 8.0
Text Domain: griot-booklet
*/
:root{--paper:#eee4d1;--ink:#142e27;--copper:#a16c45;--copper-text:#824e31;--player-bg:#142e27;--player-accent:#a16c45;--sapphire:#244f7d;--font-scale:100%;--page-width:1240px;--player-height:91px;--hero-image-position:50% 50%;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,Segoe UI,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:170px;font-size:var(--font-scale)}
body{background:var(--paper);color:var(--ink);margin:0;font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.045;background-image:url('data:image/svg+xml,%3Csvg viewBox="0 0 180 180" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="n"%3E%3CfeTurbulence type="fractalNoise" baseFrequency=".73" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="100%25" height="100%25" filter="url(%23n)" opacity=".3"/%3E%3C/svg%3E')}
a{color:inherit;text-decoration-color:var(--copper);text-underline-offset:.23em}a:hover{color:var(--copper)}img{display:block;max-width:100%;height:auto}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--sapphire);outline-offset:4px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{clip:auto;position:static!important;width:auto;height:auto;margin:0}
.griot-skip{position:absolute;top:-100px;left:12px;padding:8px 15px;background:var(--ink);color:var(--paper);z-index:1000}.griot-skip:focus{top:10px}
.site-shell{max-width:var(--page-width);margin:0 auto;padding:0 clamp(1rem,3.5vw,3.5rem)}
.site-header{position:relative;z-index:6;background:var(--ink);color:var(--paper)}.masthead{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid rgba(238,228,209,.2)}
.wordmark{font-family:var(--serif);font-size:clamp(1.4rem,2.6vw,2rem);font-weight:500;letter-spacing:.26em;line-height:1;text-decoration:none;white-space:nowrap}.wordmark span{display:block;font-family:var(--sans);font-size:.54rem;font-weight:400;letter-spacing:.41em;text-transform:uppercase;opacity:.75;margin-top:.75em}
.site-nav{display:flex;gap:clamp(.6rem,2.5vw,2.2rem);align-items:center;flex-wrap:wrap}.site-nav a{font-size:.72rem;text-decoration:none;text-transform:uppercase;letter-spacing:.18em;color:var(--paper)}.site-nav a:hover,.site-nav a[aria-current=page]{color:#d5ae87}.site-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:8px}
.griot-player{min-height:var(--player-height);display:grid;grid-template-columns:minmax(160px,1.2fr) auto minmax(150px,1.5fr) 100px;align-items:center;gap:clamp(.5rem,1.8vw,1.6rem);max-width:var(--page-width);margin:auto;padding:1rem clamp(1rem,3.5vw,3.5rem);border-bottom:1px solid rgba(238,228,209,.18);background:var(--player-bg)}
.griot-player__identity{min-width:0}.griot-player__label{display:block;font-size:.53rem;letter-spacing:.26em;color:#d8ab87;margin-bottom:4px}.griot-player__title{font-family:var(--serif);font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;text-decoration:none}.griot-player__controls{display:flex;gap:.5rem;align-items:center}.griot-player__controls button{border:1px solid rgba(238,228,209,.23);background:transparent;color:var(--paper);border-radius:100%;width:38px;height:38px;font-size:1rem}.griot-player__controls #griot-toggle{background:var(--player-accent);border-color:var(--player-accent);color:#fff;width:43px;height:43px}.griot-player__timeline{display:flex;align-items:center;gap:.7rem;font-size:.68rem;font-variant-numeric:tabular-nums}.griot-player__timeline input{flex:1;min-width:50px}.griot-player__volume{display:flex;gap:.4rem;align-items:center}.griot-player__volume input{width:70px}.griot-player input[type=range]{accent-color:#d1a077}
main{min-height:65vh}main:focus{outline:none}.eyebrow{color:var(--copper-text);text-transform:uppercase;letter-spacing:.35em;font-size:.66rem;font-weight:700}.display-title{font-family:var(--serif);font-size:clamp(3.7rem,10vw,10rem);letter-spacing:-.055em;line-height:.86;font-weight:400;margin:.2em 0}.subheading{font-family:var(--serif);font-weight:400;font-size:clamp(1.25rem,2.9vw,2.3rem);line-height:1.4;max-width:760px}.rule{height:1px;background:currentColor;opacity:.2;border:0;margin:3rem 0}
.cover-intro{min-height:600px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4rem;padding-top:5rem;padding-bottom:6rem}.cover-frame{aspect-ratio:1/1;position:relative;background:linear-gradient(120deg,#1f3b31,#496858 45%,#a57a5b);box-shadow:22px 28px 0 -11px rgba(22,48,39,.14),0 25px 70px rgba(25,40,34,.2);overflow:hidden}.cover-frame img{width:100%;height:100%;object-fit:cover}.cover-frame:not(:has(img))::after{content:'THE GRIOT';position:absolute;inset:0;display:grid;place-items:center;font:clamp(2rem,5vw,5rem)/1 var(--serif);color:#ebdfc8;letter-spacing:.13em;text-align:center;padding:2rem}.cover-frame::before{content:"";position:absolute;z-index:1;inset:12px;border:1px solid rgba(245,233,211,.35);pointer-events:none}
.lead{font-family:var(--serif);font-size:1.26rem;max-width:57ch}.button-link{display:inline-flex;align-items:center;gap:1.3rem;background:var(--ink);color:var(--paper);padding:1rem 1.5rem;text-transform:uppercase;font-size:.7rem;letter-spacing:.18em;text-decoration:none;border:1px solid var(--ink);margin-top:1.4rem}.button-link:hover{background:transparent;color:var(--ink)}
.section-kicker{font-size:.66rem;text-transform:uppercase;letter-spacing:.3em;color:var(--copper);margin:0 0 1rem}.section-heading{font:400 clamp(2.5rem,5vw,5rem)/1.1 var(--serif);letter-spacing:-.035em;margin:0 0 2rem}.album-index{padding-top:5rem;padding-bottom:6rem}.album-index ol{padding:0;list-style:none;margin:0;border-top:1px solid rgba(20,46,39,.25)}.index-track{display:grid;grid-template-columns:65px 1fr auto;align-items:center;gap:1rem;padding:1.45rem .2rem;border-bottom:1px solid rgba(20,46,39,.18)}.index-track__number{color:var(--copper-text);font-size:.7rem;letter-spacing:.22em}.index-track a{text-decoration:none;font-family:var(--serif);font-size:clamp(1.2rem,2.6vw,2.1rem);line-height:1.2}.index-track button,.play-artifact{background:none;border:1px solid var(--copper);border-radius:50px;padding:.5rem .85rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink)}.index-track button:hover,.play-artifact:hover{background:var(--ink);color:var(--paper)}
.chapter{padding-top:4rem;padding-bottom:7rem}.chapter__number{font-size:.7rem;letter-spacing:.3em;color:var(--copper-text);text-transform:uppercase}.chapter__title{font:400 clamp(3.3rem,9vw,8.5rem)/.98 var(--serif);letter-spacing:-.055em;max-width:1040px;margin:.22em 0 .28em}.chapter__hero{width:100%;max-height:72vh;aspect-ratio:16/10;object-fit:cover;object-position:var(--hero-image-position);margin:3.2rem 0 1rem}.chapter__caption{font-size:.7rem;letter-spacing:.12em;opacity:.75;text-align:right;text-transform:uppercase}.chapter__quote{font:italic 400 clamp(1.4rem,3vw,2.3rem)/1.45 var(--serif);border-left:2px solid var(--copper);padding-left:1.5rem;max-width:750px;margin:3rem 0 4rem}.chapter__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);gap:clamp(2rem,6vw,7rem);margin-top:3rem}.chapter__notes{font-family:var(--serif);font-size:1.12rem;line-height:1.85;overflow-wrap:anywhere}.chapter__notes h2,.chapter__notes h3{line-height:1.15}.chapter__notes img{max-width:100%;height:auto}.chapter__lyrics{white-space:pre-wrap;font-family:var(--serif);font-size:1rem;line-height:1.8;overflow-wrap:anywhere}.chapter__aside h2,.credits-panel h2{font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--copper-text);font-family:var(--sans)}.chapter__aside{border-top:1px solid rgba(20,46,39,.25);padding-top:1rem}.chapter__credit{font-size:.8rem;margin:1.2rem 0}.chapter__credit dt{text-transform:uppercase;letter-spacing:.2em;font-size:.57rem;color:var(--copper)}.chapter__credit dd{margin:0}.chapter__next{margin-top:5rem;padding-top:2rem;border-top:1px solid rgba(20,46,39,.2);display:flex;justify-content:space-between;gap:2rem}.chapter__next a{font:1.4rem var(--serif);text-decoration:none}
.chapter--cinematic .chapter__hero{aspect-ratio:2.1/1;max-height:unset}.chapter--archival .chapter__hero{max-width:760px;aspect-ratio:4/5;object-fit:cover;margin-inline:auto;filter:saturate(.8) sepia(.16)}.chapter--interlude{max-width:960px;text-align:center}.chapter--interlude .chapter__hero{aspect-ratio:1.6/1}.chapter--interlude .chapter__grid{grid-template-columns:1fr;text-align:left}.chapter--interlude .chapter__quote{border:0;margin:2rem auto;padding:0}.chapter--typography .chapter__title{font-size:clamp(5rem,14vw,13rem);max-width:none}.chapter--typography .chapter__hero{max-height:430px}.chapter--typography .chapter__grid{grid-template-columns:1fr 1fr}
.page-content{padding-top:5rem;padding-bottom:8rem;max-width:920px}.page-content__title{font:400 clamp(3.4rem,8vw,7rem)/1 var(--serif);letter-spacing:-.06em}.page-content__body{font:1.16rem/1.83 var(--serif)}.page-content__body img{max-width:100%;height:auto}
.site-footer{background:var(--ink);color:var(--paper);padding:3rem 0;border-top:1px solid rgba(238,228,209,.2)}.footer-content{display:flex;justify-content:space-between;gap:2rem;align-items:end;flex-wrap:wrap}.footer-content strong{font:2.3rem var(--serif);letter-spacing:.15em}.footer-content p{font-size:.7rem;letter-spacing:.16em;opacity:.8;text-transform:uppercase;margin:1rem 0 0}
.griot-empty{padding:3rem 0;font-family:var(--serif);color:#56645a;font-style:italic}
@media(max-width:850px){.masthead{flex-wrap:wrap;padding:1.3rem 0}.site-nav{width:100%;gap:1.3rem}.griot-player{grid-template-columns:1fr auto;padding-block:.8rem}.griot-player__timeline{grid-column:1/-1;grid-row:2}.griot-player__volume{display:none}.cover-intro{grid-template-columns:1fr;gap:3rem;padding-top:3rem}.cover-frame{max-width:550px;width:100%}.chapter__grid{grid-template-columns:1fr}.chapter__aside{order:2}.chapter--typography .chapter__grid{grid-template-columns:1fr}}
@media(max-width:500px){.site-nav{gap:.9rem}.site-nav a{font-size:.6rem}.wordmark{letter-spacing:.18em}.griot-player__controls button{width:32px;height:32px}.griot-player__controls #griot-toggle{width:36px;height:36px}.griot-player__title{font-size:.85rem}.index-track{grid-template-columns:35px 1fr auto}.index-track button{padding:.45rem .6rem}.chapter__title{font-size:clamp(2.7rem,11vw,5rem)}.chapter__hero{aspect-ratio:4/5}.album-index{padding-top:2.5rem;padding-bottom:3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Chapter-linked video archive: published videos accrue over time without altering tracks. */
.griot-videos{border-top:1px solid rgba(20,46,39,.2);padding:3.5rem 0 1rem;margin-top:4rem}
.griot-videos__eyebrow{font-size:.64rem;text-transform:uppercase;letter-spacing:.26em;color:var(--copper-text);margin:0 0 .7rem}
.griot-videos h2{font:400 clamp(2.2rem,4.5vw,4.2rem)/1.12 var(--serif);letter-spacing:-.04em;margin:.2em 0 2.2rem}
.griot-videos__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:2.5rem 2rem}
.griot-videos__item{min-width:0}
.griot-videos__item h3{font:400 clamp(1.35rem,2.3vw,1.9rem)/1.25 var(--serif);margin:1rem 0 .45rem}
.griot-videos__frame{position:relative;aspect-ratio:16/9;background:var(--ink);overflow:hidden}
.griot-videos__frame video,.griot-videos__frame iframe{display:block;width:100%;height:100%;border:0;object-fit:contain}
.griot-videos__load{border:0;color:#f7efe4;position:absolute;inset:0;width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(145deg,#142e27,#42614e);padding:0;overflow:hidden}
.griot-videos__load img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.68}
.griot-videos__load span{z-index:1;position:relative;background:rgba(10,25,20,.9);padding:.8rem 1.25rem;border:1px solid rgba(255,255,255,.4);font:.65rem var(--sans);letter-spacing:.16em;text-transform:uppercase}
.griot-videos__load:hover span{background:var(--copper)}
.griot-videos__load[hidden]{display:none}
.griot-videos__notes{font:1rem/1.6 var(--serif);color:var(--ink);overflow-wrap:anywhere}
.griot-videos__notes p{margin:.4rem 0 .9rem}

.griot-videos__related{margin:.3rem 0 .7rem;font-size:.72rem;letter-spacing:.06em;color:var(--copper-text)}

/* Living Panel: a curated, replaceable page tucked into permanent liner notes. */
.griot-living-panel{margin:3.4rem 0 2.9rem;padding:2rem 0 1.5rem;border-top:1px solid rgba(20,46,39,.30);border-bottom:1px solid rgba(20,46,39,.18);font-family:var(--serif)}
.griot-living-panel__eyebrow{font:600 .63rem/1.5 var(--sans);letter-spacing:.25em;text-transform:uppercase;color:var(--copper-text);margin:0 0 1rem}
.griot-living-panel__title{font:400 clamp(1.55rem,3vw,2.5rem)/1.17 var(--serif);letter-spacing:-.035em;margin:0 0 1.4rem}
.griot-living-panel__body{overflow-wrap:anywhere}
.griot-living-panel__body img{display:block;max-width:100%;height:auto}
.griot-living-panel__body figure{max-width:100%;margin:1.5rem 0}
.griot-living-panel__body iframe{max-width:100%}
.griot-living-panel__body video{display:block;width:100%;max-width:100%;height:auto}
.griot-living-panel__body .griot-videos__frame{aspect-ratio:16/9}
.griot-living-panel__journal{display:grid;grid-template-columns:minmax(0,180px) 1fr;gap:1.1rem;align-items:center;margin:1.8rem 0;text-decoration:none;border-top:1px solid rgba(20,46,39,.16);padding-top:1.6rem}
.griot-living-panel__journal img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.griot-living-panel__journal strong{display:block;font:400 1.45rem/1.2 var(--serif)}
.griot-living-panel__journal span{font:.62rem var(--sans);text-transform:uppercase;letter-spacing:.13em;color:var(--copper-text)}
.griot-living-panel__journal p{font:1rem/1.6 var(--serif);color:var(--ink);margin:.45rem 0}
@media(max-width:600px){.griot-living-panel__journal{grid-template-columns:1fr}.griot-living-panel__journal img{max-height:200px}}

/* v0.4 — MUSIATA's illustrated chapter grammar. Permanent story, living margins. */
.site-header{background:var(--player-bg);box-shadow:0 1px 0 rgba(238,228,209,.16)}
.masthead{min-height:58px;gap:1.4rem;border-bottom:1px solid rgba(238,228,209,.15)}
.wordmark{display:flex;align-items:center;gap:.82rem;font:500 .8rem/1.12 var(--sans);letter-spacing:.19em}
.wordmark .wordmark__monogram{display:flex;width:37px;height:37px;align-items:center;justify-content:center;border:1px solid rgba(238,228,209,.6);font:italic 1.5rem/1 var(--serif);letter-spacing:-.12em;opacity:1;margin:0;text-transform:none}
.wordmark .wordmark__word{display:block;margin:0;font:600 .75rem/1.2 var(--sans);letter-spacing:.2em;opacity:1}
.wordmark .wordmark__word small{display:block;margin:.28rem 0 0;font:.49rem/1.25 var(--sans);letter-spacing:.26em;opacity:.67}
.site-nav{gap:clamp(.8rem,2vw,1.7rem)}.site-nav a{font-size:.6rem;letter-spacing:.22em}
.masthead__edition{font:.55rem var(--serif);color:#d1a077;letter-spacing:.22em;border-left:1px solid rgba(238,228,209,.18);padding-left:1.2rem;white-space:nowrap}
.griot-player{min-height:58px;padding-top:.45rem;padding-bottom:.45rem;grid-template-columns:minmax(130px,1.1fr) auto minmax(145px,1.35fr) 80px}
.griot-player__controls button{width:33px;height:33px}.griot-player__controls #griot-toggle{width:37px;height:37px}.griot-player__title{font-size:.89rem}.griot-player__label{font-size:.48rem}
.story-label{display:block;font:700 .61rem/1.45 var(--sans);text-transform:uppercase;letter-spacing:.28em}
.chapter{padding:0;overflow:hidden}.chapter-spread{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:clamp(520px,68vw,750px)}
.chapter-spread__words{position:relative;background:#efb970;color:#18392e;padding:clamp(1.5rem,3.6vw,4.3rem);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.chapter-spread__words::before{content:"";position:absolute;top:-15%;right:-30%;width:70%;height:130%;background:linear-gradient(140deg,transparent 34%,#204a3a 34%,#204a3a 70%,transparent 70%);opacity:.95;transform:rotate(-6deg);pointer-events:none}
.chapter-spread__topline,.chapter-spread__composition,.chapter-spread__seal{position:relative;z-index:1}
.chapter-spread__topline{display:flex;justify-content:space-between;gap:1rem;font:700 .65rem/1.4 var(--sans);letter-spacing:.25em;border-bottom:1px solid rgba(20,46,39,.4);padding-bottom:1rem}
.chapter-spread__composition{padding:2rem 0;max-width:690px}.chapter-spread__overline{font:700 .61rem var(--sans);letter-spacing:.35em;margin-bottom:1.4rem}
.chapter-spread__title{font:400 clamp(3.8rem,7.1vw,9.2rem)/.86 var(--serif);letter-spacing:-.075em;overflow-wrap:break-word;margin:0;max-width:13ch;text-transform:uppercase;text-wrap:balance;color:#fff3de;text-shadow:0 2px 0 rgba(23,54,41,.12)}
.chapter-spread__subtitle{font:italic clamp(1.24rem,2.05vw,2.05rem)/1.4 var(--serif);margin:1.5rem 0;color:#123d32}
.chapter-spread__play{color:#fff1db;background:#9f2e1b;border:1px solid rgba(255,255,255,.2);padding:.85rem 1.25rem;font:700 .64rem var(--sans);letter-spacing:.15em;margin-top:2rem}
.chapter-spread__play:hover{background:#204a3a}.chapter-spread__seal{font:.69rem var(--sans);letter-spacing:.3em;color:#18392e;align-self:flex-end}
.chapter-spread__image{position:relative;min-height:420px;background:radial-gradient(circle at 25% 20%,#6f8571,#224536 43%,#0d2f2d);overflow:hidden}
.chapter-spread__image.has-image::after{content:"";position:absolute;inset:0;pointer-events:none;border:clamp(12px,2.5vw,32px) solid rgba(12,30,22,.03)}
.chapter-spread__art{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:var(--hero-image-position)}
.chapter-spread__unillustrated{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#efb970}
.chapter-spread__unillustrated span:first-child{font:italic clamp(10rem,23vw,25rem)/.8 var(--serif);opacity:.24}.chapter-spread__unillustrated span:last-child{font:.6rem var(--sans);letter-spacing:.37em}
.chapter-spread__caption{position:absolute;bottom:0;right:0;left:0;background:rgba(10,31,23,.76);color:#f8edde;padding:.65rem 1.5rem;margin:0;font:.58rem var(--sans);letter-spacing:.18em;text-transform:uppercase}
/* The five layout presets become recognizable design treatments while preserving the same beat structure. */
.chapter--cinematic .chapter-spread{min-height:min(84vh,860px);grid-template-columns:40% 60%}.chapter--cinematic .chapter-spread__words{background:#1c3834}.chapter--cinematic .chapter-spread__words::before{background:linear-gradient(140deg,transparent 32%,#8c321e 32%,#8c321e 60%,transparent 60%);opacity:.6}
.chapter--archival .chapter-spread__words{background:#dbc7a5}.chapter--archival .chapter-spread__title{color:#174032}.chapter--archival .chapter-spread__words::before{opacity:.18}
.chapter--interlude .chapter-spread{min-height:470px;grid-template-columns:58% 42%}.chapter--interlude .chapter-spread__words{background:#254f59}.chapter--interlude .chapter-spread__words::before{opacity:.3}
.chapter--typography .chapter-spread{grid-template-columns:62% 38%}.chapter--typography .chapter-spread__title{font-size:clamp(5.6rem,9vw,12rem);max-width:12ch}
.chapter-signal{background:#efce9f;border-block:1px solid rgba(35,55,37,.27)}.chapter-signal__inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,5vw,6rem);padding-top:clamp(3.7rem,7vw,8rem);padding-bottom:clamp(3.7rem,7vw,8rem)}
.chapter-signal .story-label{color:#3f4838;opacity:.85}.chapter-signal__headline{font:400 clamp(2.8rem,5.4vw,6.7rem)/.93 var(--serif);letter-spacing:-.053em;max-width:13ch;color:#fff8e8;margin:.8rem 0 0}
.chapter-signal__copy{font:1.15rem/1.75 var(--serif);max-width:38ch;align-self:center}.chapter-signal__copy p{margin:0}.chapter-signal__copy blockquote{font:italic clamp(1.25rem,2vw,1.8rem)/1.5 var(--serif);margin:0 0 0;padding:0}.chapter-signal__copy p+blockquote{margin-top:1.7rem}
.chapter-storyboard{background:#e5af78;border-block:1px solid rgba(37,40,27,.15)}.chapter-storyboard__inner{padding-top:clamp(3rem,6vw,6rem);padding-bottom:clamp(4rem,7vw,8rem)}
.chapter-storyboard__heading{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;margin:0 0 2rem}.chapter-storyboard__heading h2{font:italic clamp(1.2rem,2vw,1.7rem) var(--serif);margin:0}
.chapter-storyboard__frames{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.7rem,2vw,1.5rem)}.chapter-storyboard__frames--2{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter-storyboard__frames--1{grid-template-columns:minmax(0,420px)}
.chapter-frame{margin:0;background:#f4dbb8;min-width:0;display:flex;flex-direction:column;box-shadow:0 10px 22px rgba(51,44,31,.09)}
.chapter-frame__image{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;background:#234636}.chapter-frame:nth-child(2) .chapter-frame__image{object-position:center 60%}.chapter-frame:nth-child(3) .chapter-frame__image{object-position:center 40%}
.chapter-frame__caption{display:grid;grid-template-columns:2.1rem 1fr;gap:.2rem .7rem;padding:1rem 1.05rem 1.35rem;min-height:5rem}
.chapter-frame__number{grid-row:1/3;font:.61rem var(--sans);color:#894c30;letter-spacing:.2em}.chapter-frame__caption strong{font:700 .61rem/1.35 var(--sans);text-transform:uppercase;letter-spacing:.12em}.chapter-frame__caption small{font:.69rem/1.5 var(--serif)}
.chapter-ledger{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,8rem);padding-top:clamp(4rem,8vw,8rem);padding-bottom:clamp(4rem,8vw,8rem)}
.chapter-ledger__lyrics{min-width:0}.chapter-ledger__intro h2{font:400 clamp(3.2rem,5vw,6rem)/1 var(--serif);letter-spacing:-.06em;margin:.6rem 0 1rem}.chapter-ledger__intro p:not(.story-label){font:.89rem/1.6 var(--serif);max-width:30ch;color:#59665a}
.griot-lyrics-drawer{border-top:1px solid rgba(33,56,42,.3);border-bottom:1px solid rgba(33,56,42,.3);margin-top:2.2rem}.griot-lyrics-drawer summary,.griot-credits-drawer summary{list-style:none;cursor:pointer;padding:1.1rem .35rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;font:700 .69rem/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.griot-lyrics-drawer summary::-webkit-details-marker,.griot-credits-drawer summary::-webkit-details-marker{display:none}
.griot-lyrics-drawer__indicator,.griot-credits-drawer summary span{font:400 1.6rem/1 var(--serif);transition:transform .2s ease}
.griot-lyrics-drawer[open] .griot-lyrics-drawer__indicator,.griot-credits-drawer[open] summary span{transform:rotate(45deg)}
.griot-lyrics-drawer__body{border-top:1px solid rgba(33,56,42,.17);white-space:pre-wrap;overflow-wrap:anywhere;padding:1.5rem .25rem 2rem;font:1rem/1.9 var(--serif)}
.chapter-ledger__margins{min-width:0}.chapter-ledger__notes{font:1.09rem/1.83 var(--serif)}.chapter-ledger__notes p{overflow-wrap:anywhere}.chapter-ledger__body img{width:auto;max-width:100%}
.chapter-ledger__margins .griot-living-panel{margin:1.5rem 0 2.4rem;padding:1.5rem 0 1.8rem}
.griot-credits-drawer{border-top:1px solid rgba(33,56,42,.2);border-bottom:1px solid rgba(33,56,42,.2)}.griot-credits-drawer dl{margin:0;padding:1rem 0}
.griot-credits-drawer dl div{padding:.55rem .25rem;display:grid;grid-template-columns:100px 1fr;gap:1rem}.griot-credits-drawer dt{font:700 .58rem var(--sans);text-transform:uppercase;letter-spacing:.14em;color:#7c5339}.griot-credits-drawer dd{margin:0;font:.84rem var(--serif)}
.chapter-turn{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding-top:2.5rem;padding-bottom:3.5rem;background:#942c1c;color:#fff2dc;max-width:none}
.chapter-turn>span:last-child{text-align:right}.chapter-turn .story-label{color:#f9b882;margin-bottom:.4rem;font-size:.52rem}.chapter-turn a{font:400 clamp(1.2rem,2.2vw,1.9rem)/1.25 var(--serif);text-decoration:none}.chapter-turn a:hover{color:#f8b77e}.chapter-turn__index{font:700 .59rem var(--sans)!important;letter-spacing:.17em;border:1px solid rgba(255,255,255,.45);padding:.85rem}
/* About / Contact share a designed editorial document grammar. */
.world-page{min-height:70vh}.world-page__hero{background:#eec38a;min-height:400px;display:grid;grid-template-columns:1.5fr .5fr;align-items:end;gap:2rem;padding-top:6rem;padding-bottom:4rem}
.world-page__hero h1{font:400 clamp(5rem,13vw,13rem)/.85 var(--serif);letter-spacing:-.075em;margin:.3em 0 0}.world-page__period{color:#9e2e1d}.world-page__index{border-left:1px solid rgba(30,50,37,.2);padding-left:clamp(1rem,3vw,4rem);min-height:180px;display:flex;justify-content:space-between;flex-direction:column}
.world-page__index>span{font:italic clamp(7rem,12vw,13rem)/1 var(--serif);color:#194337;opacity:.66}.world-page__index small{font:.61rem var(--sans);letter-spacing:.16em}
.world-page__tagline{font:italic 1.6rem var(--serif);margin-bottom:0}
.world-page__body{display:grid;grid-template-columns:.43fr 1fr;gap:clamp(2rem,7vw,8rem);padding-top:clamp(4rem,7vw,7rem);padding-bottom:clamp(5rem,8vw,8rem)}
.world-page__margin{border-top:2px solid var(--copper);padding-top:1.2rem}.world-page__margin p:not(.story-label){font:italic 1.4rem/1.5 var(--serif)}
.world-page__editorial{font:clamp(1.12rem,2.1vw,1.55rem)/1.75 var(--serif);max-width:54ch}.world-page__editorial p:first-child{margin-top:0}
.world-page__closing{border-top:1px solid rgba(20,46,39,.2);padding-top:1.5rem;padding-bottom:3rem;display:flex;justify-content:space-between;gap:2rem}.world-page__closing span{font:700 .66rem var(--sans);letter-spacing:.21em}
/* Contact: no external form or data harvesting. */
.griot-contact-form{margin-top:2rem}.griot-contact-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.griot-contact-form label{display:block;font:700 .65rem/1.7 var(--sans);text-transform:uppercase;letter-spacing:.14em}
.griot-contact-form input,.griot-contact-form textarea{width:100%;display:block;margin:.5rem 0 1.2rem;border:1px solid rgba(30,47,40,.4);background:transparent;border-radius:0;padding:.78rem .82rem;color:var(--ink);font:1rem var(--serif)}
.griot-contact-form input:focus,.griot-contact-form textarea:focus{outline:2px solid var(--sapphire);outline-offset:2px}
.griot-contact-privacy{font:.77rem/1.6 var(--sans)}.griot-contact-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.griot-contact-send{font:700 .65rem var(--sans);letter-spacing:.16em}.griot-contact-success{border-left:3px solid #3e795a;padding:.8rem 1rem;background:rgba(61,117,84,.12)}
.griot-contact-error{border-left:3px solid #9f2e1b;padding:.8rem 1rem;background:rgba(159,46,27,.1)}
/* Commentary as an authored journal, not a generic blog. */
.journal-archive__head{background:#203c37;color:#f0d6af;max-width:none;padding-top:clamp(5rem,10vw,11rem);padding-bottom:clamp(5rem,8vw,8rem)}
.journal-archive__head h1{font:400 clamp(5rem,11vw,12rem)/.89 var(--serif);letter-spacing:-.065em;margin:1.2rem 0 2rem}
.journal-archive__head h1 em{color:#f8bb80;font-weight:400}.journal-archive__head>p:last-child{font:italic clamp(1.2rem,2.7vw,2rem)/1.5 var(--serif);max-width:38ch}
.journal-archive__items{padding-top:4rem;padding-bottom:8rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem 2rem}
.journal-card{border-top:1px solid rgba(30,50,39,.32);padding-top:1.4rem}.journal-card>a{text-decoration:none;display:block}.journal-card__image{margin-bottom:1.5rem;aspect-ratio:16/10;overflow:hidden}.journal-card__image img{height:100%;width:100%;object-fit:cover}
.journal-card__text h2{font:400 clamp(2rem,4vw,3.7rem)/1.03 var(--serif);letter-spacing:-.04em;margin:.7rem 0 1rem}
.journal-card__text>p:not(.story-label){font:1rem/1.65 var(--serif)}.journal-card__more{font:700 .6rem var(--sans);letter-spacing:.2em;color:#84452e}
.journal-entry__head{padding-top:clamp(5rem,9vw,10rem);padding-bottom:3.2rem}.journal-entry__head h1{font:400 clamp(3.7rem,8vw,8rem)/.99 var(--serif);letter-spacing:-.06em;max-width:17ch;margin:.6rem 0}
.journal-entry__image img{width:100%;max-height:680px;object-fit:cover}.journal-entry__content{font:clamp(1.15rem,2.1vw,1.5rem)/1.9 var(--serif);max-width:930px;padding-top:4rem;padding-bottom:5rem;overflow-wrap:anywhere}
.journal-entry__content p:first-child{margin-top:0}.journal-entry__content blockquote{border-left:2px solid var(--copper);padding-left:1.5rem;font-style:italic}
.journal-entry__foot{padding-bottom:6rem}.journal-archive__pagination{grid-column:1/-1}
@media(max-width:900px){.masthead__edition{display:none}.chapter-spread{min-height:540px}.chapter-spread__title{font-size:clamp(3rem,8vw,6.4rem)}.chapter-ledger{grid-template-columns:1fr}.chapter-signal__inner{gap:3rem}}
@media(max-width:720px){.masthead{flex-wrap:wrap;gap:.55rem;padding-top:.85rem;padding-bottom:.85rem}.wordmark{width:100%}.site-nav{display:flex;width:100%;flex-wrap:nowrap;overflow-x:auto;gap:1.2rem;padding:.45rem 0 .25rem}.site-nav a{white-space:nowrap;font-size:.61rem}
.griot-player{grid-template-columns:1fr auto;min-height:50px}.griot-player__timeline{grid-column:1/-1;grid-row:2}.chapter-spread{grid-template-columns:1fr;min-height:0}.chapter-spread__words{min-height:450px}.chapter-spread__image{min-height:clamp(320px,70vw,600px)}
.chapter-spread__title{font-size:clamp(3.9rem,11vw,7rem)}.chapter-signal__inner{grid-template-columns:1fr;gap:1.8rem}.chapter-signal__headline{font-size:clamp(3rem,10vw,5rem)}
.chapter-storyboard__frames,.chapter-storyboard__frames--2{grid-template-columns:1fr}.chapter-storyboard__frames--1{grid-template-columns:1fr}.chapter-frame{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.chapter-frame__image{height:100%;min-height:180px;aspect-ratio:1/1}.chapter-frame__caption{align-content:end}.chapter-turn{grid-template-columns:1fr 1fr}.chapter-turn__index{grid-column:1/-1;grid-row:2;justify-self:center}
.world-page__hero{grid-template-columns:1fr}.world-page__index{display:none}.world-page__body{grid-template-columns:1fr;gap:2rem}.world-page__margin p:not(.story-label){max-width:30ch}.journal-archive__items{grid-template-columns:1fr}}
@media(max-width:450px){.chapter-spread__words{min-height:420px;padding:1.3rem}.chapter-spread__words::before{opacity:.67}.chapter-spread__title{font-size:clamp(3.25rem,14vw,5.4rem)}.chapter-frame{grid-template-columns:1fr}.chapter-frame__image{aspect-ratio:5/3;min-height:unset}.chapter-ledger{padding-top:3rem;padding-bottom:4rem}.griot-contact-columns{grid-template-columns:1fr}.chapter-turn a{font-size:1.2rem}.world-page__hero h1{font-size:clamp(4.5rem,17vw,7.5rem)}}
@media(prefers-reduced-motion:reduce){.griot-lyrics-drawer__indicator,.griot-credits-drawer summary span{transition:none}}

.footer-links{display:flex;justify-content:flex-end;gap:1.4rem;font:700 .58rem var(--sans);text-transform:uppercase;letter-spacing:.17em}.footer-content__right{text-align:right}.footer-content__right a{color:inherit;text-decoration:none}.footer-content__right a:hover{color:#efb970}@media(max-width:550px){.footer-content__right{text-align:left}.footer-links{justify-content:flex-start}}


/* v0.5.0 — symbolic Southern-African contrast logic and poster-first composition. */
:root{
  --paper:#f1d29e;
  --paper-2:#e9bc7c;
  --ink:#213f36;
  --ink-2:#17332c;
  --green-deep:#204236;
  --green-fruit:#3f5d37;
  --mango:#efbb57;
  --sun:#f3cb63;
  --dust:#b84a2a;
  --river:#2f6f86;
  --river-deep:#234c5a;
  --sky:#5a92a8;
  --cream:#fff1dc;
}
body{background:linear-gradient(180deg,#f0cf99 0%,#f2d7ab 42%,#f4dfbf 100%);color:var(--ink);}
.site-shell{max-width:1320px;padding-inline:clamp(1rem,3.2vw,3rem)}
.site-header{background:linear-gradient(90deg,var(--river-deep) 0%, #285667 62%, #234453 62%, #234453 100%);color:var(--cream);box-shadow:none;border-bottom:1px solid rgba(255,241,220,.14)}
.masthead{min-height:72px;border-bottom:1px solid rgba(255,241,220,.15)}
.wordmark{font:700 .76rem/1.15 var(--sans);letter-spacing:.22em;text-transform:uppercase}
.wordmark .wordmark__monogram{width:40px;height:40px;border-color:rgba(255,241,220,.7);font:italic 1.55rem/1 var(--serif);background:rgba(255,241,220,.04)}
.wordmark .wordmark__word small{font-size:.47rem;letter-spacing:.28em}
.site-nav a{font-size:.62rem;letter-spacing:.24em;color:#fee7bb}
.site-nav a:hover,.site-nav a[aria-current=page]{color:#fff}
.masthead__edition{color:#f1c96d;border-left-color:rgba(255,241,220,.18)}
.griot-player{background:linear-gradient(90deg,rgba(18,46,41,.96) 0%, rgba(18,46,41,.96) 62%, rgba(18,46,41,.9) 100%);border-bottom:0}
.griot-player__label{color:#f0c06b}.griot-player__title{font-size:.95rem;color:#fff2dc}.griot-player__controls #griot-toggle{background:var(--dust);border-color:var(--dust)}

.cover-intro{min-height:76vh;gap:clamp(2rem,4vw,4.5rem);padding-top:clamp(4rem,8vw,8rem);padding-bottom:clamp(4rem,8vw,7rem)}
.cover-intro>div:first-child{position:relative;padding-right:2rem}
.cover-intro>div:first-child::before{content:"";position:absolute;top:.5rem;left:-.5rem;width:11rem;height:11rem;border-radius:50%;background:radial-gradient(circle,var(--sun) 0%, rgba(243,203,99,.72) 45%, rgba(243,203,99,0) 72%);opacity:.6}
.cover-intro .eyebrow{color:var(--dust)}
.display-title{line-height:.82;color:var(--ink)}
.display-title br + text, .display-title{position:relative}
.subheading{max-width:27ch;font-size:clamp(1.3rem,2.1vw,2.1rem);line-height:1.4;color:#244237}
.button-link{background:var(--ink);border-color:transparent;border-radius:999px;padding:1rem 1.45rem}.button-link:hover{background:var(--dust);color:#fff;border-color:transparent}
.cover-frame{aspect-ratio:4/5;background:linear-gradient(160deg,var(--green-deep),#315847 46%,var(--river));box-shadow:18px 18px 0 rgba(35,79,92,.22), 36px 36px 0 rgba(184,74,42,.14),0 25px 60px rgba(40,35,25,.18);border-radius:0;overflow:hidden}
.cover-frame::before{inset:14px;border:1px solid rgba(255,241,220,.38)}
.cover-frame::after{content:"";position:absolute;inset:auto auto 22px -30px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle at center, rgba(239,187,87,.78), rgba(239,187,87,.16) 58%, rgba(239,187,87,0) 72%);pointer-events:none}

.album-index{padding-top:2rem;padding-bottom:6rem}
.album-index__tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;list-style:none;padding:0;margin:2rem 0 0;border-top:0}
.index-track{grid-template-columns:56px 1fr auto;padding:1rem 1.1rem;border:1px solid rgba(28,53,42,.14);background:rgba(255,246,229,.4);box-shadow:0 10px 25px rgba(46,34,22,.06);position:relative;overflow:hidden}
.index-track::before{content:"";position:absolute;inset:auto auto -32px -18px;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,var(--sun) 0%, rgba(243,203,99,.2) 65%, transparent 70%)}
.index-track:nth-child(4n+2)::before{background:radial-gradient(circle,var(--river) 0%, rgba(47,111,134,.18) 62%, transparent 70%)}
.index-track:nth-child(4n+3)::before{background:radial-gradient(circle,var(--dust) 0%, rgba(184,74,42,.16) 62%, transparent 70%)}
.index-track__number{font-size:.72rem;color:var(--dust);position:relative;z-index:1}
.index-track a{position:relative;z-index:1;font-size:clamp(1.2rem,2vw,1.75rem)}
.index-track button{position:relative;z-index:1;background:rgba(33,63,54,.95);color:#fff6e4;border:0}

.chapter{background:transparent}
.chapter-spread{position:relative;display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.14fr);min-height:clamp(600px,80vh,860px);background:linear-gradient(90deg,var(--paper) 0%, var(--paper) 44%, var(--green-deep) 44%, #24463a 100%)}
.chapter-spread__words{padding:clamp(1.75rem,4vw,4rem) clamp(1.65rem,3.8vw,4rem) clamp(2rem,5vw,4.75rem);background:transparent;color:var(--ink);overflow:hidden}
.chapter-spread__words::before{content:"";position:absolute;left:-6%;top:7%;width:46%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 50%, rgba(243,203,99,.72) 0%, rgba(243,203,99,.55) 34%, rgba(243,203,99,0) 72%);opacity:.8;transform:none}
.chapter-spread__words::after{content:"";position:absolute;right:-10%;bottom:-14%;width:58%;height:72%;background:linear-gradient(133deg,transparent 0 46%, #234236 46% 100%);opacity:1}
.chapter-spread__topline,.chapter-spread__composition,.chapter-spread__seal,.chapter-spread__marks{position:relative;z-index:2}
.chapter-spread__topline{border:0;padding-bottom:0;color:var(--dust);font-size:.67rem}
.chapter-spread__composition{padding:0;display:flex;flex-direction:column;justify-content:center;gap:.8rem;min-height:100%}
.chapter-spread__overline{margin:0;font-size:.56rem;letter-spacing:.35em;color:#6e5339}
.chapter-spread__title{font-size:clamp(4rem,8vw,8.7rem);line-height:.84;max-width:7.6ch;margin:.25rem 0 0;color:#5a3d2a;text-shadow:3px 4px 0 rgba(255,241,220,.6), 6px 7px 0 rgba(47,111,134,.7);letter-spacing:-.06em}
.chapter-spread__title-line{display:block;position:relative}
.chapter-spread__title-line + .chapter-spread__title-line{color:var(--river)}
.chapter-spread__title-line + .chapter-spread__title-line::before{content:"";position:absolute;left:42%;top:-.08em;width:.22em;height:.22em;transform:rotate(45deg);background:var(--mango);box-shadow:.05em .05em 0 rgba(90,61,42,.25)}
.chapter-spread__subtitle{margin:1rem 0 0;max-width:20ch;font-size:clamp(1.45rem,2vw,2.15rem);line-height:1.42;color:#21453b}
.chapter-spread__play{align-self:flex-start;background:rgba(184,74,42,.96);border:0;border-radius:999px;padding:.95rem 1.3rem;box-shadow:0 10px 30px rgba(106,44,25,.18)}
.chapter-spread__play:hover{background:var(--ink)}
.chapter-spread__seal{font-size:.61rem;color:#6a543c;align-self:flex-start;padding-top:1rem}
.chapter-spread__marks{position:absolute;left:1.2rem;bottom:clamp(6rem,10vw,9rem);display:grid;gap:.85rem}
.chapter-spread__emblem{display:inline-flex;align-items:center;gap:.4rem}
.chapter-spread__emblem i{display:block;font-style:normal}
.chapter-spread__emblem--beads i{width:.45rem;height:.45rem;border-radius:50%;background:var(--dust)}
.chapter-spread__emblem--beads i:nth-child(2){background:var(--mango)}
.chapter-spread__emblem--beads i:nth-child(3){background:var(--river)}
.chapter-spread__emblem--path{width:1rem;height:4.7rem;position:relative}
.chapter-spread__emblem--path::before,.chapter-spread__emblem--path::after{content:"";position:absolute;left:50%;transform:translateX(-50%);background:#b67f4c}
.chapter-spread__emblem--path::before{top:0;width:2px;height:100%}
.chapter-spread__emblem--path::after{top:34%;width:.9rem;height:2px}
.chapter-spread__emblem--sun{width:1.7rem;height:1.7rem;border-radius:50%;border:2px solid rgba(184,74,42,.75);box-shadow:inset 0 0 0 4px rgba(243,203,99,.85)}
.chapter-spread__image{background:linear-gradient(140deg,var(--green-deep),#274d40 45%, var(--river-deep));padding:clamp(1.2rem,2.2vw,1.85rem);display:flex;align-items:center;justify-content:center}
.chapter-spread__image::before{content:"";position:absolute;top:-7%;right:-2%;width:28%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(243,203,99,.5) 0%, rgba(243,203,99,.14) 52%, transparent 70%);z-index:0}
.chapter-spread__image::after{content:"";position:absolute;inset:clamp(1rem,2vw,1.2rem);border:1px solid rgba(243,226,198,.18);z-index:0;pointer-events:none}
.chapter-spread__art{position:relative;inset:auto;width:100%;height:auto;max-height:calc(100vh - 8rem);aspect-ratio:4/3;object-fit:cover;border:1px solid rgba(255,241,220,.34);box-shadow:16px 16px 0 rgba(239,187,87,.22), 28px 28px 0 rgba(184,74,42,.16), 0 25px 50px rgba(14,32,28,.34)}
.chapter-spread__caption{left:auto;right:clamp(1.2rem,2.4vw,2rem);bottom:1.2rem;max-width:76%;background:rgba(18,46,41,.78);backdrop-filter:blur(3px);font-size:.55rem}
.chapter--cinematic .chapter-spread,.chapter--archival .chapter-spread,.chapter--interlude .chapter-spread,.chapter--typography .chapter-spread{grid-template-columns:minmax(0,.96fr) minmax(0,1.14fr);min-height:clamp(600px,80vh,860px)}
.chapter--cinematic .chapter-spread__words,.chapter--archival .chapter-spread__words,.chapter--interlude .chapter-spread__words,.chapter--typography .chapter-spread__words{background:transparent}
.chapter--cinematic .chapter-spread__title,.chapter--interlude .chapter-spread__title,.chapter--typography .chapter-spread__title{color:#5a3d2a}
.chapter--cinematic .chapter-spread__words::before,.chapter--archival .chapter-spread__words::before,.chapter--interlude .chapter-spread__words::before,.chapter--typography .chapter-spread__words::before{opacity:.8}

.chapter-signal{background:linear-gradient(180deg,#edd1a4 0%, #edd2a9 100%);border:0;position:relative}
.chapter-signal::before{content:"";position:absolute;left:0;right:0;bottom:0;height:84px;background:linear-gradient(180deg,rgba(225,155,78,.14),rgba(225,155,78,.46))}
.chapter-signal__inner{position:relative;z-index:1;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(2rem,6vw,8rem);padding-block:clamp(4rem,7vw,7rem)}
.chapter-signal__headline{max-width:7.4ch;font-size:clamp(3.9rem,6.3vw,7rem);line-height:.94;color:rgba(255,248,231,.9);margin:1rem 0 0}
.chapter-signal__copy{align-self:start;padding-top:1rem;font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.72;color:#5a3d2a;position:relative}
.chapter-signal__copy::before{content:"";position:absolute;top:0;left:0;width:5rem;height:1px;background:rgba(90,61,42,.28);transform:translateY(-1.25rem)}
.chapter-signal__copy blockquote{font-size:clamp(1.9rem,3vw,2.9rem);line-height:1.4;color:#5a3d2a;font-style:normal}
.story-label{color:var(--dust);letter-spacing:.32em}

.chapter-storyboard{background:linear-gradient(180deg,#e6b679 0%, #ebc18f 100%);border:0}
.chapter-storyboard__inner{padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(4rem,7vw,7rem)}
.chapter-storyboard__heading{margin-bottom:2.4rem}
.chapter-storyboard__heading h2{font-style:normal;font-size:clamp(1.1rem,1.8vw,1.45rem);letter-spacing:.03em;color:#5a3d2a}
.chapter-storyboard__frames{gap:clamp(1rem,2vw,1.6rem)}
.chapter-frame{background:#f9e8c7;border:1px solid rgba(90,61,42,.08);box-shadow:0 18px 34px rgba(71,45,28,.1);position:relative}
.chapter-frame::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--river) 0%, var(--green-fruit) 45%, var(--dust) 100%)}
.chapter-frame__image{aspect-ratio:4/4.1}
.chapter-frame__caption{padding:1rem 1.1rem 1.25rem 1.2rem;min-height:6rem}
.chapter-frame__number{color:#8b4d30;font-weight:700}
.chapter-frame__caption strong{color:#28453b;font-size:.64rem;letter-spacing:.16em}
.chapter-frame__caption small{color:#5a3d2a;font-size:.75rem}

.chapter-ledger{gap:clamp(2rem,5vw,7rem);padding-block:clamp(4rem,7vw,7rem)}
.chapter-ledger__intro h2{font-size:clamp(3.6rem,5.6vw,6.4rem);color:#fff3dd;margin-bottom:.6rem}
.chapter-ledger__intro p:not(.story-label){font-size:1rem;max-width:32ch;color:#5d6356}
.griot-lyrics-drawer,.griot-credits-drawer{border-color:rgba(34,62,51,.18)}
.griot-lyrics-drawer summary,.griot-credits-drawer summary{padding:1.25rem .1rem;color:#8b421f}
.griot-lyrics-drawer__body{font-size:1.12rem;line-height:1.92;color:#fff8ea;padding-right:1.1rem}
.chapter-ledger__lyrics{position:relative;padding-right:2rem}
.chapter-ledger__lyrics::before{content:"";position:absolute;inset:0 auto 0 0;width:calc(100% + 1.6rem);background:linear-gradient(180deg,#e0ab62 0%, #d89c4f 100%);z-index:-1;border-right:1px solid rgba(34,62,51,.12)}
.chapter-ledger__margins{padding-left:1.2rem}
.chapter-ledger__notes{font-size:1.14rem;line-height:1.85;color:#3f382f}
.chapter-ledger__margins .griot-living-panel{border-top:1px solid rgba(34,62,51,.16);border-bottom:1px solid rgba(34,62,51,.16)}

.chapter-turn{background:linear-gradient(90deg,#912e1f 0%, #b34726 55%, #912e1f 100%);padding-top:2.2rem;padding-bottom:2.8rem}
.chapter-turn a{color:#fff4df}.chapter-turn__index{border-radius:999px;background:rgba(255,255,255,.06)}

.world-page__hero,.journal-archive__head{background:linear-gradient(180deg,#e9bf84 0%, #e5b474 100%)}
.world-page__hero h1,.journal-archive__head h1,.page-content__title{color:#264238}
.world-page__tagline{color:#274238}
.page-content__body,.world-page__editorial,.journal-entry__content{color:#42372d}
.journal-card{background:rgba(255,247,232,.38);padding:1.2rem;border:1px solid rgba(20,46,39,.09)}
.journal-card__image{margin:-1.2rem -1.2rem 1.25rem}

@media (max-width: 1000px){
  .album-index__tiles{grid-template-columns:1fr}
  .chapter-spread{grid-template-columns:1fr;min-height:0;background:linear-gradient(180deg,var(--paper) 0%, var(--paper) 46%, var(--green-deep) 46%, #24463a 100%)}
  .chapter-spread__words{min-height:520px}
  .chapter-spread__image{min-height:440px}
  .chapter-spread__art{max-height:none;aspect-ratio:5/4}
  .chapter-spread__marks{bottom:3.5rem}
  .chapter-signal__inner{grid-template-columns:1fr}
  .chapter-ledger__lyrics::before{width:100%}
}
@media (max-width: 720px){
  .griot-player{grid-template-columns:1fr auto}
  .griot-player__timeline{grid-column:1/-1}
  .chapter-spread__words{padding:1.5rem 1.25rem 2rem;min-height:460px}
  .chapter-spread__title{font-size:clamp(3.4rem,14vw,5.5rem);max-width:8ch}
  .chapter-spread__subtitle{font-size:1.3rem;max-width:18ch}
  .chapter-spread__marks{left:.75rem;gap:.6rem}
  .chapter-spread__image{padding:1rem}
  .chapter-spread__caption{max-width:100%;left:1rem;right:1rem}
  .chapter-storyboard__frames,.chapter-storyboard__frames--2,.chapter-storyboard__frames--1{grid-template-columns:1fr}
  .chapter-frame{display:block}
  .chapter-frame__image{aspect-ratio:4/3}
  .chapter-ledger{grid-template-columns:1fr;padding-top:3rem}
  .chapter-ledger__lyrics{padding-right:0}
  .chapter-ledger__lyrics::before{width:100vw;left:50%;transform:translateX(-50%)}
  .chapter-ledger__margins{padding-left:0}
}
@media (max-width: 480px){
  .chapter-spread__topline{font-size:.58rem;gap:.5rem;flex-wrap:wrap}
  .chapter-spread__title{font-size:clamp(3rem,15vw,4.5rem)}
  .chapter-signal__headline{font-size:clamp(3rem,15vw,4.9rem)}
  .chapter-signal__copy blockquote{font-size:1.65rem}
}
