@charset "UTF-8";
/*Listes*/
ul{list-style:none}
ul.default,ul.ul-home{padding:0;list-style: none}
ul.default{ margin:0;}
ul.default li,ul.ul-home li{line-height:2; padding:0;margin: 0}

ul.ul-home li{text-align: left}
ul.ul-home li.center{text-align: center}
ul.ul-home li.li-price{margin-top: 1rem}
ul.ul-home li .fas{opacity: .3;margin-right: .8em}
ul.ul-home li.first-li{}
ul.ul-home li.first-li h3{line-height: 1;}
ul.ul-home li.title{padding-bottom: 1em;}
ul.ul-home li.price{padding-top: 1.5em;}

ul.description{margin-bottom:1em}
ul.description li{ padding:.525em 0;border-bottom:1px solid #d8d8d8;line-height:1.375em;}
ul.ul-item li:last-child{border-bottom:none}
ul.ul-swipper li:last-child{border-bottom:none}
ul.ul-item li{padding-left:.5em;padding-right:.5em}
ul.ul-item li .fas{opacity: .3;margin-right: .8em}
ul.ul-item li.toggle-view:hover{background:#fff;cursor:pointer}
.toogle-more.fas{opacity: 1 !important;color: #000 !important}

/*Animation Liste*/
.toggle-view{position:relative;cursor:pointer}
.toogle-more{position:absolute;right:.625em;top:.625em;transition:transform .25s ease}
.toggle-view.is-open .toogle-more{transform:rotate(180deg)}
.toogle-panel{max-height:0;overflow:hidden;padding:.2em 1.875em 0 1.875em;transition:max-height .2s ease}

ul.ul-item li.book .fas{opacity: .5;margin-right: .8em}
ul.ul-item li.book a{color: #f56257}

@media only screen and (max-width: 768px) {
}



/* Google Maps API*/
#map-wrapper{position:relative;width:100%;height:clamp(280px, 38vw, 550px);padding:0;margin:0}
#map{display: flex;align-items: center;width: 100%;height: 100%;background: var(--bg-color);}
#map .preload {width:100%;height:100% !important}

#map .zoom-wrapper {position: absolute;top:50%;left:10px;transform:translateY(-50%);z-index:1000;display:flex;flex-direction:column;gap:4px;filter:none!important}
#map .zoom-wrapper a {display:flex;justify-content:center;align-items:center;width:40px;height:40px;text-align:center;background:var(--bg-color);color:#000;font-size: 20px;font-weight: bold;border-radius:5px;border:.063em solid #000;text-decoration: none;filter: none !important;opacity:1;transition:opacity 0.3s cubic-bezier(.22, 1, .36, 1) !important}
#map .leaflet-container img {max-height: none;}
#map .zoom-wrapper a:hover {background:var(--bg-color);opacity:.5}
#map .leaflet-popup-content {font-family:inherit !important;font-size:15px !important;font-style:normal !important;font-weight:500 !important;line-height:1.3 !important; letter-spacing:inherit!important}
#map .leaflet-popup-content a{color:#000 !important}

.popup-villablanche .leaflet-popup-content-wrapper{background: #f8f4f3 !important;box-shadow: 0 12px 28px rgba(0,0,0,0.25) !important}
.popup-villablanche .leaflet-popup-tip{background: #f8f4f3 !important }
.leaflet-control-attribution{opacity:.2 !important}
.leaflet-control-attribution.leaflet-control a{color:#000}
.leaflet-marker-icon.pulse {background-color:var(--accent);border:4px solid white;border-radius:50%;width:20px;height:20px;box-shadow:0 0 0 rgba(245, 101, 93, 0.4);animation: pulse 2s infinite;
}
@keyframes pulse {
  0%{box-shadow:0 0 0 0 rgba(200, 109, 60, 0.4)}
  70%{box-shadow: 0 0 0 10px rgba(200, 109, 60, 0)}
  100%{box-shadow: 0 0 0 0 rgba(200, 109, 60, 0)}
}

#map-info{position:absolute;top:50%;transform: translateY(-50%);left:10%;z-index: 900;max-width: 340px;background: #fff;border-radius: 8px;box-shadow: 0 4px 16px rgba(0,0,0,0.18);font-size: 0.9rem;line-height: 1.5;}
#map-info img{border-radius: 8px;overflow:hidden}
#map-info h3{color:var(--text-color);margin-bottom:0;font-size:1.825em;line-height:1.2}
#map-info p{margin-top: .5em;font-size:1em;line-height:1.5}

@media (max-width: 768px) {
	#map-wrapper{height:auto}
	#map{height:clamp(220px, 60vw, 350px)}
	#map-info{position:static;transform:none;top:auto;left:auto;max-width:100%;width:100%;margin:1rem 0 0 0; padding: 0 5%;box-shadow:none}
	#map-info .padding-x2{padding:1rem 0 0 0}
}

@media only screen and (min-width: 1024px) {
	#map-info:before{content:"";position:absolute;top:-8px;left:50%;margin-left: -10px; width:20px;height:20px;background:url(../images/brides-les-bains-savoie.png) center center;background-size:cover;z-index:2;}
	#map-wrapper:before{content:"";position:absolute;top:0;left:0;width:100%;height:100px;background: linear-gradient(to bottom, rgba(248,249,250,1), rgba(248,249,250,0)); z-index:800;}
	#map-wrapper:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:100px;background: linear-gradient(to top, rgba(248,249,250,1), rgba(248,249,250,0)); z-index:800;}
}


.blog .items-leading{}
.blog .items-row{padding: 2.5em 0}

/* Services*/
#village{padding: var(--space-2xl) 0;background:var(--bg-color)}
.inner_item{box-shadow:var(--shadow);border-radius:var(--radius-xs);overflow:hidden}
#village p{margin-top: .5em}
#village h3{margin-top: 1.25em}

/* Descriptifs*/
.desc{}
.desc .desc-link {margin: 1em 0 0 0;}
.desc .desc-link a{display: inline-block; margin: 0 .325em;}

@media (max-width: 768px) {
	.desc .desc-link a{margin:.325em}
}

.square-large{display: block; color: #222;text-align: center;padding: .8em .835em; text-transform: uppercase;border: .080em solid #222}

.square{display:inline-block;padding:14px 32px;text-decoration:none;background:#f56257;font-weight:700;font-size:1rem;transition:transform .25s ease,background-color .3s ease;border-radius:999px;color:#fff;border: 1px solid rgba(47,42,38,.08); box-shadow: var(--shadow);}
.square:hover,.square:focus-visible{transform:translateY(-2px);background:#fb776d}

/*tarif*/
.div-tarif{}
.fiche_app{background:#fff;box-shadow:var(--shadow); border-radius:8px; overflow: hidden}

/*Ateliers*/
.ateliers{}
.ateliers_item{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}

/*Mentions légales*/
.legals h1{margin-bottom: 1.5rem}
.legals h2{margin-bottom: 0 !important; margin-top: 2rem}
.legals a{color: #222222; font-weight: bold}


/*tableau*/
table{width:100%;margin-bottom:1em;border-collapse: collapse;}
table caption,td{padding:0.5em}
table caption{border-bottom:1px solid #d8d8d8;color:#f56257}
table.tarif_app td{border-bottom: 1px solid #d8d8d8;}

table.services tr{background:#fff}
table.services tr:nth-child(even){background:#fafafa}
table.services td{border-bottom: 1px solid #d8d8d8;}

/* Footer*/
#footer{padding: var(--space-2xl) 0;background:var(--bg-color-second);color:inherit}
#footer a{color:#222222;opacity: .8;transition:color .3s linear,opacity .3s linear}
#footer a:hover{opacity:1; color:#f56257 }

#footer li .vibes{font-size: 1.5em;}

#partners{overflow: hidden;}
.partners-item{width:50%;height:auto;float: left}
.partners-item img{height: auto; vertical-align: middle;}
.partners-item:first-of-type img{padding: 1em;}
.partners-item:nth-of-type(2) img{padding: 1em}
.partners-item:nth-of-type(3) img{padding: 1em}
.partners-item:nth-of-type(4) img{padding: 1em}
.partners-item a{opacity: 1; display: block;}
.partners-item a:hover{opacity:.9}

#footer h4{display:flex;align-items: center;gap:1em;width:100%;margin:0 0 1rem;padding:0;color:#222222;font-size:.938em;font-weight:normal;letter-spacing:.150em;text-transform:uppercase;white-space:nowrap}
#footer h4::before,#footer h4::after{content:"";flex:1 1 auto;border-top:1px solid #222222}
#footer .follow{margin-top:1.325em}

#footer .sharer{margin:0 auto;text-align:center}
#footer .sharer .fab,#footer .sharer .fab .far{font-size:1em}
#footer .sharer .fab,#footer .sharer .far{line-height:1; vertical-align: middle}
.sharer-flex{display:inline-flex;align-items: center;row-gap:0;column-gap:0;margin: 0}
#footer .sharer a{display:flex;justify-content:center;align-items:center;color: #fff;width:35px;height:35px;opacity:.8;background:#222222;margin:0 .125em;border-radius:50%;transition:all 300ms ease;}
#footer .sharer a:hover{background: #f56257; color:#fff;opacity:1}

#footer .share-button {display:flex;justify-content:center;align-items:center;color:#fff;width:35px;height:35px;opacity:.8;background:#222222;margin:0 .125em;border-radius:50%;transition:all 300ms ease;border:none; cursor: pointer}
#footer .share-button:hover{background:#f56257;color:#fff;opacity:1}
.sr-only {position: absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}
/*Bouton Share Artcile*/
.share-feedback{position:fixed;top:1em;left:50%;transform:translateX(-50%);background:#000;color:#fff;padding:.75rem 2rem;font-size:.9em;z-index:9999;box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);border-radius:13px}

#footer .footer-legals{margin:0;padding:2em 0 0 0;text-align:center}
#footer .footer-legals a{border-bottom: 1px dashed currentColor;}


@media only screen and (max-width: 768px) {
	#footer{padding:2em 0}
	#footer .col-33{width: 100% !important;}
	#footer .div-tools{padding:1.5em 0}
    #footer .div-adress ul.default{width: 80%; margin: 0 auto}
    #footer .sharer{margin: 3em 0}
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait)
{
	#footer{padding:5em 0}
}

@media only screen and (min-width: 1024px) {
  #footer{padding:5em 0}
}

/* formulaire */
#system-message-container{display: none}
.formResponsive,.formHorizontal{margin: 0; padding: 0}
.formResponsive{ padding:3em 0 1em 0}
.formResponsive h2 .fas{font-size:80%}
.formResponsive h2{margin-bottom: 0 !important}

#userForm.formResponsive .user-details,#userForm.formResponsive .user-sejour,#userForm.formResponsive .block-date{}
#userForm.formResponsive .user-details .rsform-block{width:100%;padding:.325em}
#userForm.formResponsive .user-sejour .rsform-block{width:100%;padding:.325em}

#userForm.formResponsive .user-stay{padding: 3em 0}

.stay-text{padding: 0 1em 0 0}
.block-date{align-items:center;padding: 1em 2em 1em 2em !important;margin-bottom: 1em;background: rgba(216,216,216,.5);border-radius:15px;overflow:hidden}
.block-date p{margin: 0 !important; padding: 0 !important}

@media only screen and (max-width: 768px) {
	#userForm.formResponsive .user-details .rsform-block,#userForm.formResponsive .user-sejour .rsform-block{width:100%;padding:.325em 0}
	.block-date{ height: auto; padding: 2em !important}
    .stay-text p{text-align: center; margin-bottom: 1em !important}
}

.formResponsive #rsform_3_page_0{padding-bottom:1em}
.formHidden{position:absolute;left:-20000px;top:-20000px;opacity:0}
.formResponsive p.formRed{color:#f56257}
.formError,.formNoError{display:none}
.formField{display:block;overflow:auto}
.formResponsive .rsform-block-date-arrive .formBody{overflow:hidden}
.formDescription,.formResponsive .formHorizontal .hide{display:none}


#userForm.formResponsive .formHorizontal .rsform-block {margin-bottom:0}
#userForm.formResponsive .formHorizontal .formControlLabel{float: none;width:100%;padding-top:0;text-align:left}
#userForm.formResponsive .formHorizontal .formControls{margin-left:0}


.formResponsive p{padding:0 .2em}
.formResponsive label{}
#userForm.formResponsive input,#userForm.formResponsive textarea{background:#fff;color:#222222;border-radius: 10px;border: solid 1px #d3d3d3;box-shadow:0px 0px 4px 1px rgba(0,0,0,0.05)}
#userForm.formResponsive input,#userForm.formResponsive textarea{box-sizing: border-box;transition:all .3s linear}
#userForm.formResponsive input:hover,#userForm.formResponsive input:focus,#userForm.formResponsive textarea:hover,#userForm.formResponsive textarea:focus{box-shadow:0px 0px 4px 1px rgba(0,0,0,.2)}

#userForm.formResponsive textarea{width:100%;height:120px;resize:none;padding:1em}
#userForm.formResponsive input[type=text]{width:100%;height: 42px;line-height: 40px;padding:0 1em; box-sizing: border-box}
#userForm.formResponsive input:focus{outline:0}
#userForm.formResponsive input::-moz-focus-inner{border:0}

.rsform-block-submit{text-align:center}
.rsform-block-message{margin-bottom: .825em}


#userForm .rsform-block-legals{margin-bottom: .8em}

#userForm.formResponsive input.rsform-error,.formResponsive input.rsform-error:focus,.formResponsive select.rsform-error,.formResponsive select.rsform-error:focus,.formResponsive textarea.rsform-error,.formResponsive textarea.rsform-error:focus{border-color:#f56257}
.formResponsive button[type=submit]{background:#f56257;color:#fff;padding:1em 4em;border:none;border-radius: 5px;letter-spacing:.1em;text-align:center;cursor:pointer;display:inline;transition:background.3s linear}
.formResponsive button[type=submit]:hover{background:#829f48}


@media only screen and (max-width: 768px) {
	.formResponsive .col-30,.formResponsive .col-40,.formResponsive .col-50{width: 100%}
	.rsform-block{padding:0}
    .block-date .col-70,.block-date .col-30{width: 100% !important}
}

body.itemid-120 .flatpickr-calendar *{font-family: 'Lato', sans-serif,Arial, Helvetica, sans-serif !important}
/* Jour survolé */
body.itemid-120 .flatpickr-day:hover,body.itemid-120 .flatpickr-day.today:hover,body.itemid-120 .flatpickr-day.selected:hover{background:#f56257;border-color:#f56257;color:#ffffff}
body.itemid-120 .flatpickr-day.selected {background:#f56257;border-color:#f56257;color:#ffffff !important}
body.itemid-120 .flatpickr-day.today {border-color:#f56257;color:#f56257}
body.itemid-120 .flatpickr-input {width:100%;max-width:100%;box-sizing:border-box}
body.itemid-120 .form-group,body.itemid-120 .rsform-block {min-width:0}

/*Custom Select*/
.rsform-select-box{width:100%;box-sizing:border-box;padding:0.7rem 2.4rem 0.7rem 1rem;border-radius:8px;border:1px solid #dedede;background-color:#fff;font-family:inherit;line-height: 1.3;color:var(--text-color);outline: none;cursor: pointer;box-shadow:var(--shadow);-webkit-appearance: none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg fill='%239b8b73' height='8' width='12' xmlns='http://www.w3.org/2000/svg'><path d='M0 0 L6 6 L12 0'/></svg>");background-repeat: no-repeat;background-position:right 1rem center;background-size:12px 8px}
.rsform-select-box:focus {border: 1px solid #dedede;outline:none}
.rsform-select-box::-ms-expand {display:none}

/*friendlycaptch*/
.rsform-block-friendlycaptcha{width:100%;margin:1em 0 2rem 0;}
.rsform-block-capchawrapper{width:100%;margin:0 auto;text-align: left !important}
.frc-captcha{display:block;margin:0 auto;min-height:80px!important; box-shadow: var(--shadow)}


.gallery {
  --gallery-gap: 12px;
  --gallery-radius: 6px;
  --gallery-ratio: 3 / 2; /* correspond à width="270" height="180" */
  --gallery-transition: transform .35s ease-out, box-shadow .35s ease-out;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--gallery-gap);
}

.gallery-page {grid-template-columns: repeat(4, 1fr)}

@media (max-width: 900px) {
  .gallery,.gallery-page {grid-template-columns: repeat(2, 1fr)}
}

@media (max-width: 480px) {
  .gallery,.gallery-page {grid-template-columns: repeat(2, 1fr);--gallery-gap: 8px;}
}

.gallery a {
  display: block;
  overflow: hidden;
  border-radius: var(--gallery-radius);
  box-shadow: 0 1px 3px rgba(0, 0, 0, .15);
  transition: var(--gallery-transition);
}

.gallery a img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: var(--gallery-ratio);
  object-fit: cover;
  border: none; /* remplace ton ancien border:2px solid #fff */
}

.gallery a:hover,
.gallery a:focus-visible {
  box-shadow: 0 3px 10px rgba(0, 0, 0, .15);
  outline: none;
}

.gallery a:hover img,
.gallery a:focus-visible img {
  transform: scale(1.02);
}
@media (prefers-reduced-motion: reduce) {
  .gallery a,
  .gallery a img {
    transition: none;
  }
}

/* Fond de l'overlay légèrement transparent plutôt que blanc plein */
.sl-overlay {background: rgba(255, 255, 255, .9)}
.sl-wrapper .sl-counter {padding: .525em}
.sl-wrapper .sl-close:focus,.sl-wrapper .sl-navigation button:focus{outline:0;}
.sl-wrapper .sl-navigation button {color:#222}
.sl-wrapper .sl-additional-html p {display:none !important}