@import url('https://fonts.googleapis.com/css2?family=Dosis:wght@300;400;500;700&display=swap');

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Dosis', sans-serif;
    background-color: rgb(240, 240, 240);
    
}

@keyframes fade-in {
    from {opacity: 0; transform: translateY(25px);}
    to {opacity: 1;}
}

.fade-in-element-portfolio { animation: fade-in 1.3s; }

/* ---------------------------------------------------------
                          Header
   --------------------------------------------------------- */

.about-home-hero { min-height: 300px; background-color: rgb(131, 131, 131); display: flex; flex-direction: column; justify-content: space-between; align-items: center; background-image: url("img/pages-hero.png"); background-position: center; background-repeat: no-repeat; background-size: cover; padding-bottom: 0px; }

.logo { height: 70px; width: auto; }

.menu { display: flex; flex-direction: row; justify-content: space-between; align-items: center; padding: 25px; position: fixed; z-index: 10; width: 100%; background-color: rgba(255, 255, 255, 0.566); }

/* .menu.scrolled {
    background: #0a0a0a;
  } */
  .scrolled {
    background-color: white;
  }

.nav-menu {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin: 0 0px;
}

.nav-item {
    color: black;
    text-decoration: none;
    font-size: 16px;
    margin-right: 20px;
    margin-left: 20px;
    text-transform: uppercase;
}
label { margin-left: 3px; }
.login-btn { color: white; }
.uname-label { color: black; }
/* Home Hero */





.btn {
    color: white;
    text-decoration: none;
    text-align: center;
    transition: all .3s;
}

.btn:hover {
    transform: translateY(-5px);
    box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.212);
}


.login-wrapper { position: fixed; right: 0; z-index: 100; display: none; background-color: rgba(255, 255, 255, 0); }
.login-form { display: flex; flex-direction: row; justify-content: center; align-items: center; }

.login-submit-btn { background-color: transparent; color: black; font-weight: 700; padding: 10px 0px; margin: 0px 0; border: none; cursor: pointer; width: 100%; font-size: 15px; transition: all, .3s; }

/* Login */
.login-btn { background-color: #54954C; border: 1px solid #54954C; color: white; padding: 9px 40px; border-radius: 100px; 
    letter-spacing: .3px; font-size: 14px; font-weight: 500; transition: all, .3s; }

/* Full-width input fields */
.login-input {
    width: 100%;
    padding: 8px 5px;
    margin: 15px 0;
    display: inline-block;
    border-top: none;
	  border-right: none;
    border-left: none;
    border-bottom: 2px solid rgb(148, 148, 148);
    box-sizing: border-box;
  }
  
  /* Set a style for all buttons */
  button { color: white; cursor: pointer; }

  .login-submit-btn { background-color: #4CAF50; color: white; padding: 10px 20px; margin: 8px 0; border: none; cursor: pointer; 
    width: 100%; font-size: 16px; transition: all, .3s; }
  
  button:hover { opacity: 0.8; }
  
  /* Extra styles for the cancel button */
  .cancelbtn { width: auto; padding: 10px 30px; background-color: #f44336; border: none; border-radius: 5px; }
  
  /* Center the image and position the close button */
  .imgcontainer { text-align: center; margin: 24px 0 12px 0; position: relative; }
  
  .container { padding: 16px; }
  
  span.psw { float: right; padding-top: 16px; font-size: 15px; }
  
  /* The Modal (background) */
  .modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
    padding-top: 60px;
  }
  
  /* Modal Content/Box */
  .modal-content {
    background-color: #fefefe;
    margin: 5% auto 15% auto; /* 5% from the top, 15% from the bottom and centered */
    border: 1px solid #888;
    width: 80%; /* Could be more or less, depending on screen size */
  }
  
  /* The Close Button (x) */
  .close {
    position: absolute;
    right: 25px;
    top: 0;
    color: #000;
    font-size: 35px;
    font-weight: bold;
  }
  
  .close:hover, .close:focus { color: red; cursor: pointer; }
  
  /* Add Zoom Animation */
  .animate { -webkit-animation: animatezoom 0.6s; animation: animatezoom 0.6s }
  
  @-webkit-keyframes animatezoom {
    from {-webkit-transform: scale(0)} 
    to {-webkit-transform: scale(1)}
  }
    
  @keyframes animatezoom {
    from {transform: scale(0)} 
    to {transform: scale(1)}
  }

@media only screen and (max-width: 800px) {

    .login-wrapper { position: relative; right: 5; z-index: 100; display: none; width: 100%; margin: 10px 0; background-color: rgba(255, 255, 255, 0); }
    .login-form { display: flex; flex-direction: column; justify-content: center; align-items: center; }
    label { margin-left: 0px; margin-right: 0px; font-weight: 700; }
    label {  color: black; }
    .login-submit-btn {  color: black;  }
    .login-input { width: 100%; padding: 2px 5px; margin: 5px 0; border-bottom: 2px solid rgb(73, 73, 73); }
}


/* ---------------------------------------------------------
                    Portfolio Page
   --------------------------------------------------------- */

#portfolio-intro-section { padding: 30px 0; padding-top: 110px; display: flex; flex-direction: column; justify-content: center; align-items: center; }   

.portfolio-intro-subheading { width: 60%; font-size: 17px; line-height: 27px; margin: 0px 0; text-align: center; font-weight: 500; }



.portfolio-categories { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; }
.portfolio-category {  display: none; }
.portfolio-category-one { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; margin: 10px auto; }

.portfolio-image-wrapper { width: 100%; text-align: center; }

.portfolio-category h1 { font-weight: 700; text-align: center; color: #54954C; margin: 15px 0; font-size: 30px; }
.portfolio-category-img { width: 40%; height: auto; margin: 10px 5px; border: 2px solid black; transition: all, .6s; }
.portfolio-category-img:hover { transform: scale(1.04); }
.portfolio-category-img-one { width: 24%; }

.testimonial-heading { width: 50%; }

.portfolio-btn { width: 60%; }
.portfolio-btn:hover { background-color: #33692c; }

@media only screen and (max-width: 800px) {
  .portfolio-page-section-heading { width: 90%; }
    .portfolio-intro-subheading { width: 80%; }

    .portfolio-category { display: flex; flex-direction: column; justify-content: center; align-items: center;  width: 100%; margin: 10px 0; }

    .portfolio-category { display: none; }
    .portfolio-category-one { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; margin: 10px auto; }

    .portfolio-image-wrapper { width: 100%; display: flex; flex-direction: column;  justify-content: center; align-items: center; }

    .portfolio-category h1 { font-weight: 700; text-align: center; color: #54954C; margin: 15px 0; font-size: 30px; }
.portfolio-category-img { width: 95%; margin: 10px 0px; border: 2px solid black; margin: 5px auto; }
.testimonial-heading { width: 100%; }

}


/* ---------------------------------------------------------
                      Footer
   --------------------------------------------------------- */

footer { display: flex; flex-direction: column; justify-content:center; align-items: center; padding: 50px 0; background-color: rgb(17, 17, 17); }   

.footer-row { display: flex; flex-direction: column; justify-content:center; align-items: center; }
.footer-row h2 { font-size: 20px; font-weight: 500; color: white; }
.footer-locations { display: flex; flex-direction: row; justify-content: center; align-items: center; }
.footer-locations p { margin: 10px 12px; text-align: center; font-weight: 500; color: white; }
.copyright { text-align: center; margin: 10px 0; font-weight: 500; color: white; }