/*** Définition des polices ***/
@font-face {
    font-family: 'futura_lt_btlight';
    src: url('../Fonts/futural_0-webfont.eot');
    src: url('../Fonts/futural_0-webfont.eot?#iefix') format('embedded-opentype'),
         url('../Fonts/futural_0-webfont.woff2') format('woff2'),
         url('../Fonts/futural_0-webfont.woff') format('woff'),
         url('../Fonts/futural_0-webfont.ttf') format('truetype'),
         url('../Fonts/futural_0-webfont.svg#futura_lt_btlight') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'futura_lt_btlight_italic';
    src: url('../Fonts/futurali_0-webfont.eot');
    src: url('../Fonts/futurali_0-webfont.eot?#iefix') format('embedded-opentype'),
         url('../Fonts/futurali_0-webfont.woff2') format('woff2'),
         url('../Fonts/futurali_0-webfont.woff') format('woff'),
         url('../Fonts/futurali_0-webfont.ttf') format('truetype'),
         url('../Fonts/futurali_0-webfont.svg#futura_lt_btlight_italic') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'futura_md_btmedium';
    src: url('../Fonts/futuram_0-webfont.eot');
    src: url('../Fonts/futuram_0-webfont.eot?#iefix') format('embedded-opentype'),
         url('../Fonts/futuram_0-webfont.woff2') format('woff2'),
         url('../Fonts/futuram_0-webfont.woff') format('woff'),
         url('../Fonts/futuram_0-webfont.ttf') format('truetype'),
         url('../Fonts/futuram_0-webfont.svg#futura_md_btmedium') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'futura_md_btmedium_italic';
    src: url('../Fonts/futurami_0-webfont.eot');
    src: url('../Fonts/futurami_0-webfont.eot?#iefix') format('embedded-opentype'),
         url('../Fonts/futurami_0-webfont.woff2') format('woff2'),
         url('../Fonts/futurami_0-webfont.woff') format('woff'),
         url('../Fonts/futurami_0-webfont.ttf') format('truetype'),
         url('../Fonts/futurami_0-webfont.svg#futura_md_btmedium_italic') format('svg');
    font-weight: normal;
    font-style: normal;
}


/** Pour faciliter les calculs de taille de police en rem: on initialise la taille "de base" à 10px = 1rem **/
html {
	font-size: 62.5%;
}
h1,.h1,
.button,
.news-backlink-wrap {
    font-family: "PT Sans Narrow", sans-serif;
    font-weight: normal;
}
h1,.h1 {
  margin-bottom: 1em; 
  text-transform: uppercase;
}

h1,.h1,
h2, .h2 {
  color: #e2001a;
  line-height: 4rem;
}
h1::first-letter {
    padding: 14px 4px 12px 34px;
    color: #fff;
    background: transparent url("../Images/mix-rond-rouge.png") no-repeat center left;
}
.button:first-letter,
.news-backlink-wrap:first-letter {
  color:#fff;
  padding:5px 5px 5px 20px;
  background-color:#E2001A;
  border-radius:50%;
}
main {
  font-family:futura_lt_btlight,"helvetica-neue", helvetica, arial, sans-serif;
  font-size:1.8rem;
}

figure.image {
  margin-bottom: 2.4rem;
}
figure.image img {
  max-width: 100%;
  height: auto;
}
.border-top-grey {
  border-top: 1px solid #eee;
}

blockquote {
    padding: 12px 24px;
    margin: 0 0 24px;
    font-size: 2rem;
    border-left: 5px solid #eeeeee;
}

.contenttable > tbody > tr > td {
    padding: 8px;
    line-height: 1.55;
    vertical-align: top;
    border-top: 1px solid #dddddd;
}

main input[type="SUBMIT"],
main input[type="BUTTON"] {
    background: #e2001a;
    border: 0 none;
    color: #fff;
    width: 100px;
    height: 100px;
    font-weight: 700;
    border-radius: 50%;  
}

main label {
  font-weight: bold;
}

.form-control {
  font-size:1.8rem;
}

/** Top header **/
h1.site-title {
    margin-bottom: 0;  
}
#logo img {
  position: relative;
  top:20px;
}

.menu_pictos li {
  margin-left:.5rem;
}

header #form_kesearch_pi1 {
    padding-left: 40px;
    background: url("../Images/bg_search.png") no-repeat center left;
    font-size: 1.2rem;
}
header #search_sword {
    background-color: transparent;
    border: 0 none;
    line-height: 1.6em;
    border-bottom: 1px solid #e2001a;
    padding: 0;
    text-transform: uppercase;
    min-height: 32px;      
}

#form_kesearch_pi1 button {
    border-bottom: 1px solid #e2001a;
    border-right:  1px solid #e2001a;
    border-top:none;
    border-left:none;
    background: transparent;
    padding-left: 0;
    color:#000;
    min-height: 32px; 
    min-width: 32px; 
      
}

/** Menu principal **/
.gris {background-color:#ececec;}

#main-navigation {
  font-family : "futura_md_btmedium", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  padding-top:0;
  padding-bottom:0;
}
#main-navigation .dropdown-menu {
  font-family : "Helvetica Neue", Helvetica, Arial, sans-serif;
}  
#navbarContent > ul > li  {
    position: relative;
}
#navbarContent > ul > li > a,
#main-navigation button {
  padding: 0 15px;
}
#main-navigation button {
  text-transform: uppercase;
  border:none;
  color: #e2001a;
  background-color:transparent;
}
#main-navigation button:hover,
#navbarContent > ul > li > a.current,
#navbarContent > ul > li > a.active,
#main-navigation button.active {
    color: #000;
}

#main-navigation .bar {
    position:absolute;
    top: -15px;
    left: 0;
    height: 4px;
    width: 100%;
    opacity: 0;
    background: #e2001a;
    transition: top 0.19s ease-in-out 0s, opacity 0.25s ease-in-out;
}
#main-navigation li:hover .bar{
    top:0px;
    opacity: .5;
}
#main-navigation li.current .bar,
#main-navigation li.active .bar {
  top:0px;
  opacity:1;
}
  
#main-navigation .navbar-collapse {
    flex-grow: 0;
}
.navbar-toggler {
    position: relative;
    width: 34px;
    height: 34px;
    border-color: #e2001a;
    border-radius:0;
}

.navbar-toggler .icon-bar {
    position: absolute;
    top: 50%;
    left:5px;
    background-color: #8c8c8c;
    width: 23px;
    height: 2px;
    border-radius: 1px;
    display: block;
    margin-top: -1px;
}
.navbar-toggler .icon-bar:nth-child(2){
    margin-top:-7px;
}
.navbar-toggler .icon-bar:nth-child(3){
    margin-top:5px;
}
#main-navigation li .dropdown-menu li a.current,
#main-navigation li .dropdown-menu li a.active {
    color:#333;
} 

/** breadcrumb **/
.breadcrumb {
  background-color: #fff;
  padding-left:0;
  padding-right: 0;
  font-size: 1.6rem;
}
.breadcrumb > li + li::before {
    content: "/\00a0";
    padding: 0 5px;
    color: #cccccc;
}
/** Carousel **/
.swiper-container {    
    height: 660px;
    width:100%;
}
.swiper-slide {
  background-position: center center;
  background-size: cover;
  background-color: #333;
}
.swiper-slide a {
    display:block;
    width: 100%;
    height: 100%;
}
.carousel-text-inner {
    background-color: #e2001a;
    color:#fff;
    width:25rem;
    position: relative;
    padding: 30px 25px 25px 40px;
    border-radius: 50%;
    min-height: 25rem;
    margin-left: 5rem;
    margin-top:25rem;
}
.carousel-text-inner h2 {
    padding-top:55px;
    color: #fff;
    line-height:normal;
}

/** Bloc programmation **/
.grisclair {
    background-color: #f1f1f1;
}
#programmation h2 {
  font-family: "PT Sans Narrow", sans-serif;
  font-weight: normal;
  margin-bottom: 1em; 
  margin-top: 1em;
  text-transform: uppercase;
}

#programmation h2::first-letter {
    padding: 12px 4px 10px 34px;
    color: #fff;
    background: transparent url("../Images/mix-rond-rouge.png") no-repeat center left;
}

#programmation .news.list {
    padding-bottom: 1.5em;
}
#programmation .prog {
    padding-bottom: .4em;  
}

#programmation .news.list .news-img-wrap img {
  border-radius:50%;
  float: left;
  margin:0 10px;
}
#programmation p {
  font-size:1.7rem;
  line-height: 1.3em
}
#programmation p.button {
  font-size:1.6rem;
  text-transform: uppercase;
}
/** Footer **/

.footer-section,
.meta-section {
  font-size: 1.3rem;
  line-height: 1.2em;
  padding-top: 12px;
  padding-bottom:12px;
}

.footer-section {
  border-top: 1px solid #ededed;
  color: #000;
}

/** Liste actualités **/
.news.list .article .news-img-wrap {
  max-height: 230px;
  overflow: hidden;
  margin-bottom: 24px;
}
.article .news-img-wrap img{
  height: auto;
  width: 100%;
}
a.article {
    color:rgb(51, 51, 51);  
}

a.article:hover h2, a.article:focus h2,
a.article:hover p.text-right.button,
a.article:focus p.text-right.button {
  color: #000;
}

.article p.text-right.button {
  color: #e2001a;
}

.page-navigation p {
    float: left;
}

.page-navigation ul{
    float: right;
}

.page-navigation ul li {
    float: left;
    display: block;
    padding: 0 2px;
    background: none;
}

.page-navigation ul li a {
    display: block;
}
.page-navigation {
  font-size:1.8rem;
} 

/** Détail actu **/
.news-list-date {
  font-size: 1.3rem;
}
.news-list-date,
.news-list-category {
  color:#888;
}

#shareBlock {
    margin:1em 0;  
}
#shareBlock span:first-child {
    text-transform: uppercase;
}

/** Powermail **/
.hidden-legend legend {
  display:none;
}

legend.powermail_legend {
  margin-bottom: 2.4rem;
  border-bottom: 1px solid #e5e5e5;
  color: #e2001a;
  font-size: 2.4rem;  
}
.powermail_fieldwrap_type_submit {
  text-align: right;
}


/** Photothèque **/
.liste_phototeque .news_image img {
  max-width: 100%;
  height: auto;
}
.liste_phototeque .news_image {
  margin-bottom: 24px;
}
.liste_phototeque h2 {
  font-family:futura_lt_btlight,"helvetica-neue", helvetica, arial, sans-serif;
  font-size:1.8rem;
}
.teaser-text p {
  color: #333;
}
p.morelink {
  text-align: right;
  font-family: "PT Sans Narrow", sans-serif;
  font-weight: normal !important;
  margin-bottom: 24px;
}

.news .article .teaser-text {
    margin: 0 0 10px 0;
}
.news-single .teaser-text {
    font-size: 1.5rem;
    color: #888;
}

#galleria {
  max-width: 100%;
  min-height: 650px;
  background: #fff;
  margin:auto;
  padding:24px 0;
  clear:both;
}
.galleria-theme-classic {
  background: #F5F5F5;
}
.galleria-container {
  max-width:100%;
}
.news-single .article .news-img-wrap {
  width:auto;
}
.news-single .article .outer {
  margin-top:20px;
}

/** Liste agenda **/
.agenda h2:first-letter {
    color: #fff;
    padding: 5px 0 5px 15px;
    background-color: #E2001A;
    border-radius: 50%;
}
.agenda .news-list-content > div {
  margin-left:2em;
}

.news-list-content div[itemprop] p {
  margin-bottom: 0;
}

/** Détail agenda **/
.article.event {
  border-top: 1px solid #eee;
}

/** Recherche **/
.hit {
  color: #e2001a;
  font-weight: bold;
}

/** Responsive **/
@media (min-width: 48em) {
  #p1 #programmation { 
    position:absolute;
    z-index:9;
    background-color: rgba(255,255,255,.85);
    width:23.75em;
    right:1.5em;
    top:3%;
    min-height: 94%;
  }
  
  #p1 #programmation .news.list {
    max-height: 360px;
    overflow: hidden;
  }

  .navbar-toggler {
    display: none;
  }
  .dropdown-menu {
    background-color: rgba(255,255,255,.7);
    min-width: 300px;
    box-shadow: 0 2px 0 rgba(0,0,0,0.1);
    padding-top:0;
    padding-bottom: 0;
    top:98%;       
    }
  .dropdown-menu a {
    text-transform: none;
    color: #333;
    white-space: nowrap;
    width:100%
  }    
  .dropdown-menu li:hover,
  .dropdown-menu li.current,
  .dropdown-menu li.active {  
      color:#fff;
      background-color: #e2001a; 
  }
  #main-navigation li .dropdown-menu li:hover a,
  #main-navigation li .dropdown-menu li a.current,
  #main-navigation li .dropdown-menu li a.active {
      color:#fff;
  }
  
  #main-navigation li:hover .dropdown-menu {
    display: block;
    }
}  

@media (min-width: 62em) {
  #p1 #programmation .news.list {
    max-height: 475px;  
  }
}

@media (max-width: 62em) {

  .swiper-container {    
    height: 600px;
  }
  #logo {
    border-bottom: 1px solid #eee;
  }
  #logo img {
    top:0;
    max-height: 75px;
    width: auto;
  }
  
  #form_kesearch_pi1 {
      background:none;
      padding:0;  
  }
  #search_sword {
    border-bottom: 1px solid #eaeaea;
  }
  #form_kesearch_pi1 button {
    background-color: #e2001a;
    border-radius: 50%;
    color:#fff;
    padding:2px;
  }
  
  #main-navigation {
      font-family: "Share", "Helvetica Neue", Helvetica, Arial, sans-serif;    
  }
  #main-navigation a,
  #main-navigation button {
      font-weight: bold;
      display: block;
      width: 100%;
      text-align: left;
  }
  
  #main-navigation .bar {
      position:absolute;
      top: 0px;
      left: -10px;
      height: 100%;
      width: 4px;
      opacity: 0;
      background: #e2001a;
      transition: top 0.19s ease-in-out 0s, opacity 0.25s ease-in-out;
  }
  #main-navigation li:hover .bar,
  #main-navigation li.active .bar {
      left:0px;
  }
  .dropdown-menu {
    background-color: transparent;
    border: none;    
  }
  .dropdown-toggle:after {
    float: right;
  }
  
  #main-navigation li.show .bar {
    opacity: 1;
  }
  #main-navigation li.show a {
    color:#8c8c8c;
    text-transform: none;
    font-weight: normal;
    padding-left: 15px;
  }
  #main-navigation li.show a:hover {
    color:#000;
  }
}

@media (max-width: 48em) {
    .swiper-container {    
        height: 400px;
    }  
    .carousel-text-inner {
        margin-top: 15rem;
        min-height: 200px;
        width:200px;
        padding: 24px 18px 18px 24px;
    }
    .carousel-text-inner h2 {
        font-size: 2.2rem;
        padding-top: 30px;
    }
}  