/**
 * Conteneurs génériques
 */
.content-block,
.clickable-content-block{
        color:#fff;
        padding:15px;
        margin-bottom:5px;
        position:relative;
        /*z-index: 2;*/
}
.content-block > *,
.clickable-content-block > *{
        position:relative;
}
.content-block:before,
.clickable-content-block:before {
        content:'';
        position:absolute;
        width: 100%; 
        height: 100%;
        top: 0; 
        left: 0;
        clip-path: polygon(100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 0);
        /*z-index: -1;*/
        background-color: var(--main-color);
}
.clickable-content-block:before{
        transition: filter .2s;
}
.clickable-content-block:hover:before{
        filter: brightness(.85);
}
.content-block svg path {
        fill:#fff;
}
.content-block h4 svg {
        height:18px;
        margin-right:5px;
}
.title-block {
        color:#fff;
        padding:8px 15px;
        margin-bottom:1em;
        position:relative;
        overflow: hidden;
}
.title-block h4 {
        font-weight:500;
        margin:0;
}
.title-block:after {
        content:'';
        position:absolute;
        width: 100%; 
        height: 100%;
        top: 0; 
        left: 0;
        clip-path: polygon(100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 0);
        z-index: -1;
        background-color: var(--main-color);
}
.title-block svg {
        line-height:0;
}
.tags {
        display:flex;
        flex-direction:row;
        column-gap: 5px;
}
.tags .tag {
        background: var(--current-page-color);
        color: var(--current-page-color-inverse);
        display: inline-block;
        padding: 0px 7px;
        line-height: 1.3;
        border-radius: 6px;
        font-size: .7em;
        font-weight: 700;
        font-family: Faro;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        min-width: 60px;
        text-align: center;
        border: solid 2px var(--current-page-color);
}
.tags a.tag:hover {
        background: #fff;
        color: var(--default-text-color);
}
/*.results .result .tag {
        background: var(--light-bg-color);
        color: var(--default-page-color);
}*/
.tags .tag a,
.tags .tag a:visited,
.tags .tag a:hover{
        color:var(--current-page-color-inverse);
}
div#comments {
        margin-top: 40px;
        border-top: solid 3px;
        margin-bottom: 20px;
}

/*
 * Bandeau
 */
#bandeau-entete {
        position:relative;
}
#bandeau-entete.with-img {
        color:#fff;
        min-height:300px;
}
#bandeau-entete #bandeau-entete-img {
        position:absolute;
        left:0;
        top:0;
        height:100%;
        width:100%;
        overflow:hidden;
        object-fit:cover;
        z-index:-2;
}
#bandeau-entete #bandeau-entete-img.has-color-overlay {
        filter: grayscale(100%);
}
#bandeau-entete .entry-title {
        padding-top:50px;
        margin-bottom:0;
}
#bandeau-entete.with-img .entry-title {
        padding-top:250px;
}
#bandeau-entete.with-img .bandeau-entete-sous-titre {
        padding-bottom:70px;
        max-width:43em;
}
#bandeau-entete.with-img:before {
        content: '';
        position: absolute;
        top:0;
        left: 0;
        right: 0;
        height: 100px;
        background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
        opacity: 0.5;
        pointer-events:none;
        z-index:-1;
}
#bandeau-entete.with-img:after {
        content: '';
        position: absolute;
        bottom:0;
        left: 0;
        right: 0;
        height: 300px;
        background: linear-gradient(-180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
        opacity: 0.15;
        pointer-events:none;
        z-index:-1;
}
#bandeau-entete.with-img .color-overlay {
        position:absolute;
        top:0;
        left:0;
        right:0;
        bottom:0;
        mix-blend-mode: multiply;
        z-index: -1;
        pointer-events:none;
        background:var(--current-page-color);
}

/*.page-blog #bandeau-entete.with-img  .color-overlay {
        background-color:var(--blog-color);
}
.page-materiel-scenique #bandeau-entete.with-img .color-overlay {
        background-color:var(--materiel-color);
}
.page-boite-a-outils #bandeau-entete.with-img .color-overlay {
        background-color:var(--outils-color);
}
.page-annuaire #bandeau-entete.with-img .color-overlay {
        background-color:var(--annuaire-color);
}
.page-annonces #bandeau-entete.with-img .color-overlay {
        background-color:var(--annonces-color);
}
.page-agenda #bandeau-entete.with-img .color-overlay {
        background-color:var(--agenda-color);
}*/

/**
 * Fil d'ariane
 */
.breadcrumb {
        font-size:.75rem;
        display:block;
}
.breadcrumb a {
        color:inherit;
}
.breadcrumb a:hover {
        color:var(--current-page-color);
}
.breadcrumb .current-item {
        font-weight:bold;
}

/**
 * Pages statiques
 */
.static-page #page-content {
        position:relative;
}
.static-page #page-content:after {
        content: '';
        position: absolute;
        top:30px;
        left: 0px;
        right: -160px;
        height: 460px;
        background: url(../img/static-page-bg.svg) no-repeat;
        background-size: contain;
}
.static-page .stripes {
        margin-top:10px;
}
.static-page h1.entry-title {
        margin-bottom: 0.5em;
}


/**
 * Pages de recherche
 */
.search-page .search-col{
        position: relative;
}
.search-page .search-col .search-col-inner {
        padding-bottom:20px;
}
.search-page .search-col .search-col-inner.fixed {
        position:fixed;
}
.search-page .search-col .search-block {
        background:var(--main-color);
        color:#fff;
        padding:15px;
        margin-bottom:5px;
        position:relative;
}
.search-page .search-col .search-block:not(:last-child):after {
        content:none;
}
.search-page .search-col h4 {
        margin-bottom: 6px; 
        margin-top:20px !important; 
}
.search-page .search-col h4:first-child {
        margin-top:0px !important;
}
.search-page .search-col h4.search-label {
        font-weight:900;
        letter-spacing: .03em;
}
.search-page .facetwp-facet {
        margin-bottom:0 !important;
        font-size:.8em;
        position: relative;
}
.search-page .facetwp-facet.is-loading {
        opacity:1;
}
.search-page .search-col .facetwp-input-wrap {
        display: block;
}
.search-page .facetwp-type-proximity .facetwp-radius-wrap {
        position: absolute;
        top: -21px;
        right: 0;
        text-align: right;
        display: block;
        text-transform: uppercase;
        font-family: 'Faro';
        font-weight: 700;
        font-size: 0.85em;
}
.search-page .facetwp-type-proximity .facetwp-radius-wrap .facetwp-radius-label:hover {
        text-decoration: underline;
        cursor:pointer;
}
.search-page .facetwp-type-proximity .facetwp-radius-wrap:before {
        content: 'Rayon : ';
        display: inline-block;
        font-family: 'Faro';
        font-weight: 100;
        text-transform: uppercase;
        margin-right: 4px;
}
.search-page .facetwp-type-proximity .facetwp-radius-wrap .facetwp-radius-label {
        display: inline-block;
}
.search-page .facetwp-type-proximity .facetwp-radius-wrap .facetwp-radius-label:after {
        content: '';
        display: inline-block;
        height : 0;
        width : 0;
        border-top: 4px solid #ffffff8a;
        border-right: 4px solid transparent;
        border-left: 4px solid transparent;
        position: relative;
        top: -1px;
}
.search-page .facetwp-type-proximity .facetwp-radius-wrap .facetwp-radius-slider-wrap {
        position: absolute;
        top: 15px;
        right: -20px;
        background: #ffffff;
        padding: 4px 5px 0px 5px;
        box-shadow: 1px 1px 8px 1px rgb(0 0 0 / 30%);
        border-radius: 8px;
        display:none;
}
.search-page .facetwp-type-proximity .location-results {
        z-index: 10;
}
.search-page .facetwp-type-proximity .location-results .location-result .result-main {
        font-size: 1.1em;
        color: #000;
        font-weight: bold;
        font-family: 'Faro';
}
.search-page .facetwp-type-proximity .location-results .location-attribution {
        display:none;
}
.search-page .facetwp-map-filtering { 
        display: none; 
}
.search-page .search-col .fs-wrap {
        width:100%;
}
.search-page .search-col .advanced-search-btn {
        cursor: pointer;
        margin-top:15px !important;
        margin-bottom:5px !important;
        user-select:none;
}
.search-page .search-col .advanced-search-btn.opened { 
        opacity:.85;
}
.search-page .search-col .advanced-search-btn .advanced-search-btn-label {
        text-transform: none;
        font-size: .9rem;
        border-bottom: solid 1px rgba(255, 255, 255, .75);
        display: inline-block;
}
.search-page .search-col .advanced-search-btn .bi {
        font-size:.8rem;
}
.search-page .search-col .advanced-search {
        display:none;
        padding: 11px 15px 15px;
        background: #212c44;
        margin: 10px -15px -15px;
}
.search-page .search-col .advanced-search .advanced-search-inner {
        opacity:0;
}
.search-page .search-col .advanced-search h4 {
        font-size: 0.9em;
        margin-bottom: 2px !important;
        margin-top: 0px !important;
}
.search-page .search-col .advanced-search .facetwp-facet {
        margin-bottom:12px !important;
}
.search-page .search-col .advanced-search .facetwp-facet:last-child {
        margin-bottom:6px !important;
}
.search-page .search-col .search-block .fs-wrap {
        color: var(--default-text-color);
}
.search-page .facetwp-pager > a {
        border:solid 1px var(--main-color);
        color:var(--main-color);
        border-radius:8px;
        padding:2px 20px 1px 20px;
        font-family:Faro;
        font-weight:900;
        display:inline-block;
        margin-right: 6px;
        cursor:pointer;
}
.search-page .facetwp-pager > a:last-child {
        margin-right:0;
}
.facetwp-pager > a.active {
        background:var(--main-color);
        color:#fff;
}
.search-page .results-header {
        padding-bottom:5px;
        margin-bottom:20px;
        border-bottom:solid 4px var(--main-color);
        display: flex;
        justify-content: space-between;
}
.search-page .results-footer {
        margin-top:25px;
        padding-top:10px;
        border-top:solid 4px var(--main-color);
        display: flex;
        justify-content: space-between;
}
.search-page .results-header .facetwp-facet-nombre_resultats {
        font-family: 'Faro';
        font-size: .9em;
}
.search-page .results-header .display-modes {
        display:flex;
        flex-direction:row;
        column-gap: 5px;
}
.search-page .results-header .display-modes .display-mode {
        margin-right:10px;
        cursor:pointer;
        font-family: Faro;
        font-size: .9em;
        display: flex;
        align-items: center;
        column-gap: 7px;
}
.search-page .results-header .display-modes .display-mode.active {
        color:var(--current-page-color);
}
.search-page .results-header .display-modes .display-mode .display-mode-label {
        position: relative;
        top: 1px;
}
.search-page .results-header .display-modes .display-mode svg {
        width:25px;
}
.search-page .results-header .display-modes .display-mode.active path {
        fill:var(--current-page-color);
}
.search-page .results-header .display-modes .display-mode.display-map svg {
        width:28px;
        position:relative;
        top:-1px;
}
.search-page .results-footer .facetwp-type-pager select {
        /*float:right;*/
        font-size: 1em;
        font-weight: 900;
        font-family: 'Faro';
        border: solid 1px var(--main-color);
        line-height: 1;
        border-radius: 8px;
}
.search-page .results-col .results {
        position:relative;
        min-height:50px;
}
.search-page .results-col .results .result {
        margin-bottom:1.5em;
        position:relative;
        display:flex;
}
.search-page .results-col .results .result:last-of-type {
        margin-bottom: 0;
}
.search-page .results-col .result:before,
.search-page .results-col .result:after {
        content:'';
        position:absolute;
        right:0;
        top:0;
        background:var(--current-page-color);
}
.search-page .results-col .result:before {
        width:4px;
        height:60px;
}
.search-page .results-col .result:after {
        height:4px;
        width:60px;
}
.search-page .results-col .results .result-title {
        margin-bottom:0;
}
.search-page .results-col .results .result-title a {
        color:inherit;
}
.search-page .results-col .results .result-title a:hover {
        color:var(--current-page-color);
}
.search-page .results-col .results .result-subtitle {
        font-family:Faro;
        /*font-weight:300;*/
        font-size:.8em;
        margin-bottom: 8px;        
}
.search-page .results-col .results .result-subtitle .city {
        font-weight:700;
}
.search-page .results-col .results .result-excerpt {
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 2; /* number of lines to show */
                line-clamp: 2; 
        -webkit-box-orient: vertical;
        overflow:hidden;
        font-size:.8em;
        max-width: 45em;
}
.search-page .results-col .results .result-location {
        font-family:Faro;
        margin-top:5px;
}
.search-page .results-col .results .tags {
        margin-top:5px;
}
.search-page .results-col .results .result-picture {
        padding:10px;
        width:25%;
        flex-shrink: 0;
}
.search-page .results-col .results .result-picture a {
        width: 100%;
        height: 100%;
        display:block;
}
.search-page .results-col .results .result-picture img {
        object-fit:cover;
        width: 100%;
        height: 100%;
}
.search-page .results-col .results.results-grid .result-picture img {
        object-fit:contain;
}
.search-page #facetwp-map {
        width:100% !important;
        height:500px !important;
}
.search-page #facetwp-map .gm-style,
.search-page #facetwp-map .gm-style .gm-style-iw-c {
        font-size: 1rem;
        font-weight:inherit;
        font-family:Ubuntu;
        line-height:inherit;
}
.search-page #facetwp-map .gm-style .gm-style-iw-c {
        max-width: 490px !important;
}
.search-page #facetwp-map .gm-style .gm-style-iw-c img {
        float: left;
        margin-right: 15px;
}
 /* pour enlever les mentions légales de gmap (a voir..)
.gm-style .gmnoprint,
.gm-style .gm-style-cc {
        display: none;
}
.gm-style img[alt="Google"] {
    display: none;
} */
 
 
/*
 * Pages single
 */
/*.left-col .left-col-header {
        position:relative;
        text-transform:uppercase;
        font-family:Faro;
        font-size:1.1em;
        padding-top:25px;
        margin-bottom:20px;
}
.left-col .left-col-header .icon {
        position:absolute;
        top:0px;
        right:-32px;
        width:65px;
}
.left-col .left-col-header svg line {
        stroke:var(--current-page-color);
}*/
.single h1.entry-title {
        margin-top:-8px;
}
.single .author-block{
        display: grid;
        grid-template-columns: 90px 1fr;
        align-items: center;
        margin-bottom: 20px;
}
.main-col .author-block {
        padding-top: 20px;
        margin-top: 2em;
        border-top: 2px solid var(--main-color);
}
.single .author-block .author-picture{
        width: 75px;
        height: 75px;
        object-fit: cover;
        border-radius: 100%;
        grid-column: 1;
}
.single .author-block .author-info{
        grid-column: 2;
        margin: 0;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
}
.single .author-block .author-name{
       font-weight: bold;
       text-transform: uppercase;
       font-family: 'Faro';
       position: relative;
}
.single .author-block .author-description{
       font-size: .8rem;
       position: relative;
       line-height: .9;
       padding-bottom: 9px;
}
.single .author-block .separator {
        margin-top:2px;
        margin-bottom:6px;
        width: 50px;
        height: 5px;
        background-color: var(--main-color);
}
.single .author-block .author-quote{
        display: block;
       font-size: .8rem;
}

.right-col .right-col-header {
        font-family:Faro;
        /*font-weight:bold;*/
        text-transform:uppercase;
        font-size: 18px;
}
.right-col .page-info {
        margin:1em 0;
}
.right-col .page-info label,
.left-col .page-info label {
        display:block;
        text-transform:uppercase;
        font-family:Faro;
        font-size:.9em;
        margin-top:10px;
}
.right-col .page-info .tags {
        display:inline-block;
}
.right-col .page-info .tags .tag {
        margin-right:5px;
}
.right-col .author-block {
        padding-bottom:1em;
        margin-bottom:1.5em;
        border-bottom:solid 2px var(--main-color);
}
/*.right-col .author-block:after {
        content:'';
        position:absolute;
        bottom:0;
        right:0;
        width:25px;
        height:25px;
        background:url(../img/white-corner.svg) no-repeat;
        background-size:contain;
}
.right-col .author-block .author-info {
        margin: 0;
}*/
/*.right-col .author-block .author-name {
        padding:5px 10px 0px 10px;
        font-family:Faro;
        text-transform:uppercase;
        font-size:1em;
        font-weight:100;
}
.right-col .author-block .author-description {
        padding:0px 10px 5px 10px;
        font-size:.8em;
}
.right-col .author-block .author-quote {
        display: none;
        font-size:.8em;
}*/
/*.right-col .author-block a:visited{
        color:var(--current-page-color);
}
.right-col .author-block a:hover{
        color:var(--main-color-inverse);
}*/ 
.single .share {
        margin-top:1.5em;
}
.single .share h4 {
        font-weight:900;
        margin-bottom:0;
        font-size:.8rem;
}
.single .share h4 + .sharethis-inline-share-buttons {
        margin-top:5px !important; 
}
.single .right-col .share {
        margin-bottom:2em;
}
.single .main-col .share{
        display: none; /* mobile only */
        margin-top: 15px;
}
.single ul.content-contact {
        list-style:none;
        padding:0;
        margin:0;
        margin-top:1em;
        margin-bottom:1em;
        font-size:.9em;
}
.single ul.content-contact li {
        margin-bottom:1em;
}
.single ul.content-contact li label {
        font-weight:bold;
        text-transform:uppercase;
        display:block;
        font-family:Faro;
        line-height:1.1;
}

.single #st-1,
.single #st-2{
        text-align: start;
        margin: 15px 0;
}


/*
 * Slider horizontal
 */
.horizontal-slider {
        overflow:hidden;
        padding-left:45px;
        padding-right:45px;
        position:relative;
        margin-top: 10px;
}
.horizontal-slider-inner {
        display: inline-flex;
        column-gap: 52.5px;
        transition:transform .5s;
}
.horizontal-slider .btn-next,
.horizontal-slider .btn-previous {
        position: absolute;
        top: 0;
        bottom: 0;
        width: 90px;
        padding: 15px;
        align-items: center;
        display:flex;
        z-index: 4;
}
.horizontal-slider .btn-previous {
        left:0;
}
.horizontal-slider .btn-next {
        right: 0;
}
.horizontal-slider.overflow-left .btn-next,
.horizontal-slider.overflow-right .btn-previous{
        opacity: 0;
        cursor: auto;
}
.horizontal-slider.overflow-right.overflow-left .btn-next,
.horizontal-slider.overflow-right.overflow-left .btn-previous{
        opacity: 1;
}

.horizontal-slider .btn-next svg,
.horizontal-slider .btn-next:after,
.horizontal-slider .btn-previous svg,
.horizontal-slider .btn-previous:after {
        opacity:1;
        transition: .2s;
        cursor: pointer;
}
.horizontal-slider.overflow-right .btn-next svg path,
.horizontal-slider.overflow-right .btn-previous svg path,
.horizontal-slider.overflow-right .btn-next svg rect,
.horizontal-slider.overflow-right .btn-previous svg rect {
        transition:all .2s;
}
.horizontal-slider .btn-previous svg path,
.horizontal-slider .btn-next svg path,
.horizontal-slider.overflow-right .btn-next svg path,
.horizontal-slider.overflow-right .btn-previous svg path {
        fill:#fff;
}
.horizontal-slider.overflow-right .btn-next svg:hover path,
.horizontal-slider.overflow-right .btn-previous svg:hover path {
        fill: var(--current-page-color);
        opacity: 75%;
}
.horizontal-slider .btn-previous svg rect,
.horizontal-slider .btn-next svg rect,
.horizontal-slider.overflow-right .btn-next svg rect,
.horizontal-slider.overflow-right .btn-previous svg rect {
        fill: var(--current-page-color);
        stroke: var(--current-page-color);
}
.horizontal-slider.overflow-right .btn-next svg:hover rect,
.horizontal-slider.overflow-right .btn-previous svg:hover rect {
        fill:transparent;
        opacity: 75%;
}
.horizontal-slider .horizontal-slider-item {
        position:relative;
}
.horizontal-slider-item .article-img-container{
        position: relative;
        overflow: hidden;
        transition: .3s;
}
.horizontal-slider-item .article-img-container img{
        position: relative;
        transition: .3s;
        object-fit: contain;
        height: 100%;
}
.horizontal-slider-item .article-img-container:after{
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: var(--current-page-color);
        content: '';
        mix-blend-mode: multiply;
        opacity: 0;
        transition: opacity .3s;
        pointer-events: none;
}
.horizontal-slider-item:hover .article-img-container img{
        filter: grayscale(1);
        transform: scale(1.05);
}
.horizontal-slider-item:hover .article-img-container:after{
        opacity: 1;
}
.horizontal-slider-item:hover h4{
        color: var(--current-page-color);
        transition: .3s;
}
.breadcrumbs {
        margin-top: 1em;
        margin-bottom: 2em;
}
.content-post-meta {
        font-family: 'Faro';
        font-size: 0.9em;
        line-height: 1;
}
.content-post-meta .content-post-date{
        font-weight: bold;
}
.single-map-block > label {
        font-family:Faro;
        display:block;
        font-size:.9em;
        line-height:1.2;
}
.single-map-block .acf-map {
        width: 100%;
        height: 200px;
        border: #c3c3c3 solid 1px;
        margin: 1em 0;
}
.single-map-block .acf-map img {
        max-width: inherit !important;
}
.single-map-block .ccn-btn {
        margin-top:1em;
        width:100%;
        padding-top:1px;
        display:none;
}
.is-mobile .single-map-block .ccn-btn {
        display:block;
}
.single-map-block .ccn-btn .ccn-btn-icn {
        top:-2px;
}


/*
 * Audio player
 */
.audioplayer {
        background: none;
        border: none;
        font-family:Faro;
        margin:0;
}
.audioplayer:not(.audioplayer-playing) .audioplayer-playpause {
        border:none;
        background:#fff;
}
.audioplayer:not(.audioplayer-playing) .audioplayer-playpause a {
        border-top: 12px solid transparent;
        border-bottom: 12px solid transparent;
        border-left: 18px solid var(--main-color);
}
.audioplayer-playing .audioplayer-playpause:hover {
        background: rgb(255 255 255 / 10%);
}
.audioplayer-time {
        color: #fff;
        font-size:1em;
}
.audioplayer-volume {
        display:none;
}
.audioplayer-playing .audioplayer-playpause {
        border-color:var(--current-page-color);
        background:var(--current-page-color)
}
.audioplayer-playing .audioplayer-playpause a::before,
.audioplayer-playing .audioplayer-playpause a::after {
        background:#fff;
}
.audioplayer-mute .audioplayer-volume-button a,
.audioplayer-bar-played {
        background:var(--current-page-color);
}
.audioplayer-mute .audioplayer-volume-button a:before {
        border-right-color:var(--current-page-color);
}
.audioplayer-bar,
.audioplayer-bar::before,
.audioplayer-bar-loaded,
.audioplayer-bar-played {
        height:20px;
}
.audioplayer-bar-played::after {
        display:none;
}
.audioplayer-bar::before,
.audioplayer-bar > div {
        top:0;
}

/*
* Work in progress
*/
.work-in-progress-container{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
        margin: 80px 0;
}
.work-in-progress-container svg{
        width: 250px;
}
.work-in-progress-container svg path,
.work-in-progress-container svg rect{
        fill: var(--default-text-color);
}