:root {
  color-scheme: light;
  --bg: #fff;
  --bg2: #f4f6f9;
  --ink: #172536;
  --mute: #556374;
  --line: #d8e0e9;
  --teal: #00356b;
  --blue: #28649a;
  --serif: Georgia, 'Times New Roman', serif;
  --sans: Arial, Helvetica, sans-serif;
}
* { box-sizing: border-box; }
html, body { height: 100%; margin: 0; overflow: hidden; }
body { background: #e8edf3; color: var(--ink); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
button { font: inherit; cursor: pointer; }
a { color: inherit; text-underline-offset: 5px; }
button:focus-visible, a:focus-visible { outline: 3px solid #28649a; outline-offset: 5px; }
.stage { position: absolute; left: 50%; top: 50%; width: 1920px; height: 1080px; transform-origin: center; background: var(--bg); overflow: hidden; }
.slide { position: absolute; inset: 0; padding: 155px 130px 145px; visibility: hidden; opacity: 0; }
.slide.active { visibility: visible; opacity: 1; }
.notes { display: none !important; }
.chrome { position: absolute; inset: 0; z-index: 4; pointer-events: none; font-size: 22px; color: var(--mute); }
.chrome span { position: absolute; }
.chrome .tl { left: 130px; top: 55px; color: var(--teal); font-weight: 700; }
.chrome .tr { right: 130px; top: 55px; }
.chrome .bl { left: 130px; bottom: 47px; }
.chrome .br { right: 130px; bottom: 47px; font-variant-numeric: tabular-nums; }
.chrome::before { content: ''; position: absolute; top: 106px; left: 130px; right: 130px; height: 1px; background: var(--line); }
.bar { position: absolute; bottom: 0; left: 0; height: 5px; background: var(--teal); z-index: 5; }
.slide-head { margin-bottom: 63px; }
.eyebrow { margin: 0 0 24px; color: var(--teal); font-size: 23px; font-weight: 700; letter-spacing: .065em; }
h1, h2, h3, p { margin: 0; }
h1 { font: 400 132px/1.03 var(--serif); letter-spacing: -.035em; color: var(--teal); }
h2 { font: 400 66px/1.12 var(--serif); color: var(--teal); letter-spacing: -.025em; max-width: 1655px; }
h3 { font: 700 35px/1.23 var(--sans); margin-bottom: 22px; color: var(--teal); }
p, li { font-size: 34px; line-height: 1.4; }
p + p { margin-top: 19px; }
.mute { color: var(--mute); }
.src { position: absolute; left: 130px; right: 130px; bottom: 88px; font-size: 21px; line-height: 1.45; color: var(--mute); }
.src a { white-space: nowrap; }
.takeaway { border-top: 1px solid var(--line); padding-top: 27px; margin-top: 52px; font-size: 32px; line-height: 1.4; color: var(--teal); }
.evidence-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 54px; }
.evidence-columns > div + div { border-left: 1px solid var(--line); padding-left: 54px; }
.evidence-columns p { font-size: 32px; }
.evidence-columns .outcome { font-size: 38px; line-height: 1.3; margin-bottom: 26px; }
.study-label { font-size: 24px; line-height: 1.4; color: var(--mute); margin-bottom: 20px; min-height: 55px; }
.metric { font: 400 103px/1.1 var(--serif); color: var(--teal); letter-spacing: -.045em; margin-bottom: 25px; white-space: nowrap; }
.metric span { font-size: 45px; letter-spacing: -.02em; }
.principles { display: flex; flex-direction: column; gap: 33px; }
.principles > div { display: grid; grid-template-columns: 90px 1fr; gap: 24px; padding-bottom: 27px; border-bottom: 1px solid var(--line); }
.principles > div:last-child { border-bottom: 0; padding-bottom: 0; }
.principles h3 { margin-bottom: 7px; }
.principles p { font-size: 31px; color: var(--mute); }
.item-number { font: 400 48px/1.1 var(--serif); color: #778da7; }
.title-slide { padding: 105px 130px; border-top: 13px solid var(--teal); }
.title-slide + .slide { border-top: 0; }
.host { display: flex; gap: 64px; align-items: center; }
.host img { width: 230px; height: auto; display: block; }
.host > div { font-size: 27px; line-height: 1.5; color: var(--teal); padding-left: 56px; border-left: 1px solid #b8c7d9; }
.title-content { margin-top: 85px; }
.title-content .eyebrow { font-size: 25px; margin-bottom: 26px; }
.title-subtitle { font: 400 44px/1.32 var(--sans); margin-top: 37px; color: var(--mute); }
.title-byline { position: absolute; left: 130px; bottom: 86px; display: flex; flex-direction: column; gap: 13px; font-size: 26px; }
.title-byline strong { font-weight: 700; font-size: 32px; }
.title-date { position: absolute; right: 130px; bottom: 88px; text-align: right; font-size: 26px; line-height: 1.6; color: var(--mute); }
body:has(.title-slide.active) .chrome { display: none; }
.claim-line { font: 400 84px/1.2 var(--serif); letter-spacing: -.025em; color: var(--teal); margin-bottom: 84px; }
.claim-line span { color: var(--mute); }
.study-layout { display: grid; grid-template-columns: 1fr 1.15fr; gap: 95px; }
.study-result { padding-top: 18px; }
.study-result .metric { font-size: 158px; }
.study-result .metric span { font-size: 60px; }
.study-result p { max-width: 620px; }
.study-design { color: var(--mute); font-size: 26px; line-height: 1.5; margin-top: 34px; }
.study-interpretation { padding-left: 75px; border-left: 1px solid var(--line); }
.study-interpretation h3:not(:first-child) { margin-top: 37px; }
.study-interpretation p { font-size: 32px; }
.study-interpretation .takeaway { font-size: 29px; margin-top: 36px; }
.comparison { margin-top: 43px; }
.comparison > div { position: relative; margin-bottom: 33px; }
.comparison span, .comparison b { font-size: 29px; line-height: 1.5; }
.comparison b { float: right; color: var(--teal); font-variant-numeric: tabular-nums; }
.track { height: 30px; background: #e7edf4; margin-top: 14px; }
.fill { width: var(--to); height: 100%; background: var(--teal); }
.axis { font-size: 23px; color: var(--mute); margin-top: 16px; }
.case-slide .slide-head { margin-bottom: 53px; }
.case-question { max-width: 1370px; padding-left: 42px; border-left: 4px solid var(--line); }
.case-question p { font-size: 39px; line-height: 1.45; }
.case-question p + p { margin-top: 25px; }
.audience-question { font: 400 60px/1.2 var(--serif); color: var(--teal); margin-top: 73px; }
table { border-collapse: collapse; width: 100%; table-layout: fixed; }
th { text-align: left; font-size: 24px; color: var(--mute); font-weight: 400; padding: 0 38px 25px 0; border-bottom: 2px solid var(--teal); }
td { font-size: 34px; line-height: 1.4; padding: 32px 44px 32px 0; border-bottom: 1px solid var(--line); vertical-align: top; }
th + th, td + td { padding-left: 52px; }
.workflow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 42px; margin-top: 75px; }
.workflow > div { border-top: 3px solid var(--teal); padding-top: 25px; }
.workflow span, .configuration span { font: 400 40px var(--serif); color: #778da7; display: block; margin-bottom: 32px; }
.workflow p { font-size: 30px; }
.configuration { display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; margin-top: 85px; }
.configuration > div { border-bottom: 1px solid var(--line); padding-bottom: 26px; }
.big-conclusion { font: 400 64px/1.2 var(--serif); color: var(--teal); margin-top: 93px; }
.closing-slide .principles { gap: 45px; }
.closing-slide .principles h3 { font: 400 54px/1.2 var(--serif); margin-bottom: 18px; }
.closing-slide .principles p { font-size: 31px; }
.question-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 65px; }
.question-list a { display: flex; align-items: baseline; gap: 26px; font-size: 30px; line-height: 1.35; text-decoration: none; padding: 24px 0; border-bottom: 1px solid var(--line); }
.question-list a:hover { color: var(--teal); border-color: var(--teal); }
.question-list a span { font: 400 27px var(--serif); color: #778da7; }
.back { position: absolute; right: 130px; top: 136px; font-size: 23px; color: var(--mute); }
.references { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 66px; padding: 0; list-style: none; }
.references li { border-bottom: 1px solid var(--line); padding-bottom: 14px; font-size: 27px; line-height: 1.4; }
.references a { color: var(--teal); }
.references span { display: block; margin-top: 6px; font-size: 22px; color: var(--mute); }
.reference-next { position: absolute; bottom: 91px; right: 130px; font-size: 26px; color: var(--teal); }
.deck-toolbar { position: fixed; bottom: 0; left: 0; right: 0; min-height: 76px; display: flex; justify-content: center; align-items: center; gap: 20px; padding: 13px 24px; border-top: 1px solid #d8e0e9; background: #fff; z-index: 20; }
.deck-toolbar button { border: 1px solid #d8e0e9; border-radius: 5px; padding: 11px 17px; background: #fff; color: #00356b; font-size: 14px; font-weight: 600; min-height: 43px; }
.deck-toolbar button:hover { background: #f0f4f9; border-color: #9bacc0; }
.deck-toolbar button:disabled { opacity: .4; cursor: default; }
.deck-toolbar .primary-button { background: #00356b; color: #fff; border-color: #00356b; }
.deck-toolbar .primary-button:hover { background: #002951; }
.slide-navigation { display: flex; align-items: center; gap: 15px; margin-right: 10px; }
.slide-navigation button { padding: 9px; border-color: transparent; }
.slide-navigation svg { display: block; width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; }
#slide-position { min-width: 67px; text-align: center; color: #556374; font-size: 14px; font-variant-numeric: tabular-nums; }
kbd { font: 400 11px var(--sans); margin-left: 13px; opacity: .6; }
#runtime-status { position: fixed; bottom: 91px; left: 50%; transform: translateX(-50%); color: #fff; background: #00356b; border-radius: 5px; max-width: 90vw; padding: 10px 18px; font-size: 15px; line-height: 1.5; z-index: 21; }
#runtime-status:empty { display: none; }
#overview[hidden] { display: none; }
#overview { position: fixed; inset: 0; background: #fff; z-index: 50; overflow-y: auto; padding: 40px max(30px, 9vw); }
#overview h2 { font-size: 39px; margin-bottom: 23px; }
#overview h3 { font-size: 17px; margin: 32px 0 12px; }
#overview h4 { font-size: 17px; color: #00356b; margin: 30px 0 12px; }
#close-overview { position: fixed; top: 27px; right: 35px; padding: 11px 19px; border: 1px solid var(--line); background: #fff; color: var(--teal); border-radius: 5px; font-size: 15px; }
.overview-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px 35px; }
.overview-list button { text-align: left; border: 0; border-bottom: 1px solid var(--line); padding: 14px 9px; background: #fff; color: var(--ink); font-size: 17px; line-height: 1.4; }
.overview-list button:hover { background: #f0f4f9; }
.noscript { position: fixed; top: 30%; left: 10%; right: 10%; background: #fff; padding: 40px; z-index: 80; }
:fullscreen .deck-toolbar, :fullscreen #runtime-status { display: none; }
:fullscreen { background: #fff; }
body.preview .deck-toolbar, body.preview .chrome { display: none; }
@media (max-width: 680px) {
  .deck-toolbar { gap: 8px; padding: 9px 10px; flex-wrap: wrap; }
  .deck-toolbar button { padding: 10px 12px; font-size: 12px; }
  .slide-navigation { gap: 5px; margin-right: 0; }
  .slide-navigation button { padding: 8px; }
  kbd { display: none; }
  #slide-position { min-width: 45px; font-size: 12px; }
  .overview-list { grid-template-columns: 1fr; }
  #overview { padding: 85px 25px 30px; }
  #overview h2 { font-size: 32px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
@media print {
  @page { size: 1920px 1080px; margin: 0; }
  html, body { height: auto; overflow: visible; background: #fff; }
  .stage { position: static; transform: none !important; width: 1920px; height: auto; overflow: visible; }
  .slide { position: relative; opacity: 1 !important; visibility: visible !important; width: 1920px; height: 1080px; break-after: page; page-break-after: always; overflow: hidden; }
  .slide:last-child { break-after: auto; page-break-after: auto; }
  .chrome, .bar, .deck-toolbar, #runtime-status, #overview, .back, .reference-next { display: none !important; }
  .notes { display: none !important; }
}

#mammo .slide-head { margin-bottom: 45px; }
#mammo .metric { font-size: 92px; margin-bottom: 18px; }
#mammo .evidence-columns p { font-size: 30px; }
#mammo .takeaway { margin-top: 35px; padding-top: 22px; font-size: 30px; }

.references { gap: 19px 66px; }
.references li { font-size: 25px; line-height: 1.3; padding-bottom: 12px; }
.references span { font-size: 20px; }
