:root { --ink:#000; --accent:#00a2ff; --ref:#2475b7; --blue:#00a2ff; --red:#ed220d; --green:#60d937; --amber:#ffb000; }
.reveal .l1b { --fs-body:40px; }
.reveal .l1b .slide-body { justify-content:center; }
.reveal .l1b-title { justify-content:center!important; }
.reveal .l1b-title > h2 { font-size:90px; max-width:900px; line-height:1.02; }
.reveal .l1b-title-copy { display:flex; flex-direction:column; height:650px; justify-content:space-between; }
.reveal .l1b-title-copy h3 { font-size:48px; }
.reveal .l1b-title-copy p { font-size:28px; font-weight:600; }
.reveal .l1b-title-art { position:absolute; right:30px; top:50%; transform:translateY(-50%); width:680px; max-height:880px; object-fit:contain; margin:0; mix-blend-mode:multiply; }
.reveal .l1b-two { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; height:100%; }
.reveal .l1b-two.wide-left { grid-template-columns:1.35fr .65fr; }
.reveal .l1b-two.media-right { grid-template-columns:1fr 1.08fr; }
.reveal .l1b-two.media-left { grid-template-columns:1.15fr .85fr; }
.reveal .l1b-copy { font-size:40px; }
.reveal .l1b-subhead { font-size:42px; font-weight:700; line-height:1.15; margin:0 0 18px; }
.reveal .l1b-copy.big-bullets { font-size:43px; }

/* Lecture 3B's shared accents and media treatment. */
.reveal .l1b .l1b-subhead { color:#087bb9; font-size:38px; margin-top:10px; }
.reveal .l1b .source-media img { max-height:680px; width:100%; object-fit:contain; }
.reveal .l1b a { color:#087bb9; }
.reveal .l1b-two > * { min-width:0; }
.reveal .section-title .section-label { color:var(--muted); font-size:28px; margin-bottom:28px; }
.reveal .placeholder { border:2px dashed var(--line); padding:48px; color:var(--muted); font-size:32px; }
.reveal .placeholder p { margin:0; }

/* Experimental case studies: keep original plot labels legible in print. */
.reveal .exotic-slide .l1b-copy { font-size:34px; line-height:1.27; }
.reveal .exotic-slide .l1b-copy p { margin:20px 0; }
.reveal .exotic-slide .source-media { text-align:center; font-size:27px; }
.reveal .exotic-slide .source-media img { max-height:650px; }
.reveal .exotic-pair { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.reveal .exotic-pair .source-media img { height:490px; }
.reveal .exotic-takeaway { margin-top:28px; border-left:6px solid var(--accent); padding:18px 28px; background:#eff8fd; font-size:34px; }
.reveal .exotic-slide table { font-size:33px; width:100%; }
.reveal .exotic-slide td, .reveal .exotic-slide th { padding:22px 18px; }

/* Lecture 1 derivations and offline demonstrations. */
.reveal .physics-two { display:grid; grid-template-columns:1fr 1fr; gap:65px; align-items:center; font-size:33px; line-height:1.3; }
.reveal .physics-two > div { min-width:0; }
.reveal .physics-two img { max-height:550px; width:100%; object-fit:contain; }
.reveal .physics-caption { font-size:24px; color:#555; }
.reveal .vertex-diagram { display:block; width:90%; max-height:245px; margin:24px auto; }
.reveal .spin-diagram { display:block; width:94%; max-height:420px; margin:10px auto; }
.reveal .physics-movie { width:100%; max-height:550px; }
.reveal .physics-widget { width:100%; height:510px; border:0; }
.reveal .print-only { display:none; }
@media print { .reveal .physics-movie,.reveal .physics-widget { display:none!important; } .reveal .print-only { display:block!important; width:100%; object-fit:contain; } }
html.print-pdf .reveal .physics-movie,html.print-pdf .reveal .physics-widget { display:none!important; }
html.print-pdf .reveal .print-only { display:block!important; width:100%; object-fit:contain; }

/* Footer and page counter live inside the scaled 1920×1080 slide canvas. */
.reveal .deck-footer {
  position:absolute; left:var(--gutter-x); right:var(--gutter-x); bottom:28px;
  display:flex; justify-content:space-between; gap:28px;
  box-sizing:border-box; padding:12px 100px 0 0; border-top:1px solid var(--line);
  color:var(--muted); font-family:var(--deck-font); font-size:20px; font-weight:400; letter-spacing:0; line-height:1.2; z-index:20;
  pointer-events:none;
}
html.export-pdf .reveal .physics-movie,
html.export-pdf .reveal .physics-widget { display:none!important; }
html.export-pdf .reveal .print-only { display:block!important; width:100%; object-fit:contain; }
@media print { .reveal .screen-only { display:none!important; } }
html.print-pdf .reveal .screen-only,html.export-pdf .reveal .screen-only { display:none!important; }

/* Five wavefunction tiles share a scale and print as deterministic stills. */
.reveal .wave-gallery {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin:24px 0 30px;}
.reveal .wave-tile {text-align:center;min-width:0;}
.reveal .wave-label {font-size:36px;font-weight:700;margin-bottom:12px;}
.reveal .wave-tile img {display:block;width:100%;margin:0;border-radius:6px;box-shadow:0 3px 10px #00000012;}
.reveal .wave-tile .print-only {display:none;}
.reveal .wave-node {font-size:27px;margin-top:14px;color:#555;}
.reveal .wave-reading {font-size:34px;line-height:1.35;}
.reveal .wave-radial {display:block;width:100%;max-height:560px;object-fit:contain;}
@media print {.reveal .wave-live {display:none!important;}.reveal .wave-tile .print-only {display:block!important;}}
html.print-pdf .reveal .wave-live,html.export-pdf .reveal .wave-live {display:none!important;}
html.print-pdf .reveal .wave-tile .print-only,html.export-pdf .reveal .wave-tile .print-only {display:block!important;}

/* Match the page counter to the understated footer typography. */
.reveal .slide-number { font-family:var(--deck-font)!important; font-size:20px!important; font-weight:400; bottom:28px!important; }

/* Meson-family construction and named measured spectra. */
.reveal .family-widget {width:100%;height:730px;border:0;display:block;}
.reveal .family-poster {max-height:730px;object-fit:contain;}
.reveal .family-spectrum {display:block;width:100%;max-height:570px;object-fit:contain;}
.reveal .family-slide table {font-size:32px;width:100%;}
.reveal .family-slide td,.reveal .family-slide th {padding:15px 18px;}
.reveal .family-takeaway {font-size:32px;line-height:1.35;margin-top:22px;}
.reveal .family-slide .physics-two {font-size:30px;gap:60px;}
@media print {.reveal .family-widget {display:none!important;}}
html.print-pdf .reveal .family-widget,html.export-pdf .reveal .family-widget {display:none!important;}

/* GI introduction: equations left, documentation screenshot right. */
.reveal .gi-layout { display: grid; grid-template-columns: 53% 44%; gap: 3%; align-items: center; }
.reveal .gi-text { font-size: 32px; line-height: 1.3; }
.reveal .gi-text p { margin: 12px 0 18px; }
.reveal .gi-text .math.display { font-size: 30px; margin: 15px 0 22px; }
.reveal .gi-label { font-size: 28px; color: #527084; margin-top: 22px; }
.reveal .gi-ladder { border-left: 4px solid #078ac1; padding-left: 20px; margin-top: 24px; line-height: 1.6; }
.reveal .gi-picture img { width: 100%; margin: 0; border: 1px solid #e0e7ed; box-shadow: 0 5px 18px #243c5414; }
.reveal .gi-picture .physics-caption { font-size: 23px; margin-top: 14px; }
.reveal .gi-input-note { font-size: 23px; color: #697b88; margin-top: 24px; }

/* QCD introduction: simple observable labels and large original media. */
.reveal .qcd-intro { font-size:34px; }
.reveal .qcd-intro .slide-body { gap:16px; }
.reveal .qcd-vacuum-layout { display:grid; grid-template-columns:45% 52%; gap:3%; align-items:center; font-size:34px; }
.reveal .qcd-vacuum-media img { width:100%; max-height:560px; object-fit:contain; }
.reveal .qcd-aside { font-size:25px; line-height:1.35; color:#546c7d; border-left:4px solid #00a2ff; padding-left:18px; margin-top:20px; }
.reveal .qcd-flux-top { display:grid; grid-template-columns:55% 43%; gap:2%; align-items:center; }
.reveal .qcd-flux-pair { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.reveal .qcd-flux-pair img { width:100%; height:330px; object-fit:contain; margin:0; }
.reveal .qcd-media-title { font-size:27px; text-align:center; font-weight:600; }
.reveal .qcd-potential { width:100%; height:370px; object-fit:contain; margin:0; }
.reveal .qcd-flux-bottom { display:grid; grid-template-columns:43% 54%; gap:3%; font-size:31px; align-items:center; }
.reveal .qcd-flux-bottom .math.display { font-size:30px; }
.reveal .qcd-transition { border-left:5px solid #008ac0; padding:12px 20px; font-size:30px; line-height:1.3; background:#eff8fc; }
.reveal .qcd-vortex-layout { display:grid; grid-template-columns:76% 22%; gap:2%; align-items:center; }
.reveal .qcd-vortex-map { width:100%; max-height:620px; object-fit:contain; }
.reveal .qcd-vortex-layout > div:last-child { font-size:27px; }
.reveal .qcd-vortex-layout .physics-caption { font-size:22px; }
.reveal .qcd-vortex-analogy { width:180px; height:175px; object-fit:contain; margin:0 auto 8px; }
.reveal .qcd-effective-layout { display:grid; grid-template-columns:61% 36%; gap:3%; height:770px; align-items:center; }
.reveal .qcd-effective-copy { font-size:31px; line-height:1.25; }
.reveal .qcd-effective-copy ul { gap:12px; margin-bottom:26px; }
.reveal .qcd-quark-heading { font-size:39px; font-weight:700; margin:24px 0 12px; }
.reveal .qcd-top-muted { opacity:.4; }
.reveal .qcd-sm-formula { height:100%; text-align:center; }
.reveal .qcd-sm-formula img { max-height:715px; width:100%; object-fit:contain; margin:0; }
.reveal .qcd-sm-formula .physics-caption { font-size:22px; }
.reveal .qcd-flavour-strip { display:flex; gap:16px; margin-top:20px; }
.reveal .qcd-flavour-strip span { border:3px solid #c8a4e6; border-radius:12px; padding:6px 22px; color:#8254ac; font-size:35px; }
.reveal .quark-family-widget { width:100%; height:735px; border:0; }
.reveal .quark-family-poster { width:100%; max-height:735px; object-fit:contain; }
@media print { .reveal .qcd-live,.reveal .quark-family-widget { display:none!important; } }
html.print-pdf .reveal .qcd-live,html.export-pdf .reveal .qcd-live,
html.print-pdf .reveal .quark-family-widget,html.export-pdf .reveal .quark-family-widget { display:none!important; }

/* Full-height SM formula, with classroom row guides and flavour colours. */
.reveal .qcd-effective { overflow:visible!important; }
.reveal .qcd-effective > h2 { max-width:850px; font-size:66px; }
.reveal .qcd-effective-layout { display:block; height:auto; }
.reveal .qcd-effective-copy { width:850px; font-size:28px; }
.reveal .qcd-effective-copy ul { gap:8px; margin-bottom:16px; }
.reveal .qcd-effective .qcd-quark-heading { font-size:36px; margin:18px 0 10px; }
.reveal .qcd-effective .qcd-aside { font-size:23px; margin-top:14px; }
.reveal .light-flavour { color:#0787b4; }
.reveal .heavy-flavour { color:#b45e1b; }
.reveal .qcd-generation-grid { display:grid; grid-template-columns:repeat(3,110px); gap:8px 20px; margin-top:12px; text-align:center; }
.reveal .qcd-generation-grid small { font-size:20px; color:#657886; }
.reveal .qcd-generation-grid span { border:2px solid currentColor; border-radius:8px; font-size:32px; padding:2px 12px; }
.reveal .qcd-sm-formula { position:absolute; top:-30px; right:0; width:800px; height:auto; }
.reveal .sm-numbered { position:relative; width:795px; height:930px; padding-left:30px; }
.reveal .qcd-sm-formula .sm-numbered img { display:block; width:765px; height:930px; max-height:none; margin:0; }
.reveal .sm-row-number { position:absolute; left:0; transform:translateY(-50%); color:#24964c; font-size:18px; }
.reveal .qcd-sm-formula .physics-caption { font-size:23px; margin:8px 0 0; }
.reveal .quarkonia-comparison-image { display:block; width:100%; max-height:810px; object-fit:contain; margin:0; }
.reveal .qcd-effective .slide-body { justify-content:flex-start; padding:18px 0 0; }
.reveal .qcd-effective-copy { font-size:27px; }
.reveal .qcd-effective-copy ul { gap:7px; margin-bottom:12px; }
.reveal .quarkonia-comparison .slide-body { justify-content:flex-start; padding:12px 0 0; }

/* Resonance foundations, adapted from HadronPhysics1 slides 26–31. */
.reveal .resonance-slide .l1b-copy { font-size:34px; line-height:1.28; }
.reveal .resonance-slide .l1b-copy p { margin:20px 0; }
.reveal .resonance-slide .source-media { text-align:center; font-size:26px; }
.reveal .resonance-slide .source-media img { max-height:620px; }
.reveal .resonance-comparison { display:grid; grid-template-columns:.8fr .8fr 1.1fr; gap:65px; align-items:center; }
.reveal .resonance-comparison .source-media img { height:570px; }
.reveal .resonance-slide .pole-animation img { height:390px; width:100%; object-fit:contain; }
.reveal .resonance-slide .physics-two { font-size:30px; gap:70px; }
.reveal .resonance-slide .physics-two img { max-height:390px; }
.reveal .search-slide table { font-size:29px; }
.reveal .search-slide td, .reveal .search-slide th { padding:18px 15px; }
.reveal .search-slide .exotic-takeaway { font-size:30px; }
.reveal .search-slide table { table-layout:fixed; }
.reveal .search-slide th, .reveal .search-slide td { white-space:normal; overflow-wrap:break-word; }
.reveal .search-slide th:first-child { width:27%; }
.reveal .search-slide th:nth-child(2) { width:38%; }
.reveal .search-slide th:nth-child(3) { width:35%; }
.reveal .slides section.search-slide table { width:100% !important; font-size:29px; }

/* Prompt and weak-decay production: original TikZ collision topologies. */
.reveal .production-columns { display:grid; grid-template-columns:1fr 1fr; gap:80px; font-size:32px; line-height:1.28; }
.reveal .production-columns > div { min-width:0; }
.reveal .production-columns > div + div { border-left:2px solid #d6e3eb; padding-left:55px; }
.reveal .production-columns img { width:100%; height:300px; object-fit:contain; }
.reveal .production-columns p { margin:18px 0; }
.reveal .production-columns .l1b-subhead { margin-bottom:15px; }

/* Spin recap, vector coupling, and the orbital multiplet blackboard. */
.reveal .spin-recap-equations { font-size:32px; text-align:center; }
.reveal .spin-recap-equations p { margin:12px 0; }
.reveal .spin-rotation-widget { height:520px; width:100%; }
.reveal .spin-rotation-poster { max-height:520px; }
.reveal .spin-addition .physics-two { gap:65px; font-size:33px; }
.reveal .spin-vector-sum { width:100%; height:340px; }
.reveal .singlet-example .spin-diagram { max-height:590px; height:590px; width:100%; }
.reveal .singlet-example .physics-two { font-size:31px; margin-top:15px; }
.reveal .orbital-ladders .slide-body { font-size:31px; }
.reveal .orbital-table { display:grid; grid-template-columns:300px 1fr 1.35fr 235px; grid-template-rows:65px repeat(4,100px); margin:24px 0; font-size:42px; align-items:stretch; }
.reveal .orbital-table > div { display:flex; justify-content:center; align-items:center; border-bottom:1px solid #dce3e8; }
.reveal .orbital-table .orbital-input { grid-column:1; grid-row:2; border-bottom:0; font-size:48px; }
.reveal .orbital-table::before { content:""; grid-column:1; grid-row:1 / 6; border-right:4px solid #333; pointer-events:none; }
.reveal .orbital-table .branch-one { grid-column:2; }
.reveal .orbital-table .branch-two { grid-column:3; }
.reveal .orbital-table .orbital-wave { grid-column:4; }
.reveal .orbital-input small { font-size:25px; text-align:center; line-height:1.4; margin-top:22px; color:#555; }
.reveal .orbital-table .orbital-head { font-size:28px; font-weight:700; }
.reveal .orbital-wave { flex-direction:column; font-size:29px; }
.reveal .orbital-wave small { font-size:23px; color:#666; margin-top:4px; }
.reveal .branch-one { color:#0787b4; background:#f1f9fc; }
.reveal .branch-two { color:#8c58ad; background:#f8f4fc; }
.reveal .spin-seed { font-weight:700; font-size:52px; }
.reveal .orbital-table sup { font-size:.65em; position:relative; top:-.45em; }

/* Add C to the same orbital-ladder notation, keeping its sign prominent. */
.reveal .meson-c-table .charge-c { color:#cf2424; font-weight:700; }
.reveal .meson-c-rule { display:flex; justify-content:space-evenly; align-items:center; font-size:36px; margin:12px 0; }
.reveal .meson-c-table .orbital-table { grid-template-rows:60px repeat(4,90px); margin:18px 0; }
.reveal .meson-c-table .jpc-state { display:inline-block; white-space:nowrap; }
.reveal .meson-exotic-note { font-size:33px; border-left:5px solid #cf2424; padding:14px 22px; margin-top:12px; }

/* Central levels and the radial/orbital distinction. */
.reveal .radial-layout { display:grid; grid-template-columns:900px 1fr; gap:85px; align-items:center; }
.reveal .radial-plot-column { min-width:0; }
.reveal .radial-equation { font-size:30px; font-weight:700; color:#657c29; text-align:center; }
.reveal .radial-plot-column > p { font-size:35px; margin:6px 0; }
.reveal .radial-level-plot { position:relative; height:620px; width:900px; }
.reveal .radial-level-plot .level-axis { position:absolute; left:10px; top:200px; writing-mode:vertical-rl; transform:rotate(180deg); color:#777; font-size:24px; }
.reveal .radial-level-plot .level-column-label { position:absolute; top:4px; width:155px; text-align:center; font-size:25px; color:#666; }
.reveal .radial-level { position:absolute; width:155px; height:0; }
.reveal .radial-level img { position:absolute; bottom:16px; left:0; height:124px; width:155px; object-fit:contain; margin:0; border-radius:9px; box-shadow:0 3px 12px #43551915; }
.reveal .level-bar { width:150px; height:0; border-bottom:5px solid #778b35; position:relative; }
.reveal .level-bar span { position:absolute; left:166px; top:-20px; font-weight:700; font-size:32px; color:#53651f; white-space:nowrap; }
.reveal .radial-explanation { font-size:32px; line-height:1.35; }
.reveal .radial-explanation .l1b-subhead { color:#657c29; font-size:37px; margin:24px 0 14px; }
.reveal .radial-explanation ul { margin:0 0 24px 26px; padding-left:12px; }
.reveal .radial-explanation li { margin:12px 0; }
.reveal .radial-analogy { border-top:2px solid #dce3cc; padding-top:15px; font-size:28px; color:#555; }
.reveal .radial-analogy p { margin:12px 0; }
.reveal .radial-ladder-slide .physics-caption { font-size:23px; text-align:center; color:#777; }
.reveal .radial-level .print-only { display:none; }
@media print { .reveal .radial-level .wave-live { display:none!important; } .reveal .radial-level .print-only { display:block!important; width:155px!important; height:124px; } }
html.print-pdf .reveal .radial-level .wave-live,html.export-pdf .reveal .radial-level .wave-live { display:none!important; }
html.print-pdf .reveal .radial-level .print-only,html.export-pdf .reveal .radial-level .print-only { display:block!important; width:155px!important; height:124px; }
.reveal .radial-level img { max-height:124px!important; max-width:none; }
.reveal .radial-explanation { font-size:30px; }
.reveal .radial-explanation li { margin:12px 0!important; padding:0; }
.reveal .radial-explanation li p { margin:0!important; }
.reveal .radial-explanation .l1b-subhead { margin:18px 0 12px; }
.reveal .radial-analogy { font-size:26px; }
.reveal .radial-level-plot .level-column-label { top:-18px; }
.reveal .radial-explanation ul { list-style:disc!important; display:block; margin:0 0 22px 32px!important; padding-left:10px!important; }
.reveal .radial-explanation ul li { display:list-item!important; position:static; list-style:disc!important; padding-left:0!important; }
.reveal .radial-explanation ul li::before { content:none!important; }
.reveal .radial-explanation li p { font-size:30px; line-height:1.35; }
.reveal .radial-level-plot .level-column-label { top:4px; }
.reveal .radial-level img { height:110px!important; max-height:110px!important; width:137px!important; left:6px; bottom:12px; }

/* Isospin: near-degenerate flavours and their coherent combinations. */
.reveal .isospin-slide .slide-body { font-size:31px; }
.reveal .isospin-premise { display:flex; align-items:center; gap:50px; border-bottom:2px solid #dce5eb; padding:8px 0 24px; margin-bottom:22px; font-size:32px; }
.reveal .isospin-premise > strong { color:#0787b4; font-size:65px; white-space:nowrap; }
.reveal .isospin-layout { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; font-size:31px; line-height:1.3; }
.reveal .isospin-layout p { margin:16px 0; }
.reveal .isospin-layout .l1b-subhead { font-size:35px; }
.reveal .isospin-scalar { color:#0787b4; border-left:5px solid #0787b4; padding-left:24px; }
.reveal .isospin-vector { color:#8c58ad; border-left:5px solid #8c58ad; padding-left:24px; }
.reveal .isospin-small { font-size:25px; color:#555; margin-top:24px; }
.reveal .isospin-bottom { border-top:2px solid #dce5eb; padding-top:18px; margin-top:18px; font-size:28px; }

/* Define the complex argument before introducing its Riemann sheets. */
.reveal .analytic-layout { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; font-size:32px; line-height:1.3; }
.reveal .analytic-layout p { margin:18px 0; }
.reveal .analytic-plane { width:100%; height:390px; }
.reveal .analytic-layout .l1b-subhead { margin-top:24px; }
.reveal .new-riemann .riemann-three-panel { width:100%; height:420px; object-fit:contain; }
.reveal .riemann-captions { display:grid; grid-template-columns:repeat(3,1fr); gap:50px; font-size:29px; line-height:1.3; }
.reveal .riemann-captions p { margin:12px 0; }
.reveal .riemann-captions > div:first-child strong { color:#a97518; }
.reveal .riemann-captions > div:nth-child(2) strong { color:#0787b4; }
.reveal .new-riemann .slide-body > p { font-size:32px; margin:18px 0; }

.reveal .analytic-continuation-widget { width:100%; height:435px; }
.reveal .analytic-print img { width:49%; height:310px; object-fit:contain; display:inline-block; }
.reveal .amplitude-principles .principles-list { display:grid; gap:25px; }
.reveal .principles-list > div { display:grid; grid-template-columns:95px 1fr; gap:28px; align-items:start; border-bottom:1px solid #dce5eb; padding-bottom:20px; }
.reveal .principle-number { color:#087bb9; font-size:54px; font-weight:700; }
.reveal .principles-list strong { font-size:40px; color:#087bb9; }
.reveal .principles-list p { font-size:31px; margin:10px 0 0; }
.reveal .principles-consequences { margin-top:28px; font-size:32px; }
.reveal .principles-consequences li { margin:14px 0; }
.reveal .principles-consequences .l1b-subhead { color:#8c58ad; }

/* A linked screenshot keeps the game interlude useful in print and offline. */
.reveal .riemann-game-slide .slide-body { align-items:center; }
.reveal .riemann-game-slide .slide-body > p { margin:0; }
.reveal .riemann-game-image { display:block; height:680px; max-height:680px; width:auto; max-width:100%; object-fit:contain; }
.reveal .riemann-game-link { font-size:32px; text-align:center; margin-top:14px; }
.reveal .riemann-game-link p { margin:0; }

/* Experimental overview: large original figures, brief teaching prompts. */
.reveal .exp-overview .slide-body { font-size: 34px; }
.reveal .exp-overview .exp-two { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; height:810px; }
.reveal .exp-overview .exp-kicker { color:#0787b4; font-size:38px; font-weight:700; margin-bottom:24px; }
.reveal .exp-overview .exp-small { font-size:26px; color:#555; }
.reveal .exp-overview .exp-book { text-align:center; }
.reveal .exp-overview .exp-book img { width:580px; max-height:560px; object-fit:contain; }
.reveal .exp-overview .exp-count { font-size:112px; color:#0787b4; font-weight:700; line-height:1.2; }
.reveal .exp-overview .exp-count span { display:block; font-size:34px; }
.reveal .exp-overview .exp-wide { width:100%; height:690px; object-fit:contain; margin:0; }
.reveal .exp-overview .exp-timeline { height:730px; }
.reveal .exp-overview .exp-takeaway { font-size:34px; color:#0787b4; font-weight:600; margin-top:24px; }
.reveal .exp-overview .exp-portrait { height:790px; width:100%; object-fit:contain; margin:0; }
.reveal .exp-overview .exp-chart-copy { grid-template-columns: .95fr 1.05fr; }
.reveal .slides section.exp-overview table.exp-family-table { width:100%!important; table-layout:fixed; font-size:36px; margin:28px 0; }
.reveal .exp-family-table th,.reveal .exp-family-table td { white-space:normal!important; padding:24px!important; }
.reveal .exp-family-table th { color:#0787b4; }
.reveal .exp-overview .exp-omega { align-items:start; }
.reveal .exp-omega img { height:510px; width:100%; object-fit:contain; }
.reveal .exp-overview .exp-xicc { width:100%; max-height:670px; object-fit:contain; }
.reveal .exp-overview .exp-landscape { width:100%; height:760px; object-fit:contain; margin:0; }
.reveal .exp-overview .exp-credit { font-size:26px; text-align:right; color:#555; }

/* Artwork and tall review plots use the complete slide canvas. */
.reveal .slides > section.full-art-slide {left:0!important;top:0!important;width:100%!important;height:100%!important;}
.reveal .full-art-slide > h2 {display:none!important;}
.reveal .full-art-slide .slide-body {padding:0!important;margin:0;display:block;height:100%;}
.reveal .full-art-slide img.landscape-full {display:block;width:100%;height:100%;max-height:none;max-width:none;object-fit:contain;margin:0;}
.reveal:has(section.full-art-slide.present) .deck-footer,
.reveal:has(section.full-art-slide.present) .slide-number {display:none!important;}
.reveal .review-scroll-widget {display:block;width:100%;height:1080px;border:0;}
.reveal .full-art-slide img.review-print {height:1080px;max-height:none;object-fit:contain;margin:0;}
html.export-pdf .review-scroll-widget,html.print-pdf .review-scroll-widget {display:none!important;}
@media print {.review-scroll-widget {display:none!important;}}
.reveal .review-scroll-widget {max-width:none!important;max-height:none!important;margin:0!important;}
.reveal .full-art-slide .slide-body > p {height:100%;margin:0;}
.reveal .full-art-slide img.landscape-full {height:1080px!important;}

.reveal .riemann-game-full .game-full-link {display:block;width:100%;height:1080px;background:#0c1619;}
.reveal .riemann-game-full img.game-full-image {display:block;width:100%;height:1080px;max-width:none;max-height:none;object-fit:contain;margin:0;}

.reveal .review-titled .slide-body {padding:8px 0 0!important;}
.reveal .review-titled .review-scroll-widget {height:810px;}
.reveal .review-titled img.review-print {height:810px;object-fit:contain;margin:0;}
.reveal .mass-chart-slide .slide-body {padding:0!important;}
.reveal .mass-chart-slide .mass-history-chart {display:block;width:100%;height:810px;max-height:none;object-fit:contain;margin:0;}
.reveal .landscape-review-ref {height:80px;box-sizing:border-box;text-align:right;padding:10px 36px;color:#2475b7;font-size:23px;line-height:1.3;}
.reveal .landscape-referenced img.landscape-full {height:1000px!important;}
.reveal .landscape-referenced .slide-body > p {height:1000px;}

/* Reveal's native flag excludes backup slides from c/t totals and progress. */
.reveal:has(section.present[data-visibility="uncounted"]) .slide-number {visibility:hidden;}

/* Lecture 1 closing synthesis. */
.reveal .lecture-summary .slide-body {padding:14px 0 0;justify-content:flex-start;}
.reveal .summary-takeaways {display:flex;flex-direction:column;gap:24px;}
.reveal .summary-row {display:grid;grid-template-columns:340px 1fr;gap:46px;padding:20px 0;border-bottom:1px solid #dce5e9;font-size:32px;line-height:1.28;}
.reveal .summary-row p {margin:0 0 10px;}
.reveal .summary-label {font-size:32px;font-weight:700;color:#0787b4;}
.reveal .summary-number {font-size:62px;line-height:1.25;margin-top:12px;}
.reveal .summary-equation {font-size:38px;margin-top:22px;}
.reveal .summary-detail {font-size:25px;color:#596773;}
.reveal .summary-discussion {font-size:31px;margin-top:27px;color:#0787b4;}
.reveal .summary-takeaways {gap:12px;}
.reveal .summary-row {padding:12px 0;}
.reveal .summary-discussion {margin-top:18px;}

.reveal .summary-outlook .summary-row {grid-template-columns:400px 1fr;gap:48px;padding:28px 0;font-size:36px;line-height:1.35;}
.reveal .summary-outlook .summary-takeaways {gap:18px;}
.reveal .summary-outlook .summary-row p {margin:0 0 18px;}
.reveal .summary-outlook .summary-number {font-size:56px;white-space:nowrap;}
.reveal .summary-outlook .summary-exotic {color:#d62728;}
.reveal .summary-outlook .summary-history {font-size:31px;color:#0787b4;margin-top:22px;}

.reveal .riemann-game-full .game-app-link {height:64px;text-align:right;padding:16px 34px;box-sizing:border-box;font-size:26px;}
.reveal .riemann-game-full .game-app-link a {color:#b5e7ce;}
.reveal .riemann-game-full .game-full-link,
.reveal .riemann-game-full img.game-full-image {height:1016px;}
.reveal .riemann-game-full .slide-body > p {height:1016px;}

/* Hadron cartoons: widgets/hadron-cartoon.js → lectures/Lecture_1/figures/cartoons (scripts/build-cartoons.js). */
.reveal .cartoon-layer { height:0; margin:0; }
.reveal .cartoon-layer img { position:absolute; z-index:4; margin:0; pointer-events:none; }
.reveal .cartoon-row { display:flex; justify-content:flex-start; gap:56px; margin-top:26px; }
.reveal .cartoon-row figure { margin:0; text-align:center; font-size:27px; line-height:1.2; }
.reveal .cartoon-row img { height:170px; display:block; margin:0 auto 6px; }
.reveal .cartoon-row .muted { color:#7a8a95; }
.reveal .cartoon-pair { display:flex; align-items:center; justify-content:center; gap:22px; margin:-6px 0 10px; font-size:40px; color:#506b7b; }
.reveal .cartoon-pair img { height:92px; margin:0; }
.reveal .exp-cartoon { float:right; height:190px; margin:0 0 10px 20px; }
.reveal .kmatrix-slide .l1b-two { height:auto; }
.reveal .kmatrix-slide .l1b-copy p { margin:14px 0; }
.reveal .kmatrix-strip { margin-top:34px; padding-top:22px; border-top:2px solid #e3e7eb; }
.reveal .kmatrix-strip svg { display:block; width:100%; height:auto; }
