/* Centre the complete composition in the area below the navigation.
   Content remains in normal flow: short viewports scroll instead of clipping. */
@media screen{
 body{min-height:100dvh;display:flex;flex-direction:column;--deck-scale:1}
 .topbar,.section-nav{flex-shrink:0}
 .section-nav{margin:0 auto;width:100%}
 main{flex:1 0 auto;width:100%;max-width:calc(1440px * var(--deck-scale));display:flex;flex-direction:column;justify-content:center;padding-top:8px;padding-bottom:8px}
 main>.slide{min-height:0!important;flex-shrink:0;zoom:var(--deck-scale)}
 main>.slide:not(.cover){padding-top:16px;padding-bottom:16px}
}
/* Enlarge only when both width and height leave room for a readable deck. */
@media screen and (min-width:1600px) and (min-height:960px){body{--deck-scale:1.08}}
@media screen and (min-width:1800px) and (min-height:1040px){body{--deck-scale:1.16}}
@media screen and (min-width:2200px) and (min-height:1250px){body{--deck-scale:1.32}}
