* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.wrapper {
display: grid;
grid-template-columns: 1fr ;
grid-template-rows: auto;
grid-template-areas: "slideshow"
                     " dots"
                     " box1"
                     "box2"
                     "footer";


}


.box {
   margin-top: 5%;
    grid-column: span 3; 
    position: relative;
    z-index: 0;
    margin-left: 5%;
    margin-right: 5%;
    padding: 5%;
    background-image: linear-gradient(to bottom right,#2c3531,#116466);
    border-radius: 15px;
    color: rgb(255, 255, 255);
    font-size: 15px;
    grid-area: box;
}

#box1{
grid-area: box1;

}

#box2 {
grid-area: box2;

}
#dots{
  grid-area: dots;
  position: absolute;
  bottom: 2%;
  left: 0%;
  right: 0;
}
.menu {
    display: grid;
    touch-action: manipulation;
}


.menu .sub-menu {
    -webkit-overflow-scrolling: touch;
}


.menu>ol>li,
.menu .sub-menu {
    transition: transform 1s;
}
.bildspel-container {
    width: 100%;
    position: relative;
    margin: auto;
    height: auto;
   grid-area: slideshow;
    margin-top: 10%;
    
  }
  
#menutext{
  font-size: 5vw;
  top: 0px;
  position: absolute;
  top: 50%; 
  left: 50%; 
  transform: translate(-50%, -50%);
  
}
  
  .prev, .next {
    cursor: pointer;
    position: absolute;
    top: 50%;
    width: auto;
    margin-top: -30px;
    padding: 22px;
    color: white;
    font-weight: bold;
    font-size: 18px;
    transition: 0.6s ease;
    border-radius: 0 3px 3px 0;
    user-select: none;
  }
  
  .next {
    right: 0%;
    border-radius: 3px 0 0 3px;
  }
  .prev {
    left: 0%;
    border-radius: 3px 0 0 3px;
  }
  .prev:hover, .next:hover {
    background-color: rgba(0,0,0,0.8);
  }


  .punkt {
    cursor: pointer;
    height: 15px;
    width: 15px;
    margin: 0 2px;
    background-color: #424242;
    border-radius: 50%;
    display: inline-block;
    transition: background-color 0.6s ease;
    
  }
 img {
     border-radius: 15px;
     width: 100%;
  
    
    }
  
  
  .aktiv, .punkt:hover {
    background-color: #fdfdfd;
  }
 

  
 
  #titleonimage {
    position: absolute;
    font-size: 5vw;
    text-align: center;
    grid-area: textonimage;
    background-color: rgba(0, 96, 109, 0.7); 
    color: white;
    padding: 10px; 
    border-radius: 5px;
    top: 50%; 
    left: 50%; 
    transform: translate(-50%, -50%);
    display: none ;
  }


  


  footer{
    grid-area: footer;
    margin-top: 10%;
    padding: 5%;
    background-image: linear-gradient(to bottom ,#2C3540,#116466);
    border-radius: 5%;
    color: rgb(255, 255, 255);
    font-size: 15px;
    text-align: center;
    
  }
  
  .textinbox{
    margin-top: 5%;
}

.pictureinbox {
margin-top: 5%;
}


  @media only screen and (min-width: 767px) {
   
    .pictureinbox {
      margin-left: 5%;
      margin-top: 0%;
      }
      .textinbox {
        margin-top: 0%;
        margin-left: 5%;
        margin-right: 5%;
      }

footer{
    padding: 2%;

}
#titleonimage {

  display: block ;
}
#box1{
    display: grid;
    grid-template-areas: 
        "textinbox picinbox ";
    grid-template-columns: auto;
    grid-template-rows: auto; ;
}

#box2{
  display: grid;
  grid-template-areas: 
      "picinbox textinbox  ";
  grid-template-columns: auto;
  grid-template-rows: auto ;
}
.textinbox{
    grid-area: textinbox;
}
.picinbox{
    grid-area: picinbox;
    width: 90%;
}

.punkt{
height: 25px;
width: 25px;
margin-right: 5px;
margin-left: 5px;
}
  }


  @media only screen and (min-width: 1030px){

.bildspel-container{
  width: 100%;
  height: auto ;
}
p{
  font-size: 1.5vw;
}
footer{
  font-size: 25px;
}


  }


  
.page-reveal {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 1000;
}

.page-reveal .element {
  position: absolute;
  height: 100%;
  width: 100%;
  transform-origin: left;
}

.page-reveal .element-1 {
  background: #0b393a;
  transform: scaleX(0);
  animation: revealAnim 1250ms ease;
}

.page-reveal .element-2 {
  background: #116466;
  transform: scaleX(0);
  animation: revealAnim 1000ms ease;
  animation-delay: 450ms;
}

.page-reveal .element-3 {
  background: #0038b1;
  animation: revealContentAnim forwards;
  animation-delay: 500ms;
}

@keyframes revealAnim {
  50% {
    transform: scaleX(1);
    transform-origin: left;
  }
  51% {
    transform-origin: right;
  }
  100% {
    transform: scaleX(0);
    transform-origin: right;
  }
}

@keyframes revealContentAnim {
  to {
    transform: scale(0);
  }
}

