@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300..700&display=swap');

body{
  --bright: #71F79F;
  --dark: #313E50;
  --acc: #FFCAB1;
  --light: #95A8E2;
  
  background: linear-gradient(to bottom, var(--dark) 150vh,var(--bright));  font-family: "Space Grotesk", sans-serif;


}

/*FONT*/

@font-face{
  font-family:anton;
  src: url("assets/Anton-Regular.ttf");
}

a,a:link{
  background:white;
  color:var(--dark);
  padding:.1rem;
  border:solid white .2rem;
  border-radius:.5rem;
  text-decoration:none;
  font-weight:bold;
}
a:visited{color: var(--light);}
a:active{color: var(--acc);}
a:hover{
  background:none;
  color:white;
}

      /*FOOTER*/
footer{
  width:100%;
  text-align:center;
  text-transform:uppercase;
  padding-top:5vh;
  padding-bottom:5vh;
  color: var(--dark);
  text-shadow: 0 1em white;
}

/*MAIN*/

.hero {
  position: fixed;
  top: 0; left: 0;
  width: 100%;
  height: 100vh;
  background: linear-gradient(to bottom, var(--bright), var(--dark));
  color: white;
  transition: all 0.8s ease;
  transform-origin: top left;
  z-index: 10;
}
.hero h1{
  position:absolute;
  margin:auto;
  bottom:10%;
  left:0;
  right:0;
  max-width:96%;
  text-align:center;
  text-transform:uppercase;
  font-size:25vh;
  font-family:anton;
  -webkit-text-stroke: .1vh white;
  line-height:22vh;
  font-weight:400;
}
.front{
  color:transparent;
}
.hero #portrait{
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  background: url('assets/img/portrait.png') center bottom / auto 85% no-repeat
}

#profile {
  position: relative;
  top: 0; left: 0;
  width: 100%;
  min-height: 100vh;
  background: linear-gradient(to bottom, transparent 50%, var(--dark));
  color: white;
  transition: all 0.8s ease;
  transform-origin: top left;
  z-index: 10;
}

#circlePortrait{
  position:absolute;
  margin:auto;
  bottom: 30vh;
  left:10%;
  width:50vh;
  height:50vh;
  max-width:50vw;
  max-height:50vw;
  border-radius:100%;
  background: url('assets/img/PILAR_FAM-87.jpg') 32% 25% / 275%;
  box-shadow: 5vh 8vh var(--dark)
}

#profile h1{
  position:absolute;
  margin:auto;
  bottom:50%;
  right:5%;
  max-width:80%;
  filter: drop-shadow(1em .75em var(--dark));
}
#contact{
  position:absolute;
  margin:auto;
  top:50%;
  right:5%;
  max-width:40%;
  filter: drop-shadow(1em .75em var(--dark));
}
#contact p{display:inline-block;margin:.5rem;border-right: solid 1px;padding-right:.2rem}

.hero.shrink {
  position:absolute;
  font-size: 0.8rem;
}
.hero.shrink h1{
  font-size:5vw;
  line-height:4.5vw;
}

.portfolio {
  margin-top: 100vh; /* grid comes after hero */
  padding: 1rem;
}

.flex-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
}

.flex-item {
  background: rgba(108, 230, 114, .25);
  width: 28vw;
  height: 20vw;
}
.flex-item a{
  display:block;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  border-radius:0;
}
.flex-item p{
  margin:10px;
  margin-top:-10vw;
  text-align:right;
  font-size:1em;
  width: 80%;
  color:white;
}
.flex-item h2{
  margin:10px;
  margin-top:-10vw;
  text-align:right;
  font-size:1.2em;
  color:white;
}

.hero-placeholder {
  visibility: hidden; /* not seen, just reserves space */
  background:red;
}

@media only screen and (max-width: 700px) {
  .hero h1{
    font-size:15vw;
    line-height:8vw;
  }
  
  #profile {
    margin-top:10vh;
    height:fit-content;
    display:flex;
    flex-flow:column wrap;
    justify-content:center;
  }
  #contact,#profile h1{
    max-width:90%;
    position:relative;
    display:block;
    margin:1vh;
    float:none;
    top:0;
    bottom;0;
    left:0;
    right:0;
  }
  #circlePortrait{
    position:relative;
    display:block;
    margin:1vh;
    top:0;
    bottom:0;
    left:0;
    right:0;
    width:70vw;
    height:70vw;
  }
}
