*{box-sizing:border-box}
 
/* Set body width to A4 width (in mm) */
body {width:210mm;margin:0 auto;font-family:sans-serif;font-size:0.8em}

/* Recreating header details */
#header{display:flex;justify-content:space-between;align-items: stretch;margin-bottom:1em}
#header h1{font-size:1.25em;
width: 100%;
margin:0 auto;
box-sizing: border-box;
}
.underline { text-decoration: underline;}
#hdMain {
  width: 70%;
}
#cible{width:40mm;padding:0 3mm 0 15mm;border:1px solid #000}
#cible p{display:flex;justify-content:space-between;margin:0.3em 0;font-size:0.8em}
#tot{font-size:3em}

esm_tag {
  white-space: pre-wrap;
}
.esm_corps_question {
  font-size: 1.3em;
}

.separateur_reponse {
  border-top: #333 1px dashed;
  background-color: rgba(244, 255, 255, 0.767);
}
#esm_title{
  margin:2em 0 0;padding:0.4em 0;text-align: center; border:1px solid #000;font-weight:bold;
  font-size:1.25em; #f0f
}

/* Page height is 1 mm less than standard A4 so we don't get extra blank page at end */
.page{width:210mm;height:296mm;padding:15mm;border:1px dashed #aaa;
  display: flex;
  flex-direction: column;}
.page > div{border-top:2px solid #000}
.page img{margin-right:1em}

/* For question text to be next to image */
.flex{display:flex}
.flex > p{width:50%}

/* For ../4 at end of each question header */
.page h2{display:flex;justify-content:space-between;font-size:1.2em;margin-bottom:0.5em}

footer {
  display:flex;
  margin-top: auto;
  justify-content: center;
  font-size: 0.8em;
  margin-bottom:0.5em;
}

/* Page break before each page DIV
   Don't print the instruction */ 
.dunPrint{border:2px solid #f0f;padding:0.3em}
@media print {
  .dunPrint{display:none}
  .page { page-break-before: always; border:none}
  .page:first-of-type {
    page-break-before: avoid;
  }
  /*footer { break-after: always; border:none}*/
}