.v4-results-main{padding-bottom:72px}.v4-results-intro{padding:48px 0 25px}.v4-results-intro h1{font-size:clamp(48px,6vw,76px);margin:8px 0 12px}.v4-results-intro p{font:400 18px/1.45 var(--f-tx);max-width:65ch;margin:0}.v4-envie-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:16px 0 80px}.v4-envie-tile{background:var(--surface);border:1px solid var(--line);min-height:215px;display:flex;flex-direction:column;gap:14px;align-items:center;justify-content:center;text-align:center;padding:24px;color:var(--ink)}.v4-envie-circle{width:96px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:var(--rb);color:var(--rt)}.v4-envie-circle svg{width:38px;height:38px}.v4-envie-tile[data-rb='dormir-ailleurs'] .v4-envie-circle{color:#163C3B}.v4-envie-tile-label{font:400 20px/1.2 var(--f-tx);max-width:100%;overflow-wrap:anywhere}
.v4-filters{background:var(--soft);padding:18px 20px;margin:0 0 24px}.v4-filters fieldset{border:0;margin:15px 0;padding:0}.v4-filters legend,.v4-filter-search label{display:block;margin-bottom:8px;font:600 12px/1.4 var(--f-ui);letter-spacing:.12em;text-transform:uppercase}.v4-filter-search input{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}.v4-chip-row{display:flex;flex-wrap:wrap;gap:8px}.v4-chip{min-height:44px;display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font:400 13px/1.25 var(--f-ui);cursor:pointer}.v4-chip:has(input:checked){background:var(--ink);color:var(--bg);border-color:var(--ink)}.v4-chip input{width:16px;height:16px;accent-color:var(--accent)}.v4-filter-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.v4-filter-actions .v4-btn{min-width:170px}.v4-view-switch{display:none}.v4-map-status{padding:12px 16px;background:var(--soft);border-left:3px solid var(--accent);margin:0 0 16px}.v4-results-layout{min-width:0}.v4-results-list,.v4-map-panel{min-width:0}.v4-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.v4-list-head h2{font-size:clamp(30px,3vw,44px);margin:12px 0 18px}.v4-sheet-toggle{display:none}.v4-results-layout.has-map{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px}.v4-results-layout.has-map .v4-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.v4-results-layout.has-map .v4-card h3{font-size:clamp(23px,2vw,30px)}.v4-map-panel{position:sticky;top:16px;align-self:start}.v4-map-frame{height:clamp(380px,56vh,620px);background:var(--soft);position:relative;overflow:hidden}.v4-map-placeholder{position:absolute;inset:0;display:grid;place-items:center;padding:25px;text-align:center;color:var(--muted)}.v4-map-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.v4-map-attribution{font:400 12px/1.4 var(--f-ui);color:var(--muted);margin:8px 0}.v4-map-detail{background:var(--surface);border:1px solid var(--line);padding:15px;margin-top:10px}.v4-map-detail h3{font-size:24px;margin:4px 0}.v4-map-detail a{color:var(--accent);text-decoration:underline}.v4-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.v4-card{min-width:0;background:var(--surface);border:1px solid var(--line)}.v4-card-media{position:relative;aspect-ratio:4/3;background:var(--rb,var(--soft));color:var(--rt,var(--muted));display:grid;place-items:center;overflow:hidden}.v4-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.v4-card-media[data-rb='dormir-ailleurs'] .v4-card-fallback{color:#163C3B}.v4-card-fallback svg{width:48px;height:48px}.v4-card-media .v4-credit-overlay{position:absolute;right:8px;bottom:8px;z-index:2;max-width:calc(100% - 16px);padding:4px 7px;background:rgba(0,0,0,.88);color:#fff;font:400 12px/1.3 var(--f-ui);text-align:right}.v4-partner-badge{position:absolute;left:9px;top:9px;z-index:2;padding:5px 9px;background:var(--sand);color:var(--sand-ink);font:600 12px/1.25 var(--f-ui)}.v4-card-body{padding:16px}.v4-card h3{font-size:clamp(25px,3vw,32px);margin:6px 0}.v4-card .v4-city{color:var(--muted);font-size:13px}.v4-empty{border:1px dashed var(--line);padding:24px;color:var(--muted)}.v4-pagination{display:flex;flex-wrap:wrap;gap:8px;padding:25px 0}.v4-pagination a{min-width:44px;min-height:44px;padding:10px;display:grid;place-items:center;border:1px solid var(--line)}.v4-pagination a[aria-current]{background:var(--ink);color:var(--bg)}.v4-footer{padding:36px 0;font-size:13px;color:var(--muted)}.v4-marker-selected{box-shadow:0 0 0 3px var(--accent)}.v4-map-loading::after{content:'';display:block;width:100%;height:12px;background:linear-gradient(90deg,var(--soft),var(--surface),var(--soft));animation:v4-map-skeleton 1.2s linear infinite}@keyframes v4-map-skeleton{to{background-position:200px 0}}
@media(min-width:1360px){.v4-results-layout.has-map .v4-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1023px){.v4-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v4-results-layout.has-map .v4-card-grid{grid-template-columns:1fr}}
@media(max-width:899px){.v4-results-intro{padding:30px 0 20px}.v4-envie-index{grid-template-columns:repeat(2,minmax(0,1fr))}.v4-filters{padding:16px}.v4-view-switch{display:flex;position:sticky;top:0;z-index:5;gap:8px;background:var(--bg);padding:8px 0}.v4-view-switch .v4-btn{flex:1;padding-inline:8px}.v4-results-layout.has-map{display:block}.v4-results-layout.has-map.v4-js{position:relative;height:calc(100dvh - 122px);min-height:480px;overflow:hidden}.v4-results-layout.has-map.v4-js .v4-map-panel{position:absolute;inset:0;top:0;height:100%}.v4-results-layout.has-map.v4-js .v4-map-frame{height:100%}.v4-results-layout.has-map.v4-js .v4-results-list{position:absolute;left:0;right:0;bottom:0;z-index:3;height:35%;min-height:185px;background:var(--bg);overflow:auto;border:1px solid var(--line);padding:10px 14px;box-shadow:0 -5px 25px rgba(0,0,0,.12)}.v4-results-layout.has-map.v4-js.sheet-expanded .v4-results-list{height:86%}.v4-results-layout.has-map.v4-js.view-list .v4-results-list{height:100%}.v4-results-layout.has-map.v4-js.view-list .v4-map-panel{display:none}.v4-sheet-toggle{display:inline-flex}.v4-results-layout.has-map.v4-js .v4-card-grid{grid-template-columns:1fr}.v4-map-actions{position:absolute;right:10px;top:10px;z-index:2;display:grid}.v4-map-actions .v4-btn{background:var(--surface)}.v4-map-attribution{position:absolute;left:8px;bottom:36%;z-index:2;background:var(--surface);padding:2px 5px}.v4-map-detail{position:absolute;left:8px;right:8px;bottom:36%;z-index:4}.v4-bottom-nav{display:flex;position:sticky;bottom:0;z-index:6;background:var(--surface);border-top:1px solid var(--line);justify-content:space-around;padding:4px 0 env(safe-area-inset-bottom)}.v4-bottom-nav a{min-height:48px;display:grid;place-items:center;font-size:12px;padding:4px}}
@media(max-width:639px){.v4-card-grid,.v4-results-layout.has-map .v4-card-grid{grid-template-columns:1fr}.v4-envie-index{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v4-envie-tile{min-height:175px;padding:15px}.v4-envie-circle{width:76px}.v4-envie-tile-label{font-size:17px}.v4-chip{font-size:12px}}
@media(prefers-reduced-motion:reduce){.v4-map-loading::after{animation:none}}
@media(max-width:899px){
  .v4-map-page .v4-results-intro{padding:8px 0 10px}
  .v4-map-page .v4-results-intro .eyebrow,.v4-map-page .v4-results-intro p{display:none}
  .v4-map-page .v4-results-intro h1{font-size:30px;line-height:1.1;margin:0}
  .v4-map-page .v4-filters{margin:0 0 6px;padding:8px 10px;display:flex;align-items:end;gap:8px}
  .v4-map-page .v4-filter-search{min-width:0;flex:1}
  .v4-map-page .v4-filter-search label{margin-bottom:3px}
  .v4-map-page .v4-filter-search input{min-height:44px}
  .v4-filter-toggle{display:inline-flex;min-height:44px}
  .v4-map-page.v4-results-enhanced .v4-filter-options{display:none}
  .v4-map-page.v4-results-enhanced.v4-filters-open .v4-filter-options{display:block;position:absolute;top:100%;left:0;right:0;z-index:10;max-height:62dvh;overflow:auto;padding:16px;background:var(--soft);box-shadow:0 14px 20px rgba(0,0,0,.18)}
  .v4-map-page .v4-filters{position:relative}
  .v4-map-page .v4-view-switch{padding:3px 0}
  .v4-map-page .v4-results-layout.has-map.v4-js{height:calc(100dvh - 260px);min-height:350px}
  .v4-map-page .v4-results-layout.has-map.v4-js.view-list .v4-results-list{height:100%}
  .v4-map-page .v4-map-status{font-size:13px;padding:6px 10px;margin:0}
  .v4-map-page .v4-footer{display:none}
}
@media(min-width:900px){.v4-filter-toggle{display:none}}
@media(max-width:899px){.fcg-v4-results:not(.v4-map-page) .v4-filter-toggle{display:none}}
.v4-results-layout.has-map[data-v4-map-available='false']{display:block}
.v4-results-layout.has-map[data-v4-map-available='false'] .v4-map-panel,.v4-results-layout.has-map[data-v4-map-available='false'] .v4-sheet-toggle{display:none}
.v4-results-layout.has-map[data-v4-map-available='false'] .v4-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.v4-view-switch button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:1023px){.v4-results-layout.has-map[data-v4-map-available='false'] .v4-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639px){.v4-results-layout.has-map[data-v4-map-available='false'] .v4-card-grid{grid-template-columns:1fr}}
@media(min-width:900px){
  .v4-map-page .v4-results-intro{padding:20px 0 18px}
  .v4-map-page .v4-results-intro h1{font-size:clamp(48px,5vw,64px)}
  .v4-map-page .v4-filters{max-height:230px;overflow:auto;scrollbar-color:var(--muted) var(--soft)}
}

/* Carte V4 : points et liste lisibles, sans défilement vertical des filtres sur bureau. */
.v4-map-page .v4-card h3{word-break:normal;overflow-wrap:break-word;hyphens:manual;text-wrap:balance}
.v4-map-page .v4-card-map-trigger{margin:0 16px 16px;padding-inline:14px;min-height:44px;font-size:12px}
.v4-map-page .v4-filter-close{display:none}
@media(min-width:900px){
  .v4-map-page .v4-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,3fr);gap:16px 24px;align-items:end;max-height:none;overflow:visible}
  .v4-map-page .v4-filter-search{grid-column:1;grid-row:1;min-width:0}
  .v4-map-page .v4-filter-options{display:contents}
  .v4-map-page .v4-filter-options>fieldset{min-width:0;margin:0;padding:0}
  .v4-map-page .v4-filter-options>fieldset:nth-of-type(1){grid-column:2;grid-row:1}
  .v4-map-page .v4-filter-options>fieldset:nth-of-type(2){grid-column:1/-1;grid-row:2}
  .v4-map-page .v4-filter-options>fieldset:nth-of-type(3){grid-column:1/-1;grid-row:3}
  .v4-map-page .v4-filter-options>fieldset:nth-of-type(4){grid-column:1;grid-row:4}
  .v4-map-page .v4-filter-options>fieldset:nth-of-type(5){grid-column:2;grid-row:4}
  .v4-map-page .v4-filter-actions{grid-column:1/-1;grid-row:5;margin:0}
  .v4-map-page .v4-chip-row{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;scrollbar-width:thin;padding-bottom:3px}
  .v4-map-page .v4-chip{flex:0 0 auto;scroll-snap-align:start}
}
@media(max-width:899px){
  .v4-map-page.v4-filters-open::before{content:'';position:fixed;inset:0;z-index:19;background:rgba(0,0,0,.45)}
  .v4-map-page.v4-results-enhanced.v4-filters-open .v4-filter-options{display:block;position:fixed;inset:auto 0 0;z-index:20;max-height:calc(100dvh - var(--hh) - 16px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:16px clamp(16px,4vw,32px) calc(24px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;background:var(--surface);box-shadow:0 -12px 35px rgba(0,0,0,.2)}
  .v4-map-page .v4-filter-options>fieldset{margin:0 0 18px}
  .v4-map-page .v4-filter-close{display:flex;margin:0 0 16px auto}
}
@media(min-width:768px) and (max-width:1023px){
  .v4-map-page .v4-results-layout.has-map.v4-js{display:flex;flex-direction:column;height:auto;min-height:0;overflow:visible}
  .v4-map-page .v4-results-layout.has-map.v4-js .v4-map-panel{display:block;position:static;order:-1;width:100%;height:auto}
  .v4-map-page .v4-results-layout.has-map.v4-js[data-v4-map-available='false'] .v4-map-panel{display:none}
  .v4-map-page .v4-results-layout.has-map.v4-js .v4-map-frame{height:min(55vh,520px)}
  .v4-map-page .v4-map-actions,.v4-map-page .v4-map-detail{position:static}
  .v4-map-page .v4-results-layout.has-map.v4-js .v4-results-list{position:static;width:100%;height:auto;min-height:0;overflow:visible;padding:0;border:0;box-shadow:none}
  .v4-map-page .v4-results-layout.has-map.v4-js .v4-card-grid{grid-template-columns:1fr}
  .v4-map-page .v4-sheet-toggle{display:none}
  .v4-map-page .v4-map-attribution{position:static;padding:0;background:none}
}
@media(min-width:768px) and (max-width:899px){
  .v4-map-page .v4-view-switch [data-v4-view]{display:none}
}
@media(min-width:1024px){
  .v4-map-page .v4-results-layout.has-map .v4-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1440px){
  body.fcg-v4.v4-map-page .v4-wrap{width:min(calc(100% - 2 * clamp(16px,4vw,48px)),1600px)}
  .v4-map-page .v4-map-panel{position:sticky;top:calc(var(--hh) + 16px)}
  .v4-map-page .v4-map-frame{height:calc(100dvh - var(--hh) - 32px);min-height:480px}
}
