body {
  background: black;
  border: none;
  margin: 0;
  --load-time1: 300ms;
  --load-time2: 600ms;
  --main-font: "Fredoka One", cursive;
  --inner-font: "Comfortaa", cursive;
}

.header-div{
  position: fixed;
  background: none;
  height: 95px;
  width: 100%;
  z-index: 3;
  box-shadow: 0 3px 10px rgb(0 5 30 / 0.2);
}

.site-name-holder {
  background: none;
  border: none;
  margin: 0;
  margin-right:30px;
  padding: 0;
}

.dashboard-name-holder{
  position: absolute;
  top: 0px;
  right: 0px;
  background: none;
  border: none;
  padding-top: 14px;
  display: inline-flex;
  justify-content: space-around;
  float: right; 
  width: 75%;
}

.site-name {
  margin-left: 20px;
  font-size: 55px;
  font-family: var(--main-font);
}

.dashboard-label{
  margin-left: 3%;
  margin-top:10px;
  font-family: "Satisfy", cursive;
  font-size: 35px;
  color: dodgerblue;
  animation: name-load var(--load-time2);
  justify-content:space-around;
}

.slogan {
  float: right;
  color:white;
  margin-right: 140px;
  margin-top:20px;
  font-family: "Satisfy", cursive;
  font-size: 25px;
  animation: name-load var(--load-time2);
  justify-content:space-around;
}

.controls{
    position:absolute;
    right:0;
    top:10px;
    background:none;
    border:none;
    z-index:3;
    width:auto;
    display:inline-flex;
}

.user-icon, .menu-icon{
    padding:10px;
    border-radius:5px;
    cursor:pointer;
}

.user-icon:hover, .menu-icon:hover{
    background:red;
    color:black;    
}

.back{
    padding:20px;
    font-size:120%;
    background:none;
    cursor:pointer;
    border:none;
    border-bottom-left-radius:5px;
    border-top-left-radius:5px;
    color:white;
    z-index:3;
}

.back:hover{
    background:red;
    color:black;
}

.menu-div{
    height:auto;
    width:150px;
    position:absolute;
    right:0;
    top:65px;
    z-index:3;
}

.menu-options{
    background:darkred;
    font-family:arial;
    padding:10px;
    color:white;
    text-align:center;
    cursor:pointer;
}

.menu-options:hover{
    background:#36454F;
}

.show-username{
    font-family:arial;
    position:relative;
    float:right;
    margin-top:20px;
    right:25px;
    color:yellow;
    font-size:medium;
    font-weight:bold;
}

.map{
    position:fixed;
    width:100%;
    top:0px;
    left:0;
    right:0;
    bottom:0;
    height:100%;    
    opacity: 0.94;
    z-index:0;
    animation: name-load var(--load-time1), slogan-load 1000ms;    
}

.map2{
    position:fixed;
    width:100%;
    top:0px;
    left:0;
    right:0;
    height:300px;    
    opacity: 0.94;
    z-index:0;
    animation: name-load var(--load-time1), slogan-load 1000ms;    
}

.whereTo{
    width:90%;
    margin-left:2%;
    padding:3%;
    border:none;
    border-radius:15px;
    position:fixed;
    bottom:30px;
    z-index:2;
    font-size:120%;
    box-shadow: 0 3px 10px rgb(0 5 30 / 0.4);
}

.paypal-holder {
    width:30%; 
    margin:0 auto; 
    margin-top:60px; 
    margin-bottom:40px; 
    background:white; 
    padding:30px; 
    border-radius:20px;   
}

.success-holder{
    width:60%; 
    margin:0 auto; 
    margin-top:60px; 
    background:white; 
    padding:30px; 
    border-radius:20px;     
}

.booking-success-holder{
    width:60%; 
    margin:0 auto; 
    margin-top:0px; 
    background:white; 
    padding:30px; 
    border-radius:20px;     
}

/*map
#googleMap {
    width: 100%;
    height: 300px;
    margin: 0px auto;
  }*/
   
  /*output box*/
  #output {
    text-align: center;
    font-size: 16px;
    width:100%;
    font-family: arial;
    color:white;
    animation: name-load var(--load-time2);
  }
  
  .book{
      background:dodgerblue;
      color:white;
      width:100%;
      height:50px;
      border-radius:10px;
      box-shadow: 0 3px 10px rgb(0 5 30 / 0.4);
      font-family: arial;
      font-size: 110%;
      border: none;
      cursor:pointer;
  }
  
  .book:hover{
      background:rgb(159, 196, 233);
      color:black;
  }
  
  .book2{
      background:grey;
      color:white;
      width:100%;
      height:50px;
      border-radius:10px;
      box-shadow: 0 3px 10px rgb(0 5 30 / 0.4);
      font-family: arial;
      font-size: 110%;
      border: none;
      cursor:pointer;
  }
  
  .book2:hover{
      background:white;
      color:black;
  }  
  
  .pop-up-holder-div{
      position:fixed; 
      bottom:5%; 
      width:100%;
      height: auto; 
      text-align:center; 
      background:none;
      z-index:-1;
      animation: pop-in 900ms, no-show 900ms;
  }
  
  .pop-up-text{
      color:white;
      margin-left:10%;
      margin-right:10%;
      font-size:1rem;
      height: auto;
      text-align:center;
      font-family:var(--inner-font);
  }
  
.options:hover {
  opacity: 1;
  scale: 1.05;
  transition: 0.2s;
  z-index: 2;
  box-shadow: 0 3px 10px rgb(0 5 30 / 0.2);
}

.detail-info-div{
    background:black;
    margin-top:0;
    width: 100%;
    height:100%;
    text-align:center;
    flex-grow:1;
}

/*this is the from and to, get estimate form*/
#googleMapsForm{
    position:absolute;
    width:100%;
    bottom:0px;
    text-align:center;
    background:black;
    z-index:2;
}

.text-holder-caption{
    font-family: "Fredoka One", cursive;
    font-weight:bold;
    font-size:18px;
    padding-bottom:20px;
    text-align: left;
}

.text-holder{
    font-family: arial;
    text-align: left;
}

    /* Style for the actual file input */
    .file-input {
        font-size: 100px;
        position: absolute;
        left: 0;
        top: 0;
        opacity: 0;
    }

    /* Style for the button */
    .upload-inputs-button{
        width:100%;
        padding:20px;
        font-size:20px;
        background:red;
        border:none;
        border-bottom-left-radius:10px;
        border-bottom-right-radius:10px;
        cursor:pointer;
        color:white;
    } 

.form-holder{
    min-width: 350px;
    max-width: 50%;
    background:white;
    padding:20px;
    float:right;
}

.label{
    font-family: arial;
    font-size: 80%;
}

textarea:focus, select:focus, input:focus{
  outline: none;
}

.input-select{
  border: none;
  border-radius:0;
  width: 100%;
  background: rgb(167, 198, 230); 
  cursor: pointer;
  height:40px;
  color:black;
  font-size:15px;
}

.input-select:hover{
  background: rgb(124, 156, 189);
}

.select-option{
  border: none;
  width: 100%;
  background: orange; 
  cursor: pointer;
  box-shadow: 4px 4px #ccc;
}

.textarea, .input{
  border: 2px solid rgb(233, 228, 228);
  width: 94%;
  padding: 3%;
  background: none;
  font-family: 'Arial', sans-serif;
  font-size:17px;
}

.input1{
  border: 2px solid dodgerblue;
  border-bottom:none;
  border-top-left-radius:20px;
  border-top-right-radius:20px;
  width: 93%;
  padding: 3%;
  background: none;
  font-family: "Comfortaa", cursive;
  font-size:17px;
  color:white;
}

.input2{
  border: 2px solid dodgerblue;
  border-top-left-radius:0px;
  border-top-right-radius:0px;      
  border-bottom-left-radius:20px;
  border-bottom-right-radius:20px;
  width: 93%;
  padding: 3%;
  background: none;
  font-family: "Comfortaa", cursive;
  font-size:17px;
  margin-top:-5px;
  color:white;
} 

.special-input{
  border: 2px solid black;
  width: 93%;
  padding: 3%;
  background: none;
  font-family: 'Arial', sans-serif;
  font-size:17px;    
}

.textarea:hover, .input:hover{
  background: rgb(215, 210, 210);
}

.file{
    width:100%;
}

.custom-button{
    width:100%;
    padding-top:15px;
    padding-bottom:15px;
    border-radius:10px;
    border:none;
    background:rgb(190, 218, 246);
    font-weight:bold;
    cursor:pointer;
}

.custom-button:hover{
    background:rgb(190, 208, 246);
}

.icon-holder{
    visibility:hidden;
}

.error-icon{
  color: rgb(204, 34, 34);
  position:absolute;
  transform:scale(1.4);
  margin-left:7px;
  margin-top:7px;
}

.success-icon{
  color: rgb(112, 171, 24);
  position:absolute;
  transform:scale(1.4);
  margin-left:7px;
  margin-top:7px;
}

.red-bottom{
    border-bottom: 2px solid red;
}

.green-bottom{
    border-bottom: 2px solid rgb(112, 171, 24);
}

.hidden{
    visibility:hidden;
}

.visible{
    visibility:visible;
}

.scale-up{
    width:auto;
}

.error{
  color: red;
  font-size: small;
  font-family: 'Arial', cursive;
  float:left;
  margin-left:10px;
}

.formGroup, .other-form-elements{
  margin: 5%;
  width: cover;
  background: none;
  font-family: 'Arial', sans-serif;
  font-size:90%;
  text-align: left;
}

#login-background{
    position:absolute;
    top:0px;
    left:0;
    right:0;
    bottom:0;
    height:100%;
    width:100%;
    z-index:2;
    background:black;
}

.login-holder{
    width:35%;
    padding:30px;
    margin:0 auto;
    background:white;
    border-radius:10px;
    transform:translateY(50%);
}

.signup-holder {
    width: 35%;
    padding: 30px;
    margin: 0 auto;
    background: white;
    border-radius: 10px;
    transform: translateY(50%);
}

.notice-div{
    width:35%;
    padding:30px;
    margin:0 auto;
    background:white;
    border-radius:10px;
    transform:translateY(150px);    
}

.form-label{
    font-family: "Fredoka One", cursive;
    font-size:20px;
    margin:30px;
    margin-left:20px;
}

.input-login{
  border:none;
  border-bottom: 2px solid rgb(233, 228, 228);
  width: 94%;
  padding: 3%;
  background: none;
  font-family: 'Arial', sans-serif;
  font-size:17px;    
}

#getEstimateButton{
    margin-top:20px;
    margin-bottom:20px;
}

#submitForm{
    position:absolute;
    bottom:0px;
    width:96%;
}

@keyframes no-show {
  0% {
    opacity: 0;
  }
  
  50%{
    opacity:0;
  }

  100% {
    opacity: 1;
  }
}  
  
@keyframes slide-out {
  0% {
    transform: translateX(0%);
  }
  
  70% {
    transform: translateX(0%);
  }  
  
  100% {
    transform: translateX(-100%);
  }   
}
  
@keyframes pop-in {
  0% {
    transform: translateY(500%);
  }
  
  50% {
    transform: translateY(500%);
  }  

  100% {
    transform: translateY(0);
  }     
}

@keyframes name-load {
  0% {
    transform: translateX(-100%);
  }

  100% {
    transform: translateX(0);
  }
}

@keyframes name-load-left {
  0% {
    transform: translateX(100%);
  }

  100% {
    transform: translateX(0);
  }
}

@keyframes name-load2 {
  0% {
    transform: translateX(100%);
  }

  100% {
    transform: translateX(0);
  }
}

@keyframes slogan-load {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes shimmer-load {
  0% {
    opacity: 0;
  }
  
  20%{
    opacity:0.3;
  }

  100% {
    opacity: 1;
  }
}


@keyframes colorMorph {
    0%   { color: orange; }
    20%  { color: darkred; }
    40%  { color: brown; }
    60%  { color: red; }
    80%  { color: black; }
    100% { color: orange; }
}

.morphing-text {
    font-family: arial;
    font-weight: bold;
    margin-left: 30px;
    animation: colorMorph 5s infinite; /* 5 seconds for the cycle, adjust as needed */
}



    .upload-inputs{
        font-weight:bold;
        color:black;
        width:90%;
        padding:5%;
        padding-top:20px;
        padding-bottom:20px;
        font-size:120%;
        border-radius:10px;
        border:2px solid white;
        background-color: rgba(255, 255, 255, 0.5);
        outline: none; /* Remove the outline when focused */
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    }
    
    .upload-inputs::placeholder{
        color:black;
        font-weight:bold;
    }


@media (max-width:800px){
    
    .map{
        position:fixed;
        width:100%;
        top:0px;
        left:0;
        right:0;
        bottom:0;
        height:calc(100vh - 67px);    
        opacity: 0.94;
        z-index:0;
        animation: name-load var(--load-time1), slogan-load 1000ms;    
    }
    
    .map2{
        position:fixed;
        width:100%;
        top:0px;
        left:0;
        right:0;
        height:400px;    
        opacity: 0.94;
        z-index:0;
        animation: name-load var(--load-time1), slogan-load 1000ms;    
    }    
        
    .whereTo{
        width:90%;
        height:40px;
        margin-left:2%;
        padding:3%;
        border:none;
        border-radius:10px;
        position:fixed;
        bottom:25px;
        z-index:2;
        font-size:120%;
        background:black;
        box-shadow: 0 3px 10px rgb(0 5 30 / 0.9);
    }    
    
    #login-background{
        position:absolute;
        top:0px;
        left:0;
        right:0;
        bottom:0;
        height:100%;
        width:100%;
        background:black;
    }    
    
    .login-holder{
        width:92%;
        padding:4%;
        padding-bottom:20px;
        margin:0 auto;
        background:white;
        border-radius:10px;
        transform:translateY(50%);
        font-size:22px;
    }
    
    .signup-holder {
        width: 92%;
        height:calc(100% - 40px);
        padding-top: 20px;
        padding-bottom: 20px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background: white;
        border-radius: 0px;
        font-size: 22px;
    }

    .notice-div{
        width:92%;
        padding:4%;
        padding-bottom:50px;
        margin:0 auto;
        background:white;
        border-radius:10px;
        transform:translateY(40%);
        font-size:22px;   
    }    
    
    .input-login{
      border:none;
      border-bottom: 2px solid rgb(233, 228, 228);
      width: 94%;
      padding: 3%;
      background: none;
      font-family: "Fredoka One", cursive;
      font-size:22px; 
    }    
    
    .error{
      color: red;
      font-size: 18px;
      font-family: "Comfortaa", cursive;
      font-weight:bold;
      float:left;
      margin-left:10px;
      margin-bottom:10px;
    }    
        
.slogan {
  float: right;
  color:white;
  margin-right: 60px;
  margin-top:20px;
  font-family: "Satisfy", cursive;
  font-size: 25px;
  animation: name-load var(--load-time2);
  justify-content:space-around;
}    

    .paypal-holder {
        width:auto; 
        margin:0 auto; 
        margin-top:25%; 
        margin-bottom:40px; 
        background:white; 
        padding:30px; 
        border-radius:20px;
    }
    
    .success-holder{
        width:auto; 
        margin:0 auto; 
        margin-top:60px; 
        background:white; 
        padding:30px; 
        border-radius:20px;     
    }
    
    .booking-success-holder{
        width:auto; 
        margin:0 auto; 
        margin-top:0px; 
        background:white; 
        padding:30px; 
        border-radius:20px;     
    }    
    
    .input1{
      border: 3px solid dodgerblue;
      border-bottom:none;
      border-top-left-radius:20px;
      border-top-right-radius:20px;
      width: 90%;
      height:40px;
      padding: 3%;
      background: none;
      font-family: "Comfortaa", cursive;
      font-size:17px;
    }
    
    .input2{
      border: 3px solid dodgerblue;
      border-top-left-radius:0px;
      border-top-right-radius:0px;      
      border-bottom-left-radius:20px;
      border-bottom-right-radius:20px;
      width: 90%;
      height:35px;
      padding: 3%;
      background: none;
      font-family: "Comfortaa", cursive;
      font-size:17px;
      margin-top:-5px;
    }
    
    .book{
      background:dodgerblue;
      color:white;
      width:100%;
      height:60px;
      border-radius:10px;
      box-shadow: 0 3px 10px rgb(0 5 30 / 0.4);
      font-family: arial;
      font-size: 110%;
      border: none;
      cursor:pointer;
    }
    
    .book:hover{
      background:rgb(159, 196, 233);
      color:black;
    }
    
  .book2{
      background:white;
      color:black;
      width:100%;
      height:60px;
      border-radius:10px;
      box-shadow: 0 3px 10px rgb(0 5 30 / 0.4);
      font-family: arial;
      font-size: 110%;
      border: none;
      cursor:pointer;
  }
    
    #getEstimateButton{
        margin-top:20px;
        margin-bottom:20px;
        width:96%;
        margin-left:2%;
    }

  .popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 20px;
    border: 2px solid black;
    z-index: 9999;
  }
  
    /* Style for the actual file input */
    .file-input {
        font-size: 100px;
        position: absolute;
        left: 0;
        top: 0;
        opacity: 0;
    }

    /* Style for the button */
    .file-input-button {
        border: none;
        color: white;
        background-color: dodgerblue; /* Customize the background color */
        padding: 15px 15px;
        border-radius: 10px;
        cursor: pointer;
        font-family:arial;
    }
    
    .upload-inputs{
        font-weight:bold;
        color:white;
        width:90%;
        padding:5%;
        padding-top:20px;
        padding-bottom:20px;
        font-size:120%;
        border-radius:10px;
        border:2px solid white;
        background-color: black;
        outline: none; /* Remove the outline when focused */
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    }
    
    .upload-inputs::placeholder{
        color:white;
        font-weight:bold;
    }

}





