/*
Theme Name: fftir
Version: 1.0
Description: A child theme of Bootstrap Basic4
Template: bootstrap-basic4
Author: Administrator
*/
@import url("../bootstrap-basic4/style.css");
/* Your awesome customization starts here */

body, html {
    font-family: 'Montserrat', sans-serif !important;
}

h1, h2, h3, h4, h5 {
    font-family: 'Roboto', sans-serif !important;
    font-weight: 400 !important;
}

table.aligncenter {
    display: table;
    margin-right: auto;
    margin-left: auto;
}

.entry-content {
    text-align: justify;
    padding: 0 5px 0 0;
}

/*.entry-content div[align="center"] {
    text-align: left;
}*/

#main a {
    color: #222 !important;
}

#main a:hover {
    text-decoration: underline !important;
}

/*#main .entry-content a[href*=".pdf"]::before {
    content: " [pdf]";
    color: #00c;
    display: inline-block;
}*/

#main a.wp-block-file__button {
    color: #fff !important;
}

.page-header {
    margin: 0;
    background: #fff;
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 10000;
}

/*#main .entry-content a[href*=".pdf"] {
    color: #667 !important;
}*/

.ultra-top-menu {
    color: #fff;
    font-size: 0.85rem;
    line-height: 2.8rem;
    background: #8C0000;
    /* display: inline-block; */
    width: 100%;
    border-radius: 0;
    position: fixed;
    right: 15px;
    text-align: right;
    padding-right: 12px;
    z-index: 10;
}

.ultra-top-menu .container-fluid {
    margin-right: 0;
    padding-right: 0;
}

.ultra-top-menu .nb-licencies span {
    color: #fff;
    background: #94939D;
    padding: 2px;
    position: relative;
    margin: 0 -1px;
}

.ultra-top-menu .nb-licencies span:nth-of-type(3n) {
    margin-right: 3px;
}

.ultra-top-menu .nb-licencies span::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: rgba(0, 0, 0, .3);
}

.ultra-top-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ultra-top-menu li {
    display: inline-flex;
}

.ultra-top-menu li a {
    color: #fff;
    margin: 0 0.9rem;
    vertical-align: top;
}

.ultra-top-menu a i.fab {
    color: #fff;
    margin-right: 0.4rem;
    font-size: 1.1rem;
}

.ultra-top-menu form {
    margin: 0.75rem 0.3rem;
}

.ultra-top-menu form input, .ultra-top-menu form button {
    font-size: 11px;
    border: 0;
    border-radius: 0;
    padding: 3px 10px 3px;
    height: auto;
}


.recherche-top.text-right {
    width: 280px;
    padding: 4px 0 3px 20px;
    float: right;

}

.nb-licencies {
    width: 200px;
    background-color: #222;
    padding: 4px 10px 5px;
    float: right;
}

header .row-with-vspace, header .page-header-top-right {
    margin: 0;
}

.nom-ligue {
    position: absolute;
    font-size: .9rem;
    text-transform: uppercase;
    padding-top: 5px;
}

.site-branding {

}

.site-title-heading a {
    display: block;
    height: 175px;
}

.site-title-heading a img {

    height: 140px;
    margin: 0.4rem auto 0;
    display: block;
}


.site-title-heading a span {
    opacity: 0;
}

.navbar-toggler {
    display: none;
}


.main-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
    margin-bottom: .5rem;
    text-align: center;
    position: relative;
    transition: all .4s;
    margin-top: 54px;
}

.scrolled .main-menu {
    margin-top: 22px;
}

.main-menu > li {
    display: inline-block;
    margin: 2.4rem 2% 0;
}

.main-menu li a {
    color: #222;
    font-size: 1.1rem;
    text-transform: uppercase;
    font-weight: 400;
}

.sub-menu li a {
    font-size: 0.9rem;
    text-transform: uppercase;
    font-weight: 600;
}

.main-menu li ul, .sub-menu li ul {
    max-height: 0;
    opacity: 0;
    display: block;
    overflow: hidden;
    transition: all .6s;
    position: fixed;
    width: auto;
    text-align: left;
    width: 100%;
    top: 175px;
    background: #f8f8f8;
    left: 0;
    z-index: 2000;
    height: 100vh;
    transition: all .6s !important;
}


.main-menu li ul li a img, .menu_categorie li img {
    margin-right: 15px;
}

.scrolled .main-menu li ul, .scrolled .sub-menu li ul {
    top: 131px;
    height: calc(100vh - 132px) !important;
    overflow: auto;
}
.main-menu li ul.active, .sub-menu li ul.active {
    max-height: 2000vh;
    opacity: 0.9;
    padding: 2rem 5rem;
    height: 300vh;
}

.main-menu li ul li, .sub-menu li ul li {
    display: block;
    margin: 1rem auto;
    max-width: 769px;
    border-top: 1px solid #222;
    padding: 1rem;
}

.main-menu li ul li ul li, .sub-menu li ul li ul li {
    border-top: 0;
}

.main-menu li ul li a, .sub-menu li ul li a {
    color: #222;
    font-weight: 700;
}

.btn-close-ssmenu {
    position: fixed;
    color: #222 !important;
    z-index: 100000000;
    top: 165px;
    right: 50%;
    font-size: 2rem !important;
    margin-right: -390px;
    transition: all .8s;
}

.scrolled .btn-close-ssmenu {
    top: 115px;
}

.home-logo {
    max-height: 110px;
    margin-top: -33px;
    margin-bottom: 0px;
    transition: all .4s;
}

.scrolled .home-logo {
    max-height: 64px;
    margin-top: 0px;
    margin-bottom: 0px;
}


.sub-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
    background: #94939D;
    text-align: center;
    height: 2.5rem;
}

.sub-menu li {
    display: inline-block;
    margin: .4rem 2%;
}

.sub-menu li a {
    color: #fff;
    font-size: 0.9rem;
    text-transform: uppercase;
    font-weight: 400;
}

.main-menu li ul.active ul, .sub-menu li ul.active ul {
    max-height: inherit;
    opacity: 1;
    display: block;
    z-index: 2000;
    height: auto;
    padding: 0;
}

.sub-menu.active ul {
    position: relative;
    margin-left: 2rem;
    margin-top: 0;
    top: 0;
}

.sub-menu.active ul li {
    padding: 0;
    margin: 0;
}

.sub-menu.active ul li a {
    font-size: 0.6rem;
}

.toggle-panel {
    position: fixed;
    top: 0;
    right: 0;
    max-width: 0;
    overflow: hidden;
    background: #fff;
    height: 100vh;
    margin: 0;

    overflow: auto;
    z-index: 1000000;
    transition: all .3s;

}

.toggle-panel.active {
    max-width: 100%;
    width: 100%;
    padding: 0 1.5rem;
    padding-bottom: 10rem;
}

.toggle-panel ul {
    display: block;
    width: 100%;
    margin: 0 0 0 2rem;
    height: auto;
    background: transparent;
}

.toggle-panel #menu1, .toggle-panel #menu2, .toggle-panel #menu3 {
    border-top: 1px solid #222;
    margin-bottom: 2rem;
}

.toggle-panel #menu3 {
    padding: 0;
    list-style: none;
    text-transform: uppercase;
    font-size: .8rem;
    font-weight: 300;
}

.toggle-panel #menu2 li a {
    color: #8C0000;
}

.toggle-panel #menu1 li.menu-item-has-children a, .toggle-panel #menu2 li.menu-item-has-children a {
    color: #222;
}

.toggle-panel #menu3 li a {
    font-weight: 600;
    margin: 0.8rem 0;
    color: #8C0000;
    display: block;
}

.toggle-panel ul li {
    display: block;
    width: 100%;
    position: relative;
    margin: 0;
    height: auto;
    text-align: left;
    margin-top: 1.5rem;
}

.toggle-panel .main-menu li ul, .toggle-panel .sub-menu li ul {
    display: block;
    position: relative;
    top: inherit;
    max-height: inherit;
    opacity: 1;
    width: 100%;
    margin: 0;
    background: transparent;
    padding-left: 1rem;
}

.toggle-panel .main-menu li ul li, .toggle-panel .sub-menu li ul li {
    display: block;
    margin: 0.2rem 0;
    max-width: 100%;
    font-size: .85rem;
}

.toggle-panel .main-menu li ul li ul li, .toggle-panel .sub-menu li ul li ul li {
    display: block;
    margin: 0.1rem 0;
    max-width: 96%;
    font-size: .75rem;
}

.toggle-panel .main-menu li ul li a, .toggle-panel .sub-menu li ul li a {
    color: #8C0000 !important;
    font-weight: normal;
}

.spinner-border {
    display: block !important;
    color: #8C0000;
}


.surchap {
    color: #8C0000;
    margin: 0;
    padding: 0;
}
.front-header {
    display: none;
}

.home .front-header {
    display: block;
}

.front-header h1 {
    text-align: center;
    color: #222;
    font-size: 1.2rem;
    font-variant: small-caps;
    margin: 0 0 1rem;
}


.reseaux_sociaux {
    left: 0;
    position: fixed;
    top: 35%;
    z-index: 999999;
}

.reseaux_sociaux ul {
    margin: 0 !important;
    list-style: none !important;
    padding: 0 !important;
}

.reseaux_sociaux li {
    background-color: #fff;
    background-color: rgba(234, 234, 234, .85);
    margin-bottom: 0;
    position: relative;
    width: 50px;
    overflow: hidden;
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    line-height: 43px;
}

.reseaux_sociaux li a {
    font-size: 1.7rem;
    color: #222;
}

/* ---------------------------------------------
Main zone
 --------------------------------------------- */

#content {
    opacity: 1;
    transition: all .3s;
    margin-top: 215px;
}

#content.loading {
    opacity: 0;

}

.contnt-chapeau {
    padding: 5px 0;
    font-size: .8rem;
    font-weight: bold;
    border-bottom: 1px solid #f0f0f0;
    border-top: 1px solid #f0f0f0;
    margin-top: 2rem;
}

#main {
    width: 100%;
    margin: 0;
    min-height: 50vh;
}

#main .media img, #main table {
    max-width: 100%;
    height: auto;
    max-height: 75px;
}

.entry-content img {
    /* box-shadow: 2px 3px 6px rgba(0,0,0,0.1); */
    /* border: 1px solid #ddd; */
    padding: 0.4rem;
    margin-bottom: 1rem;
    max-width: 100%;
    height: auto;
}

img[title*="Picto "] {
    display: none !important;
}

#main a:hover {
    text-decoration: none;
}

a:hover p {
    color: rgba(0, 0, 0, 0.4) !important;
}

#main .col-12 {
    margin: .4rem auto 0;
    padding-bottom: 1.6rem;
}

#main .boutique .col-12 {
    margin: 0rem auto 0;
    padding-bottom: 0.3rem;
}

#main .col-12 h2 {
    color: #8C0000;
    text-align: center;
    font-size: 1.7rem;
    margin: 2rem auto 2rem;
}

#main article.post, #main article.page {
    border: 0;
    margin-bottom: 20px;
    overflow-x: auto;
    padding: 0;
}

.site-content {
    background: rgba(255, 255, 255, 1);
    /*background: -moz-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 66.6667%, rgba(248, 248, 248, 1) 66.6667%, rgba(248, 248, 248, 1) 100%);
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 66.6667%, rgba(248, 248, 248, 1) 66.6667%, rgba(248, 248, 248, 1) 100%);
    background: -o-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 66.6667%, rgba(248, 248, 248, 1) 66.6667%, rgba(248, 248, 248, 1) 100%);
    background: -ms-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 66.6667%, rgba(248, 248, 248, 1) 66.6667%, rgba(248, 248, 248, 1) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 66.6667%, rgba(248, 248, 248, 1) 66.6667%, rgba(248, 248, 248, 1) 100%);*/

}

.home .site-content {
    background: rgba(255, 255, 255, 1);
}

.site-content .breadcrumb {
    background: #EAE9EC;
    font-size: .88rem;
    text-transform: uppercase;
    padding: 1rem 0;
}

.site-content .breadcrumb a, .site-content .breadcrumb span {
    margin: 0 .3rem 0;
    color: #8C0000;
}

.site-content .breadcrumb i, .site-content .breadcrumb span {
    color: #bbb;
}

.site-content table {
    width: 100%;
}

.site-content table td {
    vertical-align: top;
    border: 1px dotted #fff;
}

/* ---------------------------------------------
Archives
 --------------------------------------------- */
.menu_categorie {
    margin: 0;
    padding: 0;
}

.menu_categorie li {
    display: block;
    margin: 1rem 2rem 1rem 0;
    max-width: 769px;
    border-top: 1px solid #222;
    padding: 1rem;
    text-transform: uppercase;
    font-weight: bold;
}


.media {
    margin-bottom: 2rem;
}

.media figure {
    width: 140px;
    height: auto;
    overflow: hidden;
    margin: 0 .6rem 0 0;
    position: relative;
    display: table-cell;
    padding: 4px;
}

.media img {
    max-width: 100%;
    height: auto;
    display: block;
    /* box-shadow: 0 0 2px rgba(0, 0, 0, .3); */
    max-height: 100%;
    width: auto;
    margin: auto;
    /*background: #fff;*/
    padding: .2rem;
}

.media img.error {
    opacity: 0;
}

#main .media h5 a {
    color: #222 !important;
    text-transform: uppercase;
    font-size: 1.1rem;
    font-weight: 400;
}

.media a p {
    color: #222;
    font-size: .8rem;
    text-align: justify;
    padding-right: 2rem;
}

.description-categorie {
    font-size: .85rem;
    color: #222;
    text-align: justify;
}

.chapeau {
    padding: 0 1rem;
    color: #222;
    text-align: justify;
}

/* ---------------------------------------------
Diaporama
 --------------------------------------------- */

.carousel-control-next-icon, .carousel-control-prev-icon {
    background-color: #8c0000 !important;
    padding: 1.3rem;
    background-size: 1.5rem !important;
    border-radius: 50%;
}


.diaporama {
    margin-top: 0 !important;
    padding: 0 !important;
    border-top:5px solid #8C0000;
}

.diaporama .fftir-diapo h4, .diaporama .fftir-diapo .diapo_desc {
    display: none;
}

.diaporama .fftir-diapo .carousel-item {
    height: 29vw;
    background: #e8e8e8;
    background-position: center;
    background-size: cover;
}

.diaporama .fftir-diapo .carousel-item img {
    opacity: 0;
}

#main article .entry-content .carousel-item img {
    border: 0;
    box-shadow: none;
    max-width: 100% !important;
    padding: 0;
    margin: 0;
    width: 100%;
}

#main article .entry-content .carousel-item .outer-img {
    max-height: 480px;
    overflow: hidden;
    /* border: 1px solid red; */
    background: #fff;
}

#main article .entry-content .carousel-item .outer-img img {
   width:auto;
    margin:auto;
    height: 480px;
    cursor:pointer;
}

@media (max-width: 769px) {

    .diaporama .fftir-diapo .carousel-item {
        height: 220px;
        background: #e8e8e8;
        background-position: center;
        background-size: cover;
    }

    .boutique .boutique-item {
        height: 97px;
        background-size: 74%;
        background-position: center;
        background-repeat: no-repeat;
    }

}

/* ---------------------------------------------
Discipline
 --------------------------------------------- */
.discipline {
    background: #F4F4F5;
    padding: 2rem 0 3rem;
}

#main .discipline h2 {
    margin-top: 0;
}

.discipline ul {
    margin: .2rem 1rem;
    padding: 0 1.4rem;
    list-style: none;
}

.discipline li {
    text-align: center;
    padding: 0;
    position: relative;
    height: 80px;
}

.discipline li a {
    color: #a6a6a6;
    font-size: 0.75rem;
    line-height: 1rem;
    display: block;
}

.discipline li a img {
    max-width: 85%;
    max-height: 60px;
    display: block;
    margin: auto;
    vertical-align: middle;
    transition: all .3s;
    filter: grayscale(100%);
}

.discipline li a[href="/pistolet/"] img {
    max-height: 69px;
}

.discipline li a[href="/bench-rest/"] img {
    max-height: 65px;
}

.discipline.entry-meta {
    padding: 1rem 0 1rem;
    margin-top: 2rem;
}

.discipline.entry-meta li {
    height: 40px;

}

.discipline.entry-meta li a img {
    max-height: 40px;
}

.discipline.entry-meta li p {
    display: none;
}

.discipline.entry-meta li:hover p {
    display: block;
    top: -32px;
}


.discipline li a:hover {
    color: #8C0000;
}

.discipline li a:hover img {
    filter: hue-rotate(163deg) saturate(200%);
    transform: scale(1.1);
}

.discipline li p {
    position: absolute;
    top: 80px;
    text-align: center;
    width: 100%;
    text-transform: uppercase;
    font-size: 0.6rem;
    line-height: 0.7rem;
    font-weight: 600;
    white-space: nowrap;
    text-overflow: ellipsis;
    opacity: 0;
    transition: all .4s;
}

.discipline li:hover p {
    opacity: 1;
}

/* ---------------------------------------------
Actualité
 --------------------------------------------- */

#main .actualite h2 {
    margin-top: 2rem;
}

.actualite h5 {
    color: #003C8C;
    margin: 0 1%;
    text-transform: uppercase;
    font-size: 1rem;
    line-height: 2.2rem;
    position: relative;
}

.list-top-actu {
    margin-top: -10px !important;
}

.actualite h5 span {
    background: #fff;
    z-index: 4;
    position: relative;
    padding: 0 .5rem 0 0;
}

.actualite h5::before {
    content: "";
    display: block;
    border-top: 3px solid #94939D;
    width: 100%;
    margin-top: 16px;
    height: 1.4rem;
    position: absolute;
}

.actualite .actu-list {
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
}

.actualite .actu-item {
    width: 23%;
    text-align: center;
    padding: 0;
    position: relative;
    height: 170px;
    margin: 0 1% 12px;
    display: block;
    float: left;
    border: 1px solid #eee;
    background: #f8f8f8;
}

.actualite .actu-item figure {
    height: 115px;
    background-size: contain;
    background-position: center;
    position: relative;
    background-repeat: no-repeat;
}

.actualite .actu-item figcaption {
    position: absolute;
    top: 118px;
    font-size: 0.7rem;
    text-align: center;
    width: 100%;
    line-height: 1rem;
}

#main .actualite .actu-item a {
    color: #94939D !important;
}


.actualite .list-autres-actus {
    background: #E4e4E5;
    height: 408px;
    overflow: auto;
}

.list-autres-actus ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.list-autres-actus ul li {
    font-size: 0.8rem;
    margin: 0.1rem 1rem;
}

#main .list-autres-actus ul li a {
    color: #003C8C !important;
}

.list-autres-actus ul li a:hover {
    color: #003C8C;
    border-bottom: 1px solid #003C8C;
}

#main a.toutes-actus {
    color: #003c8c !important;
    font-size: 0.9rem;
    margin: 0rem 1rem 0.6rem;
    padding-top: .4rem;
    display: inline-block;
    border-bottom: 1px solid #003c8c;
    width: calc(100% - 2rem);
}

.list-autres-actus ul li::before {
    content: " - ";
    color: #003C8C;
}

.toutes-actus::before {
    content: " - ";
    color: #003C8C;
}

.actualite .notre-ethique {
    background: #003C8C;
    height: 140px;
    margin-top: 15px;
}

.notre-ethique {
    padding-top: 1.2rem;
}

.notre-ethique img {
    max-width: 50px;
    margin: auto;
    display: block;
    position: relative;
}

.notre-ethique h3 {
    text-align: center;
    font-size: 1rem;
    line-height: 3rem;
    text-transform: uppercase;
    color: #fff;
}

/* ---------------------------------------------
Boutique
 --------------------------------------------- */
.boutique {
    background: #F4F4F5;
}

.boutique .boutique-item {
    height: 160px;
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
}

/* ---------------------------------------------
Ligues
 --------------------------------------------- */
.ligues {
    background: #EAE9EC;
}

.ligues h2 {
    cursor: pointer;
}

.ligue-item {
    max-height: 120px;
    text-align: center;
    font-size: .7rem;
    background: rgba(255, 255, 255, 1);
    padding: 0.6rem .2rem;
    margin: 0.5rem 0.6rem;
    border-radius: 12px;
}

.ligue-item a {
    color: #222;
}

.ligue-item figure {
    height: 70px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.ligue-item figure img {
    max-width: 100%;
    max-height: 100%;
}

/* ---------------------------------------------
Trouver club
 --------------------------------------------- */
.trouver-club {
    /*background: #EAE9EC;*/
}

#main .trouver-club h2 {
    color: #222;
}

#main .trouver-club .col-12 {
    margin: 0;
}

.trouver-club #map {
    display: block;
    position: relative;
    overflow: hidden;
    border: 1px solid #ccc;
    width: 340px;
    max-width: 100%;
    height: 360px;
    float: right;
}

img.leaflet-marker-icon {
    border-radius: 50%;
    border: 1px solid #222;
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
}

.leaflet-marker-icon.my-div-icon.leaflet-zoom-animated.leaflet-interactive {
    width: 30px !important;
    height: 30px !important;
    border-radius: 50%;
    background: #222;
    color: #fff;
    line-height: 30px;
    text-align: center;
}

.leaflet-popup-content figure {
    background: #222;
    width: 50px;
    height: 50px;
    margin: 0 auto -10px;
    border-radius: 50%;
    background-position: center;
    background-size: cover;
    /*box-shadow: 0 0 2px rgba(0,0,0,.3) inset;*/
    border: 1px solid #aaa;
}

.leaflet-container .leaflet-overlay-pane svg, .leaflet-container .leaflet-marker-pane img, .leaflet-container .leaflet-shadow-pane img, .leaflet-container .leaflet-tile-pane img, .leaflet-container img.leaflet-image-layer, .leaflet-container .leaflet-tile {
    max-width: none !important;
    max-height: none !important;
    filter: grayscale(44%) saturate(50%) hue-rotate(356deg);
}

.form-rech-club strong {
    color: #222;
    padding-bottom: 2rem;
}

#form-club {
    font-size: .8rem;
    display: block;
    margin: 2rem 0;
}

#form-club .col-form-label {
    padding-top: calc(.05rem + 1px);
    padding-bottom: calc(.05rem + 1px);
    line-height: 1.05;
}

#form-club input, #form-club select {
    font-size: .8rem;
    border: 1px solid #aaa;
    padding: 0 1rem;
    border-radius: 0;
    height: calc(1.55rem + 2px);
}

/* ---------------------------------------------
Partenaires
 --------------------------------------------- */
#main .partenaire h2 {
    /*color: #aaa;*/
}

#main .partenaire h3 {
    color: #222;
    font-size: .9rem;
    text-transform: uppercase;
    text-align: center;
    margin: 0;
    font-weight: 700;
    margin-top: 4rem;
}

.partenaire ul {
    margin: 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    border-top: 1px solid #ccc;
}

.partenaire ul.no-border {
    border-top: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}

.partenaire ul li {
    max-width: 22.5%;
    margin: 1rem 2%;
    overflow: hidden;
    max-height: 95px;
}

.partenaire .officiels ul li img {
    max-height: 90px;
}

.partenaire .fournisseurs ul li img {
    max-height: 90px;
}


.partenaire ul li img {
    max-width: 100%;
    width: inherit;
    height: auto;
    max-height: 70px;
    margin: auto;
    display: block;
}

.partenaire ul li span {
    display: none;
}

/* ---------------------------------------------
Calendriers
 --------------------------------------------- */
.cal-nom {

    font-size: 80%;
}

.cal-nom h4 {
    font-size: 1.3rem;
}

.cal-nom h5 {
    font-size: 1.1rem;
}

.cal-nom > ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cal-nom li {
    margin: 4px 0;
    padding: 2px 5px;
    list-style: none;
    text-overflow: ellipsis;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.cal-nom div.square-it {
    display: inline-block;
    height: 16px;
    margin-right: 5px;
    width: 16px;
}

.calendar button, .calendar table th {
    border: 1px solid #fff;
    background: #801A0F;
    color: #fff;
    text-shadow: none;
    border-radius: 0 !important;
}

.cal-nom > ul.compet {
    border-bottom: 1px solid #222;
    margin-bottom: 1rem;
}

.fc-day-number {
    background: #801A0F;
    width: 1.5rem;
    color: #fff;
    text-align: center;
    border-radius: 50%;
    line-height: 1.5rem;
    font-size: .8rem;
    margin: .2rem;
}

/*
Championnat de France : #f27a41
Compétitions nationales : #77746e
Compétitions ISSF : #d984a6
Circuits nationaux : #f2ac41
Sélections nationales : #db8c46
Championnat d’Europe : #4bb0db
Coupe du monde : #4c6570
Compétition internationales : #995d75
Championnats du monde : #3c8fb2
Concours de club : #a49167
 */
.bg-championnats-de-france {
    background: #f27a41;
    border: 0;
}

.bg-grands-prix {
    background: #bb2136;
    border: 0;
}

.bg-competitions-issf {
    background: #d984a6;
    border: 0;
}

.bg-circuits-nationaux {
    background: #f2ac41;
    border: 0;
}

.bg-selections-nationales {
    background: #db8c46;
    border: 0;
}

.bg-championnats-deurope {
    background: #4bb0db;
    border: 0;
}

.bg-coupe-du-monde {
    background: #4c6570;
    border: 0;
}

.bg-competitions-internationales {
    background: #995d75;
    border: 0;
}

.bg-championnats-du-monde {
    background: #3c8fb2;
    border: 0;
}

.bg-competitions-nationales {
    background: #77746e;
    border: 0;
}

.bg-club {
    background: #a49167;
    border: 0;
}


.bg-entrainement {
    background: #2e5fafff;
    border: 0;
}

.bg-formation {
    background: #f2ac41;
    border: 0;
}

/* ---------------------------------------------
 SIDEBAR - 1
 ----------------------------------------------- */
.sidebar-1 ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sidebar-1 ul li {
    padding: 0.7rem 0;
    border-bottom: 1px solid #e8e8e8;
    font-size: 0.9rem;
    text-transform: uppercase;
    font-weight: 600;
}

.sidebar-1 ul li a {
    color: #807f89;
}

.sidebar-1 ul ul.sub-rubrique li {
    border: 0;
    font-size: 0.8rem;
    padding: 0.4rem .8rem;
    font-weight: 300;
}

.sidebar-1 ul ul.sub-rubrique li li {
    border: 0;
    font-size: .6rem;
    padding: 0.2rem 1.4rem;
}

.reportage h5, .resultats h5 {
    padding: .2rem 0 0;
    margin: 0;
    font-size: 1rem;
    text-transform: uppercase;
    font-weight: bold !important;
    color: #222;
}

.reportage ul.sub-rubrique, .resultats ul.sub-rubrique {
    margin: 0;
    padding: 0 .2rem;
    list-style: none;
    margin-bottom: 1rem;
    border: 1px solid #e8e8e8;
}

.reportage ul.sub-rubrique li, .resultats ul.sub-rubrique li {
    border: 0;
    font-size: 0.8rem;
    padding: 0.4rem 0;
    position: relative;
    /*border-bottom: 1px dotted #ccc !important;*/
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: -0.5px;
}

.reportage ul.sub-rubrique li:last-of-type,
.resultats ul.sub-rubrique li:last-of-type {
    border-bottom: 0 !important;
}

.reportage ul.sub-rubrique li::before,
.resultats ul.sub-rubrique li::before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    background: #222;
    margin-right: 5px;
    float: left;
    margin-top: 6px;
}

.reportage ul.sub-rubrique li a,
.resultats ul.sub-rubrique li a {
    color: #222;
}

.resultats span, h6.res_liste {
    background: #94939D;
    padding: .2rem 0.6rem;
    border-radius: 10px;
    color: #fff;
    font-size: .9rem;
    margin: 0.7rem 0 0;
}

.reportage .fa-chevron-down,
.resultats .fa-chevron-down {
    cursor: pointer;
    transform: rotate(180deg);
    transition: all .4s;
    margin-right: .5rem;
}

.reportage .fa-chevron-down.rot,
.resultats .fa-chevron-down.rot {
    color: #8C0000;
    transform: rotate(0);
}

.reportage .fa-chevron-down:hover,
.resultats .fa-chevron-down:hover {
    color: #8C0000;
    transform: scale(2);
}

/* ---------------------------------------------
footer
 ----------------------------------------------- */
.footer-haut {
    width: 100%;
    background: #222;
    color: #fff;
    padding: 2rem 0;
}

.footer-haut h2 {
    font-size: 1.3rem;
    margin-bottom: 1rem;
}

.footer-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: .75rem;
}

.footer-menu li:before {
    content: "> ";
}

.footer-menu li a {
    color: #fff;
}

.footer-middle {
    width: 100%;
    padding: 1rem;
    border-bottom: 1px solid #ddd;
    font-size: .8rem;
    color: #222;
}

.footer-bottom {
    width: 100%;
    padding: .8rem 0 2rem;
    font-size: .8rem;
}

.footer-bottom span, .footer-bottom span a {
    color: #aaa;
}

footer #form-nl input, footer #form-nl button {
    border-radius: 0;
    height: calc(1.55rem + 2px);
    padding: 0 1rem;
    border: 0;
    font-size: .9rem;
    margin-left: -15px;
}

footer small {
    font-size: 70%;
}

footer small a {
    color: #fff;
    text-decoration: underline;
}

footer .home-logo {
    max-height: 18px;
    background: rgb(255, 255, 255);
    border-radius: 5px;
    line-height: 1rem;
    margin: -0.1rem 0 0;
    padding: 2px;
}

.col-md-4.footer-right.text-left {
    display: none;
}

#menuA li:nth-of-type(1) a img {
    display: none;
}

#menuA li:nth-of-type(1) a::before {
    content: "Ligue Dauphiné-Savoie";
}

/* ---------------------------------------------
 PAGES
 ----------------------------------------------- */

.fftir-diaporama {
    max-width: 100%;
    margin: 0 auto;
}

iframe {
    margin: auto !important;
    display: block;
}

iframe:not(.flickr-embed-frame) {
    display: block !important;
    margin: 2rem auto !important;
    width: 100% !important;
    height: 410px !important;
}

/*iframe.flickr-embed-frame {
    height: 800px !important;
    text-align: center;
    width: 533px !important;
}*/


#main .post .entry-content img {
    height: auto;
    max-width: 96% !important;
    /*box-shadow: 0 0 7px rgba(0, 0, 0, .1);*/
    /* margin: 3rem auto 1rem;*/
    display: block;
}

#main .post .entry-content td img {
    margin: auto;
    max-width: 200px !important;
}

.sidebar-1 {
    margin: -16px 0;
}

article.type-post h1 {
    /*color: #8C0000;*/
    font-size: 2rem;
}

/*article.type-post h2 {
    color: #222;
    font-size: 1.8rem;
    text-align: left;
    margin-top: 2rem;
    font-weight: bold !important;
}*/
article.type-post h2, article.type-post .h2 {
    background-color: #222;
    color: white !important;
    font-size: 1.2rem;
    margin-top: 10px;
    text-align: left;
    padding: 5px 15px;
    text-transform: uppercase;
}

article.type-post h3 {
    color: #222;
    font-size: 1.2rem;
    text-align: left;
    margin-top: 1.5rem;
}


.card.fiche-athlete {
    display: inline-block;
    max-width: 32.33%;
    margin-right: 1%
}


#main .post .entry-content .fiche-athlete img {
    margin: 0;
    padding: 0;
    max-width: 100% !important;
    width: 300px;
}

.card.fiche-athlete h5 {
    font-size: 1rem;
    text-align: center;
    margin-bottom: 0;
}

/* ---------------------------------------------
   ---------------------------------------------
 COMPETITIONS
 -----------------------------------------------
 ----------------------------------------------- */
.media {
    /* background: #EAE9EC; */
    padding: .5rem;
    margin: 0.5rem 0;
    border-bottom: 1px solid #eae9ec;
}

.media.competition {
    width: 49%;
    display: inherit;
    float: left;
    margin: 0.5%;
    height: 125px;
}

.media.competition-wide {
    background: #EAE9EC;
    margin: .5rem 0.5%;
    border: 1px solid #222;
}

.media.competition.detail {
    width: 100%;
    display: block;
    float: none;
    margin: 0;
    height: 115px;
}

.media.competition.detail {
    width: 100%;
    display: block;
    float: none;
    margin: 0;
    height: 185px;
}


.media.competition figure {
    width: 32%;
    overflow: hidden;
    margin: 0 1% 0 0;
    position: relative;
    display: block;
    padding: 4px;
    float: left;
}

.media.competition figure .w-100 {
    height: 80px !important;
    max-height: 80px !important;
    max-width: 80% !important;
    padding: 3px 7px !important;
}

.media.competition figure .col-4 .w-100 {
    height: 40px !important;
    max-height: 40px !important;
    max-width: 80% !important;
    padding: 3px 7px !important;
}

.media.competition .media-body {
    width: 66%;
    display: block;
    float: right;
    min-height: 97px;
}

#main .media.competition h5 {
    font-size: .95rem;
    line-height: 1rem;
}


#main .media.competition h5 a,
#main .media.competition-wide h5 a {
    color: #8C0000 !important;
    font-size: .95rem;
}

#main .media.competition.detail img {
    max-height: 160px;
}

#main .media.competition.detail h5 a, #main .media.competition-wide.detail h5 a {
    font-size: 1.9rem;
    line-height: 2rem;
}

h1.text-danger {
    color: #8C0000 !important;
    font-size: 1.8rem;
    margin: 0.6rem 0 1rem;
}

h1.text-danger {
    color: #8C0000 !important;
    font-size: 1.8rem;
    margin: 0.6rem 0 1rem;
}

.media .actu-compet-detail {
    margin: 0;
    padding: 0;
    list-style: none;
}

#main .media .actu-compet-detail .dates {
    color: #222;
    font-size: .8rem;
}

#main .media .actu-compet-detail .lieux,
#main .media .actu-compet-detail .club_asso {
    color: #807f89;
    font-size: .8rem;
}

#main .media .actu-compet-detail .type-champ a, #main .media.competition.detail .type-champ a {
    color: #222 !important;
    font-size: 0.9rem;
    border-radius: 13px;
    display: inline-block;
    padding: 0 1rem 0 0;
}


.sidebar-1 .sidebar-actu li a {
    color: #8C0000;
    margin: 0.7rem 0;
    display: block;
    font-weight: 600;
}

.sidebar-1 ul li.active-rub {
    background: #f2f2f2;
}

.fc-day-grid-event .fc-time {
    font-weight: 700;
    display: none;
}

.fc-list-item-time {
    display: none;
}


.reseau {
    position: absolute;
    top: 0;
    width: 60%;
    padding: 2.2rem;
}

.reseau a {
    display: inline-block;
    margin: 0 0.4rem;
    color: #222;
    font-size: 1.1rem;
}


.logo_ligue {
    max-width: 100%;
}


.meta-ath {
    font-size: 0.7rem;
    text-align: center;
}

.comp-saison {
    font-weight: bold;
    color: #8C0000;
}

/* ---------------------------------------------
   ---------------------------------------------
 MEDIA QUERIES
 -----------------------------------------------
 ----------------------------------------------- */

@media (max-width: 1640px) {
    .partenaire ul li img {
        max-width: 100%;
        width: inherit;
        height: auto;
        max-height: 70px;
    }
}

@media (max-width: 1204px) {
    header .container {
        max-width: 100% !important;
    }

    .ultra-top-menu li a {
        margin: 0 0.4rem;
    }


}

@media (max-width: 992px) {

    .reseau {
        padding: 0.6rem 2.2rem;
    }

    .home-logo {
        max-height: 55px;
        margin-top: -126px;
    }

    .ultra-top-menu .col-md-4.d-md-block {
        display: none !important;
    }

    .main-menu li ul, .sub-menu li ul {
        height: auto;
    }

    .discipline.entry-meta li {
        height: 40px;
        margin: 1.5rem 0;
    }

    .actualite .actu-item {
        width: 48%;
    }

    .partenaire ul {

        display: block;

    }

    .partenaire ul li {
        max-width: 49%;
        margin: 15px .5% 0;
        display: inline-block;
        width: 49%;
        text-align: center;
    }

    .site-branding {
        height: 125px;
    }

    .site-title-heading a {
        height: 85px;
    }

    .site-title-heading a img {
        height: 65px;
        margin: 55px 0 0;
    }

    .toggle-menu {
        margin: 4.6rem 0;
    }

    .toggle-menu i {
        color: #222;
    }

    .toggle-menu span {
        color: #222;
        text-transform: uppercase;
        font-size: .7rem;
        display: block;
    }

    .partenaire ul li img {
        max-width: 120px;
        width: inherit;
        height: auto;
        max-height: 70px;
    }

    .card.fiche-athlete {
        display: inline-block;
        max-width: 49%;
        margin-bottom: 15px;
        margin-right: 1%
    }

}

@media (max-width: 769px) {


    .home .front-header {
        display: none;
    }

    .page-header {
        margin-bottom: 20px;
        height: 160px;
    }

    .site-content {
        background: rgba(255, 255, 255, 1);
    }


    .ultra-top-menu {
        text-align: center;
        z-index: 500;
    }

    .ultra-top-menu ul {
        display: none;
    }

    .recherche-top.text-right {
        width: 60%;
        padding: 0;
        float: none;
        margin: 0 20%;
    }

    .reseaux_sociaux {
        display: none;
    }

    .reseaux_sociaux_footer {
        width: 100%;
    }

    .reseaux_sociaux_footer ul {
        margin: 0;
        padding: 0;
        list-style: none;
        display: block;
        text-align: center;
    }

    .reseaux_sociaux_footer ul li {
        display: inline-block;
        margin: 4%;
        vertical-align: text-top;
        width: 6%;
        font-size: 1.8rem;
    }

    .reseaux_sociaux_footer ul li a {
        color: #222;
    }

    .reseaux_sociaux_footer ul li img {
        vertical-align: top;
        border-style: none;
        margin-top: 0.7rem;
    }

    #main .media figure img {
        max-width: 50%;
    }


    .media.competition-wide {
        margin: 0;
        background: #f5f5f5;
        border: 0;
    }

    #main .media.competition-wide figure {
        width: 40%;
        height: auto;
        margin: 0 -15px 0;
        text-align: left;
        display: inline-block;
        padding: 0;
    }

    #main .media.competition-wide .media-body {
        width: 66%;
        display: inline-block;
        float: right;
    }

    .boutique .boutique-item {

        background-size: 270px;

    }

    .partenaire ul li img {
        max-width: 120px;
        width: inherit;
        height: auto;
        max-height: 75px;
    }

    .fournisseurs ul li img {
        max-width: 106px;
        width: inherit;
        height: auto;
        max-height: 65px;
    }

    iframe {
        max-width: 100%;
        height: 360px;
    }

    table {
        max-width: 100%;
    }

    td {
        vertical-align: top;
    }


    img {
        margin-bottom: 2rem;
    }

    .entry-content img {
        max-width: 100%;
    }


    .col-md-4.footer-right.text-left {
        margin-top: 2rem;
    }

    #form-nl {
        margin: 0 1rem;
    }

    #form-nl input {
        margin-bottom: 1rem;
    }

    #main .media {
        display: block;
    }

    #main .media figure {
        width: 100%;
        height: auto;
        margin: 0 0 0;
    }

    .trouver-club #map {
        display: block;
        position: relative;
        overflow: hidden;
        border: 1px solid #ccc;
        width: 340px;
        max-width: 100%;
        height: 340px;
        margin: auto;
        float: none;
    }

    .media.competition {
        width: 100%;
        display: inherit;
        float: none;
        margin: 0;
        height: 100px;
        margin-bottom: 6px;
    }

    .media.competition figure {
        width: 32% !important;
    }

    .discipline.entry-meta li {

        margin: 2rem 0;
    }

    #main .media figure {
        width: 100%;
        height: auto;
        margin: auto;
        text-align: center;
        display: block;
        max-width: 200px;
    }

    #main .media img, #main table {
        max-width: 100%;
        height: auto;
        max-height: none;
        width: auto;
    }

    .sidebar-1 ul li {
        padding: 0.7rem 0;
        font-size: 1.2rem;
        text-transform: uppercase;
        font-weight: 300;
    }

    .sidebar-1 ul ul.sub-rubrique li {
        border: 0;
        font-size: 1rem;
        padding: 0.4rem .8rem;
    }


    .actualite .actu-item {
        width: 48%;
    }

    /** ---------------------------------------
    GESTION DES TABLEAUX
    ------------------------------------------- */
    table {
        border: 0;
    }

    table caption {
        font-size: 1.3em;
    }

    table thead {
        display: none;
    }

    table tr {
        border-bottom: 0 solid #888;
        /*display: block;*/
        margin-bottom: .825em;
        height: inherit !important;
    }

    table td {
        /* border-bottom: 0 solid #ddd;
        display: block;*/
        font-size: .8em;

        /*width: inherit !important;
        height: inherit !important;*/
    }

    table tr td:nth-of-type(1) {
        width:33% !important;
    }

    table td img {
        width: 100% !important;
        max-width: 480px !important;
        height: auto;
    }

    table td:before {
        content: attr(data-label);
        float: left;
        font-weight: bold;
        text-transform: uppercase;
    }

    table td:last-child {
        border-bottom: 0;
    }

    .site-content table td {

        border: 0;
    }

    .media a p {
        padding-right: 0rem;
    }

    .main-menu li ul li a img, .menu_categorie li img {
        margin-right: 15px;
        margin-bottom: 0;
    }

    .menu_categorie li {
        font-size: .8rem;
    }
}

@media (max-width: 420px) {

    .nom-ligue {
        display: none;
    }

    .site-title {

        height: 140px;
    }

    .site-title-heading a span {
        opacity: 0;
        display: none;
    }

    iframe {
        max-width: 100%;
        height: 220px;
    }

    .card.fiche-athlete {
        display: inline-block;
        max-width: 90%;
        margin: 0 5% 15px;
    }

    table td img {
        width: 100% !important;
        max-width: 140px !important;
        margin: auto;
        display: block;
        height: auto;
    }

    .mt-0.text-left {
        text-align: center !important;
    }

    .discipline li p {

        top: 30px;
        background: #fff;
        color: #222 !important;
    }

}
