body {
}

@font-face {
  font-family: Mayenne;
  src: url(font/MayenneSansRegular.otf) format("opentype");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: movment;
  src: url(font/Movement_Webfonts/Movement-IndirectBlack.woff2) format("WOFF2");
  font-weight: bold;
  font-style: normal;
}

#hello{
    display: flex;
    margin-top: 50px;
}

/*TITRE*/

header img{
  width: 25%;
}

.title{margin-left: 5%;
width: 60%;}

.title img{
mix-blend-mode: difference;
  position: fixed;
  z-index: 1;
width: 15%;
}


.title h1 a:hover{
color: #FFFFFF;
  text-shadow: #001e75 1px 1px 1px, #001e75 -1px 1px 1px, #001e75 -1px -1px 1px,#001e75 1px -1px 1px;
  text-decoration: none;}

h2{font-family: 'Mayenne';
    font-weight: bold;
    font-style: normal;
    font-size: 200%;
    color: #001e75;}

  p#accroche{
margin-left: 5%;
margin-top: -20px;
  color:#001e75;
  font-size: 150%;
  font-family: 'Asap',sans-serif;font-style:italic;

  }

h1{font-family: Asap;
  font-size: 150%;
  margin-left: 5%;
  margin-top: 85px;
  color: #001e75;
font-style: italic;}

h1 a{
  text-decoration: none;
  font-style: italic;
color: #001e75;
}

/*menu*/

nav{
    width: 70%;
    background-color: white;
    position: sticky;
    top: 0px;
  font-family: 'Asap',sans-serif;
  mix-blend-mode: difference;
  z-index:2;
}

nav ul{
    list-style-type: none;
    float: right;
    position: fixed;
}

nav ul li{
    float: right;
    width: auto;
    text-align: center;
    position: relative;
    margin-top: -10px;
    padding-right: 70px;
}

nav ul::after{
    content: "";
    display: table;
    clear: both;
}

nav a{
    display: block;
    text-decoration: none;
    color: #001e75;;
    border-bottom: 2px solid transparent;
    padding: 10px 0 0 0;
  font-size: 130%;
}

nav a:hover{
    color: #001e75;
font-style: italic;
  
}

.sous{
    display: none;
    position: absolute;
    z-index: 1000;
    padding-left: 0;
  padding-top: 10px;
}
nav > ul li:hover .sous{
    display: block;
}
.sous li{
    float: none;
    width: 100%;
    text-align: left;
}
.sous a{
    padding-bottom: 10px;
    border-bottom: none;
}
.sous a:hover{
    border-bottom: none;
    background-color: RGBa(0,0,0,0);
}
.deroulant > a::after{
    font-size: 12px;
}

.conteneur{
  margin: 0px 20px;
  height: 1500px;
}


/*portrait*/
.portrait {
  width: 100%;
  position: fixed;
  margin-top: 10%;
}
.portrait > img {
  width: 20%;
  display: block;
  float: right;
  margin-right: 30%;
}

/*portrait affiché uniquement sur mobile (voir @media)*/
.portrait-mobile{
  display: none;
}


/*texte*/
aside {
  float: left;
  margin-left: 5%;
  margin-top: 2%;
}

#cv {
width: 40%;
  margin-left: 5%;
  margin-top: 5%;
}
.megaliste li{
  list-style: none;

}

p{ font-size: 23px;
  color: #001e75;
  font-family: 'Asap',sans-serif;
  Line-Height: 32px;
  width: 40%;
  margin-top: 10%;
}

h3{
  color: #001e75;
  font-family: 'Asap',sans-serif;
margin:0;padding:0;
}

li{
  font-size: 16px;
    color: #001e75;
    font-family: 'Asap',sans-serif;
}

#exposition, #articles, #publica{
  margin-top: 50px;
}

#mention, #mention p{
    margin-top: 50px;
    font-size: 13px;
    color: #001e75;
  font-family: 'Asap',sans-serif;
  line-height:15px;
  width: 100%;
}
/*contact*/

#contact {
  width: 100%;
  float: right;
  float: right;
    position: fixed;
}


#cont {
  float: right;
margin: 10%;}
#cont p {
  font-size: 20px;
  color: #001e75;
  font-family: 'Asap' ,sans-serif;
 }

#cont p a {
  color: #001e75;
  text-decoration: none;
}

  @media screen and (max-width: 1200px) {
    body {
    }

    @font-face {
      font-family: Mayenne;
      src: url(font/MayenneSansRegular.otf) format("opentype");
      font-weight: bold;
      font-style: normal;
    }

    @font-face {
      font-family: movment;
      src: url(font/Movement_Webfonts/Movement-IndirectBlack.woff2) format("WOFF2");
      font-weight: bold;
      font-style: normal;
    }

    #hello{
      margin-top: 0;
    }

    /*TITRE*/

    .title{margin-left: 0;}

    /*LOGO : même gestion que la page d'accueil (dans le flux de la page, au-dessus du contenu)*/
    :root{
      --logo-w: clamp(110px, 34vw, 190px);
      --logo-gap: 8px;   /* écart entre le logo et le texte (0 = collé) */
    }

    .title img{
      position: static;
      display: block;
      width: var(--logo-w);
      height: auto;
      margin: 16px 0 0 20px;     /* aligné avec le texte (20px) */
      mix-blend-mode: normal;
    }

    .title h1{
      font-family: 'Mayenne';
      font-weight: bold;
      font-style: normal;
      font-size: 100%;
      color: #001e75;
      mix-blend-mode: difference;
      position: fixed;
    z-index: 1;
    margin-top: -25px;
    }

    .title h1 a:hover{
    color: #FFFFFF;
      text-shadow: #001e75 1px 1px 1px, #001e75 -1px 1px 1px, #001e75 -1px -1px 1px,#001e75 1px -1px 1px;
      text-decoration: none;}

    h2{font-family: 'Mayenne';
        font-weight: bold;
        font-style: normal;
        font-size: 100%;
        color: #001e75;}

      p#accroche{
      color:#001e75;
      font-size: 100%;
      font-family: 'Asap',sans-serif;font-style:italic;
  margin-top: 0px;
      }

      #contact {
position: relative;
text-align: left;
      }


      #cont {
        float:left;
        margin:0;
        margin-top: 20px;
      }

      #cont p {
        font-size: 20px;
        color: #001e75;
        font-family: 'Asap' ,sans-serif;
            float:left;
            margin-top: -10px;
        }

        .portrait {
          display: none;
        }

  /*NAVIGATION MENU : barre fixe en bas, items sur une seule ligne*/
  nav{
    position: fixed;
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    background-color: #ffffff;
    mix-blend-mode: normal;
    z-index: 10;
    padding-bottom: env(safe-area-inset-bottom, 0px);
    box-shadow: 0 -1px 6px rgba(0,30,117,0.15);
  }

  nav > ul{
    position: static;
    float: none;
    display: flex;
    flex-direction: row-reverse;   /* même ordre visuel que sur desktop : projets / personnel / recherches / à propos */
    flex-wrap: nowrap;
    justify-content: space-around;
    align-items: center;
    width: 100%;
    margin: 0;
    padding: 0;
  }

  nav ul li{
    float: none;
    margin: 0;
    padding: 0;
    flex: 1 1 auto;
    text-align: center;
  }

  nav a{
    padding: 14px 4px;
    font-size: 100%;
    color: #001e75;
    white-space: nowrap;
  }

  /*sous-menu "projets" : s'ouvre vers le haut*/
  nav .sous{
    display: none;
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
    padding: 0;
    background-color: #ffffff;
    box-shadow: 0 -2px 8px rgba(0,30,117,0.15);
  }

  nav > ul li:hover .sous,
  nav > ul li:focus-within .sous{
    display: block;
  }

  nav .sous li{
    text-align: center;
  }

  nav .sous a{
    padding: 12px 20px;
  }

  /*évite que la barre cache le bas de la page*/
  body{
    padding-bottom: 60px;
  }

    /*TEXTE DE PRÉSENTATION : pleine largeur*/
    aside{
      float: none;
      width: auto;               /* occupe toute la largeur de l'écran */
      margin: var(--logo-gap) 20px 0;   /* écart réglable sous le logo ; marges gauche/droite identiques */
    }

    #txte{
      width: 100%;
    }

    #txte p {
      width: 100%;               /* annule le width:40% de la règle p globale */
      margin: 20px 0 0;          /* annule le margin-top:10% */
      font-size: clamp(17px, 4.8vw, 20px);
      line-height: 1.55;
      color: #001e75;
      font-family: 'Asap',sans-serif;
    }

    /*CONTACT : sous le texte de présentation, centré*/
    aside{
      display: flex;
      flex-direction: column;
    }

    #txte{ order: 1; }
    #contact{ order: 2; width: 100%; }
    #cv{ order: 4; }

    #cont{
      float: none;
      margin: 30px 0 0;
      text-align: center;
    }

    #cont p{
      float: none;
      width: 100%;
      margin: 0 0 8px;
      text-align: center;
    }

    /*CV : collaborations / fresques / expositions / publications*/
    #cv{
      width: 100%;               /* annule le width:40% du desktop */
      margin: 40px 0 0;          /* annule le margin-left:5% */
    }

    #cv h3{
      font-size: clamp(18px, 5vw, 21px);
      line-height: 1.3;
    }

    #cv ul{
      margin: 12px 0 0;
      padding: 0;                /* supprime le retrait de 40px par défaut des listes */
    }

    #cv li{
      font-size: clamp(15px, 4.2vw, 17px);
      line-height: 1.5;
      margin-bottom: 10px;       /* respiration entre chaque ligne */
    }

    #cv #collab{ margin-top: 0; }

    #cv #exposition,
    #cv #publica{
      margin-top: 40px;          /* au lieu de 50px */
    }

    #mention{
      margin-bottom: 20px;
    }

    /*PORTRAIT : après la partie contact*/
    .portrait-mobile{
      display: block;
      order: 3;
      margin: 30px 0 0;
    }

    .portrait-mobile img{
      display: block;
      width: 100%;
      max-width: 480px;
      height: auto;
      margin: 0 auto;            /* centré */
    }
  }