/* Shared paper style across registered design families and topics. Imagery comes only from the shared registry. */
@layer themes {
  html[data-page-style="paper"] {
    --brand: #0b2c56;
    --brand-deep: #071e3b;
    --accent: #0b2c56;
    --accent-2: #234c76;
    --gold: #e7bf62;
    --paper: #fff6e2;
    --paper-2: #fffbf0;
    --ink: #10263f;
    --ink-soft: #31455a;
    --muted: #4a5867;
    --line: #dacaa6;
    --cta: #0b2c56;
    --cta-ink: #fffaf0;
    --brand-glow: none;
    --foot-bg: #0b2c56;
    --foot-veil-image: none;
    --foot-veil-opacity: 0;
    --body-wash-cool: transparent;
    --body-wash-warm: transparent;
    --form-field-surface: #fff;
    --preview-surface: #fff;
    --preview-backdrop: rgb(7 30 59 / .7);
  }
}
html[data-page-style="paper"] body { background: var(--paper); }
html[data-page-style="paper"] .player-note { background:var(--brand); color:var(--cta-ink); padding:.65rem 1.2rem; font-size:.8rem; }
html[data-page-style="paper"] .hero { min-height:clamp(39rem,56.28vw,68rem); padding:0; background:var(--paper); }
html[data-page-style="paper"] .hero::before { background:var(--img-hero) center / 100% 100% no-repeat; opacity:1; mask-image:url("/assets/shared/xf/hero-transition-mask.svg"); -webkit-mask-image:url("/assets/shared/xf/hero-transition-mask.svg"); mask-size:100% 100%; -webkit-mask-size:100% 100%; mask-repeat:no-repeat; -webkit-mask-repeat:no-repeat; }
html[data-page-style="paper"] .hero > .wrap { width:100%; min-height:inherit; display:grid; align-items:center; }
html[data-page-style="paper"] .hero-top { width:min(66%,56rem); margin:0 auto; gap:1.1rem; padding-block:4.5rem 0; }
html[data-page-style="paper"] .hero-top > .brand { position:absolute; top:1.25rem; left:50%; transform:translateX(-50%); zoom:1; }
html[data-page-style="paper"] .brand .wordmark { font-size:clamp(1.65rem,3.3vw,2.5rem); color:var(--cta-ink); text-shadow:none; }
html[data-page-style="paper"] .brand-rule { color:var(--gold); }
html[data-page-style="paper"] .hero-top > .brand > .hero-kicker { zoom:1; color:var(--cta-ink); font-size:.7rem; letter-spacing:.14em; }
html[data-page-style="paper"] .hero-headline { width:100%; margin:0 0 1.3rem; padding:0; font-size:clamp(2.7rem,5.45vw,5.1rem); line-height:1.04; color:var(--brand); }
html[data-page-style="paper"] .hero-question { width:min(39rem,96%); margin:.2rem 0; font-size:clamp(1.05rem,1.55vw,1.4rem); font-weight:500; line-height:1.35; }
html[data-page-style="paper"] .hero-actions { gap:clamp(2rem,4vw,4rem); margin:.55rem 0; width:100%; }
html[data-page-style="paper"] .hero-actions > a { min-height:3.5rem; display:inline-flex; align-items:center; justify-content:center; padding:.7rem 1.6rem; border-radius:999px; border:2px solid var(--brand); font-family:var(--font-body); font-size:.92rem; font-weight:750; letter-spacing:.09em; text-transform:uppercase; text-decoration:none; }
html[data-page-style="paper"] .hero-actions .video-link { min-width:min(100%,17.5rem); background:var(--brand); color:var(--cta-ink); }
html[data-page-style="paper"] .hero-actions .video-link::after { content:none; }
html[data-page-style="paper"] .hero-actions .kit-cta { background:transparent; color:var(--brand); }
html[data-page-style="paper"] .cta-supporting-note { width:100%; margin:.15rem 0 0; text-align:center; font-size:.85rem; font-weight:750; letter-spacing:.15em; text-transform:uppercase; color:var(--ink); }
html[data-page-style="paper"] a.cta-supporting-note { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.35rem; min-height:2.75rem; text-decoration:none; }
html[data-page-style="paper"] a.cta-supporting-note::after { content:"↓"; display:block; line-height:1; }
html[data-page-style="paper"] a.cta-supporting-note:focus-visible { outline:3px solid var(--brand); outline-offset:3px; border-radius:.25rem; }
html[data-page-style="paper"] .hero-actions a:focus-visible { outline:3px solid var(--brand); outline-offset:5px; }
html[data-page-style="paper"] .topic-section { padding-block:3rem; }
html[data-page-style="paper"] #topic-heading { font-family:var(--font-body); font-size:clamp(2rem,3.4vw,3rem); }
html[data-page-style="paper"] .topic-list button { border-radius:.35rem; background:var(--paper-2); box-shadow:0 8px 18px #071e3b12; }
html[data-page-style="paper"] .topic-list button[aria-pressed="true"] { border-color:var(--brand); background:#f6df9e; }
html[data-page-style="paper"] .study,
html[data-page-style="paper"] .form-card { border-radius:.45rem; background:var(--paper-2); border:1px solid var(--line); }
html[data-page-style="paper"] .form-title { background:var(--brand); padding:1.2rem; margin:-1.6rem -1.6rem var(--form-input-space); border-radius:.4rem .4rem 0 0; }
html[data-page-style="paper"] .form-title h2 { color:var(--cta-ink); }
html[data-page-style="paper"] .sample-sheet { background:#f7e7bd; border-color:var(--gold); }
html[data-page-style="paper"] .site-foot { background:var(--brand); border-top:1px solid var(--gold); }
html[data-page-style="paper"] .site-foot .foot-brand h2,
html[data-page-style="paper"] .site-foot .foot-brand p,
html[data-page-style="paper"] .site-foot .foot-transcript-link,
html[data-page-style="paper"] .site-foot .foot-verse,
html[data-page-style="paper"] .site-foot cite { color:var(--cta-ink); }
html[data-page-style="paper"] .site-foot .mini-rule,
html[data-page-style="paper"] .site-foot a { color:var(--gold); }
@media(max-width:680px) {
  html[data-page-style="paper"] .hero { min-height:max(43rem,160vw); }
  html[data-page-style="paper"] .hero-top { width:72%; gap:.85rem; padding-block-start:3.3rem; }
  html[data-page-style="paper"] .hero-headline { margin-bottom:1.05rem; font-size:clamp(2.05rem,8.4vw,3.5rem); line-height:1.04; }
  html[data-page-style="paper"] .hero-question { width:100%; font-size:1.04rem; line-height:1.35; }
  html[data-page-style="paper"] .hero-actions { flex-direction:column; gap:.9rem; margin:.3rem 0; }
  html[data-page-style="paper"] .hero-actions > a { width:100%; padding:.65rem .5rem; font-size:.76rem; min-height:3.2rem; letter-spacing:.055em; }
  html[data-page-style="paper"] .cta-supporting-note { font-size:.75rem; letter-spacing:.1em; }
  html[data-page-style="paper"] .hero-top > .brand { top:1.1rem; }
  html[data-page-style="paper"] .form-title { margin:-1.25rem -1.25rem var(--form-input-space); }
}

@media(max-width:680px) {
  html[data-page-style="paper"] .hero-top > .brand { top:.35rem; }
  html[data-page-style="paper"] .brand .wordmark { font-size:1.5rem; }
  html[data-page-style="paper"] .brand-rule { margin-block:.08rem; }
  html[data-page-style="paper"] .brand-rule svg { width:.5rem; height:.5rem; }
  html[data-page-style="paper"] .hero-top > .brand > .hero-kicker { margin-top:.1rem; font-size:.6rem; }
}
@media(min-width:681px) and (max-width:1040px) {
  html[data-page-style="paper"] .hero-top { padding-block-start:6rem; gap:.85rem; }
  html[data-page-style="paper"] .hero-top > .brand { top:.35rem; }
  html[data-page-style="paper"] .brand .wordmark { font-size:1.5rem; }
  html[data-page-style="paper"] .brand-rule { margin-block:.08rem; }
  html[data-page-style="paper"] .brand-rule svg { width:.5rem; height:.5rem; }
  html[data-page-style="paper"] .hero-top > .brand > .hero-kicker { margin-top:.1rem; font-size:.6rem; }
}

@media(min-width:681px) and (max-width:900px) { html[data-page-style="paper"] .hero-actions { flex-direction:column; gap:1rem; } html[data-page-style="paper"] .hero-actions > a { width:min(100%,24rem); } }

/* Local graphic/layout pass. Topic, chapter and delivery purposes stay separate. */
.topic-stamp, .kit-thumbnails, .kit-trust, .kit-inline-cta, .kit-sticky { display:none; }
.kit-sticky[hidden] { display:none!important; }
html.has-kit-sticky body { padding-bottom:var(--kit-sticky-height,5rem); }
html[data-page-style="paper"] { --card-surface:url("/assets/shared/xf/parchment-card.svg"); }
html[data-page-style="paper"] .topic-list { padding:.7rem .3rem; gap:1.8rem; }
html[data-page-style="paper"] .topic-list button {
  display:flex; flex-direction:column; gap:.8rem; grid-row:auto; position:relative;
  isolation:isolate; padding:1.8rem 1.7rem 2rem; min-height:17rem;
  border:0; border-radius:0; background-color:transparent;
  box-shadow:none; filter:drop-shadow(0 7px 8px rgb(7 30 59 / .13));
  transform:rotate(var(--card-rotation)); transition:transform .2s ease,filter .2s ease;
}
html[data-page-style="paper"] .topic-list button::before {
  content:""; position:absolute; inset:0; z-index:-1;
  background:var(--card-surface) center / 100% 100% no-repeat;
}
html[data-page-style="paper"] .topic-list button::after { content:none; }
html[data-page-style="paper"] .topic-list button:nth-child(1) { --card-rotation:-1.2deg; }
html[data-page-style="paper"] .topic-list button:nth-child(2) { --card-rotation:.9deg; }
html[data-page-style="paper"] .topic-list button:nth-child(3) { --card-rotation:-.6deg; }
html[data-page-style="paper"] .topic-list button[aria-pressed="true"] { background:transparent; box-shadow:none; filter:drop-shadow(0 7px 9px rgb(7 30 59 / .2)); }
html[data-page-style="paper"] .topic-list button[aria-pressed="true"] .topic-stamp { background:var(--brand); color:var(--cta-ink); }
html[data-page-style="paper"] .topic-list button:is(:hover,:focus-visible) { transform:rotate(0) translateY(-4px); filter:drop-shadow(0 11px 12px rgb(7 30 59 / .19)); }
html[data-page-style="paper"] .topic-list button:focus-visible { outline:3px solid var(--brand); outline-offset:5px; }
html[data-page-style="paper"] .topic-stamp { display:block; align-self:flex-start; border:1px solid var(--brand); border-radius:.2rem; padding:.3rem .6rem; font:700 .67rem/1.2 var(--font-body); letter-spacing:.08em; text-transform:uppercase; }
html[data-page-style="paper"] .topic-list .topic-title { min-block-size:0; }
html[data-page-style="paper"] .topic-list .topic-description { max-width:28ch; margin-top:0; }
html[data-page-style="paper"] #study-form input:is([name="email"],[name="name"]) { border-color:color-mix(in srgb,var(--brand) 25%,transparent); }
html[data-page-style="paper"] #study-form input:is([name="email"],[name="name"]):focus { border-color:DodgerBlue; outline:2px solid color-mix(in srgb,DodgerBlue 25%,transparent); outline-offset:1px; }
.field-prompt { display:none; }
html[data-page-style="paper"] .field:has(input[name="email"]) { position:relative; }
html[data-page-style="paper"] .field input[name="email"]::placeholder { color:transparent; }
html[data-page-style="paper"] .field:has(input[name="email"]:placeholder-shown) .field-prompt { display:block; position:absolute; left:.75rem; right:.75rem; font:inherit; font-weight:700; color:var(--muted); pointer-events:none; }
html[data-page-style="paper"] .field-required { font-weight:300; }
html[data-page-style="paper"] .kit-thumbnails { display:block; margin-block:.65rem .5rem; min-width:0; }
.kit-thumbnails__label { margin:0; text-align:center; font:700 .9rem/1.3 var(--font-body); color:var(--brand); }
.kit-fan { position:relative; width:min(100%,24rem); aspect-ratio:1.6; margin:.5rem auto; isolation:isolate; }
.kit-fan__sheet { position:absolute; top:8%; left:50%; width:40%; height:auto; aspect-ratio:17/22; object-fit:contain; background:var(--preview-surface,#fff); border:1px solid var(--line); box-shadow:0 4px 10px rgb(7 30 59 / .15); pointer-events:none; user-select:none; }
.kit-fan__sheet--front { z-index:3; transform:translateX(-50%); }
.kit-fan__sheet--left { z-index:2; transform:translateX(-95%) rotate(-13deg); }
.kit-fan__sheet--right { z-index:1; transform:translateX(-5%) rotate(13deg); }
.kit-sheet-labels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem; color:var(--ink-soft); font:.68rem/1.35 var(--font-body); text-align:center; }
.kit-sheet-labels strong,.kit-sheet-labels span span { display:block; }
.kit-sheet-labels strong { margin-bottom:.2rem; color:var(--brand); font-size:.78rem; }
html[data-page-style="paper"] .kit-trust { display:flex; flex-wrap:wrap; justify-content:center; gap:.4rem .9rem; margin:.35rem 0 0; padding:0; list-style:none; color:var(--ink-soft); font:.75rem/1.4 var(--font-body); }
.kit-trust li::before { content:"\2713"; margin-right:.3rem; color:var(--brand); font-weight:700; }
html[data-page-style="paper"] .player .play { inset:66.6667% auto auto 50%; translate:-50% -50%; }
html[data-page-style="paper"] .player::after { display:none; }
html[data-page-style="paper"] .video-chapter-link { display:inline-block; padding:.4rem .8rem; margin-top:.5rem; border:1px solid var(--line); border-radius:var(--radius-pill); background:var(--paper-2); transition:transform .25s var(--ease); }
html[data-page-style="paper"] .video-chapter-link::after { content:""; inset:-2px; height:auto; padding:2px; border-radius:inherit; background:conic-gradient(from var(--player-border-angle),var(--brand-deep),var(--accent),var(--paper),var(--gold),var(--brand-deep)); background-size:100% 100%; transform:none; opacity:0; mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); mask-composite:exclude; animation:player-border-rotate 3s linear infinite; animation-play-state:paused; transition:opacity .25s var(--ease); }
html[data-page-style="paper"] .video-chapter:is(:hover,:focus-visible) .video-chapter-link { color:var(--brand); transform:scale(1.15); }
html[data-page-style="paper"] .video-chapter:is(:hover,:focus-visible) .video-chapter-link::after { transform:none; opacity:1; animation-play-state:running; }
html[data-page-style="paper"] .kit-inline-cta { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:.6rem 1rem; padding:1.2rem .5rem 0; color:var(--ink-soft); font:.95rem/1.4 var(--font-body); }
html[data-page-style="paper"] .share-section { padding-block-start:var(--share-section-space); padding-block-end:max(16rem,var(--share-section-space)); }
.kit-scroll-action { display:inline-flex; justify-content:center; align-items:center; gap:.5rem; min-height:2.8rem; padding:.55rem 1rem; border:1px solid var(--brand); border-radius:var(--radius-pill); background:var(--brand); color:var(--cta-ink); font:700 .9rem/1.3 var(--font-body); cursor:pointer; }
.kit-scroll-action:focus-visible { outline:3px solid DodgerBlue; outline-offset:4px; }
html[data-page-style="paper"] .kit-sticky { display:flex; align-items:center; justify-content:center; gap:.7rem 1.2rem; position:fixed; z-index:40; bottom:0; inset-inline:0; padding:.75rem max(1rem,env(safe-area-inset-right)) calc(.75rem + env(safe-area-inset-bottom)); border-top:1px solid var(--gold); background:var(--paper-2); box-shadow:0 -4px 18px rgb(7 30 59 / .12); color:var(--brand); font:600 .95rem/1.3 var(--font-body); }
.kit-sticky__close { flex-shrink:0; border:0; color:var(--brand); background:transparent; width:2.75rem; height:2.75rem; cursor:pointer; font:1.6rem/1 var(--font-body); }
@media(max-width:1040px) { html[data-page-style="paper"] .topic-list { gap:1.15rem; } html[data-page-style="paper"] .topic-list button { min-height:0; padding:1.6rem 1.7rem 1.8rem; } html[data-page-style="paper"] .topic-list .topic-description { max-width:38ch; } }
@media(max-width:680px) {
  html[data-page-style="paper"] .hero-actions .kit-cta { min-height:2.75rem; border:0; padding:.4rem .2rem; text-decoration:underline; text-underline-offset:.3rem; border-radius:0; }
  html[data-page-style="paper"] .topic-section { width:calc(100% - var(--gutter)*2); }
  html[data-page-style="paper"] .player .play { width:3rem; height:3rem; }
  html[data-page-style="paper"] .kit-sticky { gap:.4rem .6rem; justify-content:space-between; }
  .kit-sticky__intro { display:none; }
  .kit-sticky .kit-scroll-action { flex:1; font-size:.82rem; }
}
@media(prefers-reduced-motion:reduce) {
  html[data-page-style="paper"] .topic-list button { transform:none!important; transition:none; }
  html[data-page-style="paper"] .video-chapter-link { transition:none; }
  html[data-page-style="paper"] .video-chapter-link::after { animation:none!important; transition:none; }
  html[data-page-style="paper"] .video-chapter:is(:hover,:focus-visible) .video-chapter-link { transform:none; }
}




