body {
    font-family: 'PT Sans', sans-serif; 
    margin: 0;
    padding: 0;
    
}

 /* en-tête */

header {
  background-color: #2a5978;  
  color: white;
  text-align: center;
  text-transform: uppercase;
  border-bottom: 5px solid white;
  padding: 5px;
  /* height: 20%; */
}

h1 {
    font-family: 'Oswald', sans-serif;
    font-size: 350%;
    padding: 0.5rem;
}
h2 {
    font-size: 250%;
    padding-bottom: 1.5rem;
}



/* lien pour télécharger le cv*/
.pdf { 
   
    position:fixed;
    bottom : 30px;
    right: 50px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    border: 1px solid #2a5978;
    padding: 10px;
    border-radius: 10%;
    background-color: rgba(42, 89, 120, 0.6);
}
.pdf i {
    font-size: 1.5em;
}

i {
    margin-right: 6px;
}
.pdf a:hover {
    transition-duration: 0.5s;
    background-color: rgba(42, 89, 120, 0);;
    color: white;
    padding: 0; 
}

/* concerne la partie droite et gauche du cv*/

main { 
    display: flex;
    flex-direction: row;
    border-top: 5px solid #2a5978;
}

h3 {
    font-weight: bold;
    font-size: 1.2rem;
    text-transform: uppercase;
}

/* PARTIE GAUCHE DU CV */

.asavoir {
    background-color: rgb(223, 230, 235);
    width: 35%;
    max-width: 500px;
}


.position {
    position: sticky;
    top: 50px;
}

.photo {
    display: block;
    width: 50%;

    object-position: 50% 27%;
    max-width: 600px;
    aspect-ratio: 1 / 1; /* Rend le bloc carré */
     object-fit: cover;

    max-width: 600px;
    aspect-ratio: 1 / 1; /* Rend le bloc carré */
     /* object-fit: cover; */

       /* Remplit bien le cercle sans déformation */
    margin: -10em auto 0 auto;
    clip-path: circle(50% at 50% 50%);
    /* transform: translateY(10%); */
     /* décale vers le bas */
}

.cadre { /*bloc de sous-partie de la colone gauche*/
    margin: 3em 0 3em 3em;  
}


.contenu { /*texte de chaque sous-partie à gauche*/
    display: flex;
    flex-direction: column;
    margin: 1em 2.5em;
    line-height: 150%;  
}



a {
    color: black;
    text-decoration: none;
}
address {font-size: 0.9em;}

/* PARTIE DROITE DU CV */

.principal {
    padding: 6em 4em 0em 4em;
}

article {
    margin-bottom: 5%;
}

.parcours { /* sous-partie à droite*/
    margin: 1.5em 2em 2em 3em;
    line-height: 130%;
}

.resume {
    display: flex;
}

h4 { /*nom du poste */
    font-weight: bold;
    margin-bottom: 8px;
}

.competences {display: flex;}

.competences p { 
    line-height: 1.8;
    font-size:1.1em ;
}

.langs {
    margin-right: 10%;
}

.frise {
    width: 18%;
    line-height: 100%; 
    border-right: 2px solid #2a5978;
    font-style: italic;
    min-width: 100px;
}

h5 {  /*nom des entreprise/école de formation*/
    font-weight: bold;  
    text-transform: uppercase;
    font-size: 0.8em;
    font-style: normal;
}

.stage {
    text-transform:capitalize;
    font-weight: 100;
    font-style: italic;
}

.description {
    margin-left: 15px;
    padding-bottom: 5px;
}
.ecole { 
    margin-left: 14px;
    margin-top : -10px;
    font-size: 0.9em;
}
a:hover {
    transition-duration: 0.5s;
    background-color: rgba(42, 89, 120, 0.6);
    color: white;
    border-radius: 4px;
    padding: 5px;
}

.invisible {display: none;}

.mobile {display:none;}

/*responsive : en dessous de 1100px*/

@media screen and (max-width: 1100px) {
    .photo { display: none;}
}

/*responsive : en dessous de 768px*/

@media screen and (max-width: 768px) {
    header {
         position: sticky;
         top: 0;
         order: -1;
    }

    h1 {
          font-size: 250%;
          padding: 1.5rem;
    }

    h2 {font-size: 130%; }

    .disparait { display: none;}

    main { flex-direction: column;}

    .asavoir { 
        width: 100%; 
        max-width: 768px; 
    }

    .cadre {
        margin: 3em 0 3em 10px;
        width: 100%;
    }

    .principal {
        padding: 0 0 0 10px;
        background-color: #dfe6eb;
    }
    article {  margin: 3em 0; }

    .position { position: static;}

    .resume { flex-direction: column; }

    .frise {
        width: 90%;
        border-right: 0px;
        display: flex;
        border-bottom: 1px solid #2a5978;
    }
    h5 {
        margin-right: 15px;
        font-size: 1em;
    }

    .description {margin-top: 10px;}

    h3 {text-align: center;}

    .mobile {display:block;}

  }

