:root {
    --content-width: 31.5cm;         /* Largeur de chaque "page" */
    --content-height: 20cm;        /* Hauteur de chaque "page" */
    --horizontal-center:0; /* Marge horizontale pour centrer */
    --vertical-center: calc((29.7cm - 2 * var(--content-height)) / 2); /* Marge verticale pour centrer */
    --footer-bottom: 0.4cm;
    --footer-margin: 0.8cm;
}

@media print {
    @page {
        size: A4;
        /* Utilisez des valeurs fixes pour les marges */
        margin: 0;
    }

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

    div {
        margin: 0;
        padding: 0;
    }

  

    .footer{
        page-break-after: always;
    }
 
    body {
        margin: 0;
        padding: 0;
        background-color: white;
        page-break-after: always;

    }

    
    button{
        display: none;
    }

      
   #popup,   #popup1,    #popup2,   #popup3,   #popup4   #popup5,   #popup6 {
        display: none;
    }

    #popup,   #popup1,    #popup2,   #popup3,   #popup4   #popup5,   #popup6,#hidden-section, .roadmap {
        display: none;
    }




    .pages-wrapper {
        display: flex;
        flex-direction: column;
    }


    sup{
        color: rgb(216, 216, 216);
    }
    .page {
        top:2.2cm;
        width: 31.8cm; /* Largeur de chaque page */
        height: 20cm; /* Hauteur de chaque page */
        margin: auto;
        box-sizing: border-box;
      
        position: relative;
        padding-left: 1.5cm;
        padding-right: 7cm;
        padding-top:4cm;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        order: 0;
        padding-bottom: 1.5cm;

      
    }

    #page99,#page65,#page23,#page25,#page55,#page95,#page1,#page83,#page11,#page95 #pag83,#page93,#page91,#page97,#page67,#page33,#page35,#page5,#page15,#page5,#page13,#page3,#page9, #page7, #page17,#page19,#page29,#page27,#page21,#page25,#page29,#page31,#page33,#page47,#page45,#page37,#page41,#page39,#page43,#page49,#page61,#page51,#page59,#page53,#page57,#page55,#page59,#page63,#page77,#page69,#page79,#page71,#page75,#page73,#page79,#page81,#page93,#page85,#page91,#page87,#page89,#page87 #page83{
    page-break-after: always;
}
  

    .no-hyphens{
        hyphens: none;
    }

   
    #page8::before{
      display : none;
    }

    #page8::after{
        display : none;
    }

  
    /* Conteneur de contenu principal */
    .content {
        flex: 1;
        font-size: 34px;
        line-height: 1;
        overflow: hidden;
        left:0;
    }

    /* Cache les éléments non nécessaires pour l'impression */
    .notes-container, .img-container, #section1, #section2, #section3 {
        display: none;
    }

    /* Retire l'ombre dans section 4 pour l'impression */
    #section5 {
        box-shadow: none;
        margin: 0;
        left: 0;
        padding:0;
        counter-reset: page-counter;
    }
    #disableScriptPrintButton,#normalPrintButton{
        display: none;
     } 

 #section4{
    display: none;
 }
 #section4-bis{
    display: none;
 }
 #section4-bis-bis{
    display: none;
 }
 #section4-bibliographie{
    display: none;
 }
 #section1{
    display: none;
 }






    /* Conteneur de notes de bas de page */
    .notes {

        padding-top: 0.3cm;
        max-height: 5cm;
        overflow-y: auto;
        padding-left: 2.5cm;
        margin: 0.2cm 0;
        hyphens: none;
    }

    .ref-note{
        width: 50%;
        display: block;
        font-size: 13px;
        line-height: 1.3;
        font-family: "Karla-var";
        margin-top: 0.5cm;
        color: rgb(137, 137, 137);
        hyphens: none;

        text-align: left;
    }

    .ref-note-bis{
        width: 50%;
        display: block;
        font-size: 13px;
        line-height: 1.3;
        font-family: "Karla-var";
        margin-top: 0.5cm;

        hyphens: none;
        letter-spacing: 0.3px;
        text-align: left;
    }


.poids-texte{
 position: absolute;
  top:3cm; /* Fixé en haut de la fenêtre */
  width: 100%;
font-size: 165px;

  left: 0;
  transform-origin: top;
    font-family: "Redaction";
  white-space: pre-line;
  text-align: justify;
  margin-left: 5%;
  box-sizing: border-box;
  align-content: flex-end;
}


.machine-texte{
    position: absolute;
  top:7.9cm; /* Fixé en haut de la fenêtre */
  width: 100%;
font-size: 165px;

  left: 0;
  transform-origin: top;
  font-family: "Redaction";
  white-space: pre-line;
  text-align: justify;
  margin-left: 5%;
  box-sizing: border-box;
  align-content: flex-end;
}


.suzie{
    font-family: "Redaction";
    position: absolute;
  top:13.8cm; /* Fixé en haut de la fenêtre */
  width: 100%;
font-size: 55px;

  left: 0;
  transform-origin: top;
 
  white-space: pre-line;
  text-align: justify;
  margin-left: 5%;
  box-sizing: border-box;
  align-content: flex-end;
}



.tomek{
    position: absolute;
  top:16.6cm; /* Fixé en haut de la fenêtre */
  width: 100%;
  font-size: 24px;
  left: 0;
  transform-origin: top;
  font-family: "Redaction";
  white-space: pre-line;
  text-align: justify;
  box-sizing: border-box;
  align-content: flex-end;
  margin-left: 5%;

}

.dnsep{
  position: absolute;
    width: 40%;
    font-size: 24px;
    top: 15.8cm;
    left: 0;
    margin-left: 5%;
    font-family: "Redaction";
  letter-spacing: 1px;
    text-align: justify;
  }
  .esac{
    position: absolute;
    width: 100%;

    left: 0;
    margin-left: 5%;
    font-size: 16px;
    font-family: "Karla-it";
  letter-spacing: 0.2px;
    text-align: justify;

    top: 18cm;

  }



/* 

    #page1::before{
        display: none;
    }

    #page1::after{
        display: none;
    }


    #page2::before{
        display: none;
    }

    #page2::after{
        display: none;
    } */

    .page::before {
        content: "Chapitre 1 : La machine à écrire";
        position: absolute;
        left: 1.6cm;
        font-size: 16px;
        font-family: "Karla-it";
    }

    .page-chap2::before {
        content: "Chapitre 2 : La GameBoy";
        position: absolute;
       
        left: 1.6cm;
        font-size: 16px;
        font-family: "Karla-it";
    }
    
    .page-chap3::before {
        content: "Chapitre 3 : Labomédia";
        position: absolute;
       
        left: 1.6cm;
        font-size: 16px;
        font-family: "Karla-it";
    }

    .page-intro::before {
        content: "Introduction";
        position: absolute;
       
        left: 1.6cm;
        font-size: 16px;
        font-family: "Karla-it";
    }

    .page-conclu::before {
        content: "Conclusion";
        position: absolute;
       
        left: 1.6cm;
        font-size: 16px;
        font-family: "Karla-it";
    }


    .page-bibliographie::before {
        content: "Bibliographie";
        position: absolute;
       
        left: 1.6cm;
        font-size: 16px;
        font-family: "Karla-it";
    }
    
    .page-m::before {
display: none;
    }

      
    .page-m::after {
        display: none;
            }
    .panel-text{
        display: none;
    }
    
    .page-haut::before {
        top: 1.4cm;

    }


    .page-bas::before {
        bottom: 1.2cm;
    }

    .page-vierge-bas::before {
        bottom: 1.2cm;
    }



    .page-vierge-bas::after {
        bottom: 1.2cm;
    }

    #page1::before {
   display: none;
    }


    #page1::after {
    display: none;
    }

    /* Style pour la numérotation des pages */

    .page::after {
    
        content: attr(data-original-page); 
        position: absolute;
        font-size: 34px;
               font-family: "Karla-extra";
       right: 2cm;
        z-index: 1000; 
    }



    .page-bas::after {
        position: absolute;
        font-family: "Karla-extra";
        bottom: 0.9cm;

    }

    .page-haut{
        border-top: 1px solid rgb(0, 0, 0);
    }


    .page-bas{
        border-bottom: 1px solid rgb(0, 0, 0);
    }



    .no-pagination::before{
        display: none;
    }


    .no-pagination::after{
        display: none;
    }

    .page-haut::after {
        position: absolute;
        font-family: "Karla-extra";
        top: 1.2cm;
    }

    .footer{
        position: absolute;
        padding: 0.5cm;
        box-sizing: border-box;
        width: 43%;
        top: 2.4cm;
        left:24.2cm;
        padding-right:2cm;

    }

    .page-vierge::before{
    display: none;
    
    }


    .type2{
        width: 42%;
        column-width: 20em;
        column-gap: 80px; /* Espacement entre les colonnes */
        font-family: "Karla";
  

        top: -2cm;
        margin-left: 0;
        text-align:left;

      }

  .type{
    width: 94%;
    column-width: 20em;
    column-gap: 80px; /* Espacement entre les colonnes */
    font-family: "Karla";

    overflow: visible; 
    height: 9cm;
    text-align: left;
    margin: 0;


  }


  .type1{
    word-wrap: break-word; /* Permet de couper les mots trop longs */
    overflow-wrap: break-word; /* Assure la compatibilité entre navigateurs */
    width: 94%;
    column-width: 20em;
    column-gap: 80px; /* Espacement entre les colonnes */
    font-family: "Karla";

    overflow: visible; 
    height: 13cm;
    text-align: left;
    margin: 0;


  }



  .type3{
    width:94%;
    word-wrap: break-word; /* Permet de couper les mots trop longs */
    overflow-wrap: break-word; /* Assure la compatibilité entre navigateurs */
    column-width: 14em;
    column-gap: 90px; /* Espacement entre les colonnes */
    font-family: "Karla";
  
    overflow: visible; 
    height: 14cm;

    text-align: left;
    hyphens: auto;
   white-space: pre-wrap;
   margin-left: -12cm;


  }




  .type4{
    width:99%;
    word-wrap: break-word; /* Permet de couper les mots trop longs */
    overflow-wrap: break-word; /* Assure la compatibilité entre navigateurs */
    column-width: 29em;
    column-gap: 90px; /* Espacement entre les colonnes */
    font-family: "Karla";

    overflow: visible; 
    height: 14cm;
    text-align: left;
    hyphens: auto;
   margin-left: -24cm;
   display: flex;




}


.type5{
    width:100;
    word-wrap: break-word; /* Permet de couper les mots trop longs */
    overflow-wrap: break-word; /* Assure la compatibilité entre navigateurs */
    column-width: 31em;
    column-gap: 90px; /* Espacement entre les colonnes */
    font-family: "Karla";

    overflow: visible; 
    height: 14cm;
    text-align: left;
    hyphens: auto;
   margin-left: -12cm;
   display: flex;


  }


  .films{
    margin-left: -4.5cm;
    

  }

  .revues{
    margin-left: -5.5cm;
    width: 43%;
    
  }



#page10{
    position: relative;
    padding-bottom: 1.5cm;
}
#page14{
    position: relative;
    padding-bottom: 1.5cm;


}
#page15{
    position: relative;
    padding-bottom: 1.5cm;


}
#page16{
    position: relative;
    padding-bottom: 1.5cm;


}

#page17{
    position: relative;
    padding-bottom: 1.5cm;


}
#page19{
    position: relative;
    padding-bottom: 1.5cm;
}

#page20{
    position: relative;
    padding-bottom: 1.5cm;


}

#page22{
    position: relative;
    padding-bottom: 1.5cm;


}
#page24{
    position: relative;
    padding-bottom: 1.5cm;
}

#page26{
    position: relative;
    padding-bottom: 1.5cm;
}
#page28{
    position: relative;
    padding-bottom: 1.5cm;
}

#page30{
    position: relative;
    padding-bottom: 1.5cm;
}

#page31{
    position: relative;
    padding-bottom: 1.5cm;
}

#page36{
    position: relative;
    padding-bottom: 1.5cm;
}
#page37{
    position: relative;
    padding-bottom: 1.5cm;
}
#page38{
    position: relative;
    padding-bottom: 1.5cm;
}
#page41{
    position: relative;
    padding-bottom: 3cm;
}
#page44{
    position: relative;
    padding-bottom: 1.5cm;
}
#page47{
    position: relative;
    padding-bottom: 1.5cm;
}
#page50{
    position: relative;
    padding-bottom: 1.5cm;
}
#page52{
    position: relative;
    padding-bottom: 1.5cm;
}
#page60{
    position: relative;
    padding-bottom: 1.5cm;
}
#page64{
    position: relative;
    padding-bottom: 1.5cm;
}
#page67{
    position: relative;
    padding-bottom: 1.5cm;
}
#page70{
    position: relative;
    padding-bottom: 1.5cm;
}
#page71{
    position: relative;
    padding-bottom: 1.5cm;
}
#page73{
    position: relative;
    padding-bottom: 1.5cm;
}
#page74{
    position: relative;
    padding-bottom: 1.5cm;
}







#page76{
    position: relative;
    padding-bottom: 1.5cm;
}
#page77{
    position: relative;
    padding-bottom: 1.5cm;
}
#page84{
    position: relative;
    padding-bottom: 1.5cm;
}
#page83{
    position: relative;
    padding-bottom: 1.5cm;
}
#page85{
    position: relative;
    padding-bottom: 1.5cm;
}
#page79{
    position: relative;
    padding-bottom: 1.5cm;
}

#page59{
    position: relative;
    padding-bottom: 1.5cm;
}


  .merci{
    font-size: 65px;
    font-family: "Redaction";
    color: rgb(0, 0, 0);
    margin-top: -2cm;
    
  }

  .colophon{
    font-size: 65px;
    font-family: "Redaction";
    color: rgb(0, 0, 0);
    margin-bottom: 1cm;
    margin-top: -1.5cm;
    
    
  }


  .conception{
    font-size: 30px;
    color: rgb(0, 0, 0);
    margin-bottom: 1cm;
    margin-top: -0.2cm;
    
    
  }

  .colophon-bis{
    font-size: 30px;
    font-family: "Redaction";
    color: rgb(0, 0, 0);
    margin-bottom: 1cm;
    
  }

  ul{
    padding: 0;
    margin: 0;
    break-before: column;

  }

  .page-colophon::before{
    display: none;
  }

  .page-colophon::after{
    display: none;

  }


  li{
  
    list-style-type: none;
    margin-bottom: 1em;
    font-size: 17px;
font-family: "Karla";


 }
.remerci{
    margin: 0;
    font-size: 28px;
}

.page-merci::before{
    display: none;
}

.titre-bibli{
    font-size: 34px;
    break-before: column;
    margin-bottom: 0.5cm;
    font-family: "Redaction";
    margin-top: -1.5cm;
    width: 15%;
  }
    

  
  .titre-biblio{
    font-size: 34px;
    break-before: column;

    font-family: "Redaction";
    margin-top: -1.5cm;
  }
    
  .titre-biblio+{
    font-size: 34px;
    break-before: column;
    margin-bottom: 0.5cm;
    font-family: "Redaction";
    margin-top: -1.5cm;

  }
  ul{
    width: 100%;

    text-align: left;
    margin-left: -12cm;
  }

  .podcast{
break-inside: none;
  }

  .biblio{
    font-size: 34px;
    font-family: "Redaction";

  }

  a {
    color: #6a6a6a; /* Style des liens */
    text-decoration: none;
  }

    .ref{
        font-size:14px;

    }
    


    sup{
font-family: "Karla";
        line-height: inherit; /* Maintient la même hauteur de ligne que le parent */
        position: relative; /* Permet de repositionner manuellement */
        vertical-align: super; /* Aligne sur la ligne de base pour éviter d'affecter la hauteur */
        font-size: 0.8em;
        line-height: 0;
    }


  
    
   

    p{
        margin-top: -1cm;
        padding: 0;
        line-height: 1.4;
        font-size: 28px;
        font-family: "Karla";
        text-align: justify;
        word-break: break-word;
        -webkit-hyphens: auto;
        -moz-hyphens: auto;
        -ms-hyphens: auto;
        -o-hyphens: auto;
        hyphens: auto;
        

   
    }

    .interlettrage{
        letter-spacing: -0.62px;
    }


    .interlettrage-plus{
        letter-spacing: 0.8px;
    }



    .interlettrage-bis{
        letter-spacing: -0.4.8px;
    }


    .interlettrage-special{
        letter-spacing: -0.476px;
    }


    
    .interlettrage-bis-bis{
        letter-spacing: -0.2px;
    }

    .interlettrage-s{
        letter-spacing: -0.44px;
    }





    .livret{
        font-family: "Redaction";
        font-size: 26px;
    }

 

.image-ref{

    width: 30%;

}
.image-portrait{

    width: 20%;

}

.image3{
    width: 50%;
    margin-bottom: 0.5cm;
   
}
.image3-bis{
    width: 50%;
    margin-bottom: 0.5cm; 
}

.side-by-side{
    transform: rotate(90deg);
    justify-content: center;
    gap: 10px;
}

.side{


    display: flex;
    transform: rotate(90deg);
    gap: 10px; /* Espacement entre les images */
    margin-top: 100px; 

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

.side img {
    flex: 1; /* S'adapte pour que les images occupent la même largeur */
    max-width: calc(50% - 5px); /* Ajuste la taille pour deux images côte à côte */
    height: auto;
  }

.deuximages img {
    width: 35%; /* Prend toute la largeur disponible */
    height: auto;

   
  }
.deuximages{
  position: relative;
    transform: rotate(90deg);
    margin:auto;
    bottom: 0;

  
}

.pleinimage{
    transform: rotate(90deg);
    width: 100%;
    }

.pleinimage img{
width: 60%;
}


.pleinimage-bis{
    transform: rotate(90deg);
    width: 100%;
    justify-content: center;
    margin: auto;

    }

.pleinimage-bis img{
width: 50%;
}

.demiimage{
    transform: rotate(90deg);
    width: 100%;
    }

.demiimage img{
width: 45%;
}



.troisimages{
    transform: rotate(90deg);
    
    justify-content: center;
    margin: auto;
}


.troisimages-bis{
    transform: rotate(90deg);
    width: 80%;
    justify-content: center;
    margin: auto;
}


.image-grid {
    display: flex;
    margin: 0 auto;
    width: 100%; /* Ajuster selon vos besoins */
  }

  .page-full-image {
    width: 100vw; /* Largeur complète de la fenêtre d'impression */
    height: auto;
    display: flex;

    margin: 0;
    padding: 0;
    top: 0;

}


/* L'image elle-même */
.page-full-image img {
    width: 100%;
    height: auto;
    object-fit: cover; /* Remplit la page sans déformer l'image */
}




    .page2 ::before{
       display: none;
       content: none;
    }


     .page-image {
        top:2.2cm;
            width: 31.5cm; /* Largeur de chaque page */
            height: 20cm; /* Hauteur de chaque page */
            margin: auto;
            box-sizing: border-box;
            border: 1px solid rgb(255, 0, 0); /* Pour voir les limites des pages */
            position: relative;
            page-break-inside: avoid;
            padding-left: 1.5cm;
            padding-right: 7cm;
            padding-top:4cm;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            border: 2px solid rgba(0, 0, 0, 0.1);
            order: 0;
        }

  
        
        
 
}


 
  









