
html{
    margin:0;
    padding:0 100px;
}

main {
    font-family: 'Reddit Mono', 'Arial', sans-serif;
    display: flex;
    flex-direction:column;
    background-color:white;
    height: 100vh;
    margin:0; 
}

.padded{
    margin:20px;
}

.padded h2{
    text-align:left;
    padding-left:20px;
    padding-right:20px;
    margin:10px;
    font-size:32pt;
}

.padded p{
    font-size:normal;
    text-align:left;
    padding-left:20px;
    padding-right:20px;
    margin:10px;

}

#loading-scene {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#welcome-scene,
.scene {
    display: none;
    text-align: center;
    font-size: large;
    font-family: 'Averia Serif Libre', sans-serif;
    
}

#welcome-scene{
    position: relative; 
}


.next-btn {
    padding: 10px 20px;
    font-size: 16px;
    cursor: pointer;
}

.loading-text {
    font-family: monospace;
    font-size: 20px;
    color: black;
    padding-bottom:20px;

}

.loading-bar {
    display: inline-block;
    width: 200px;
    height: 20px;
    border: 3px solid #1e3cb8;
    border-radius: 10px;
    position: relative;
    overflow: hidden;
    background-color: #ccc;
}

.loading-progress {
    width: 0;
    height: 100%;
    background-color: #f0d513;
    position: absolute;
    top: 0;
    left: 0;
}

/* @keyframes textAnimation {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}  */

@keyframes pulse {
    0% {
      transform: scale(1);
    }
    50% {
      transform: scale(1.1);
    }
    100% {
      transform: scale(1);
    }
  }
  
  #start-btn, #motivation, #go-btn {
    animation: pulse 1.5s infinite alternate;
  }

.animated-text {
    animation: textAnimation 3s forwards;
    color: #1e3cb8;
}

#start-btn, #go-btn{
    font-size:larger;
}

.finish {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding:10px;
    margin-top:20px;
}

.finish img {
    max-width: 100%;
    max-height:60vh; 
}

.race-logo img{
    max-width: 70vh;
    padding-bottom:20px;
}

#motivation a{
    text-decoration: none;
    color:white;
}

.center p{
    text-align: center;
    align-content: center;
    font-weight:bold;
}

.center h2{
    text-align: center;
    align-content: center;
    font-weight:bold;
}

h3{
    font-size:larger;
    font-weight:bolder;
    padding:0;
    margin:0;
}

.container {
    position: relative;
    width: 500px;
    height: 300px;
  }
  
  .background-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
  .overlay-image {
    position: absolute;
    top: 100px; 
    left: 400px;
    z-index: 1; 
    animation: slideAnimation 3s forwards; 
  }
  
  @keyframes slideAnimation {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(-50px) ; 
    }
  }
.go{
    display:flex;
    flex-direction:column;
    justify-content:center;
    font-size:xx-large;
    text-align:center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.go p{
    font-size:small;
}

.next-btn, #start-btn, #motivation, #go-btn {
    padding: 10px 20px;
    font-size: larger;
    cursor: pointer;
    background-color: #1e3cb8; 
    border: 2px solid #1e3cb8; 
    color: #f0d513; 
    border-radius: 5px;
    font-family: 'Averia Serif Libre', sans-serif;
    transition: background-color 0.3s, color 0.3s;
    margin-bottom:20px;
    margin-top:20px;
}

.next-btn:hover, #start-btn:hover, #motivation:hover, #go-btn:hover{
    background-color: #f0d513; 
    color: #1e3cb8; 
}

.paris-marathon{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding-right:20px;
}

.paris{
    padding-right:20px;
}

.hidden{
    display:none;
}

footer {
      background-color: white;
      color:#1e3cb8;
      text-align: center;
      padding: 10px 0;
      font-size: 12px; 
    }

    .mute-button {
        background-color: transparent;
        color: #333;
        border: none;
        padding: 5px;
        cursor: pointer;
        text-decoration: underline;
        text-align:right;
      }


.graphs img{
    max-width:50vw;
    max-height:50vh;
}

#map {
    height:auto;
    min-height:400px;
    min-width:300px;
    width: 100%;
}

#map-id p{
  margin:0;
}

.map{
  padding:0px 20px;
}

.after-image img{ 
    width:50%;
    height:20%;
    max-height: 30vh;
    max-height:80vw;
}

figcaption {
        text-align: center;
        font-style: italic;
    }

@media screen and (max-width: 720px) {
    html{
        margin:0;
        padding:0;
    }
    
    main{
        margin:10px;
    }

    .padded{
        margin:0;
        margin-top:10px;
        margin-bottom:10px;
    }

    .paris-marathon{
        flex-direction:column;    
        padding-right:0px;

    }

    .finish button{
        top: 30%;
        left:40%;
    }

    .paris{
        padding-bottom:10px;
        padding-right:0px;
    }

    #map {
        height:auto;
        min-height:600px;
        min-width:300px;
        width: 100%;
    }
    .race-logo img{
        max-width:90vw;
    }


  } 


  @media screen and (max-width: 300px) {

    #map {
        height:auto;
        min-height:500px;
        min-width:200px;
        width: 100%;
    }

  } 