/* The book explorer: one title, a chapter map, and an independent contributor rail. */
body.project-banner-in-view #first-verse,body.project-banner-in-view .sent,body.project-banner-in-view .btn-rewrite-sentence-shortcut,body.project-banner-in-view .first-verse-button { display:none!important; }
body.project-banner-page .site-index,body.project-banner-page #sentence { margin-top:0!important; }
body.project-banner-page #chapter_sentences_1 { margin-top:14px!important;padding-top:44px; }
body.project-banner-page { padding-bottom:0; }
#promised-banner {
 --project-signatures-height:162px;--project-reading-strip-height:40px;
 --project-person-search-fold:calc(var(--project-search-row-height) * var(--project-collapse));
 --project-verse-search-fold:calc(var(--project-search-row-height) * var(--project-collapse));
 --project-folded-axis-gap:calc(8px * var(--project-collapse));
 --project-expanded-height:389px;--project-compact-height:258px;--project-collapse:0;--project-axis-height:96px;--project-search-row-height:28px;--banner-side:max(32px,calc((100vw - 1100px)/2 + 32px));--explorer-burgundy:#710d46;--explorer-ink:#272326;
 position:relative;isolation:isolate;contain:layout paint;width:100%;margin:0;color:var(--explorer-ink);background:#f5f5f4;text-align:left;
 height:389px;display:flex;flex-direction:column;overflow:hidden;
}
#promised-banner,#promised-banner * { box-sizing:border-box; }
#promised-banner [hidden] { display:none!important; }
#promised-banner p,#promised-banner h1,#promised-banner h2,#promised-banner ul { margin:0;padding:0; }
#promised-banner span { font:inherit; }
#promised-banner::before {
 content:"";position:absolute;inset:0 0 calc(var(--project-axis-height) - var(--project-verse-search-fold) + var(--project-folded-axis-gap));z-index:-1;pointer-events:none;
 background:url("../images/promised-three-friends.webp") right calc(var(--project-scene-y,0px) - var(--project-menu-height,73px)) / var(--project-scene-width,auto) var(--project-scene-height,100%) no-repeat;
 opacity:calc(.44 * (1 - var(--project-collapse,0)));
}
#promised-banner::after {
 content:"";position:absolute;inset:0 0 calc(var(--project-axis-height) - var(--project-verse-search-fold) + var(--project-folded-axis-gap));z-index:-1;pointer-events:none;
 background:linear-gradient(90deg,#fff9 0%,#fff3 52%,transparent 100%);opacity:calc(1 - var(--project-collapse,0));
}
#promised-banner .project-banner__description { position:absolute;left:var(--banner-side);top:auto;bottom:12px;transform:none;width:max-content;max-width:calc(70vw - 2 * min(var(--banner-side),32px));color:#3f3f3f;font:400 28px/1.2 Georgia,"Times New Roman",serif!important;text-transform:none;letter-spacing:0;text-align:left;text-wrap:balance; }
#promised-banner .project-banner__explorer { background:transparent;position:relative;flex:1;min-height:0;display:flex;flex-direction:column; }
#promised-banner .project-verse-nav { position:relative;height:calc(var(--project-axis-height) - var(--project-verse-search-fold) + var(--project-folded-axis-gap));padding:0 var(--banner-side) 8px;color:#625c60;background:#fff;border:0;flex:0 0 auto; }
#promised-banner .project-verse-nav__track { position:relative;min-width:0;padding-top:30px;margin:0 10px; }
#promised-banner .project-verse-nav__label {
 position:absolute;top:0;left:50%;transform:translateX(-50%);
 width:max-content;max-width:240px;font:700 14px/1.3 "Roboto Bold",Arial,sans-serif;white-space:nowrap;text-align:center;color:#56434e;
}
#promised-banner .project-verse-nav__segments { position:absolute;top:40px;left:calc(2px - var(--banner-side));right:calc(2px - var(--banner-side));height:8px;display:flex;align-items:center;gap:0;overflow:visible;pointer-events:none; }
#promised-banner .project-verse-nav__segment { display:block;height:2px;min-width:0;flex-grow:0;flex-shrink:0; }
#promised-banner .project-verse-nav__segment--active { height:8px;border-radius:1px;background:var(--explorer-burgundy); }
#promised-banner .project-verse-nav__segment--reserved { background:#c8c4c6; }
#promised-banner .project-verse-nav__segment--editable { background:#c8c4c6; }
#promised-banner .project-verse-nav__range {
 -webkit-appearance:none;appearance:none;position:relative;display:block;width:calc(100vw - 4px);max-width:none;height:28px;margin:0 0 0 calc(2px - var(--banner-side) - 10px);padding:0;
 border:0;border-radius:0;background:transparent;cursor:ew-resize;touch-action:pan-y;accent-color:var(--explorer-burgundy);
}
#promised-banner .project-verse-nav__range::-webkit-slider-runnable-track { height:4px;border:0;background:transparent; }
#promised-banner .project-verse-nav__range::-moz-range-track { height:4px;border:0;background:transparent; }
/* Keep 12px at each end of the map and a full 20px drag target inside the viewport. */
#promised-banner .project-verse-nav__range::-webkit-slider-thumb { -webkit-appearance:none;width:20px;height:24px;margin-top:-10px;border:0;border-radius:0;background:linear-gradient(90deg,transparent 9px,#000 9px,#000 11px,transparent 11px);box-shadow:none; }
#promised-banner .project-verse-nav__range::-moz-range-thumb { width:20px;height:24px;border:0;border-radius:0;background:linear-gradient(90deg,transparent 9px,#000 9px,#000 11px,transparent 11px);box-shadow:none; }
#promised-banner .project-verse-nav__range:focus-visible { outline:1px solid #b28a9f;outline-offset:2px;border-radius:4px; }
#promised-banner .project-banner__signatures { height:calc(var(--project-signatures-height) - var(--project-person-search-fold));flex:0 0 calc(var(--project-signatures-height) - var(--project-person-search-fold));padding:calc(var(--project-search-row-height) - var(--project-person-search-fold)) 0 0;color:#342c31;background:transparent;border:0; }
#promised-banner .project-banner__signature-list { display:flex;align-items:flex-start;min-width:100%;min-height:52px;list-style:none; }
#promised-banner .project-banner__signature-viewport { min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x;scrollbar-width:none;cursor:grab; }
#promised-banner .project-banner__signature-viewport::-webkit-scrollbar { display:none; }
#promised-banner .project-banner__signature-viewport[data-signature-dragging="true"] { cursor:grabbing;user-select:none; }
#promised-banner .project-banner__signature-viewport:focus-visible { outline:1px solid #b28a9f;outline-offset:3px; }
#promised-banner .project-signature__spacer { flex-shrink:0;list-style:none;pointer-events:none; }
#promised-banner .project-signature { position:relative;flex-shrink:0;min-width:0;margin:0;padding:0 4px;list-style:none; }
/* Show real boundaries during travel; only the outer boundaries fade at rest. */
#promised-banner .project-signature + .project-signature::before { content:"";position:absolute;inset:0 auto 0 0;width:1px;transform:translateX(-50%);pointer-events:none;background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.45) 20%,rgba(255,255,255,.45) 80%,rgba(255,255,255,0));opacity:1;transition:opacity .18s ease; }
#promised-banner .project-banner__signature-viewport[data-signature-moving="false"] .project-signature[data-divider-edge="true"]::before { opacity:0; }
#promised-banner .project-signature__button { position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;min-height:52px;margin:0;padding:0 2px 5px;border:0;border-radius:4px;color:#342c31;background:transparent;text-align:center;cursor:pointer;opacity:1;visibility:visible;transition:opacity .18s ease,visibility 0s; }
/* Keep the rail full width. Only clipped cards fade after it settles. */
#promised-banner .project-banner__signature-viewport[data-signature-moving="false"] .project-signature[data-fully-visible="false"] .project-signature__button { opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility 0s .18s; }
#promised-banner .project-signature__button:hover { background:transparent;opacity:1; }
#promised-banner .project-signature__crop { position:relative;display:block;flex:0 0 auto;width:100%;height:47px;overflow:hidden;background:transparent; }
#promised-banner .project-signature__crop img { display:block;max-width:none;max-height:none;margin:0;padding:0;border:0;filter:none;mix-blend-mode:normal; }
#promised-banner .project-signature__name { display:block;width:100%;min-height:2.5em;color:var(--explorer-burgundy);font:400 15.4px/1.25 Georgia,"Times New Roman",serif;overflow-wrap:normal;word-break:normal;hyphens:none; }
#promised-banner .project-signature__given,#promised-banner .project-signature__family { display:inline; }
#promised-banner button:disabled { opacity:.48;cursor:default; }
#promised-banner button:focus-visible { outline:1px solid currentColor;outline-offset:3px; }
body.project-banner-docked,body.project-banner-docked .site-index,body.project-banner-docked #sentence { overflow-anchor:none; }
.project-banner-dock-space { width:100vw;margin:73px 0 0 calc((100% - 100vw)/2);padding:0;border:0;pointer-events:none;overflow-anchor:none; }
body.project-banner-page #promised-banner.project-banner--docked { position:fixed;z-index:8;margin:0!important; }
body.project-book-moving #sentence .single-element.visible { transition:none!important; }
#promised-banner .project-banner__message { position:relative;flex:1;min-height:64px; }
#promised-banner .project-banner__description span { display:inline-block; }
#promised-banner .project-verse-nav__boundaries { position:absolute;top:38px;left:calc(2px - var(--banner-side));right:calc(2px - var(--banner-side));height:12px;pointer-events:none; }
#promised-banner .project-verse-nav__boundary { position:absolute;top:0;width:1px;height:12px;background:#b6afb3;transform:translateX(-50%); }
@media(min-width:992px) {
 body.project-banner-page #promised-banner { width:100vw;margin-top:73px;margin-left:calc((100% - 100vw)/2); }
 body.project-banner-page .legacy-book-header { display:none!important; }
 body.project-banner-page #sentence > .row > .chapters-box { width:100%;margin-left:0; }
 body.project-banner-page .new-top-menu > .container > .col-md-9,body.project-banner-page #first-verse > .col-md-9 { width:100%;margin-left:0; }
}
@media(max-width:991px) {
 #promised-banner { --banner-side:30px; }
 body.project-banner-page #promised-banner { width:100vw;margin-top:72px;margin-left:calc((100% - 100vw)/2); }
 .project-banner-dock-space { margin-top:72px; }
 body.project-banner-page #chapter_sentences_1 { padding-top:0; }
}
@media(min-width:601px) and (max-width:991px) { #promised-banner { --project-expanded-height:430px; } }
@media(max-width:600px) {
 #promised-banner { --project-expanded-height:405px;--project-compact-height:251px;--project-signatures-height:155px;height:405px; }
 #promised-banner::before { background-image:url("../images/promised-three-friends-mobile-v2.webp");background-size:166.667vw 166.667vw;background-position:right calc(var(--project-expanded-height) - var(--project-reading-strip-height) - var(--project-axis-height) - 166.667vw);opacity:calc(.42 * (1 - var(--project-collapse,0))); }
 #promised-banner .project-banner__description { font-size:clamp(18px,5.15vw,22px)!important; }
 #promised-banner .project-verse-nav__label { font-size:13px;max-width:200px; }
 #promised-banner .project-signature { padding:0 3px; }
 #promised-banner .project-signature__name { font-size:14px; }
 #promised-banner .project-signature__crop { height:45px; }
 #promised-banner .project-signature__button,#promised-banner .project-banner__signature-list { min-height:50px; }
}
@media(max-width:359px) { #promised-banner { --banner-side:26px; } }
/* Reserve full touch rows so larger phone controls cannot overlap the rail or axis. */
@media(max-width:586px) {
 #promised-banner { --project-expanded-height:437px;--project-compact-height:283px;--project-axis-height:112px;--project-search-row-height:44px;--project-signatures-height:171px; }
}
/* Lightweight action retained in the book, with breathing room in the row. */
body.project-banner-page #sentence .pencil.button { display:inline-flex;align-items:center;justify-content:flex-end;width:auto;min-width:0;min-height:44px;height:auto;padding:7px 0;border:0;border-radius:0;box-shadow:none;background:transparent;color:#810958;font:400 14px/1.5 "Roboto Regular",Arial,sans-serif;text-align:right;text-transform:none;letter-spacing:0;cursor:pointer; }
body.project-banner-page #sentence .pencil.button span { font:inherit;color:inherit; }
body.project-banner-page #sentence .pencil.button::after { content:none; }
body.project-banner-page #sentence .pencil.button:hover { color:#570b36;background:transparent; }
body.project-banner-page #sentence .pencil.button:focus-visible { outline:1px solid #810958;outline-offset:3px; }
@media(max-width:991px) { body.project-banner-page #sentence .editable-elem .pencil.button { display:flex;width:max-content;right:16px;margin-left:auto;margin-right:0; } }

@media(prefers-reduced-motion:reduce) { #promised-banner .project-signature::before,#promised-banner .project-signature .project-signature__button { transition:none!important; } }

/* Each opening swap fades only the newly introduced person. */
#promised-banner .project-signature.is-opening-swap { animation:promised-opening-swap 180ms ease-out; }
@keyframes promised-opening-swap { from { opacity:.35; } to { opacity:1; } }
@media(prefers-reduced-motion:reduce) { #promised-banner .project-signature.is-opening-swap { animation:none; } }

/* One motion controller interpolates this shared progress over 1000ms.
   The fixed spacer keeps document height stable throughout the fold. */
#promised-banner {
 height:calc(var(--project-expanded-height) - (var(--project-expanded-height) - var(--project-compact-height)) * var(--project-collapse) - var(--project-person-search-fold) - var(--project-verse-search-fold) + var(--project-folded-axis-gap));
 transition:none;
}
#promised-banner .project-banner__message {
 flex:none;height:calc((var(--project-expanded-height) - var(--project-compact-height)) * (1 - var(--project-collapse)));
 min-height:0;overflow:hidden;opacity:calc(1 - var(--project-collapse));transition:none;
}
#promised-banner.project-banner--compact .project-banner__message { pointer-events:none; }

/* Keep the title position stable while the loose pigment slightly overlaps its letters. */
#promised-banner .project-banner__description { padding-bottom:54.5px; }
#promised-banner .project-banner__handwritten { position:absolute;display:none;top:calc(100% - 64px);right:-40px;width:125px;max-width:100%;height:auto;margin:0;padding:0;border:0;pointer-events:none; }
@media(max-width:600px) {
 #promised-banner .project-banner__description { padding-bottom:40.875px; }
 #promised-banner .project-banner__last-word { position:relative; }
 #promised-banner .project-banner__handwritten { top:calc(100% + 5px);left:50%;right:auto;transform:translateX(-50%);width:94px;max-width:none; }
}

/* Only a visible, active search keeps its row when the introduction folds. */
#promised-banner:has([data-person-search-toggle][aria-expanded="true"]) { --project-person-search-fold:0px; }
#promised-banner:has([data-verse-search-toggle][aria-expanded="true"]) { --project-verse-search-fold:0px; }

/* One full-width view switch, directly above the contributor rail. */
@font-face { font-family:"Promised View";src:url("../fonts/AvenirNextCondensed-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap; }
#promised-banner .project-reading-view {
 --reading-track-width:84px;--reading-mark-size:26px;
 display:grid;grid-template-columns:minmax(0,1fr) var(--reading-track-width) minmax(0,1fr);align-items:center;column-gap:16px;
 width:100%;height:var(--project-reading-strip-height);margin:0;padding:0 12px;border:0;border-radius:0;
 /* Keep the rail in place while opening a little space below the raised strip. */
 transform:translateY(calc(-12px * (1 - var(--project-collapse))));
 background:linear-gradient(90deg,#571235 0%,#2b0719 44%,#070104 70%,#000 100%);
}
#promised-banner .project-reading-view button {
 min-width:0;margin:0;border:0;box-shadow:none;cursor:pointer;text-transform:none;letter-spacing:0;
}
#promised-banner .project-reading-view__label {
 width:100%;height:40px;padding:0;border-radius:0;color:#938c90;background:transparent;
 font:400 22px/40px "Promised View","Arial Narrow",Arial,sans-serif;white-space:nowrap;text-align:right;
 transition:color .18s ease;
}
#promised-banner .project-reading-view__label[data-reading-view="school"] { text-align:left; }
#promised-banner .project-reading-view__label[aria-pressed="true"] { color:#fff; }
#promised-banner .project-reading-view__toggle {
 display:flex;align-items:center;width:var(--reading-track-width);height:30px;padding:2px 4px;border-radius:9px;
 background:linear-gradient(90deg,#fff 0%,#d7d2d4 50%,#a99ea5 100%);
}
#promised-banner .project-reading-view__toggle img {
 display:block;width:var(--reading-mark-size);height:var(--reading-mark-size);max-width:none;margin:0;padding:0;border:0;
 object-fit:contain;transform:translateX(0);transition:transform .18s ease;
}
body[data-reading-mode="school"] #promised-banner .project-reading-view { background:linear-gradient(270deg,#571235 0%,#2b0719 44%,#070104 70%,#000 100%); }
body[data-reading-mode="school"] #promised-banner .project-reading-view__toggle { background:linear-gradient(270deg,#fff 0%,#d7d2d4 50%,#a99ea5 100%); }
body[data-reading-mode="school"] #promised-banner .project-reading-view__toggle img { transform:translateX(calc(var(--reading-track-width) - 8px - var(--reading-mark-size))); }
#promised-banner .project-reading-view button:focus-visible { outline:1px solid #fff;outline-offset:-2px; }
@media(max-width:600px) {
 #promised-banner .project-reading-view { --reading-track-width:72px;--reading-mark-size:24px;column-gap:12px; }
 #promised-banner .project-reading-view__label { font-size:20px; }
 #promised-banner .project-reading-view__toggle { height:28px; }
}
@media(prefers-reduced-motion:reduce) {
 #promised-banner .project-reading-view__label,#promised-banner .project-reading-view__toggle img { transition:none; }
}

/* The panoramic illustration runs continuously from the menu to the rail.
   The introduction ends above the view switch on every screen size. */
@font-face { font-family:"Promised Heading";src:url("../fonts/AvenirNextCondensed-DemiBold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap; }
#promised-banner {
 --project-hero-height:357px;--project-signatures-height:134px;--project-axis-height:72px;
 --project-expanded-height:563px;--project-compact-height:218px;--project-rail-gap:12px;
 --project-person-search-fold:0px;--project-verse-search-fold:0px;--project-folded-axis-gap:0px;
 height:calc(var(--project-hero-height) * (1 - var(--project-collapse)) + var(--project-signatures-height) + var(--project-axis-height) + var(--project-rail-gap) * var(--project-collapse));
}
#promised-banner::before {
 inset:0 0 var(--project-axis-height);
 background-image:url("../images/promised-three-friends-panorama-v1.webp");
 background-size:var(--project-scene-width) var(--project-scene-height);
 background-position:var(--project-scene-x) calc(var(--project-scene-y) - var(--project-menu-height));
 opacity:calc(.30 * (1 - var(--project-collapse)));
}
#promised-banner::after { inset:0 0 var(--project-axis-height);background:linear-gradient(90deg,#f5f5f4b0 0%,#f5f5f440 10%,transparent 35%); }
#promised-banner .project-banner__message { height:calc(var(--project-hero-height) * (1 - var(--project-collapse))); }
#promised-banner .project-banner__book-title { position:absolute;left:var(--banner-side);bottom:100px;width:clamp(320px,46vw,560px);max-width:calc(100% - 2 * var(--banner-side)); }
#promised-banner .project-banner__author { display:block;padding:0 2% 5px 0;color:#797979;font:300 clamp(15px,1.65vw,23px)/1.2 "Promised Intro Light",Arial,sans-serif;text-align:right;white-space:nowrap; }
#promised-banner .project-banner__wordmark { display:block;width:100%;height:auto;max-width:none;margin:0; }
#promised-banner .project-banner__description { left:50%;bottom:28px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 40px);padding:0;color:#303030;font:600 clamp(28px,4.1vw,56px)/1.08 "Promised Heading","Arial Narrow",Arial,sans-serif!important;text-align:center;text-wrap:balance; }
#promised-banner .project-banner__signatures { height:calc(var(--project-signatures-height) + var(--project-rail-gap) * var(--project-collapse));flex-basis:calc(var(--project-signatures-height) + var(--project-rail-gap) * var(--project-collapse));padding:0; }
#promised-banner .project-banner__signature-viewport { padding-top:0;margin-top:calc(var(--project-rail-gap) * var(--project-collapse)); }
#promised-banner .project-verse-nav { height:var(--project-axis-height);padding-top:0; }
#promised-banner .project-verse-nav__track { padding-top:38px; }
#promised-banner .project-verse-nav__label { top:13px;font-size:16px;line-height:20px; }
#promised-banner .project-verse-nav__segments { top:48px; }
#promised-banner .project-verse-nav__boundaries { top:46px; }
@media(min-width:601px) and (max-width:991px) {
 #promised-banner { --project-hero-height:318px;--project-expanded-height:524px; }
 #promised-banner .project-banner__book-title { bottom:88px;width:42vw; }
 #promised-banner .project-banner__author { font-size:clamp(13px,1.45vw,20px); }
 #promised-banner .project-banner__description { bottom:40px;font-size:clamp(26px,3.7vw,36px)!important; }
}
@media(max-width:600px) {
 #promised-banner { --project-hero-height:236px;--project-signatures-height:127px;--project-axis-height:80px;--project-expanded-height:443px;--project-compact-height:219px; }
 #promised-banner .project-banner__book-title { left:7%;bottom:78px;width:50%;max-width:none; }
 #promised-banner .project-banner__author { font-size:clamp(10px,2.8vw,15px);padding-bottom:3px; }
 #promised-banner .project-banner__description { bottom:42px;font-size:clamp(18px,5.2vw,28px)!important;max-width:94%;white-space:nowrap; }
 #promised-banner .project-verse-nav__label { font-size:14px; }
}
@media(max-width:600px) { #promised-banner .project-banner__description .elem-en { white-space:normal; } }

/* Desktop: end the scene at the pockets and fit the introduction below the menu. */
@media(min-width:992px) {
 #promised-banner { --project-hero-height:203.275865px;--project-expanded-height:409.275865px; }
 #promised-banner .project-banner__book-title { bottom:68px;width:clamp(250px,25vw,300px); }
 #promised-banner .project-banner__author { font-size:13px; }
 #promised-banner .project-banner__description { bottom:32px;font-size:22px!important; }
}

/* Share the author's intrinsic column so both lines start at the same letter edge. */
#promised-banner .project-banner__identity { display:contents; }
@media(min-width:992px) {
 #promised-banner .project-banner__identity {
  position:absolute;inset-block:0;left:var(--banner-side);width:clamp(250px,25vw,300px);
  display:grid;grid-template-columns:minmax(0,1fr) max-content 2%;
  grid-template-rows:1fr max-content max-content 68px;align-content:end;
 }
 #promised-banner .project-banner__book-title { display:contents; }
 #promised-banner .project-banner__author { grid-column:2;grid-row:2;padding:0 0 5px; }
 #promised-banner .project-banner__wordmark { grid-column:1 / -1;grid-row:3; }
 #promised-banner .project-banner__description { grid-column:2 / 3;left:0;transform:none;max-width:none;text-align:left;white-space:nowrap; }
}

/* Reference composition: book title, burgundy announcement and three signatures. */
#promised-banner {
 --project-strip-height:48px;--project-signatures-height:148px;--project-axis-height:72px;
 height:calc(var(--project-hero-height) * (1 - var(--project-collapse)) + var(--project-signatures-height) - var(--project-strip-height) * var(--project-collapse) + var(--project-axis-height) + var(--project-rail-gap) * var(--project-collapse));
}
#promised-banner .project-banner__identity { display:block;position:static;width:auto; }
#promised-banner .project-banner__book-title {
 display:block;position:absolute;left:var(--banner-side);bottom:16px;
 width:clamp(270px,29vw,390px);max-width:calc(100% - 2 * var(--banner-side));
}
#promised-banner .project-banner__author {
 display:block;grid-column:auto;grid-row:auto;padding:0 3% 5px 0;
 font:300 clamp(14px,1.65vw,22px)/1.2 "Promised Intro Light",Arial,sans-serif;text-align:right;
}
#promised-banner .project-banner__wordmark { display:block;grid-column:auto;grid-row:auto;width:100%;height:auto; }
#promised-banner .project-reading-view { display:none!important; }
#promised-banner .project-banner__signatures {
 display:flex;flex-direction:column;
 height:calc(var(--project-signatures-height) - var(--project-strip-height) * var(--project-collapse) + var(--project-rail-gap) * var(--project-collapse));
 flex-basis:calc(var(--project-signatures-height) - var(--project-strip-height) * var(--project-collapse) + var(--project-rail-gap) * var(--project-collapse));
}
#promised-banner .project-banner__description {
 position:relative;left:auto;right:auto;bottom:auto;transform:none;
 display:flex;align-items:center;justify-content:center;flex:0 0 calc(var(--project-strip-height) * (1 - var(--project-collapse)));
 width:100%;max-width:none;height:calc(var(--project-strip-height) * (1 - var(--project-collapse)));
 margin:0;padding:0 16px;color:#eae7e9;
 background:linear-gradient(90deg,#a91a63 0%,#68133f 37%,#241920 76%,#171719 100%);
 font:600 clamp(25px,3.5vw,46px)/1.04 "Promised Heading","Arial Narrow",Arial,sans-serif!important;
 text-align:center;white-space:normal;overflow:hidden;opacity:calc(1 - var(--project-collapse));
}
#promised-banner .project-banner__description span { display:inline; }
#promised-banner .project-banner__signature-viewport { display:flex;align-items:center;flex:1 1 auto;min-height:0; }
@media (min-width:601px) and (max-width:991px) {
 body.project-banner-page #promised-banner { margin-top:90px; }
 .project-banner-dock-space { margin-top:90px; }
 #promised-banner { --project-strip-height:58px;--project-signatures-height:212px;--project-axis-height:138px; }
 #promised-banner .project-banner__book-title { left:7%;bottom:8px;width:min(50vw,400px);max-width:none; }
 #promised-banner .project-banner__author { font-size:clamp(17px,2.5vw,22px); }
 #promised-banner .project-banner__description { font-size:clamp(31px,5.95vw,46px)!important; }
 #promised-banner .project-banner__signature-list { transform:translateY(12px); }
 #promised-banner .project-signature__crop { height:56px; }
 #promised-banner .project-signature__name { font-size:19px; }
 #promised-banner .project-verse-nav__track { padding-top:68px; }
 #promised-banner .project-verse-nav__label { top:30px; }
 #promised-banner .project-verse-nav__segments { top:78px; }
 #promised-banner .project-verse-nav__boundaries { top:76px; }
}
@media (max-width:600px) {
 /* Keep the phone introduction 64px shorter so the title sits closer to the menu. */
 #promised-banner { --project-hero-height:172px;--project-expanded-height:440px;--project-strip-height:42px;--project-signatures-height:156px;--project-axis-height:112px; }
 #promised-banner .project-banner__book-title { left:7%;bottom:12px;width:53%;max-width:none; }
 #promised-banner .project-banner__author { font-size:clamp(10px,2.8vw,15px); }
 #promised-banner .project-banner__description { font-size:clamp(19px,5.3vw,27px)!important; }
}
@media (max-width:420px) {
 #promised-banner .project-banner__description .elem-en { font-size:17px; }
}
@media (min-width:992px) {
 #promised-banner { --project-strip-height:40px; }
 #promised-banner .project-banner__description { font-size:28px!important; }
}

/* The same header, signatures and axis stay in all three participant tabs. */
#promised-banner .project-banner__students,
#promised-banner .project-banner__standing,
#promised-banner .project-banner__world-map { display:none; }
#promised-banner .project-verse-nav__segment--muted { height:8px;border-radius:1px;background:#c8c4c6; }
#promised-banner .project-signature[data-participant-selected="false"] .project-signature__name { color:#999; }

/* Figures sit directly on the existing burgundy strip. */
body[data-reading-mode="school"] #promised-banner { --project-students-width:min(32.2vw,322px); }
@media (min-width:992px) {
 body[data-reading-mode="school"] #promised-banner { --project-students-width:min(42.48vw,424.8px); }
}
body[data-reading-mode="school"] #promised-banner .project-banner__message { overflow:visible; }
body[data-reading-mode="school"] #promised-banner .project-banner__description span { visibility:hidden; }
body[data-reading-mode="school"] #promised-banner .project-banner__students {
 display:block;position:absolute;left:76%;top:calc(100% + 4px);z-index:2;
 width:var(--project-students-width);height:auto;max-width:none;
 transform:translate(-50%,-60%);clip-path:inset(0 15.5% 0 0);
 pointer-events:none;user-select:none;
}
body[data-reading-mode="school"] #promised-banner .project-banner__standing {
 display:block;position:absolute;left:calc(76% + var(--project-students-width) * .32);bottom:calc(var(--project-students-width) * -.0084 - 1px);z-index:3;
 height:calc(var(--project-students-width) * .36);width:auto;max-width:none;
 transform:scaleX(-1);pointer-events:none;user-select:none;
}
/* Phones use a separate, 384px composition: 80% of the previous 480px.
   Reposition it above the strip so the title and contributor rail remain clear. */
@media (max-width:600px) {
 body[data-reading-mode="school"] #promised-banner { --project-students-width:384px; }
 body[data-reading-mode="school"] #promised-banner .project-banner__book-title { top:12px;bottom:auto; }
 body[data-reading-mode="school"] #promised-banner .project-banner__students { left:52%;top:calc(100% - 10px);clip-path:inset(0 25.6% 0 0); }
 body[data-reading-mode="school"] #promised-banner .project-banner__standing { left:auto;right:5%;bottom:-1px; }
}

/* The folded school header replaces its signature rail with the student photos. */
#promised-banner .project-banner__compact-photos { display:none; }
body[data-reading-mode="school"] #promised-banner {
 --project-compact-photos-height:calc(var(--project-signatures-height) - var(--project-strip-height) + var(--project-rail-gap));
}
body[data-reading-mode="school"] #promised-banner .project-banner__compact-photos {
 display:flex;position:relative;align-items:flex-end;justify-content:center;overflow:hidden;
 flex:0 0 calc(var(--project-compact-photos-height) * var(--project-collapse));
 height:calc(var(--project-compact-photos-height) * var(--project-collapse));
 opacity:var(--project-collapse);pointer-events:none;
 background:linear-gradient(to bottom,transparent calc(100% - 24px),#810958 calc(100% - 24px),#241920 100%);
}
#promised-banner .project-banner__compact-stage {
 position:relative;flex:none;width:min(82vw,calc((var(--project-compact-photos-height) - 8px) / .36));
 height:var(--project-compact-photos-height);
}
#promised-banner .project-banner__compact-students {
 position:absolute;left:0;bottom:0;width:100%;height:auto;max-width:none;
 clip-path:inset(0 15.5% 0 0);
}
#promised-banner .project-banner__compact-standing {
 position:absolute;right:0;bottom:8px;height:calc(var(--project-compact-photos-height) - 8px);width:auto;max-width:none;
 transform:scaleX(-1);
}
body[data-reading-mode="school"] #promised-banner .project-banner__signature-viewport { margin-top:0;opacity:calc(1 - var(--project-collapse)); }
body[data-reading-mode="school"] #promised-banner.project-banner--compact .project-banner__signature-viewport { pointer-events:none; }
body[data-reading-mode="school"] #promised-banner.project-banner--compact .project-banner__signature-viewport,
body[data-reading-mode="school"] #promised-banner.project-banner--compact .project-banner__signature-viewport * { visibility:hidden; }
