
/* add your css style rules here 
  impress.js: default width x height is 1024x768
*/


:root {
  --slide-width: 100vw; 
  --slide-height: 62vh;
  --slide-border: 20vh;
  --slide-padding-lr: 0px;
  --slide-padding-ud: 0px;
  --round-slide-width: 700px;
  --round-slide-height: 700px;
  --slide-step-right: 110vw;
  --slide-step-down: 110vh;
  
  --basic-font-size: 28px;
  --quote-font-size: 22px;
  --code-font-size: 14px;
  --header-font-size: 44px;
  --header-padding-top: 20px;
  --larger-font-size: 34px;
  --smaller-font-size: 24px;
  --header-font-family: Georgia;

  --inactive-opacity: 0;
}

@media (max-height: 900px) {
  :root {
    --slide-width: 100vw;
    --slide-height: 62vh;
    --slide-border: 20vh;
    --slide-padding-lr: 0px;
    --slide-padding-ud: 0px;
    --round-slide-width: 700px;
    --round-slide-height: 700px;
    --slide-step-right: 110vw;
    --slide-step-down: 110vh;
    
    --basic-font-size: 26px;
    --quote-font-size: 20px;
    --code-font-size: 12px;
    --header-font-size: 42px;
    --header-padding-top: 10px;    
    --larger-font-size: 32px;
    --smaller-font-size: 22px;
    --header-font-family: Georgia;

    --inactive-opacity: 0;
  }
}

html {
  margin: 0px;
  padding: 0px;
}

body {
  background: white;
  color: black;
  margin: 0px;
  padding: 0px;
}

a {
  color: inherit;
  text-decoration: none;
}

.step {
  opacity: var(--inactive-opacity, 0);
  -webkit-transition: opacity 0.1s ease;
  -moz-transition: opacity 0.1s ease;
  -ms-transition: opacity 0.1s ease;
  -o-transition: opacity 0.1s ease;
  transition: opacity 0s ease;  
}

.step.active {
  opacity: 1;
  -webkit-transition: opacity 0.1s ease;
  -moz-transition: opacity 0.1s ease;
  -ms-transition: opacity 0.1s ease;
  -o-transition: opacity 0.1s ease;
  transition: opacity 0s ease;  
}

.slide {
  width: var(--slide-width);
  height: var(--slide-height);
  border-top: var(--slide-border) solid #202020;
  border-bottom: var(--slide-border) solid #202020;

  font-size: var(--basic-font-size);
  text-align: center;
  font-family: Gorgia;

  background: white;  
}

.invisible-slide {
  opacity: 0;
}

.almost-transparent-background {
  background-color: rgba(20%,20%,20%,5%);
}

h3 {
  color: black;
  font-size: var(--header-font-size, 36px);  
  font-family: var(--header-font-family);
  padding-top: var(--header-padding-top, 20px);
  padding-bottom: 0px; 
  padding-left: 0px;
  padding-right: 0px;
}

h4 {
  color: darkred;
  font-size: var(--larger-font-size, 36px);
  font-family: var(--header-font-family);
  font-weight: normal;
  padding: 0px 100px; 
}

section.flex-item-margin-left >h4 {
  padding: 0px;
}

h4.like-h3 {
  padding-top: var(--header-padding-top, 20px);;
  padding-bottom: var(--header-padding-top, 20px);; 
  padding-left: 0px;
  padding-right: 0px;
}

.main-header {
  position: fixed;
  color: white;
  top: -15vh;
  padding: 20px 100px; 
}

.footer-left {
  position: fixed;
  color: white;
  bottom:-15vh;
  font-size: .75em;
  text-align: left;
  left: 2px;
}

.footer-right {
  position: fixed;
  color: white;
  bottom:-15vh;
  right: 2px;
  font-size: .75em;
  text-align: right;
}

ol {
  padding: 0px calc(var(--header-padding-top, 20px) * 5);
}

section.flex-item-margin-left > ol,
section.flex-item-margin-left > ul{
  padding: 0px 0px 0px calc( (var(--header-padding-top, 20px) * 5)/2 );
}

ol.add-padding-bottom > li {
  padding-bottom: calc( var(--header-padding-top, 20px) /2 );
}

ol.smaller.add-padding-bottom > li {
  padding-bottom: calc( var(--header-padding-top, 20px) /4 );
}

ul {
  padding: 0px calc(var(--header-padding-top, 20px) * 5);
}

ul.add-padding-bottom > li {
  padding-bottom: calc( var(--header-padding-top, 20px) /2 );
}

ul.smaller.add-padding-bottom > li {
  padding-bottom: calc( var(--header-padding-top, 20px) /4 );
}

code {
  background-color: black;
  font-size: var(--code-font-size, 14px);
}

blockquote {
  font-size: var(--quote-font-size, 20px);
  text-align: justify;
  padding: 0px 100px; 
}

.correct-top-margin {
  margin-top: 55px;
}

.left-no-margin {
  text-align: left;
  margin-left: 0px;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.center {
  text-align: center;
}

.justify {
  text-align: justify;
  hyphens: auto;
}

.highlight {
  color: darkred;
  font-weight: bold;
}

.quote-size-text {
  font-size: var(--quote-font-size, 20px); 
}

.larger {
  font-size: var(--larger-font-size, 28px);
}

.smaller {
  font-size: var(--smaller-font-size, 18px)
}

.unbold {
  font-weight: normal;
}

.float-left {
  float: left;
}

.float-right {
  float: right;
}

.padding-left {
  padding-left: 1em;
}

.padding-right {
  padding-right: 1em;
}

.add-margin-left {
  margin-left: 100px;
}

.add-margin-right {
  margin-right: 100px;
}

.flex-container {
  display: flex;
}

.flex-item {
  flex: 1 1 66%;
  padding: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 10px;
  margin-right: 10px;
  height: 100%;
  width: auto;
}

.flex-item-margin-right {
  flex: 1 1 66%;
  padding: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 10px;
  margin-right: 100px;
  height: 100%;
  width: auto;
}

.flex-item-margin-left {
  flex: 1 1 66%;
  padding: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 100px;
  margin-right: 10px;  
  height: 100%;
  width: auto;
}

figure.flex-item {
  flex: 1 1 33%;
  margin-left: 0px;
  margin-right: 0px;
}

figure.flex-item.fig-cap-right >img {
  float: right;
}

figure.flex-item.fig-cap-left >img {
  float: left;
}

figcaption {
  position: absolute;
  transform: rotate(-90deg);
  transform-origin: left top;
  text-align: left;
  color: #fff;
  font-size: .75em;
  background: #000;
  opacity: 0.5;
}

figure.abs-left {
  position: relative;  
  padding: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  margin-right: 100px;
  height: 100%;
  width: auto;
  float: left;
}

figure.abs-right {
  position: relative;
  padding: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 100px;
  margin-right: 0px;
  height: 100%;
  width: auto;
  float: right;
}

figure.abs-left > figcaption, 
figure.fig-cap-left > figcaption {
  position: relative;
  transform: rotate(0deg);
  transform-origin: left top;
  text-align: left;
  color: white;
  font-size: .75em;
  background: unset;
  opacity: 1;
  left: 2px;
}

figure.abs-right > figcaption,
figure.fig-cap-right > figcaption {
  position: relative;
  transform: rotate(0deg);
  transform-origin: left top;
  text-align: right;
  color: white;
  font-size: .75em;
  background: unset;
  opacity: 1;
  right: 2px;
}

img {
  display: block;
}

figure > img {
  display: block;
  height: 100%;
  width: auto;
}

img.center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.display-contents {
  display: contents;
}

td {
  vertical-align: top;
}

.add-padding-left {
  padding-left: 500px;  
}







