450;500;550;600;650;700&display=swap');
.catalog-app{--ca-paper:#f3f7f2;--ca-ink:#143e35;--ca-muted:#526a5c;--ca-line:#d3dfd4;--ca-lime:#cee2ce;--ca-ease:cubic-bezier(.23,1,.32,1);margin:0;background:var(--ca-paper);color:var(--ca-ink);font:400 16px/1.6 'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}
.catalog-app *{box-sizing:border-box}.catalog-app a{color:inherit;text-decoration:none}.catalog-app button,.catalog-app input,.catalog-app select{font:inherit;color:inherit}.catalog-app button,.catalog-app a,.catalog-app summary{touch-action:manipulation}.catalog-app button,.catalog-app summary{cursor:pointer}.catalog-app button{user-select:none}.catalog-app :where(a,button,input,select,summary):focus-visible{outline:3px solid #426849;outline-offset:4px}.catalog-app :where(h1,h2,h3,p){margin:0}.catalog-app :where(h1,h2,h3){line-height:1.1;font-weight:500;letter-spacing:-.055em;text-wrap:balance}.catalog-app [hidden]{display:none!important}.ca-sr{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.ca-skip{position:fixed;z-index:100;left:20px;top:-100px;background:var(--ca-ink);color:white!important;padding:14px 22px;border-radius:30px}.ca-skip:focus{top:12px}.ca-header{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1512px;margin:auto;padding:28px 4.5%;min-height:100px}.ca-brand{display:flex;align-items:center;gap:12px;line-height:1.12;font-size:12px;font-weight:550;letter-spacing:-.2px}.ca-monogram{font-size:37px;letter-spacing:-5px;font-weight:600;padding-right:5px}.ca-monogram>span{color:#538864}.ca-header nav{display:flex;gap:10px;align-items:center}.ca-header nav a{font-size:13px;display:flex;gap:24px;align-items:center;padding:12px 21px;border-radius:30px;min-height:46px}.ca-header nav a[aria-current]{background:var(--ca-ink);color:white}.ca-intro,.ca-results,.ca-faq,.ca-detail{max-width:1512px;margin:auto;padding-inline:4.5%}.ca-intro{padding-top:60px;padding-bottom:54px}.ca-eyebrow{font-size:10px;font-weight:650;letter-spacing:.16em;display:flex;gap:10px;align-items:center}.ca-eyebrow i{width:6px;height:6px;border-radius:50%;background:#4f815f}.ca-intro-row{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-top:25px;margin-bottom:40px}.ca-intro h1{font-size:clamp(40px,5.3vw,76px);line-height:1.04;font-weight:450}.ca-intro h1>span{color:#65806e}.ca-intro-row>p{font-size:15px;line-height:1.7;max-width:280px;color:var(--ca-muted);padding-bottom:8px}.ca-search{display:grid;grid-template-columns:1.25fr 1fr 1fr auto;align-items:center;gap:0;background:white;border:1px solid var(--ca-line);border-radius:18px;box-shadow:0 7px 24px #143e3505;padding:12px}.ca-search label{min-width:0;padding:5px 24px;border-right:1px solid var(--ca-line)}.ca-search label>span{font-size:11px;display:block;font-weight:650;margin-bottom:7px}.ca-search label>div{display:flex;align-items:center;gap:8px}.ca-search label svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.5;flex-shrink:0}.ca-search select,.ca-search input{width:100%;border:0;background:transparent;font-size:16px;min-height:32px;padding:0;outline-offset:5px}.ca-search input::placeholder{color:#528562}.ca-search label>div>span{font-size:15px}.ca-search-go{border:0;background:var(--ca-lime);border-radius:13px;width:64px;min-height:64px;margin-left:12px;display:grid;place-items:center;transition:background 160ms ease}.ca-search-go svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6}.ca-search-go>span{display:none}.ca-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px}.ca-toolbar h2{font-size:27px;font-weight:500;letter-spacing:-.04em}.ca-toolbar p{font-size:12px;color:var(--ca-muted);margin-top:7px}.ca-tools{display:flex;gap:10px;align-items:center}.ca-save-filter{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:1px solid var(--ca-line);border-radius:30px;background:transparent;min-height:44px;font-size:12px!important}.ca-save-filter[aria-pressed=true]{background:var(--ca-lime);border-color:var(--ca-lime)}.ca-save-filter svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5}.ca-save-filter>span{font-size:10px;font-weight:650;min-width:15px}.ca-sort select{border:1px solid var(--ca-line);border-radius:30px;background:transparent;min-height:44px;padding:8px 28px 8px 14px;font-size:12px}.ca-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px}.ca-card{min-width:0}.ca-card-photo{position:relative;aspect-ratio:1.38;border-radius:14px;overflow:hidden;background:#dae6de}.ca-card-photo>a{display:block;width:100%;height:100%}.ca-card-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 300ms var(--ca-ease)}.ca-card-badge{position:absolute;left:14px;top:14px;padding:5px 10px;border-radius:30px;background:#fffffff2;color:var(--ca-ink);font-size:10px;font-weight:600;max-width:calc(100% - 78px)}.ca-favourite{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:#fffffff0;box-shadow:0 2px 10px #0000000a;transition:transform 120ms var(--ca-ease)}.ca-favourite svg{width:20px;height:20px;fill:none;stroke:var(--ca-ink);stroke-width:1.5}.ca-favourite[aria-pressed=true]{background:var(--ca-lime)}.ca-favourite[aria-pressed=true] svg{fill:var(--ca-ink)}.ca-favourite:active{transform:scale(.96)}.ca-photo-count{position:absolute;bottom:14px;right:14px;display:flex;gap:5px;align-items:center;color:#fff;background:#143e35b8;padding:4px 8px;border-radius:20px;font-size:10px}.ca-photo-count svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.5}.ca-card-copy{padding:18px 2px 0}.ca-card-top{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:10px}.ca-card-city{font-size:11px;color:var(--ca-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ca-card-price{font-size:20px;letter-spacing:-.04em;white-space:nowrap;font-weight:550}.ca-card-price small{font-size:11px;letter-spacing:0;color:var(--ca-muted);font-weight:400}.ca-card h3{font-size:17px;line-height:1.35;letter-spacing:-.025em;max-width:92%;text-wrap:initial;overflow-wrap:anywhere}.ca-card-bottom{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.ca-card-facts{display:flex;flex-wrap:wrap;gap:6px;font-size:11px;color:var(--ca-muted)}.ca-card-facts span{padding:4px 9px;border:1px solid var(--ca-line);border-radius:20px}.ca-card-link{font-size:12px;display:inline-flex;align-items:center;gap:8px;min-height:44px;flex-shrink:0}.ca-card-link span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e2ebe4;font-size:16px}.ca-active{display:flex;gap:20px;align-items:center;margin:-4px 0 22px;font-size:12px}.ca-active button{background:none;border:0;text-decoration:underline;min-height:44px}.ca-active button span{margin-left:5px}.ca-empty{text-align:center;border:1px dashed #a9c3b1;padding:65px 20px;border-radius:15px}.ca-empty>span{font-size:44px;color:#538864}.ca-empty h3{font-size:30px;margin:16px 0}.ca-empty p{color:var(--ca-muted);max-width:480px;margin:0 auto 25px}.ca-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:0;border-radius:40px;background:var(--ca-ink);color:white!important;min-height:50px;padding:14px 24px;font-size:14px}.ca-source{font-size:11px;color:#538864;margin-top:36px;max-width:800px}.ca-next{margin:90px auto 0;max-width:1512px;background:#e2ebe4;padding:65px 4.5% 70px;border-radius:24px}.ca-next>h2{font-size:clamp(32px,4vw,52px);margin-top:24px;font-weight:450}.ca-next-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:55px}.ca-next-grid article{border-top:1px solid #b2c9b9;padding-top:22px}.ca-next-grid article>span{font-size:11px;color:#538864}.ca-next-grid h3{font-size:21px;margin:18px 0 12px;letter-spacing:-.035em}.ca-next-grid p{font-size:14px;line-height:1.7;color:var(--ca-muted);max-width:290px}.ca-faq{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;padding-top:95px;padding-bottom:100px}.ca-faq h2{font-size:48px;margin-top:24px;font-weight:450}.ca-faq details{border-bottom:1px solid var(--ca-line)}.ca-faq summary{list-style:none;position:relative;padding:23px 30px 23px 0;font-size:16px;font-weight:500}.ca-faq summary::-webkit-details-marker{display:none}.ca-faq summary:after{content:'+';position:absolute;right:0;font-size:21px;font-weight:400;top:19px}.ca-faq details[open] summary:after{content:'−'}.ca-faq details p{font-size:14px;color:var(--ca-muted);padding-bottom:25px;line-height:1.8}.ca-footer{background:var(--ca-ink);color:#f3f7f2;padding:48px 4.5% 28px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.ca-footer>p{font-size:18px;letter-spacing:-.03em}.ca-footer>a:last-of-type{font-size:14px}.ca-footer small{width:100%;font-size:10px;opacity:.65;border-top:1px solid #ffffff24;margin-top:16px;padding-top:24px}.ca-noscript{padding:20px;position:fixed;bottom:0;left:0;right:0;background:white;z-index:100;box-shadow:0 -2px 20px #0001}.ca-noscript a{text-decoration:underline}
/* Fiche et galerie, même rythme que le catalogue. */
.ca-detail{padding-top:25px;padding-bottom:85px}.ca-back{font-size:13px;display:inline-flex;min-height:44px;align-items:center;margin-bottom:22px}.ca-detail-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.ca-detail-heading h1{font-size:clamp(30px,3.2vw,46px);max-width:850px;overflow-wrap:anywhere}.ca-detail-heading .ca-eyebrow{margin-bottom:18px}.ca-detail-heading>button{position:static;flex-shrink:0;border:1px solid var(--ca-line)}.ca-detail-facts{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px;font-size:12px}.ca-detail-facts span{padding:7px 13px;background:#e1eae4;border-radius:20px}.ca-photo-grid{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:230px 230px;gap:12px;border-radius:18px;overflow:hidden;position:relative;background:#dfe9e2}.ca-photo-grid>button{padding:0;border:0;background:#dfe9e2;overflow:hidden;position:relative;min-width:0}.ca-photo-grid>button:first-child{grid-row:1/3}.ca-photo-grid img{width:100%;height:100%;object-fit:cover;display:block}.ca-photo-grid button>span{position:absolute;bottom:18px;right:18px;background:#ffffffed;padding:9px 15px;border-radius:24px;font-size:12px}.ca-detail-body{display:grid;grid-template-columns:1.4fr .8fr;gap:10%;align-items:start;margin-top:46px}.ca-description h2{font-size:28px;margin-bottom:24px}.ca-description p{white-space:pre-line;line-height:1.85;color:#457053;font-size:15px}.ca-amenities{list-style:none;padding:0;display:flex;gap:10px;flex-wrap:wrap;margin:30px 0}.ca-amenities li{padding:9px 14px;border:1px solid var(--ca-line);border-radius:24px;font-size:13px}.ca-booking{border:1px solid var(--ca-line);border-radius:20px;padding:28px;background:#fff;position:sticky;top:30px}.ca-booking .ca-detail-price{font-size:36px;line-height:1.1;letter-spacing:-.05em}.ca-detail-price small{font-size:13px;letter-spacing:0;color:var(--ca-muted)}.ca-booking del{font-size:15px;color:var(--ca-muted);margin-right:8px}.ca-booking>p{font-size:13px;color:var(--ca-muted);margin:20px 0}.ca-booking .ca-button{width:100%;background:var(--ca-lime);color:var(--ca-ink)!important;font-weight:550}.ca-booking .ca-official{font-size:11px;text-align:center;margin-bottom:0}.ca-booking .ca-official a{text-decoration:underline}.ca-detail-source{margin-top:30px;font-size:11px;color:var(--ca-muted)}.ca-mobile-book{display:none}.ca-gallery-dialog{border:0;border-radius:18px;background:#f3f7f2;color:var(--ca-ink);width:min(1100px,95vw);max-height:94dvh;padding:20px}.ca-gallery-dialog::backdrop{background:#102b24d9}.ca-gallery-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.ca-gallery-top h2{font-size:18px;letter-spacing:-.02em}.ca-icon-button{border:1px solid var(--ca-line);border-radius:50%;background:white;min-width:46px;height:46px;display:grid;place-items:center;font-size:23px}.ca-gallery-stage{position:relative;display:flex;justify-content:center;margin-top:18px;min-height:180px}.ca-gallery-stage>img{max-width:100%;height:70dvh;object-fit:contain}.ca-gallery-prev,.ca-gallery-next{position:absolute;top:calc(50% - 23px);box-shadow:0 3px 14px #0002}.ca-gallery-prev{left:0}.ca-gallery-next{right:0}.ca-gallery-dialog>p{text-align:center;font-size:12px;margin-top:10px}
@media(hover:hover) and (pointer:fine){.ca-card-photo>a:hover img{transform:scale(1.025)}.ca-card h3 a:hover{text-decoration:underline;text-underline-offset:4px}.ca-header nav a:not([aria-current]):hover{background:#e0eae3}.ca-button:hover{filter:brightness(.95)}.ca-favourite:hover{background:var(--ca-lime)}}
@media(min-width:1600px){.ca-next{padding-inline:68px}}
@media(max-width:1100px){.ca-intro-row>p{max-width:210px}.ca-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ca-search label{padding-inline:16px}.ca-intro h1{font-size:56px}.ca-detail-body{gap:5%;grid-template-columns:1.25fr 1fr}.ca-photo-grid{grid-template-rows:180px 180px}}
@media(max-width:700px){.ca-header{padding:20px 22px;min-height:86px;gap:14px}.ca-brand{font-size:10px;gap:9px}.ca-monogram{font-size:31px}.ca-header nav{gap:0}.ca-header nav a{font-size:11px;padding:10px 12px;gap:10px;min-height:44px}.ca-intro,.ca-results,.ca-faq,.ca-detail{padding-inline:22px}.ca-intro{padding-top:32px;padding-bottom:34px}.ca-eyebrow{font-size:9px;letter-spacing:.14em}.ca-intro-row{display:block;margin-top:22px;margin-bottom:28px}.ca-intro h1{font-size:clamp(37px,8.7vw,54px);letter-spacing:-.06em;line-height:1.08}.ca-intro-row>p{font-size:14px;margin-top:22px;max-width:none}.ca-search{grid-template-columns:1fr 1fr;border-radius:16px;padding:14px;gap:14px 0}.ca-search label{padding:0 12px}.ca-search label>span{font-size:10px;margin-bottom:6px}.ca-search label:first-child{grid-column:1/-1;padding-bottom:14px;border-right:0;border-bottom:1px solid var(--ca-line)}.ca-search label:nth-child(3){border-right:0}.ca-search select,.ca-search input{font-size:16px;min-height:36px}.ca-search-go{width:100%;grid-column:1/-1;min-height:47px;border-radius:30px;margin:0;display:flex;gap:9px;justify-content:center;align-items:center}.ca-search-go>span{display:block;font-size:13px;font-weight:600}.ca-search-go svg{width:17px;height:17px}.ca-toolbar{gap:20px;align-items:start;flex-direction:column;margin-bottom:22px}.ca-toolbar h2{font-size:25px}.ca-toolbar>div:first-child{display:flex;align-items:baseline;gap:12px}.ca-toolbar p{margin:0;font-size:11px}.ca-tools{width:100%;justify-content:space-between;gap:8px}.ca-sort select{max-width:175px;min-height:44px;font-size:11px}.ca-save-filter{font-size:11px!important;min-height:44px;padding-inline:12px}.ca-grid{grid-template-columns:1fr;gap:32px}.ca-card-photo{aspect-ratio:1.3;border-radius:13px}.ca-card-copy{padding-top:15px}.ca-card h3{font-size:18px}.ca-card-top{margin-bottom:8px}.ca-card-price{font-size:21px}.ca-card-city{font-size:11px}.ca-card-bottom{margin-top:11px}.ca-card-facts{font-size:11px}.ca-card-link{font-size:12px}.ca-source{font-size:10px;margin-top:30px}.ca-next{margin:55px 12px 0;padding:40px 22px 45px;border-radius:18px}.ca-next>h2{font-size:35px}.ca-next-grid{grid-template-columns:1fr;gap:26px;margin-top:36px}.ca-next-grid h3{font-size:22px;margin-top:12px}.ca-next-grid p{max-width:none;font-size:14px}.ca-faq{grid-template-columns:1fr;gap:30px;padding-top:60px;padding-bottom:60px}.ca-faq h2{font-size:40px;margin-top:20px}.ca-faq summary{font-size:15px;padding-block:22px}.ca-footer{padding:35px 22px calc(28px + env(safe-area-inset-bottom));gap:25px}.ca-footer>p{font-size:17px;width:100%}.ca-detail{padding-top:14px;padding-bottom:50px}.ca-back{margin-bottom:16px}.ca-detail-heading{gap:16px}.ca-detail-heading h1{font-size:31px;line-height:1.15}.ca-detail-heading .ca-eyebrow{font-size:9px}.ca-detail-facts{font-size:11px;gap:6px}.ca-photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:280px 140px;gap:7px;border-radius:14px}.ca-photo-grid>button:first-child{grid-row:auto;grid-column:1/-1}.ca-photo-grid button>span{font-size:10px;padding:7px 10px;bottom:10px;right:10px}.ca-detail-body{grid-template-columns:1fr;gap:35px;margin-top:32px}.ca-description h2{font-size:27px}.ca-description p{font-size:14px}.ca-booking{position:static;grid-row:1;padding:24px}.ca-mobile-book{display:flex;justify-content:space-between;align-items:center;gap:15px;position:fixed;bottom:0;left:0;right:0;padding:12px 22px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--ca-line);background:#f3f7f2f5;z-index:20;box-shadow:0 -4px 24px #143e3508}.ca-mobile-book strong{font-size:19px;letter-spacing:-.04em}.ca-mobile-book small{font-size:10px;display:block;color:var(--ca-muted)}.ca-mobile-book .ca-button{min-height:46px;font-size:12px;padding:12px 19px}.ca-detail-page .ca-footer{padding-bottom:110px}.ca-gallery-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0;padding:20px 14px calc(20px + env(safe-area-inset-bottom))}.ca-gallery-stage>img{height:calc(100dvh - 150px)}.ca-gallery-top h2{font-size:16px}.ca-detail-source{font-size:10px}}
@media(max-width:360px){.ca-header{padding-inline:16px}.ca-header nav a{padding-inline:9px}.ca-intro,.ca-results,.ca-faq,.ca-detail{padding-inline:16px}.ca-intro h1{font-size:35px}.ca-toolbar>div:first-child{gap:8px}.ca-toolbar h2{font-size:22px}.ca-tools{gap:5px}.ca-sort select{max-width:162px;padding-right:20px}.ca-save-filter{padding-inline:9px}}
@media(prefers-reduced-motion:reduce){.catalog-app *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.ca-photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;height:100%;padding:35px;font-size:13px;color:#526a5c;text-align:center;background:linear-gradient(145deg,#e7efea,#d8e4dc)}.ca-photo-placeholder svg{width:70px;height:70px;fill:none;stroke:#538864;stroke-width:1.5}.ca-photo-grid.ca-no-photos{display:block;height:300px}

.ca-search-go,.ca-favourite[aria-pressed=true]{color:#143e35}
.catalog-app :is(input,select):focus-visible{outline:3px solid #426849;outline-offset:3px}
