*{
    font-family:'Public Sans', sans-serif;
}
body{
    /*hauteur du menu */
    margin-top: 64px;
}
.hide{
    display : none;
}
/* 
##################################################################################################################
##
Header
*/
header {
    position: fixed;
    top: 0;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    width: 100%;
    background-color: #3c3c3c;
}
#logo img {
    height: 50px;
    margin: 8px;
}

div#mega-menu-wrap-menu_principal,
div#mega-menu-wrap-menu_search_lang,
div#mega-menu-wrap-menu_reso
{
    background-color: transparent;
}
div#mega-menu-wrap-menu_principal {
    flex: 2;
}
div#mega-menu-wrap-menu_search_lang {
    flex: 1;
}

.searchform input#s {
    background-color: #fff;
    border: solid 1px grey;
}
.searchform div {
    display: block;
    width: 131px;
}
.searchform label {
    display: none;
}
.searchform #searchsubmit {
    display: none;
}

@media screen and (max-width: 1150px) {
    
    /* hide menu rezo */
    #mega-menu-wrap-menu_reso {
        display: none;
    }
    
    /* alig à droite */
    div#mega-menu-wrap-menu_search_lang {
        flex: unset;
    }
    
}

@media screen and (max-width: 590px) {

    #mega-menu-wrap-menu_search_lang #mega-menu-menu_search_lang > li.mega-menu-item > a.mega-menu-link {
        padding: 0px 4px;
        font-size: 80%;
    }
    
}

/* 
##################################################################################################################
##
Home
*/

.diapo {
    position: relative;
    overflow: hidden;
    /* height: 42vh; */
    /* min-height : 370px; */
    height: 500px;
}
.diapo img {
    width: 100%;
    object-fit: cover;
    height: 100%;
}
.diapo .diapoTxtHome {
    position: absolute;
    top: 50%;
    left: 7px;
    transform: translate(0, -50%);
    color: #fff;
    margin: 0;
    padding: 20px;
    letter-spacing: 1px;
    text-shadow: 0px 0 12px #000;
    /*background: rgb(0 0 0 / 22%);*/
    /* background: radial-gradient(circle, rgba(0,0,0,0.4962359943977591) 0%, rgba(0,0,0,0.10407913165266103) 35%, rgba(0,0,0,0) 100%); */
    border-radius: 17px;
}
.diapoFiltre {
    position: absolute;
    background: rgb(0 0 0 / 22%);
    top: 0;
    width: 100%;
    height: 100%;
}
.diapoCat {
    font-size: 100%;
    text-transform: uppercase;
    font-weight: bold;
}
.diapoTitre {
    display: block;
    font-size: 200%;
}
.diapoSousTitre {
    font-size: 130%;
    color: #ffffffad;
}
.slick-dots {
    bottom: 15px;
}
.slick-next, .slick-prev {
    right: 0;
    z-index: -1;
}
.slick-dotted.slick-slider {
    margin-bottom: 0;
}
.slick-dots li button:before {
    font-size: 12px;
}

/* section 2 */
.homeSection2 {
    text-align: center;
    color: #d62027;
    text-transform: uppercase;
    font-size: 140%;
    padding: 43px 0;
    background-color: #efefef;
}
.homeSection2 p {
    margin-bottom: 22px;
}
.homeSection2 div {
    display: flex;
    justify-content: space-around;
}

.homeSection2 img {
    width: 110px;
}

/* New progs */
.newProgHome {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 70px auto;
    max-width: 1200px;
}
.newProgHome > div {
    width: 21%;
    margin: 0 2%;
    margin-bottom: 43px;
}
html body .newProgHome .descNewProgHome {
    width: 46%;
}

.programmCat img {
    height: auto;
}
.descNewProgHome span {
    display: block;
    color: #d62027;
    text-transform: uppercase;
    font-size: 240%;
    font-weight: bold;
}

/* Home Cat */
#contHomeCat {
    background-color: #d62027;
    padding: 40px;
}
#contHomeCat p {
    color: #fff;
    text-decoration: none;
    font-size: 120%;
    text-transform: uppercase;
    text-align: center;
    font-weight: bold;
}
#homeCat ul {
    list-style: none;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
}
#homeCat ul li {
    width: 33%;
    text-align: center;
    padding: 10px 3px;
}
#homeCat ul li a {
    color: #fff;
    text-decoration: none;
    font-size: 120%;
    border: solid 2px transparent;
    padding: 5px 9px;
    
    transition : border-color 1s;
}
#homeCat ul li a:hover {
    border-color: #fff;
}

/* 
##################################################################################################################
##
Search / Taxo / Term  program
*/

.bandeauCat {
    position: relative;
    overflow: hidden;
    /*height: 48vh;*/
    height: 42vh;
}
.bandeauCat img {
    width: 100%;
    object-fit: cover;
    height: 100%;
}

.bandeauCat h1 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-transform: uppercase;
    font-size: 60px;
    margin: 0;
    padding: 20px;
    letter-spacing: 4px;
    text-shadow: 0 0 20px #000;
    text-align: center;
}


.titreProgramList {
    text-transform: uppercase;
    font-size: 100%;
    font-weight: bold;
    display: inline-block;
    margin-top: 3px;
}
.episode_duree_program_list p {
    margin: 0;
}
/*
.categorie .col1 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
*/
.programs {
    display: flex;
    justify-content: start;
    flex-wrap: wrap;
}
.categorie .col1 .programmCat {
    max-width: 31%;
    margin-right: 2%;
    margin-bottom: 20px;
}
.episode_duree_program_list {
    font-size: 90%;
    color: grey;
}
.programmCat a {
    opacity: 1;
    transition : opacity 0.4s;
}
.programmCat a:hover {
    opacity: 0.7;
}

.subNav ul {
    list-style: none;
}
.subNav a {
    text-decoration: none;
    padding-right : 2px;
    transition : color 0.3s, padding-left 0.3s, padding-right 0.3s;
}
.subNav a:hover {
    color:#989898;
    padding-left : 2px;
    padding-right : 0px;
}
.subNav ul ul li, .subNav.duration li, .subNav.format li, .tax-categorie .subNav.cat li {
    border-bottom: solid 1px #cecece;
    margin-bottom: 7px;
}
.subNav > ul > li > a {
    font-weight: bold;
    margin-top: 12px;
    display: inline-block;
}
.subNav.duration, .subNav.format {
    margin-top: 30px;
}
.tax-categorie .subNav.cat li a, .subNav.duration li a, .subNav.format li a {
    font-weight : normal;
    margin-top : 0;
}

@media screen and (max-width: 1100px) {
    
    .bandeauCat {
        height: 32vh;
    }
    
}
@media screen and (max-width: 800px) {
    
    .bandeauCat h1 {
        font-size: 40px;
    }
    
}
@media screen and (max-width: 650px) {
    
    .bandeauCat {
        height: 25vh;
    }
    .bandeauCat h1 {
        font-size: 30px;
    }
    
}

@media screen and (max-width: 650px) {
    
    .bandeauCat {
        height: 22vh;
    }
    .bandeauCat h1 {
        font-size: 20px;
    }
    
}
/* 
##################################################################################################################
##
Pagination
*/
.pagination {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.pagination a {
    padding: 4px 6px;
    background-color: whitesmoke;
    margin: 8px;
    text-decoration: none;
    border: solid 1px #d4d4d4;
    transition : border 0.4s;
}
.pagination a:hover {
    border: solid 1px #d62027;
}
span.page-numbers.current {
    border: solid 1px #d62027;
    padding: 4px 6px;
    background-color: whitesmoke;
}

/* for search result  page  only */
h2.screen-reader-text {
    display: none;
}
/* Affiche le message sur une ligne */
.no-result {
    flex: 0 0 100%;
    margin: 10px 0 20px 0;
}
.no-result .fas {
    color: #d62027;
}
/* 
##################################################################################################################
##
single program
*/

.singleProg {
    margin-top: 66px; /* after menu */
}

/* Bandeau video */
.bandeauSingleProg{
    padding: 4%;
    position: relative;
    overflow: hidden;
    min-height: 370px;
}
.bandeauSingleProg img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 0;
    left: 0;
    opacity: 0.6;
    filter: blur(5px) contrast(140%) saturate(150%);
}
.video_program {
    max-width: 710px;
    margin: 0 auto;
}
.video_program div {
    box-shadow: 0 0 20px #000;
}
/* Cols */

.cols {
    display: flex;
    justify-content: space-around;
    max-width: 1200px;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 30px;
}

.tab button, .col2 p:first-child, .catNameSingle, .titleSingle {
    text-transform: uppercase;
    font-weight: bold;
}

.col1 {
    width: 70%;
}
.col2 {
    width: 25%;
    /* margin-top: 70px; */
    background-color: #efefef;
    padding: 20px;
}

/* Style the tab */
.tab {
    overflow: hidden;
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}

/* Style the buttons inside the tab */
.tab button {
  background-color: inherit;
  /*float: left;*/
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.3s;
  font-size: 17px;
}

/* Style the tab content */
.tabcontent {
  display: none;
  padding: 20px 0;
  border-top: none;
}

.catNameSingle a {
    text-decoration: none;
    transition : color 0.3s;
}
.catNameSingle a:hover {
    color: #212529 !important;
}


.infoProgSingle {
    margin-top: 20px;
}
.infoProgSingle.premier {
    margin-bottom: 0;
}


/* 
##################################################################################################################
##
Pages
*/

.page .content {
    max-width: 1050px;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 30px;
}
.page .content > div {
    margin-bottom: 50px;
}

/* about */
.desc {
    margin-top: 40px;
}
.talk {
    text-align: center;
    background-color: #efefef;
    padding: 20px 10px;
}
.talk div {
    display: flex;
    justify-content: space-around;
    margin-top: 22px;
}
.meet {
    text-align: center;
}
.meet b {
    text-transform: uppercase;
    display: inline-block;
    margin-bottom: 10px;
}

/* diapo marchés */
.markets .slick-slide img {
    margin: 0 auto;
}
/* 
##################################################################################################################
##
Modal 
*/
.pum-content + .pum-close {
    background-color: #d2d2d2 !important;
}
.pum-theme-2217 .pum-content, .pum-theme-default-theme .pum-content {
    color: unset !important;
}
.pum-theme-2217 .pum-title, .pum-theme-default-theme .pum-title {
    color: #d62027 !important;
    text-transform: uppercase !important;
}
.pum-theme-2217 .pum-container, .pum-theme-default-theme .pum-container {
    border: solid 3px #d62027 !important;
    background-color: rgb(239 239 239) !important;
}
.pum-theme-2217 .pum-title, .pum-theme-default-theme .pum-title {
    font-size: 22px;
}


/* 
##################################################################################################################
##
footer
*/

.footer {
    background-color: #3c3c3c;
    padding: 40px 10px;
}

.colsFooter {
    max-width: 1100px;
    display: flex;
    justify-content: space-around;
    margin: 0 auto;
}

.logoFooter img {
    height: 50px;
}

.BaselineFooter {
    color: #fff;
    text-transform: uppercase;
    margin: 30px 0;
}

#mega-menu-wrap-contact_footer {
    background: #3c3c3c;
}
#mega-menu-wrap-contact_footer #mega-menu-contact_footer > li.mega-menu-item > a.mega-menu-link:hover {
    background: #3c3c3c;
}

#mega-menu-wrap-contact_footer #mega-menu-contact_footer > li.mega-menu-item {
    display: block;
}

#mega-menu-wrap-contact_footer #mega-menu-contact_footer > li.mega-menu-item > a.mega-menu-link {
    line-height: unset;
    height: unset;
    padding: 4px 0;
}
    
.twitterWidget {
    width: 500px;
    height: 500px;
    overflow-y: scroll;
    overflow-x: hidden;
display : none;
}

.legalText {
    color: #fff;
    text-align: center;
    padding: 60px 0 0 0;
    text-transform: uppercase;
}

#legals_nav ul {
    list-style: none;
    text-align: center;
}
#legals_nav ul li a {
    color: #989898;
    text-decoration: none;
    
    transition : color 1s;
}
#legals_nav ul li a:hover {
    color: #fff;
}