@page {
    size: A4;
    margin: 0;
    padding: 0.5cm;
}

/* colors: 
    dark purple 1: #485C9F
    dark purple 15: #6259E5
    light yellow 1: #FFDE70
    dark grey 3: #666F8E
*/

/* font */

body {
    font-family: arial;
    font-size: 11pt;
    color: #444D6C;
}

/* reset main block margins */

html, body, h1 {
    margin: 0;
    padding: 0;
}

h2, h3, p, ul {
    margin: 0.2cm 0.5cm;
    padding: 0;
}

/* header */
h1:before {
    content: ' ';
    display: block;
    background-image: url('./logo_HD_generique.png');
    background-repeat: no-repeat;
    background-position: top right;
    padding: 2cm 0;
    margin-bottom: 1cm;
}

/* footer */
body:after {
    content: 'contact@happy-dev.fr';
    display: block;
    text-align: center;
    color: rgb(253, 200, 21);
    background-color: #3d3c37;
    margin-top: 1cm;
    padding: 5pt;
}

/* titles */
h1 {
    color: #6259E5;
    text-align: center;
    margin-bottom: 1cm;
    font-size: 24pt;
}
h2 {
    display: table;
    color: #485C9F;
    background-color: #FFDE70;
    font-size: 18pt;
}
h3 {
    font-size: 16pt;
}
h2, h3 {
    margin-top: 20pt;
    margin-bottom: 10pt;
}
h3, h4 {
    color: #485C9F;
}
h4 {
    font-size: 12pt;
    margin-left: 1cm;
}

/* lists */

ul {
    margin: 15pt 1cm;
    line-height: 1.5;
}

li {
    margin: 0 0.5cm;
}

/* the first list item after the title goes right */
h1:first-of-type + ul:first-of-type {
    margin: 15pt 2.5cm;
    list-style-type: none;
    margin-bottom: 30pt;
}
h1:first-of-type + ul:first-of-type > li:first-of-type {
    float: right;
}

/* tables */

table {
    margin: 20pt auto;
    border-collapse: collapse;
}

/* align center except first column */
th, td {
    padding: 5pt;
    text-align: center;
}
th:first-of-type, td:first-of-type {
    text-align: left;
}

th {
    background-color: #FFDE70;
    border: 0.5pt solid black;
}

td {
    border: 0.5pt solid black;
}

/* images */
img {
    max-width: 80%;
    margin: 0 auto;
    display: block;
    float: none;
}

/* paragraph */
p {
    text-align: justify;
    line-height: 1.2;
}

/*** quote and code ***/
blockquote {
    border-left: 1pt solid #ccc;
    quotes: "\201C""\201D""\2018""\2019";
}

blockquote p {
    margin-left: 0.3cm;
}

pre {
    margin: 5pt 0.5cm;
}

code {
    background-color: #3d3c37;
    color: #fafafa;
    font-family: 'Liberation Mono', monospace;
    font-size: 10pt;
    border-radius: 3px;
    padding: 2pt;
}

pre code {
    display: block;
    padding: 5pt;
    white-space: pre-wrap;
    margin: 10pt 0;
}

/* page breaking */
table { page-break-inside:avoid; page-break-after:auto }
tr    { page-break-inside:avoid; page-break-after:auto }
td    { page-break-inside:avoid; page-break-after:auto }
thead { display:table-header-group }

/*** horizontal rule ***/
hr {
    width: 20%;
    height: 0;
    border: none;
    text-align: center;
    page-break-after: always;
}

