body {
    font-size: 0.9em;
}

#logo {
    padding: 9px 0 0;
    text-align: center;
    height: 50px;
    border-bottom: 1px solid #ccc;
}

#logo img {
    display: inline;
}

p.live {
    background-color: #87a628;
    color: #fff;
    font-size: 12px;
    padding: 10px;
}

blockquote.center {
    width: 600px;
    margin: 0 auto 30px;
}

.titre_smlarge {
    width: 250px;
    margin: 15px auto;
    border-top: 1px solid #87a628;
    border-bottom: 1px solid #87a628;
    letter-spacing: 2px;
    font-size: 17px;
    padding: 15px 0;
    text-align: center;
    color: #87a628;
}

h1.titre-session {
    color: #5091c2;
    font-size: 20px;
    line-height: 30px;
    font-weight: 100;
    margin: 0;
    /* letter-spacing: 4px; */
}

h3.titre-session {
    color: #2d5465;
    font-size: 12px;
    line-height: 14px;
    margin: 0;
}

p.titre-bloc {
    padding: 15px;
    background-color: #5091c2;
    width: 50%;
    margin: auto;
    color: #fff;
    font-size: 18px;
    line-height: 20px;
    text-align: center;
    letter-spacing: 2px;
    margin-bottom: 30px;
}

#compte {
    padding: 0 0px 0 60px;
    text-align: right;
}

#compte a {
    color: #ffffff;
    float: right;
    height: 50px;
    padding: 7px 60px;
}

#compte a:hover,
#compte a.active {
    background: #3e7dad;
}

#compte .icon-download,
#compte a .icon-user {
    color: #fff;
}

#compte a .flaticon-alarm-bell-outline,
#compte a .icon-user {
    font-size: 30px;
}

#compte a .flaticon-arrow-down-filled-triangle {
    font-size: 12px;
    margin-left: 10px;
    transition: all ease .5s;
}

#compte a .flaticon-arrow-down-filled-triangle.turn {
    display: inline-block;
    transform: rotate(-90deg);
}

#box_compte {
    display: none;
    width: 450px;
    background-color: #fff;
    padding: 30px;
    position: absolute;
    right: 0px;
    top: 50px;
    z-index: 100;
    box-shadow: 0px 5px 12px -2px #55555580;
    cursor: pointer;
    text-align: left;
    border-radius: 0 0 0 4px;
    border-bottom: 10px solid #5091c2;
}

#box_compte p,
.incoming h3 {
    border-bottom: 1px dashed #5091c2;
    color: #5091c2;
    margin-bottom: 15px;
    padding-bottom: 5px;
}

#box_compte.open {
    height: auto;
}

#box_compte ul li i {
    color: #2d5465;
    padding-right: 10px;
    font-size: 1.2em;
}

.contenu_etudiant {
    padding: 60px 30px;
}


/* --------- ACCORDÉEON pages plateforme V1 --------------  */

.show_hide~[id^="box"] {
    display: none;
}

.show_hide.active~[id^="box"] {
    display: block;
}


/* GRID */

.grid-container {
    height: 100%;
    margin: 0;
}

.grid-container * {
    position: relative;
}

.grid-sessions {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(9, 1fr);
    /* grid-template-areas: "session1 session2""session3 session4""session5 session6""sessionS7 session8""session9 session10""session11 session12""session13 session14""session15 session16""session17 session18"; */
    grid-column-gap: 30 px;
    grid-row-gap: 30 px;
}


/* .grid-v1 .cadre,
.tree>.cadre {
	position                 : relative;
	border-top               : 4px solid #5091c2;
	margin                   : 60px 15px 0;
	padding-top              : 60px;
	text-align               : center;
} */

.tree>.cdv {
    border-top: 4px solid #5091c2;
    background-color: #fff;
    margin: 60px 15px 0;
    padding: 60px 60px 30px;
}

.tree>.cdv figure {
    position: relative;
}

.tree>.cdv figure .bordPerdu {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    border: 5px solid #ffffff;
    box-shadow: 0px 10px 10px -7px #afb8eb70;
}

.tree>.cdv img {
    width: 100%;
    margin: auto;
}

.grid-sessions .cadre {
    position: relative;
    border-top: 35px solid #5091c2;
    margin: 60px 15px 0;
    padding-top: 30px 15px 0;
    text-align: center;
}

.grid-v1 .cadre {
    position: relative;
    border-top: 35px solid #5091c2;
    margin: 30px 15px 0;
    padding-top: 30px 15px 0;
    /* text-align: center; */
}

.grid-sessions .cadre h1 {
    position: absolute;
    width: 100%;
    top: -25px;
    height: 35px;
    font-size: 14px;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 100;
    color: #fff;
}

.grid-v1 .cadre h1 {
    position: absolute;
    width: 100%;
    top: -30px;
    left: 0;
    height: 35px;
    font-size: 14px;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 100;
    color: #fff;
}

.cadre a.cover {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    transition: all ease .3s;
    background-color: rgba(74, 145, 226, 0);
    color: #fff;
    text-align: center;
    font-size: 5px;
    letter-spacing: 2px;
}

.cadre a.cover span {
    text-transform: lowercase;
}

.cadre:hover a.cover {
    position: absolute;
    font-size: 16px;
    line-height: 1.6em;
    z-index: 5;
    top: 5px;
    left: 0;
    bottom: 0;
    right: 0;
    color: #5091c2;
    background-color: #fafafa;
    border-top: 5px solid #87a628;
    padding-top: 60px;
    border-bottom: 3px solid #5091c2;
}

.grid-sessions [class^="session"],
.grid-sessions [class*=" session"] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
    grid-column-gap: 15px;
}


/* end GRID */

.tree {
    max-width: 650px;
    margin: 60px auto 0;
}

.tree .cadre .table {
    margin: 0;
}

.tree .cadre hr {
    background-color: #87a628;
}

.cadre h2.titre {
    font-size: 16px;
    font-weight: 300;
    padding-top: 30px;
}

.tree .corps,
.grid-v1 .corp {
    font-size: 16px;
}

.agenda {
    color: #87a628;
    font-size: 12px;
}

.phone {
    text-align: center;
}

.phone i {
    color: #2d5465;
    font-size: 18px;
    padding-right: 10px;
}

.agenda::before {
    content: '';
    background-image: url(../../../img/svg/calendar.svg);
}

.tree .link,
.grid-v1 .link {
    position: absolute;
    top: 27px;
    right: 30px;
    color: #5091c2;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;
}

.tree .link a,
.grid-v1 .link a {
    color: #5091c2;
}

.tree .link a:hover,
.grid-v1 .link a:hover {
    text-decoration: underline;
}

.tree .link i {
    display: inline-block;
    vertical-align: middle;
}

.quizzListe li {
    background-color: #f5f5f5;
}

.quizzListe li a {
    display: block;
    padding: 10px;
    background: linear-gradient(to right, #eaeaea 0%, #fff 0%);
}

.bgListeQuizz span {
    float: right;
}

a.quizz-theme {
    position: relative;
    display: block;
    /* width: 150px; */
    margin: 15px auto;
    padding: 10px;
    border-radius: 4px;
    text-align: center;
    transition: box-shadow ease-in-out .3s, box-shadow ease-in-out .15s;
    -moz-box-shadow: 0px 9px 20px -12px rgba(0, 0, 0, 0.9);
    -webkit-box-shadow: 0px 9px 20px -12pxx rgba(0, 0, 0, 0.9);
    -o-box-shadow: 0px 9px 20px -12px rgba(0, 0, 0, 0.9);
    box-shadow: 0px 9px 20px -12px rgba(0, 0, 0, 0.9);
}

a.blue {
    background-color: #5091c2;
    color: #fff;
}

a.green {
    background-color: #87a628;
    color: #fff;
}

a.darkblue {
    background-color: #2d5465;
    color: #fff;
}

#quizz,
.flex {
    padding-top: 30px;
    display: flex;
    flex-wrap: wrap;
}

#specialisation {
    position: relative;
}

#specialisation .flex .cadre {
    width: 33%;
    /* Or whatever */
    padding: 65px 2%;
}

#conteneurflex {
    display: flex;
    justify-content: space-around;
}

#conteneurflex>div {
    padding: 15px;
    background-color: #fff;
}

a.quizz-theme:hover {
    -moz-box-shadow: 0px -2px 7px -5px #555555;
    -webkit-box-shadow: 0px -2px 7px -5px #555555;
    -o-box-shadow: 0px -2px 7px -5px #555555;
    box-shadow: 0px -2px 7px -5px #555555;
}

#quizz .titre-session {
    margin-top: 30px !important;
    margin-bottom: 0;
    font-size: 20px;
    text-transform: capitalize;
}

#quizz .sous.titre-session {
    font-size: 14px;
    margin: -20px auto 0 !important;
    text-align: center;
}

#quizz .sub-quizz,
#specialisation .cadre {
    position: relative;
    width: 185px;
    margin: 15px auto;
    border-top: 4px solid #5091c2;
}

.cadena {
    width: 45px;
    height: 45px;
    margin: 10px auto;
    padding: 5px 6px;
}

.cadre .rond,
.cdv .rond,
.doc .rond {
    position: absolute;
    z-index: 7;
    left: calc(50% - 37.5px);
    top: -30px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background-color: #fff;
    text-align: center;
    /* padding-top: 10px; */
    box-shadow: 0 2px 5px -3px #315366;
    border: 2px solid #5091c2;
}

.cadre .rond img.anamnese {
    padding-left: 18px;
    padding-top: 10px;
}

.cadre .rond i.icon-bar-chart-2,
.cadre .rond i.icon-book,
.cadre .rond i.icon-book-open,
.cadre .rond i.icon-bookmark,
.cadre .rond i.icon-ribbon,
.cadre .rond i.icon-activity,
.cadre .rond i.icon-mail,
.cadre .rond i.icon-image,
.cadre .rond i.icon-download {
    display: block;
    font-size: 38px;
    padding-top: 15px;
}

.cadre .rond i.icon-soins,
.cadre .rond i.icon-plantaire,
.cadre .rond i.icon-palmaire,
.cadre .rond i.icon-faciale,
.cadre .rond i.icon-psy,
.cadre .rond i.icon-sommeil,
.cadre .rond i.icon-medecin,
.cadre .rond i.icon-auriculaire,
.cadre .rond i.icon-video {
    display: block;
    font-size: 43px;
    padding-top: 12px;
}

.cadre .rond i.icon-palliatif {
    display: block;
    font-size: 50px;
    padding: 9px 10px 0 0;
}

.cadre .rond i.icon-dorsale {
    display: block;
    font-size: 55px;
    padding-top: 7px;
}

.cadre .rond i.icon-iconX4 {
    display: block;
    font-size: 50px;
    padding: 7px;
}

.cadre-sub {
    position: relative;
    padding-top: 60px;
}

.rond-2 {
    position: absolute;
    left: calc(50% - 30px);
    top: -7px;
    width: 60px;
    height: 60px;
    box-shadow: 0 2px 5px -3px #315366;
    border-radius: 50%;
    background-color: #fff;
    text-align: center;
    padding-top: 14px;
}

.rond-2 img {
    width: 28px;
    margin: auto;
}

.rond-2 i {
    font-size: 34px;
}

.rond-2 i.icon-iconX4 {
    font-size: 41px;
}

.suivi table a i.icon-download {
    position: absolute;
    left: 10px;
    color: #fff;
}

.suivi .cadre,
.doc,
.incoming {
    position: relative;
    border-top: 4px solid #5091c2;
    margin-top: 70px;
    margin-bottom: 0;
    padding: 60px 45px 15px;
}

.suivi figure {
    position: relative;
    border: 1px solid #ddd;
    margin-bottom: 65px;
    min-height: 360px;
}

.suivi figure img {
    margin: 0px auto;
    width: 100%;
}

figure a.btn_dl {
    position: absolute;
    bottom: -45px;
    right: 0px;
    height: 45px;
    padding: 10px;
    width: 130px;
    background-color: #5091c2;
    color: #fff;
}

figure a.btn_dl i {
    color: #fff;
}

.btndl.btm {
    position: absolute;
    transform: translateX(-50%);
    bottom: 15px;
    left: 50%;
}

.suivi>.titre>span {
    font-size: 16px;
    font-weight: 400;
    color: #2d5465;
}

.suivi h1,
.doc h1,
.cdv h1 {
    font-size: 28px;
    line-height: 30px;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 300;
    margin-bottom: 15px;
}

.suivi h2 {
    color: #5091c2;
    font-weight: 300;
    margin-bottom: 10px;
}

.suivi h3 {
    font-weight: 400;
    color: #87a628;
    margin-bottom: 10px;
}

.suivi h4 {
    font-size: 16px;
    color: #2d5465;
    margin-bottom: 10px;
}

.suivi .pr {
    padding-left: 23px;
}

.exemple {
    padding: 0px 15px 15px 30px;
}

.exemple h3 {
    background-color: #5091c2;
    color: #fff;
    padding: 10px;
    border-radius: 4px 4px 0 0;
    margin: 0 0 15px 0;
}

.exemple .quote {
    border-left: 2px solid #5091c2;
}

.exemple .quote li {
    padding-left: 10px;
    line-height: 1em;
    color: #5091c2;
    font-style: italic;
    ;
}

.attention {
    border-left: 4px solid #e78822;
    padding-left: 20px;
    margin-bottom: 30px;
}

ul.liste2 li {
    margin: 0;
    padding: 0;
}

ul.liste2 .blue_clair {
    font-weight: bold;
}

.suivi .pr li,
.suivi .liste1 li {
    line-height: 1.2em;
}

.suivi table {
    border-left: 4px solid #5091c2;
    margin-bottom: 15px;
}


/* .suivi table.dl tbody td {
    font-weight: 700;
    vertical-align: middle;
} */

.suivi table.simple {
    margin-top: 30px;
    border-left: none !important;
}

.suivi table td {
    vertical-align: top;
    padding: 15px;
    border-top: 1px solid #dee2e6;
}

.suivi table td:first-child {
    min-width: 70px;
    text-align: left;
}

.suivi .videos table td:first-child {
    width: 360px;
}

.rond .logo-img {
    padding-top: 11px;
    padding-left: 12px;
    fill: #5091c2;
}

ul.check li:before {
    position: absolute;
    left: 45px;
    font-family: icomoon;
    content: "\e604";
    color: #5091c2;
}

.incoming ul.section_incoming>li a {
    text-align: left;
    background-color: #f5f5f5;
    margin-bottom: 20px;
}

.incoming .contenu_incoming {
    /* border-left: 1px solid; */
    padding-left: 70px;
}

.incoming .titre_incoming {
    display: block;
    position: relative;
}

.incoming .titre_incoming::before {
    font-family: 'icomoon';
    content: "\e933";
    padding: 15px;
    font-size: 24px;
    display: inline-block;
    margin-right: 10px;
    border-right: 1px dotted;
    background-color: #5091c2;
    color: #fff;
}

.incoming .titre_incoming.nonlu::before {
    background-color: #e78822;
    ;
}

.incoming .titre_incoming span {
    position: absolute;
    right: 22px;
    top: 19px;
    font-size: 12px;
}

.contenu_incoming {
    display: none;
}

#questionForm .rond img.svg-rond,
#resultatQuizz .rond img.svg-rond {
    padding: 12px;
    width: 50px;
}

.question input {
    display: none;
}

#questionForm,
#resultatQuizz,
#bgVideo {
    width: 100%;
    position: fixed;
    overflow-y: scroll;
    display: none;
    z-index: 100;
    top: 0px;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #2d5465;
}

#questionForm .modal,
#resultatQuizz .modal {
    position: absolute;
    padding-top: 60px;
    width: 50vw;
    margin: 0;
    top: 10%;
    left: 50%;
    transform: translate(-50%, 0) !important;
}

#bgVideo .modal {
    position: absolute;
    padding-top: 60px;
    margin: 0;
    top: 10%;
    left: 50%;
    transform: translate(-50%, 0) !important;
}

#bgVideo .modal a.close {
    right: 0;
}

#bgVideo .modal a.close i {
    color: #fff;
}

#questionForm label {
    display: inline-block;
    border: 1px solid #5091c2;
    border-radius: 4px;
    padding: 10px 20px;
    margin: 10px 0 5px 0px;
    background-color: #fff;
    box-shadow: 0 4px 9px -5px #00000075;
    height: auto !important;
    font-weight: 400;
}

#questionForm label:hover,
#questionForm input[type=radio]:checked+label {
    background-color: #5091c2;
    color: #fff;
}

#questionForm h2 {
    font-size: 18px;
    line-height: 22px;
    font-weight: 300;
    position: relative;
}

#questionForm h2 span {
    display: block;
    position: absolute;
    left: 0px;
    font-weight: 700;
}

#questionForm fieldset {
    min-height: 355px;
}

.chiffre {
    font-size: 1.4em;
    text-align: center;
    margin: 0 30px 30px;
}

.chiffre span {
    font-weight: 900;
}

ol.score li span {
    float: right;
    color: #5091c2;
    ;
}

.document button {
    display: block;
    border: transparent;
    padding: 5px 10px;
    background-color: #fff;
    color: #5091c2;
    cursor: pointer;
}

form.cours_lnk {
    padding: 0;
}

button.iconBtn {
    border: transparent;
    position: relative;
    display: block;
    width: 130px;
    margin: auto;
    padding: 10px 10px 10px 35px;
    color: #ecf0f1;
    font-weight: 400;
    border-radius: 4px;
    background-color: #5091c2;
    border: transparent;
    transition: box-shadow ease-in-out .3s, box-shadow ease-in-out .15s;
    -moz-box-shadow: 0 9px 20px -12px rgba(0, 0, 0, .9);
    -webkit-box-shadow: 0 9px 20px -12pxx rgba(0, 0, 0, .9);
    -o-box-shadow: 0 9px 20px -12px rgba(0, 0, 0, .9);
    box-shadow: 0 9px 20px -12px rgba(0, 0, 0, .9);
    cursor: pointer;
}

button.iconBtn i {
    position: absolute;
    color: #fbfbfb;
    font-size: 16px;
    left: 15px;
}

ul.listeDL li a {
    display: inline-block;
    background-color: #fafafa;
    padding: 5px 10px;
    margin-bottom: 10px;
    border: 1px solid #5091c2;
    border-radius: 3px;
}