@font-face {
  font-family: "Ludicrous";
  src: url("../fonts/Ludicrous.woff");
}

@font-face {
  font-family: "Ludicrous-Stencil";
  src: url("../fonts/Ludicrous-Stencil.woff");
}

body {
  background: url(../images/snow-bg.svg) no-repeat top center #82d8cb;
  background-size: cover;
/*  background: url(../images/pattern_town.svg) repeat #82d8cb;
  background-size: 800px;*/
}

/*removes default margin & padding*/
html, body{
  height: 100%;
  padding: 0px !important;
  margin: 0px !important;
}

.login {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-family: 'Ludicrous-Stencil';
  font-size: xx-large;
  text-align: center;
}

.login input, .login .login-submit {
  display: inline;
  float: none;
}

.login input {
  width: 100%;
}

.login .login-submit {
  /*font-family:inherit;
  font-size: inherit;*/
  /* remove default behavior */
  appearance:none;
  -webkit-appearance:none;

  /* usual styles */
  padding:10px;
  border:none;
  background-color: #2da48e;
  color:#fff;
  font-weight:600;
  border-radius:5px;
  width:100%;
}

.rounded-input {
  padding:10px;
  border-radius:5px;
}

/* title graphic */
.title {
  align-items: center;
  justify-content: center; 
}

/* mobile first grid layout */
.grid-1 {
  display: grid;
  width: 96%;
  margin: 2% auto;
  
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto;
  grid-gap: 25px;
  
  grid-template-areas:    "t        t       t"
                          "d23      d20     d12"
                          "d2       d14     d4"
                          "d5       d22     d16"
                          "d1       d7      d9"
                          "d10      d11     d18"
                          "d13      d3      d15"
                          "d6       d17     d8"
                          "d19      d24     d21";
}

/* media query */
@media only screen and (orientation: landscape)  {
  
  .grid-1 {
    grid-template-columns: repeat(6, 1fr);
    grid-template-areas: "t     t     t     d2      d7      d8"
                         "t     t     t     d4      d11     d12"
                         "t     t     t     d19     d9      d13"
                         "d6    d1    d24   d24     d21     d20"
                         "d17   d18   d24   d24     d5      d22"
                         "d3    d23   d16   d14     d10     d15";
  }
}

/* individual items */
  .title {
    grid-area: t;
  }
  .day-1 {
  grid-area: d1;
  }
  .day-1 .back {
    background: url(../images/child.svg);
  }
  .day-2 {
    grid-area: d2;
  }
  .day-2 .back {
    background: url(../images/heart.svg);
  }
  .day-3 {
    grid-area: d3;
  }
  .day-3 .back {
    background: url(../images/gift.svg);
  }
  .day-4 {
    grid-area: d4;
  }
  .day-4 .back {
    background: url(../images/balloons.svg);
  }
  .day-5 {
    grid-area: d5;
  }
  .day-5 .back {
    background: url(../images/dice.svg);
  }
  .day-6 {
    grid-area: d6;
  }
  .day-6 .back {
    background: url(../images/boots.svg);
  }
  .day-7 {
    grid-area: d7;
  }
  .day-7 .back {
    background: url(../images/moon.svg);
  }
  .day-8 {
    grid-area: d8;
  }
  .day-8 .back {
    background: url(../images/elf.svg);
  }
  .day-9 {
    grid-area: d9;
  }
  .day-9 .back {
    background: url(../images/heart2.svg);
  }
  .day-10 {
    grid-area: d10;
  }
  .day-10 .back {
    background: url(../images/house.svg);
  }
  .day-11 {
    grid-area: d11;
  }
  .day-11 .back {
    background: url(../images/japan_flag.svg);
  }
  .day-12 {
    grid-area: d12;
  }
  .day-12 .back {
    background: url(../images/bunny.svg);
  }
  .day-13 {
    grid-area: d13;
  }
  .day-13 .back {
    background: url(../images/flower.svg);
  }
  .day-14 {
    grid-area: d14;
  }
  .day-14 .back {
    background: url(../images/wine.svg);
  }
  .day-15 {
    grid-area: d15;
  }
  .day-15 .back {
    background: url(../images/alpaca.svg);
  }
  .day-16 {
    grid-area: d16;
  }
  .day-16 .back {
    background: url(../images/balloons.svg);
  }
  .day-17 {
    grid-area: d17;
  }
  .day-17 .back {
    background: url(../images/guitar.svg);
  }
  .day-18 {
    grid-area: d18;
  }
  .day-18 .back {
    background: url(../images/gift.svg);
  }
  .day-19 {
    grid-area: d19;
  }
  .day-19 .back {
    background: url(../images/plane.svg);
  }
  .day-20 {
    grid-area: d20;
  }
  .day-20 .back {
    background: url(../images/elf.svg);
  }
  .day-21 {
    grid-area: d21;
  }
  .day-21 .back {
    background: url(../images/books.svg);
  }
  .day-22 {
    grid-area: d22;
  }
  .day-22 .back {
    background: url(../images/moon.svg);
  }
  .day-23 {
    grid-area: d23;
  }
  .day-23 .back {
    background: url(../images/heart.svg);
  }
  .day-24 {
    grid-area: d24;
  }
  .day-24 .back {
    background: url(../images/christmas_tree.svg);
  }


/* door styles */

.grid-1 input {
  display: none;
}

label {
  perspective: 1000px;
  transform-style: preserve-3d;
  cursor: pointer;

  display: flex;
  min-height: 100%;
  width: 100%;
  height: 120px;
}

.door {
  width: 100%;
  transform-style: preserve-3d;
  transition: all 300ms;
  border: 2px dashed transparent;
  border-radius: 10px;
}

.door div {
  position: absolute;
  height: 100%;
  width: 100%;

  /* Workaround for Safari */
  -webkit-perspective: 0;
  -webkit-backface-visibility: hidden;
  -webkit-transform: translate3d(0,0,0);
  visibility:visible;
  backface-visibility: hidden;
  
  border-radius: 6px;

  display: flex;
  align-items: center;
  justify-content: center;
  
  /* typography */
  font-family: 'Kalam', cursive;
  color: #d6d6d6;
  font-size: 2em;
  font-weight: bold;
  text-shadow: 2px 2px 0 rgba(0, 0, 0, 1);
}

.door .back {
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: #2e313d;
    transform: rotateY(180deg);
}

label:hover .door {
  border-color: #385052;
}

:checked + .door {
  transform: rotateY(180deg);
}

.video-container {
  font-size: 0;  
}

video {
  width: auto    !important;
  height: 100%   !important;
  display:block;
  margin: auto;
  border: 4px solid #385052;
  border-radius: 5px;
}

.central-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.central-image img {
  margin-top: 50px;
  height: auto;
  max-height: 90%;
  width: auto;
  max-width: 90%;
  /* background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  */
}

.one {
  grid-column: 1;
  grid-row: 1;
}
.two {
  grid-column: 1;
  grid-row: 2;
}
.three {
  grid-column: 2;
  grid-row: 1;
}
.four {
  grid-column: 2;
  grid-row: 2;
}
.five {
  grid-column: 3;
  grid-row: 1;
}
.six {
  grid-column: 3;
  grid-row: 2;
}
.seven {
  grid-column: 4;
  grid-row: 1;
}
.eight {
  grid-column: 4;
  grid-row: 2;
}
.nine {
  grid-column: 5;
  grid-row: 1;
}
.ten {
  grid-column: 5;
  grid-row: 2;
}
.eleven {
  grid-column: 6;
  grid-row: 1;
}
.twelve {
  grid-column: 6;
  grid-row: 2;
}
.thirteen {
  grid-column: 7;
  grid-row: 1;
}
.fourteen {
  grid-column: 7;
  grid-row: 2;
}

.single-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.single-image img {
  margin-top: 50px;
  height: auto;
  max-height: 90%;
  width: auto;
  max-width: 90%;
}

.audio {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  top: 1em;
}

audio {
  filter: sepia(80%) saturate(70%) grayscale(1) contrast(99%) invert(12%);
  width: 50%;
  height: 25px;
}
