

* {
  box-sizing: border-box;
}

@font-face {
    font-family: 'ppneuemontreal';
    src :url(fonts/ppneuemontreal-medium.woff) format('woff');
    font-weight: medium;
}

:root {
     --bgColor: white;
     --selectedColor:lawngreen;
     --highlighted-txtColor:#838383;
     --blurColor_start: rgba(255, 255, 255, 0.1);
     --blurColor_middle: rgba(255, 255, 255, 0.05);
     --blurColor_end: rgba(255, 255, 255, 0);
     --bigTxtSize: 4vw;
     --black: #000;
     --white: #fff;
     --underLine: 1px solid #000;
     --textFont:"ppneuemontreal", sans-serif;
     --fontWeight: 300;
}

body {
    background-color: var(--bgColor);
    margin: 0;
    padding-left:4vw;
    padding-right:4vw;
    padding-top: 1vh;
    color: var(--black);
    padding-bottom: 8vh;

}


html{
    scroll-behavior: smooth;

}

p{  color: black;
    font-family: var(--textFont);
    line-height: normal;
}

a{
    color: black;
    font-family: var(--textFont);
}



img {
    width:100%;
    margin:0;
    padding-bottom:2vw;
}


video {
  max-width: 100%;
  height: auto;
  margin:0;
  padding-bottom:2vw;
}

p, span, div {
  user-select: none;
}

.highlighted-txt{
    font-family: var(--textFont);
    color:var(--highlighted-txtColor);
}

/*::selection {
      background-color: var(--selectedColor);
    }*/

/*-------------------nav----------------------*/
nav {
   position: sticky;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 1000;
   display: flex;
   justify-content: space-between;
   margin-bottom: 7vh;
   padding-top: 3vh;
   padding-bottom: 1vh;
   backdrop-filter: blur(5px);
   -webkit-backdrop-filter: blur(5px);
   overflow: hidden; 
}

nav::before {
  content: "";
  position: absolute;
  inset: 0; /* fills the entire nav */
  background: linear-gradient(
    to bottom,
    var(--blurColor_start),
    var(--blurColor_middle),
    var(--blurColor_end)
  );
  -webkit-mask: linear-gradient(
    to bottom,
    var(--blurColor_start) 100%,
    var(--blurColor_middle) 50%,
    var(--blurColor_end)
  );
  mask: linear-gradient(
    to bottom,
    var(--blurColor_start) 100%,
    var(--blurColor_middle) 50%,
    var(--blurColor_end)
  );
  z-index: -1; /* sits behind .logo and text */
}

nav p a:hover{
    color:var(--highlighted-txtColor);
}

.logo{
    font-family: var(--textFont);
    font-size: 2vw;
    display: inline-flex;
    align-items: center;
    justify-content: center; 
    border:none;
    background-color: var(--black);
    padding:1.2vw;
    border-radius: 50%;
    width:3vw;
    height:3vw;
    color: var(--white);  
}

.logo a{
    color: white;
    text-decoration: none;

}

.logo:hover{
    border:none;
    background-color: var(--highlighted-txtColor);
}

.logo:hover a{
    color: var(--white);  
}


.link {
    color: black;
    text-decoration: none;
}

nav p {
    margin: 0;
    padding: 0;
    font-size: 2.5vw;
    transition: ease 0.1s;
    letter-spacing: 0;
}

nav p a:hover{
    color:var(--highlighted-txtColor);
}

/*nav p:hover{
     letter-spacing: 0.1vw;
}*/

.info{
     text-align: center;
     text-decoration: none;
     display: inline-block;
     border: 2px solid var(--black);
     width:10%;
     border-radius: 100px;
     padding-left: 1vw;
     padding-right: 1vw;
}
.info:hover{
    border: 2px solid var(--highlighted-txtColor);
    color:var(--highlighted-txtColor);
}


/*----------------------projects-----------------*/

.division-block{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-column-gap: 2vw;
}

.division-block p{
    font-family: var(--textFont);
    font-weight: var(--fontWeight);
    font-size:1.5vw;
    text-align: left;
}





.project-intro {
    margin-top: 3vw;
    margin-bottom: 3vw;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 4vw;
    padding-top: 2vw;
}



.column p{
    font-family: var(--textFont);
    font-weight: var(--fontWeight);
    font-size:1.5vw;
    text-align: left;
    margin: 0;
    padding-bottom: 2vw;

}

.column a{
    text-decoration: underline;
    color: var(--highlighted-txtColor);
}


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

nav {
    margin-bottom: 3vh;
    padding-bottom: 1vh;
}

.logo{
    width: 6.5vw;
    height: 6.5vw;
}

.logo a {
    text-align: center;
    font-size: 3.5vw;
}


.info{
     border: 1px solid var(--black);
      width:20%;
}

.info:hover{
    border:1px solid var(--highlighted-txtColor);
}


nav p {
    font-size: 5vw;
}




.column p{
     /*font-family: var(--mobileText);*/
    font-size:4vw;
}

.project-intro {
    grid-template-columns: 1fr;
}


}






