  .chapterHero{
      padding: 64px 0 36px;
      text-align:center;
    }
    .chapterHero__kicker{
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding: 10px 14px;
      border-radius: 999px;
      border: 1px solid rgba(255,170,95,.18);
      background: rgba(10,8,7,.42);
      backdrop-filter: blur(10px);
      box-shadow: 0 18px 60px rgba(0,0,0,.35);
      font-weight: 800;
      font-size: 12px;
      letter-spacing:.14em;
      text-transform: uppercase;
    }
    .chapterHero h1{
      margin: 18px 0 6px;
      font-family: Cinzel, serif;
      letter-spacing:.10em;
      font-size: clamp(30px, 4.2vw, 52px);
      text-shadow: 0 20px 70px rgba(0,0,0,.6);
    }
    .chapterHero .sub{
      margin: 0;
      color: rgba(243,194,126,.92);
      font-family: Cinzel, serif;
      letter-spacing:.30em;
      font-weight: 600;
      text-transform: uppercase;
      font-size: 14px;
    }
    .chapterHero__lead{
      max-width: 980px;
      margin: 14px auto 0;
      color: var(--muted);
      line-height: 1.8;
      font-size: 16px;
    }
    .chapterHero__media{
      margin: 24px auto 0;
      width: min(1120px, 100%);
      border-radius: var(--radius2);
      overflow: hidden;
      border: 1px solid rgba(255,170,95,.18);
      background: rgba(10,8,7,.55);
      box-shadow: var(--shadow);
    }
    .chapterHero__media img{
      display:block;
      width: 100%;
      height: auto;
    }

    .reader{
      padding: 28px 0 70px;
    }
    .readerGrid{
      display:grid;
      grid-template-columns: 320px minmax(0,1fr);
      gap: 18px;
      align-items:start;
    }
    .toc{
      position: sticky;
      top: 88px; /* below sticky topbar */
      border-radius: var(--radius2);
      border: 1px solid rgba(255,170,95,.16);
      background: rgba(10,8,7,.60);
      backdrop-filter: blur(10px);
      box-shadow: 0 18px 60px rgba(0,0,0,.35);
      padding: 14px 14px 12px;
    }
    .toc__title{
      font-family: Cinzel, serif;
      letter-spacing:.10em;
      margin: 0 0 8px;
      font-size: 14px;
      color: rgba(243,194,126,.95);
      text-transform: uppercase;
    }
    .toc a{
      display:block;
      padding: 10px 10px;
      border-radius: 14px;
      color: rgba(246,234,215,.88);
      text-decoration:none;
      font-weight: 700;
      letter-spacing:.02em;
      font-size: 13px;
      border: 1px solid transparent;
      transition: .2s ease;
      line-height: 1.35;
    }
    .toc a small{
      display:block;
      margin-top: 3px;
      color: rgba(246,234,215,.62);
      font-weight: 600;
      letter-spacing: .04em;
      font-size: 12px;
    }
    .toc a:hover{
      background: rgba(255,170,95,.10);
      border-color: rgba(255,170,95,.16);
    }
    .toc__nav{
      margin-top: 12px;
      display:flex;
      gap:10px;
      flex-wrap: wrap;
    }
    .toc__nav .btn{
      height: 40px;
      padding: 10px 14px;
      font-size: 12px;
    }

    .prose{
      border-radius: var(--radius2);
      border: 1px solid rgba(255,170,95,.16);
      background: rgba(10,8,7,.58);
      backdrop-filter: blur(10px);
      box-shadow: var(--shadow);
      padding: 18px;
    }
    .prose h2{
      font-family: Cinzel, serif;
      letter-spacing:.08em;
      font-size: 22px;
      margin: 0 0 10px;
    }
    .prose h3{
      font-family: Cinzel, serif;
      letter-spacing:.06em;
      font-size: 18px;
      margin: 22px 0 8px;
    }
    .prose p{
      margin: 0 0 12px;
      color: var(--muted);
      line-height: 1.85;
      font-size: 16px;
    }
    .prose p strong{ color: rgba(243,194,126,.96); }
    .prose .rule{
      margin: 18px 0;
      height: 1px;
      background: linear-gradient(to right, rgba(255,170,95,0), rgba(255,170,95,.20), rgba(255,170,95,0));
    }
    .pull{
      margin: 16px 0 18px;
      padding: 14px 14px;
      border-radius: 16px;
      border: 1px solid rgba(255,170,95,.16);
      background: rgba(0,0,0,.28);
      color: rgba(246,234,215,.86);
      line-height: 1.75;
      position: relative;
    }
    .pull::before{
      content:"“";
      font-family: Cinzel, serif;
      font-size: 44px;
      color: rgba(243,194,126,.45);
      position:absolute;
      left: 10px;
      top: -10px;
    }
    .pull em{ color: rgba(243,194,126,.92); font-style: normal; font-weight: 800; }
    .anchor{
      scroll-margin-top: 100px;
    }

    .chapterPager{
      margin-top: 16px;
      display:flex;
      gap: 10px;
      flex-wrap: wrap;
      justify-content: space-between;
    }
    .chapterPager .btn{ min-width: 180px; }

    @media (max-width: 980px){
      .readerGrid{ grid-template-columns: 1fr; }
      .toc{ position: relative; top: auto; }
    }
