/*GÉRNÉRAL*/
.page-content>.content-block {
    padding: 0 0 0rem!important;
}

.npp section {
margin-top:-25px;
}

h2.h2npp {
    font-size: 4em;
    line-height: 1em;
    margin: 0px;
    margin-bottom: 10px !important;
    margin-top: 25px !important;
    position: relative;
    z-index: 2;
    color: #48390E;
    text-transform: none;
}

h2.h2npp span {
    font-size: 0.8em;
    margin: 0px;
    line-height: 0.8em;
    color: #48390E;
}

h2.h2npp span.soustitre {
    font-weight: 400;
    display: block;
}

h3.h3npp {
    font-size: 3.2em;
    line-height: 1em;
    margin: 0px;
    margin-bottom: 10px !important;
    margin-top: 40px !important;
    position: relative;
    z-index: 2;
    color: #48390E;
    text-transform: none;
    font-family: "Gotham Cond A", "Gotham Cond B";
    font-weight: 600;
}

h3.h3npp span {
    font-size: 0.8em;
    margin: 0px;
    line-height: 0.9em;
    color: #48390E;
}

h3.h3npp span.soustitre {
    font-weight: 400;
    display: block;
}

.no-border{
  border:none!important;
}
.npp h2, .npp h3, .npp h4{
 color:#48390E!important;
}

 .npp p, .npp li {
 color:#000!important;
 }

.box-inside h3{
  line-height: normal;
  font-weight: 500!important;
  display: inline-block;
  margin-right: 20px;
  margin-bottom: 0;
}

/* Par défaut : mobile */
.img-desktop {
  display: none;
}

.img-mobile {
  display: block;
}

/* Écrans de plus de 728px */
@media screen and (min-width: 729px) {
  .img-desktop {
    display: block;
  }

  .img-mobile {
    display: none;
  }
}

section.npp h4 {
    margin-right: 50px !important;
}

.npp h3 {
    margin-top: 30px !important;
}




/* ------------ FICHES UNIVERSITÉS ----------- */
/* ----------------------- */
/* ----------------------- */
.zone-cpaauditeur{
    background: #E0DFFF;
    padding: 15px;
    border-radius: 15px;
}

.box-listecours{
    background: #F5F4F2;
    padding: 15px;
    border-radius: 15px;
}

.bt-ancres{
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background-color: #E6F2EC;
    color: #48390E !important;
    border: #C3DDD0 solid 1px;
    text-decoration: none !important;
    font-weight: bold;
    padding:10px;
}

.bt-ancres:hover{
    background-color: #C3DDD0;
}


.fiche-uni-saison{
display: flex;
width: 100%;
height: 60px;
padding: 10px 20px;
align-items: center;
border-radius: 10px 10px 0px 0px;
background:#C3DDD0;
color: #48390E;
font-size: 20px;
font-style: normal;
font-weight: 500;
line-height: 18px; /* 85.714% */
text-transform: uppercase;
}

.fiche-uni-equivalence{
display: flex;
width: 100%;
height: 40px;
padding: 10px 20px;
align-items: center;
background:#48390E;
color: var(--ffffff, #FFF);
font-size: 15px;
font-style: normal;
font-weight: 500;
line-height: 18px; /* 112.5% */
text-transform: uppercase;
position:relative;
}

.fiche-uni-cours{
width: 100%;
min-height: 50px;
padding: 10px 20px;
align-items: center;
background: #F5F4F2;
color: #000;
font-size: 14px;
font-style: normal;
font-weight: 325;
line-height: 16px;   
}

.fiche-uni-cours span{
font-weight: 500;
    display: block;
}

.fiche-uni-stage{
width: 100%;
height: 50px;
padding: 10px 20px;
align-items: center;
background: #FFC199;
color: #000;
font-size: 14px;
font-style: normal;
font-weight: 325;
line-height: 16px;   
}

.fiche-uni-stage span{
font-weight: 500;
    display: block;
}

.fiche-uni-examen{
display: flex;
width: 100%;
height: 40px;
padding: 10px 20px;
align-items: center;
background:#7D3834;
color: var(--ffffff, #FFF);
font-size: 15px;
font-style: normal;
font-weight: 500;
line-height: 18px; /* 112.5% */
text-transform: uppercase;
position:relative;
}

.fiche-uni-fin{
width: 100%;
height: 16px;
flex-shrink: 0;
border-radius: 0px 0px 10px 10px;
background: #F5F4F2;
margin-bottom:20px;
}

.fiche-uni-stage-fin{
width: 100%;
height: 16px;
flex-shrink: 0;
border-radius: 0px 0px 10px 10px;
background: #FFC199;
margin-bottom:20px;
}

.fiche-uni-separateur{
width: 100%;
height: 20px;
padding: 10px 10px;
background: #F0EEEB;
}


@media screen and (max-width: 768px) {
    .fiche-uni-cours{
    height:auto;
    }

    .fiche-uni-cours span{
    font-weight: 500;
    display: block;
    }

    .fiche-uni-stage{
    height:auto;
    }

    .fiche-uni-stage span{
    font-weight: 500;
    display: block;
    }

    .box-fin{
    width: 100%;
    height: 16px;
    flex-shrink: 0;
     border-radius: 0px 0px 10px 10px;
    background: #F5F5F5;
    margin-bottom:20px;
    }
}


/* ------------ Étiquette en-tête de page ------------ */
/* ----------------------- */
/* ----------------------- */
.etiquette-en-tete{
    padding: 10px;
    border-radius: 15px;
    display: inline-flex;
    border: 1px solid #CDCCFF !important;
    background-color: #CDCCFF !important;
}

.etiquette-titre{
    font-size: 1em;
    line-height: 0.8em;
    margin: 0px;
    position: relative;
    color: #48390E !important;
    text-decoration: none !important;
}

.etiquette-en-tete-old{
    padding: 10px;
    border-radius: 15px;
    display: inline-flex;
    border: 1px solid #45A5B2 !important;
    background-color: #45A5B2 !important;
}

.etiquette-titre-old{
    font-size: 1em;
    line-height: 0.8em;
    margin: 0px;
    position: relative;
    color: #FCFCFC !important;
    text-decoration: none !important;
}

/* ------------ Boîtes alerte ----------- */
/* ----------------------- */
/* ----------------------- */
.boite-miseengarde{
    padding: 20px;
    border-radius: 15px;
    display: inline-flex;
    width:100%;
}

.bordure-orange{
    border: 1px solid #FF663C !important;
}

.bordure-montagne{
    border: 1px solid #48390E !important;
}

.bordure-cobalt{
    border: 1px solid #2E39FF !important;
}

.bordure-tango{
    border: 1px solid #F572FF !important;
}

.bordure-vert{
    border: 1px solid #30BD73 !important;
}

.boite-miseengarde img{
    min-width:50px;
}

.miseengarde-texte{
width: 95% !important;
    display: inline-block;
    padding-left: 20px;
}


/* ------------ Page Stage ----------- */
/* ----------------------- */
/* ----------------------- */
.panel.info.encadre {
    background: #F5F5F5;
    margin-bottom: 20px !important;
    border: 1px solid #F5F5F5;
    border-radius: 8px;
    color: #48390E!important;
}

.panel.info.encadre-montagne {
    background: #FFFFFF;
    margin-bottom: 20px !important;
    border: 1px solid #48390E !important;
    border-radius: 8px;
    color: #48390E!important;
}

.panel.info.encadre-marbre {
    background: #EEEEED;
    margin-bottom: 20px !important;
    border: 1px solid #EEEEED !important;
    border-radius: 8px;
    color: #48390E!important;
}

.panel.info.encadre-bleu-fonce {
    background-color:#81C5C5;
    margin-bottom: 20px !important;
    border: 1px solid #81C5C5;
    border-radius: 8px;
    color: #FFF!important;
}

.panel.info.encadre-bleu-fonce p, .panel.info.encadre-bleu-fonce h2 {
    color:#EFF7F7!important;
}

.panel.info.encadre-bleu-pale {
    background-color:#C3DDD0!important;
    border:#C3DDD0 solid 1px;
    margin-bottom: 20px !important;
    border-radius: 8px;
    color: #48390E!important;
}
.panel.info.encadre-filet p {
    margin-bottom: 0!important;
}


.grid-container-2col-npp {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  width: 100%;
  padding: 0;
  align-items: start;
  align-content: space-evenly;
}

.grid-item .box-inside {
   min-height: 95px;
}

.grid-item .box-inside h4
{
   margin: 0px!important;
   color: #48390E;
}

.box-inside {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: #F5F5F5;
  /*border: #45A5B2  1px solid;*/
  border-radius: 15px;
  min-height: 75px;
  padding: 0 1rem !important;
  width: 100%;
  position: relative;
  color: #000 !important;
}

.npp.box-inside h2.section {
  font-size: 24px;
  line-height: normal;
  text-transform: none;
  font-weight: 400;
  margin-bottom: 0 !important;
  display: inline-block;
  list-style-image: none;
}

/* ------------ Accordéon ----------- */
/* ----------------------- */
/* ----------------------- */
details summary {
  width: 100%;
  padding: 1.5rem 0;
  border-top: 1px solid #48390E;
  position: relative;
  cursor: pointer;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between !important;
  font-size: 3rem;
  font-weight: normal;
  list-style: none;
  outline: 0;
  color:#000;
}

#first {
  border-top: 0;
}

details summary:after {
  content: "+";
  color: #48390E;
  position: absolute;
  font-size: 3rem;
  line-height: 0;
  margin-top: 0.75rem;
  right: -6px;
  font-weight: lighter;
  margin-top: 0rem;
  transform-origin: center;
  transition: 200ms linear;
}

details summary:before {
    content: "-";
    display: none;
  }

details[open] summary:after {
  transform: rotate(45deg);
  font-size: 3rem;
}

details[open] summary:before {
    display: none;
  }
details summary::-webkit-details-marker {
  display: none;
}

.grid-item {
  box-shadow: none !important;
  margin: 0 10px 10px 0;
  padding: 0;
}

.grid-item .box-inside {
   min-height: 95px;
}

.grid-item .box-inside h4
{
   margin: 0px!important;
   color:#48390E;
}


/* ------------ Tuiles ----------- */
/* ----------------------- */
/* ----------------------- */



.tuile-npp{
    display: flex;
    flex-direction: column;
    height: 100%;
}

h2.titre-tuile-npp{
    display: inline;
    text-transform: none;
    font-weight: 400;
    font-size: 2rem;
}

.grid-container {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 0px 5px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0px;
    }
    .grid-item {
    padding: 5px;
    }
    .grid-item.rowspan {
    grid-row-end: span 2;
    }
    .grid-item.colspan {
    grid-column-end: span 2;
    }
    .grid-item.colspan3 {
    grid-column-end: span 3;
    }
    .grid-item.colspan4 {
    grid-column-end: span 4;
    }
    .grid-item.colspan5 {
    grid-column-end: span 5;
    }
    .grid-item.colspan6 {
    grid-column-end: span 6;
    }
    .grid-item.colspan7 {
    grid-column-end: span 7;
    }
    .grid-item.colspan12 {
    grid-column-end: span 12;
    }
    .editable-content .grid-tdm h3 {
    color: #555555 !important;
    }

    /* ----------------------- */
    /* ----------------------- */
    .box-occasion{
    border-radius: 15px;
    background-color: #C3DDD0;
    position: relative;
    min-height:245px;
    padding: 20px;
    margin:5px;
    color:#48390E !important;
    }
    .box-occasion:hover{
    background-color: #A8CDBB;
    color:#48390E !important;
    }
    .box-occasion:hover h3, .box-occasion:hover a, .box-occasion:hover, .box-occasion:hover h2.titre-tuile{
    color:#48390E !important;
    }
    .box-occasion h3{
    font-size: 1.4em;
    line-height: 1;
    font-weight: 300;
    text-transform:uppercase;
    }
    .box-occasion h3 span{
    font-size: 1.4em;
    line-height: 1;
    font-weight: 600;
    display: block;
    }
    .box-occasion a{
    display:block;
    padding-top:10px;
    color:#48390E !important;
    }
    .grid-tdm h3 {
    font-family: "Gotham Cond A","Gotham Cond B"; line-height:1;
    color:#000 !important;
    }
    /* ----------------------- */
    @media (max-width: 1250px) {
    .box-occasion{
    min-height:155px;
    }
    ul.liste-2-colonne {
    columns: 1;
    -webkit-columns: 1;
    -moz-columns: 1;
    }
    .grid-container {
    grid-template-columns: 1fr;
    }
    .grid-container {
    grid-template-columns: 1fr;
    }
    .grid-item.colspan {
    grid-column-end: span 1;
    }
    .grid-item.colspan4 {
    grid-column-end: span 4;
    }
    }

/* ----------------------- */
/* ----------------------- */
/* ----------------------- */
/* ----------------------- */
/* ----------------------- */
/* ----------------------- */
/* ----------------------- */
/* ----------------------- */


.titre-page-dess{
font-size: 3.5em !important;
line-height: 0.8em;
color: #48390E;
}

.titre-page-dess span{
font-size: 0.9em;
line-height: 1em;
color: #48390E;
display:block;
}


.titre-section-dess{
font-size: 2.5rem !important;
line-height: 1;
color: #018640;
}

.titre-section-dess span{
display:block;
color: #8BBF3A;
}

.header-fiche-prog-uni{
    background-color:#E0DFFF; padding:20px; position: relative; min-height:200px; align-content: center;
}

.box-prealables{
    background-color:#45A5B2; padding:20px; position: relative; min-height:160px;
}


.titre-h3{
    color:#555555; font-size: 1.2em; line-height: 1.2em; margin-bottom:0px;
}

.titre-h2dark{
    text-transform: uppercase; color:#018640;  line-height: 0.8em; margin: 0px !important;
}

.titre-h2mid{
    text-transform: uppercase; color:#8BBF3A; line-height: 0.8em; margin: 0px !important;
}

.titre-h2light{
    text-transform: uppercase; color:#ADD6D5; line-height: 0.8em; margin: 0px !important;
}

.titre-h2white{
    text-transform: uppercase; color:#ffffff; line-height: 0.8em; margin: 0px !important;
}

.titre-represenants{
color:#49AD35;
}

.titre-represenants strong{
color:#8BBF3A;
}



.logo-listes{
    position:absolute; left:40px; top:30px; z-index: 2;
}

.text-listes{
    padding-left:40%;
    text-align: right;
position:relative;
z-index:3;
}

/*--- Box message - Encadré ---*/

.box {
  text-align: left; /* Optional: Centers the content horizontally */
}

.box1 {
  display: inline-block;
vertical-align: top;
min-width:74%;
}

.box2 {
  display: inline-block;
  width: 25%; /* Set a width to create space between the boxes */
}

.detail {
  display: flex;
  justify-content: space-between; /* Distributes space evenly between the boxes */
}

.box-detail {
  flex: 0 0 48%; /* Set a flex-basis to control the width */
text-align:left;
padding-bottom:15px;
}




/* GRID */

.grid-container-1col {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem 5px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0px;
  align-items: start;
}

.grid-container-2col {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(auto-fill, 1fr);
  gap: 1rem 5px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0px;
}



.grid-container-2col-C {
  display: grid;
  grid-template-columns: 20% 78%;
  padding: 20px;
  justify-items: center;
}







/* MEDIA QUERY */

@media (min-width: 769px) and (max-width: 1475px) {
   /* Styles for screens with a width between 768px and 1024px (inclusive) */
.corner img{
    width:75%;
}

.titre-h3{
max-width:80%
}

}

@media screen and (max-width: 768px) {
  
    .header-fiche-prog-uni{
        background-color:#E0DFFF; padding:0px; position: relative; min-height:auto; width:100% !important;
    }

    .text-header{
        max-width:100%;
        padding: 200px 20px 20px 20px;
    }

    .titre-h2dark{
    text-transform: uppercase; color:#45A5B2; margin: 0px !important;
    }

    .titre-h2mid{
        text-transform: uppercase; color:#81C5C5; margin: 0px !important;
    }

    .corner{
        width:100%;
        text-align: right;
    }

    .corner img{
        width:100%;
    }

    .logo-uni{
    text-align: right;
    width: 100%;
    right: 30px;
    top: 20px;
    }

.text-listes{
    padding-left:40%;
    text-align: right;
padding-top:120px;
}

.box1 {
  display: inline-block;
  width: 100%; /* Set a width to create space between the boxes */
}

.box2 {
  display: inline-block;
  width: 100%; /* Set a width to create space between the boxes */
}

.detail {
  display: block;
  justify-content: space-between; /* Distributes space evenly between the boxes */
}

.box-detail {
  flex: 0 0 48%; /* Set a flex-basis to control the width */
}

.box {
  text-align: center; /* Optional: Centers the content horizontally */
}

.miseengarde-texte{
width: 100%;
    display: inline-block;
    padding-left: 0px;
}

.grid-container-3col-npp,.grid-container-2col-npp {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    width: 100%;
    padding: 0;
    align-items: start;
    align-content: space-evenly;
  }

.grid-container-2col-C {
   display: grid;
   grid-template-columns: 1fr;
   padding: 0.8rem;
   justify-items: start;
   align-items: center;
}


}





/* ----------------------- */
/* ----------------------- */
/* ----------------------- */

.listing-top{
padding:10px; background-color:#45A5B2; color:#fff; line-height:1.2em;
}

.listing-title{
padding:10px; background-color:#ADD6D5; text-transform:uppercase; line-height:1em; margin-bottom:1px; margin-top:5px;
}

.listing-item{
padding:10px; background-color:#F5F5F5; line-height:1em; margin-bottom:1px;
}

.listing-item strong{
    color:#45A5B2;
    margin-bottom: 5px;
    display: inline-block;
    }
