@import url('href="https://fonts.googleapis.com/css?family=Lato');

*
{
    margin: 0;
    padding: 0;
    box-sizing: border-top;
    font-family: 'Lato', sans-serif;
    color: rgb(20, 20, 20);
    scroll-behavior: smooth;
}

body 
{
    min-height: 100vh;
    overflow-x: hidden;
    width:100vw;
    background: rgb(255, 255, 255);
}

nav 
{
    margin-top: 2em;
    display: grid;
    justify-content: space-evenly;
    align-content: center;

} 

@media only screen and (min-width: 701px) {
    nav
    {
        grid-template-columns: auto auto;
   }

}




header 
{
    position: absolute;
    left: 0;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 70vh;
   /* justify-content: space-between;*/
    align-items: center; 
    background: linear-gradient(rgb(4, 48, 88), rgb(255, 255, 255));
    color: white;
}
/*change background gradient color based on time of day*/ 
header .logo 
{
    display: flex;
    justify-content: left;
    color: white;
    font-weight: 700;
    text-decoration: none;
    font-size: 1.8em;
    text-transform: uppercase;
    letter-spacing: .25em;
}


header ul 
{
    display: flex;
    justify-content: right;
    z-index: 10;
    font-size: medium;
}

header ul li
{
    list-style: none;
    margin-left: 20px; 
}

header ul li a
{
    text-decoration: none;
    padding: 6px 15px; 
    color: white;
    border-radius: 20px;
        
}

header ul li a:hover,
header ul li a.active
{
    background:white;
    color: rgb(19, 25, 26);
    pointer-events: default;
    cursor: pointer;
}

section
{   
    width: 100vw; 
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: -1;
    background-image: url("stars.png");
    background-size: 75vw;
    background-repeat: repeat-x;
    background-attachment: scroll;    
   
}

section ::before
{
    content: '';
    position:absolute;
    bottom: 0;
    width: 100%;
}


section img
{
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

section img#mountain
{

 mix-blend-mode: screen;
 position: absolute;
 padding-top: 17em;
 bottom: -30%;
 width: 100%;
 height: 100%;
 z-index: 1;
}

section #text
{
    color: white;
    padding-top: 10vh;
    margin-left: -30%;
    white-space: no-wrap;
    font-size: 8vw;
    z-index: 100;
    
    transform: translateY(-42vh);
    
}
/*

#gradient
{
    content: '';
    position:absolute;
    bottom: 0;
    width: 100%;
    height: 100px;
    z-index: 1000;
     background: linear-gradient(to top, rgb(248, 248, 248), transparent); 
}
*/

.sec 
{
    position: absolute;
    display: block;
    margin-top: 100vh;
    padding: 6em;
    /*width: 100%;*/
    
    background:white;
    color:rgb(20, 20, 20);
    z-index: 100;
    /*text-wrap: pretty;*/
}

.sec h1
{
    padding-bottom: 10vh;
    font-size: 8vw;
    text-align: center;

}

.sec h2 
{
    padding: 22px;
    font-size: 3vw;
    color:rgb(20, 20, 20);
}

.sec h3
{
    text-align: center;
    font-size: 3vw;
    padding-bottom: 10px;
}

.sec p 
{
    color: rgb(20, 20, 20);
    text-wrap: wrap;
    font-size: 2vw;
    
}
.priceGrid
{
    margin-top: 10vh;
    margin-bottom: 4vh;
}
.priceGrid h2
{
    padding: 3vh;

}


.grid-container {
    display: grid;
    grid-template-columns: 4fr 2fr 2fr 2fr;
    color: black;
    gap: 3em;
  }

.grid-item {
    color:black;
}

.projects p
{    
    font-size: medium;
    padding: .5em;
}

.contact label{
    color: rgb(20,20,20);
}

input[type=text], textarea {
    width: 100%; 
    padding: 12px; 
    border: 1px solid #ccc; 
    border-radius: 4px; 
    box-sizing: border-box; 
    margin-top: 6px; 
    margin-bottom: 16px; 
    resize: vertical 
  }
  
  .btn,
  input[type=submit] {
    background-color: rgb(4, 48, 88);
    color: white;
    padding: 12px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
  }
  
  .btn:hover,
  input[type=submit]:hover {
    background-color:rgb(76, 131, 182);
  }
  
  .container {
    border-radius: 5px;
    background-color: #f2f2f2;
    padding: 20px;
  }

  .small
  {
    font-size: .7em;
    padding: 2em;
  }

  .gallery
  {
    margin-top: 12vh;
    display: grid;
    grid-template-columns: auto auto;
    justify-content: space-evenly;
    align-content: center;
    grid-row-gap: 7vh;
  }

  .gallery img
  {
    padding: 5%;
    padding-top: 10%;
    align-items: center;
    width: 90%;
  }

  .gallery p
  {
    padding-bottom: 15%;
    font-size: small;
    padding: 2px;
    text-align: center;
  }

  .gallery img:hover
  {
    display: block;
    padding: 0%;
    width: 100%;
    z-index: 20;
  }

  #fullpage 
  {
    display: none;
    position: absolute; 
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vw;
    background-size: contain;
    background-repeat: no-repeat no-repeat;
    background-position: center center;
    background-color: rgb(20, 20, 20);
  }

  @media only screen and (max-width: 700px)
{
    body , html {
        margin: 0;
        padding: 0;
        width: 100%;
    }
    header {
        width: 100%;
        margin: 0;
        padding: 0;
    }
    nav
    {
        display: grid;
        grid: 100px/ auto;
        grid-template-columns: auto;
        grid-template-rows: 100px 100px;
        justify-content: center;
        align-items: center;
    }
    .col-1 {
        width:100%;
        justify-content: center;
        float: none;
        grid-column: 1/span 2;
        grid-row: 1;
    }
    .col-2 {
        width:100%;
        justify-content: center;
        float: none;
        grid-column: 1/span 2;
        grid-row: 2;
    }
    .sec {
        padding: 2%;
        width: 100%;
    }
    .sec p {
        padding: 2em;
        font-size: small;
    }
}

