/************************************************/
/**                                            **/
/**                   SINGLE                   **/
/**                                            **/
/************************************************/

.single .content-area {float: none; padding-right: 0; border: none;}
.single .container {padding: 0; max-width: 100% !important; width: 100% !important;}




/* ============================================
   SINGLE COMMUNES
   ============================================ */

.pat-card-voir { font-size: 1.3rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--couleur-cta); margin-top: auto; padding-top: 1rem; display: flex; align-items: center; gap: .5rem; }

/* ===== PANEL SLIDE-IN PATRIMOINE ===== */
.single-communes .pat-panel { position: fixed; inset: 0; z-index: 99999; display: flex; visibility: hidden; pointer-events: none; transition: visibility 0s .38s; }
.single-communes .pat-panel.is-open { visibility: visible; pointer-events: auto; transition: visibility 0s 0s; }
.single-communes .pat-panel-overlay { position: absolute; inset: 0; background: rgba(20,16,8,.6); opacity: 0; transition: opacity .38s; cursor: pointer; }
.single-communes .pat-panel.is-open .pat-panel-overlay { opacity: 1; }
.single-communes .pat-panel-drawer { position: relative; margin-left: auto; width: min(72rem, 100%); height: 100%; background: var(--couleur-background); overflow-y: auto; transform: translateX(100%); transition: transform .4s cubic-bezier(.4,0,.2,1); display: flex; flex-direction: column; }
.single-communes .pat-panel.is-open .pat-panel-drawer { transform: translateX(0); }
.single-communes .pat-panel-close { position: absolute; top: 1rem; left: 1rem; z-index: 2; background: var(--couleur-texte); color: #fff; border: none; width: 4rem; height: 4rem; font-size: 2.5rem; cursor: pointer; transition: background 200ms; align-items: center; justify-content: center; align-self: flex-start; margin: 1rem 0 0 1rem; }
.single-communes .pat-panel-close:hover { background: var(--couleur-cta); }
.single-communes .pat-panel-photo { width: 100%; max-height: 35rem; overflow: hidden; flex-shrink: 0; }
.single-communes .pat-panel-photo img { width: 100%; height: 100%; object-fit: cover; }
.single-communes .pat-panel-content { padding: 2.5rem 3rem 4rem; }
.single-communes .pat-panel-titre { font-size: 2.4rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; color: var(--couleur-texte); margin: 0 0 2rem; }
.single-communes .pat-panel-texte { font-size: 1.5rem; line-height: 1.8; color: var(--couleur-texte); }
.single-communes .pat-panel-texte p { margin-bottom: 1.2rem; }
.single-communes body.pat-noscroll { overflow: hidden; }

.single-communes .sc-visites {background-color: var(--couleur-background-dark); padding: 5rem 0;}
.single-communes .single-commune-galerie .glp-card {cursor: auto;}
.single-communes .single-commune-galerie .glp-card:hover .glp-card-bg {transform: none;}

.single-communes .commune-jeu-de-piste .jeu-de-piste-texte, .single-communes .commune-jeu-de-piste .jeu-de-piste-img {position: relative;}
.single-communes .commune-jeu-de-piste .jeu-de-piste-texte {background-color: #b6d483; width: 50%; height: 50rem; align-items: center; justify-content: center; top: -4rem; left: 4rem; z-index: 1; flex-direction: column; border: 3rem solid var(--couleur-background); overflow: hidden;}
.single-communes .commune-jeu-de-piste .jeu-de-piste-texte::after {content: url(/wp-content/uploads/2026/03/motif-blanc.svg); width: 45rem; height: 45rem; position: absolute; bottom: 0; right: -20rem; opacity: .3; z-index: -2;}
.single-communes .commune-jeu-de-piste .jeu-de-piste-texte h2 {font-size: 2rem; margin-top: 0;}
.single-communes .commune-jeu-de-piste .jeu-de-piste-texte a {padding: 4rem 6rem;}
.single-communes .commune-jeu-de-piste .jeu-de-piste-texte span {font-size: 2.8rem; text-transform: uppercase; letter-spacing: .3rem; font-weight: 600; position: relative; display: inline-block;}
.single-communes .commune-jeu-de-piste .jeu-de-piste-texte span i { transition: all 230ms ease-in-out;}
.single-communes .commune-jeu-de-piste .jeu-de-piste-texte span::after {content: ''; background-color: #90c13d; width: 98%; height: 90%; position: absolute; left: 1rem; bottom: -0.6rem; z-index: -1;}
.single-communes .commune-jeu-de-piste .jeu-de-piste-img {width: 50%; background-repeat: no-repeat; background-size: cover; background-position: center; top: 4rem; right: 4rem;}

.single-communes .section-bloc-infos h2 {font-weight: 700; letter-spacing: .5rem;}

.commune-intro {background-color: #fff;}
.commune-liens-utiles h2 {margin-top: 0;}
.commune-liens-utiles .commune-liens a {background-color: #fff;}
.commune-liens-utiles.bloc-brochures .brochure-list {margin-top: 3rem;}
.commune-liens-utiles.bloc-brochures .brochure-infos {padding: 1.5rem;}
.commune-liens-utiles .commune-liens a span { color: var(--couleur-cta); margin-top: auto;  transition: all 250ms ease-in-out; }
.commune-liens-utiles .commune-liens a span i {padding-right: .6rem; font-size: 1.4rem; transition: inherit;}
.commune-liens-utiles .brochure-item .brochure-thumbnail .img-contain {object-fit: contain; width: 15rem; margin: auto;}

.patrimoines-grid {gap: 2rem; flex-wrap: wrap;}
.patrimoines-grid .pat-card { background: #fff; overflow: hidden; flex-direction: column; cursor: pointer; transition: var(--transition); }
.pat-card:hover, .pat-card.is-active { box-shadow: var(--box-shadow); transform: translateY(-.3rem); }
.pat-card.is-active { outline: 2px solid var(--couleur-cta); }
.pat-card-media { height: 20rem; overflow: hidden; background-color: var(--couleur-background-dark); flex-shrink: 0; }
.pat-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 230ms; }
.pat-card:hover .pat-card-media img { transform: scale(1.05); }
.pat-card-body { padding: 1.5rem 2rem 2rem; flex: 1; display: flex; flex-direction: column; }
.patrimoines-grid .pat-card-body h3 { font-size: 1.8rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06rem; margin: 0 0 .8rem; color: var(--couleur-texte); }
.patrimoines-grid .pat-card-body .descriptif-texte, .patrimoines-grid .pat-card-body .pat-content { font-size: 1.4rem; line-height: 1.7; color: var(--couleur-texte); }
.patrimoines-grid .pat-card-body .descriptif-texte p:first-of-type {margin-top: 0;}

.patrimoine-columns {gap: 2rem 8rem;}
.patrimoine-columns .patrimoine-liste {flex: 1;}
.patrimoine-columns .patrimoine-liste h2 {margin-top: 0; margin-bottom: .8rem;}

#map-patrimoines { border-radius: 0; }
#map-patrimoines .leaflet-popup .leaflet-popup-content { aspect-ratio: 1/1; width: 18rem; position: relative; border: 1px solid #fff; }
#map-patrimoines .leaflet-popup .leaflet-popup-content::after { content: ''; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background-color: rgba(0,0,0,.5); }
#map-patrimoines .leaflet-popup .popup-content { height: 100%; padding: 10px; display: flex; flex-direction: column; justify-content: flex-end; background-size: cover; background-repeat: no-repeat; }
#map-patrimoines .leaflet-popup .leaflet-popup-content-wrapper { border-radius: 0; }
#map-patrimoines .leaflet-popup .leaflet-popup-content-wrapper .leaflet-popup-content { margin: 0; }
#map-patrimoines .leaflet-popup .popup-content h3 { color: #fff; margin: 0; font-size: 1.5rem; font-weight: 700; z-index: 1; }
#map-patrimoines .leaflet-popup a.leaflet-popup-close-button { color: #fff !important; z-index: 2; }
#map-patrimoines { z-index: 0; }
.pat-pagination { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2.5rem; align-items: center; }
.pat-pagination a, .pat-pagination span { text-decoration: none; padding: .8rem 1.2rem; text-transform: uppercase; font-size: 1.3rem; cursor: pointer; }
.pat-pagination a.active { background-color: var(--couleur-cta); color: #fff; }
.pat-pagination span.dots { cursor: default; }

@media (hover: hover) {
    .commune-liens-utiles .commune-liens a:hover, .commune-liens-utiles .commune-liens a:hover i {color: var(--couleur-texte);}
    .commune-liens-utiles .commune-liens .brochure-item:hover span {color: var(--couleur-texte);}
    .single-communes .commune-jeu-de-piste .jeu-de-piste-texte a:hover {transform: translate(1rem, .5rem);}
    .single-communes .commune-jeu-de-piste .jeu-de-piste-texte a:hover span i {transform: translateX(1.5rem);}
}

@media (min-width: 768px)  { 
    .patrimoines-grid .pat-card {width: calc(50% - 1rem);}
}

@media (min-width: 1025px) {
    .patrimoines-grid {padding-right: 6rem; padding-top: 3rem;}
    #map-patrimoines {width: 40%; top: 0; position: sticky; align-self: flex-start; height: 100vh;  min-height: 60rem;  transform: none; }
    .single-communes .section-bloc-infos h2 {font-size: 2.5rem;}
}


/* ============================================
   SINGLE REDESIGN — tous types d'offres
   ============================================ */


.single .single-hero {background-repeat: no-repeat; background-size: cover; background-position: center; margin-top: 2rem; border-radius: 2.5rem; overflow: hidden;}
.single .sr-hero-content {flex-direction: column; padding-top: 3rem;}
.single .sr-hero-content h1 {font-weight: 900; letter-spacing: .3rem; text-align: left; margin: 0;}
.single .sr-hero-content h2 { display: block; font-weight: 500; letter-spacing: .1rem; margin-bottom: 0; position: relative; padding-left: 4rem; order: -1; font-size: 1.8rem;}
.single .sr-hero-content h2::before {content: ''; position: absolute; background-color: var(--couleur-texte); left: 0;  top: 50%; transform: translateY(-50%); width: 3rem; height: .2rem;}
.single .sr-hero-content .entete-breadcrumb span, .single .sr-hero-content .entete-breadcrumb a {color: var(--couleur-texte);}

.single .sr-sidebar .sr-reservation {margin-top: 3rem; flex-wrap: wrap;}
.single .sr-sidebar .sr-reservation .reservation-infos {flex: 1; flex-direction: column; align-items: flex-start; gap: .8rem;}
.single .sr-sidebar .sr-reservation .reservation-infos span + span {width: 100%;}
.single .sr-sidebar .sr-reservation .sr-contact-title {margin-bottom: 1.2rem;}

.single .sr-hero-commune {font-size: 1.4rem; font-weight: 700; color: white; background-color: var(--couleur-cta); padding: .5rem 1rem; margin-top: .5rem; display: inline-block; max-width: max-content;}
.single .sr-hero-commune i {margin-right: .3rem;}
.single .sr-breadcrumb-sep {color: rgba(255,255,255,.4); margin: 0 .2rem;}
.single .sr-body {display: flex; flex-direction: column; gap: 4rem; padding: 3rem 0; align-items: flex-start;}
.single .sr-main {width: 100%; display: flex; flex-direction: column; gap: 4rem;}

.single .sr-sidebar {width: 100%;}
.single .sr-gallery {position: relative; display: flex; flex-direction: column; gap: .5rem;}
.single .sr-gallery a {width: 100%;}
.single .sr-gallery .main-image a img {height: 45vh; object-fit: cover; width: 100%;}
.single .sr-gallery .thumbnail-images img {height: 15rem; object-fit: cover; width: 100%;}
.single .sr-gallery .thumbnail-images a {display: block; overflow: hidden; transition: opacity 200ms; height: 100%;}
.single .sr-gallery .thumbnail-images a:hover {opacity: .75;}
.single .sr-gallery .thumbnail-images .slick-list {margin: 0 -.25rem;}
.single .sr-gallery .thumbnail-images .slick-slide {margin: 0 .5rem;}
.single .sr-gallery .btn-single-agenda {position: absolute; top: calc(45vh - 4.6rem); left: 0; right: 0; z-index: 3; display: flex; justify-content: flex-end; pointer-events: none;}
.single .sr-gallery .btn-single-agenda .slick-arrow {width: 4.8rem; height: 4.8rem; background-color: var(--couleur-background); border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background-color 200ms ease; font-size: 0; position: static; transform: none; margin: 0; pointer-events: all; opacity: 1; flex-shrink: 0;}
.single .sr-gallery .btn-single-agenda .slick-arrow::before { color: var(--couleur-texte); font-weight: 900; font-family: "Font Awesome 6 free"; font-size: 3rem; transition: var(--transition);}
.single .sr-gallery .btn-single-agenda .slick-prev::before {content: "\f177";}
.single .sr-gallery .btn-single-agenda .slick-next::before {content: "\f178";}
.single .sr-chips {display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 1rem; margin-bottom: 0;}
.single .sr-chip {display: inline-flex; align-items: center; gap: .7rem; background: var(--blanc);  padding: .8rem 1.4rem; }
.single .sr-chip i {color: var(--couleur-cta); font-size: 1.3rem;}
.single .sr-chip-label i {color: #e6a817;}
.single .sr-chip .fi {font-size: 1.5rem;}
.single .sr-chip--pst { background-color: var(--couleur-texte, #102c35); color: #fff; font-weight: 700; text-transform: uppercase; letter-spacing: .04rem; }
.single .sr-chip--pst i { color: gold; }
.single .sr-section {display: flex; flex-direction: column;}
.single .sr-section-title {font-weight: 600; text-transform: uppercase; letter-spacing: .08em; margin: 0; padding-bottom: 1rem; display: inline-block;}

.single .sr-description {font-size: 1.6rem; font-weight: 300; line-height: 1.8; color: var(--couleur-texte);}
.single .sr-description p {margin-bottom: 1rem;}
.single .sr-tarifs {display: flex; flex-direction: column; gap: 0; background-color: #fff; overflow: hidden;}
.single .sr-tarif-row {display: flex; align-items: center; gap: 2rem; padding: 1.2rem 1.6rem; border-bottom: 1px solid #eeebe6; flex-wrap: wrap;}
.single .sr-tarif-row:last-child {border-bottom: none;}
.single .sr-tarif-row:nth-child(even) {background: #faf9f7;}
.single .sr-tarif-label {flex: 1; font-size: 1.5rem; font-weight: 500; color: var(--couleur-texte);}
.single .sr-tarif-price {font-size: 1.6rem; font-weight: 700; white-space: nowrap;}
.single .sr-tarif-complement {font-size: 1.3rem; font-weight: 300; color: #888; width: 100%;}
.single .sr-section-labels {background: var(--couleur-background, #f5f2ed);}
.single .sr-contact-card {background: #fff; padding: 3rem 2.4rem; display: flex; flex-direction: column;}
.single .sr-contact-title {font-size: 1.8rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; color: var(--couleur-texte); margin: 0; display: flex; align-items: center; gap: .9rem;}
.single .sr-contact-row {display: flex; align-items: flex-start; gap: 0 1.2rem; color: var(--couleur-texte);  margin-top: 1.5rem;}
.single .sr-contact-row > i {color: var(--couleur-texte); font-size: 1.4rem; margin-top: .2rem; flex-shrink: 0;}
.single .sr-tels {display: flex; flex-direction: column; gap: .5rem;}
.single .sr-tel {font-size: 1.45rem; color: var(--couleur-texte); text-decoration: none; transition: color 200ms;}
.single .sr-contact-ctas {display: flex; flex-direction: column; gap: 1rem; margin-top: 3rem; margin-bottom: 2rem;}
.single .sr-cta {display: flex; align-items: center; justify-content: center; width: 100%; gap: .8rem; padding: 1.3rem 2rem;  font-size: 1.4rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; transition: all 240ms ease; text-align: center;}
.single .sr-cta i {font-size: 1.3rem;}
.single .sr-cta-primary {background: var(--couleur-cta); color: #fff;}
.single .sr-cta-primary:hover {background: var(--couleur-texte); color: #fff;}
.single .sr-cta-outline {background: transparent; color: var(--couleur-texte); border: 2px solid var(--couleur-texte);}
.single .sr-cta-light {background-color: rgba(134, 188, 36, .60); color: #fff;}
.single .sr-cta-outline:hover {background: var(--couleur-texte); color: #fff;}
.single .sr-reseaux {display: flex; gap: 1.5rem; margin-top: 3rem;}
.single .sr-rs {width: 4rem; height: 4rem; display: flex; align-items: center; justify-content: center; border: 1.5px solid var(--couleur-cta); color: var(--couleur-cta); font-size: 1.6rem; transition: var(--transition);}

.single .date-card-header, .single .date-card-body {align-items: center; gap: 1rem; background: #fff; max-width: max-content; flex-wrap: wrap;}
.single .date-card-header .date-debut, .single .date-card-header .date-fin, .single .date-card-body p {font-size: 1.6rem; letter-spacing: .04rem;}
.single .date-card-header .date-separator {font-weight: 800; color: var(--couleur-cta); font-size: 1.8rem;}
.single .date-card-body {padding-left: 0;}
.single .date-card-body i {color: var(--couleur-cta); font-size: 1.8rem;}

.single .ul-column {column-count: unset; display: flex; flex-wrap: wrap; gap: 1rem; padding: 0; margin: 1rem 0 0; list-style: none;}
.single .ul-column li {background-color: #fff; padding: .8rem 1.4rem; margin: 0;}

.single .bloc-offres-selection .offres-selection-liste {gap: 1.5rem;}
.single .bloc-offres-selection .selection-card {width: calc(50% - .78rem);}
.single .bloc-offres-selection .selection-card-type {display: none;}
.single .bloc-offres-selection .selection-card-footer h3 {font-size: 1.6rem;}

@media (hover: hover) {
.single .visite-site:hover {color: var(--couleur-cta);}
.single .sr-rs:hover {border-color: var(--couleur-cta); color: var(--couleur-cta);}
.single .sr-tel:hover {color: var(--couleur-cta);}

}

@media (min-width: 768px) {
    .single .sr-sidebar .sr-reservation .reservation-infos {flex-direction: row;}
    .single .sr-cta {width: auto; flex: 1 0 33%;}
    .single .bloc-offres-selection .offres-selection-liste {gap: 1.5rem 2rem;}
    .single .bloc-offres-selection .selection-card  { width: calc(50% - 1rem); }
}

@media (min-width: 1025px) {
    .single .sr-body {flex-direction: row; gap: 6rem; padding: 6rem 2rem;}
    .single .sr-main {width: 0; flex: 2; gap: 6rem;}
    .single .sr-sidebar {width: 0; flex: 1; position: sticky; top: 2rem; align-self: flex-start;}
    .single .sr-gallery .main-image a img {height: 50vh;}
    .single .sr-hero-content h1 {font-size: 3rem;}
    .single .sr-hero-content h2 {font-size: 2rem;}
    .single .sr-gallery .btn-single-agenda {top: calc(50vh - 4.6rem);}
    .single .sr-section-title {font-size: 2.5rem;}
    .single .sr-sidebar .sr-reservation .reservation-infos {flex-direction: column;}
    .single .sr-cta {width: 100%; flex: 1;}
    .single .bloc-offres-selection .selection-card { width: calc(25% - 1.5rem);}
    .single .bloc-offres-selection .selection-card-type {display: block;}
    .single .bloc-offres-selection .selection-card-footer h3 {font-size: 1.8rem;}

}

@media (min-width: 1300px) {
    .single .sr-body {padding: 5rem 0 8rem;}
    .single .sr-hero-content h1 {font-size: 5rem;}
}

/* ---- Carte de localisation single restauration ---- */
.single .map-single {height: 30rem; width: 100%;}
#map-single-restauration .leaflet-popup-content-wrapper {border-radius: 0; box-shadow: 0 4px 20px rgba(0,0,0,.18);}
#map-single-restauration .leaflet-popup-content {margin: 0; padding: 1.4rem 1.8rem;}
#map-single-restauration .popup-single-sr {display: flex; flex-direction: column; gap: .4rem;}
#map-single-restauration .popup-sr-commune {font-size: 1.1rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--couleur-cta);}
#map-single-restauration .popup-sr-titre {font-size: 1.5rem; font-weight: 800; color: var(--couleur-texte); line-height: 1.3;}
#map-single-restauration .leaflet-popup-tip {background: #fff;}

#map-single-offre .leaflet-popup-content-wrapper {border-radius: 0; box-shadow: 0 4px 20px rgba(0,0,0,.18);}
#map-single-offre .leaflet-popup-content {margin: 0; padding: 1.4rem 1.8rem;}
#map-single-offre .popup-single-sr {display: flex; flex-direction: column; gap: .4rem;}
#map-single-offre .popup-sr-commune {font-size: 1.1rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--couleur-cta);}
#map-single-offre .popup-sr-titre {font-size: 1.5rem; font-weight: 800; color: var(--couleur-texte); line-height: 1.3;}
#map-single-offre .leaflet-popup-tip {background: #fff;}

/* ============================================
   SINGLE PORTRAIT — layout magazine
   ============================================ */

.single.single-portraits .single-page {background: linear-gradient(180deg, var(--couleur-background-dark) 0%, var(--couleur-background-dark) 50vh, var(--couleur-background) 50vh);}
.single.single-portraits .sr-body {display: flex; flex-direction: column; gap: 2rem 4rem; align-items: flex-start; padding-bottom: 3rem; }
.single.single-portraits .sr-main {width: 100%; display: flex; flex-direction: column; gap: 3rem;}
.single.single-portraits .sr-sidebar {width: 100%; background-color: #fff; padding: 2rem;}
.single.single-portraits .sr-hero-content {flex-direction: column; padding-top: 3rem;}

.single.single-portraits .sr-hero-content h1 {font-weight: 900; letter-spacing: .3rem; text-align: left; margin: 0;}
.single.single-portraits .sr-hero-content h2 { display: block; font-weight: 500; letter-spacing: .1rem; margin-bottom: 0; position: relative; padding-left: 4rem; order: -1; font-size: 1.6rem;}
.single.single-portraits .sr-hero-content h2::before {content: ''; position: absolute; background-color: var(--couleur-texte); left: 0;  top: 50%; transform: translateY(-50%); width: 3rem;  height: .2rem;}
.single.single-portraits .sr-hero-content .entete-breadcrumb span, .single.single-portraits .sr-hero-content .entete-breadcrumb a {color: var(--couleur-texte);}

.single.single-portraits .sr-gallery .main-image a img {height: 45vh; object-fit: cover; width: 100%;}


.portrait-article p {margin-bottom: 1.4rem;}
.portrait-article h2, .portrait-article h3 {font-size: 2rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; color: var(--couleur-texte); margin: 2rem 0 1rem; padding-bottom: .8rem; border-bottom: 2px solid var(--couleur-cta); display: inline-block;}
.portrait-article blockquote {margin: 2rem 0; padding: 1.6rem 2.4rem; border-left: 4px solid var(--couleur-cta); background: var(--couleur-background, #f5f2ed); font-size: 1.8rem; font-style: italic; font-weight: 400; line-height: 1.6;}
.portrait-article ul, .portrait-article ol {padding-left: 2.4rem; margin-bottom: 1.4rem;}
.portrait-article ul li, .portrait-article ol li {margin-bottom: .6rem;}
.portrait-article a {color: var(--couleur-cta); text-decoration: underline;}



.portrait-photo-frame {position: relative; overflow: hidden; margin-bottom: 3rem;}
.portrait-photo-frame img {width: 100%; display: block; object-fit: cover;}
.single-portraits .sr-contact-card h3 {font-size: 1.8rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; color: var(--couleur-texte); margin: 0; display: flex; align-items: center; gap: .9rem; padding-bottom: 1rem;}
.single-portraits .sr-contact-card i {margin-right: 1rem; font-size: 1.4rem; }



.map-portrait {height: 28rem; margin-top: 4rem; width: 100%;}

@media (min-width: 1025px) {
    .single.single-portraits .sr-body {flex-direction: row; gap: 8rem; padding: 3rem 2rem 5rem;}
    .single.single-portraits .sr-main {width: 0; flex: 2;}
    .single.single-portraits .sr-sidebar {width: 0; flex: 1; position: sticky; top: 2rem; align-self: flex-start;}
    .single .map-single {height: 36rem;}
    .single.single-portraits .sr-gallery .main-image a img {height: 50vh;}
    .single.single-portraits .sr-hero-content h1 {font-size: 3rem;}
    .single.single-portraits .sr-hero-content h2 {font-size: 2rem;}
}
@media (min-width: 1300px) {
    .single.single-portraits .sr-body {padding: 4rem 0 7rem; gap: 12rem;}
    .single.single-portraits .sr-hero-content h1 {font-size: 5rem;}
}

.single .breadcrumb-container {background-color: transparent;}
.single .breadcrumb-container ul,
.single .breadcrumb-container ol {margin: 0; padding: 8px 15px 0; display: flex; list-style: none;}
.single .breadcrumb-container li {margin: 0 5px; display: inline-block; padding: 0;}
.single .breadcrumb-container a span {font-weight: 300; font-size: 1.2rem; color: #5E5E5E; transition: all 250ms ease-in-out;}
.single .breadcrumb-container a span:hover {color: #E94E1B;}
.single .breadcrumb-container .separator {padding-left: 3px; font-weight: 300; color: #5E5E5E;}
.single .breadcrumb-container li:last-child a span {color: #000;}

.single-page-section {flex-wrap: wrap; }
.single-page-left {width: 100%;}
.single-page-right {width: 100%; margin-bottom: 20px;}

.single-page-lieu {display: flex; gap: 4px; flex-wrap: wrap; align-items: center; margin-bottom: .8rem;}
.single-page-lieu h3, .single-page-lieu h5, .single-page-lieu span {font-size: 2rem; margin: 0; font-weight: 300;}
.single-lieu-commune {display: flex; align-items: center; gap: .6rem; font-size: 1.5rem; font-weight: 500; color: var(--couleur-texte); margin: 0;}
.single-lieu-commune i {color: var(--couleur-cta);}

.single-type-badge {display: inline-flex; align-items: center; gap: .6rem; background-color: var(--couleur-cta); color: #fff; font-size: 1.3rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: .5rem 1.2rem; border-radius: 3rem; margin-bottom: 1rem;}
.single-type-badge i {font-size: 1.2rem;}

.single .section-right h1 {font-size: 3rem; font-weight: 900; letter-spacing: .3rem; margin: .8rem 0 2rem; text-transform: uppercase; text-align: left; padding-bottom: 2rem; border-bottom: 2px solid #eeebe6; line-height: 1.2;}

.single-page-nav {display: none; list-style: none; margin: 20px 0 15px; gap: 15px;}
.single-page-nav li::after {content: ''; width: 100%; height: 1px; background-color: #00A29C; display: block; opacity: .4; transition: all 180ms ease-in-out;}
.single-page-nav li:hover::after {opacity: .9;}
.single-page-nav li a {font-size: 14px; font-weight: 300; color: #5E5E5E !important; line-height: normal;}
.single-page-nav li a:hover {color: #00A29C !important;}

.single-page-galerie {position: relative; margin: 15px 0 30px;}
.single .slick-slide img {object-fit: cover; width: 100%; height: 100%;}
.single .slick-dots button:hover::before {color: #00A29C; opacity: .6;}
.single .slick-dots button:hover,
.single .slick-dots button:focus {background-color: transparent !important;}
.single .slick-dots button::before {font-size: 12px;}
.single .slick-dots .slick-active button::before {color: #00A29C; opacity: 1;}


.single-page-post-thumbnail img {height: 55vh; width: 100%; object-fit: cover;}
.single-tags {display: flex; list-style: none; margin: 5px 0 20px; gap: 10px; flex-wrap: wrap;}
.single-tags li {font-size: 14px; padding: 0 6px; color: #007f7a; box-shadow: rgba(0, 127, 122, .15) 2px 2px 1.5px;}

.single-portrait-detail p {font-weight: 300;}


.single-page-content p strong {font-weight: 500 !important;}


.single-page-date-evenement {font-weight: 300; font-size: 18px; margin-bottom: 10px;}

.single-page-right .single-page-coordonnees {display: flex; margin: 15px 0 0; gap: 8px; flex-wrap: wrap; position: fixed; top: 200px; right: 0; z-index: 5; width: 52px; height: 52px;}
.single-page-right .single-page-coordonnees .single-page-phone,
.single-page-right .single-page-coordonnees .single-page-adresse,
.single-page-site {width: 100%;}
.single-page-contact,
.single-page-right .single-page-coordonnees .single-page-phone {flex: 1;}
.single-page-right .single-page-contact {cursor: pointer; text-transform: uppercase; font-weight: 500;}
.single-page-right .single-page-contact span {display: none;}
.single-page-right .single-page-contact::after {content: "\f0e0"; color: #fff; font-family: "Font Awesome 5 Free"; font-size: 20px; vertical-align: -webkit-baseline-middle;}
.single-page-right .single-page-coordonnees #myModal {background-color: rgba(0, 0, 0, 0.8);}
.single-page-right .single-page-coordonnees .modal-content {margin: 140px auto 0; padding: 20px; max-width: 700px; background-color: #fff; width: 100%;}
.single-page-right .single-page-coordonnees .modal-content h2 {color: #00A29C; font-size: 30px; margin-bottom: 10px;}
.single-page-coordonnees .modal-content input[type="submit"] {background-color: #00A29C; color: #fff;}
.single-page-coordonnees .modal-content input[type="submit"]:hover {background-color: #E94E1B;}

.single-page-reseaux {margin-top: 3rem; gap: 3rem;}
.single-page-reseaux a i.fa-facebook-f::before {content: "\f09a";}
.single-page-share .share-buttons {display: flex; gap: 10px; font-size: 14px;}
.single-page-share .share-buttons i::before, .single-page-reseaux i::before {color: var(--couleur-texte); font-size: 2.5rem; transition: all 150ms ease-in-out;}
.single-page-share .share-buttons a:hover i::before,.single-page-reseaux a:hover i::before {color: var(--couleur-cta);}

.single-page-right #map_offre,
.single-page-right #map {margin: 20px 0 15px;}
.single-page-right #map_offre .leaflet-popup-content-wrapper,
.single-page-right #map .leaflet-popup-content-wrapper {border-radius: 0;}
.single-page-right #map_offre .leaflet-popup-content,
.single-page-right #map .leaflet-popup-content {max-width: 200px;}
.single-page-right #map_offre .leaflet-popup-tip,
.single-page-right #map .leaflet-popup-tip {background-color: #fff !important;}
.single-page-right #map_offre .popup-content h3,
.single-page-right #map_offre .popup-content h4,
.single-page-right #map h4,
.single-page-right #map h3 {color: var(--e-global-color-primary); position: relative; z-index: 1;}
.single-page-right #map_offre .popup-content h4,
.single-page-right #map h4 {display: inline-block; width: max-content; font-weight: 300; font-size: 14px; margin-bottom: 3px;}
.single-page-right #map_offre .popup-content h3,
.single-page-right #map h3 {font-weight: 700; font-size: 16px; margin-bottom: 0; line-height: normal;}

.single-page-right form ul,
.single-page-right form .ginput_complex {display: flex !important; flex-wrap: wrap;}
.single-page-right form li,
.single-page-right form .ginput_complex span {margin-top: 0 !important; width: 100% !important;}
.single-page-right form .ginput_complex span:first-of-type {margin-bottom: 8px !important;}
.single .single-page-right form input,
.single-page-right textarea {border-radius: 0; border: none; background-color: #f9f9f9; padding: 10px !important; color: #202020; font-weight: 400; margin: 0 !important;}
.single-page-right input::placeholder,
.single-page-right textarea::placeholder {text-transform: uppercase; font-size: 12px; color: #5E5E5E; transition: all 200ms ease-in-out;}
.single-page-right input:focus::placeholder,
.single-page-right textarea:focus::placeholder {color: #202020;}
.single-page-right form label.gfield_consent_label {font-size: 13px; color: #202020; font-weight: 300; padding-left: 5px;}
.single-page-right form input[type="checkbox"] {padding: 0 !important; width: 18px; height: 18px;}
.single-page-right form input[type=checkbox]:checked:before {margin-top: 2px !important;}

/* Section À découvrir à proximité */
.single-page-complement {background: var(--couleur-background-dark); padding: 3rem 2rem;}
.complement-inner {width: 100%;}
.complement-head {display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: 2rem; margin-bottom: 5rem;}
.complement-head h2 {color: var(--couleur-texte); font-size: 2.6rem; font-weight: 800; margin: 0; letter-spacing: .04em; text-transform: uppercase; position: relative; padding-bottom: 1.4rem;}
.complement-head h2::after {content: ''; position: absolute; left: 0; bottom: 0; width: 30%; height: 4px; background: var(--couleur-cta);}
.complement-filtres {display: flex; gap: 1rem; flex-wrap: wrap;}
.complement-filtres input, .complement-filtres select {min-width: 30rem;}
.complement-filtres input::placeholder {color: #aaa;}
.complement-filtres input:focus,
.complement-filtres select:focus {border-color: var(--couleur-cta);}
.complement-filtres select option {background: #fff; color: var(--couleur-texte);}




#loader-single {display: flex; justify-content: center; padding: 2rem 0;}
#loader-single img {mix-blend-mode: multiply;}

.single-page-contact,
.single-page-right .single-page-coordonnees .single-page-phone {flex: none; width: 100%;}
.single-page-right .single-page-coordonnees a {color: #fff;}

.single-page-bloc-phone {display: flex; gap: 8px; flex: 1 1 calc(50% - 4px);}
.single-page-bloc-phone .single-page-phone {font-size: 15px;}
.single-page-bloc-phone i {padding-right: 6px;}




/* Single - Randonnees */

.single-randonnees .pratique-rando {display: flex; flex-wrap: wrap; justify-content: space-between;}
.single-randonnees .pratique-rando p:first-of-type {font-weight: 300; margin-bottom: 0; font-size: 14px; width: 100%;}
.single-randonnees .cavalier-rando,
.single-randonnees .cyclo-rando {font-weight: 500; font-size: 16px; padding: 0 6px; display: inline-block; flex: 1;}
.single-randonnees .cavalier-rando::before,
.single-randonnees .cyclo-rando::before {font-family: "Font Awesome 5 Free"; font-weight: 900; padding-right: 8px; color: var(--e-global-color-primary); font-size: 16px;}
.single-randonnees .cavalier-rando::before {content: "\f6f0";}
.single-randonnees .cyclo-rando::before {content: "\f84a";}
.single-randonnees .courbes-denivele-rando {margin-top: 20px;}
.single-randonnees .section-consignes-rando {background-color: var(--couleur-background-dark)}
.single-randonnees .consignes-rando {margin: 20px auto 0; width: 1200px; max-width: 90%; padding: 5rem 0;}
.single-randonnees .consignes-rando ul {list-style: none; display: flex; flex-wrap: wrap; justify-content: center; margin: 5rem 0 3rem; column-gap: 20px; padding: 0;}
.single-randonnees .consignes-rando ul li {width: calc(50% - 10px);}
.single-randonnees .consignes-rando p {font-weight: 300; text-align: center; font-size: 14px; margin-top: 10px;}
.single-randonnees .consignes-rando img {height: 50px; display: block; margin: auto;}
.single-randonnees .vignette-rando-infos {display: flex; justify-content: space-between;}
.single-randonnees .section-consignes-rando.a-velo .consigne-rando-pedestre {display: none;}
.single-randonnees .section-consignes-rando:not(.a-velo) .consigne-rando-velo {display: none;}

.single-randonnees .section-left .slider-rando img {height: 55vh;}
.single-randonnees .section-right .infos-rando {background-color: var(--couleur-background-dark); padding: 3rem; max-width: max-content; gap: 2rem 6rem; margin: 4rem 0;}
.single-randonnees .section-right .infos-rando .info p {margin-top: 0; margin-bottom: 0;}
.single-randonnees .section-right .infos-rando .info p:first-of-type {margin-bottom: .8rem; font-weight: 300; letter-spacing: .1rem;}
.single-randonnees .section-right .infos-rando .info p:nth-child(n + 2) {font-size: 1.6rem; }
.single-randonnees .section-secondaire .map-right {width: 100%;}
.single-randonnees .section-secondaire .map-sticky {position: sticky; top: 0; flex: 1;}
.single-randonnees .section-secondaire h2 {letter-spacing: .5rem; font-size: 2.2rem; margin-bottom: 1rem;}
.single-randonnees .section-secondaire .detail {margin-top: 5rem;}
.single-randonnees .rando-key-info {flex-wrap: wrap; gap: 2rem 4rem; margin-bottom: 5rem;}
.single-randonnees .rando-key-info .rando-key {flex-direction: column; gap: .4rem; width: calc(50% - 2rem); }
.single-randonnees .rando-key-info .rando-key-label {font-weight: 300; letter-spacing: .1rem; font-size: 1.5rem; text-transform: uppercase;}
.single-randonnees .rando-key-info .rando-key-value {font-size: 1.8rem; font-weight: 600;}

.single-randonnees .section-secondaire .etapes-rando p, .single-randonnees .section-secondaire .itineraire-rando p {margin: 2rem 0;}
.single-randonnees .section-secondaire .etapes-rando span { margin-right: .6rem; text-transform: uppercase;}
.single-randonnees .single-description .etapes-rando p {margin: 2rem 0;}
.single-randonnees .single-description .etapes-rando span {margin-right: .6rem; text-transform: uppercase; font-weight: 600; border-bottom: 2px solid var(--couleur-principale); padding: .2rem .8rem; box-decoration-break: clone; -webkit-box-decoration-break: clone;}

.single-randonnees .section-consignes-rando h2 {font-size: 2.2rem; text-align: center; overflow: hidden;}
.single-randonnees .circuit-rando {margin: 7rem 0 3rem; flex-direction: column;}
.single-randonnees .btn-rando i {margin-left: .8rem;}

.single-randonnees #map_single {margin-top: 1.5rem; height: 40vh;}

@media (min-width: 1025px) {
    .single-randonnees .section-left .slider-rando img {height: 100vh;}
    .single-randonnees .section-secondaire .map-right {width: 45%;}
    .single-randonnees .section-consignes-rando h2 {font-size: 3rem;}
    .single-randonnees .section-consignes-rando h2::after {height: 3rem; left: 1rem; bottom: -1rem;}
    .single-randonnees .consignes-rando {padding: 7rem 0 5rem;}
}

@media (min-width: 1400px) {
.single-page-complement {background: var(--couleur-background-dark); padding: 6rem 6rem;}
}







/* NOUVEAU SINGLE */
.single .section-right .breadcrumb-container {margin: 0 0 3rem; width: auto; max-width: 100%; text-transform: uppercase;}
.single .section-right .breadcrumb-container ul {padding: 0;}
.single .section-right .breadcrumb-container li {margin: 0; display: inline-block; padding: 0;}
.single .single-page-section {gap: 3rem 3rem;}
.single .section-left {width: 100%; order: 2;}
.single .section-right {order: 1;}
.single .section-left .btn-slider {position: absolute; width: 100%; bottom: 2rem;}
.single .section-left .btn-slider .slick-arrow {width: 4rem; height: 4rem; background-color: var(--couleur-cta); display: block; }
.single .section-left .btn-slider .slick-prev {left: 0;}
.single .section-left .btn-slider .slick-next {right: 0; left: auto;}
.single .section-left .btn-slider .slick-arrow::before {font-weight: 900; font-family: var(--fontAwesome); font-size: 2.5rem;}
.single .section-left .btn-slider .slick-prev::before {content:"\f177";}
.single .section-left .btn-slider .slick-next::before {content:"\f178";}
.single .section-left .gallery-container {flex-direction: column; row-gap: 1.6rem; position: relative;}
.single .section-left .gallery-container .main-image {overflow: hidden; }
.single .section-left .gallery-container .main-image a {height: 100%; width: 100%; display: block; overflow: hidden;}
.single .section-left .gallery-container .main-image a img {height: calc(100vh - 16vh - 5.2rem); min-height: 55vh; transition: transform 500ms ease; object-fit: cover; width: 100%;}
.single .section-left .gallery-container .main-image a:hover img {transform: scale(1.04);}
.single .section-left .gallery-container .thumbnail-images .slick-track {margin: 0;}
.single .section-left .gallery-container .thumbnail-images a {width: 100%; display: block; overflow: hidden; transition: opacity 200ms ease;}
.single .section-left .gallery-container .thumbnail-images a:hover {opacity: .75;}
.single .section-left .gallery-container .thumbnail-images img {height: calc(16vh - 1rem); transition: transform 300ms ease; object-fit: cover; width: 100%;}
.single .section-left .gallery-container .thumbnail-images a:hover img {transform: scale(1.08);}
.single .section-left .gallery-container .btn-single-agenda {display: flex; justify-content: center; gap: 1rem; position: absolute; bottom: calc(16vh - 1rem + 2.6rem); left: 0; right: 0; z-index: 3; margin: 0; pointer-events: none;}
.single .section-left .gallery-container .btn-single-agenda .slick-arrow {width: 4.2rem; height: 4.2rem; background-color:var(--couleur-texte); border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background-color 200ms ease; font-size: 0; position: static; margin: 0; pointer-events: all;opacity: 1;}
.single .section-left .gallery-container .btn-single-agenda .slick-arrow::before {font-family: var(--fontAwesome); font-weight: 900; font-size: 1.4rem; color: #fff;}
.single .section-left .gallery-container .btn-single-agenda .slick-prev::before {content: "\f177";}
.single .section-left .gallery-container .btn-single-agenda .slick-next::before {content: "\f178";}
.single .section-left .gallery-container .btn-single-agenda .slick-arrow:hover {background-color: var(--couleur-cta);opacity: 1;}
.single .section-left .img-temporaire {height: 100vh; padding: 8rem; margin: auto;}
.single .section-left .single-page-coordonnees {background: #fff; border-radius: 1.2rem; padding: 2rem 2.4rem; box-shadow: 0 4px 20px rgba(0,0,0,.07); margin-top: 2rem; display: flex; flex-direction: column; gap: 1.2rem;}
.single .section-left .single-page-coordonnees .single-page-adresse {font-size: 1.5rem; color: var(--couleur-texte); margin: 0; display: flex; align-items: flex-start; gap: .8rem;}
.single .section-left .single-page-coordonnees .single-page-adresse::before {content: "\f3c5"; font-family: var(--fontAwesome); font-weight: 900; color: var(--couleur-cta); font-size: 1.4rem; flex-shrink: 0; margin-top: .1rem;}
.single .section-left .single-page-coordonnees .phone-responsive,
.single .section-left .single-page-coordonnees .mail-responsive {display: flex; flex-wrap: wrap; gap: .8rem;}
.single .section-left .single-page-coordonnees .single-page-phone {font-size: 1.5rem; font-weight: 600; color: var(--couleur-texte); text-decoration: none; display: flex; align-items: center; gap: .7rem;}
.single .section-left .single-page-coordonnees .single-page-phone::before {content: "\f095"; font-family: var(--fontAwesome); font-weight: 900; color: var(--couleur-cta); font-size: 1.3rem;}
.single .section-left .single-page-coordonnees .site-responsive {font-size: 1.4rem; font-weight: 600; color: var(--couleur-cta); text-decoration: none; transition: opacity 200ms;}
.single .section-left .single-page-coordonnees .site-responsive:hover {opacity: .75;}

.slick-prev::before {content: "\f177"}

.single .section-right {padding: 0 2rem 4rem; position: relative;}
.single .section-right #a-propos {margin: 4rem 0; }
.single .section-right .description-commerce p {font-size: 1.6rem; font-weight: 400;}
.single .section-right .single-page-detail {margin-top: 5rem;}
.single .section-right .detail {margin-top: 5rem;}
.single .section-right h2 {letter-spacing: .5rem; font-size: 2.2rem; margin-bottom: 1rem;}
.single .section-right .single-page-detail li, .single .section-right .single-page-detail p {font-size: 1.6rem; font-weight: 300; margin: 5px 0;}
.single .section-right .single-page-detail ul {list-style: none; margin-left: 0;}
.single .section-right .single-page-detail .tarif-row {column-gap: 2rem;}
.single .section-right .read-more {display: inline-block; margin-top: 0.5rem; text-decoration: none; transition: all 200ms ease-in-out; font-size: 1.4rem;}
.single .section-right .read-more:hover {color: var(--couleur-cta);}
.single .section-right .statuts-activite {gap: .8rem; flex-wrap: wrap; margin-top: 2rem;}
.single .section-right .statuts-activite .statut {display: inline-flex; align-items: center; gap: .7rem; background: #f3f1ee; border-radius: 3rem; padding: .65rem 1.4rem; font-size: 1.4rem; font-weight: 500; margin: 0;}
.single .section-right .statuts-activite .statut i {color: var(--couleur-cta); font-size: 1.3rem; margin: 0;}
.single .section-right .statuts-activite .statut.organisateur {width: 100%; border-radius: .8rem;}
.single .section-right .single-coordonnees {flex-wrap: wrap; gap: 1rem; padding-top: 3rem; border-top: 1px solid #eee;}
.single .section-right .single-coordonnees h2 {width: 100%; margin-bottom: .5rem;}
.single .section-right .single-coordonnees .coordonnees-adresse {width: 100%; margin-top: .5rem; font-size: 1.5rem; display: flex; align-items: flex-start; gap: .8rem;}
.single .section-right .single-coordonnees .coordonnees-adresse i {color: var(--couleur-cta); flex-shrink: 0; margin-top: .2rem;}
.single .section-right .single-coordonnees .btn-cta {width: 100%; background-color: var(--couleur-background-dark); color: var(--couleur-texte); text-align: center; justify-content: center; text-decoration: none; border-bottom: none;}


.single .section-secondaire {background-color: var(--couleur-background-dark); flex-wrap: wrap;}
.single .section-secondaire .section-secondaire-infos {flex-direction: column; align-items: center; justify-content: center; padding: 4rem 2rem;}
.single .section-secondaire .single-coordonnees {text-align: center;  row-gap: 1rem; width: 100%; }
.single .section-secondaire .single-coordonnees .coordonnees-adresse {font-size: 1.6rem;}
.single .section-secondaire #map_offre, .single .section-secondaire #map_single {flex: 1;}
.single .animaux-statut {font-size: 1.6rem; margin-top: 4rem;}
.single .animaux-statut i {margin-right: 1rem;}

@media (hover: hover) {
.single .section-right .single-coordonnees .btn-cta:hover {color: #fff; box-shadow: inset 25em 0 0 0 var(--couleur-cta);}
}

@media (min-width: 768px) {
    .single .section-right .single-page-detail .tarif-row {width: 40rem;}
    .single .section-right .single-coordonnees .btn-cta {width: 30rem; }
}


@media (min-width: 1025px) {
    .single .section-right {max-width: 70rem; padding-right: 6rem; padding-top: 3rem; padding-bottom: 6rem; flex: 1; order: 0;}
    .single .section-right .bloc-labels {position: absolute; right: 2rem; top: 4rem;}
    .single .section-left {width: 45%; order: 0;}
    .single .section-right .detail {margin-top: 6rem;}
    .single .section-secondaire .section-secondaire-infos { max-width: 70rem; padding: 6rem 2rem; flex: 1;}
    .single .section-left .gallery-sticky {position: sticky; top: 0;}
    .single .section-secondaire #map_single {height: 100vh;}
    .single .section-left .gallery-container .main-image a img {height: calc(100vh - 16vh - 5.2rem); min-height: 60vh;}

    .prox-grid {grid-template-columns: repeat(3, 1fr); gap: 3rem;}
    .complement-head {flex-direction: row; align-items: flex-end;}
    .complement-head h2 {font-size: 3rem;}
    .single-page-post-thumbnail img {height: 100vh;}
}


@media (min-width: 1300px) {
    .single .single-page-section {gap: 3rem 7rem;}
    .single .section-right h1 {font-size: 5rem;}
    .single .section-secondaire {justify-content: flex-end;}
    .single .section-secondaire .section-secondaire-infos {padding-top: 8rem;}
    .single-randonnees .rando-key-info {margin-bottom: 8rem;}

    

    
}

/* Single - Hebergements */

.single-hebergements .descriptif-texte {margin-bottom: 1.2rem;}
.single-hebergements .descriptif-texte .excerpt,
.single-hebergements .descriptif-texte .full-text {margin: 0;}
.single-hebergements .tarif-personne {flex: 1;}
.single-hebergements .tarif-complement {margin-bottom: 0; margin-left: 6px;}
.single-hebergements .prestations-table {margin-bottom: 50px; margin-top: 30px;}
.single-hebergements .prestations-list {margin-bottom: 8px; max-width: 600px;}
.single-hebergements .prestations-list .single-page-animaux {margin-bottom: 0; margin-top: 30px; font-weight: 300;}

.single-hebergements .offre-contenu .classement-epis img {width: 12px !important;}
.single-hebergements .hebergement-capacite i {margin-right: 1rem;}
.single-hebergements .picto-loisirs {display: flex; column-gap: 25px;}
.single-hebergements .picto-loisirs .picto-label {width: auto; max-width: 80px; max-height: 80px; object-fit: contain;}





.single-hebergements .services-list ul {list-style: none; margin: 0;}
.single .section-right .bloc-labels {gap: 2rem;}
.single .section-right .bloc-labels .classement-etoile i {font-size: 1.3rem;}





@media (min-width: 1025px) {
    .single-hebergements .coordonnees-etablissement .btn-cta {width: 30rem;}


}

/* Single - Guides */
.single-guides .lieu-description {display: none;}
.single-guides .lieu-description p {font-weight: 300; font-size: 14px; margin-bottom: 10px; line-height: 18px;}
.single-guides .video-guide {margin-bottom: 40px;}
.single-guides iframe {aspect-ratio: 16/9; height: auto;}
.single-guides h1 {margin-bottom: 20px;}
.single-guides .photo-principale {margin-top: 20px;}
.single-guides .photo-principale img {max-height: 500px; width: 100%; object-fit: cover;}
.single-guides .swiper-wrapper .swiper-slide a {height: 200px; display: block;}
.single-guides .swiper-wrapper .swiper-slide a img {height: 100%; width: 100%; object-fit: cover;}
.single-guides .related-guides {margin-top: 40px;}
.single-guides .related-guides-list {display: flex; column-gap: 20px; flex-wrap: wrap; max-width: 100%; row-gap: 20px;}
.single-guides .related-guides h2 {font-size: 30px; margin-bottom: 25px;}
.single-guides h3.commune {margin-bottom: 0;}
.single-guides .single-page-complement-vignettes h2 {color: #E94E1B;}

/* Single - Produits */
.single-produit .product-image {height: 100%; overflow: hidden;}
.single-produit .product-image img {transition: all 500ms ease-in-out;}
.single-produit .product-image:hover img {transform: scale(1.3);}
.single-produit h1 {font-size: 35px; font-weight: 900; letter-spacing: 1px; line-height: normal; margin: 0; text-transform: uppercase;}
.single-produit .single-page-right .infos-produit {margin: 20px 0; background-color: #f7F7f7; padding: 20px; display: flex; flex-wrap: wrap; column-gap: 10px;}
.single-produit .single-page-right .infos-produit ul {list-style: none; margin: 20px 0; width: calc(50% - 5px);}
.single-produit .single-page-right .infos-produit li:first-of-type {font-weight: 300; font-size: 14px;}
.single-produit .single-page-right .infos-produit li:nth-child(2) {font-size: 18px;}
.single-produit .produit-description p,
.single-produit .produit-description span {font-weight: 300 !important;}


.single-agenda .date-single-agenda {position: relative;}
.single-agenda .date-single-agenda .date-cards {flex-wrap: wrap; gap: 10px; max-width: 80vw;}
.single-agenda .date-single-agenda .slick-prev, .single-agenda .date-single-agenda .slick-next { bottom: 1.5rem; top: auto;}
.single-agenda .date-single-agenda .slick-next {left: auto; right: 4rem;}
.single-agenda .date-single-agenda .slick-prev {left: auto; right: 8rem;}
.single-agenda .date-single-agenda .slick-prev:before, .single-agenda .date-single-agenda .slick-next:before {margin: auto; color: var(--couleur-cta); cursor: pointer; font-size: 2rem; border: 0; opacity: 1;}

.single-agenda .date-single-agenda .date-card-header {align-items: center;}
.single-agenda .date-single-agenda .date-card-header .date-debut, .single-agenda .date-single-agenda .date-card-header .date-fin {font-size: 1.8rem;}
.single-agenda .date-single-agenda .date-card-header .date-separator {margin: 0 1rem;}
.single-agenda .section-right .infos-reservation {background-color: var(--couleur-background-dark); padding: 2rem; margin-top: 4rem;}



@media (max-width: 768px) {
    .single .slider-hebergement .swiper-container,
    .single .swiper-container.slider-produits,
    .single .product-image.product-image-thumbnail {height: auto;}
    .single-page-right .single-page-coordonnees {display: none;}
    .single-agenda .date-single-agenda .date-card {width: 100%;}
}

@media (min-width: 768px) {
    .single-page-nav {display: flex;}
    .single-page-complement-left {padding: 40px 0;}
}

@media (min-width: 900px) {
    .single-page-galerie {margin-bottom: 50px;}
    .single-randonnees .consignes-rando ul {justify-content: space-between; column-gap: 0;}
    .single-randonnees .consignes-rando ul li {max-width: 150px; width: auto;}
    .single-guides .video-guide {margin-bottom: 70px;}
    .single-guides .swiper-wrapper .swiper-slide a {height: 500px;}
}

@media (min-width: 1025px) {
    .single-agenda .date-single-agenda .date-card.slick-slide {margin: 0 2rem;}
    .single-agenda .section-right {overflow: hidden;}
}

@media (min-width: 1200px) {
    .single-page-left {width: 45%;}
    .single-page-right {flex: 1;}
    .single-page-right .single-page-reseaux {display: flex;}
    .single-page-right #map {margin-top: 25px;}
    .single-page-right .single-page-coordonnees {display: flex;}
    .single-page-share {margin-bottom: 20px !important;}
    .single-agenda .date-single-agenda .slick-next {left: auto; right: 0rem;}
    .single-agenda .date-single-agenda .slick-prev {left: -1.5rem; right: auto;}
    .single-randonnees .consignes-rando ul {margin: 9rem 0 2rem;}


}

