/**********************
	* CSS DOCUMENT FOR PRINTABLE VERSION
**********************/

h1, h2, h3, h4, p { padding: 0; margin: 0; }

body { background:#fff; color: #000; font-size: 12pt; line-height: 18pt; font-family: Helvetica, Arial, sans-serif; }
h1 { padding:15pt 0 33pt; font-size: 22pt; line-height: 33pt; font-weight: normal; font-family: Helvetica, Arial, sans-serif; color:#000; }
h2 { padding:5pt 0; font-size: 18pt; line-height: 27pt; font-weight: normal; font-family: Helvetica, Arial, sans-serif; color: #000; }
h3 { padding:5pt 0; font-size: 16pt; line-height: 24pt; font-weight: normal; font-family: Helvetica, Arial, sans-serif; color:#000; }
h4 { font-size: 12pt; line-height: 18pt; font-weight: normal; font-family: Helvetica, Arial, sans-serif; }

strong, b { font-weight:bold; font-family: Helvetica, Arial, sans-serif; }
a { color:#000; font-weight:normal; text-decoration:none; }
p { padding:0 0 5pt; }
table th { text-align: left; }
ul li { margin:0.5cm 0; padding: 0 0.25cm; list-style:disc; }
ol li { margin:0.5cm 0; padding: 0 0.25cm; list-style:decimal; }
/************************
	* HIDE ELEMENTS
************************/
#accesslinks, #blk-menu, #toggle-menu, .blk-lang, #go2top, #breadcrumbs, .blk-dataprivacy, .button { display: none; }
video { display: none; }
form { display:none; }

/***********************
	* STYLES
***********************/
body { text-align:center; }
p { margin: 27pt 0; text-align:justify; text-justify: auto; word-break: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; -ms-hyphens: auto; -o-hyphens: auto; hyphens: auto; break-inside: avoid; page-break-inside: avoid; }
img { display: block; width: 100%; height: auto; margin:0 auto; break-inside: avoid; page-break-inside: avoid; }
.wrapper { position: relative; margin: 0 auto; padding:0 1.5cm }
.inner { margin:0 auto; max-width: 18cm }
.text { text-align:left; }
.text table { width: 100%; }
.flex-grid { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; flex-flow: row wrap; -webkit-box-pack: start; justify-content: flex-start; align-items: flex-start; align-content:flex-start; gap:1cm; }
.flex-item { position: relative; width: 100%; flex-grow: 0; border-radius:1em; }
.text p::after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
footer { padding-top: 1.5cm; clear: both; }
footer .copyright { font-size: 8pt; line-height: 10pt; }

/*Special*/
img.sigle, #accesslinks, ul.blk-btns, div.statut, a.lnk-contreparties { display:none; }
a#logo { position: relative; display: block; margin: 0 auto; padding:.5cm 0; text-decoration:none; }
a#logo img { max-width:7cm }
.flex-grid.projects { margin: 2em auto; align-items: stretch; }
a.project { display: flex; flex-direction: column; border: 2px solid #000; border-radius: 1em; text-decoration: none; break-inside: avoid; page-break-inside: avoid; }
a.project img { margin:0; border-radius: 1em 1em 0 0; }
a.project .infos { position: relative; padding:.5cm .5cm 0 .5cm; font-size:12pt; line-height:15pt; text-align: left; flex-grow: 1; }
.blk-finance { padding:.5cm; font-size:12pt; }
.flex-grid.financialInfo { gap:0 .5cm }
.flex-grid.financialInfo .flex-item { width:auto; text-align:left; flex-grow:1 }
.flex-grid.financialInfo div.flex-item:nth-child(4) { text-align:right; }
div.graph { position:relative; width:100%; height:16px; box-sizing:border-box; }
div.graph div.total { width:100%; height:16px; background:#ccc; border-radius:8px; border:1px solid #000; box-sizing:border-box; }
div.graph div.received { position: absolute; top:0; left:0; width:0px; height:16px; background:#000; border-radius:8px; box-sizing:border-box; }
.ctn-projet .pretitle { margin:1.5cm 0 0; padding:.5cm; font-size:18pt; font-weight:normal; color:#000; text-transform: uppercase; letter-spacing: .2em; background-color:#ccc; text-align: center; }