:root{
  --navy-950:#030910;
  --navy-900:#06111d;
  --navy-850:#081724;
  --navy-800:#0c1d2d;
  --ink:#f3eee7;
  --muted:#a7b3bf;
  --muted-2:#758392;
  --gold:#d7ad68;
  --gold-2:#f1d39a;
  --gold-soft:rgba(215,173,104,.16);
  --red:#9d2527;
  --line:rgba(215,173,104,.26);
  --line-soft:rgba(255,255,255,.08);
  --panel:rgba(5,14,24,.78);
  --panel-strong:rgba(4,12,21,.92);
  --serif:"Iowan Old Style","Baskerville","Times New Roman",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --shadow:0 30px 90px rgba(0,0,0,.46);
  --max:1440px;
  --header-h:74px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--navy-950)}
body{margin:0;background:var(--navy-950);color:var(--ink);font-family:var(--sans);overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.11;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.33'/%3E%3C/svg%3E")}
body.is-silenced{overflow:hidden}
a{color:inherit}
button,input{font:inherit}
button{color:inherit}
img{max-width:100%;display:block}
::selection{background:var(--gold);color:#17120b}

.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:var(--gold-2);color:#13100b;padding:.75rem 1rem;text-decoration:none;font-weight:800}
.skip-link:focus{top:1rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.noscript{position:fixed;inset:auto 1rem 1rem;z-index:1000;background:#fff2d8;color:#15100b;padding:1rem 1.2rem;border-radius:.35rem}

.scroll-progress{position:fixed;left:0;top:0;width:100%;height:2px;z-index:950;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--gold),#fff0c5);animation:scrollProgress linear both;animation-timeline:scroll(root block)}
@keyframes scrollProgress{to{transform:scaleX(1)}}

.site-header{position:fixed;top:0;left:0;right:0;height:var(--header-h);z-index:900;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;padding:0 clamp(1rem,3vw,3.4rem);border-bottom:1px solid transparent;background:linear-gradient(180deg,rgba(3,9,16,.92),rgba(3,9,16,.52),transparent);transition:background .3s ease,border-color .3s ease,backdrop-filter .3s ease}
.site-header.is-scrolled{background:rgba(3,9,16,.82);border-color:var(--line-soft);backdrop-filter:blur(18px) saturate(120%)}
.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;min-width:max-content}
.brand-seal{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--gold);font-family:var(--serif);font-size:.82rem;color:var(--gold-2);box-shadow:inset 0 0 20px rgba(215,173,104,.08),0 0 22px rgba(215,173,104,.08)}
.brand-name{display:grid;line-height:.86;letter-spacing:.08em;font-family:var(--serif);font-size:.92rem}
.main-nav{display:flex;justify-content:center;align-items:center;gap:clamp(.75rem,1.8vw,1.65rem)}
.main-nav a{position:relative;text-decoration:none;color:rgba(255,255,255,.62);font-size:.73rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;transition:color .2s ease}
.main-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-.6rem;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.main-nav a:hover,.main-nav a:focus-visible,.main-nav a.is-active{color:#fff}
.main-nav a.is-active::after{transform:scaleX(1)}
.header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 1rem;border:1px solid var(--gold);text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;font-weight:800;background:rgba(215,173,104,.06);transition:background .2s ease,color .2s ease,transform .2s ease}
.header-cta:hover,.header-cta:focus-visible{background:var(--gold-2);color:#17120b;transform:translateY(-1px)}
.menu-toggle{display:none}

.chapter-rail{position:fixed;left:clamp(.6rem,1.6vw,1.8rem);top:50%;transform:translateY(-50%);z-index:850;display:grid;gap:.2rem}
.chapter-rail a{display:grid;grid-template-columns:34px 0fr;align-items:center;min-height:34px;text-decoration:none;color:rgba(255,255,255,.38);transition:grid-template-columns .25s ease,color .2s ease;background .2s ease}
.chapter-rail span{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.08);border-radius:50%;background:rgba(3,10,17,.58);font:700 .62rem/1 var(--mono);transition:background .2s ease,border-color .2s ease,color .2s ease}
.chapter-rail small{overflow:hidden;white-space:nowrap;font-size:.66rem;text-transform:uppercase;letter-spacing:.12em;opacity:0;transform:translateX(-4px);transition:opacity .2s ease,transform .2s ease;padding-left:.6rem}
.chapter-rail a:hover,.chapter-rail a:focus-visible{grid-template-columns:34px 1fr;color:#fff}
.chapter-rail a:hover small,.chapter-rail a:focus-visible small{opacity:1;transform:none}
.chapter-rail a.is-active span{background:var(--gold-2);border-color:var(--gold-2);color:#15110c}

.chapter{position:relative;min-height:100dvh;isolation:isolate;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.05)}
.chapter-image{background:var(--navy-950)}
.chapter-media{position:absolute;inset:0;z-index:-3;background-image:var(--chapter-image);background-size:contain;background-repeat:no-repeat;background-position:right center;filter:saturate(.85) contrast(1.05) brightness(.74);transform:none;animation:none}
.chapter-wash{position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 68% 44%,rgba(231,177,94,.08),transparent 28rem),linear-gradient(90deg,rgba(3,9,16,.98) 0%,rgba(3,9,16,.84) 44%,rgba(3,9,16,.24) 82%,rgba(3,9,16,.48) 100%),linear-gradient(180deg,rgba(3,9,16,.72),transparent 24%,transparent 68%,rgba(3,9,16,.88))}
.chapter-solid{background:radial-gradient(circle at 78% 14%,rgba(32,67,101,.18),transparent 34rem),linear-gradient(180deg,#06111d,#030910)}
@keyframes slowBreath{from{transform:scale(1.04)}to{transform:scale(1.085)}}

.content-shell,.hero-inner,.split-inner,.repression-inner,.bell-inner,.europe-inner{width:min(calc(100% - clamp(2rem,9vw,10rem)),var(--max));margin:0 auto;position:relative;z-index:2}

.chapter-label{margin:0 0 1.2rem;color:var(--gold-2);font-size:.69rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.022em;text-wrap:balance}
h1{font-size:clamp(4.2rem,8vw,8rem);line-height:.88;margin:.4rem 0 1.1rem;max-width:10ch}
h2{font-size:clamp(3rem,6vw,6.1rem);line-height:.96;margin:.4rem 0 1.3rem;max-width:12ch}
h3{font-size:clamp(1.7rem,3vw,3rem);line-height:1.02}
.lead{font-family:var(--serif);font-size:clamp(1.25rem,2.05vw,1.9rem);line-height:1.45;color:rgba(255,255,255,.83);max-width:34ch}

.button{appearance:none;border:0;min-height:50px;padding:0 1.35rem;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:850;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}
.button:hover,.button:focus-visible{transform:translateY(-2px)}
.button:active{transform:translateY(0) scale(.985)}
.button-primary{background:linear-gradient(180deg,#c43236,#8f181d);color:#fff;box-shadow:0 14px 40px rgba(156,32,35,.25)}
.button-primary:hover,.button-primary:focus-visible{background:linear-gradient(180deg,#da4145,#a51f24)}
.button-outline{border:1px solid var(--gold);background:rgba(3,11,19,.42);color:var(--gold-2)}
.button-outline:hover,.button-outline:focus-visible{background:var(--gold-2);color:#16110c}
.button-gold{background:linear-gradient(180deg,#f2d59b,#c89a52);color:#16110c;border:1px solid #ffe7b8}
.button-quiet{border:1px solid rgba(255,255,255,.18);background:rgba(3,11,19,.36);color:#fff}
.button-quiet:hover,.button-quiet:focus-visible{border-color:var(--gold);color:var(--gold-2)}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold-2);outline-offset:3px}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1)}
.reveal-delay{transition-delay:.12s}
.reveal.is-visible{opacity:1;transform:none}

.hero{display:grid;align-items:end;min-height:100dvh}
.hero .chapter-media{background-position:right center;filter:saturate(.92) contrast(1.08) brightness(.72)}
.hero .chapter-wash{background:radial-gradient(circle at 72% 48%,rgba(255,192,101,.18),transparent 22rem),linear-gradient(90deg,rgba(2,8,14,.96) 0%,rgba(2,8,14,.80) 42%,rgba(2,8,14,.18) 76%,rgba(2,8,14,.58) 100%),linear-gradient(180deg,rgba(2,8,14,.52),transparent 28%,transparent 62%,rgba(2,8,14,.93))}
.memory-canvas{position:absolute;inset:0;z-index:-1;width:100%;height:100%;opacity:.55}
.hero-inner{min-height:calc(100dvh - 132px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:clamp(3rem,8vw,9rem);padding-top:calc(var(--header-h) + 2rem);padding-bottom:8rem}
.hero-copy{position:relative}
.hero-number{font-family:var(--serif);font-size:clamp(9rem,21vw,22rem);line-height:.62;font-weight:700;letter-spacing:-.065em;color:transparent;background:linear-gradient(130deg,#fff1c3 10%,#d3a254 44%,#8a5a26 66%,#f4dbab 88%);background-clip:text;-webkit-background-clip:text;filter:drop-shadow(0 14px 34px rgba(110,61,13,.28));margin-bottom:2rem}
.hero h1{font-size:clamp(3.6rem,6.5vw,7rem);max-width:11ch;margin-top:0}
.hero-lede{font-family:var(--serif);font-size:clamp(1.35rem,2.4vw,2.1rem);color:var(--gold-2);margin:.6rem 0}
.hero-text{max-width:56ch;color:rgba(255,255,255,.7);line-height:1.7}
.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.hero-memorial{position:relative;justify-self:center;width:min(36vw,500px);aspect-ratio:1;display:grid;place-items:center}
.orbit{position:absolute;inset:9%;border:1px solid rgba(242,211,154,.28);border-radius:50%}
.orbit::before,.orbit::after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 18px rgba(242,211,154,.6)}
.orbit::before{left:12%;top:20%}.orbit::after{right:8%;bottom:27%}
.orbit-one{animation:spin 24s linear infinite}.orbit-two{inset:21%;animation:spinBack 17s linear infinite;border-color:rgba(255,255,255,.16)}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes spinBack{to{transform:rotate(-360deg)}}
.memorial-core{width:54%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle,rgba(222,179,104,.18),rgba(4,12,21,.88) 64%);border:1px solid rgba(242,211,154,.5);box-shadow:inset 0 0 60px rgba(223,178,94,.09),0 0 120px rgba(231,165,63,.12);text-align:center}
.memorial-core strong{font-family:var(--serif);font-size:clamp(3.6rem,7vw,6.8rem);line-height:.8;color:var(--gold-2)}
.memorial-core span{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.58);margin-top:.4rem}
.hero-band{position:absolute;left:0;right:0;bottom:0;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);background:rgba(3,10,17,.84);backdrop-filter:blur(18px)}
.hero-band div{padding:1.15rem 1.4rem;text-align:center;border-right:1px solid var(--line-soft)}
.hero-band div:last-child{border-right:0}.hero-band strong{display:block;font-family:var(--serif);font-size:1.3rem;color:var(--gold-2)}.hero-band span{display:block;margin-top:.25rem;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.48)}

.split-inner{min-height:76dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:clamp(3rem,8vw,9rem);align-items:center;padding-top:calc(var(--header-h) + 2rem);padding-bottom:9rem}
.chapter-copy{max-width:720px}.quote-panel{align-self:end;justify-self:end;max-width:440px;margin:0 0 2rem;padding:2rem 2rem 1.7rem;border-left:1px solid var(--gold);background:rgba(4,12,21,.48);backdrop-filter:blur(14px)}
.quote-panel span{font-family:var(--serif);font-size:4rem;line-height:.5;color:var(--gold-2)}.quote-panel p{font-family:var(--serif);font-size:clamp(1.4rem,2.2vw,2rem);line-height:1.35;margin:1rem 0 0}
.timeline{position:absolute;left:clamp(2rem,7vw,7rem);right:clamp(2rem,7vw,7rem);bottom:0;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(4,12,21,.9);border-top:1px solid var(--line);backdrop-filter:blur(16px)}
.timeline article{padding:1.35rem 1.4rem 1.55rem;border-right:1px solid var(--line-soft);min-height:168px}.timeline article:last-child{border-right:0}.timeline time{font:800 .68rem/1 var(--mono);letter-spacing:.08em;color:var(--gold-2)}.timeline strong{display:block;font-family:var(--serif);font-size:1.1rem;margin:.75rem 0 .5rem}.timeline p{font-size:.78rem;line-height:1.55;color:rgba(255,255,255,.54);margin:0}

.repression .chapter-wash{background:linear-gradient(90deg,rgba(4,10,17,.98),rgba(4,10,17,.74) 54%,rgba(26,5,5,.18) 86%),linear-gradient(180deg,rgba(4,10,17,.65),transparent 50%,rgba(4,10,17,.88))}
.repression-inner{min-height:78dvh;display:grid;align-items:center;padding-top:var(--header-h);padding-bottom:8rem}.facts-ribbon{position:absolute;left:clamp(2rem,7vw,7rem);right:clamp(2rem,7vw,7rem);bottom:0;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(4,12,21,.9);border-top:1px solid rgba(215,173,104,.24)}
.facts-ribbon div{padding:1.3rem;text-align:center;border-right:1px solid var(--line-soft)}.facts-ribbon div:last-child{border-right:0}.facts-ribbon strong{display:block;font-family:var(--serif);font-size:clamp(1.8rem,3vw,3rem);color:var(--gold-2)}.facts-ribbon span{font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:rgba(255,255,255,.48)}

.heroes-section{min-height:auto;padding:clamp(7rem,10vw,10rem) 0}
.heroes-atmosphere{position:absolute;right:-8vw;top:0;width:56vw;height:64vh;opacity:.24;pointer-events:none;mask-image:linear-gradient(to left,#000 45%,transparent 100%),linear-gradient(to bottom,#000 50%,transparent 100%);-webkit-mask-image:linear-gradient(to left,#000 45%,transparent 100%)}
.heroes-atmosphere::before{content:"";position:absolute;inset:0;background-image:var(--chapter-image);background-size:contain;background-repeat:no-repeat;background-position:right top;filter:grayscale(.3) saturate(.65) contrast(1.05)}
.section-heading{position:relative;z-index:2;max-width:900px}.section-heading p:last-child{max-width:66ch;color:rgba(255,255,255,.66);line-height:1.7}.section-heading h2{max-width:11ch}
.hero-tools{display:grid;grid-template-columns:minmax(300px,1fr) auto;gap:1rem;margin:2.5rem 0 1rem;position:relative;z-index:2}.search-field{display:flex;align-items:center;gap:.8rem;border:1px solid rgba(215,173,104,.4);background:rgba(4,13,22,.72);min-height:54px;padding:0 1rem}.search-field input{flex:1;border:0;outline:0;background:transparent;color:#fff;font-size:1rem}.search-field input::placeholder{color:rgba(255,255,255,.38)}.search-field>span:not(.sr-only){font-size:1.4rem;color:var(--gold)}
.sort-controls{display:flex;gap:.55rem}.sort-controls button{min-height:54px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);color:rgba(255,255,255,.62);padding:0 1rem;text-transform:uppercase;letter-spacing:.1em;font-size:.67rem;cursor:pointer}.sort-controls button.is-active{border-color:var(--gold);background:var(--gold-soft);color:var(--gold-2)}
.results-status{margin:.4rem 0 1.1rem;color:rgba(255,255,255,.42);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}
.heroes-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:rgba(215,173,104,.15);border:1px solid rgba(215,173,104,.16)}
.hero-card{min-height:168px;position:relative;border:0;background:linear-gradient(150deg,#0a1826,#06111d);text-align:left;padding:1.25rem;color:#fff;cursor:pointer;overflow:hidden;transition:background .2s ease,transform .2s ease}.hero-card::before{content:"";position:absolute;inset:0 auto 0 0;width:1px;background:linear-gradient(var(--gold),transparent 70%)}.hero-card::after{content:"";position:absolute;width:52px;height:52px;border-radius:50%;right:1rem;top:1rem;background:radial-gradient(circle,var(--gold-2) 0 3%,rgba(242,211,154,.16) 10%,transparent 62%);opacity:.55;transition:transform .25s ease,opacity .25s ease}.hero-card:hover,.hero-card:focus-visible{background:#0d1d2e;transform:translateY(-2px);z-index:2}.hero-card:hover::after,.hero-card:focus-visible::after{transform:scale(1.25);opacity:1}.hero-card-index{font:700 .64rem/1 var(--mono);color:rgba(215,173,104,.72)}.hero-card strong{display:block;font-family:var(--serif);font-size:1.05rem;line-height:1.2;margin-top:4rem;padding-right:1rem}.hero-card small{display:block;margin-top:.5rem;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.38)}
.source-note{margin-top:2rem;max-width:900px;padding:1.4rem 1.5rem;border-left:2px solid var(--gold);background:rgba(215,173,104,.055)}.source-note strong{color:var(--gold-2)}.source-note p{line-height:1.65;color:rgba(255,255,255,.64)}.source-note a{color:var(--gold-2);font-size:.82rem;text-decoration:none}.source-note a:hover{text-decoration:underline}

.music-section{min-height:auto;padding:clamp(7rem,10vw,10rem) 0 8rem;background:radial-gradient(circle at 10% 18%,rgba(24,66,103,.24),transparent 34rem),#040c14}
.music-atmosphere{position:absolute;inset:0;opacity:.22;pointer-events:none}.music-atmosphere::before{content:"";position:absolute;inset:0;background-image:var(--chapter-image);background-size:contain;background-repeat:no-repeat;background-position:right top;filter:saturate(.6) contrast(1.12) blur(1px)}.music-atmosphere::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#040c14 0%,rgba(4,12,20,.82) 45%,rgba(4,12,20,.40)),linear-gradient(0deg,#040c14,transparent 44%,rgba(4,12,20,.75))}
.music-shell{position:relative;z-index:2}.music-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:4rem;align-items:end;margin-bottom:2rem}.music-heading p:last-child{color:rgba(255,255,255,.64);line-height:1.7;margin-bottom:1rem;max-width:55ch}.music-heading h2{max-width:12ch}
.album-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(215,173,104,.18);border:1px solid rgba(215,173,104,.22);margin-bottom:1px}.album-tab{min-height:118px;border:0;background:rgba(5,14,24,.76);display:grid;grid-template-columns:88px 1fr;gap:1rem;align-items:center;text-align:left;padding:1rem;cursor:pointer;transition:background .2s ease}.album-tab:hover,.album-tab:focus-visible,.album-tab.is-active{background:rgba(18,33,48,.9)}.album-tab.is-active{box-shadow:inset 0 -2px var(--gold)}.album-tab-art{width:88px;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(215,173,104,.35);overflow:hidden;position:relative;background-size:contain;background-repeat:no-repeat;background-position:center;background-color:#07111c}.album-tab-art::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(3,9,16,.12),rgba(3,9,16,.72))}.album-one{background-image:url('assets/pages/01-accueil.jpg')}.album-two{background-image:url('assets/pages/06-cloche.jpg')}.album-tab-art b{position:relative;z-index:2;font-family:var(--serif);font-size:2rem;color:var(--gold-2)}.album-tab>span:last-child{display:grid;gap:.25rem}.album-tab small{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-2)}.album-tab strong{font-family:var(--serif);font-size:1.25rem;font-weight:400}.album-tab em{font-style:normal;font-size:.72rem;color:rgba(255,255,255,.44)}
.listening-room{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);gap:1px;background:rgba(215,173,104,.14);border:1px solid rgba(215,173,104,.16)}
.player-console{min-width:0;background:rgba(4,12,21,.9);padding:clamp(1.2rem,3vw,2.2rem)}
.record-stage{position:relative;min-height:300px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.06);background:radial-gradient(circle at center,rgba(215,173,104,.08),transparent 32%),linear-gradient(180deg,#071524,#030910)}
.record-halo{position:absolute;width:56%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(215,173,104,.28);box-shadow:0 0 80px rgba(215,173,104,.08),inset 0 0 60px rgba(215,173,104,.05)}
.record{position:relative;z-index:2;width:min(44%,230px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:repeating-radial-gradient(circle at center,#101823 0 2px,#060b10 3px 5px);border:1px solid rgba(255,255,255,.08);box-shadow:0 28px 60px rgba(0,0,0,.52)}.record::before{content:"";position:absolute;inset:35%;border-radius:50%;background:radial-gradient(circle,#07111d 0 18%,#d0a75f 19% 23%,#7b5a2e 24% 100%);border:1px solid rgba(242,211,154,.38)}.record span{position:relative;z-index:2;font-family:var(--serif);font-size:.72rem;color:#f8e5bd}.record.is-playing{animation:recordSpin 8.5s linear infinite}@keyframes recordSpin{to{transform:rotate(360deg)}}
.spectrum{position:absolute;left:0;right:0;bottom:0;width:100%;height:42%;opacity:.72;mix-blend-mode:screen}
.player-topline{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;color:rgba(255,255,255,.45);font:700 .68rem/1 var(--mono)}
.quality-toggle{border:1px solid rgba(215,173,104,.26);background:transparent;color:rgba(255,255,255,.52);padding:.55rem .7rem;font-size:.64rem;cursor:pointer}.quality-toggle.is-active{background:rgba(215,173,104,.1);color:var(--gold-2);border-color:var(--gold)}
.now-playing{margin-top:1.2rem}.now-playing small{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-2)}.now-playing h3{margin:.45rem 0 .35rem;font-size:clamp(2rem,4vw,4rem);max-width:15ch}.now-playing p{color:rgba(255,255,255,.4);font-size:.78rem;margin:0}
.seek-wrap{display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;margin:1.35rem 0;color:rgba(255,255,255,.5);font:600 .68rem/1 var(--mono)}
input[type="range"]{appearance:none;-webkit-appearance:none;height:2px;background:linear-gradient(90deg,var(--gold) var(--progress,0%),rgba(255,255,255,.16) var(--progress,0%));border-radius:0;outline:none}input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--gold-2);border:2px solid #07111d;box-shadow:0 0 0 1px var(--gold)}input[type="range"]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--gold-2);border:2px solid #07111d;box-shadow:0 0 0 1px var(--gold)}
.player-controls{display:grid;grid-template-columns:1fr 1.4fr 1fr 1fr;gap:.55rem}.player-controls button,.volume-row button{min-height:44px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;font-size:.65rem}.player-controls button:hover,.player-controls button:focus-visible,.volume-row button:hover,.volume-row button:focus-visible{border-color:var(--gold);color:var(--gold-2)}.play-control{background:linear-gradient(180deg,#d8b16f,#b48442)!important;color:#17110b;font-weight:900}.player-controls button.is-active{border-color:var(--gold);color:var(--gold-2);background:rgba(215,173,104,.08)}
.volume-row{display:grid;grid-template-columns:auto minmax(120px,220px) 1fr;gap:.8rem;align-items:center;margin-top:.8rem}.volume-row button{padding:0 .8rem}.volume-row span{justify-self:end;color:rgba(255,255,255,.44);font-size:.7rem}.player-integrity{margin:1.3rem 0 0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.07);font-size:.72rem;line-height:1.55;color:rgba(255,255,255,.42)}
.track-list{list-style:none;padding:0;margin:0;background:rgba(4,12,21,.94);max-height:742px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--gold) rgba(255,255,255,.05)}.track-list li{border-bottom:1px solid rgba(255,255,255,.07)}.track-list li:last-child{border-bottom:0}.track-list button{width:100%;min-height:72px;border:0;background:transparent;display:grid;grid-template-columns:2.1rem 1fr auto;align-items:center;gap:.7rem;text-align:left;padding:.8rem 1rem;cursor:pointer;transition:background .18s ease}.track-list button:hover,.track-list button:focus-visible,.track-list li.is-active button{background:rgba(215,173,104,.07)}.track-list span{font:700 .66rem/1 var(--mono);color:var(--gold)}.track-list strong{display:block;font-family:var(--serif);font-size:.98rem;font-weight:400}.track-list small{display:block;margin-top:.25rem;color:rgba(255,255,255,.34);font-size:.62rem}.track-list time{font:600 .68rem/1 var(--mono);color:rgba(255,255,255,.42)}.track-list li.is-active{box-shadow:inset 2px 0 var(--gold)}
.album-two-panel{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,6vw,6rem);min-height:520px;padding:clamp(1.5rem,4vw,4rem);background:rgba(4,12,21,.9);border:1px solid rgba(215,173,104,.16)}.album-two-cover{aspect-ratio:1;display:grid;place-items:center;align-content:center;background-color:#07111c;background-image:linear-gradient(135deg,rgba(4,12,21,.38),rgba(4,12,21,.84)),url('assets/pages/06-cloche.jpg');background-position:center;background-size:contain;background-repeat:no-repeat;border:1px solid rgba(215,173,104,.28);box-shadow:var(--shadow)}.album-two-cover span{font-size:.66rem;letter-spacing:.18em;color:var(--gold-2)}.album-two-cover strong{font-family:var(--serif);font-size:clamp(5rem,10vw,9rem);line-height:.85}.album-two-panel h3{max-width:15ch}.album-two-panel p{max-width:58ch;line-height:1.7;color:rgba(255,255,255,.64)}

.bell-section .chapter-media{background-position:right center;filter:saturate(.8) contrast(1.1) brightness(.82)}.bell-section .chapter-wash{background:linear-gradient(90deg,rgba(3,9,16,.98),rgba(3,9,16,.88) 46%,rgba(3,9,16,.20) 80%),linear-gradient(0deg,rgba(3,9,16,.78),transparent 35%)}
.bell-inner{min-height:88dvh;display:grid;align-items:center;padding-top:var(--header-h);padding-bottom:8rem}.bell-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.ring-counter{display:flex;gap:.6rem;align-items:baseline;margin-top:1.2rem}.ring-counter strong{font-family:var(--serif);font-size:2.7rem;color:var(--gold-2)}.ring-counter span{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.bell-ripple{position:absolute;right:11vw;top:50%;width:44vw;max-width:680px;aspect-ratio:1;transform:translateY(-50%);pointer-events:none;z-index:1}.bell-ripple span{position:absolute;inset:50%;border:1px solid rgba(242,211,154,.28);border-radius:50%;opacity:0}.bell-ripple.is-ringing span{animation:bellWave 2.8s cubic-bezier(.18,.75,.2,1) forwards}.bell-ripple.is-ringing span:nth-child(2){animation-delay:.18s}.bell-ripple.is-ringing span:nth-child(3){animation-delay:.36s}@keyframes bellWave{0%{inset:48%;opacity:.8}100%{inset:0;opacity:0}}
.ritual-strip{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(3,9,16,.86);border-top:1px solid var(--line);backdrop-filter:blur(14px)}.ritual-strip div{padding:1.15rem;text-align:center;border-right:1px solid var(--line-soft)}.ritual-strip div:last-child{border-right:0}.ritual-strip strong{display:block;font-family:var(--serif);font-size:1.35rem;color:var(--gold-2)}.ritual-strip span{display:block;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.44)}

.europe-section .chapter-media{background-position:right center;filter:saturate(.98) contrast(1.05) brightness(.78)}.europe-section .chapter-wash{background:linear-gradient(90deg,rgba(3,9,16,.97),rgba(3,9,16,.75) 54%,rgba(3,9,16,.24) 84%),linear-gradient(180deg,rgba(3,9,16,.55),transparent 50%,rgba(3,9,16,.86))}.europe-inner{min-height:100dvh;display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,1fr);align-items:center;gap:5rem;padding-top:var(--header-h);padding-bottom:5rem}.europe-route{display:flex;align-items:center;justify-content:center;gap:.7rem;flex-wrap:wrap;align-self:end;margin-bottom:5rem}.europe-route span{min-width:104px;padding:.8rem 1rem;text-align:center;border:1px solid rgba(215,173,104,.4);background:rgba(3,11,19,.6);font-family:var(--serif);color:var(--gold-2)}.europe-route i{width:32px;height:1px;background:linear-gradient(90deg,var(--gold),rgba(215,173,104,.2));position:relative}.europe-route i::after{content:"";position:absolute;right:-1px;top:-2px;width:5px;height:5px;border-radius:50%;background:var(--gold)}

.project-section{min-height:100dvh;padding:7rem 0;background:linear-gradient(180deg,#06111d,#030910)}.project-atmosphere{position:absolute;right:0;top:0;width:60vw;height:100%;opacity:.48;pointer-events:none}.project-atmosphere::before{content:"";position:absolute;inset:0;background-image:var(--chapter-image);background-size:contain;background-repeat:no-repeat;background-position:right center;filter:saturate(.7) contrast(1.07)}.project-atmosphere::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#06111d 0%,rgba(6,17,29,.9) 18%,rgba(6,17,29,.18) 60%),linear-gradient(0deg,#030910,transparent 35%,rgba(6,17,29,.65))}.project-shell{display:grid;grid-template-columns:minmax(0,.8fr) minmax(420px,.9fr);gap:clamp(3rem,7vw,8rem);align-items:center;min-height:calc(100dvh - 14rem)}.project-copy{position:relative;z-index:2}.ritual-card{position:relative;z-index:2;background:rgba(4,12,21,.86);border:1px solid rgba(215,173,104,.35);padding:clamp(1.4rem,3vw,2.6rem);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.ritual-head span{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2)}.ritual-head h3{margin:.5rem 0 1rem}.ritual-display{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1.2rem;margin:1.2rem 0}.ritual-display>strong{font-family:var(--serif);font-size:clamp(6rem,12vw,10rem);line-height:.8;color:var(--gold-2);font-variant-numeric:tabular-nums}.ritual-display>div{display:grid;gap:.7rem}.ritual-display time{font:600 clamp(1.6rem,3vw,2.6rem)/1 var(--mono);font-variant-numeric:tabular-nums}.ritual-display span{min-height:3em;font-family:var(--serif);font-size:1.15rem;color:rgba(255,255,255,.66)}.ritual-actions{display:flex;flex-wrap:wrap;gap:.7rem}.ritual-card>p{font-size:.74rem;line-height:1.55;color:rgba(255,255,255,.42);margin:1.2rem 0 0}

.manifesto-section{position:relative;padding:clamp(7rem,11vw,11rem) clamp(1rem,7vw,7rem);background:radial-gradient(circle at 82% 10%,rgba(170,104,37,.12),transparent 30rem),radial-gradient(circle at 17% 28%,rgba(28,68,105,.18),transparent 34rem),#040c14;border-top:1px solid var(--line)}
.manifesto-intro{width:min(100%,1100px);margin:0 auto 4rem}.manifesto-intro h2{max-width:15ch}.manifesto-deck{font-family:var(--serif);font-size:clamp(1.3rem,2.2vw,2rem);color:var(--gold-2);margin:.8rem 0}.manifesto-body{width:min(100%,940px);margin:0 auto;font-family:var(--serif);font-size:clamp(1.08rem,1.55vw,1.3rem);line-height:1.78;color:rgba(255,255,255,.82)}.manifesto-body>p{max-width:72ch}.manifesto-body>p:first-child{font-size:clamp(1.6rem,2.4vw,2.35rem);line-height:1.45;color:var(--gold-2)}.manifesto-body h3{margin:4rem 0 1.15rem;color:#fff}.manifesto-body strong{color:#fff}.manifesto-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(215,173,104,.16);border:1px solid rgba(215,173,104,.16);margin:2rem 0 3rem}.manifesto-points>div{background:#07131f;padding:1.5rem}.manifesto-points span{font:700 .72rem/1 var(--mono);color:var(--gold)}.manifesto-points p{font-size:1rem;line-height:1.65;margin:.8rem 0 0}.manifesto-closing{margin-top:4rem!important;padding:2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:clamp(1.35rem,2vw,1.8rem);color:var(--gold-2)}.signature-block{display:grid;gap:.6rem;margin-top:2.2rem;padding-top:2rem}.signature-block strong{font-size:1.8rem;font-weight:400}.signature-block span{font-family:var(--sans);font-size:.82rem;line-height:1.55;color:rgba(255,255,255,.54);max-width:76ch}

.site-footer{padding:3rem clamp(1rem,7vw,7rem) 4rem;background:#02070c;border-top:1px solid rgba(255,255,255,.06);display:grid;grid-template-columns:1fr auto;gap:2rem;color:rgba(255,255,255,.48)}.footer-brand{display:grid;gap:.3rem}.footer-brand strong{font-family:var(--serif);font-size:1.2rem;color:#fff;letter-spacing:.06em}.footer-brand span{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.footer-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:flex-end}.footer-links a{text-decoration:none;font-size:.78rem}.footer-links a:hover{text-decoration:underline;color:var(--gold-2)}.site-footer>p{grid-column:1/-1;max-width:95ch;font-size:.68rem;line-height:1.55;margin:0}

.hero-dialog{width:min(calc(100% - 2rem),620px);border:1px solid rgba(215,173,104,.4);background:linear-gradient(160deg,#0a1826,#040c14);color:#fff;padding:clamp(1.5rem,4vw,3rem);box-shadow:0 40px 120px #000}.hero-dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(10px)}.dialog-close{float:right;border:1px solid rgba(255,255,255,.16);background:transparent;min-height:38px;padding:0 .8rem;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;font-size:.62rem}.dialog-light{width:90px;aspect-ratio:1;border-radius:50%;margin:2rem auto 1.5rem;background:radial-gradient(circle,var(--gold-2) 0 3%,rgba(242,211,154,.14) 16%,transparent 64%);box-shadow:0 0 70px rgba(215,173,104,.08)}.hero-dialog>span{display:block;text-align:center;color:var(--gold);font:700 .72rem/1 var(--mono)}.hero-dialog h2{text-align:center;max-width:none;font-size:clamp(2.4rem,6vw,4.6rem);margin:.7rem 0}.hero-dialog>p{text-align:center;color:rgba(255,255,255,.48);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem}.hero-dialog blockquote{margin:2rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);text-align:center;font-family:var(--serif);font-size:1.25rem;color:var(--gold-2)}

.silence-overlay{position:fixed;inset:0;z-index:990;background:radial-gradient(circle at center,rgba(215,173,104,.05),transparent 30rem),rgba(2,7,12,.97);display:grid;place-items:center;padding:1rem}.silence-overlay[hidden]{display:none}.silence-inner{text-align:center;max-width:760px}.silence-inner>span{display:block;color:var(--gold-2);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}.silence-inner strong{display:block;font:500 clamp(6rem,20vw,15rem)/.9 var(--serif);font-variant-numeric:tabular-nums;margin:1rem 0;color:#fff}.silence-inner p{font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.8rem);color:rgba(255,255,255,.64)}.silence-inner .button{margin-top:1.5rem}

@media(max-width:1180px){
  .main-nav{gap:.8rem}.main-nav a{font-size:.65rem}.hero-inner{grid-template-columns:1fr .7fr}.heroes-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.listening-room{grid-template-columns:minmax(0,1fr) minmax(320px,.75fr)}
}

@media(max-width:960px){
  :root{--header-h:64px}.site-header{grid-template-columns:auto auto 1fr;padding:0 1rem}.header-cta{justify-self:end}.menu-toggle{display:grid;width:44px;height:44px;border:0;background:transparent;place-content:center;gap:4px;cursor:pointer}.menu-toggle span:not(.sr-only){width:22px;height:1px;background:#fff;display:block}.main-nav{position:absolute;top:64px;left:1rem;right:1rem;display:none;grid-template-columns:1fr 1fr;gap:0;background:rgba(3,9,16,.96);border:1px solid var(--line);backdrop-filter:blur(18px);padding:.4rem}.main-nav.is-open{display:grid}.main-nav a{padding:.9rem;border-bottom:1px solid rgba(255,255,255,.06)}.main-nav a::after{display:none}.chapter-rail{left:50%;top:auto;bottom:.55rem;transform:translateX(-50%);display:flex;gap:.1rem;background:rgba(3,9,16,.78);padding:.3rem;border:1px solid var(--line-soft);backdrop-filter:blur(15px);border-radius:999px}.chapter-rail a{display:block;min-height:0}.chapter-rail a small{display:none}.chapter-rail span{width:30px;height:30px;border:0;background:transparent;font-size:.56rem}.chapter-rail a.is-active span{background:var(--gold-2)}
  .hero-inner,.split-inner,.europe-inner,.project-shell,.music-heading{grid-template-columns:1fr}.hero-inner{padding-top:7rem;padding-bottom:9rem}.hero-memorial{position:absolute;right:-12vw;top:18%;width:48vw;opacity:.64}.hero-copy{z-index:2}.hero-number{font-size:clamp(8rem,25vw,15rem)}.split-inner{padding-bottom:13rem}.quote-panel{display:none}.timeline{left:1rem;right:1rem;grid-template-columns:repeat(2,1fr)}.timeline article{min-height:130px}.facts-ribbon{left:1rem;right:1rem;grid-template-columns:repeat(2,1fr)}.repression-inner{padding-bottom:12rem}.heroes-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-tools{grid-template-columns:1fr}.sort-controls{justify-content:flex-start}.music-heading{gap:1rem}.music-heading p:last-child{max-width:70ch}.listening-room{grid-template-columns:1fr}.track-list{max-height:560px}.album-two-panel{grid-template-columns:1fr}.album-two-cover{max-width:520px;width:100%;justify-self:center}.project-shell{gap:2rem}.project-atmosphere{width:100%;opacity:.26}.ritual-card{max-width:720px}.europe-inner{padding-bottom:8rem}.europe-route{justify-content:flex-start;margin-bottom:0}.site-footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start}
}

@media(max-width:680px){
  .header-cta{display:none}.brand-name{font-size:.8rem}.content-shell,.hero-inner,.split-inner,.repression-inner,.bell-inner,.europe-inner{width:min(calc(100% - 2rem),var(--max))}
  h1{font-size:clamp(3.1rem,14vw,5.2rem)}h2{font-size:clamp(2.7rem,12vw,4.3rem)}.lead{font-size:1.18rem}.chapter-label{font-size:.62rem}
  .hero-inner{display:block;padding-top:7rem}.hero-number{font-size:clamp(7.5rem,38vw,12rem);margin-top:2rem}.hero-memorial{right:-25vw;top:23%;width:75vw;opacity:.35}.hero-actions{display:grid;grid-template-columns:1fr}.hero-band{grid-template-columns:repeat(2,1fr)}.hero-band div{padding:.8rem}.hero-band strong{font-size:1.05rem}.hero-band span{font-size:.55rem}
  .split-inner{min-height:100dvh;align-items:start;padding-top:7rem;padding-bottom:20rem}.timeline{grid-template-columns:1fr 1fr}.timeline article{padding:1rem;min-height:128px}.timeline strong{font-size:.95rem}.timeline p{font-size:.68rem}.repression-inner{align-items:start;padding-top:8rem;padding-bottom:18rem}.facts-ribbon{grid-template-columns:1fr 1fr}.facts-ribbon div{padding:.8rem}.facts-ribbon strong{font-size:1.6rem}.facts-ribbon span{font-size:.56rem}
  .heroes-section,.music-section{padding-top:6rem}.heroes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-card{min-height:150px;padding:1rem}.hero-card strong{font-size:.93rem;margin-top:3.7rem}.sort-controls{display:grid;grid-template-columns:1fr 1fr}.sort-controls button{padding:.5rem;min-height:48px}
  .album-switcher{grid-template-columns:1fr}.album-tab{min-height:98px;grid-template-columns:72px 1fr}.album-tab-art{width:72px}.player-console{padding:1rem}.record-stage{min-height:250px}.record{width:46%}.player-topline{align-items:flex-start;flex-direction:column}.now-playing h3{font-size:2.15rem}.player-controls{grid-template-columns:1fr 1fr}.volume-row{grid-template-columns:auto 1fr}.volume-row span{grid-column:1/-1;justify-self:start}.track-list button{min-height:66px;grid-template-columns:1.8rem 1fr auto}.track-list strong{font-size:.9rem}
  .bell-inner{align-items:start;padding-top:7.5rem;padding-bottom:10rem}.bell-ripple{right:-30vw;width:90vw;opacity:.5}.ritual-strip{grid-template-columns:repeat(2,1fr)}.europe-inner{align-items:start;padding-top:7.5rem}.europe-route{display:grid;grid-template-columns:1fr auto 1fr;gap:.5rem}.europe-route i{width:20px}.project-section{padding-top:6rem}.ritual-display>strong{font-size:7rem}.ritual-actions{display:grid;grid-template-columns:1fr}.manifesto-points{grid-template-columns:1fr}.site-footer{padding-bottom:5.5rem}.hero-dialog{padding:1.2rem}
}

@media(max-width:430px){
  .main-nav{grid-template-columns:1fr}.timeline article p{display:none}.heroes-grid{grid-template-columns:1fr 1fr}.hero-card{min-height:140px}.hero-card strong{font-size:.86rem}.hero-card small{font-size:.54rem}.europe-route{grid-template-columns:1fr}.europe-route i{height:24px;width:1px;justify-self:center;background:linear-gradient(var(--gold),rgba(215,173,104,.2))}.album-two-panel{padding:1rem}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.chapter-media,.orbit,.record.is-playing,.reveal{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.scroll-progress{display:none}
}

/* =========================================================
   HISTORY MAIDAN V12 - REFERENCE-FRAME MODE
   Visual invariant: the eight supplied page artworks are NEVER
   cropped, covered, zoomed, scaled on hover, filtered, or panned.
   ========================================================= */
:root{
  --v12-bg:#02070d;
  --v12-panel:#06111d;
  --v12-gold:#d7ad68;
  --v12-gold-soft:#f2d39a;
  --v12-red:#aa1824;
  --v12-ink:#f7f0e6;
  --v12-muted:#9aa7b4;
}
html{scroll-snap-type:y proximity;background:var(--v12-bg)}
body{background:
  radial-gradient(circle at 50% 0%,rgba(24,63,96,.18),transparent 38rem),
  linear-gradient(180deg,#030a12 0%,#02070d 44%,#010409 100%);
  color:var(--v12-ink);overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.22;background-image:radial-gradient(rgba(215,173,104,.12) .55px,transparent .55px);background-size:4px 4px}

.v12-skip{position:fixed;left:1rem;top:1rem;z-index:2000;transform:translateY(-150%);background:#fff;color:#07101a;padding:.65rem .9rem;border-radius:.25rem;font-weight:700}
.v12-skip:focus{transform:none}

.v12-version{position:fixed;right:14px;bottom:14px;z-index:700;padding:.48rem .62rem;border:1px solid rgba(215,173,104,.4);background:rgba(3,10,17,.82);backdrop-filter:blur(12px);font:700 .62rem/1 var(--mono);letter-spacing:.14em;color:var(--v12-gold-soft);pointer-events:none}

.poster-stack{display:grid;gap:clamp(1rem,2.4vw,2.5rem);padding:clamp(.7rem,1.8vw,1.5rem) 0 3rem}
.poster-page{min-height:100dvh;display:grid;place-items:center;padding:clamp(.5rem,1vw,1rem);scroll-snap-align:start;scroll-margin-top:1rem;position:relative}
.poster-page::before{content:"";position:absolute;inset:5% 8%;background:radial-gradient(circle,rgba(25,64,98,.16),transparent 62%);filter:blur(40px);pointer-events:none}

/* The frame dimensions are the rendered image dimensions. This makes every
   hotspot percentage track the exact, uncropped artwork. */
.poster-frame{position:relative;display:inline-block;line-height:0;max-width:100%;filter:drop-shadow(0 28px 72px rgba(0,12,24,.48));}
.poster-image{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 1.2rem);margin:0 auto;object-fit:contain!important;object-position:center!important;transform:none!important;scale:1!important;transition:none!important;animation:none!important;filter:none!important;clip-path:none!important;}
.poster-frame:hover .poster-image,.poster-frame:focus-within .poster-image{transform:none!important;scale:1!important;filter:none!important}

/* Invisible, accessible click-map over the artwork. No visual layer alters it. */
.hotspot{position:absolute;z-index:5;border:0;background:transparent;color:transparent;cursor:pointer;line-height:1;overflow:hidden;white-space:nowrap;text-indent:-9999px;border-radius:.3rem;outline-offset:2px;box-shadow:none!important;transform:none!important;transition:box-shadow .16s ease!important}
.hotspot:focus-visible{outline:2px solid var(--v12-gold-soft);outline-offset:2px;box-shadow:0 0 0 4px rgba(215,173,104,.2)!important}
.hotspot:hover{box-shadow:inset 0 0 0 1px rgba(242,211,154,.22)!important}

.poster-nav{position:absolute;z-index:6;left:17.5%;right:14.5%;top:8.1%;height:4.8%;display:grid;grid-template-columns:1fr 1.25fr .85fr .8fr .9fr .85fr .75fr 1fr;gap:.2%;pointer-events:none}
.poster-nav a{pointer-events:auto;display:block;color:transparent;text-indent:-9999px;border-radius:.2rem;outline-offset:2px}
.poster-nav a:focus-visible{outline:2px solid var(--v12-gold-soft)}
.poster-support{right:1.6%;top:8.0%;width:11.8%;height:4.4%}

/* Page-specific interaction maps, expressed in percentages of each exact artwork. */
.page-01 .cta-primary{left:8.6%;top:70.2%;width:35.3%;height:7.1%}
.page-01 .cta-secondary{left:46.0%;top:70.3%;width:28.5%;height:7.1%}
.page-02 .cta-primary{left:4.3%;top:43.0%;width:45.3%;height:6.0%}
.page-03 .cta-primary{left:4.0%;top:48.0%;width:40.3%;height:5.8%}
.page-04 .cta-search{left:4.6%;top:31.0%;width:69.0%;height:5.8%}
.page-04 .cta-all{left:25.2%;top:82.6%;width:49.2%;height:5.8%}
.page-05 .cta-play{left:27.1%;top:61.4%;width:9.8%;height:7.5%;border-radius:50%}
.page-05 .cta-list{left:60.7%;top:30.8%;width:36.0%;height:43.6%}
.page-05 .cta-primary{left:53.0%;top:76.7%;width:43.5%;height:5.6%}
.page-06 .cta-ring{left:4.2%;top:49.4%;width:40.8%;height:7.1%}
.page-06 .cta-silence{left:4.8%;top:58.4%;width:39.0%;height:5.9%}
.page-07 .cta-primary{left:4.9%;top:51.0%;width:39.0%;height:6.1%}
.page-08 .cta-primary{left:5.6%;top:39.8%;width:39.0%;height:5.8%}
.page-08 .cta-ritual{left:28.1%;top:73.8%;width:35.5%;height:5.3%}
.page-08 .cta-manifesto{left:68.0%;top:58.2%;width:24.8%;height:4.6%}
.page-08 .cta-names{left:68.0%;top:72.8%;width:24.8%;height:4.5%}

.poster-a11y{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Auxiliary experiences open on demand so the reference pages remain visually untouched. */
.v12-dialog{width:min(1180px,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);padding:0;border:1px solid rgba(215,173,104,.42);background:#05101b;color:#fff;box-shadow:0 36px 120px rgba(0,0,0,.66);overflow:auto}
.v12-dialog::backdrop{background:rgba(1,5,9,.84);backdrop-filter:blur(8px)}
.v12-dialog-head{position:sticky;top:0;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;background:rgba(5,16,27,.94);border-bottom:1px solid rgba(215,173,104,.25);backdrop-filter:blur(14px)}
.v12-dialog-head strong{font-family:var(--serif);font-size:clamp(1.35rem,2.5vw,2rem);font-weight:400}
.v12-dialog-close{min-width:44px;min-height:44px;border:1px solid rgba(215,173,104,.45);background:transparent;color:#fff;font:700 .72rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.v12-dialog-body{padding:clamp(1rem,3vw,2.2rem)}
.v12-dialog .content-shell,.v12-dialog .music-shell{width:100%;max-width:none;margin:0;padding:0}

/* Heroes directory keeps the factual name-first approach. The generated faces in
   the reference artwork are not reused as factual portraits. */
.v12-heroes-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;margin-bottom:1rem}
.v12-heroes-tools .search-field{margin:0}
.v12-heroes-note{margin:0 0 1.2rem;color:rgba(255,255,255,.6);max-width:70ch;line-height:1.65}
.v12-dialog .heroes-grid{grid-template-columns:repeat(4,minmax(0,1fr))}

/* Music room: preserve source audio, with a visually richer but technically honest player. */
.v12-dialog .music-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:2rem;align-items:end;margin-bottom:1.4rem}
.v12-dialog .music-heading p{max-width:54ch}
.v12-dialog .player-console{background:
  radial-gradient(circle at 24% 16%,rgba(215,173,104,.08),transparent 34%),
  linear-gradient(145deg,rgba(9,25,40,.97),rgba(3,10,18,.98));
  border-color:rgba(215,173,104,.38)}
.v12-dialog .record-stage{min-height:300px;background:linear-gradient(180deg,rgba(8,19,30,.72),rgba(3,9,16,.42))}
.v12-dialog .record{box-shadow:0 26px 70px rgba(0,0,0,.48),inset 0 0 0 1px rgba(255,255,255,.08)}
.v12-dialog .spectrum{opacity:.9}
.v12-dialog .play-control{background:var(--v12-gold-soft);color:#08111b;border-color:var(--v12-gold-soft)}
.v12-dialog .track-list button{min-height:60px}

/* Cloche des 107: four descriptive artworks integrated without crop or zoom. */
.bell-vision{padding:clamp(4.5rem,8vw,8rem) 1rem;scroll-margin-top:1rem;background:
  radial-gradient(circle at 18% 8%,rgba(35,79,116,.18),transparent 34rem),
  radial-gradient(circle at 82% 92%,rgba(215,173,104,.10),transparent 28rem),
  linear-gradient(180deg,#02070d 0%,#06111d 52%,#02070d 100%);
  border-top:1px solid rgba(215,173,104,.16);border-bottom:1px solid rgba(215,173,104,.16)}
.bell-vision-shell{width:min(1260px,100%);margin:0 auto}
.bell-vision-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.58fr);gap:clamp(1.2rem,4vw,4rem);align-items:end;margin:0 0 clamp(2rem,5vw,4rem)}
.bell-vision-kicker{grid-column:1/-1;margin:0;color:var(--v12-gold-soft);font:700 .72rem/1 var(--mono);letter-spacing:.24em}
.bell-vision-header h2{margin:0;font-family:var(--serif);font-size:clamp(2.8rem,7vw,6.3rem);font-weight:400;line-height:.94;letter-spacing:-.025em;text-wrap:balance}
.bell-vision-header>p:last-child{margin:0;max-width:48ch;color:rgba(255,255,255,.66);font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.75}
.bell-vision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2.2vw,2rem);align-items:start}
.bell-visual{margin:0;padding:0;border:1px solid rgba(215,173,104,.28);background:linear-gradient(180deg,rgba(10,26,42,.78),rgba(3,10,17,.96));box-shadow:0 28px 80px rgba(0,0,0,.28);overflow:visible}
.bell-visual-image{display:block;width:100%;height:auto;max-width:100%;object-fit:contain!important;object-position:center!important;transform:none!important;scale:1!important;transition:none!important;animation:none!important;filter:none!important;clip-path:none!important}
.bell-visual:hover .bell-visual-image,.bell-visual:focus-within .bell-visual-image{transform:none!important;scale:1!important;filter:none!important}
.bell-visual figcaption{display:grid;grid-template-columns:auto 1fr;column-gap:.85rem;row-gap:.2rem;align-items:baseline;padding:1rem 1.1rem 1.15rem;border-top:1px solid rgba(215,173,104,.2);background:#05101b}
.bell-visual figcaption span{grid-row:1/3;color:var(--v12-gold-soft);font:700 .72rem/1 var(--mono);letter-spacing:.12em}
.bell-visual figcaption strong{font-family:var(--serif);font-size:clamp(1.15rem,2vw,1.55rem);font-weight:400;color:#fff}
.bell-visual figcaption small{font-size:.9rem;line-height:1.45;color:rgba(255,255,255,.54)}
.bell-vision-actions{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;margin-top:clamp(2rem,5vw,4rem)}

@media (max-width:820px){
  .bell-vision{padding:3.5rem .7rem}
  .bell-vision-header{grid-template-columns:1fr}
  .bell-vision-kicker{grid-column:auto}
  .bell-vision-grid{grid-template-columns:1fr}
}

/* Project / manifesto after the eight reference pages. */
.v12-manifesto{padding:clamp(5rem,8vw,9rem) max(1rem,calc((100vw - 920px)/2));background:linear-gradient(180deg,#02070d,#06111d 32%,#030911)}
.v12-manifesto h2{font-family:var(--serif);font-size:clamp(3rem,8vw,6.6rem);font-weight:400;line-height:.95;margin:0 0 1rem}
.v12-manifesto .manifesto-deck{color:var(--v12-gold-soft);font-family:var(--serif);font-size:clamp(1.3rem,2.5vw,1.9rem)}
.v12-manifesto .manifesto-body{max-width:760px;margin:3rem auto 0}
.v12-manifesto .manifesto-body>p{font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.9;color:rgba(255,255,255,.82)}
.v12-manifesto .manifesto-body h3{margin-top:3rem;font-family:var(--serif);font-size:clamp(1.8rem,3.4vw,2.7rem);font-weight:400;color:#fff}
.v12-manifesto .manifesto-points{display:grid;gap:1px;background:rgba(215,173,104,.22);margin:2rem 0}
.v12-manifesto .manifesto-points>div{display:grid;grid-template-columns:56px 1fr;gap:1rem;padding:1.2rem;background:#06111d}
.v12-manifesto .manifesto-points span{color:var(--v12-gold-soft);font:700 .78rem/1 var(--mono)}
.v12-manifesto .manifesto-points p{margin:0;line-height:1.75;color:rgba(255,255,255,.72)}

.v12-support{padding:4rem max(1rem,calc((100vw - 920px)/2));background:#02070d;border-top:1px solid rgba(215,173,104,.2)}
.v12-support-inner{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}
.v12-support h2{font-family:var(--serif);font-size:clamp(2rem,4vw,3.6rem);font-weight:400;margin:0 0 .7rem}
.v12-support p{margin:0;color:rgba(255,255,255,.62);max-width:58ch;line-height:1.6}

/* Small fixed audio dock appears only while music is playing. */
.audio-dock{position:fixed;left:50%;bottom:1rem;z-index:800;transform:translateX(-50%);width:min(760px,calc(100vw - 1.2rem));display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;padding:.75rem 1rem;border:1px solid rgba(215,173,104,.38);background:rgba(4,13,22,.94);backdrop-filter:blur(18px);box-shadow:0 20px 70px rgba(0,0,0,.45)}
.audio-dock[hidden]{display:none}.audio-dock strong{font-family:var(--serif);font-weight:400}.audio-dock small{display:block;color:rgba(255,255,255,.48);margin-top:.15rem}.audio-dock button{width:44px;height:44px;border:1px solid rgba(215,173,104,.45);background:transparent;color:#fff;cursor:pointer}

/* Hard no-zoom safety net. Applies to every supplied page image, at every viewport. */
@media (hover:hover){
  .poster-frame:hover,.poster-frame:hover .poster-image{transform:none!important}
}
@media (max-width:900px){
  html{scroll-snap-type:none}
  .poster-page{min-height:auto;padding:.35rem 0}
  .poster-image{max-height:none;width:100%;height:auto}
  .poster-nav{top:8%;left:16%;right:10%;height:44px}
  .poster-support{height:44px}
  .v12-dialog .heroes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v12-dialog .music-heading{grid-template-columns:1fr}
  .v12-support-inner{grid-template-columns:1fr}
}
@media (max-width:560px){
  .poster-stack{gap:.45rem;padding:.35rem 0 2rem}
  .poster-page{padding:0}
  .poster-frame{width:100%;filter:none}
  .poster-image{width:100%;max-width:100%;height:auto}
  .poster-nav{left:14%;right:8%;top:7.4%;height:42px}
  .poster-nav a{min-width:22px}
  .poster-support{top:7.4%;right:.5%;width:13%;height:42px}
  .v12-dialog{width:100vw;max-height:100dvh;border-left:0;border-right:0}
  .v12-dialog .heroes-grid{grid-template-columns:1fr}
  .v12-heroes-tools{grid-template-columns:1fr}
  .audio-dock{bottom:.35rem}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;scroll-snap-type:none}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .poster-image{transform:none!important}
}
