@font-face {
    font-family: "Arboria-bold";
    src: url("./font/Arboria-bold.ttf") format("truetype");   
   }

   @font-face {
    font-family: "Montserrat-light";
    src: url("./font/Montserrat-Light.ttf") format("truetype");   
   }

   @font-face {
    font-family: "Montserrat-medium";
    src: url("./font/Montserrat-Medium.ttf") format("truetype");   
   }

   @font-face {
    font-family: "Montserrat-bold";
    src: url("./font/Montserrat-Bold.ttf") format("truetype");   
   }

h1 {
    font-family: Arboria-bold;
    font-size: 54px;
}
@media (min-width: 1600px) {
    .container {
        min-width : 1520px;
    }
}


p {
    font-family: Montserrat-Light;
    font-size: 19px;
    color: white;
}

body {
    background-color: #282828;
}

.section-hello {
    padding:5% 0;
}

.section-hello img {
    width: 100%;
    padding-right: 80px;
}

.bloc-presentation > p {
    font-size: 29px;
}

.bloc-presentation > h1 {
    margin-bottom: 15px;
    margin-left: 60px;
    
}

.bloc-presentation > h1:before {
 
    content : " ";
    border: 6px solid ;
    padding: 11px;
    position: absolute;
    margin-top: 20px;
    margin-left: -60px;
    border-color: #e50a43;
}



.bloc-presentation > .btn {
    margin-top: 25px;
}

#img_presentation {
    transition: 0.5s;
    background-image: url('../images/presentation_nb.jpg');
    background-repeat: no-repeat;
}

#img_presentation:hover {
    transition: 0.5s;
    background-image: url('../images/presentation_c.jpg');
}

.txt_white {
    color: white;
}

.txt_orange {
    color: #ffffff;
}

.title {
    width: 100%;
    height: 100vh;
    background-image:url("../../include/images/background.jpg") ;
    text-align: center;
    padding-top:38vh;
    background-size: 100% 100%;
}

.titre_page {
    margin: auto;
}

#logo_principal {
    margin-bottom: 30px;
    width: fit-content;
}

.section-presta .presta {
    text-align: center;
    padding: 75px 20px 15px 20px;
    margin: 0px 1%;
    width: 23%;
    box-shadow: 1px 1px 10px #282828;
}

.presta > img { 
    margin-bottom: 30px;
}

.section-presta {
    text-align: left;
    background: #373737; /* linear-gradient(128deg, rgba(238,116,44,1) 0%, rgba(237,175,8,1) 100%);*/
    padding: 8% 0 0% 0;
}

.section-presta h1 {
    margin-bottom: 50px;
    text-align: center;
    margin-right: 590px;
}

.section-presta h1:before {
 
    content : " ";
    border: 6px solid;
    padding: 11px;
    position: absolute;
    margin-top: 20px;
    margin-left: -60px;
    border-color: #10cfd1;
}

.btn {
    --borderWidth: 7px;
    background:linear-gradient(90deg, #e50a43, #d11082);
    position: relative;
    border-radius: var(--borderWidth);
    text-decoration: none;
    border-radius: 25px;
    padding: 10px 35px;
    font-size: 20px;
    font-family: Arboria-bold;
    color:white;

  
}

.btn:hover {
    text-decoration: none;
    background: #373737;
    color:white;
}


.btn:hover::after {
    content: '';
    position: absolute;
    top: calc(-1 * var(--borderWidth));
    left: calc(-1 * var(--borderWidth));
    height: calc(100% + var(--borderWidth) * 2);
    width: calc(100% + var(--borderWidth) * 2);
    background: linear-gradient(45deg, #ad0051, #d11082, #f03498, #b96bef,#10cfd1, #b96bef, #ff0097);
    border-radius: 50px;
    z-index: -1;
    animation: animatedgradient 3s ease alternate infinite;
    background-size: 300% 300%;
  }
  
  @keyframes animatedgradient {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

.scroll-downs {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    
    width :34px;
    height: 55px;
  }
  .mousey {
    width: 3px;
    padding: 10px 15px;
    height: 35px;
    border: 2px solid #fff;
    border-radius: 25px;
    opacity: 0.75;
    box-sizing: content-box;
    margin-top: 30vh;
  }
  .scroller {
    width: 8px;
    height: 8px;
    margin-left: -2px;
    border-radius: 100%;
    background-color: #fff;
    animation-name: scroll;
    animation-duration: 1.5s;
    animation-timing-function: cubic-bezier(.15,.41,.69,.94);
    animation-iteration-count: infinite;
  }
  @keyframes scroll {
    0% { opacity: 0; }
    10% { transform: translateY(0); opacity: 1; }
    100% { transform: translateY(15px); opacity: 0;}
  }

.section-portfolio {
    padding: 5% 0 5% 0;
}

.section_portfolio {
    display: flex;
    flex-wrap: wrap;
   
}

.section-portfolio h1 {
    margin-bottom: 70px;
    margin-left: 60px;
}


.section-portfolio h1:before {
    content : " ";
    border: 6px solid ;
    padding: 11px;
    position: absolute;
    margin: 20px;
    margin-left: -60px;
    border-color: #e50a43;
}

.section_portfolio > .btn {
    margin: auto;
    margin-top: 40px;
    padding-left: 80px;
    padding-right: 80px;
}

.pict {
    width: 33%;
    padding-top: 20.8%;
    background-position: center;
    background-size: 100%;
    border: 10px solid #282828;
}

.pict:hover{
    background-size: 110%;
    transition: 0.5s;
    cursor: pointer;
} 

.pict_1 {
    background-image: url('../images/portfolio/img_bloc_portfolio_1.jpg');
}

.pict_2 { 
    background-image: url('../images/portfolio/img_bloc_portfolio_2.jpg');
}

.pict_3 {
    background-image: url('../images/portfolio/img_bloc_portfolio_3.jpg'); 
}

.pict_4 {
    background-image: url('../images/portfolio/img_bloc_portfolio_4.jpg'); 
}

.pict_5 {
    background-image: url('../images/portfolio/img_bloc_portfolio_5.jpg'); 
}

.pict_6 {
    background-image: url('../images/portfolio/img_bloc_portfolio_6.jpg');
}

.pict_1:hover {
    background-image: url('../images/portfolio/img_bloc_portfolio_1_hover.jpg');
}

.pict_2:hover {
    background-image: url('../images/portfolio/img_bloc_portfolio_2_hover.jpg');
}

.pict_3:hover {
    background-image: url('../images/portfolio/img_bloc_portfolio_3_hover.jpg');
}

.pict_4:hover {
    background-image: url('../images/portfolio/img_bloc_portfolio_4_hover.jpg');
}

.pict_5:hover {
    background-image: url('../images/portfolio/img_bloc_portfolio_5_hover.jpg');
}

.pict_6:hover {
    background-image: url('../images/portfolio/img_bloc_portfolio_6_hover.jpg');
}

/*  ---------   Portfolio   ------------*/

.logo_3 {
    max-height: 330px;
}

.logo_5 {
    margin-top: -2% !important;
}

.portfolio {
    text-align: right;
    margin-bottom: 50px;
}

.top-bot-150 {
    margin-top: 150px;
    margin-bottom: 150px;
}

/*  ---------   FIN Portfolio   ------------*/



/*  --------- Footer -----------  */

.footer {
    width: 100%;
    height: 90vh;
    background-image:url("../../include/images/footer.jpg") ;
    text-align: center;
    padding-top:24vh;
    background-size: 100% 100%;
}


#logo_footer {
    margin-top: 14vh;
    width: fit-content;
}

.contact > a{
    margin-left: 6vw;
    margin-right: 5vw;
}   

.contact img {
    width: 9%;
}


.mention_legales {
    text-align: center;
    font-size: 20px;
    margin-top: 20px;
    margin-bottom: 20px;
    font-family: Montserrat-bold;
}


.mention_legales > a {
    text-decoration: none;

}

.mention_legales h2 {
    font-size: 19px;
}

.mention_legales  h2:hover {
    color: #10cfd1;
}

/* ---- Pages articles -----*/

.titre_articles {
 
    width: 100%;
    height: 50vh;
  
    text-align: center;
    padding-top:10vh;
    
    
}

.page_portfolio {
    margin-top:55px;
}


#logo_header {
    position: absolute; 
    top: 65px;
    left: 80px;
    z-index: 1;
}   

.page_portfolio img {
    width: 100%;
    margin-bottom: 15px;
}

/* ----- Fin pages articles ----- */


/* ------- Page Portfolio ------- */

.txt_titre_portfolio {
    color: #E40A46;
}

.logo_page_portfolio {
    margin: auto;
    width: auto;
    max-width: 60%;
}

.title_portfolio {
  
    letter-spacing: 3.3px;
    font-size: 80px;
    font-family: Arboria-bold;
}

.sub_title_portfolio {
    font-size: 20px;
    font-family: Montserrat-medium;
}
.portfolio > .row {
    --bs-gutter-x: 0rem !important;
}


.img_row_portfolio {
     background-color:#38383b ;
    width: 100%;
    overflow: hidden;
}

.img_row_portfolio > a > div {
width: 100%;
    padding-top: 90%;
    background-size: 100%;
    background-position: center;
    border: 20px solid  #282828;
}

.btn_retour {
    padding-left: 80px; 
    padding-right: 80px; 
    margin-top: 40px;
    margin-right: -10px;
}

.btn_retour:hover {
    padding-left: 80px; 
    padding-right: 80px; 
}

.btn_retour_m {
    padding-left: 80px; 
    padding-right: 80px; 
    margin-top: 40px;
    margin-right: 20px;
}

.btn_retour_m:hover {
    padding-left: 80px; 
    padding-right: 80px; 
}

.img_row_portfolio > a > div:hover {
    background-size: 110%;
 
    opacity: 0.9;
    transition: 0.5s;
}

.fnac_bandeau  {
    height: 270px;
}

.txt-right {
    text-align: right;
    padding-right: 20px;
    margin-bottom: 40px;
}

.top-100 {
    margin-top: 100px;
}

/* ------ Fin page portfolio ------ */


/* -- ILLUSTRATION -- */



.illustration {
    margin-bottom: 50px;
    text-align: right;
}

.img_row_illustration {
 
    width: 100%;
    overflow: hidden;
    background-color:#38383b ;
}

.img_row_illustration div {
width: 100%;
    padding-top: 90%;
    background-size: 100%;
    background-position: center;
    border: 20px solid #282828;
}


.img_row_illustration div:hover {
    background-size: 110%;
 
    opacity: 0.9;
    transition: 0.5s;
}


.illustration > div > div {
    --bs-gutter-x: 0rem !important;
}


.img_modal_illu {
    max-width: 50vw;
    max-height: 70vh;
    top: 10%;
    margin: auto;
  
}

.modal-backdrop.show {
    opacity: 0.7;
}

/* -- FIN Illustration -- */



/*  MENU  */

#menuToggle
{
  display: block;
  position: relative;
  top: 60px;
  left: 20px;
  
  z-index: 1;
  
  -webkit-user-select: none;
  user-select: none;
}

#menuToggle a
{
  text-decoration: none;
  color: #ffffff;
  
  transition: color 0.3s ease;
}



#menuToggle input
{
  display: block;
  width: 40px;
  height: 32px;
  position: absolute;
  top: -7px;
  left: -5px;
  
  cursor: pointer;
  
  opacity: 0; /* hide this */
  z-index: 4; /* and place it over the hamburger */
  
  -webkit-touch-callout: none;
}

/*
 * Just a quick hamburger
 */
#menuToggle span
{
    display: block;
    width: 40px;
    height: 4px;
    margin-bottom: 5px;
    position: relative;
    
    background: #ffffff;
    border-radius: 3px;
    
    z-index: 3;
    
    transform-origin: 4px 0px;
    
    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
                background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
                opacity 0.55s ease;

    box-shadow: 0px 0px 5px #e40b44;            
}

#menuToggle span:first-child
{
  transform-origin: 0% 0%;
}

#menuToggle span:nth-last-child(2)
{
  transform-origin: 0% 100%;
}

/* 
 * Transform all the slices of hamburger
 * into a crossmark.
 */
#menuToggle input:checked ~ span
{
  opacity: 1;
  transform: rotate(45deg) translate(-5px, 3px);
  background: #e40b44;
}

/*
 * But let's hide the middle one.
 */
#menuToggle input:checked ~ span:nth-last-child(3)
{
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}

/*
 * Ohyeah and the last one should go the other direction
 */
#menuToggle input:checked ~ span:nth-last-child(2)
{
  transform: rotate(-45deg) translate(-7px, -1px);
}

/*
 * Make this absolute positioned
 * at the top left of the screen
 */
#menu
{
  position: absolute;
  width: 100vw;
  top: -60px;
  right: -80px;
  height: 100vh;
  margin: 0 0 0 -100vw;
  padding: 50px;
  padding-top: 20vh;
  z-index: 2;
  background: #282828;
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  /* to stop flickering of text in safari */
  
  transform-origin: 0% 0%;
  transform: translate(100vw, 0);
  
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
}

#menu li
{
    padding: 3vh 0;
    margin-left: 15vw;
    width: fit-content;
    font-size: 40px;
    font-family: Arboria-bold;
}

/*
 * And let's slide it in from the left
 */
#menuToggle input:checked ~ ul
{
  transform: none;
}

#nav_menu {
    position: fixed;
    z-index: 2;
    right: 100px;
}

#menu .nav_link {
    padding-left: 25px;
}

#menu .nav_link:hover
{
    
    padding-right: 110vw;
    border-radius: 35px; 
    color: white;
    background: linear-gradient(128deg, rgba(228,11,68,1) 0%, rgba(28,196,201,1) 70%);
    transition: padding 0.5s linear;
}

/* FIN MENU */


/* PAGE CONTACT  */

.head_global {
    background-image:url("../../include/images/header_global.jpg") ;
    width: 100%;
    height: 60vh;
    text-align: left;
    margin-bottom: 10vh;
    background-size: 100% 100%;
    display:flex;
}

img { 
    width: 100%;
}


.title_contact {
    letter-spacing: 3.3px;
    font-size: 80px;
    font-family: Arboria-bold;
}

.sub_title_contact {
    font-size: 20px;
    font-family: Montserrat-medium;
}

.page_contact input {
    width: 100%;
    margin:15px;
    background-color: #282828;
    padding: 10px;
    font-size: 19px;
    border-radius: 15px;
    color:#db0d63;
    border-width: 3px;
    border-style: inset;
    border-color: #6a6a6a;
}

.page_contact textarea {
    width: 100%;
    margin:15px;
    background-color: #282828;
    padding: 10px;
    font-size: 19px;
    border-radius: 15px;
    color:#db0d63;
    border-width: 3px;
    border-style: inset;
    border-color: #6a6a6a;
}

.btn_envoyer {
    padding: 10px 100px;
    margin-top: 15px;;
    margin-left: 15px;
    margin-bottom: 150px;
}

.cv {
    margin-top: 90px;
    padding: 20px 40px;
    width: fit-content;
    border-radius: 10px;
    box-shadow: 0px 0px 30px 9px rgb(26 26 26 / 75%);
}

/* FIN CONTACT */

/* Inté lisa */

.contain_cards { 
    width: 1000px;
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-wrap:wrap;
    margin: auto;
}

.contain_cards .card_home{
    position: relative;
  }
  
  .contain_cards .card_home .face{
    width:200px;
    height: 250px;
    transition:0.4s;
    
  }
  
  .contain_cards .card_home .face.face1{     /*ZONE GRISE DESSUS*/
    position: relative;
    background: #333;
    display: flex;
    justify-content: center;
    align-content:center;
    align-items: center;
    z-index: 1;
    transform: translateY(30px);
  }
  
  
  
  .contain_cards .card_home:hover .face.face1{     /*MOOVE VERS LE HAUT DE GRIS + GLOW */
    transform: translateY(-20px);
    background: linear-gradient(45deg, #ad0051, #d11082, #e643aa, #f03498, #b96bef, #4590e6, #23a6d5, #23d2d5);
    animation: animatedgradient 4s infinite reverse both running;
    background-size: 400% 400%;
    
     
  }
  
  
  .contain_cards .card_home .face.face1 .content{
    opacity: .2;
    transition:  0.5s;
    text-align: center;
   
  
  }
  
  .contain_cards .card_home:hover .face.face1 .content{  /*OPACITÉ DU PICTO À L'HOVER*/
    opacity: 1;
   }
  
  
  
  .contain_cards .card_home .face.face1 .content i{    /*DESIGN DES PICTOS*/
    font-size: 3em;
    color: white;
    display: inline-block;
     
  }
  
  .contain_cards .card_home .face.face1 .content h3{
    font-size: 1em;
    color: white;
    text-align: center;
    
  
  }
  
  
  .contain_cards .card_home .face.face2{     /*CARTES BLANCHES*/
     position: relative;
     background: whitesmoke;
     display: flex;
     align-items: center;
     justify-content: center;
     padding: 20px;
    box-sizing: border-box;
    box-shadow: 0 8px 20px rgba(0,0,0,.5);
    transform: translateY(-220px);
  }
  
  .contain_cards .card_home:hover .face.face2{   /*MOOVE CARTES BLANCHES*/
      transform: translateY(-140px);
  
  
  }
  
  .contain_cards .card_home .face.face2 .content p{
    font-size: 10pt;
    margin-top: 140px ;
    padding: 0;
    color:#333;
    opacity: 0;
  }

  .contain_cards .card_home:hover .face.face2 .content p{
    opacity: 1;
}

/* FIN inté lisa */