.hero{position:sticky;top:0;height:100vw;max-height:100vh;min-height:0;background:#223226;color:var(--color-white);display:flex;align-items:stretch;padding-bottom:0;overflow:hidden;z-index:0}@media (min-width: 981px){.hero{position:relative;top:auto}}body.modal-open{overflow:hidden}.site-loader{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--color-forest);z-index:9999;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .6s ease,visibility .6s ease}.site-loader.is-active{opacity:1;visibility:visible;pointer-events:auto}.site-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.site-loader-animation{width:min(44vw,220px);height:min(44vw,220px)}.site-loader-animation:empty:after{content:"";display:block;width:60px;height:60px;margin:auto;border:2px solid rgba(246,241,230,.38);border-top-color:var(--color-yellow);border-radius:50%;animation:loader-spin .9s linear infinite}@keyframes loader-spin{to{transform:rotate(360deg)}}body.is-loading{overflow:hidden}.hero-content{width:100%;position:relative;z-index:3;height:100%;display:flex;flex-direction:column;padding-inline:6vw;max-width:none}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.hero-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:1;transition:opacity .8s ease}.hero-video.is-fading{opacity:.85}.hero-video.is-hidden,.hero-video-mobile{display:none}.hero-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transform:scale(1.02);transform-origin:center;will-change:transform;z-index:0;display:none}.hero-image img{width:100%;height:100%;object-fit:cover;display:block}.hero-media.use-image-fallback .hero-image{display:block}.hero-media.use-image-fallback .hero-video-desktop,.hero-media.use-image-fallback .hero-video-mobile{display:none}.hero-tree{position:absolute;bottom:-2%;height:100vh;width:auto;z-index:3;filter:drop-shadow(0 18px 30px rgba(0,0,0,.4));pointer-events:none;will-change:transform,opacity;opacity:1}.hero-tree-right{right:0}.hero-tree-left{left:0;transform:none}.hero-media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0000008c,#00000038,#0000 70%);z-index:1}.hero-title.hero-split{text-align:left;color:var(--color-white);text-shadow:0 12px 30px rgba(0,0,0,.35);line-height:.88;letter-spacing:-1px;font-size:clamp(32px,min(5.2vw,9.5vh),92px);font-family:var(--font-body);font-weight:500}.hero-line{display:block;overflow:hidden}.hero-line-small{font-size:.65em}.hero-cta{align-self:start;font-size:14px;padding:16px 26px;width:max-content}.hero-booking-inline{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;position:relative}.hero-booking-field{display:grid;gap:6px}.hero-booking-close{display:none}.hero-booking-field span{font-family:var(--font-body);font-size:11px;letter-spacing:.08em;color:#ffffffeb}.hero-booking-field input,.hero-booking-field select{height:40px;border-radius:999px;border:none;background:#0000004d;color:var(--color-white);padding:0 14px;font-family:var(--font-body);font-size:13px}.hero-booking-field input{min-width:155px}.hero-booking-field select{min-width:88px}.hero-booking-field input::-webkit-calendar-picker-indicator{filter:invert(1)}.booking-request-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:24px}.booking-request-modal[hidden]{display:none}.booking-request-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#08100d8c}.booking-request-panel{position:relative;z-index:1;width:min(560px,92vw);background:var(--color-beige);border:2px solid var(--color-forest);border-radius:18px;padding:24px;color:var(--color-forest)}.booking-request-panel h3{margin:0 0 14px;font-size:clamp(24px,2.2vw,32px);line-height:1.1}.booking-request-close{position:absolute;top:12px;right:12px;border:0;background:transparent;color:var(--color-forest);font-size:22px;line-height:1}.booking-request-form{display:grid;gap:10px}.booking-request-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.booking-request-grid label:last-child{grid-column:1 / -1}.booking-request-form label{display:grid;gap:4px}.booking-request-form span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.booking-request-form input,.booking-request-form textarea{width:100%;border:1px solid rgba(42,88,67,.35);border-radius:10px;padding:10px 12px;font-family:var(--font-body);font-size:14px;color:var(--color-forest);background:#ffffff80}.booking-request-form textarea{resize:vertical}.booking-request-form .btn{margin-top:4px;justify-self:start}.hero-split .char{display:inline-block;will-change:transform,opacity;transform-origin:50% 100%}.reveal-text{position:relative}.reveal-text .line{display:block;overflow:hidden;text-align:center;text-wrap:balance;-webkit-hyphens:none;hyphens:none;padding-top:.08em;margin-top:-.08em;padding-bottom:.04em;margin-bottom:-.04em}.reveal-text.is-visible .line{overflow:visible}.reveal-text .line-inner{display:inline-block;will-change:transform}.reveal-word{display:inline-block;will-change:transform,opacity}.hero-headline{position:absolute;top:auto;bottom:15%;left:6vw;right:auto;display:grid;gap:16px}.hero-note{position:absolute;right:6vw;bottom:125px;color:var(--color-white);font-family:var(--font-body);font-weight:500;font-size:18px;line-height:1.3;text-align:right;text-shadow:0 10px 24px rgba(0,0,0,.35);max-width:240px}.booking-panel{position:relative;margin-top:auto;margin-inline:auto;margin-bottom:0;z-index:4;padding:0;background:transparent;border-radius:18px;max-width:760px;width:min(92vw,760px);color:var(--color-forest)}.booking-inner{display:flex;align-items:center;gap:12px;padding:18px}.booking-fields{display:flex;gap:12px;align-items:center;flex:1}.booking-cta{white-space:nowrap}.booking-glass{background:#f6f1e68c;backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border:1px solid rgba(255,255,255,.4);box-shadow:0 16px 40px #00000026;overflow:visible}.booking-field{background:#ffffffbf;border-radius:12px;padding:12px 14px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;position:relative}.booking-field-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:0;margin:0;width:100%;color:var(--color-forest);font:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.booking-date-input{width:100%;border:1px solid rgba(42,88,67,.25);border-radius:10px;background:#fff;color:var(--color-forest);padding:10px 12px;font-family:var(--font-body);font-size:14px;min-height:46px;letter-spacing:normal}.booking-date-popover{position:absolute;bottom:calc(100% + 10px);left:0;min-width:250px;background:#fff7ea;border:1px solid rgba(42,88,67,.25);border-radius:14px;padding:12px;box-shadow:0 14px 30px #0003;z-index:30;text-transform:none;letter-spacing:normal}.booking-date-popover-label{display:block;margin-bottom:8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-body);font-weight:700;color:var(--color-forest)}.booking-guests-popover{position:absolute;bottom:calc(100% + 10px);left:0;min-width:250px;background:#fff7ea;border:1px solid rgba(42,88,67,.25);border-radius:14px;padding:12px;box-shadow:0 14px 30px #0003;z-index:30;text-transform:none;letter-spacing:normal}.booking-guests-row{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:14px}.booking-guests-row+.booking-guests-row{margin-top:10px;padding-top:10px;border-top:1px solid rgba(42,88,67,.15)}.booking-guests-controls{display:inline-flex;align-items:center;gap:8px}.booking-guests-controls button{width:28px;height:28px;border-radius:50%;border:1px solid rgba(42,88,67,.35);background:#fff;color:var(--color-forest);font-size:18px;line-height:1;cursor:pointer}.booking-guests-controls span{min-width:14px;text-align:center;font-family:var(--font-body);font-weight:600}.scroll-cue{position:absolute;left:50%;bottom:20px;transform:translate(-50%);margin:0;display:none;flex-direction:column;align-items:center;gap:8px;color:var(--color-yellow);text-transform:uppercase;letter-spacing:.2em;font-size:11px}.scroll-cue-arrow{width:18px;height:18px;border-right:2px solid var(--color-yellow);border-bottom:2px solid var(--color-yellow);transform:rotate(45deg);animation:scroll-bounce 1.6s ease-in-out infinite}@keyframes scroll-bounce{0%{transform:translateY(0) rotate(45deg);opacity:.6}50%{transform:translateY(8px) rotate(45deg);opacity:1}to{transform:translateY(0) rotate(45deg);opacity:.6}}.booking-field{background:#fff7ea;border-radius:12px;padding:12px 14px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.section{padding:100px 0 30px;background:var(--color-beige);position:relative;z-index:1}@media (min-width: 981px){.section{padding-inline:5%!important}.section.section-full-width{padding-inline:0!important;padding-bottom:32px}}.section.center{text-align:center}.section-feature{--feature-beige-start: 75%;background:linear-gradient(to bottom,var(--color-forest) 0,var(--color-forest) var(--feature-beige-start),var(--color-beige) var(--feature-beige-start),var(--color-beige) 100%);padding-top:160px;padding-bottom:60px}.center{margin-top:0!important}.section.center .content-wrap{position:relative}.intro-text{max-width:1700px;margin:18px auto 200px}.intro-text.reveal-text .line{padding-top:.15em;margin-top:-.15em;padding-bottom:.15em;margin-bottom:-.15em}.after-lodgings-illu{position:absolute;top:-180px;right:8%;width:200px;height:auto;pointer-events:none}.card-photo{border-radius:var(--radius-lg);height:70vh;background:linear-gradient(140deg,#0000001a,#0006),linear-gradient(120deg,#d5d9c8,#8aa07f 70%);background-size:cover;background-position:center}.gallery-header{display:none}.gallery-arrows{display:inline-flex;gap:8px}.gallery-arrow{width:55px;height:55px;border-radius:50%;border:2px solid var(--color-forest);background:transparent;color:var(--color-forest);font-size:29px;display:inline-flex;align-items:center;justify-content:center}.gallery-slider{margin-top:24px;overflow:hidden;position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}@media (hover: hover) and (pointer: fine){.gallery-slider.is-draggable{cursor:grab;-webkit-user-select:none;user-select:none}.gallery-slider.is-draggable.is-dragging{cursor:grabbing}}.gallery-slider .gallery-arrows{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:0 2.2vw;pointer-events:none}.gallery-slider-arrow{width:56px;height:56px;border:1.5px solid rgba(255,255,255,.55);background:#0a100e29;color:var(--color-white);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);pointer-events:auto}.gallery-track{display:flex;gap:18px;will-change:transform}.gallery-track .card-photo{flex:0 0 max(26vw,290px)}.feature-grid{margin-top:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:22px;row-gap:22px;align-items:stretch}.feature-card{background:#fff7ea;border-radius:20px;padding:26px;min-height:460px;display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden;border:2px solid var(--color-forest)}.feature-card h3{font-family:var(--font-body);font-weight:600;font-size:1.7vw;width:80%}.p-card-illu{font-family:var(--font-body);font-size:14px;font-weight:500;letter-spacing:.02em;line-height:1.2;color:#2a5843c2;text-align:left;width:68%}.feature-illustration{position:absolute;right:20px;bottom:16px;width:108px;height:108px;border-radius:50%;border:2px dashed rgba(42,88,67,.2)}.feature-card-plaine{overflow:hidden}.feature-card-plaine h3,.feature-card-plaine .p-card-illu{position:relative;z-index:2}.feature-card-plaine .feature-illustration-img{position:absolute;left:0;bottom:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.feature-card-spa{overflow:hidden}.feature-card-spa h3,.feature-card-spa .p-card-illu{position:relative;z-index:2}.feature-card-spa .feature-illustration-img{position:absolute;right:0;bottom:-20px;width:70%;height:auto;pointer-events:none}.feature-card-gites{overflow:hidden}.feature-card-gites h3,.feature-card-gites .p-card-illu{position:relative;z-index:2}.feature-card-gites .feature-illustration-img{position:absolute;left:0;bottom:0;width:100%;height:auto;object-fit:contain;pointer-events:none}.section-lodgings-feature{position:relative;background:var(--color-beige);--bg-start: clamp(430px, 40vh, 560px);--bg-end: clamp(680px, 54vh, 880px)}.section-lodgings-feature .section{position:relative;z-index:1;background:transparent}.section-lodgings-feature .section-feature{background:transparent;padding-top:12px;padding-bottom:90px}@media (max-width: 980px){.section-lodgings-feature{--bg-end: clamp(460px, 40vh, 660px)}.section-lodgings-feature .section-feature{padding-top:24px;padding-bottom:60px}}.section-dark{background:none;color:var(--color-forest);padding-top:80px}.section-dark h2,.section-dark .label,.section-dark p{color:var(--color-forest)}.section-dark h2{font-weight:400!important;margin-bottom:150px!important;font-size:clamp(26px,2.6vw,34px);letter-spacing:.01em;line-height:1.2}.feature-bridge{margin:0 auto 42px;max-width:760px;text-align:center;font-family:var(--font-body);font-size:14px;font-weight:500;letter-spacing:.02em;line-height:1.2;color:#2a5843c2}.feature-bridge .semi-italic{font-family:Libre Baskerville,serif;font-style:italic;font-weight:700}.lodgings-duo{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:56px;text-align:center}.lodging-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;height:clamp(300px,34vw,500px);min-height:300px;cursor:pointer}.lodging-card-video{position:absolute;top:-30px;left:0;right:0;width:100%;height:calc(100% + 60px);object-fit:cover;display:block;filter:brightness(.72);transition:filter .5s ease;z-index:1}.lodging-card-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.72);z-index:0}.lodging-card:hover .lodging-card-video{filter:brightness(.5)}.lodging-card-body{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;text-align:center;gap:0;z-index:2}.lodging-label{font-family:var(--font-body);font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#fffc;margin-bottom:14px}.lodging-title{font-family:var(--font-body);font-weight:300;font-size:clamp(26px,2.4vw,44px);letter-spacing:-1px;line-height:1.05;color:var(--color-white);margin-bottom:28px;text-wrap:balance;text-align:center}.lodging-title .semi-italic{font-family:Libre Baskerville,serif;font-style:italic;font-weight:700}.lodging-cta{color:var(--color-white)!important;background-color:#1b1b1b66!important;border-color:#ffffff8c!important;font-size:12px;letter-spacing:.09em;padding:13px 26px}.lodging-cta:hover{background:var(--color-white)!important;color:var(--color-forest)!important;border-color:var(--color-white)!important}.lodging-infra{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:20px}.lodging-card-full{width:100%;cursor:default;height:clamp(260px,30vw,420px);min-height:260px}.lodging-card-full .lodging-card-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.65)}.lodging-infra-cta{color:var(--color-forest)!important;background-color:transparent!important;border-color:var(--color-forest)!important}.lodging-infra-cta:hover{background:var(--color-forest)!important;color:var(--color-white)!important}.banner{margin-top:32px;border-radius:0;min-height:0;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:0;display:block;color:var(--color-yellow);position:relative;overflow:hidden;align-self:center}.banner-video{position:relative;width:100%;height:auto;display:block}.banner-video-mobile{display:none}.banner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#00000047,#0006);z-index:1}.banner-content{position:absolute;top:7%;right:0;bottom:6%;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 34px;text-align:center;color:var(--color-yellow)}.banner-content .btn{position:absolute;left:50%;bottom:10%;transform:translate(-50%)}.banner-content .label{color:var(--color-yellow)}.banner-title{font-family:var(--font-heading);font-weight:400;font-size:clamp(28px,3vw,38px);line-height:1.2;text-align:center;color:var(--color-yellow);margin:8px 0 14px}.testimonials-header{margin-top:36px;display:flex;justify-content:flex-end}.testimonials-arrows{display:inline-flex;gap:8px}.testimonials-slider{margin-top:12px;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:var(--content-padding);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.testimonials-slider::-webkit-scrollbar{display:none}.testimonials-track{display:flex;gap:18px;width:max-content}.testimonial-card{background:#fff7ea;border-radius:20px;padding:22px 24px 112px;border:2px solid var(--color-forest);flex:0 0 auto;width:clamp(260px,28vw,360px);height:clamp(260px,28vw,360px);display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;position:relative}.testimonial-card:after{content:"";position:absolute;left:50%;bottom:14px;transform:translate(-50%);width:175px;height:50px;background:url(/lasourcedarimont/img/googlereview_logo.png) no-repeat center / contain;pointer-events:none}.testimonial-meta{font-family:var(--font-body);font-weight:400;font-size:12px;line-height:1.2;text-align:left;align-self:flex-start}.testimonial-card strong{font-family:var(--font-heading);font-weight:700;font-size:24px;line-height:1;text-align:left;align-self:flex-start;margin-top:8px}.testimonial-card p{font-family:var(--font-heading);font-weight:400;font-size:16px;line-height:1.35;margin:auto 0 0;text-align:center;align-self:center;justify-self:center;max-width:90%}.testimonial-card p:after{display:none}.testimonial-stars{margin-top:2px;margin-bottom:auto;font-family:var(--font-body);font-size:14px;letter-spacing:.1em;color:var(--color-forest);text-align:center;align-self:center}.testimonials-slider,.testimonials-track,.testimonial-card,.testimonial-card strong{position:relative;z-index:2}.section-footer-reviews .label,.section-footer-reviews h2{color:var(--color-forest)}.section-footer-reviews .intro-text{margin:18px auto 0}.essence{display:block;padding-top:0;margin-top:0!important}@media (max-width: 980px){.section-feature{margin-top:60px}.section-lodgings-feature .section-dark{padding-bottom:0}.section-dark .lodgings-intro-text{margin-bottom:80px!important}.lodgings-duo.js-lodgings-duo{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:.95fr 1.05fr;gap:5px;margin-top:24px;height:80vh;text-align:center}.lodgings-duo.js-lodgings-duo>.lodging-card{height:100%;min-height:0;border-radius:12px}.lodging-infra{grid-column:1 / -1;min-height:0}.lodging-card-full{height:100%;min-height:0;border-radius:12px}.lodging-card-body{padding:14px 12px}.lodging-title{font-size:clamp(10px,2.2vw,12px);text-align:center}.lodging-label{font-size:9px}.lodging-cta{padding:8px 12px;font-size:9px!important}.essence{display:block;padding-top:10px;margin-top:0!important}.feature-bridge{margin:20px auto 60px;max-width:84vw;text-align:center;font-size:12px;line-height:1.35}.section-dark{background:none}.hero-headline{gap:39px;top:auto;bottom:100px;left:6vw;right:6vw;transform:none}.hero-note{top:130px;left:6vw;right:6vw;bottom:auto;transform:none;text-align:center;width:auto;max-width:none;font-size:16px}.nav-links{display:none}.hero{position:relative;top:auto;z-index:1;height:95vh;height:95svh;min-height:0;padding-bottom:0}.hero-title.hero-split{font-size:clamp(34px,min(9.2vw,7.6vh),58px);text-align:left;width:100%}h2{font-size:clamp(20px,5.6vw,28px);line-height:1.24}.section-dark h2{font-size:clamp(20px,5.6vw,28px)!important;line-height:1.24}.hero-cta{align-self:center;margin-top:14px;margin-left:auto;margin-right:auto;display:inline-flex;position:relative;z-index:3}.hero-booking-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:min-content;gap:8px;width:100%;max-width:460px;margin-inline:auto;overflow:hidden;height:0;opacity:0;pointer-events:none;position:absolute;left:0;right:0;bottom:62px;z-index:2}.hero-booking-field{width:100%}.hero-booking-field input,.hero-booking-field select{width:100%;min-width:0;height:38px;font-size:12px;padding:0 12px}.hero-booking-field span{font-size:10px}.hero-booking-close{display:inline-flex;grid-column:1 / -1;justify-self:end;align-items:center;justify-content:center;width:auto;height:auto;border:none;background:transparent;color:var(--color-white);font-size:24px;line-height:1;padding:0;opacity:0;pointer-events:none}.booking-request-panel{width:min(520px,94vw);padding:20px 16px}.booking-request-grid{grid-template-columns:1fr}.booking-request-form .btn{width:100%;justify-content:center}@media (max-width: 420px){.hero-booking-inline{grid-template-columns:1fr;gap:10px}}.hero-video{display:none}.hero-video-mobile{display:block}.hero-image img{object-position:58% 8%!important;transform:none}.hero-image{display:none}.hero-media{background-image:url(/lasourcedarimont/img/hero_mobile.webp);background-size:cover;background-position:58% 8%}.hero-tree,.gallery-slider .gallery-arrows{display:none}.gallery-slider{overflow:hidden;touch-action:auto}.gallery-track{display:flex;width:auto;pointer-events:auto}.lodging-card-video{display:none}.lodging-card-img{z-index:0}.gallery-track .card-photo{scroll-snap-align:none}.booking-inner,.booking-fields{flex-direction:column;align-items:stretch}.booking-field{width:100%;text-align:center}.booking-field-button{text-align:center}.booking-guests-popover{bottom:calc(100% + 8px);left:0;right:0;min-width:0}.booking-date-popover{bottom:calc(100% + 8px);left:50%;right:auto;transform:translate(-50%);width:min(300px,calc(100vw - (var(--content-padding) * 2)));max-width:100%;padding:14px;min-width:0}.booking-date-popover-label{font-size:13px;margin-bottom:10px}.booking-date-input{font-size:16px;min-height:52px}.gallery-track .card-photo{flex:0 0 55vw;height:50vh}.banner{min-height:0}.banner-video-desktop{display:none}.banner-video-mobile{display:block}.banner-content{top:9%;right:0;bottom:8%;left:0;padding:20px var(--content-padding)}.feature-grid{display:flex;margin-top:10px;gap:14px;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:0;padding-right:0;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scroll-snap-type:none;scroll-padding-inline:var(--content-padding);touch-action:auto;overscroll-behavior-x:contain}.feature-grid::-webkit-scrollbar{display:none}.feature-grid:before,.feature-grid:after{content:"";flex:0 0 var(--content-padding)}.feature-card{flex:0 0 30vw;width:30vw;height:41vh;min-height:41vh;min-width:57vw;padding:16px;scroll-snap-align:none;transform:none!important}.feature-card h3{font-size:22px}.feature-card:first-child,.feature-card-plaine,.feature-card-spa,.feature-card-gites{grid-row:auto;height:41vh;min-height:41vh}.p-card-illu{width:84%;font-size:13px;line-height:1.35}.feature-card-spa .feature-illustration-img{width:100%;height:auto;bottom:-20px}.feature-card-gites .feature-illustration-img{width:100%;height:auto;bottom:0;object-fit:contain}.lodgings-grid{grid-template-columns:1fr}.lodgings-grid .lodging-card{height:400px;padding:15px}.testimonials-arrows{display:inline-flex}.testimonials-slider{scroll-snap-type:x proximity;touch-action:auto;overscroll-behavior-x:contain}.section-footer-reviews{--footer-rise: 110px;padding-bottom:0}.section-footer-reviews .testimonials-slider{margin-bottom:-30px;padding-bottom:30px}.testimonials-track{width:max-content}.testimonial-card{flex:0 0 auto;width:78vw;height:78vw;scroll-snap-align:center}.testimonial-card:after{left:50%;transform:translate(-50%)}.hero-image{top:-50px}.icon-birds{left:calc(50% - 70px);transform:translate(-50%) scale(.8);margin-top:-150px}.p-card-illu{width:100%;line-height:1.1em;font-size:14px}.after-lodgings-illu{top:-120px;right:10%;width:120px}.intro-text{margin:18px auto 100px}}.section-groups{background:var(--color-beige);color:var(--color-forest);overflow:hidden;padding-top:80px;padding-bottom:0}.section-groups+.section.center{padding:0!important;background:var(--color-beige)}.section-groups+.section.center .banner{margin-top:0}.section-groups h2,.section-groups h3,.section-groups p,.section-groups span,.section-groups strong,.section-groups li{color:var(--color-forest)}.groups-inner{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;padding-bottom:80px}.groups-text{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.groups-label{color:var(--color-forest);opacity:1}.groups-title{font-size:clamp(2rem,3.2vw,2.8rem);line-height:1;margin:0;text-wrap:balance;font-family:var(--font-body);font-weight:600;text-align:left}.groups-title .line{text-align:left}.groups-lead{font-size:clamp(.95rem,1.2vw,1.1rem);line-height:1.4;opacity:.78;max-width:480px;margin:0}.groups-lead strong{color:var(--color-forest);opacity:1;font-weight:700}.groups-features{list-style:none;padding:0;margin:0;display:flex;gap:40px}.groups-features li{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.groups-feat-number{font-size:clamp(2rem,3.5vw,3rem);font-family:var(--font-display);line-height:1;color:var(--color-forest)}.groups-feat-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;opacity:.55;font-weight:600}.groups-cta-wrap{display:flex;gap:14px;flex-wrap:wrap;margin-top:0}.groups-cta{display:inline-flex;width:fit-content;margin:0}.groups-cta-secondary{color:var(--color-forest);border-color:#2a584399}.groups-visuals{display:grid;grid-template-rows:1fr 1fr;gap:16px;height:520px}.groups-img{border-radius:12px;overflow:hidden}.groups-img img{width:100%;height:calc(100% + 60px);margin-top:-30px;object-fit:cover;display:block}@media (max-width: 900px){.section-groups{padding-top:40px;min-height:80vh}.groups-inner{grid-template-columns:1fr;gap:22px;padding-bottom:100px;align-items:start}.groups-text{display:contents}.groups-title,.groups-title .line,.groups-lead{text-align:center}.groups-visuals{grid-template-rows:none;grid-template-columns:1fr;height:auto;min-height:45vh;order:5}.groups-img{aspect-ratio:4 / 3}.groups-img--secondary{display:none}.groups-label{order:1}.groups-title{order:2}.groups-lead{order:3}.groups-features{order:4;justify-content:center}.groups-features li{align-items:center}.groups-cta-wrap{order:6;justify-content:center;flex-wrap:nowrap;gap:10px}.groups-cta{flex:0 1 auto;min-width:0;padding:12px 18px;font-size:12px}}@media (max-width: 540px){.groups-features{gap:24px}.groups-visuals{grid-template-columns:1fr;height:auto;min-height:40vh}.groups-img{aspect-ratio:4 / 3}}
