body {
  margin: 0;
  background: #eaeaea;
  font-family: 'Open Sans', sans-serif;
}

html, body {
  width: 100%;
  height:100%;
}

.basic {
  padding: 50px 0;  
}
body {
    background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
    background-size: 400% 400%;
    animation: gradient 15s ease infinite;
}

@keyframes gradient {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}
.container {
  justify-content: center;
  align-items: center;
  height: 50vh;

  perspective: 100vw;
  perspective-origin: center;
}

.d-flex {
  display: flex;
}

.flex-column {
  flex-direction: column;
}

.flex-row {
  flex-direction: row;
}

.card {
  width: 320px;
  height: 180px;
  border-radius: 10px;

  overflow: hidden;
  position: relative;

  background: #0f0f0f;
  
  transform-style: preserve-3d;
  transition: all ease 700ms;
}

.card:hover {
  transform: rotate3d(1, -0.5, 0, 15deg);
  box-shadow: 3px 6px 15px 0px #0000005f
}

.card:after {
  width: 200%;
  height: 120%;

  content: "";
  background: linear-gradient(
    115deg, 
    #ffffff00,
    #f5f9ff23,
    #ffffff00
  );
  
  position: absolute;
  top: 0;
  left: 0;

  transition: all ease 600ms;
}

.card:hover:after {
  left: -100%;
  top: -20%;
}

.card-content {
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
}

.logo {
  width: 35px;
  height: 35px;
  margin-right: 1rem;
  border: 1px solid #b3b3b3;

  color: #b3b3b3;
  text-align: center;
  font-size: 25px;
  font-weight: 300;
}

.logo:before {
  content: "G";
}

.title {
  color: #b3b3b3;
  text-transform: uppercase;
  font-weight: 400;
  font-size: 14px;
  letter-spacing: 1.35px;
}

.subtitle {
  color: #b3b3b3;
  font-weight: 300;
  font-size: 12px;
  letter-spacing: 3px;
}
.main {
  border-radius: 10px;
  background: #0000005f;
  padding: 20px; 
  margin: auto;
  width: 80%;
  padding: 10px;
  
}
.h2, h2 {
  font-size: calc(1.325rem + .9vw);
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: .5rem;
  font-weight: 500;
  line-height: 1.2;
}
p {
  line-height: 1.5;
  display: block;
}

a:link {
  color: #0f0f0f;
  text-decoration: underline;
}

/* visited link */
a:visited {
  color: #0f0f0f;
  text-decoration: underline;
}

/* mouse over link */
a:hover {
  color: rgb(8, 43, 139);
  text-decoration: underline;
}

/* selected link */
a:active {
  color: #161718;
  text-decoration: underline;

}

*, ::after, ::before {
  box-sizing: border-box;
}

.inside {
  color:#eaeaea;
  text-shadow: 1px 1px 2px black;
}

.recuo {
  margin-left: 2em; 
  text-indent: 0em
}

.about {
  text-align: center;
  margin-left: 2em; 
  margin-right: 2em; 
  text-indent: 0em

}
.cv {
  margin-left: 2em; 
  margin-right: 2em; 

  text-align: center;
}