/* <lp-selecteur> : styles du sélecteur. Pleine largeur, sans cadre : il prend toute la largeur de son conteneur
   et laisse voir le fond de la section. Couleurs, polices et marges latérales surchargeables via les variables --lps-*. */
.lps{
	--lps-bg:#f6f3ec; --lps-surface:#fffdf8; --lps-ink:#1d2622; --lps-muted:#5d6862; --lps-line:#d9d4c8;
	--lps-brand:#14342b; --lps-brand-ink:#f6f3ec; --lps-brand-soft:#e3ebe6; --lps-hl:#c9a24a;
	--lps-ok:#2f7a4f; --lps-ok-soft:#dcefe2; --lps-wait:#a86a12; --lps-wait-soft:#f6e8cf; --lps-off:#8a8f8c; --lps-off-soft:#e7e6e2;
	--lps-dark:#30302f; --lps-light:#f7f5eb; --lps-light-2:#e9e5d8; --lps-off-1:#cfccc3; --lps-off-2:#bdb9ae;
	--lps-stage-bg:transparent; --lps-bar-bg:transparent; --lps-bar-pad:0px;
	--lps-gutter:clamp(16px,3vw,40px);
	--lps-font:inherit; --lps-display:var(--lps-font); --lps-mono:ui-monospace,"SFMono-Regular",Menlo,monospace;
	font-family:var(--lps-font);
	display:block;position:relative;width:100%;color:var(--lps-ink);background:transparent;border:0;border-radius:0;font-size:15px;line-height:1.5;text-align:left
}
.lps *,.lps *::before,.lps *::after{box-sizing:border-box}
.lps.lps-portal{display:contents;border:0;background:none}
/* Thème Bricks : une page WordPress non construite avec Bricks reçoit « #brx-content.wordpress{width:1440px} »
   (largeur fixe, pas maximale) ; sur téléphone toute la page déborderait. On rend la largeur fluide là où est le sélecteur. */
#brx-content.wordpress:has(lp-selecteur){width:100%;max-width:100%}
.lps [hidden]{display:none!important}
.lps button{font:inherit}
.lps :focus-visible{outline:2px solid var(--lps-hl);outline-offset:2px}
.lps-error{margin:0;padding:12px var(--lps-gutter);background:var(--lps-wait-soft);color:var(--lps-ink)}
.lps-eyebrow{font:500 11px/1.2 var(--lps-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--lps-muted)}

/* Filtres */
.lps-bar{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;padding:10vw var(--lps-gutter) 16px;background:var(--lps-bar-bg,transparent)}
.lps-chips{display:flex;flex-wrap:wrap;gap:6px}
.lps-chip{border:1px solid var(--lps-line);background:transparent;color:var(--lps-ink);padding:6px 12px;border-radius:0;cursor:pointer;font-size:13px;font-weight:500;line-height:1.3;min-height:34px}
.lps-chip[aria-pressed="true"],.lps-chip[aria-selected="true"]{background:var(--lps-brand);border-color:var(--lps-brand);color:var(--lps-brand-ink)}
.lps-chip:disabled{opacity:.4;cursor:not-allowed}
.lps-ctl{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--lps-muted);margin:0}
.lps-ctl input[type=range]{accent-color:var(--lps-brand);width:130px}
.lps-ctl input[type=checkbox]{accent-color:var(--lps-brand);width:16px;height:16px;margin:0}
.lps-ctl select{font:inherit;font-size:13px;color:var(--lps-ink);background:var(--lps-surface);border:1px solid var(--lps-line);border-radius:4px;padding:4px 8px}
.lps-out{font:500 13px var(--lps-mono);color:var(--lps-ink);min-width:64px}
.lps-count{margin-left:auto;font:13px var(--lps-mono);color:var(--lps-muted)}
.lps-link{background:none;border:0;color:var(--lps-brand);text-decoration:underline;cursor:pointer;font-size:13px;padding:0}

/* Façade */
.lps-facade{position:relative;line-height:0;background:#cfd8dc}
.lps-fac{display:block;width:100%;height:auto}
/* Plan et liste : apparition rapide quand un étage est choisi. */
@keyframes lps-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.lps-body:not([hidden]){animation:lps-rise .4s .25s cubic-bezier(.2,.7,.2,1) both}
.lps-fz{fill:#fff;fill-opacity:0;stroke:#fff;stroke-opacity:0;stroke-width:3;cursor:pointer;transition:fill-opacity .15s,stroke-opacity .15s}
.lps-fz.is-hover,.lps-fz:focus-visible{fill-opacity:.32;stroke-opacity:.95;outline:none}
.lps-fz.is-sel{fill:var(--lps-hl);fill-opacity:.45;stroke:#fff;stroke-opacity:1}
.lps-fz.is-none{cursor:default}
.lps-fz.is-none.is-hover{fill:#1d2622;fill-opacity:.35;stroke-opacity:0}
.lps-floorchips{display:none;gap:6px;padding:12px var(--lps-gutter) 12px;overflow-x:auto;background:var(--lps-stage-bg,transparent)}
.lps-floorchip{flex:1;min-width:52px;display:grid;line-height:1.2;padding:8px 4px;border-radius:6px;min-height:48px}
.lps-floorchip small{font:11px var(--lps-mono);opacity:.75}

/* Plan + liste */
.lps-stage{scroll-margin-top:80px;background:var(--lps-stage-bg,transparent)}
.lps-empty{padding:28px var(--lps-gutter);color:var(--lps-muted);text-align:center}
.lps-empty p{margin:0}
.lps-tabs{display:none;gap:6px;padding:16px var(--lps-gutter) 0}
.lps-body{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:0 24px;padding:24px var(--lps-gutter) 0}
.lps-planbox{padding:0;display:grid;gap:10px;align-content:start;min-width:0}
.lps-planhead{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.lps-ftitle{margin:0;font-family:var(--lps-display);font-size:32px;font-weight:500}
.lps-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--lps-muted)}
.lps-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.lps-k-disponible{background:var(--lps-ok);opacity:.55}.lps-k-en_attente{background:var(--lps-wait);opacity:.6}.lps-k-loue{background:var(--lps-off);opacity:.6}.lps-k-dim{background:var(--lps-off);opacity:.15}
.lps-plan{display:block;width:100%;height:auto}
.lps-swipe{display:none;margin:0;font-size:12px;color:var(--lps-muted)}
.lps-u{transition:fill-opacity .15s}
.lps-u.lps-disponible{fill:var(--lps-ok);fill-opacity:.16;cursor:pointer}
.lps-u.lps-en_attente{fill:var(--lps-wait);fill-opacity:.28;cursor:pointer}
.lps-u.lps-loue{fill:var(--lps-off);fill-opacity:.45}
.lps-u.lps-dim{fill:var(--lps-off);fill-opacity:.06;cursor:pointer}
.lps-u.is-hover,.lps-u:focus-visible{fill-opacity:.45;outline:none}
.lps-u.is-sel{fill:var(--lps-hl);fill-opacity:.55;stroke:var(--lps-hl);stroke-width:5}
.lps-list{border-top:1px solid var(--lps-line);max-height:480px;overflow:auto;align-self:start}
.lps-row{display:grid;grid-template-columns:auto 1fr auto;gap:2px 12px;align-items:center;width:100%;padding:11px 14px;border:0;border-bottom:1px solid var(--lps-line);background:transparent;color:var(--lps-ink);text-align:left;cursor:pointer}
.lps-row:hover,.lps-row.is-hover{background:var(--lps-brand-soft)}
/* Survol d'une unité dans la liste : fond #692045 plein. Surchargeable : --lps-row-hover. */
.lps-row:not(:disabled):hover,.lps-row:not(:disabled).is-hover{background:var(--lps-row-hover,#692045)}
/* Texte en blanc au survol, sauf les étiquettes de promotion et de disponibilité, qui gardent leurs couleurs. Surchargeable : --lps-row-hover-ink. */
.lps .lps-row:not(:disabled):hover,.lps .lps-row:not(:disabled).is-hover,
.lps .lps-row:not(:disabled):hover :not(.lps-promo-tag,.lps-pill),.lps .lps-row:not(:disabled).is-hover :not(.lps-promo-tag,.lps-pill){color:var(--lps-row-hover-ink,#fff)}
.lps-row.is-sel{background:var(--lps-brand-soft);box-shadow:inset 3px 0 0 var(--lps-hl)}
.lps-row:disabled{cursor:default;opacity:.6;background:transparent}
.lps-row-no{font-family:var(--lps-display);font-size:17px;font-weight:500;grid-row:span 2;min-width:40px}
.lps-row-ty{font-size:14px;font-weight:600}
.lps-row-pr{font:500 14px var(--lps-mono);text-align:right}
.lps-row-meta{font-size:12px;color:var(--lps-muted)}
.lps-none{padding:20px 0;margin:0;color:var(--lps-muted);font-size:14px}
.lps-pill{justify-self:end;font:500 10.5px/1 var(--lps-mono);letter-spacing:.06em;text-transform:uppercase;padding:4px 6px;border-radius:3px;white-space:nowrap}
.lps-pill.lps-disponible{background:var(--lps-ok-soft);color:var(--lps-ok)}
.lps-pill.lps-en_attente{background:var(--lps-wait-soft);color:var(--lps-wait)}
.lps-pill.lps-loue{background:var(--lps-off-soft);color:var(--lps-muted)}
.lps-tip{position:absolute;z-index:4;pointer-events:none;white-space:pre;background:var(--lps-ink);color:var(--lps-bg);font:12px/1.4 var(--lps-mono);padding:6px 9px;border-radius:4px;transform:translate(-50%,calc(-100% - 6px))}

/* Tiroir */
/* Fiche : panneau fixé au bord de la fenêtre, toujours visible quel que soit le défilement. */
.lps-scrim{position:fixed;inset:0;background:rgb(0 0 0 / .25);z-index:99998}
.lps-drawer{position:fixed;top:var(--lps-drawer-top,0px);right:0;bottom:0;z-index:99999;width:min(420px,100%);background:var(--lps-surface);border-left:1px solid var(--lps-line);box-shadow:-12px 0 32px rgb(0 0 0 / .14);transform:translateX(102%);visibility:hidden;transition:transform .25s ease,visibility 0s .25s;display:flex;flex-direction:column}
.lps-drawer.is-open{transform:none;visibility:visible;transition:transform .25s ease}
.lps-dh{padding:16px 20px;border-bottom:1px solid var(--lps-line);display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.lps-dh h3{margin:4px 0 0;font-family:var(--lps-display);font-size:26px;font-weight:500;line-height:1.1}
.lps-db{padding:16px 20px 24px;display:grid;gap:16px;overflow:auto}
.lps-unitplan{display:block;width:100%;height:auto;max-height:280px;object-fit:contain;background:#fff;border:1px solid var(--lps-line);border-radius:4px}
.lps-loc svg{width:120px;height:auto;background:#fff;border:1px solid var(--lps-line);border-radius:3px}
.lps-locpoly{fill:var(--lps-hl);fill-opacity:.6;stroke:var(--lps-hl);stroke-width:8}
.lps-priceline{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.lps-price{font-family:var(--lps-display);font-size:30px;font-weight:500;line-height:1}
.lps-price small{font-size:14px;color:var(--lps-muted);font-weight:400}
.lps-from{display:block;font-size:11px;font-weight:400;color:var(--lps-muted);letter-spacing:.02em;margin-bottom:2px}
.lps-price .lps-from{font-size:13px;margin-bottom:4px}
.lps-promo{margin:0;padding:8px 12px;background:var(--lps-wait-soft);color:var(--lps-ink);border-radius:4px;font-weight:600;font-size:14px}
.lps-specs{display:grid;grid-template-columns:1fr auto;gap:8px 16px;margin:0;font-size:14px}
.lps-specs dt{color:var(--lps-muted)}
.lps-specs dd{margin:0;text-align:right;font-weight:500}
.lps-cta{display:grid;gap:8px}
.lps-row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lps-btn{display:block;text-align:center;text-decoration:none;font-weight:600;font-size:14px;padding:12px 14px;border-radius:4px;border:1px solid var(--lps-brand);background:transparent;color:var(--lps-brand);cursor:pointer;line-height:1.3}
.lps-btn:hover{background:var(--lps-brand-soft)}
.lps-btn-primary{background:var(--lps-brand);color:var(--lps-brand-ink)}
.lps-btn-primary:hover{background:var(--lps-brand);opacity:.92}
.lps-btn-quiet{border-color:var(--lps-line);color:var(--lps-ink);font-weight:500}

/* Comparateur */
.lps-cmp{margin:24px var(--lps-gutter) 0;padding-top:16px;border-top:1px solid var(--lps-line);display:grid;gap:10px}
.lps-cmp-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.lps-cmp-tags{display:flex;gap:8px;flex-wrap:wrap}
.lps-cmp-tag{font:13px var(--lps-mono);background:var(--lps-surface);border:1px solid var(--lps-line);border-radius:4px;padding:4px 4px 4px 8px;display:inline-flex;gap:6px;align-items:center}
.lps-cmp-tag button{border:0;background:none;color:var(--lps-muted);cursor:pointer;font-size:16px;line-height:1;padding:2px 6px}
.lps-cmp-hint{margin:0;font-size:13px;color:var(--lps-muted)}
.lps-cmp-scroll{overflow-x:auto}
.lps-cmp-table{border-collapse:collapse;width:100%;min-width:420px;font-size:14px;background:var(--lps-surface)}
.lps-cmp-table th,.lps-cmp-table td{padding:8px 12px;border-bottom:1px solid var(--lps-line);text-align:left}
.lps-cmp-table td{font-variant-numeric:tabular-nums}
.lps-cmp-table th[scope=row]{color:var(--lps-muted);font-weight:500}

/* Rendu sans JavaScript (et pour les moteurs) */
.lps-wait{display:none;margin:0;padding:40px var(--lps-gutter);text-align:center;color:var(--lps-muted)}
.lps-loading{min-height:420px}
.lps-loading .lps-wait{display:block}
.lps-loading .lps-fallback{display:none}
.lps-unitpage{margin-top:24px}
.lps-unitpage .lps-db{padding:0;max-width:560px}
.lps-fallback{padding:0 var(--lps-gutter)}
.lps-fallback table{width:100%;border-collapse:collapse;font-size:14px}
.lps-fallback th,.lps-fallback td{padding:6px 8px;border-bottom:1px solid var(--lps-line);text-align:left}

/* Téléphone et tablette */
@media (max-width:900px){
	.lps-floorchips{display:flex}
	.lps-ftag{display:none}
	.lps-hint{font-size:12px;padding:5px 8px}
	.lps-count{margin-left:0;width:100%}
	.lps-tabs{display:flex}
	.lps-body{grid-template-columns:1fr}
	.lps-body{gap:0;padding-top:16px}
	.lps-list{max-height:none}
	.lps-planscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 calc(-1 * var(--lps-gutter));padding:0 var(--lps-gutter);overscroll-behavior-x:contain}
	.lps-plan{width:auto;height:300px;max-width:none}
	.lps-swipe{display:block}
	.lps-body[data-view="plan"] .lps-list{display:none}
	.lps-body[data-view="liste"] .lps-planbox{display:none}
	.lps-drawer{top:auto;left:0;right:0;bottom:0;width:100%;max-height:88vh;border-left:0;border-top:1px solid var(--lps-line);border-radius:12px 12px 0 0;transform:translateY(102%);padding-bottom:env(safe-area-inset-bottom,0px)}
	.lps-drawer.is-open{transform:none}
}
@media (prefers-reduced-motion:reduce){.lps-drawer,.lps-fz,.lps-u{transition:none}.lps-body:not([hidden]){animation:none}}

/* ---------- 0.5.0 ---------- */
.lps button,.lps.lps-portal button{margin:0;text-transform:none;letter-spacing:normal;box-shadow:none}
/* Pas de cadre de focus bleu au clic sur un étage ou une unité ; le clavier garde un repère (surbrillance). */
.lps-fz:focus,.lps-u:focus,.lps-fac:focus{outline:none}

/* Consigne : petite étiquette une fois l'étage choisi… */
.lps-hint{position:absolute;left:var(--lps-gutter);top:12px;margin:0;line-height:1.3;background:color-mix(in srgb,var(--lps-brand) 85%,transparent);color:var(--lps-brand-ink);font-size:13px;padding:7px 10px;border-radius:4px;max-width:calc(100% - 2 * var(--lps-gutter));pointer-events:none;transition:opacity .18s ease}
.lps-hint.is-out{opacity:0}
.lps-hint span{display:inline}
/* …grand titre à l'ouverture, dans le ciel au-dessus du bâtiment (style « Appartements Totalement Limoilou »). */
.lps-hint.is-big{left:50%;top:clamp(14px,4.5%,56px);transform:translateX(-50%);background:none;padding:0;border-radius:0;color:var(--lps-ink);font-family:var(--lps-display);font-size:clamp(17px,1.9vw,30px);font-weight:400;line-height:1.2;text-transform:uppercase;text-align:center;letter-spacing:.02em;text-shadow:0 0 18px rgb(255 255 255 / .9),0 0 4px rgb(255 255 255 / .8);max-width:none;white-space:nowrap}
.lps-hint.is-big span{display:block}

/* Étiquettes d'étage (HTML) : grandes à l'ouverture, compactes ensuite. */
.lps-ftags{position:absolute;inset:0;pointer-events:none}
.lps-ftag{position:absolute;right:max(8px,calc(var(--lps-gutter) / 3));transform:translateY(-50%);pointer-events:auto;display:flex;align-items:baseline;gap:6px;padding:4px 9px;border:0;border-radius:6px;background:color-mix(in srgb,var(--lps-brand) 90%,transparent);color:#fff;font-family:inherit;font-size:13px;line-height:1.2;cursor:pointer;white-space:nowrap;transition:background-color .15s,padding .3s,font-size .3s}
.lps-ftag b{font-size:15px;font-weight:600}
.lps-ftag-n{font-size:12px;opacity:.9}
.lps-ftag.is-hover,.lps-ftag.is-sel{background:var(--lps-hl)}
.lps-ftag.is-none{opacity:.55;cursor:default}
.lps-facade.is-intro .lps-ftag{padding:8px 16px;gap:10px;border-radius:8px}
.lps-facade.is-intro .lps-ftag b{font-size:24px;font-family:var(--lps-display);font-weight:500}
.lps-facade.is-intro .lps-ftag-n{font-size:17px}

/* Bouton de fermeture : icône centrée quel que soit le style des boutons du thème. */
.lps-x{flex:none;display:inline-grid;place-items:center;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;border:1px solid var(--lps-line);border-radius:4px;background:transparent;color:var(--lps-ink);cursor:pointer;line-height:0}
.lps-x svg{display:block}
.lps-x:hover{background:var(--lps-brand-soft)}
/* Bouton fermer : fond #6f285b, icône #f2e4b1 ; un peu plus foncé au survol. Surchargeable : --lps-x-bg, --lps-x-ink. */
.lps .lps-x,.lps.lps-portal .lps-x{background:var(--lps-x-bg,#6f285b);border-color:var(--lps-x-bg,#6f285b);color:var(--lps-x-ink,#f2e4b1)}
.lps .lps-x:hover,.lps.lps-portal .lps-x:hover{background:color-mix(in srgb,var(--lps-x-bg,#6f285b) 85%,#000);border-color:color-mix(in srgb,var(--lps-x-bg,#6f285b) 85%,#000);color:var(--lps-x-ink,#f2e4b1)}

/* Emplacement + lien discret */
.lps-loc{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:center;font-size:12px;color:var(--lps-muted)}
.lps-loc-t{display:grid;gap:4px;justify-items:start}
.lps-share{background:none;border:0;padding:0;color:var(--lps-muted);font-size:12px;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.lps-share:hover{color:var(--lps-ink)}

/* Inclusions */
.lps-ic{display:inline-block;width:22px;height:22px;flex:none;background-color:currentColor;-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.lps-ic--eau_chaude{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203.2c3.2%204.1%206%207.3%206%2010.6a6%206%200%200%201-12%200c0-3.3%202.8-6.5%206-10.6z%22%2F%3E%3Cpath%20d%3D%22M9.3%2014.3a2.8%202.8%200%200%200%202.7%202.7%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--internet{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2.6%209.2a13.5%2013.5%200%200%201%2018.8%200%22%2F%3E%3Cpath%20d%3D%22M5.6%2012.6a9.2%209.2%200%200%201%2012.8%200%22%2F%3E%3Cpath%20d%3D%22M8.7%2016a4.7%204.7%200%200%201%206.6%200%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2219.3%22%20r%3D%221.1%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--laveuse_secheuse{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%222.5%22%20width%3D%2216%22%20height%3D%2219%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M4%207h16%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2214.2%22%20r%3D%224.3%22%2F%3E%3Cpath%20d%3D%22M9.6%2014.8c1.3-1%203.5%201%204.8%200%22%2F%3E%3Ccircle%20cx%3D%227%22%20cy%3D%224.8%22%20r%3D%22.7%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%229.3%22%20cy%3D%224.8%22%20r%3D%22.7%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--hotte_micro_ondes{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222.5%22%20y%3D%224.5%22%20width%3D%2219%22%20height%3D%2212%22%20rx%3D%221.5%22%2F%3E%3Crect%20x%3D%225%22%20y%3D%227%22%20width%3D%2210%22%20height%3D%227%22%20rx%3D%22.8%22%2F%3E%3Cpath%20d%3D%22M17.8%208h1M17.8%2010.5h1M17.8%2013h1%22%2F%3E%3Cpath%20d%3D%22M6%2019.5h2M11%2019.5h2M16%2019.5h2%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--lave_vaisselle{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%222.5%22%20width%3D%2216%22%20height%3D%2219%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M4%207.2h16%22%2F%3E%3Cpath%20d%3D%22M7%204.85h4.5%22%2F%3E%3Ccircle%20cx%3D%2216.5%22%20cy%3D%224.85%22%20r%3D%22.7%22%20fill%3D%22%23000%22%20stroke%3D%22none%22%2F%3E%3Cpath%20d%3D%22M7%2011h10%22%2F%3E%3Cpath%20d%3D%22M8.2%2011v6.8h7.6V11%22%2F%3E%3Cpath%20d%3D%22M10.5%2013.2v2.6M13.5%2013.2v2.6%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--stationnement{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M9.5%2017.2V6.8h3.6a3.1%203.1%200%200%201%200%206.2H9.5%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--casier{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224.5%22%20y%3D%222.5%22%20width%3D%2215%22%20height%3D%2219%22%20rx%3D%221.5%22%2F%3E%3Cpath%20d%3D%22M12%202.5v19%22%2F%3E%3Cpath%20d%3D%22M6.8%205.5h2.9M14.3%205.5h2.9M6.8%207.5h2.9M14.3%207.5h2.9%22%2F%3E%3Cpath%20d%3D%22M9.8%2012v2M14.2%2012v2%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--borne{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M13.2%202.5%206%2013.4h5.6L10.4%2021.5l7.6-11.3h-5.6z%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--velo{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%226%22%20cy%3D%2216%22%20r%3D%223.6%22%2F%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%2216%22%20r%3D%223.6%22%2F%3E%3Cpath%20d%3D%22M6%2016l4.2-7.2h6.2L18%2016%22%2F%3E%3Cpath%20d%3D%22M10.2%208.8%2013%2016H6%22%2F%3E%3Cpath%20d%3D%22M8.6%206.2h3.2%22%2F%3E%3Cpath%20d%3D%22M15.2%206.2h2l-.8%202.6%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--climatisation{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%202.5v19M3.8%207.25l16.4%209.5M3.8%2016.75l16.4-9.5%22%2F%3E%3Cpath%20d%3D%22M9.6%203.9%2012%206.3l2.4-2.4M9.6%2020.1%2012%2017.7l2.4%202.4%22%2F%3E%3Cpath%20d%3D%22M4.3%2010.4l3.3-.9-.9-3.3M19.7%2013.6l-3.3.9.9%203.3M4.3%2013.6l3.3.9-.9%203.3M19.7%2010.4l-3.3-.9.9-3.3%22%2F%3E%3C%2Fsvg%3E")}
.lps-ic--generique{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M7.8%2012.3l2.8%202.8%205.6-5.8%22%2F%3E%3C%2Fsvg%3E")}
.lps-incl{display:grid;gap:8px}
.lps-incl ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}
.lps-incl li{display:flex;align-items:center;gap:10px;font-size:14px;margin:0}
.lps-incl .lps-ic{color:var(--lps-brand)}
.lps-cmp-table .lps-ic{width:20px;height:20px;margin-right:6px;color:var(--lps-brand)}
.lps-btn.is-on{background:var(--lps-brand-soft)}

/* Comparatif */
.lps-cmp-plans{margin-left:auto;padding:10px 14px}
.lps-cmp-tag button{display:inline-grid;place-items:center;padding:2px;line-height:0}
.lps-cmp-tag svg{width:14px;height:14px}
.lps-cmp-table th .lps-link{font:inherit;font-weight:600;color:var(--lps-ink)}

/* Fenêtres */
.lps-dialog{border:0;padding:0;border-radius:8px;width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 32px);background:var(--lps-surface);color:var(--lps-ink);box-shadow:0 24px 60px rgb(0 0 0 / .3);overflow:hidden;display:flex;flex-direction:column}
.lps-dialog:not([open]){display:none}
.lps-dialog::backdrop{background:rgb(20 26 23 / .55)}
.lps-dlg-visit{width:min(760px,calc(100vw - 24px))}
.lps-dlg-h{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--lps-line)}
.lps-dlg-h h3{margin:0;font-family:var(--lps-display);font-size:22px;font-weight:500}
.lps-dlg-b{padding:18px 20px 22px;overflow:auto;display:grid;gap:14px}
.lps-dlg-lead{margin:0 0 6px;color:var(--lps-muted)}
.lps-cal-cta{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--lps-line);color:var(--lps-muted);font-size:14px}
.lps-cal{display:grid;gap:10px}
.lps-cal iframe{width:100%;height:min(720px,72dvh);border:0}
.lps-plans-form{display:grid;gap:12px}
.lps-field{margin:0;display:grid;gap:4px}
.lps-field label{font-size:13px;color:var(--lps-muted)}
.lps-field input{font:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--lps-line);border-radius:4px;background:#fff;color:var(--lps-ink);width:100%}
.lps-grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lps-consent{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--lps-muted)}
.lps-consent input{margin-top:3px;accent-color:var(--lps-brand)}
.lps-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.lps-form-status{margin:0;font-size:13px;color:var(--lps-muted);min-height:1em}
.lps-form-status.is-error{color:#b3261e}
.lps-btn:disabled{opacity:.6;cursor:progress}
@media (max-width:900px){
	.lps-ftags{display:none}
	.lps-hint.is-big{font-size:15px;top:8px}
	.lps-grid2{grid-template-columns:1fr}
	.lps-cmp-plans{margin-left:0;width:100%}
	.lps-incl ul{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){.lps-ftag,.lps-hint{transition:none}}

/* ---------- 0.6.0 ---------- */
/* Étiquettes d'étage : rectangles gris foncé à angles droits, texte crème. */
.lps-ftag{border-radius:0;background:var(--lps-dark);color:var(--lps-light);box-shadow:0 2px 10px rgb(0 0 0 / .18)}
.lps-facade.is-intro .lps-ftag{border-radius:0}
.lps-ftag.is-hover,.lps-ftag.is-sel,.lps-ftag.is-wave{background:var(--lps-light);color:var(--lps-dark)}
.lps-ftag.is-none{opacity:.5}
/* Vague d'ouverture sur les étages */
.lps-fz.is-wave{fill:#fff;fill-opacity:.6;stroke-opacity:0}
/* Boutons : texte centré verticalement, que ce soit un lien (Plan PDF) ou un bouton (Comparer). */
.lps-btn,.lps a.lps-btn,.lps.lps-portal a.lps-btn{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:0 14px;margin:0;line-height:1.2;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;text-align:center;box-sizing:border-box;vertical-align:middle}
/* Plan de l'unité : sans cadre, cliquable vers le PDF */
.lps-unitplan{border:0;background:none;border-radius:0}
.lps-unitplan-link{position:relative;display:block;text-decoration:none;color:inherit}
.lps-unitplan-hint{position:absolute;right:8px;bottom:8px;background:var(--lps-dark);color:var(--lps-light);font-size:12px;padding:4px 8px;opacity:0;transition:opacity .2s}
.lps-unitplan-link:hover .lps-unitplan-hint,.lps-unitplan-link:focus-visible .lps-unitplan-hint{opacity:1}
@media (hover:none){.lps-unitplan-hint{opacity:1}}
/* Promotion bien visible */
.lps-promo{background:var(--lps-hl);color:var(--lps-dark);border-radius:0;font-weight:600}
.lps-promo-tag{display:inline-block;margin-left:6px;padding:1px 6px;background:var(--lps-hl);color:var(--lps-dark);font-size:11px;font-weight:600;line-height:1.5;vertical-align:1px}
.lps-cmp-table .lps-promo-tag{margin-left:0}
/* Page d'une unité : fiche centrée */
.lps-unitpage{margin:24px auto 48px;max-width:560px;padding-inline:var(--lps-gutter)}
.lps-unitpage .lps-db{margin:0 auto;padding:0;max-width:560px}
.lps-unitpage h1{margin:4px 0 0;font-family:var(--lps-display);font-size:clamp(30px,4vw,44px);font-weight:500;line-height:1.1}
@media (prefers-reduced-motion:reduce){.lps-fz.is-wave,.lps-ftag.is-wave{transition:none}}

/* ---------- 0.6.1 ---------- */
/* Étiquettes d'étage : interligne propre (la façade a line-height:0) et taille lisible en vue resserrée. */
.lps-ftags,.lps-hint{line-height:1.25}
/* Taille proportionnelle à la largeur : l'écart entre deux étages sur la façade vaut ~2,7 % (resserrée) ou ~3,9 % (entière) de la largeur. */
.lps-ftag{padding:clamp(3px,.45vw,8px) clamp(8px,.8vw,14px);gap:clamp(6px,.6vw,10px);min-width:clamp(78px,6.5vw,120px);justify-content:space-between}
.lps-ftag b{font-size:clamp(14px,1.3vw,22px);line-height:1}
.lps-ftag-n{font-size:clamp(11px,.95vw,16px);line-height:1}
.lps-facade.is-intro .lps-ftag{padding:clamp(3px,.45vw,10px) clamp(10px,1vw,18px);min-width:clamp(112px,10vw,190px)}
.lps-facade.is-intro .lps-ftag b{font-size:clamp(13px,1.3vw,28px)}
.lps-facade.is-intro .lps-ftag-n{font-size:clamp(12px,1vw,19px)}
/* Fenêtre de visite : l'agenda en encadré distinct au-dessus du formulaire. */
.lps-visit-choices{display:grid;gap:14px}
.lps-cal-cta{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:0;padding:14px 16px;border:1px solid var(--lps-line);border-top:1px solid var(--lps-line);background:var(--lps-bg);color:var(--lps-ink);font-size:14px}
.lps-cal-cta-t{display:grid;gap:2px}
.lps-cal-cta-t span{color:var(--lps-muted);font-size:13px}
.lps-cal-cta .lps-ic{width:28px;height:28px;color:var(--lps-brand)}
.lps-ic--agenda{--ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223.5%22%20y%3D%225%22%20width%3D%2217%22%20height%3D%2215.5%22%20rx%3D%221.5%22%2F%3E%3Cpath%20d%3D%22M3.5%209.5h17M8%203v4M16%203v4M8%2013.5h2M14%2013.5h2M8%2017h2%22%2F%3E%3C%2Fsvg%3E")}
.lps-btn-outline{background:transparent;color:var(--lps-brand);border:1px solid var(--lps-brand);white-space:nowrap}
.lps-btn-outline:hover{background:var(--lps-brand);color:var(--lps-brand-ink)}
.lps-or{display:flex;align-items:center;gap:12px;margin:0;color:var(--lps-muted);font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.lps-or::before,.lps-or::after{content:"";flex:1;border-top:1px solid var(--lps-line)}
@media (max-width:600px){
	.lps-cal-cta{grid-template-columns:auto 1fr}
	.lps-cal-cta .lps-btn{grid-column:1 / -1}
}

/* ---------- 0.6.3 ---------- */
/* « Plan PDF » et « Comparer » : inverse des boutons principaux (fond crème, texte et contour gris foncé, angles droits).
   Plan PDF en gras, Comparer sans gras. Sélecteurs doublés pour passer devant la remise à zéro des boutons et le thème. */
.lps .lps-row2,.lps.lps-portal .lps-row2{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0}
.lps .lps-btn.lps-btn-inverse,.lps.lps-portal .lps-btn.lps-btn-inverse{background:var(--lps-light);color:var(--lps-dark);border:1px solid var(--lps-dark);border-radius:0;font-weight:400}
.lps .lps-btn.lps-btn-inverse.lps-btn-strong,.lps.lps-portal .lps-btn.lps-btn-inverse.lps-btn-strong{font-weight:600}
.lps .lps-btn.lps-btn-inverse:hover,.lps.lps-portal .lps-btn.lps-btn-inverse:hover{background:var(--lps-dark);color:var(--lps-light)}
.lps .lps-btn.lps-btn-inverse.is-on,.lps.lps-portal .lps-btn.lps-btn-inverse.is-on{background:var(--lps-light-2)}
.lps .lps-btn.lps-btn-inverse.is-on:hover,.lps.lps-portal .lps-btn.lps-btn-inverse.is-on:hover{background:var(--lps-dark)}
/* Boutons principaux (Réserver une visite, Recevoir les plans…) : gris foncé, texte crème, angles droits, comme les étiquettes d'étage. */
.lps .lps-btn,.lps.lps-portal .lps-btn{font-family:inherit;font-size:14px;font-weight:600;letter-spacing:.02em;border-radius:0}
.lps .lps-btn-primary,.lps.lps-portal .lps-btn-primary{background:var(--lps-dark);color:var(--lps-light);border:1px solid var(--lps-dark)}
.lps .lps-btn-primary:hover,.lps.lps-portal .lps-btn-primary:hover{background:var(--lps-light);color:var(--lps-dark);border-color:var(--lps-dark);opacity:1}
.lps .lps-btn-outline,.lps.lps-portal .lps-btn-outline,.lps .lps-x,.lps.lps-portal .lps-x{border-radius:0}

/* ---------- 0.6.5 ---------- */
/* Rien sous la façade avant le choix d'un étage ; une fois l'étage choisi, un peu d'air sous le plan et le comparatif. */
.lps .lps-body:not([hidden]){padding-bottom:clamp(24px,3vw,40px)}
.lps .lps-cmp:not([hidden]){margin-bottom:clamp(24px,3vw,40px)}
/* ---------- 0.7.0 ---------- */
/* Unités louées : ouvrables ; bouton de visite grisé (reste cliquable pour la liste d'attente). */
.lps .lps-u.lps-loue{cursor:pointer}
.lps .lps-row{opacity:1}
.lps .lps-btn.lps-btn-primary.is-disabled,.lps.lps-portal .lps-btn.lps-btn-primary.is-disabled{background:var(--lps-off-1);border-color:var(--lps-off-1);color:var(--lps-muted)}
.lps .lps-btn.lps-btn-primary.is-disabled:hover,.lps.lps-portal .lps-btn.lps-btn-primary.is-disabled:hover{background:var(--lps-off-2);border-color:var(--lps-off-2);color:var(--lps-dark)}
/* Fiche d'unité : « Plan PDF », « Comparer » et « Réserver une visite » en #6f285b / blanc, un peu plus foncés au survol
   (et une fois l'unité ajoutée au comparatif). Visite désactivée (unité louée) : reste grise. Surchargeable : --lps-act-bg, --lps-act-ink. */
.lps.lps-portal .lps-drawer .lps-btn.lps-btn-inverse.lps-btn-strong,
.lps.lps-portal .lps-drawer .lps-btn.lps-btn-primary:not(.is-disabled){background:var(--lps-act-bg,#6f285b);border-color:var(--lps-act-bg,#6f285b);color:var(--lps-act-ink,#fff)}
.lps.lps-portal .lps-drawer .lps-btn.lps-btn-inverse.lps-btn-strong:hover,
.lps.lps-portal .lps-drawer .lps-btn.lps-btn-inverse.lps-btn-strong.is-on,
.lps.lps-portal .lps-drawer .lps-btn.lps-btn-primary:not(.is-disabled):hover{background:color-mix(in srgb,var(--lps-act-bg,#6f285b) 85%,#000);border-color:color-mix(in srgb,var(--lps-act-bg,#6f285b) 85%,#000);color:var(--lps-act-ink,#fff)}
.lps-loue-note{margin:-2px 0 0;font-size:12px;color:var(--lps-muted)}

/* ---------- 0.9.0 ---------- */
/* Filtre superficie : deux curseurs (minimum, maximum). */
.lps-ctl--range2{display:flex;align-items:center;gap:8px}
/* Curseur double (superficie) : deux champs range superposés, seules les poignées captent la souris. */
.lps-dual{position:relative;display:inline-block;width:170px;height:22px;vertical-align:middle}
.lps-dual-track,.lps-dual-fill{position:absolute;top:50%;height:4px;margin-top:-2px;border-radius:2px;pointer-events:none}
.lps-dual-track{left:0;right:0;background:var(--lps-line)}
.lps-dual-fill{background:var(--lps-brand)}
.lps .lps-dual input[type=range]{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;background:none;-webkit-appearance:none;appearance:none;pointer-events:none;z-index:2;border:0;box-shadow:none}
.lps-dual input[type=range]::-webkit-slider-runnable-track{background:none;border:0;height:22px}
.lps-dual input[type=range]::-moz-range-track{background:none;border:0}
.lps-dual input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;pointer-events:auto;cursor:grab;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--lps-brand);border:2px solid var(--lps-brand)}
.lps-dual input[type=range]::-moz-range-thumb{pointer-events:auto;cursor:grab;width:14px;height:14px;border-radius:50%;background:var(--lps-brand);border:2px solid var(--lps-brand)}
.lps-dual input[type=range]:focus{outline:none}
.lps-dual input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--lps-hl);outline-offset:2px}
.lps-dual input[type=range]:focus-visible::-moz-range-thumb{outline:2px solid var(--lps-hl);outline-offset:2px}
.lps-out--wide{min-width:118px}
/* Sans comparateur, « Plan PDF » occupe toute la largeur. */
.lps .lps-row2 > :only-child{grid-column:1 / -1}
@media (max-width:480px){.lps-dual{width:140px}}

/* ---------- 1.0.1 ---------- */
/* Fiche : « Réserver une visite » collé en bas, visible sans défiler. */
.lps-db{padding-bottom:0}
.lps-cta-fixed{position:sticky;bottom:0;z-index:2;display:grid;gap:8px;margin:0 -20px;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));background:var(--lps-surface);border-top:1px solid var(--lps-line);box-shadow:0 -6px 16px rgb(0 0 0 / .06)}
.lps-cta-fixed .lps-loue-note{margin:0}
.lps-unitpage .lps-cta-fixed{position:static;margin:0;padding:0;border:0;box-shadow:none;background:none}
/* Bouton « Filtres » : mobile seulement. */
.lps .lps-ftoggle{display:none;align-items:center;gap:8px;min-height:40px;padding:0 14px;margin:0;border:1px solid var(--lps-dark);border-radius:0;background:var(--lps-light);color:var(--lps-dark);font-size:14px;font-weight:600;cursor:pointer}
.lps .lps-ftoggle[aria-expanded="true"]{background:var(--lps-dark);color:var(--lps-light)}
.lps-ftoggle-n{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--lps-hl);color:var(--lps-dark);font-size:12px;line-height:1}
/* Panneau des filtres : invisible sur ordinateur (les contrôles restent dans la barre), dépliant animé sur mobile. */
.lps-fpanel,.lps-fpanel-in{display:contents}
.lps-bar > .lps-count{order:1}
.lps-fpanel .lps-reset{order:2}
@media (max-width:900px){
	.lps .lps-ftoggle{display:inline-flex}
	.lps-bar > .lps-count{width:auto;margin-left:auto;order:0}
	.lps-fpanel{display:grid;flex-basis:100%;grid-template-rows:0fr;opacity:0;visibility:hidden;margin-top:-10px;transition:grid-template-rows .28s cubic-bezier(.2,.7,.2,1),opacity .18s ease,margin-top .28s cubic-bezier(.2,.7,.2,1),visibility 0s linear .28s}
	.lps-fpanel-in{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;min-height:0;overflow:hidden;transform:translateY(-8px);transition:transform .28s cubic-bezier(.2,.7,.2,1)}
	.lps-bar.is-open .lps-fpanel{grid-template-rows:1fr;opacity:1;visibility:visible;margin-top:0;transition:grid-template-rows .3s cubic-bezier(.2,.7,.2,1),opacity .22s ease .04s,margin-top .3s cubic-bezier(.2,.7,.2,1),visibility 0s}
	.lps-bar.is-open .lps-fpanel-in{transform:none}
	.lps-ftoggle svg{transition:transform .28s ease}
	.lps-ftoggle[aria-expanded="true"] svg{transform:rotate(180deg)}
}
@media (prefers-reduced-motion:reduce){.lps-fpanel,.lps-fpanel-in,.lps-ftoggle svg{transition:none!important}}
/* Mobile : de l'air entre la fin du sélecteur (liste d'étages ou liste d'unités) et la section suivante. */
@media (max-width:900px){lp-selecteur.lps{padding-bottom:40px}}

/* Liste des unités (ordinateur) : la hauteur du plan à côté d'elle, jamais plus ; elle défile au-delà.
   « contain: size » l'empêche d'agrandir la rangée de la grille ; « stretch » lui donne la hauteur de cette rangée.
   Minimum (≈ 5 unités visibles) pour qu'un plan très large et peu haut ne réduise pas la liste à 2 ou 3 lignes ;
   réglable en CSS avec --lps-list-min. */
@media (min-width:901px){
	.lps-list{align-self:stretch;max-height:none;min-height:var(--lps-list-min,320px);contain:size;overscroll-behavior:contain}
}

/* Filet de sécurité : rien dans le sélecteur (infobulle, étiquettes, ombres) ne peut élargir la page sur le côté.
   « clip » coupe sans créer de barre de défilement ; le plan qui défile sur téléphone garde sa propre boîte. */
lp-selecteur.lps{overflow-x:clip}

/* Boutons des filtres : la bordure prend toujours la couleur du texte (« currentColor »), y compris sur le bouton choisi. */
.lps-chips .lps-chip,.lps-chips .lps-chip[aria-pressed="true"],.lps-chips .lps-chip[aria-selected="true"]{border-color:currentColor}

/* Graisse et casse des polices (Réglages → Apparence). Sans réglage, chaque élément garde sa valeur d'origine
   (2e valeur des var()). Texte courant : pas de valeur de repli, la propriété est alors simplement héritée du thème. */
.lps,.lps.lps-portal{font-weight:var(--lps-font-w);text-transform:var(--lps-font-tt)}
.lps .lps-ftitle,.lps .lps-row-no,.lps .lps-dh h3,.lps.lps-portal .lps-dh h3,.lps .lps-price,.lps.lps-portal .lps-price,
.lps .lps-facade.is-intro .lps-ftag b,.lps .lps-dlg-h h3,.lps.lps-portal .lps-dlg-h h3,.lps.lps-unitpage h1{font-weight:var(--lps-display-w,500);text-transform:var(--lps-display-tt,none)}
.lps .lps-hint.is-big{font-weight:var(--lps-display-w,400);text-transform:var(--lps-display-tt,uppercase)}
.lps .lps-eyebrow,.lps.lps-portal .lps-eyebrow,.lps .lps-pill,.lps.lps-portal .lps-pill{font-weight:var(--lps-mono-w,500);text-transform:var(--lps-mono-tt,uppercase)}
.lps .lps-out,.lps .lps-row-pr{font-weight:var(--lps-mono-w,500);text-transform:var(--lps-mono-tt,none)}
.lps .lps-count,.lps .lps-floorchip small,.lps .lps-tip,.lps .lps-cmp-tag{font-weight:var(--lps-mono-w,400);text-transform:var(--lps-mono-tt,none)}

/* Plan de l'étage (ordinateur) : au plus 75 % de la largeur de son cadre et 80 % de la hauteur de l'écran,
   proportions conservées (--lps-plan-r = largeur / hauteur, fixé en JS), centré. Téléphone : inchangé (300 px, défilement). */
@media (min-width:901px){
	.lps .lps-plan{width:min(75%,calc(80vh * var(--lps-plan-r,1.5)));max-width:75%;max-height:80vh;height:auto;margin-inline:auto}
}
/* Ordinateur : ~30 px entre la légende et le plan (10 px d'espacement de la grille + 20 px). */
@media (min-width:901px){
	.lps .lps-planscroll{padding-top:20px}
}
/* Coins arrondis : étiquettes de disponibilité des étages, infobulle au survol, boutons de la fiche d'unité. */
.lps{--lps-radius:8px}
.lps .lps-ftag,.lps .lps-facade.is-intro .lps-ftag{border-radius:var(--lps-radius)}
.lps .lps-tip{border-radius:var(--lps-radius)}
/* Boutons et liens (fiche, fenêtres de visite et de plans, comparatif, filtres) : coins droits. */
.lps .lps-btn,.lps.lps-portal .lps-btn,.lps .lps-btn.lps-btn-inverse,.lps.lps-portal .lps-btn.lps-btn-inverse,
.lps .lps-btn-outline,.lps.lps-portal .lps-btn-outline,
.lps .lps-ftoggle,.lps.lps-portal .lps-ftoggle,.lps-dialog .lps-btn{border-radius:0}
/* Bouton fermer : rond. */
.lps .lps-x,.lps.lps-portal .lps-x,.lps-dialog .lps-x{border-radius:999px}
/* Tuiles d'étage en pilule ; rangées d'unités et puces de filtres à coins droits.
   Les rangées sont séparées par un petit espace au lieu d'un trait. */
.lps .lps-floorchip{border-radius:999px}
.lps .lps-list{border-top:0;padding:6px 4px}
.lps .lps-row{border-radius:0;border-bottom:0;padding:11px 22px;margin:0 0 4px}
.lps .lps-row.is-sel{box-shadow:inset 0 0 0 2px var(--lps-hl)}
/* Fenêtre de visite : même style que le formulaire de le1070.ca/plans.
   Fond prune, textes crème, chaque champ sur une ligne (libellé à gauche, saisie à droite) soulignée en crème,
   « ENVOYER » en majuscules avec une barre orange qui apparaît au survol.
   Fonctionne avec Contact Form 7, WS Form et les formulaires Elementor. Couleurs et police réglables :
   --lps-f-bg, --lps-f-ink, --lps-f-hint, --lps-f-accent, --lps-f-font, --lps-f-title-font. */
.lps-dialog.lps-dlg-visit{--lps-f-bg:#682145;--lps-f-ink:#f3e5b1;--lps-f-hint:#d2c6d1;--lps-f-accent:#fe4819;--lps-f-font:"Barlow",sans-serif;--lps-f-title-font:"Cheltenham",Georgia,serif;background:var(--lps-f-bg);color:var(--lps-f-ink);border-radius:0;font-family:var(--lps-f-font)}
.lps-dialog.lps-dlg-visit .lps-dlg-h{border:0;padding:30px 30px 0}
.lps-dialog.lps-dlg-visit .lps-dlg-h h3{color:var(--lps-f-ink);font-family:var(--lps-f-title-font);font-weight:600;font-size:clamp(26px,3.4vw,40px);line-height:1.1}
.lps-dialog.lps-dlg-visit .lps-dlg-b{padding:24px 30px 50px;gap:20px}
@media (min-width:1024px){
	.lps-dialog.lps-dlg-visit .lps-dlg-h{padding:50px 70px 0}
	.lps-dialog.lps-dlg-visit .lps-dlg-b{padding:30px 70px 60px}
}
/* Fermer : sans fond ni cadre, X crème. */
.lps-dialog.lps-dlg-visit .lps-dlg-h .lps-x,.lps-dialog.lps-dlg-visit .lps-dlg-h .lps-x:hover{background:transparent;border:0;color:var(--lps-f-ink)}
.lps-dialog.lps-dlg-visit .lps-dlg-h .lps-x:hover{opacity:.75}
/* Textes autour du formulaire : consigne, encadré de l'agenda, séparateur « ou », lien de retour. */
.lps-dialog.lps-dlg-visit .lps-dlg-lead{color:var(--lps-f-ink);font-size:18px;font-weight:500;margin:0}
.lps-dialog.lps-dlg-visit .lps-cal-cta{background:transparent;border:2px solid var(--lps-f-ink);color:var(--lps-f-ink)}
.lps-dialog.lps-dlg-visit .lps-cal-cta-t span{color:var(--lps-f-hint)}
.lps-dialog.lps-dlg-visit .lps-cal-cta .lps-ic{color:var(--lps-f-ink)}
.lps-dialog.lps-dlg-visit .lps-btn-outline{background:transparent;border:2px solid var(--lps-f-ink);color:var(--lps-f-ink);font-family:var(--lps-f-font);text-transform:uppercase;letter-spacing:.08em}
.lps-dialog.lps-dlg-visit .lps-btn-outline:hover{background:var(--lps-f-ink);color:var(--lps-f-bg)}
.lps-dialog.lps-dlg-visit .lps-btn-primary{background:var(--lps-f-ink);border-color:var(--lps-f-ink);color:var(--lps-f-bg)}
.lps-dialog.lps-dlg-visit .lps-btn-primary:hover{background:transparent;color:var(--lps-f-ink)}
.lps-dialog.lps-dlg-visit .lps-or{color:var(--lps-f-ink)}
.lps-dialog.lps-dlg-visit .lps-or::before,.lps-dialog.lps-dlg-visit .lps-or::after{border-color:var(--lps-f-ink);opacity:.5}
.lps-dialog.lps-dlg-visit .lps-share,.lps-dialog.lps-dlg-visit .lps-share:hover{color:var(--lps-f-ink)}

/* Formulaire */
.lps-dlg-visit .lps-visit-form{color:var(--lps-f-ink);font-family:var(--lps-f-font);font-size:22px;font-weight:500;padding:0}
.lps-dlg-visit .lps-visit-form :is(.wpcf7,.wsf-form,form){border:0;padding:0;margin:0;width:100%;background:none}
.lps-dlg-visit .lps-visit-form .form-row{margin:0}
.lps-dlg-visit .lps-visit-form .titre-formulaire{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:flex-end;justify-content:space-between;margin-bottom:24px}
.lps-dlg-visit .lps-visit-form .titre-formulaire>p{margin:0;font-size:24px;line-height:1.2}
.lps-dlg-visit .lps-visit-form .titre-formulaire>p.small{font-size:14px}
.lps-dlg-visit .lps-visit-form label br,.lps-dlg-visit .lps-visit-form .wpcf7-textarea+br,.lps-dlg-visit .lps-visit-form [type=submit]~br{display:none}
/* Une ligne par champ : libellé + saisie, trait crème de 2 px dessous. */
.lps-dlg-visit .lps-visit-form :is(.form-row>p,.wsf-field-wrapper,.elementor-field-group):has(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=hidden],[type=file]),textarea,select){display:flex;flex-wrap:wrap;align-items:baseline;column-gap:14px;margin:0 0 14px;padding:0 0 1px;border-bottom:2px solid var(--lps-f-ink)}
.lps-dlg-visit .lps-visit-form :is(.form-row>p,.wsf-field-wrapper,.elementor-field-group)>label{flex:none;margin:0;padding:0;color:var(--lps-f-ink);font:500 22px/1.4 var(--lps-f-font);white-space:nowrap}
.lps-dlg-visit .lps-visit-form :is(.form-row>p,.wsf-field-wrapper,.elementor-field-group):has(textarea)>label{align-self:flex-start;padding-top:2px}
.lps-dlg-visit .lps-visit-form :is(.form-row>p,.wsf-field-wrapper,.elementor-field-group)>:not(label){flex:1 1 10em;min-width:0}
.lps-dlg-visit .lps-visit-form .wpcf7-form-control-wrap{display:block;position:relative}
.lps-dlg-visit .lps-visit-form :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=hidden],[type=file]),textarea,select){display:block;width:100%;box-sizing:border-box;margin:0;padding:2px 0 0;border:0;border-radius:0;background:none;box-shadow:none;outline:none;color:var(--lps-f-ink);font:500 22px/1.4 var(--lps-f-font)}
.lps-dlg-visit .lps-visit-form :is(input,textarea,select):is(:hover,:focus,:active){border:0;outline:none;box-shadow:none;background:none}
.lps-dlg-visit .lps-visit-form textarea{height:auto;min-height:2.8em;resize:vertical}
.lps-dlg-visit .lps-visit-form ::placeholder{color:var(--lps-f-hint);font-weight:500;opacity:1}
/* Cases à cocher : rondes, crème. */
.lps-dlg-visit .lps-visit-form .wpcf7-list-item{margin:0;display:grid;grid-template-columns:22px 1fr;align-items:center}
.lps-dlg-visit .lps-visit-form .wpcf7-list-item label{display:contents}
.lps-dlg-visit .lps-visit-form :is(.wpcf7-list-item-label,.wsf-label,.elementor-field-option label){color:var(--lps-f-ink);font:500 22px/1.3 var(--lps-f-font);padding-left:22px}
.lps-dlg-visit .lps-visit-form input[type=checkbox]{-webkit-appearance:none;appearance:none;display:grid;place-content:center;flex:none;width:22px;height:22px;margin:0;border:2px solid var(--lps-f-ink);border-radius:50%;background:var(--lps-f-bg);cursor:pointer}
.lps-dlg-visit .lps-visit-form input[type=checkbox]::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--lps-f-ink);transform:scale(0);transition:transform 80ms ease-in-out}
.lps-dlg-visit .lps-visit-form input[type=checkbox]:checked::before{transform:scale(1)}
/* Envoyer : texte crème centré, barre orange qui se déploie sous le mot au survol. */
.lps-dlg-visit .lps-visit-form :is(.submit-row,.wsf-field-wrapper:has([type=submit]),.elementor-field-type-submit){display:flex;justify-content:center;margin:48px 0 0;border:0}
.lps-dlg-visit .lps-visit-form :is(.submit-row>p,.submit-wrapper){display:block;margin:0;border:0;position:relative}
.lps-dlg-visit .lps-visit-form :is([type=submit],.wpcf7-submit,.wsf-button,.elementor-button){display:block;width:auto;height:auto;min-height:0;margin:0 auto;padding:0 4px 8px;border:0;border-radius:0;box-shadow:none;cursor:pointer;color:var(--lps-f-ink);font:600 22px/24px var(--lps-f-font);letter-spacing:1.6px;text-transform:uppercase;text-align:center;background:linear-gradient(var(--lps-f-accent),var(--lps-f-accent)) no-repeat center bottom / 0 15px;transition:background-size .15s ease-in-out}
.lps-dlg-visit .lps-visit-form :is([type=submit],.wpcf7-submit,.wsf-button,.elementor-button):is(:hover,:focus-visible,:active){color:var(--lps-f-ink);border:0;background-color:transparent;background-size:calc(100% + 0px) 15px;outline:none}
.lps-dlg-visit .lps-visit-form :is([type=submit],.wpcf7-submit,.wsf-button,.elementor-button):disabled{opacity:.6;cursor:default}
@media (min-width:768px){
	.lps-dlg-visit .lps-visit-form :is([type=submit],.wpcf7-submit,.wsf-button,.elementor-button){font-size:30px;line-height:32px}
}
.lps-dlg-visit .lps-visit-form .wpcf7-spinner{position:absolute;left:100%;top:0;margin:4px 0 0 12px}
/* Messages : erreur de champ en orange, réponse d'envoi en crème (fond jaune ou vert comme la référence). */
.lps-dialog.lps-dlg-visit .lps-visit-form :is(.wpcf7-not-valid-tip,.wsf-invalid-feedback,.elementor-message-danger){flex:1 1 100%;color:var(--lps-f-accent);font:500 16px/1.3 var(--lps-f-font);margin:2px 0 4px}
.lps-dlg-visit .lps-visit-form :is(.wpcf7-response-output,.wsf-alert,.elementor-message){color:var(--lps-f-ink);font:500 22px/1.3 var(--lps-f-font);background:none;border:2px solid var(--lps-f-ink);border-radius:0;padding:14px 18px;margin:24px 0 0}
.lps-dlg-visit .lps-visit-form form:is(.invalid,.unaccepted,.payment-required) .wpcf7-response-output{background:#ffb900;border-color:#ffb900;color:var(--lps-f-bg)}
.lps-dlg-visit .lps-visit-form form.sent .wpcf7-response-output{background:#46b450;border-color:#46b450;color:#fff}
@media (max-width:600px){
	.lps-dialog.lps-dlg-visit .lps-dlg-h{padding:24px 20px 0}
	.lps-dialog.lps-dlg-visit .lps-dlg-b{padding:20px 20px 36px}
	.lps-dlg-visit .lps-visit-form :is(.form-row>p,.wsf-field-wrapper,.elementor-field-group)>label{white-space:normal}
}

/* ---------- 1.3.2 ---------- */
/* Filtres posés sur le haut de la façade : pas de fond, dégradé #314556 → transparent, texte clair. */
.lps .lps-facade.has-bar .lps-bar{position:absolute;top:0;left:0;right:0;z-index:4;margin:0;padding:10vw var(--lps-gutter) 120px;--g:var(--lps-bar-grad,#314556);background:linear-gradient(180deg,var(--g) 0%,color-mix(in srgb,var(--g) 94%,transparent) 15%,color-mix(in srgb,var(--g) 82%,transparent) 28%,color-mix(in srgb,var(--g) 65%,transparent) 42%,color-mix(in srgb,var(--g) 46%,transparent) 56%,color-mix(in srgb,var(--g) 28%,transparent) 70%,color-mix(in srgb,var(--g) 13%,transparent) 83%,color-mix(in srgb,var(--g) 4%,transparent) 93%,transparent 100%);line-height:1.5;color:#ffede2;pointer-events:none}
.lps .lps-facade.has-bar .lps-bar > *,.lps .lps-facade.has-bar .lps-fpanel-in > *{pointer-events:auto}
.lps .lps-facade.has-bar .lps-ctl,.lps .lps-facade.has-bar .lps-out,.lps .lps-facade.has-bar .lps-count{color:#ffede2}
.lps .lps-facade.has-bar .lps-count{opacity:1}
.lps .lps-facade.has-bar .lps-link{color:#ffede2}
.lps .lps-facade.has-bar .lps-chip{color:#ffede2;border-color:rgb(255 237 226 / .7)}
.lps .lps-facade.has-bar .lps-chip[aria-pressed="true"]{background:#fff;border-color:#fff;color:#314556}
/* Filtres actifs : fond #6f285b, texte blanc. Surchargeable : --lps-chip-on-bg, --lps-chip-on-ink. */
.lps .lps-bar .lps-chip[aria-pressed="true"],.lps .lps-facade.has-bar .lps-bar .lps-chip[aria-pressed="true"],
.lps .lps-bar .lps-chip[aria-pressed="true"]:is(:hover,:focus,:active),.lps .lps-facade.has-bar .lps-bar .lps-chip[aria-pressed="true"]:is(:hover,:focus,:active){background:var(--lps-chip-on-bg,#6f285b);border-color:var(--lps-chip-on-bg,#6f285b);color:var(--lps-chip-on-ink,#fff)}
/* Survol (souris seulement : sur écran tactile, le survol resterait collé après un toucher) : même style qu'actif. */
@media (hover:hover){
	.lps .lps-bar .lps-chip:not(:disabled):hover,.lps .lps-facade.has-bar .lps-bar .lps-chip:not(:disabled):hover{background:var(--lps-chip-on-bg,#6f285b);border-color:var(--lps-chip-on-bg,#6f285b);color:var(--lps-chip-on-ink,#fff)}
}
.lps .lps-facade.has-bar .lps-ctl input[type=range],.lps .lps-facade.has-bar .lps-ctl input[type=checkbox]{accent-color:#fff}
.lps .lps-facade.has-bar .lps-dual-track{background:rgb(255 255 255 / .35)}
.lps .lps-facade.has-bar .lps-dual-fill{background:#fff}
.lps .lps-facade.has-bar .lps-dual input[type=range]::-webkit-slider-thumb{background:#fff;border-color:#fff}
.lps .lps-facade.has-bar .lps-dual input[type=range]::-moz-range-thumb{background:#fff;border-color:#fff}
@media (max-width:900px){
	.lps .lps-facade.has-bar .lps-bar{padding:10vw var(--lps-gutter) 64px}
	.lps .lps-facade.has-bar .lps-bar.is-open{padding-bottom:80px;background:linear-gradient(180deg,var(--g) 0%,var(--g) 55%,color-mix(in srgb,var(--g) 75%,transparent) 68%,color-mix(in srgb,var(--g) 45%,transparent) 80%,color-mix(in srgb,var(--g) 18%,transparent) 91%,transparent 100%)}
}

/* Étiquettes d'étage : numéro dans un rond posé sur la forme (10 % du bord droit, centré verticalement),
   nombre d'unités disponibles dans une pastille séparée, à droite du rond. */
.lps .lps-ftags .lps-ftag,.lps .lps-facade.is-intro .lps-ftags .lps-ftag{--d:clamp(45px,3.9vw,66px);right:auto;transform:translate(calc(var(--d) / -2),-50%);display:flex;align-items:center;gap:clamp(5px,.5vw,8px);min-width:0;padding:0;background:none;box-shadow:none;border-radius:0;color:var(--lps-light);justify-content:flex-start}
.lps .lps-facade.is-intro .lps-ftags .lps-ftag{--d:clamp(51px,4.8vw,84px)}
.lps .lps-ftags .lps-ftag .lps-ftag-num{display:grid;place-items:center;flex:none;width:var(--d);height:var(--d);border-radius:50%;background:var(--lps-dark);color:var(--lps-light);font-size:calc(var(--d) * .42);line-height:1;margin:0;padding:0;text-align:center;font-variant-numeric:tabular-nums;text-box:trim-both cap alphabetic;box-shadow:0 2px 10px rgb(0 0 0 / .22);transition:background-color .15s,color .15s,width .3s,height .3s,font-size .3s}
.lps .lps-ftags .lps-ftag .lps-ftag-n{padding:clamp(3px,.35vw,6px) clamp(8px,.7vw,12px);border-radius:999px;background:var(--lps-dark);color:var(--lps-light);font-size:clamp(11px,.9vw,15px);line-height:1.2;opacity:1;box-shadow:0 2px 10px rgb(0 0 0 / .18);transition:background-color .15s,color .15s}
.lps .lps-ftags .lps-ftag.is-hover .lps-ftag-num,.lps .lps-ftags .lps-ftag.is-sel .lps-ftag-num,.lps .lps-ftags .lps-ftag.is-wave .lps-ftag-num,
.lps .lps-ftags .lps-ftag.is-hover .lps-ftag-n,.lps .lps-ftags .lps-ftag.is-sel .lps-ftag-n,.lps .lps-ftags .lps-ftag.is-wave .lps-ftag-n{background:var(--lps-light);color:var(--lps-dark)}
.lps .lps-ftags .lps-ftag.is-hover,.lps .lps-ftags .lps-ftag.is-sel,.lps .lps-ftags .lps-ftag.is-wave{background:none}

/* Étages sans forme : seul le numéro est posé sur la façade (positions de le1070.ca/plans).
   Taille proportionnelle à la façade, comme sur la référence : rond de 105 px pour une image de 1920 px de large,
   chiffres en Cheltenham 600 (environ 45 % de la hauteur du rond). Police surchargeable : --lps-ftag-font. */
.lps .lps-facade .lps-ftags{container-type:inline-size}
.lps .lps-facade .lps-ftags .lps-ftag.is-point{--d:calc(100cqw * 105 / 1920)}
.lps .lps-facade .lps-ftags .lps-ftag.is-point .lps-ftag-num{font-family:var(--lps-ftag-font,"Cheltenham",Georgia,serif);font-weight:600;font-size:calc(var(--d) * .62);text-transform:none;background:var(--lps-ftag-bg,#EF4923);color:var(--lps-ftag-ink,#F2E4B0)}
/* Survol, étage choisi, vague d'ouverture : couleurs inversées. */
.lps .lps-facade .lps-ftags .lps-ftag.is-point.is-hover .lps-ftag-num,.lps .lps-facade .lps-ftags .lps-ftag.is-point.is-sel .lps-ftag-num,.lps .lps-facade .lps-ftags .lps-ftag.is-point.is-wave .lps-ftag-num{background:var(--lps-ftag-ink,#F2E4B0);color:var(--lps-ftag-bg,#EF4923)}
.lps .lps-facade .lps-ftags .lps-ftag.is-point:focus{outline:none}
.lps .lps-facade .lps-ftags .lps-ftag.is-point:focus-visible .lps-ftag-num{outline:2px solid var(--lps-light);outline-offset:3px}

/* Libellés des filtres (« Disponibles seulement »…) : jamais en italique, même si le thème le demande. */
.lps .lps-bar .lps-ctl,.lps .lps-bar .lps-ctl *{font-style:normal}

/* Curseur « Loyer max » : rail dessiné par le sélecteur pour que sa couleur soit réglable (Réglages → Fond du curseur de prix). */
.lps input[type=range].lps-price-range{-webkit-appearance:none;appearance:none;width:130px;height:22px;margin:0;padding:0;background:none;border:0;box-shadow:none;cursor:pointer}
.lps input[type=range].lps-price-range::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:var(--lps-price-track,var(--lps-line));border:0}
.lps input[type=range].lps-price-range::-moz-range-track{height:4px;border-radius:2px;background:var(--lps-price-track,var(--lps-line));border:0}
.lps input[type=range].lps-price-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;margin-top:-7px;border-radius:50%;background:var(--lps-brand);border:2px solid var(--lps-brand);cursor:grab}
.lps input[type=range].lps-price-range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--lps-brand);border:2px solid var(--lps-brand);cursor:grab}
.lps input[type=range].lps-price-range:focus{outline:none}
.lps input[type=range].lps-price-range:focus-visible::-webkit-slider-thumb{outline:2px solid var(--lps-hl);outline-offset:2px}
.lps input[type=range].lps-price-range:focus-visible::-moz-range-thumb{outline:2px solid var(--lps-hl);outline-offset:2px}
.lps .lps-facade.has-bar input[type=range].lps-price-range::-webkit-slider-runnable-track{background:var(--lps-price-track,rgb(255 255 255 / .35))}
.lps .lps-facade.has-bar input[type=range].lps-price-range::-moz-range-track{background:var(--lps-price-track,rgb(255 255 255 / .35))}
.lps .lps-facade.has-bar input[type=range].lps-price-range::-webkit-slider-thumb{background:#fff;border-color:#fff}
.lps .lps-facade.has-bar input[type=range].lps-price-range::-moz-range-thumb{background:#fff;border-color:#fff}

/* Aucun contour de focus (ni celui du navigateur, ni ceux du sélecteur) : boutons, puces, champs, curseurs, formes. */
/* (Règles séparées : un sélecteur propre à un navigateur invalide toute la règle dans les autres.) */
:is(.lps,.lps-dialog) :is(*,*:focus,*:focus-visible,*:active),
:is(.lps,.lps-dialog) :focus-visible .lps-ftag-num{outline:none!important;-webkit-tap-highlight-color:transparent}
:is(.lps,.lps-dialog) input[type=range]:focus-visible::-webkit-slider-thumb{outline:none!important}
:is(.lps,.lps-dialog) input[type=range]:focus-visible::-moz-range-thumb{outline:none!important}
:is(.lps,.lps-dialog) ::-moz-focus-inner{border:0}

/* Filtre actif, étage sans résultat : numéro (et pastille du nombre) en gris sur la façade, quel que soit l'état (survol, vague).
   Couleurs réglables : --lps-ftag-off-bg, --lps-ftag-off-ink. */
.lps .lps-facade .lps-ftags .lps-ftag.is-none{opacity:1;cursor:default}
.lps .lps-facade .lps-ftags .lps-ftag.is-none .lps-ftag-num,.lps .lps-facade .lps-ftags .lps-ftag.is-point.is-none .lps-ftag-num,
.lps .lps-facade .lps-ftags .lps-ftag.is-none .lps-ftag-n,.lps .lps-facade .lps-ftags .lps-ftag.is-point.is-none .lps-ftag-n{background:var(--lps-ftag-off-bg,#a3a3a3);color:var(--lps-ftag-off-ink,#ececec);box-shadow:none}

/* Premier affichage : chaque numéro d'étage glisse depuis la gauche, en décalé (du plus bas au plus haut).
   « translate » se combine avec le « transform » qui centre le rond sur sa position. */
@keyframes lps-ftag-in{from{opacity:0;translate:-90px 0}to{opacity:1;translate:0 0}}
.lps .lps-ftags .lps-ftag.is-enter{animation:lps-ftag-in 1.1s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(200ms + var(--lps-i,0) * 150ms);animation-play-state:paused}
/* En attente (invisibles) tant que l'image de la façade n'est pas chargée. */
.lps .lps-facade.is-img-ready .lps-ftags .lps-ftag.is-enter{animation-play-state:running}
@media (prefers-reduced-motion:reduce){.lps .lps-ftags .lps-ftag.is-enter{animation:none}}
