@import url('typo.css');
:root
{
    --cl-font: #212529;
    --cl-gen: #f2f2f2;
    --cl-no1: #8cc0de;
    --cl-no2: #8fcec8;
    --cl-no3: #abd4ad;
    --cl-no4: #b9d376;
    --cl-no5: #a99fc9;
    --cl-no6: #90d4f6;
    --cl-no7: #f7d045;
    --cl-no8: #eba36e;
    --cl-no9: #f39db3;
}

.txt-t1{ color: var(--cl-no1); }
.txt-t2{ color: var(--cl-no2); }
.txt-t3{ color: var(--cl-no3); }
.txt-t4{ color: var(--cl-no4); }
.txt-t5{ color: var(--cl-no5); }
.txt-t6{ color: var(--cl-no6); }
.txt-t7{ color: var(--cl-no7); }
.txt-t8{ color: var(--cl-no8); }
.txt-t9{ color: var(--cl-no9); }

body, html{
    font-family: mulish, var(--bs-body-font-family), sans-serif;
    background-color: var(--cl-gen);
}

h1{
    font-weight: 900;
    text-transform: uppercase;
    font-size: 1.85rem;
}

a, a:hover, a:active, a:visited, a:focus, .nav-link{
    color: inherit;
    text-decoration: none;
}

a.cboxElement{
    display: block;
    position: relative;
}
span.zoom{
    position: absolute;
    z-index: 900;
    top: 10px;
    left: 10px;
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 12px;
    background: white url('../data/picto/picto-loupe.svg') center center no-repeat;
    background-size: 14px 14px;
    box-shadow: 0 3px 10px rgb(1,1,1,.25);
}

p{
    font-weight: 500;
}

a.sign{
    text-decoration: underline !important;
}

a.file:hover .img-thumbnail{
    border-color: var(--cl-font);
}

header{
    position: fixed;
    width: 1296px;
    z-index: 999;
    height: 120px;
}

.jumbo h1{
    font-size: 3rem;
    font-weight: 900;
    letter-spacing: 3px;
    line-height: 110%;
    text-transform: uppercase;
    margin-bottom: 2rem;
}
.jumbo p{
    font-weight: 600;
    font-size: 1.20rem;
}

.ratio-3x2{
    --bs-aspect-ratio: 66.66%;
}

#cboxClose{ top: 3px; }

#lnkEnseignement{
    display: block;
    position: fixed;
    top: 120px;
    right: 40px;
    transform-origin: top right;
    rotate: 270deg;
    height: 60px;
    background-color: var(--bs-gray-700);
    color: white;
    padding: .5rem 1.5rem;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    transition: right 500ms, background-color 500ms, padding-top 500ms;
}

#lnkEnseignement:hover{
    background-color: var(--bs-gray-900);
    right: 60px;
    transition: right 100ms, background-color 100ms, padding-top 100ms;

    padding-top: 1rem;
}

#layout-footer{
    margin-top: 25px;
    position: fixed;
    bottom: 0;
    left:0;
    right: 0;
    z-index:998;
}

#layout-footer .footer{
    background: transparent url(../data/picto/vague.svg) top left repeat-x;
    background-size: 380px 200px;
    padding: 45px 20px 5px 20px;
}
#main-menu{
    background-color: white;
    box-shadow: 0 10px 20px rgba(0,0,0,.25);
}
#main-menu a,
.footer .nav a
{
    color: var(--cl-font);
}
#main-menu .navbar-toggler{
    margin-right: 1rem;
}
#main-menu .navbar-brand{
    line-height: 120%;
    text-transform: uppercase;
    font-size: 1rem;
    font-weight: 600;
    margin-left: 20px;
    margin-right: 30px;
}
#main-menu .nav-pills .nav-link.active,
#main-menu .nav-pills .show > .nav-link{
    background-color: var(--cl-font);
    color: white;
    border-radius: 2rem;
}
#main-menu .nav-link{
    padding: .25rem 1rem;
}
#navbarSupportedContent{
    padding-right: 1rem;
}
#navbarSupportedContent > div{
    width: 100%;
}

#layout-content{
    padding-top: 120px;
    padding-bottom: 140px;
}

.col-g {
    flex: 0 0 auto;
    width: 200px;
}

.tuile{
    display: block;
    background-color: white;
    padding: 1rem;
    text-decoration: none;
    color: inherit;
}

.tuile .top{
    padding-bottom: 10px;
    margin-bottom: 30px;
    border-bottom: 1px solid var(--cl-font);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.tuile .title{
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 100%;
}
.tuile .top .no{
    font-weight: 900;
    font-size: 4rem;
    line-height: 100%;
}

.tuile .visual{
    display: block;
}

.tuile:hover .top .no{
    color: var(--cl-font) !important;
}

.tuile.theme-1:hover{   background-color: var(--cl-no1);}
.tuile.theme-2:hover{   background-color: var(--cl-no2);}
.tuile.theme-3:hover{   background-color: var(--cl-no3);}
.tuile.theme-4:hover{   background-color: var(--cl-no4);}
.tuile.theme-5:hover{   background-color: var(--cl-no5);}
.tuile.theme-6:hover{   background-color: var(--cl-no6);}
.tuile.theme-7:hover{   background-color: var(--cl-no7);}
.tuile.theme-8:hover{   background-color: var(--cl-no8);}
.tuile.theme-9:hover{   background-color: var(--cl-no9);}

.tuiles-themes .tuile .picto-bk{display: none;}
.tuiles-themes .tuile:hover .picto-bk{display: inline-block;}
.tuiles-themes .tuile:hover .picto-cl{display: none;}
.tuiles-themes .tuile .top{
    margin-bottom: 20px;
    align-items: end;
}
.tuiles-themes .tuile .top .no{
    padding-bottom: 20px;
}
.tuiles-themes .tuile .title{
    display: block;
    padding-bottom: 10px;
}

.tuiles-themes.tuiles-themes-home .tuile{
    background-color: transparent;
    padding:0;
}

.tuiles-themes.tuiles-themes-home .tuile .visual{
    text-align: right;
}
.tuiles-themes.tuiles-themes-home .tuile img{
    width: 150px;
    height: 150px;
}

html.theme #layout-content{
    padding-top: 0;
}

html.theme .no{
    display: flex;
    padding: 5px 12px;
    border-radius: 100px;
    background-color: white;
    font-size: 3rem;
    font-weight: 900;
    width: 100px;
    height: 100px;
    align-items: center;
    justify-content: center;
    margin-top: -10px;
}
html.theme h1{
    font-weight: 400;
    padding-top: 15px;
    margin-top: 1rem;
    margin-bottom: 2rem;
}
html.theme h2{
    color: white;
    font-weight: 900;
    font-size: 2.5rem;
    margin: 1rem 0 1rem 0;
}

html.theme h3{
    font-weight: 500;
    font-size: 1.5rem;
    margin: 1.5rem 0 1rem 0;
    text-transform: uppercase;
}
html.theme div.intro p{
    font-size: 1.25rem;
    font-weight: 600;
}
html.theme h3.fleuve{
    font-weight: 900;
    font-size: 1rem;
    text-transform: uppercase;
    margin: 1rem 0;
}
html.theme h3.fleuve > span{
    display: inline-block;
    background-color: white;
    padding: 5px 15px;
}

.box{
    background-color: var(--cl-gen);
    padding: 10px;
    margin-bottom: .5rem;
}
.box h5{
    text-transform: none;
    font-weight: 900;
    font-size: 1rem;
    border-bottom: 1px solid var(--cl-font);
    padding-bottom: .5rem;
    margin-bottom: .5rem;
}
.box h5.no-line{
    border-bottom: 0 none;
    padding-bottom: 0;
}
.box p{
    margin:.25rem 0;
    font-size: .85rem;
    font-weight: 500;
}
.box p.credit {
    font-size: .70rem;
    line-height: 125%;
}

.box.box-white{
    background-color: white;
}


html.theme #info-fixed{
    position: fixed;
    top: 120px;
    padding-left: 0;
    opacity: 0;
    transition: opacity 200ms;
}
html.theme #info-fixed.active{
    opacity: 1;
    transition: opacity 500ms;
}

html.theme #info-fixed .no{
    margin-left: 25px;
    width: 100px;
    height: 100px;
    font-size: 3rem;
    box-shadow: 0 2px 10px rgba(1,1,1,.15);
}

html.theme .neg
{
    padding-top: 120px;
}
html.theme .neg
{
    background-color: var(--cl-gen);
}

html.theme,
html.theme body,
html.theme .white
{
    background-color: white;
}

html.theme.theme-1 .neg     { background-color: var(--cl-no1); }
html.theme.theme-2 .neg     { background-color: var(--cl-no2); }
html.theme.theme-3 .neg     { background-color: var(--cl-no3); }
html.theme.theme-4 .neg     { background-color: var(--cl-no4); }
html.theme.theme-5 .neg     { background-color: var(--cl-no5); }
html.theme.theme-6 .neg     { background-color: var(--cl-no6); }
html.theme.theme-7 .neg     { background-color: var(--cl-no7); }
html.theme.theme-8 .neg     { background-color: var(--cl-no8); }
html.theme.theme-9 .neg     { background-color: var(--cl-no9); }

html.theme .neg{
    background: transparent url(../data/picto/vague.svg) 0 100% repeat-x;
    background-size: 380px 200px;
    padding-bottom: 220px;
    margin-bottom: -100px;
}

html.theme.theme-1 #layout-footer.cl .footer{ background-image: url(../data/picto/vague-1.svg);}
html.theme.theme-2 #layout-footer.cl .footer{ background-image: url(../data/picto/vague-2.svg);}
html.theme.theme-3 #layout-footer.cl .footer{ background-image: url(../data/picto/vague-3.svg);}
html.theme.theme-4 #layout-footer.cl .footer{ background-image: url(../data/picto/vague-4.svg);}
html.theme.theme-5 #layout-footer.cl .footer{ background-image: url(../data/picto/vague-5.svg);}
html.theme.theme-6 #layout-footer.cl .footer{ background-image: url(../data/picto/vague-6.svg);}
html.theme.theme-7 #layout-footer.cl .footer{ background-image: url(../data/picto/vague-7.svg);}
html.theme.theme-8 #layout-footer.cl .footer{ background-image: url(../data/picto/vague-8.svg);}
html.theme.theme-9 #layout-footer.cl .footer{ background-image: url(../data/picto/vague-9.svg);}



html.theme.theme-1 #themeWhiteContent h3.fleuve > span{ background-color: var(--cl-no1);}
html.theme.theme-2 #themeWhiteContent h3.fleuve > span{ background-color: var(--cl-no2);}
html.theme.theme-3 #themeWhiteContent h3.fleuve > span{ background-color: var(--cl-no3);}
html.theme.theme-4 #themeWhiteContent h3.fleuve > span{ background-color: var(--cl-no4);}
html.theme.theme-5 #themeWhiteContent h3.fleuve > span{ background-color: var(--cl-no5);}
html.theme.theme-6 #themeWhiteContent h3.fleuve > span{ background-color: var(--cl-no6);}
html.theme.theme-7 #themeWhiteContent h3.fleuve > span{ background-color: var(--cl-no7);}
html.theme.theme-8 #themeWhiteContent h3.fleuve > span{ background-color: var(--cl-no8);}
html.theme.theme-9 #themeWhiteContent h3.fleuve > span{ background-color: var(--cl-no9);}

.info-carte h5{
    border: 0 none;
    padding-bottom: 0;
    text-transform: uppercase;
    margin-bottom: 0;
    margin-top: 7px;
}

.info-carte .picto{
    width: 40px;
    height: 40px;
}

.info-carte .col-H{
    border-right: 1px solid var(--cl-font);
}
.info-carte .col:last-child {
    border: 0 none;
}

.info-carte .col-V{
    border-bottom: 1px solid var(--cl-font);
}
.info-carte .col-12:last-child {
    border: 0 none;
}

ul.themes{
    list-style-type: none;
    padding: 0;
    padding-left: 35px;
}

ul.themes li{
    clear: both;
    padding-top: 4px;
    line-height: 120%;

}
ul.themes li:hover .titre,
ul.themes li.active .titre
{
    background-color: var(--cl-font);
    color: white;
}
ul.themes li .titre{
    display: block;
    font-weight: 500;
    padding: 3px 5px;
}
ul.themes li .no{
    display: flex;
    background-color: var(--cl-font);
    color: white;
    float: left;
    width: 28px;
    height: 28px;
    border-radius: 14px;
    margin: 0px 7px 7px -35px;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}

ul.themes li.theme-1 .no{ background-color: var(--cl-no1); }
ul.themes li.theme-2 .no{ background-color: var(--cl-no2); }
ul.themes li.theme-3 .no{ background-color: var(--cl-no3); }
ul.themes li.theme-4 .no{ background-color: var(--cl-no4); }
ul.themes li.theme-5 .no{ background-color: var(--cl-no5); }
ul.themes li.theme-6 .no{ background-color: var(--cl-no6); }
ul.themes li.theme-7 .no{ background-color: var(--cl-no7); }
ul.themes li.theme-8 .no{ background-color: var(--cl-no8); }
ul.themes li.theme-9 .no{ background-color: var(--cl-no9); }


ul.themes li.theme-1:hover .titre, ul.themes li.theme-1.active .titre { background-color: var(--cl-no1); }
ul.themes li.theme-2:hover .titre, ul.themes li.theme-2.active .titre { background-color: var(--cl-no2); }
ul.themes li.theme-3:hover .titre, ul.themes li.theme-3.active .titre { background-color: var(--cl-no3); }
ul.themes li.theme-4:hover .titre, ul.themes li.theme-4.active .titre { background-color: var(--cl-no4); }
ul.themes li.theme-5:hover .titre, ul.themes li.theme-5.active .titre { background-color: var(--cl-no5); }
ul.themes li.theme-6:hover .titre, ul.themes li.theme-6.active .titre { background-color: var(--cl-no6); }
ul.themes li.theme-7:hover .titre, ul.themes li.theme-7.active .titre { background-color: var(--cl-no7); }
ul.themes li.theme-8:hover .titre, ul.themes li.theme-8.active .titre { background-color: var(--cl-no8); }
ul.themes li.theme-9:hover .titre, ul.themes li.theme-9.active .titre { background-color: var(--cl-no9); }

#carte-themes{
    position: relative;
}

#carte-themes .carte-theme {
    position: absolute;
    top:0;
    left:0;
    z-index: 10;
    display: none;
}
#carte-themes .carte-theme.active {
    display: block;
}

#carte-themes .go-theme {
    position: absolute;
    top:10px;
    right:10px;
    z-index: 20;
    background-color: black;
    color: white;
    font-weight: 800;
    padding: 4px 15px;
    border-radius: 7px;
    box-shadow: 0 5px 10px rgba(1,1,1,.5);
}


#carte-themes #carte-theme-1 .go-theme { background-color: var(--cl-no1) ;}
#carte-themes #carte-theme-2 .go-theme { background-color: var(--cl-no2) ;}
#carte-themes #carte-theme-3 .go-theme { background-color: var(--cl-no3) ;}
#carte-themes #carte-theme-4 .go-theme { background-color: var(--cl-no4) ;}
#carte-themes #carte-theme-5 .go-theme { background-color: var(--cl-no5) ;}
#carte-themes #carte-theme-6 .go-theme { background-color: var(--cl-no6) ;}
#carte-themes #carte-theme-7 .go-theme { background-color: var(--cl-no7) ;}
#carte-themes #carte-theme-8 .go-theme { background-color: var(--cl-no8) ;}
#carte-themes #carte-theme-9 .go-theme { background-color: var(--cl-no9) ;}

/* GLOSSARY */
#glossaire-content{ padding: 1rem 2rem;}
#glossaire-content h2{
    font-size: 2rem;
    font-weight: 900;
    border-bottom: 2px solid #777777;
    padding-bottom: .5rem;
    margin-bottom: .5rem;
    margin-top: 1rem;
    color:var(--cl-font) !important;
}

#glossaire-content h2:first-child{
    margin-top:0;
}

a.glossary{
    text-decoration: underline;
    text-decoration-style: dashed;
    font-weight: 700;
    cursor:help;
}

.glossaire-group
{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
}
.glossaire-group .item
{
    width: 25%;
}
.glossaire-group .item a
{
    display: block;
    padding: .5rem 1rem;
    margin-right: 1rem;
    margin-bottom: 1rem;
    background-color: white;
    border-radius: 7px;
    font-weight: 600;
}

.glossaire-group .item a:hover
{
    background-color: var(--cl-font);
    color: white;
}

html.theme.video div.footer{ display: none; }
html.theme.video #layout-content{
    padding-bottom: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

html.theme.video #layout-content #content{
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
}

html.theme.video.theme-1,
html.theme.video.theme-1 body
    { background-color: var(--cl-no1); }
html.theme.video.theme-2,
html.theme.video.theme-2 body
    { background-color: var(--cl-no2); }
html.theme.video.theme-3,
html.theme.video.theme-3  body
    { background-color: var(--cl-no3); }
html.theme.video.theme-4,
html.theme.video.theme-4 body
    { background-color: var(--cl-no4); }
html.theme.video.theme-5,
html.theme.video.theme-5 body
    { background-color: var(--cl-no5); }
html.theme.video.theme-6,
html.theme.video.theme-6 body
    { background-color: var(--cl-no6); }
html.theme.video.theme-7,
html.theme.video.theme-7 body
    { background-color: var(--cl-no7); }
html.theme.video.theme-8,
html.theme.video.theme-8 body
    { background-color: var(--cl-no8); }
html.theme.video.theme-9,
html.theme.video.theme-9 body
    { background-color: var(--cl-no9); }


.accordion-default .accordion-button:focus{
    border: 0 none;
    box-shadow: none;
}

.accordion-theme .accordion-button::after{
    background-image: none;
}
.accordion-theme .accordion-button:focus{
    border: 0 none;
    box-shadow: none;
}

.accordion-theme .visual{
    margin-right: 10px;
}
.accordion-theme .visual > img{
    width: 50px;
    height: 50px;
}

.accordion-theme .visual .picto-bk{
    display: none;
}

.accordion-theme .no{
    display: block;
    border-radius: 50px;
    background-color: black;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    margin-left: 10px;
    color: white;
    position: absolute;
    right: 2rem;
}

.accordion-theme .accordion-item.theme-1 .no    {background-color: var(--cl-no1);}
.accordion-theme .accordion-item.theme-2 .no    {background-color: var(--cl-no2);}
.accordion-theme .accordion-item.theme-3 .no    {background-color: var(--cl-no3);}
.accordion-theme .accordion-item.theme-4 .no    {background-color: var(--cl-no4);}
.accordion-theme .accordion-item.theme-5 .no    {background-color: var(--cl-no5);}
.accordion-theme .accordion-item.theme-6 .no    {background-color: var(--cl-no6);}
.accordion-theme .accordion-item.theme-7 .no    {background-color: var(--cl-no7);}
.accordion-theme .accordion-item.theme-8 .no    {background-color: var(--cl-no8);}
.accordion-theme .accordion-item.theme-9 .no    {background-color: var(--cl-no9);}


.accordion-theme .accordion-button{
    font-weight: 900;
    padding: .25rem 1.25rem;
}

.accordion-theme .accordion-item.theme-1 .accordion-button   {color: var(--cl-no1);}
.accordion-theme .accordion-item.theme-2 .accordion-button   {color: var(--cl-no2);}
.accordion-theme .accordion-item.theme-3 .accordion-button   {color: var(--cl-no3);}
.accordion-theme .accordion-item.theme-4 .accordion-button   {color: var(--cl-no4);}
.accordion-theme .accordion-item.theme-5 .accordion-button   {color: var(--cl-no5);}
.accordion-theme .accordion-item.theme-6 .accordion-button   {color: var(--cl-no6);}
.accordion-theme .accordion-item.theme-7 .accordion-button   {color: var(--cl-no7);}
.accordion-theme .accordion-item.theme-8 .accordion-button   {color: var(--cl-no8);}
.accordion-theme .accordion-item.theme-9 .accordion-button   {color: var(--cl-no9);}

.accordion-theme .accordion-button:not(.collapsed){
    color: black !important;
}
.accordion-theme .accordion-item.theme-1 .accordion-button:not(.collapsed)   {background-color: var(--cl-no1);}
.accordion-theme .accordion-item.theme-2 .accordion-button:not(.collapsed)   {background-color: var(--cl-no2);}
.accordion-theme .accordion-item.theme-3 .accordion-button:not(.collapsed)   {background-color: var(--cl-no3);}
.accordion-theme .accordion-item.theme-4 .accordion-button:not(.collapsed)   {background-color: var(--cl-no4);}
.accordion-theme .accordion-item.theme-5 .accordion-button:not(.collapsed)   {background-color: var(--cl-no5);}
.accordion-theme .accordion-item.theme-6 .accordion-button:not(.collapsed)   {background-color: var(--cl-no6);}
.accordion-theme .accordion-item.theme-7 .accordion-button:not(.collapsed)   {background-color: var(--cl-no7);}
.accordion-theme .accordion-item.theme-8 .accordion-button:not(.collapsed)   {background-color: var(--cl-no8);}
.accordion-theme .accordion-item.theme-9 .accordion-button:not(.collapsed)   {background-color: var(--cl-no9);}

.accordion-theme .accordion-item .accordion-button:not(.collapsed)  .visual .picto-bk{ display: block; }
.accordion-theme .accordion-item .accordion-button:not(.collapsed)  .visual .picto-cl{ display: none; }

.accordion-theme .accordion-button:not(.collapsed) .no{
    background-color: var(--cl-font);
    color: white;
}
/*
.accordion-theme .accordion-item.theme-1 .accordion-button:not(.collapsed) .no    {color: var(--cl-no1);}
.accordion-theme .accordion-item.theme-2 .accordion-button:not(.collapsed) .no    {color: var(--cl-no2);}
.accordion-theme .accordion-item.theme-3 .accordion-button:not(.collapsed) .no    {color: var(--cl-no3);}
.accordion-theme .accordion-item.theme-4 .accordion-button:not(.collapsed) .no    {color: var(--cl-no4);}
.accordion-theme .accordion-item.theme-5 .accordion-button:not(.collapsed) .no    {color: var(--cl-no5);}
.accordion-theme .accordion-item.theme-6 .accordion-button:not(.collapsed) .no    {color: var(--cl-no6);}
.accordion-theme .accordion-item.theme-7 .accordion-button:not(.collapsed) .no    {color: var(--cl-no7);}
.accordion-theme .accordion-item.theme-8 .accordion-button:not(.collapsed) .no    {color: var(--cl-no8);}
.accordion-theme .accordion-item.theme-9 .accordion-button:not(.collapsed) .no    {color: var(--cl-no9);}

 */