/* JTforME V79 — THE SHOEHORN OF JUSTICE: Episode I Public Accountability
   Landscape slingshot flagship: no embedded cabinet, no nested scroll traps. */
:root{--soj-bg:#040a0f;--soj-ink:#f7f1e8;--soj-muted:#b9c8d3;--soj-gold:#f3c245;--soj-red:#e94b43;--soj-cyan:#55d8ff;--soj-panel:rgba(9,24,36,.78);--soj-line:rgba(145,206,234,.2)}
*{box-sizing:border-box} html,body{margin:0;min-height:100%;background:#040a0f;color:var(--soj-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;overflow:hidden} body.soj78-page{height:100dvh;height:100svh;touch-action:none;overscroll-behavior:none}
.soj78-shell{position:fixed;inset:0;display:grid;grid-template-rows:auto 1fr;background:radial-gradient(circle at 78% 12%,rgba(233,75,67,.22),transparent 28%),radial-gradient(circle at 12% 82%,rgba(85,216,255,.16),transparent 33%),linear-gradient(180deg,#07131d,#02070b);isolation:isolate;overflow:hidden}
.soj78-shell::before{content:"";position:absolute;inset:-4%;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:38px 38px;transform:perspective(700px) rotateX(64deg) translateY(11%);transform-origin:50% 100%;opacity:.21;pointer-events:none;z-index:-2}.soj78-shell::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 38%,rgba(0,0,0,.55) 100%);pointer-events:none;z-index:5;mix-blend-mode:multiply}
.soj78-topbar{height:clamp(58px,7.4svh,76px);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:max(8px,env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) 8px max(14px,env(safe-area-inset-left,0px));border-bottom:1px solid rgba(255,255,255,.11);background:linear-gradient(180deg,rgba(7,19,29,.95),rgba(7,19,29,.82));backdrop-filter:blur(12px);z-index:20}.soj78-brand{display:grid;gap:1px;text-decoration:none;color:#fff;min-width:0}.soj78-brand strong{font-size:clamp(.95rem,1.2vw,1.15rem);font-weight:950;letter-spacing:.06em;white-space:nowrap}.soj78-brand strong span{color:var(--soj-gold)}.soj78-brand small{color:var(--soj-gold);font-size:clamp(.58rem,.8vw,.78rem);font-weight:900;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.soj78-nav{display:flex;align-items:center;gap:10px;min-width:0}.soj78-nav a,.soj78-icon{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 12px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.055);color:#d5e0e8;text-decoration:none;font-weight:800;font-size:.84rem;white-space:nowrap}.soj78-icon{width:42px;padding:0;cursor:pointer;color:#fff}.soj78-icon[aria-pressed="true"],.soj78-nav a:hover,.soj78-icon:hover{border-color:rgba(243,194,69,.55);background:rgba(243,194,69,.12);color:#fff}.soj78-stage{position:relative;min-width:0;min-height:0;display:grid;grid-template-rows:1fr auto;padding:clamp(8px,1.4vw,16px);overflow:hidden}.soj78-canvas-wrap{position:relative;min-height:0;border:1px solid rgba(255,255,255,.11);border-radius:clamp(14px,2vw,28px);overflow:hidden;background:#05090d;box-shadow:0 22px 90px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.04) inset}.soj78-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:crosshair;background:#081620}.soj78-hud{position:absolute;left:clamp(10px,1.4vw,20px);right:clamp(10px,1.4vw,20px);top:clamp(10px,1.3vw,18px);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;z-index:12;pointer-events:none}.soj78-hud-card{min-width:0;padding:10px 12px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:linear-gradient(180deg,rgba(9,24,36,.84),rgba(3,9,14,.72));box-shadow:0 8px 26px rgba(0,0,0,.28);backdrop-filter:blur(10px)}.soj78-hud-card small{display:block;color:#a9bcc9;font-size:.58rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.soj78-hud-card strong{display:block;color:#fff;font-size:clamp(.95rem,1.5vw,1.3rem);font-weight:950;line-height:1.05}.soj78-hud-card em{display:block;color:var(--soj-gold);font-style:normal;font-size:.76rem;margin-top:3px}.soj78-hud-card.score strong{color:var(--soj-gold);font-variant-numeric:tabular-nums}.soj78-hud-left,.soj78-hud-right{display:flex;gap:8px;min-width:0}.soj78-hud-left{flex:1}.soj78-hud-right{justify-content:flex-end}.soj78-shotbar{position:absolute;left:clamp(12px,1.8vw,26px);right:clamp(12px,1.8vw,26px);bottom:clamp(14px,2.2vw,28px);height:16px;border-radius:999px;padding:3px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.11);z-index:11;box-shadow:0 8px 26px rgba(0,0,0,.32);pointer-events:none}.soj78-shotfill{height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#54d8ff,#f1d45b,#ff6a56);box-shadow:0 0 18px rgba(243,194,69,.36)}.soj78-caption{position:absolute;left:50%;bottom:clamp(43px,7svh,70px);transform:translateX(-50%);z-index:14;max-width:min(740px,calc(100% - 36px));padding:11px 17px;border:1px solid rgba(243,194,69,.25);border-radius:999px;background:rgba(0,0,0,.58);backdrop-filter:blur(10px);text-align:center;font-weight:950;letter-spacing:.04em;text-transform:uppercase;color:#fff;opacity:0;transition:opacity .18s ease}.soj78-caption.show{opacity:1}.soj78-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;z-index:14}.soj78-controls-left,.soj78-controls-right{display:flex;align-items:center;gap:8px;min-width:0}.soj78-button{appearance:none;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));color:#fff;min-height:48px;padding:10px 15px;font-weight:950;cursor:pointer;box-shadow:0 8px 26px rgba(0,0,0,.22)}.soj78-button.primary{background:linear-gradient(180deg,#ff695e,#c4212d);border-color:rgba(255,205,113,.45)}.soj78-button.gold{background:linear-gradient(180deg,#ffe27a,#e1a31f);border-color:rgba(255,236,151,.5);color:#1e1404}.soj78-button:focus-visible,.soj78-nav a:focus-visible,.soj78-icon:focus-visible{outline:3px solid var(--soj-gold);outline-offset:3px}.soj78-meter-label{color:#b8c9d4;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.soj78-overlay{position:absolute;inset:0;z-index:30;display:grid;place-items:center;padding:clamp(10px,2vw,28px);background:radial-gradient(circle at 50% 48%,rgba(10,25,38,.4),rgba(0,0,0,.78));backdrop-filter:blur(6px);overflow:auto;overscroll-behavior:contain}.soj78-overlay[hidden]{display:none}.soj78-panel{width:min(1020px,100%);max-height:calc(100svh - 108px);overflow:auto;overscroll-behavior:contain;padding:clamp(18px,3vw,34px);border:1px solid rgba(255,255,255,.13);border-radius:26px;background:linear-gradient(180deg,rgba(11,32,49,.96),rgba(5,13,20,.97));box-shadow:0 28px 80px rgba(0,0,0,.55)}.soj78-panel.center{text-align:center}.soj78-kicker{margin:0 0 9px;color:var(--soj-gold);font-size:.72rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.soj78-panel h1,.soj78-panel h2{margin:.1rem 0 .65rem;font-size:clamp(2.2rem,5vw,5.4rem);line-height:.94;letter-spacing:-.05em}.soj78-panel h1 span,.soj78-panel h2 span{color:var(--soj-gold)}.soj78-panel p{color:#d3e0e8;line-height:1.55}.soj78-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.soj78-mode-card{padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.045);text-align:left}.soj78-mode-card strong{display:block;color:#fff}.soj78-mode-card span{display:block;color:#adc0cb;font-size:.88rem;margin-top:6px;line-height:1.45}.soj78-panel-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}.soj78-parchment{position:relative;height:min(56svh,440px);overflow:hidden;border-radius:20px;border:1px solid rgba(94,59,19,.33);background:linear-gradient(180deg,#f0dfb8,#d7bd82);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);margin:16px 0;color:#382411}.soj78-parchment::before{content:"We the People";position:absolute;top:26px;left:0;right:0;text-align:center;font:italic 900 clamp(2.2rem,6vw,5.2rem) Georgia,serif;color:rgba(82,53,19,.08);pointer-events:none}.soj78-crawl{position:absolute;left:10%;right:10%;bottom:-82%;display:grid;gap:1rem;text-align:center;font:800 clamp(1rem,2vw,1.42rem)/1.52 Georgia,"Times New Roman",serif;color:#37230f;text-shadow:0 1px 0 rgba(255,248,226,.65);animation:soj78-crawl 13s linear forwards}.soj78-crawl strong{display:block;color:#6b4214;letter-spacing:.16em;text-transform:uppercase;font-size:1.15em}.soj78-crawl.end{animation-duration:15s}@keyframes soj78-crawl{0%{transform:translateY(0)}100%{transform:translateY(-165%)}}.soj78-fade-top,.soj78-fade-bottom{position:absolute;left:0;right:0;height:22%;z-index:2;pointer-events:none}.soj78-fade-top{top:0;background:linear-gradient(180deg,#f0dfb8,rgba(240,223,184,0))}.soj78-fade-bottom{bottom:0;background:linear-gradient(0deg,#d7bd82,rgba(215,189,130,0))}.soj78-orient{position:absolute;z-index:40;inset:auto 12px calc(64px + env(safe-area-inset-bottom,0px)) 12px;display:none;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(243,194,69,.38);border-radius:17px;background:rgba(4,10,15,.94);box-shadow:0 14px 44px rgba(0,0,0,.4)}.soj78-orient strong{color:var(--soj-gold)}.soj78-orient span{color:#d1dfe7;font-size:.86rem}.soj78-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media(max-width:900px){.soj78-grid{grid-template-columns:1fr}.soj78-nav a:nth-child(3){display:none}.soj78-hud{top:8px}.soj78-hud-card{padding:8px 9px}.soj78-hud-card:nth-child(n+3){display:none}.soj78-controls{position:fixed;left:0;right:0;bottom:0;margin:0;padding:8px max(10px,env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px));background:linear-gradient(180deg,rgba(7,19,29,.76),rgba(3,8,12,.98));border-top:1px solid rgba(255,255,255,.1)}.soj78-stage{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}.soj78-controls-left,.soj78-controls-right{flex:1}.soj78-controls-left{display:grid;grid-template-columns:1fr 1fr}.soj78-controls-right{justify-content:flex-end}.soj78-button{min-height:54px;padding:9px 12px}.soj78-meter-label{display:none}.soj78-parchment{height:min(52svh,360px)}.soj78-crawl{left:7%;right:7%;font-size:clamp(.95rem,3.4vw,1.18rem)}}
@media(orientation:portrait) and (max-width:900px){.soj78-orient{display:flex}.soj78-canvas-wrap{filter:saturate(.85) brightness(.86)}}
@media(max-height:560px){.soj78-topbar{height:48px}.soj78-brand small{display:none}.soj78-nav a{display:none}.soj78-stage{padding:6px}.soj78-controls{margin-top:5px}.soj78-button{min-height:42px}.soj78-panel{max-height:calc(100svh - 64px);padding:16px}.soj78-panel h1,.soj78-panel h2{font-size:clamp(1.8rem,4vw,3.4rem)}.soj78-parchment{height:min(50svh,310px)}}
@media(prefers-reduced-motion:reduce){.soj78-crawl{animation:none;transform:none;bottom:auto;top:88px;position:relative}.soj78-parchment{height:auto;min-height:300px;padding-bottom:90px}.soj78-caption{transition:none}}
button.soj78-mode-card{appearance:none;width:100%;cursor:pointer;color:inherit;font:inherit}button.soj78-mode-card:hover,button.soj78-mode-card:focus-visible{border-color:rgba(243,194,69,.58);background:rgba(243,194,69,.085);outline:3px solid rgba(243,194,69,.45);outline-offset:2px}
@media(min-width:1000px){.soj78-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.soj78-panel{width:min(1120px,100%)}}


/* V79: cinematic parchment crawl readability + real motion pass. */
.soj78-panel.crawlpanel{width:min(1180px,calc(100vw - 32px));max-height:calc(100svh - 84px);overflow:auto;padding:clamp(18px,2.6vw,34px);background:linear-gradient(180deg,rgba(8,28,44,.98),rgba(3,10,16,.985));text-align:center}
.soj79-episode-title{font-size:clamp(2.8rem,6.6vw,6.7rem)!important;letter-spacing:-.055em!important;line-height:.88!important;margin:.15rem 0 .55rem!important;color:#f8f3ea!important;text-transform:uppercase}.soj79-episode-title span{color:#f3c245!important}
.soj79-crawl-kicker{color:#e7c56a!important;letter-spacing:.18em!important}.soj79-cinematic-crawl{position:relative;height:min(58svh,500px);min-height:330px;overflow:hidden;margin:18px auto 16px;border:1px solid rgba(93,55,16,.55);border-radius:20px;background:radial-gradient(circle at 50% 18%,rgba(255,248,218,.98),rgba(237,215,165,.98) 42%,rgba(202,164,96,.98) 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.42),inset 0 0 60px rgba(84,48,12,.16),0 24px 70px rgba(0,0,0,.45);perspective:560px;isolation:isolate}.soj79-cinematic-crawl::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(94,58,19,.04) 1px,transparent 1px),linear-gradient(0deg,rgba(94,58,19,.04) 1px,transparent 1px);background-size:26px 26px;mix-blend-mode:multiply;pointer-events:none;z-index:1}.soj79-constitution-mark{position:absolute;top:22px;left:0;right:0;text-align:center;font:italic 900 clamp(2.4rem,7vw,6.2rem) Georgia,serif;color:rgba(77,45,13,.11);z-index:1;pointer-events:none}.soj79-crawl-mask{position:absolute;left:0;right:0;height:26%;z-index:4;pointer-events:none}.soj79-crawl-mask.top{top:0;background:linear-gradient(180deg,rgba(246,232,191,1),rgba(246,232,191,.92),rgba(246,232,191,0))}.soj79-crawl-mask.bottom{bottom:0;background:linear-gradient(0deg,rgba(202,164,96,1),rgba(202,164,96,.86),rgba(202,164,96,0))}.soj79-crawl-perspective{position:absolute;inset:0;z-index:2;overflow:hidden;transform-style:preserve-3d}.soj79-crawl-track{position:absolute;left:9%;right:9%;top:62%;display:grid;gap:1.15rem;transform-origin:50% 100%;animation:soj79-opening-crawl 18s linear forwards;color:#2a1708!important;text-align:center;font:900 clamp(1.22rem,2.35vw,1.95rem)/1.48 Georgia,"Times New Roman",serif;text-shadow:0 1px 0 rgba(255,250,232,.9)}.soj79-crawl-track h3{margin:0;color:#42230a!important;letter-spacing:.18em;text-transform:uppercase;font-size:1.35em}.soj79-crawl-track p{margin:0!important;color:#2a1708!important;background:rgba(255,248,225,.13);border-radius:10px;padding:.1em .25em;font-weight:900!important;line-height:1.48!important;max-width:860px;justify-self:center}.soj79-crawl-track.end{animation-name:soj79-ending-crawl;animation-duration:23s}.soj79-crawl-readable{margin:8px auto 0;max-width:860px;text-align:left;color:#dbe8ef}.soj79-crawl-readable summary{cursor:pointer;color:#f3c245;font-weight:900}.soj79-crawl-readable p{margin:.45rem 0 0!important;color:#dbe8ef!important;font-size:.95rem}.soj79-crawl-actions{position:sticky;bottom:0;z-index:8;padding-top:12px;background:linear-gradient(180deg,rgba(3,10,16,0),rgba(3,10,16,.92) 35%,rgba(3,10,16,.98));padding-bottom:4px}
@keyframes soj79-opening-crawl{0%{transform:rotateX(23deg) translateY(50%) scale(1.18);opacity:1}88%{opacity:1}100%{transform:rotateX(27deg) translateY(-178%) scale(.46);opacity:.92}}
@keyframes soj79-ending-crawl{0%{transform:rotateX(23deg) translateY(54%) scale(1.16);opacity:1}88%{opacity:1}100%{transform:rotateX(27deg) translateY(-210%) scale(.42);opacity:.92}}
@media(max-width:900px){.soj78-panel.crawlpanel{width:min(100%,calc(100vw - 18px));max-height:calc(100svh - 92px);padding:14px}.soj79-cinematic-crawl{height:min(55svh,390px);min-height:280px}.soj79-crawl-track{left:7%;right:7%;font-size:clamp(1.02rem,3.6vw,1.35rem);gap:.95rem}.soj79-episode-title{font-size:clamp(2rem,10vw,4rem)!important}}
@media(max-height:560px){.soj79-cinematic-crawl{height:min(50svh,300px);min-height:220px}.soj79-crawl-track{font-size:clamp(.96rem,2.7vw,1.25rem);gap:.75rem;top:58%}.soj79-episode-title{font-size:clamp(1.7rem,6vw,3.1rem)!important}}
@media(prefers-reduced-motion:reduce){.soj79-crawl-track{animation-duration:28s!important}.soj79-crawl-track.end{animation-duration:34s!important}}

/* R9 — restrained usability layer. Cinematic composition and game canvases stay under their existing controllers. */
:root{--r9-ink:#10283a;--r9-paper:#faf7f0;--r9-gold:#e8bc6b;--r9-rule:#dcd8cf}
html{scroll-padding-top:120px}
body.jt-polished-r9{overflow-wrap:break-word}
body.jt-polished-r9 :where(a,button,summary,input,select,textarea):focus-visible{outline:3px solid #c48d35;outline-offset:4px}
body.jt-polished-r9 :where(a,button){touch-action:manipulation}
body.jt-polished-r9 :where(button,input,select,textarea){font:inherit}
body.jt-polished-r9 main :where(img){max-width:100%}
body.jt-polished-r9 main :where(article,.card,.panel,.paper-card,.a-book,.jtbf-book){min-width:0}
body.jt-polished-r9 :where(.v39-skip,.skip-link,.a-skip){z-index:10010!important}
body.jt-polished-r9 :where(.v39-explore,.a-menu) summary{min-height:44px;align-content:center;cursor:pointer}
body.jt-polished-r9 :where(.v39-mega,.a-menu-panel){overscroll-behavior:contain}
body.jt-polished-r9 .v39-mega a{padding-block:8px;line-height:1.45}
body.jt-polished-r9 .v39-mega h2{line-height:1.2}
body.jt-polished-r9 :where(.v39-search-link,.ar5-author-entry){min-height:44px;align-content:center}
body.jt-polished-r9 :where(.jtbf-actions,.a-actions,.jr-buttons){gap:12px}
body.jt-polished-r9 :where(.jtbf-actions,.a-actions,.jr-buttons) a{min-height:44px;align-content:center;white-space:normal}
body.jt-polished-r9 .jtbf-card{display:flex;flex-direction:column;min-width:0}
body.jt-polished-r9 .jtbf-card .jtbf-actions{margin-top:auto;padding-top:12px}
body.jt-polished-r9 :where(.jtbf-intro,.jtbf-note){max-width:72ch}
body.jt-polished-r9 .jtbf-title{overflow-wrap:normal;text-wrap:balance}
body.jt-polished-r9 main :where(.page-jump-nav,.page-jump-links){row-gap:10px}
body.jt-polished-r9 main :where(.page-jump-nav,.page-jump-links) a{display:inline-flex;align-items:center;min-height:40px}
.r9-table-scroll{width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;margin:14px 0}
.r9-table-scroll table{margin:0;max-width:none}
.r9-table-scroll:focus-visible{outline:3px solid #c48d35;outline-offset:3px}
.r9-archive-notice{max-width:1160px;margin:22px auto;padding:16px 22px;border-left:4px solid #aa7934;background:#fff8e8;color:#3d321e;font:400 15px/1.65 system-ui,sans-serif}
.r9-archive-notice a{color:#154c65;font-weight:700;text-decoration:underline}
.r9-tech{padding:52px clamp(20px,4.5vw,72px);background:#0e2737;color:#f6f3eb;border-block:1px solid #2b4250;isolation:isolate}
.r9-tech__inner{max-width:1260px;margin:auto;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,1fr);gap:40px;align-items:center}
.r9-tech .r9-eyebrow{font:700 11px/1.5 system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#ebc580;margin:0 0 12px}
.r9-tech h2{font:700 clamp(27px,3.6vw,46px)/1.15 system-ui,sans-serif;letter-spacing:-.025em;text-wrap:balance;color:#fff;margin:0 0 16px}
.r9-tech p{font:400 16px/1.75 system-ui,sans-serif;color:#dfebf0;max-width:66ch;margin:0 0 14px}
.r9-tech .r9-tech__note{font-size:12px;color:#bfced6;margin:16px 0 0}
.r9-tech__actions{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.r9-tech__actions a{display:block;border:1px solid #718795;border-radius:5px;padding:14px 20px;font:650 15px/1.4 system-ui,sans-serif;color:#fff;text-decoration:none;text-align:center;min-height:48px}
.r9-tech__actions a:first-child{background:#f3e1bd;border-color:#f3e1bd;color:#112b3d}
.r9-tech__actions a:hover{filter:brightness(1.08);text-decoration:underline;text-underline-offset:4px}
.r9-footer{display:block;clear:both;padding:30px clamp(20px,4vw,64px);background:#081b28;color:#d2dee5;border-top:1px solid #2d4451;font:400 13px/1.65 system-ui,sans-serif}
.r9-footer__inner{max-width:1260px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.r9-footer__brand{font-weight:750;color:#fff;margin:0}
.r9-footer__copy{display:block;font-size:12px;color:#bfcdd6;font-weight:400;margin-top:3px}
.r9-footer nav{display:flex;flex-wrap:wrap;gap:4px 20px;align-items:center}
.r9-footer a,.r9-footer button{font:600 13px/1.5 system-ui,sans-serif;color:#e8eff4;display:inline-flex;align-items:center;min-height:44px;background:none;border:0;padding:4px 0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.r9-footer a:hover,.r9-footer button:hover{color:#f4cf88}
.r9-policy{background:var(--r9-paper);color:var(--r9-ink);padding:clamp(35px,5vw,76px) 22px;font:400 17px/1.8 system-ui,sans-serif}
.r9-policy__shell{max-width:1000px;margin:auto}
.r9-policy .r9-eyebrow{font:750 11px/1.5 system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#586873;margin:0 0 14px}
.r9-policy h1{font:750 clamp(34px,4.7vw,58px)/1.1 system-ui,sans-serif;letter-spacing:-.035em;text-wrap:balance;max-width:20ch;color:#10283a;margin:0 0 22px}
.r9-policy h2{font:720 clamp(23px,2.6vw,31px)/1.25 system-ui,sans-serif;margin:35px 0 12px;color:#10283a}
.r9-policy h3{font:700 20px/1.3 system-ui,sans-serif;color:#10283a;margin:23px 0 10px}
.r9-policy p,.r9-policy ul{max-width:79ch;margin:0 0 18px}
.r9-policy ul{padding-left:24px}
.r9-policy a{color:#125570;text-decoration:underline;text-underline-offset:3px;font-weight:650}
.r9-policy .r9-policy__lead{font-size:19px;line-height:1.65;color:#38515f}
.r9-policy .r9-policy__notice{border-left:4px solid #b48a43;padding:18px 22px;background:#f0eadc;margin:25px 0}
.r9-policy .r9-policy__nav{display:flex;flex-wrap:wrap;gap:8px 20px;border-block:1px solid var(--r9-rule);padding:16px 0;margin:28px 0}
.r9-policy .r9-policy__nav a{font-size:14px;min-height:36px;align-content:center}
.r9-policy .r9-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.r9-policy .r9-contact-card{padding:24px;border:1px solid var(--r9-rule);border-radius:8px;background:#fff}
.r9-policy .r9-contact-card h2{font-size:24px;margin-top:0}
.r9-policy .r9-contact-card p{font-size:15px}
.r9-policy button{padding:12px 18px;border:1px solid #17445b;border-radius:4px;background:#102d41;color:#fff;font-weight:650;cursor:pointer;min-height:46px}
.r9-consent-banner{position:fixed;bottom:18px;left:18px;width:min(430px,calc(100vw - 36px));z-index:9500;background:#fffdf8;color:#183244;border:1px solid #b9c5cb;border-radius:10px;box-shadow:0 14px 60px #0004;padding:20px;font:400 14px/1.6 system-ui,sans-serif}
.r9-consent-banner[hidden]{display:none!important}
.r9-consent-banner h2{margin:0 0 6px;font:750 17px/1.3 system-ui,sans-serif;color:#183244}
.r9-consent-banner p{margin:0 0 12px;font:400 13px/1.55 system-ui,sans-serif;color:#344e5d}
.r9-consent-actions{display:flex;gap:10px;flex-wrap:wrap}
.r9-consent-actions button{flex:1;min-height:44px;padding:10px 14px;background:#fff;color:#17374a;border:1px solid #577285;border-radius:4px;font:650 13px/1.35 system-ui,sans-serif;cursor:pointer}
.r9-consent-actions button:hover{background:#eaf1f4}
.r9-consent-banner a{color:#1b5773;font-size:12px;text-decoration:underline;display:inline-block;margin-top:10px}
.r9-privacy-dialog{max-width:520px;width:calc(100vw - 40px);max-height:85svh;overflow:auto;background:#fffdf8;color:#173448;border:1px solid #839aaa;border-radius:10px;padding:28px;font:400 15px/1.7 system-ui,sans-serif;box-shadow:0 22px 80px #0005;z-index:11000}
.r9-privacy-dialog::backdrop{background:#041523a8}
.r9-privacy-dialog h2{font:750 26px/1.2 system-ui,sans-serif;color:#173448;margin:0 0 18px}
.r9-privacy-dialog p{font:400 15px/1.7 system-ui,sans-serif;color:#2e4b5d;margin:0 0 14px}
.r9-privacy-dialog .r9-close{display:block;margin:20px 0 0 auto;border:0;background:none;text-decoration:underline;font:650 14px/1.4 system-ui,sans-serif;color:#173448;padding:10px;min-height:42px;cursor:pointer}
.r9-privacy-dialog a{color:#15506e}
@media(max-width:700px){
 html{scroll-padding-top:102px}
 body.jt-polished-r9 .v39-mega{max-height:75svh;overflow-y:auto}
 .r9-tech__inner,.r9-policy .r9-contact-grid{grid-template-columns:1fr;gap:24px}
 .r9-tech{padding-block:36px}.r9-tech h2{font-size:29px}
 .r9-footer__inner{display:block}.r9-footer nav{margin-top:16px;gap:3px 18px}
 .r9-policy{padding:36px 20px;font-size:16px}.r9-policy h1{font-size:35px}
 .r9-consent-banner{bottom:10px;left:10px;width:calc(100vw - 20px);padding:15px}
 body.jt-polished-r9 .hd149-flagship-strip{margin:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}body.jt-polished-r9 :where(.r9-tech,.r9-footer,.jtbf-card,.a-book){animation:none!important;transition:none!important}}
@media print{.r9-footer,.r9-tech,.r9-consent-banner,.r9-privacy-dialog,.hd149-flagship-strip{display:none!important}.r9-table-scroll{overflow:visible}.r9-policy{background:white;color:#111;padding:0}.r9-policy a{color:#111}}

body.jt-polished-r9 .jtv4-scene-fallback .jtv4-family-purpose{font:700 clamp(16px,2vw,26px)/1.4 system-ui,sans-serif;color:#f4d6a0;max-width:28ch;margin:17px 0;text-transform:none;letter-spacing:.02em}
body.jt-polished-r9 .jtbf-book .jtbf-copy{min-width:0}
body.jt-polished-r9 .jtbf-book .jtbf-amazon{min-height:44px;align-content:center}


body.r12-page.r12-interactive .v80-page-card .sub{color:#354d5c!important;font-size:17px;line-height:1.8}
body.r12-page.r12-interactive .v80-page-card{box-sizing:border-box;min-width:0}
body.r12-page.r12-interactive .v80-page-card{background:#f6f3eb!important;color:#243b49!important}
body.r12-page.r12-interactive .v80-page-card :is(h1,h2,h3,p,li){color:#243b49!important}
body.r12-page.r12-interactive .v80-page-card a:not(.v80-btn){color:#1c526a!important}
body.r12-page.r12-interactive .v80-page-card .v80-btn{background:#183e50!important;color:#fff5e4!important;border-color:#183e50!important}
body.r12-page.r12-interactive :is(.v80-actions,.nmh-actions){min-width:0;flex-wrap:wrap;max-width:100%}
body.r12-page.r12-interactive :is(.v80-actions,.nmh-actions)>a{min-width:0!important;max-width:100%;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
body.r12-page.r12-interactive .nmh-strip{box-sizing:border-box}
body.r12-page.r12-interactive :is(.arcade-zone,.game-shell,.game-container){scroll-margin-top:20px}


/* Defined native component boundaries, shared by embedded and standalone games. */
body.r12-page .r12-skip,body.r12-page .r12-skip:focus{background:#172c3c!important;color:#fff8e9!important}
body.r12-page .r12-page-outline{background:#f3eee2;color:#203e4e;padding:16px 20px}
body.r12-page .r12-page-outline :is(summary,a){color:#234f64!important;background:transparent!important}
body.r12-page :is(.ta-btn.primary,.ta-controls button.primary,.v80-btn.primary,.psg65-button.primary){background:#a52a35!important;border-color:#b7464b!important;color:#fff8eb!important}
body.r12-page :is(.v55-source-game-links,.v58-rally-source-links) a{color:#f4e5b7!important;background:#173d4d!important;border:1px solid #9ab4ba}
body.r12-page .v86-context-link{background:#eee5d3;color:#3f4c53}
body.r12-page .v86-context-link strong{color:#3f4c53!important}
body.r12-page .v86-context-link a{color:#21566c!important}
body.r12-page :is(.ta-section,.ta-card,.ta-panel){color:#f7f2e9}
body.r12-page :is(.ta-section,.ta-card,.ta-panel) :is(h2,h3){color:#f7f2e9!important}
body.r12-page .ta-panel>a{color:#e9c78b!important}
body.r12-page .ta-seal strong{color:#fff4d6!important}
body.r12-page .r12-content :is(.nmh-strip,.v80-slate,.v82-slate){background:#102b3b;color:#edf1e7}
body.r12-page .r12-content :is(.nmh-strip,.v80-slate,.v82-slate) :is(h2,h3,p,strong,blockquote,.v82-trial-lines span){color:#edf1e7!important}
body.r12-page .r12-content :is(.nmh-strip,.v80-slate,.v82-slate) .v80-kicker{color:#e8c189!important}
body.r12-page .r12-content :is(.nmh-strip,.v80-slate,.v82-slate) .v80-btn:not(.primary){background:#e6c188!important;color:#233b49!important}
body.r12-page .r12-content .v80-bookmark{background:#eee6d6;color:#263f4e}
body.r12-page .r12-content .v80-bookmark :is(h2,p,strong){color:#263f4e!important}
body.r12-page .r12-content .v80-bookmark .v80-btn:not(.primary){background:#173f50!important;color:#fff4df!important}
body.r12-books .v84-hero{background:#f4f1eb;color:#213e4f}
body.r12-books .v84-hero :is(.v84-title,.r12-book-section-title){color:#213e4f}
body.r12-books .v84-hero .v84-kicker{color:#76521b}
body.r12-books .v84-hero figcaption{color:#3c5362}
body.r12-books .v84-card .v84-kicker{color:#edc77b}
body.r12-books .a-bookmark-art{min-width:0;max-width:100%;margin-inline:0}
body.r12-books .a-bookmark-art img{max-width:100%;height:auto;display:block}
body.r12-books .a-bookmark-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media(max-width:800px){body.r12-books .a-bookmark-grid{grid-template-columns:minmax(0,1fr)}}
body.r12-services .actions a:not(.button){background:transparent!important;color:#174c66!important}
body.r12-reading-page .am-mini-stat :is(strong,span){color:#fff0d0!important}
body.r12-page :is(.ds52-section,.ds52-console){background:#102d38;color:#f3ecdd}
body.r12-page .ds52-sign{background:#f0d28c!important;color:#563112!important}
body.r12-page .ds52-sign :is(strong,span){color:#563112!important}
body.r12-page .ds52-record-link{color:#fff0c8!important}
body.r12-reading-page .am-satire-section a{color:#fff0c8!important}
body.r12-interactive .arcade-zone{background:#122e3c;color:#f1eee2}
body.r12-interactive .arcade-zone :is(.arcade-zone-head h2,.arcade-zone-head p,.arcade-game-head h3,.arcade-game-intro,.arcade-game-number,.arcade-zone-badge){color:#f2eddf!important;background:transparent!important}
body.r12-interactive .arcade-zone .arcade-game{background:#173848;color:#f2eddf}
body.r12-interactive .arcade-boundary-mini{background:#e9e4d8;color:#2c4654;padding:12px}
body.r12-interactive .arcade-boundary-mini :is(summary,p){color:#2c4654!important}
body.r12-interactive .arcade-ringmaster-copy{background:#102b39;color:#f2eddf}
body.r12-interactive .arcade-ringmaster-copy :is(strong,span){color:#f2eddf!important}
body.r12-interactive .v60r-arcade-direct-link a{color:#eed39a!important}
body.r12-interactive .time-action.remedy{background:#196440!important;color:#fff8e8!important}
/* Readable variants for paper panels and native editorial cabinets. */
body.r12-page .r12-content .ta-paper{background:#e9d7ac!important;color:#352310!important}
body.r12-page .r12-content .ta-paper :is(h2,h3,p,a){color:#352310!important}
body.r12-page .r12-content .ta-paper .ta-seal{background:#102c3a!important;color:#fff0d3!important}
body.r12-page .r12-content .ta-paper .ta-seal strong{color:#fff0d3!important}
body.r12-books .v84-card.paper .v84-kicker{color:#705019}
body.r12-books .a-seals .ta-seal{background:#163747;color:#fff0d3}
body.r12-page :is(.v84-skip,.ta-skip,.a-skip){background:#172c3c!important;color:#fff8e9!important}
body.r12-services .conversion-band .actions a:not(.button){color:#fff3d9!important}
body.r12-page .ds52{background:#102d38!important;color:#f3ecdd!important}
body.r12-page .ds52 .ds52-console{background:#123541!important;color:#f3ecdd!important}
body.r12-page .ds52 .ds52-utility button{background:#163d4b!important;color:#fff3dd!important}
body.r12-page .ds52 :is(.ds52-assist,.ds52-bottom-line a,.ds52-permalink){color:#ffedc1!important}
body.r12-page :is(.bp53-embed,.v55-source-game-section){background:#142f3d!important;color:#f0ece0!important}
body.r12-page :is(.bp53-embed,.v55-source-game-section) :is(h2,h3,p,strong){color:#f0ece0!important}
body.r12-page .bp53-embed-card{background:#183a4a!important;color:#f0ece0!important}
body.r12-page .bp53-embed-boundary{background:#e8dfcd!important;color:#304956!important}
body.r12-page .bp53-embed-boundary strong{color:#304956!important}
body.r12-interactive .nmh-strip .nmh-title{color:#fff0d3!important}
body.r12-interactive .hs-token{background:#e9e2d5!important;color:#294453!important}
body.r12-interactive .arcade-zone .arcade-game{background:#173848!important;color:#f2eddf!important}
body.r12-interactive .arcade-zone .arcade-game .dunk-caption{color:#f2eddf!important}
body.r12-interactive .arcade-zone .time-display span{color:#f2eddf!important}
#r12-site-footer{background:#132b37!important;color:#e9ece4!important}
/* Explicit foregrounds for the remaining small-label and paper variants. */
body.r12-campaign .j96-step{background:#ebe7de!important;color:#263e4a!important}
body.r12-campaign .j96-step :is(small,strong,p){color:#263e4a!important}
body.r12-campaign .j97-step-initiative :is(.j97-number,.j97-caption){color:#fff4e1!important}
body.r12-page .ds52 .ds52-header{background:#102d38!important;color:#f3ecdd!important}
body.r12-page .r12-content .ta-paper a.ta-btn.primary{color:#fff8eb!important}
body.r12-books .a-seals .ta-seal span{color:#e5e6d9!important}
body.r12-interactive .arcade-zone .time-dial span{color:#314b59!important}
body.r12-page.r12-reading-page main.r12-content .pac-hero .breadcrumbs{color:#f0e7d2!important}
body.r12-page.r12-reading-page main.r12-content .pac-section-head p{color:#344f5e!important}
body.r12-page.r12-campaign .j96-step.jtv3-initiative-step{background:#172c3c!important;color:#fff3dc!important}
body.r12-page.r12-campaign .j96-step.jtv3-initiative-step :is(small,strong,p){color:#fff3dc!important}
body.r12-page.r12-campaign.jt-visual-r3 .j97-journey a.j97-step-initiative :is(.j97-number,.j97-caption){color:#fff4e1!important}
body.r12-page.r12-evidence main.r12-content .library-hero .breadcrumbs span{color:#f0e7d2!important}
/* Dynamic cabinet UI: pair each text/control palette with an opaque surface. */
body.r12-page :is(.v58r-overlay-card button,.soj78-button.primary){background:#9f2d40!important;border-color:#c3636f!important;color:#fff7e8!important}
body.r12-page .v58r-overlay-card small{color:#d0dedc!important}
body.r12-reading-page .am-wheel-labels span{background:#741b2d!important;color:#fff5df!important;border-radius:4px;padding:2px 4px}
body.r12-page :is(.v56-primary,.v56-control-primary,.v56-stamp-button){background:#a32b3b!important;border-color:#cc6772!important;color:#fff8e9!important}
body.r12-page .v56-control-primary span{color:#fff8e9!important}
body.r12-page .v56-stat{background:#102b3b!important;color:#fff4db!important}
body.r12-page .v56-stat :is(span,small){color:#d4dfe1!important}
body.r12-page .v56-console{background:#102b3b!important;color:#f4eddd!important}
body.r12-page :is(.v56-privacy-note,.v56-key-help){color:#d4dfe1!important}
body.r12-page .v56-toolbar button{background:#173d4d!important;color:#fff4de!important;border-color:#749da8!important}
body.r12-page .v56-boundary a{color:#ffe5af!important}
body.r12-page .v56-york-building :is(span,small){background:#102d3b!important;color:#f9f1dd!important;padding:3px 5px}
body.r12-page .v56-window-number{color:#fff1d5!important;opacity:1!important}
body.r12-page .v56-cause-machine small{color:#5b3c33!important}
body.r12-page .bo54-game{background:#102a3b!important;color:#fff2dc!important}
body.r12-page .bo54-game :is(.bo54-sign,.bo54-stat,.bo54-load-title,.bo54-cycle-step,.bo54-overlay-card,.bo54-legend,.bo54-boundary){background:#143848!important;color:#fff2dc!important}
body.r12-page .bo54-game :is(.bo54-sign,.bo54-stat,.bo54-load-title,.bo54-cycle-step,.bo54-overlay-card,.bo54-legend,.bo54-boundary) :is(p,span,strong,small,h4){color:#fff2dc!important}
body.r12-page .bo54-game .bo54-legend-row{background:#143848!important;color:#e2e8df!important}
body.r12-page .bo54-game .bo54-legend-row :is(span,strong){color:#e2e8df!important}
body.r12-page .bo54-game .bo54-key{background:#153948!important;color:#e2e8df!important}
body.r12-page .bo54-game .bo54-washer-label{background:#173748!important;color:#fff3dc!important;padding:4px}
body.r12-page .bo54-game .bo54-boundary a{color:#ffe0a5!important}
body.r12-page .r12-skip{width:max-content!important;max-width:calc(100% - 40px)!important;height:auto!important;overflow:visible!important;clip:auto!important;clip-path:none!important;white-space:normal!important}
body.r12-page .v56-service-window{background:#173451!important;color:#fff1d5!important;border-color:#86a3ac!important}
body.r12-page .v56-service-window :is(strong,span){color:#fff1d5!important}
body.r12-page .v56-service-window.is-selected{background:#234957!important;border-color:#e0b56f!important}
body.r12-page .v56-cause-machine small{background:#eee4d4!important;color:#5b3c33!important;padding:3px}
body.r12-page :is(.v58r-stat strong,.v56-cause-machine strong){font-size:clamp(12px,3vw,18px)!important;line-height:1.3!important;letter-spacing:0!important}
/* Read complete sections without the legacy 800px offscreen placeholders.
   This also makes fragment destinations, no-script reading and print reliable. */
body.r12-page main section{content-visibility:visible!important;contain-intrinsic-size:none!important}

/* Immersive Episode I uses its native game navigation after boot.
   The shared navigation remains available in the no-JavaScript fallback. */
body.r12-page.r12-interactive:has(.soj78-shell)>:is(.r12-header,.r12-footer,.r12-context-link,.r12-publication-context,.r12-support-context){display:none!important}
body.r12-page.r12-interactive:has(.soj78-shell)>.r12-game-title{display:none}
body.r12-page.r12-interactive:has(.soj78-shell)>aside[aria-label="New 3D Procedural Grand Prix"]{display:none!important}

.r12-interactive [data-r12-reveal="visible"]{opacity:1!important;visibility:visible!important;transform:none!important}
