/*
 * ROUGE                        #CA5353
 *
 * IMAGES RÉPUBLICAINE          #DD7B03
 * IMAGES DU MOYEN-ÂGE          #9C1827
 * IMAGES ANTIQUES              #C67954
 * IMAGES MODERNES              #DE3F31
 * IMAGES DANS TOUS L'UNIVERS   #800553
 * À L'ORIGINE                  #63312C
 */

body {
    font-family: "open_sans_custom";
    text-align: center;
    font-size: calc(10px + 0.3vw);
    background-color: #f9f2ec;
}

.ct-widget .ct-ignition__button--edit {
    background: #CA5353!important;
}
.ct-widget.ct-inspector {
    display: none!important;
}
.ct-widget.ct-toolbox {
    top: 86px!important;
    left: 16px!important;
}
.ct-widget .ct-toolbox__grip {
    display: none!important;
}
.ce-element {
    background: rgba(243,156,18,.1)!important;
}

.edition {
    position: fixed;
    bottom: 0px;
    left: 0px;
    right: 0px;
    width: 100%;
    color: white;
    padding: 7px;
    font-size: calc(10px + 0.3vw);
    background-color: #CA5353;
}

.card {
    text-align: left;
}

img {
    max-width: 100%;
}

p {
    font-size: calc(14px + 0.2vw)!important;
}

a, a:hover {
    text-decoration: none!important;
}

.headerIntro {
    background-color: #CA5353;
    color: white;
    width: 100%;
    padding: 7px;
    font-size: calc(10px + 0.3vw);
    margin-bottom: 20px;
    position: relative;
}

.buttonMenuSmall {
/*    background: rgba(0,0,0,0.2)!important;
    border-color: rgba(255,255,255,0.1)!important;*/
    background: transparent!important;
    border-color: transparent!important;
    left: 3px;
    top: 3px;
    bottom: 3px;
    position: absolute;
    height: calc(100% - 6px);
    width: 30px;
    cursor: pointer;
}
.menu-small {
    background-color: #CA5353;
    color: white!important;
    width: auto;
    display: inline-block;
    
    position: absolute;
    left: 0;
    top: 100%;
    z-index: 1;
    border: 1px solid rgba(255,255,255,0.5);
    border-top: 0;
    border-left: 0;
    text-align: left;
}
.menu-small#navbarToggler {
    background-color: #9a1727!important;
}

.menu-small#navbarToggler .nav-link {
    color: white!important;
}
.nav-link {
    color: white!important;
    padding: 5px 20px 5px 14px!important;
    text-transform: uppercase;
    font-weight: 300;
}
.nav-link:first-letter {
    text-transform: uppercase;
}
.nav-item:hover {
    /*background: white;*/
}
.nav-link:hover {
    color: #9A1827!important;
}

.logo {
    display: inline-block;
    margin: 25px auto 25px;
    /*margin-bottom: 30px;*/
}

.menuRow {
    display: flex;
    justify-content: space-around;
    /*align-items: flex-end;*/
    align-items: stretch;
    margin: 10px 0px 25px;
}
.menuElem {
    font-weight: bold;
    text-transform: uppercase;
    display: inline-block;
    margin: auto 5px;
    position: relative;
    min-width: 120px;
}
.menuElem:after, .menuElem:before {
    content: " ";
    position: absolute;
    bottom: -20px;
    display: block;
    width: 100%;
    min-width: 120px;
    margin: 5px auto;
    height: 10px;
    background: url(../images/separateurs/menu-1.png) no-repeat center center;
    background-size: 93px 3px;
}
.menuElem:before {
    bottom: auto;
    top: -20px;
    display: none;
}
.menuElem:hover:before, .menuElem:active:before, .menuElem.active:before {
    display: block;
}

.site {
    margin: 0px auto;
    padding: 0px 15px;
    max-width: 1200px;
}

.presentation {
    line-height: 1.3;
}

.page {
    display: block;
    margin-bottom: 20px;
    position: relative;
    text-transform: uppercase;
}
.hoverEffect {
    display: none;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}
.page:hover .hoverEffect {
    display: block;
}
.page.withHoverEffect:hover .pageTitre {
    background: none!important;
}
.pageChapitre {
    text-transform: none;
    line-height: 1.1;
    font-size: calc(9px + 0.3vw);
}
.pageImg {
    width: 100%;
}

.pageTitreSmall {
    font-weight: 300;
    color: white;
    padding: 5px;
    width: 100%;
    font-size: calc(12px + 0.6vw);
    margin: 0px;
}
.pageTitre {
    font-weight: 300;
    color: white;
    padding: 4px;
    position: absolute;
    top: calc(50% - 0.5em - 4px);
    width: 100%;
    font-size: calc(15px + 0.1vw);
}
.pageChapitre .pageTitre {
    bottom: 0px;
    top: auto;
    padding: 8px 4px;
    font-weight: normal;
    font-size: calc(12px + 0.1vw);
}
.pageTitreFull {
    margin: 0px;
    padding: 20px 30px;
    padding-right: 50px;
    font-size: calc(20px + 0.3vw);
    left: 30px;
    top: 20%;
    display: inline-block;
    width: auto;
    text-align: left;
    line-height: 1.4;
}

.separateur-small {
    max-width: 250px;
    margin-top: 25px;
    margin-bottom: 45px;
}

.footer {
    margin: 50px auto 10px;
    margin-top: calc(1vw - 20px);
}
.footer img {
    margin: 30px auto;
    display: block;
}
.footer a {
    color: black!important;
}

h1, h2, h3, h4 {
    margin-top: 40px;
    margin-bottom: 20px;
    font-size: calc(23px + 0.6vw);
}

h3 {
    font-size: calc(21px + 0.6vw);
}

h4 {
    font-size: calc(19px + 0.6vw);
}

h1.pageTitre {
    font-size: calc(15px + 0.8vw);
}

h2, h3, h4 {
    text-transform: uppercase;
    font-weight: bold;
}

.blocH2 {
    counter-reset: chapitre;
}

h2 {
    /*counter-reset: chapitre;*/
    position: relative;
    display: inline-block;
    min-width: 180px;
}

h2:after {
    content: " ";
    display: block;
    width: 100%;
    height: 30px;
    background: url(../images/separateurs/category-1.png) no-repeat center center;
    /*background-size: 180px;*/
}

h3:before {
    counter-increment: chapitre;
    /*content: counter(chapitre, upper-roman) " - ";*/
}

.rowImages {
    margin-top: 60px;
}

.modal-xl {
    padding: 0px 15px;
    max-width: 1200px;
}

[data-toggle="modal"] {
    cursor: pointer;
}

.imageMaxSize {
    display: inline-block;
    margin: 0px auto;
    max-width: 100%;
    width: 100%;
    height: calc(100vh - 58px);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}

.carousel-item {
    background-color: #efdcd6; //rgb(170,170,170);
}

.pageImgBg {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    /*background-size: contain;*/
    background-color: rgba(100,100,100,0.1);
}

.pageImgBg:hover {
    opacity: 0.6;
}

.addChapitreFirstLevel {
    position: fixed;
    left: 144px;
    top: 16px;
}

.addChapitreFirstLevel button {
    border-radius: 50%;
    font-size: 3em;
    padding: 0;
    width: 48px;
    height: 48px;
    line-height: 0;
    border: 0!important;
    font-weight: bold;
}

.addChapitreNextLevel button {
    opacity: 0.7;
    border-radius: 50%;
    font-size: 2.5em;
    line-height: 0;
    height: 40px;
    width: 40px;
    margin: 0;
    padding: 0;
    margin-top: -15px;
}

.addChapitreNextLevel button[data-level="3"] {
    background-color: black!important;
    margin-left: 15px;
}

.divAddChapitreNextLevel[data-titre="2"] {
    margin-top: -75px;
}

.divAddChapitreNextLevel[data-titre="3"] {
    margin-top: -47px;
}

#dropfile{
    width: 100%;
    height: calc(100vh - 250px);
    border: 3px dashed #BBBBBB;
    line-height: calc(100vh - 250px - 1em);
    text-align: center;
    margin-bottom: 15px;
    background-position: center center;
    background-size: cover;
}

.carousel-control-prev, .carousel-control-next {
    cursor: pointer;
}

.carousel-control-prev-icon, .carousel-control-next-icon {
    width: 60px;
    height: 60px;
}

.removeImageIcon {
    content: "";
    cursor: pointer;
    display: block;
    height: 30px;
    line-height: 30px;
    opacity: .9;
    position: absolute;
    text-align: center;
    font-family: icon;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    width: 30px;
    right: 0px;
    top: 0px;
    z-index: 1000;
}

.removeImageIcon:before {
    content: "\ea0f";
    color: #fff;
}

.thumbnailImageIcon {
    content: "";
    cursor: pointer;
    display: block;
    height: 30px;
    line-height: 30px;
    opacity: .9;
    position: absolute;
    text-align: center;
    font-family: icon;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    width: 30px;
    left: 0px;
    top: 0px;
    z-index: 1000;
}

.thumbnailImageIcon:before {
    content: "\e905";
    color: #fff;
}

#scrollUp {
    position: fixed;
    bottom : 80px;
    right: -100px;
    opacity: 0.5;
    cursor: pointer;
}

.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1030;
    background-color: #f9f2ec;
    padding-top: 15px;
    margin-bottom: 15px;
}
.sticky:before,
.sticky:after {
    content: '';
    display: table;
}
.stickyHidden .headerIntro {
    display: none!important;
}
.stickyHidden[stuck] .headerIntro {
    display: block!important;
}

.modal-content .carousel-caption h5 {
    font-size: 1rem;
    line-height: 1.2;
    margin-bottom: 2px;
    padding: 0px 5px;
}
.modal-content .carousel-caption p {
    font-size: calc(12px + 0.2vw)!important;
    font-style: italic;
    margin-bottom: 0px;
}

@media screen and (max-width: 640px) {
    .carousel-caption {
        left: 10px;
        right: 10px;
        bottom: 10px;
    }
}

button.close  {
    display: inline-block;
    position: absolute;
    top: -4px;
    right: 8px;
    z-index: 1000000;
    color: white;
    font-size: 5em;
    opacity: 0.9;
    text-shadow: 0px 0px 1px rgba(0,0,0,0.5);
}

.presentation i {
    font-weight: 100;
}