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

:root {
  --bg-color: #fff;
  --color-txt: #000;
  --blue: #0b0086;
  --light-grey: #E0E0E0;
  --yellow-sweet: #FFD369;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

html {
  background-color: var(--light-grey);
}

body {
  font-family: "Trebuchet MS", "Lucida Sans Unicode", "Lucida Grande", "Lucida Sans", "verdana", Arial, sans-serif;
  font-size: 1em;
  margin: 0 auto;
  max-width: 1000px;
  height: 100%;
  border: solid 3px var(--color-txt);
  background-color: var(--light-grey);
}
body .flex {
  display: flex;
}
body main, body #name {
  padding: 0 5%;
}
body h4 {
  font-size: 1.2em;
  margin: 0;
  padding: 4% 0;
  color: var(--blue);
}

header {
  width: 100%;
}
header .flex {
  display: flex;
}
header .flex #head_photo {
  flex: 1;
  background-color: var(--blue);
}
header .flex #head_photo .vp-photo {
  margin: 15% auto;
  height: 150px;
  width: 150px;
  border: solid var(--yellow-sweet) 2px;
  border-radius: 50%;
  overflow: hidden;
  padding: 0 0 25px 0;
}
header .flex #head_photo .vp-photo #photo {
  width: 110%;
  margin-top: -10px;
  margin-left: -15px;
}
header .flex #name {
  flex: 2;
  background-color: var(--light-grey);
}
header .flex #name h1 {
  padding-top: 10%;
  margin: 0;
  font-size: 3.5em;
  text-transform: uppercase;
}
header .flex #name h1 .blue {
  color: var(--blue);
}
header .flex #name h2 {
  margin-bottom: 5%;
  margin-top: 0%;
  font-size: 2.5rem;
}
header .flex #name h2 #border_dev {
  border-bottom: var(--yellow-sweet) 2px solid;
}
header .hidden-txt {
  width: 0px;
  height: 0px;
}

#my_contact {
  display: flex;
  flex-direction: column;
  flex: 1;
  background-color: var(--blue);
  color: var(--bg-color);
}
#my_contact .aside {
  margin: 3rem 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#my_contact .aside h3 {
  color: var(--bg-color);
  text-align: center;
  text-transform: uppercase;
  padding: 2% 0%;
  margin-bottom: 0;
  border-bottom: 2px solid var(--yellow-sweet);
}
#my_contact .aside p {
  padding: 0 10%;
  text-align: center;
}
#my_contact .aside ul {
  list-style: none;
  text-align: center;
}
#my_contact .aside ul li {
  margin: 0.8rem auto;
}
#my_contact .aside .hobbies {
  text-align: center;
  font-size: 2em;
  padding: 5%;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
}
#my_contact .aside .hobbies img {
  border: 2px solid var(--yellow-sweet);
  width: 50px;
  height: 50px;
  text-align: center;
  border-radius: 50%;
  display: flex;
  justify-content: space-around;
  align-items: center;
}
#my_contact .aside .hobbies .hidden-txt {
  width: 0px;
  height: 0px;
}
#my_contact #contact h3 {
  margin-top: 0;
}
#my_contact #contact a {
  text-decoration: none;
  color: var(--light-grey);
  -webkit-text-decoration: underline var(--yellow-sweet);
          text-decoration: underline var(--yellow-sweet);
}
#my_contact #contact a:hover {
  color: var(--yellow-sweet);
}
#my_contact .flex-grow p {
  font-weight: 500;
  font-size: 18px;
}

main {
  flex: 2;
  background: url("../img/fond-livres-compress.webp");
  background-position: center;
  background-size: cover;
  width: 100%;
}
main #formations h3, main #experience h3, main #recom h3 {
  font-size: 1.3em;
  padding-top: 3%;
  margin-top: 0;
  margin-bottom: 1%;
  text-transform: uppercase;
}
main .border-h2 {
  border-bottom: 2px solid var(--yellow-sweet);
  margin-bottom: 2%;
}
main .border-h2 h3 {
  display: flex;
  text-align: center;
  align-items: center;
}
main .border-h2 .px1 {
  padding-right: 1rem;
}
main .border-h2 .px1 img {
  width: 45px;
}
main .border-h2 .px2 {
  font-size: 0.5em;
  padding-right: 1rem;
}
main article {
  display: flex;
  flex-direction: row;
}
main article .flex-date {
  flex: 1;
}
main article .flex-date .align-date {
  display: inline-flex;
}
main article .comp {
  flex: 2;
  margin-left: 2%;
}
main #reco_global {
  justify-content: space-between;
  margin: 1rem auto;
}

footer {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--blue);
  height: 2rem;
}
footer p {
  text-align: center;
  color: var(--yellow-sweet);
}
footer p a {
  color: var(--light-grey);
}
footer p a:hover, footer p a:focus {
  color: var(--yellow-sweet) !important;
  outline: 1px solid var(--yellow-sweet);
  outline-offset: 1px;
}

@media screen and (max-width: 768px) {
  .flex {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
  }
  .flex #head_photo {
    width: 100%;
    padding-top: 5%;
    padding-bottom: 5%;
  }
  .flex #head_photo .vp-photo {
    margin: auto;
  }
  .flex #head_photo .vp-photo #photo {
    width: 110%;
    margin-top: -10px;
    margin-left: -15px;
  }
  .flex #name {
    width: 100%;
    padding-top: 3%;
  }
  .flex #my_contact {
    display: flex;
  }
  .flex #my_contact #contact {
    text-align: center;
  }
  .flex #my_contact .hobbies {
    margin: 0;
    padding: 2% 0;
  }
  .flex h3 {
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
  }
  .flex h3 img {
    width: 30px;
  }
  .flex article {
    flex-direction: column;
    border-bottom: 2px solid var(--yellow-sweet);
    margin: 0 auto 1.5rem;
  }
}/*# sourceMappingURL=style.css.map */