:root{color-scheme:dark;--background:#171615;--text:#fff;--muted:#a9a6a1;--slide-width:1440;--slide-height:810;--stories:#94D0A1;--actors:#79BEDB;--objects:#E0D4F7}
*{box-sizing:border-box}
html{margin:0;background:var(--background);scroll-snap-type:y mandatory;scroll-behavior:smooth}
body{margin:0;color:var(--text);font-family:'Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased}
body::selection{background:#79bedb;color:#171615}
.slide-section{min-height:100dvh;display:flex;align-items:center;justify-content:center;scroll-snap-align:start;scroll-snap-stop:always;padding:0;position:relative}
.slide-viewport{position:relative;width:min(100%,calc(100dvh * 16 / 9));aspect-ratio:16/9;overflow:hidden;container-type:inline-size}
.slide{position:absolute;left:0;top:0;width:1440px;height:810px;background:var(--background);transform-origin:top left;transform:scale(var(--scale,1));overflow:hidden;isolation:isolate}
@supports (width:1cqw) and (zoom:calc(1px / 1px)){.slide{zoom:calc(100cqw / 1440px);transform:none}}
.object{position:absolute;box-sizing:border-box;transform-origin:center}
.object.text{overflow:visible;overflow-wrap:normal}
.text p{padding:0;margin:0;white-space:pre-wrap;font-kerning:normal}
.text span{vertical-align:baseline}
.term-stories{color:var(--stories)}.term-actors{color:var(--actors)}.term-objects{color:var(--objects)}
.diagram-label-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.picture{overflow:hidden}
.picture img,.picture video{position:absolute;max-width:none;object-fit:fill;display:block}
.picture img{user-select:none}
.text a{color:inherit;text-decoration:none}
.text a:hover{text-decoration:underline;text-underline-offset:.15em}
.layouts-ready .slide-meta{display:none!important}
.layouts-ready .slide-page-number :is(p,span){font-size:14px!important;color:var(--muted)!important}
.deck-header{display:none}
@media screen{
  .deck-ready .deck-header{
    position:fixed;z-index:10;top:max(24px,env(safe-area-inset-top));left:0;right:0;
    display:flex;align-items:center;justify-content:space-between;pointer-events:none;
    padding:0 max(clamp(24px,2.5vw,48px),env(safe-area-inset-right)) 0 max(clamp(24px,2.5vw,48px),env(safe-area-inset-left));
  }
  .deck-header img{display:block;width:25px;height:26.28px}
  .deck-header #page-number{font-size:14px;line-height:1;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}
  /* Retain the original logo's portrait spacing while drawing the visible one at the viewport edge. */
  .deck-ready .slide-logo{visibility:hidden}
  .deck-ready .slide-page-number{display:none!important}
}
@media screen and (orientation:landscape){
  /* Keep the tall Coaching screenshot below the header without changing its proportions. */
  .deck-ready [data-source-slide="14"] [data-shape="222"]{
    top:max(13.793px,calc(60px / var(--scale,1)))!important;bottom:13.793px;
    left:auto!important;right:0;width:auto!important;height:auto!important;aspect-ratio:681.398 / 782.414;
  }
}
@media screen and (orientation:portrait){
  .deck-ready .deck-header{
    top:max(32px,env(safe-area-inset-top));width:100%;max-width:760px;margin:0 auto;
    padding-right:max(clamp(32px,8vw,64px),env(safe-area-inset-right));
    padding-left:max(clamp(32px,8vw,64px),env(safe-area-inset-left));
  }
}
/* Navigation overlays the slide; it never reserves a footer. */
.deck-controls{position:fixed;z-index:20;right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));display:flex;gap:4px}
.deck-controls button{width:44px;height:44px;display:grid;place-items:center;background:none;border:0;padding:0;color:#D9D9D9;opacity:.65;cursor:pointer}
.deck-controls button:hover,.deck-controls button:focus-visible{opacity:1}
.deck-controls button:disabled{opacity:.18;cursor:default}
.deck-controls svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.slide-counter{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
html:not(.deck-ready) .deck-controls{display:none}
@media screen and (orientation:portrait){.deck-controls svg{transform:rotate(90deg)}}
.progress-track{position:fixed;bottom:0;left:0;height:2px;width:100%;background:#ffffff05;z-index:30}
#progress{height:100%;width:0;background:var(--stories);transition:width .25s ease}
button:focus-visible,a:focus-visible{outline:2px solid #79bedb;outline-offset:4px}
.skip-link{position:fixed;left:16px;top:-80px;z-index:40;padding:12px 18px;background:white;color:#171615;border-radius:4px;font-size:14px}
.skip-link:focus{top:16px}
#deck:focus{outline:none}
.noscript-message{position:fixed;right:16px;bottom:20px;color:var(--muted);font-size:12px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
@media print{html{scroll-snap-type:none}.slide-section{height:auto;min-height:0;padding:0;break-after:page}.slide-viewport{width:100%;aspect-ratio:16/9}.deck-controls,.progress-track,.skip-link{display:none}@page{size:landscape;margin:0}}

@media screen{
  /* Disable double-tap zoom across the page, including controls outside #deck; retain pinch zoom. */
  html.deck-ready,html.deck-ready body{height:100%;overflow:hidden;overscroll-behavior:none;scroll-snap-type:none;scroll-behavior:auto;touch-action:manipulation}
  .deck-ready :is(a,button){touch-action:manipulation}
  .deck-ready #deck{position:fixed;inset:0;overflow:hidden;touch-action:pinch-zoom}
  .deck-ready .slide-section{position:absolute;inset:0;min-height:0;height:100%;scroll-snap-align:none}
  .deck-ready .slide-section:not(.is-active){display:none}
}
/* Videos are passive presentation media, including when autoplay is blocked. */
video[data-deck-video]{pointer-events:none;user-select:none;-webkit-user-select:none}
video[data-deck-video]::-webkit-media-controls{display:none!important}
video[data-deck-video]::-webkit-media-controls-enclosure{display:none!important}
