@page {
  size: 907.087pt 651.969pt;
  margin: 0;
}

body.afte-pdf-document {
  margin: 0;
  overflow: hidden;
  padding: 0;
}

.afte-pdf-document {
  background: transparent;
}

.afte-formation-sheet,
.afte-formation-sheet * {
  box-sizing: border-box;
}

.afte-formation-sheet {
  background: transparent;
  color: #202027;
  font-family: "Montserrat", Arial, sans-serif;
  overflow: hidden;
  padding: 24pt 31pt 17pt;
  position: relative;
  width: 100%;
}

body.afte-pdf-document .afte-formation-sheet {
  padding-bottom: 0;
}

.afte-formation-sheet a {
  color: inherit;
  text-decoration: none;
}

.afte-formation-sheet__divider {
  border-left: .5pt solid rgba(74, 142, 177, .13);
  bottom: 0;
  left: 46.5%;
  position: absolute;
  top: 0;
}

.afte-formation-sheet__topline {
  font-size: 8pt;
  font-weight: 700;
  height: 22pt;
  position: relative;
}

.afte-brand {
  left: 0;
  position: absolute;
  top: 0;
}

.afte-brand--right {
  left: auto;
  right: 62pt;
  text-align: right;
  width: 190pt;
}

.afte-brand span {
  color: #39b8cd;
  font-size: 13pt;
  letter-spacing: -.7pt;
}

.afte-formation-sheet__intro {
  height: 58pt;
  position: relative;
}

.afte-formation-sheet__intro h1 {
  color: #30348a;
  font-size: 19pt;
  font-weight: 700;
  left: 27pt;
  line-height: 1.05;
  margin: 0;
  position: absolute;
  top: 8pt;
}

.afte-formation-sheet__intro p {
  color: #30348a;
  font-size: 10pt;
  font-weight: 700;
  line-height: 1.25;
  margin: 0;
  position: absolute;
  right: 20pt;
  text-align: center;
  top: 6pt;
  width: 270pt;
}

.formation-matrix-wrap {
  position: relative;
  width: 92%;
}

.formation-matrix {
  border-collapse: collapse;
  height: 478pt;
  table-layout: fixed;
  width: 100%;
}

.formation-matrix__level-column {
  width: 3% !important;
}

.formation-matrix > thead > tr > th {
  background: #435bb4;
  border-left: 1pt solid #f4f0e5;
  color: #fff;
  font-size: 8.3pt;
  font-weight: 700;
  height: 29pt;
  line-height: 1.05;
  padding: 3pt 2pt;
  text-align: center;
  text-transform: uppercase;
  vertical-align: middle;
}

.formation-matrix > thead > tr > th a,
.formation-matrix__level a {
  color: inherit;
  display: block;
  text-decoration: none;
}

.formation-matrix > thead > tr > th a:hover,
.formation-matrix > thead > tr > th a:focus,
.formation-matrix__level a:hover,
.formation-matrix__level a:focus {
  color: #fff;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.formation-matrix > thead > tr > .formation-matrix__corner {
  background: transparent;
  border: 0;
  width: 3% !important;
}

.formation-matrix__row--fondamentaux {
  height: 176pt;
}

.formation-matrix__row--avance {
  height: 219pt;
}

.formation-matrix__row--expert {
  height: 54pt;
}

.formation-matrix__level {
  background: #435bb4;
  border-bottom: 1pt dotted #fff;
  color: #fff;
  font-size: 8.5pt;
  font-weight: 700;
  overflow: hidden;
  padding: 0;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  vertical-align: middle;
  width: 3% !important;
}

.formation-matrix__level span {
  display: block;
  line-height: 24pt;
  transform: rotate(-90deg);
  white-space: nowrap;
}

.formation-matrix__cell {
  background: #dfd5ae;
  border-bottom: 1pt dotted #435bb4;
  border-left: 1pt solid #f4f0e5;
  font-size: 4.6pt;
  line-height: 1.02;
  overflow: hidden;
  padding: 2.5pt 2.5pt 1pt;
  position: relative;
  vertical-align: top;
}

.formation-cell__regular {
  position: relative;
  z-index: 1;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-cell__stack {
  height: 173pt;
  position: relative;
}

.formation-matrix__row--fondamentaux .formation-cell__regular {
  height: 62pt;
  overflow: hidden;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux > th,
body.afte-pdf-document .formation-matrix__row--fondamentaux > td {
  height: 176pt;
}

body.afte-pdf-document .formation-matrix__row--avance > th,
body.afte-pdf-document .formation-matrix__row--avance > td {
  height: 219pt;
}

body.afte-pdf-document .formation-matrix__row--expert > th,
body.afte-pdf-document .formation-matrix__row--expert > td {
  height: 54pt;
}

.formation-cell__gold {
  position: relative;
  z-index: 2;
}

.formation-matrix__row--fondamentaux .formation-cell__gold {
  margin: 0 -2.5pt -1pt;
  padding: 0 2.5pt;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-cell__gold {
  /* Dompdf leaves a residual gap below absolutely positioned table content. */
  bottom: -4pt;
  left: -2.5pt;
  margin: 0;
  padding: 0 2.5pt;
  position: absolute;
  right: -2.5pt;
}

.formation-matrix__row--avance .formation-cell__gold {
  margin: -2.5pt -2.5pt 2.5pt;
  padding: 0 2.5pt;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-gold-block {
  min-height: 0;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-gold-block--start {
  padding-bottom: 0;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-cell__gold > .formation-gold-block:last-child,
body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-cell-lanes--gold td > .formation-gold-block:last-child {
  margin-bottom: 0;
}

.formation-matrix__row--avance .formation-gold-block {
  min-height: 66pt;
}

.formation-cell-lanes {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.formation-cell-lanes > tbody > tr > td {
  padding: 0 1.2pt;
  vertical-align: top;
  width: 50%;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-cell-lanes--gold > tbody > tr > td {
  vertical-align: bottom;
}

.formation-card {
  background: #fff;
  margin: 0 0 1.5pt;
  padding: 1.7pt 1.2pt;
  text-align: center;
}

.formation-card__heading {
  min-height: 7pt;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-cell__gold .formation-card__heading--pdf-lines-1 {
  height: 7pt;
  min-height: 7pt;
  overflow: hidden;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-cell__gold .formation-card__heading--pdf-lines-2 {
  height: 12pt;
  min-height: 12pt;
  overflow: hidden;
}

body.afte-pdf-document .formation-matrix__row--fondamentaux .formation-cell__gold .formation-card__heading--pdf-lines-3 {
  height: 21pt;
  min-height: 21pt;
  overflow: hidden;
}

.formation-card__duration {
  white-space: nowrap;
}

.formation-card__children {
  margin-top: 1.5pt;
}

.formation-gold-block__composite-columns {
  border-collapse: separate;
  border-spacing: 1.2pt 0;
  display: table;
  table-layout: fixed;
  width: 100%;
}

.formation-gold-block__columns-separator {
  font-size: 1pt;
  height: 4pt;
  line-height: 4pt;
  overflow: hidden;
}

.formation-gold-block__composite-columns > .formation-card--composite {
  display: table-cell;
  vertical-align: top;
  width: 50%;
}

.formation-gold-block__cards--columns > .formation-card:not(.formation-card--composite) {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 50%;
}

.formation-card__heading--continuation {
  height: 0;
  min-height: 0;
}

.formation-card--segment-start,
.formation-card--segment-middle {
  margin-bottom: 0;
}

body.afte-pdf-document .formation-card__continuation-fill {
  display: block;
  height: 4pt;
}

.formation-gold-block--end.formation-gold-block--has-split-cards .formation-gold-block__cards,
.formation-gold-block--middle.formation-gold-block--has-split-cards .formation-gold-block__cards {
  margin-top: -7.5pt;
}

body.afte-pdf-document .formation-matrix__row--avance .formation-gold-block--end.formation-gold-block--has-split-cards .formation-gold-block__cards,
body.afte-pdf-document .formation-matrix__row--avance .formation-gold-block--middle.formation-gold-block--has-split-cards .formation-gold-block__cards {
  margin-top: -12pt;
}

body.afte-pdf-document .formation-matrix__row--avance .formation-card--segment-end,
body.afte-pdf-document .formation-matrix__row--avance .formation-card--segment-middle {
  margin-top: -4pt;
}

body.afte-pdf-document .formation-matrix__row--avance .formation-gold-block--end .formation-gold-block__composite-columns,
body.afte-pdf-document .formation-matrix__row--avance .formation-gold-block--middle .formation-gold-block__composite-columns {
  margin-top: -2pt;
}

.formation-card--nested {
  border: .7pt dotted #6b6b6b;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1pt;
  max-width: 100%;
  padding: 1.5pt 1pt;
  width: 98%;
}

.formation-card--nested:last-child {
  margin-bottom: 0;
}

.formation-gold-block {
  background: #c9b989;
  margin: 0 0 0;
  padding: 2.5pt;
}

.formation-gold-block--start,
.formation-gold-block--middle {
  margin-bottom: 0;
}

.formation-gold-block__header {
  font-size: 5pt;
  font-weight: 700;
  line-height: 1.1;
  min-height: 13pt;
  padding: 0 0 2pt 15pt;
  position: relative;
  text-align: left;
  text-transform: uppercase;
}

.formation-gold-block__header--continuation {
  height: 0;
  min-height: 0;
  overflow: hidden;
  padding: 0;
}

.formation-icon {
  height: 13pt;
  vertical-align: middle;
  width: 13pt;
}

.formation-gold-block__header .formation-icon--certificate {
  height: 13pt;
  left: 0;
  position: absolute;
  top: 0;
  width: 13pt;
}

.formation-card__heading .formation-icon--essential {
  float: left;
  height: 7pt;
  margin: 0 2pt 0 0;
  width: 7pt;
}

.afte-formation-sheet__footer {
  background: transparent !important;
  color: #202027;
  font-size: 6.5pt;
  height: 34pt;
  padding: 5pt 4pt 0;
  position: relative;
}

.formation-legend {
  font-weight: 700;
}

.formation-legend > span {
  display: inline-block;
  margin-right: 17pt;
}

.formation-legend .formation-icon {
  margin-right: 3pt;
}
